การเชื่อมต่อซ็อกเก็ต TCP แบบเปิดใช้ข้อมูลเมื่อไม่ได้ใช้หรือไม่


2

ฉันมีการเชื่อมต่อซ็อกเก็ต TCP ที่จัดตั้งขึ้นระหว่างเซิร์ฟเวอร์ของฉันและโมเด็มซึ่งมีโมดูล GSM ที่ใช้งานและติดตั้งซิมการ์ด

ฉันสร้างการเชื่อมต่อ 3G ของ wirless ผ่านทาง socat:

/usr/bin/socat open:/dev/ttyVA8500,nonblock,echo=0,raw TCP-LISTEN:8500,reuseaddr,fork

คำสั่งเล็กน้อยนี้ฟังการเชื่อมต่อ TCP บนพอร์ต 8500 และเขียนข้อมูลลงในพอร์ตอนุกรมเสมือน /dev/ttyVA8500. ตอนนี้เมื่อฉันเขียนไปยังพอร์ตอนุกรมเสมือนบนเซิร์ฟเวอร์ของฉันข้อมูลจะถูกส่งไปยังโมเด็มซึ่งจะส่งการตอบสนอง

การสื่อสารนี้มีค่าใช้จ่ายในการรับส่งข้อมูล ฉันเห็นการรับส่งข้อมูลนี้ในเครื่องมือตรวจสอบของผู้ให้บริการ GSM

ปัญหา

ฉันสามารถเห็นปริมาณการใช้ข้อมูลในการตรวจสอบระบบ GSM แม้ในขณะที่ฉันไม่ได้พูดคุยกับโมเด็ม มันน้อยกว่ามากประมาณ 2 kiB ต่อชั่วโมง แต่ฉันมีขีด จำกัด 1 MB ต่อเดือน ดังนั้นคำถามของฉันคือการใช้ข้อมูล 3G "ผี" นี้มาจากไหน? การเชื่อมต่อซ็อกเก็ต TCP เองมีค่าใช้จ่ายในการรับส่งข้อมูลหรือไม่

ขณะที่ฉันไม่ได้คุยกับการเชื่อมต่อ TCP ฉันใช้ tcp sniffer เพื่อตรวจสอบปริมาณการใช้งานผี:

sudo tcpflow -i any -C -e port 8502

อย่างไรก็ตามสิ่งนี้ไม่ได้แสดงปริมาณการใช้งาน (เมื่อฉันเริ่มการสื่อสารอีกครั้งมันแสดงรายการข้อมูลทั้งหมดได้ดี;)

คำตอบ:


3

ไม่เมื่อคุณไม่ได้พูดคุยกับเซิร์ฟเวอร์มันจะไม่ใช้ข้อมูลใด ๆ อย่างไรก็ตามโมดูล gsm ที่คุณเชื่อมต่อจะต้องรักษาการเชื่อมต่อหรือรักษาการเชื่อมต่อให้มีชีวิตอยู่เพราะมันจะต้องส่งสัญญาณของการรักษาชีวิตการเชื่อมต่อทุกสองสามวินาที คุณสามารถปรับปรุงได้โดยตัดการเชื่อมต่อข้อมูลและเปิดใช้งานเมื่อคุณเริ่มคุยกับเซิร์ฟเวอร์เท่านั้น


ฉันกลัวสิทธิของคุณจะไปตรวจสอบ ...
Lost in OWL

+1 คุณถูกต้อง แต่ฉันต้องการโมเด็มเพื่อเชื่อมต่อเสมอไม่ใช่แค่ตามต้องการ ดังนั้นฉันจะเปลี่ยนค่าเวลาว่างเป็นค่าสูงสุด
Lost in OWL
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.