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 భత్యం మేరకు భిన్నమైతే, గణితం సరైనది మరియు సరిహద్దుకు మాత్రమే తప్పు పేరు పెట్టారు. ఒక ఫ్రేమ్ హెడర్ కంటే చాలా పెద్ద భేదం లింక్పై మరేదో సూచిస్తుంది, ఉదాహరణకు పునఃప్రసారాలు లేదా ఇంటర్ఫేస్ను పంచుకునే మరో ప్రవాహం. ప్యాకెటైజేషన్ విరామం, రక్షణ సూట్ మరియు సరిహద్దును సంఖ్య పక్కన రాయండి, ఎందుకంటే ఈ మూడూ లేని అంచనాను తదుపరి పాఠకుడు కొలతగా ఉటంకిస్తాడు.