IPsec बोगद्यातून एक G.729 पॅकेट मोजणे
सोडवलेले G.729 उदाहरण दाखवते की पेलोड, RTP, ESP आणि Ethernet फ्रेमिंग कसे जमा होतात, आणि तोच कॉल प्रत्येक सीमेवर वेगळी बँडविड्थ का घेतो.
IPsec वरील आवाज कोडेक बिटरेट म्हणून सांगितला जातो, आणि तो आकडा कोडेकच्या स्वतःच्या सीमेशिवाय प्रत्येक सीमेवर चुकीचा आहे. ऑडिओ 8 kbit/s आहे, तो वाहून नेणारे पॅकेट मोठे आहे, ESP आवरण अजून मोठे आहे, आणि Ethernet फ्रेम अशी फ्रेमिंग जोडते जी बोगद्यावरील कोणत्याही कॅप्चरमध्ये कधीही दिसत नाही. दिलेल्या स्वरूपातून एक पॅकेट मोजणे हाच भौतिक दुव्याला प्रत्यक्षात काय वाहावे लागते हे जाणून घेण्याचा एकमेव मार्ग. खालील विश्लेषण ते केवळ एका दिशेसाठी करते, आणि येथील प्रत्येक आकडा अंकगणित आहे, मोजमाप नाही.
कोडेकच्या आकड्यापासून नाही, पॅकेटायझेशनच्या निवडीपासून सुरुवात करा
कोडेक तक्ता पेलोड दर देतो आणि दुसरे काहीही नाही: G.729 8 kbit/s देतो, जो दर 30 ms ला 30 बाइट ऑडिओ आहे. तो हेडर, संरक्षण किंवा फ्रेमिंगबद्दल काहीही सांगत नाही, आणि परिणामावर हे तिनेचेच वर्चस्व असते. अंतराल हा दोन्ही टोकांनी सहमत व्हावे असा धोरणात्मक निर्णय आहे, म्हणून तो आधी निवडा आणि जाहीर करा, कारण पुढील प्रत्येक आकडा त्या एका निर्णयावर अवलंबून आहे.
हे उदाहरण 30 ms वापरते, म्हणून पॅकेट दर प्रति सेकंद 33.3 आहे. ते 12 बाइट RTP हेडर, 8 बाइट UDP हेडर आणि पर्याय नसलेले 20 बाइट आतील IPv4 हेडर गृहीत धरते, आणि कोणतेही SRTP, हेडर संक्षेपण किंवा रहदारी प्रवाह गोपनीयतेचे पॅडिंग नाही; कोणताही बदल बजेटही हलवतो, म्हणून गृहीतके उत्तराच्या शेजारीच असावीत.
आतील हेडर जोडा, नंतर ESP आवरण
अनुप्रयोग पेलोड सोबत RTP सोबत UDP सोबत IP पाठवतो, जे या पॅकेटायझेशनमध्ये 70 बाइट आहे. तो आतील प्रवाह 18.7 kbit/s होतो, जो कोडेक दराच्या दुप्पटीपेक्षा जास्त आहे, कारण पॅकेटचा मोठा भाग ऑडिओ नाही, हेडर बनवतात. त्या बाइटपैकी एकही आवाज नाही; ते पत्ता आणि क्रम देण्याची किंमत आहेत. बोगद्याच्या वर घेतलेले कॅप्चर नेमका हाच आकडा दाखवते, आणि कॉल लहान आहे असे म्हणताना लोक हाच आकडा उद्धृत करतात.
हा असा आकडाही आहे जो कधीही तारेपर्यंत पोहोचत नाही. ESP बोगदा मोड 8 बाइट SPI आणि क्रमांक, AES-GCM साठी 8 बाइट स्पष्ट IV, 2 बाइट ट्रेलर आणि 16 बाइट प्रमाणीकरण टॅग जोडतो. 70 बाइट पेलोड आणि ट्रेलर मिळून 72 होतात, जे चार बाइट संरेखन आधीच पूर्ण करते, म्हणून येथे अतिरिक्त पॅडिंगची गरज नाही.RFC 4106 GCM चे IV आणि टॅगचे आकार निश्चित करते, आणि दोन्ही अंकगणितात आहेत, तळटीपेत नाही:
30 payload, G.729 at 30 ms
12 RTP
8 UDP
20 inner IPv4
--
70 inner IP packet
8 ESP SPI and sequence
8 explicit IV
2 pad length and next header
16 authentication tag
--
104 ESP packetNAT ओलांडण्यासाठी आवश्यक बाह्य हेडर जोडा
ESP आवरणाबाहेर 20 बाइट बाह्य IPv4 हेडर आणि NAT ओलांडण्यासाठी 8 बाइट UDP हेडर आहे, म्हणून पॅकेट 132 बाइट होते. UDP एन्कॅप्स्युलेशन आहे कारण पॅकेटला दोन्ही बाजूंच्या मध्ये असलेल्या भाषांतर उपकरणातून जावे लागते, आणि ते संरक्षित पेलोडला स्पर्श न करता बाह्य आकार बदलते. प्रति सेकंद 33.3 पॅकेटवर, 132 बाइट सुमारे 35.2 kbit/s आहे, म्हणजे कोडेकच्या नाममात्र दराच्या सुमारे चार पट.
टॅग किंवा IV यापैकी कोणीही लहान करण्यासाठी अंदाजातून वगळता येत नाही, कारण दोन्ही दुवा प्रत्यक्षात वाहणाऱ्याचा भाग आहेत. ते वगळणारा अंदाज अशा पॅकेटचे वर्णन करतो जे प्राप्तकर्ता नाकारेल. संरक्षित प्रदेशात पेलोडची सीमा आणि पुढील हेडर दर्शवण्यासाठी असलेल्या ट्रेलरलाही हेच लागू आहे.
आकडा उद्धृत करण्यापूर्वी सीमेला नाव द्या
बाह्य IP आकडा अजूनही Ethernet फ्रेमिंग वगळतो. टॅग असलेला किंवा नसलेला प्रवेश दुवा 14 बाइट MAC हेडर आणि 4 बाइट फ्रेम तपासणी क्रम जोडतो, फ्रेम 150 बाइट करतो, जो स्विच पोर्ट मोजतो तो आकार. त्याच पॅकेट दरावर तो 40 kbit/s आहे, कोडेक दराच्या पाच पट, आणि फरक वायफळ नाही तर वाहतुकीची किंमत आहे.
| Boundary | Packet size | Rate at 33.3 packets/s | What it counts |
|---|---|---|---|
| Codec payload | 30 bytes | 8.0 kbit/s | The audio alone |
| Inner IP packet | 70 bytes | 18.7 kbit/s | Application headers included |
| Outer IP packet | 132 bytes | 35.2 kbit/s | ESP and NAT-T included |
| Ethernet frame | 150 bytes | 40.0 kbit/s | Link framing included |
40 kbit/s हा आकडा अजूनही प्रस्तावना, फ्रेममधील अंतर, VLAN टॅग, पुरवठादाराचे एन्कॅप्स्युलेशन, RTCP, सिग्नलिंग आणि दुसऱ्या दिशेने जाणारा ऑडिओ वगळतो. हा प्रति दिशा अंदाज आहे, दुवा आरक्षण नाही, आणि ते आरक्षण म्हणून उद्धृत केल्यास दुव्याला एका ठिकाणी किती राखावे लागते ते वाढवून सांगते आणि दुसऱ्या ठिकाणी कमी. यजमानावरील कॅप्चर दुवा जोडत असलेले फ्रेमिंगही चुकवू शकते, म्हणून आकड्याच्या शेजारी सीमेला नाव द्यावे लागते, आणि म्हणून सीमा तक्ता एका शीर्षक आकड्यापेक्षा उपयुक्त आहे. तुम्ही न मोजलेल्या दिशेसाठी स्वतंत्रपणे आरक्षण करा.
अंकगणित इंटरफेसशी पडताळा
अंदाजावर विश्वास ठेवण्यापूर्वी, ज्ञात पॅकेट संख्येसाठी इंटरफेस जे नोंदवतो त्याशी त्याची तुलना करा. बोगदा उपकरणावर नाही, भौतिक इंटरफेसवर कॅप्चर करा, जेणेकरून तुम्ही मोजू पाहत असलेले फ्रेमिंग त्यात असेल, आणि पूर्ण जुळणीऐवजी थोडी तफावत अपेक्षा करा.
sudo tcpdump -ni eth0 -c 50 'udp port 4500'
ip -s link show eth0कॅप्चर बाह्य पॅकेटचा आकार पुष्टी करते, आणि इंटरफेस काउंटर फ्रेमिंगसह दर दाखवतात. जर दोन्ही सुमारे Ethernet भत्त्याइतके वेगळे असतील, तर अंकगणित बरोबर आहे आणि फक्त सीमेचे नाव चुकीचे होते. एका फ्रेम हेडरपेक्षा खूप मोठा फरक दुव्यावरील दुसऱ्या कशाकडे निर्देश करतो, जसे पुनःप्रेषण किंवा इंटरफेस सामायिक करणारा दुसरा प्रवाह. पॅकेटायझेशन अंतराल, संरक्षण संच आणि सीमा आकड्याच्या शेजारी लिहा, कारण हे तिने नसलेला अंदाज पुढील वाचक मोजमाप म्हणून उद्धृत करतो.