मैं टीसीपी / आईपी में संचार विलंबता कैसे बना सकता हूं?


12

टीसीपी / आईपी का उपयोग करते हुए दो नोड्स के बीच गोल यात्रा विलंबता का अनुमान लगाने के लिए मुझे एक गणितीय मॉडल / समीकरण प्राप्त करने में कठिनाई होती है। HTTP प्रोटोकॉल के आधार पर नोड्स डेटा का आदान-प्रदान कर रहे हैं। इस मॉडल में, अध्ययन करने के लिए सबसे महत्वपूर्ण कारक नेटवर्क में दो नोड्स के बीच की भौतिक दूरी, मध्यवर्ती हॉप्स की संख्या, बैंडविड्थ, प्रत्येक हॉप में देरी प्रसंस्करण है। मैंने वेब खोजा, लेकिन इस अर्थ में कुछ भी नहीं पाया, बल्कि सर्किट स्विचिंग नेटवर्क और यूडीपी प्रोटोकॉल के बारे में कुछ पाया। क्या मैं उन्हें टीसीपी में फिट करने के लिए अनुकूलित कर सकता हूं?


यह एक चलती लक्ष्य है और बहुत सारी निर्भरताएं हैं जो आपके मॉडल के स्थिरांक को बदल देती हैं। उदाहरण के लिए, यदि आप एक प्रति आशा अग्रेषण विलंब को शामिल करना चाहते हैं, तो आधार रेखा के रूप में, आपको लाइन में प्रत्येक डिवाइस के मेक और मॉडल को जानना होगा। यदि आप पथ में प्रत्येक डिवाइस को नियंत्रित या जानते नहीं हैं, जैसे कि इंटरनेट या अन्य नेटवर्क पर, तो यह विचार करना लगभग असंभव है। यदि आप मानते हैं कि आप मार्ग में प्रत्येक हॉप के बारे में सब कुछ जानते हैं, तो आप आधारभूत अग्रेषण विलंब को लागू कर सकते हैं, स्विच मॉडल "ए" के लिए 1.2 माइक्रोसेकंड और स्विच मॉडल "बी" और इसके आगे के लिए 5.0 कह सकते हैं।
netdad


का स्रोत कोड httpinghttping -Gbg www.google.com -c 5
:,

@Espanta, क्या आपका लक्ष्य सिर्फ विलंबता या थ्रूपुट का अनुमान लगाना है? थ्रूपुट SACK, RWIN, ऐप प्रोटोकॉल चैटटी, और निश्चित रूप से, विलंबता जैसे TCP सुविधाओं पर अत्यधिक निर्भर है।
generalnetworkerror

@generalnetworkerror, मुझे http पाने और पोस्ट अनुरोध और प्रतिक्रिया के लिए राउंड ट्रिप लेटेंसी की आवश्यकता है।
एस्पांता

जवाबों:


8

यह एक बहुत ही जटिल प्रक्रिया है, इसलिए एक समीकरण तैयार करना जो आरटीटी की सटीक भविष्यवाणी करने के लिए उपयोगी हो सकता है, अत्यंत कठिन है। सबसे अच्छा, मैं कहूंगा कि आप एक मॉडल बना सकते हैं जो प्रत्येक चरण के लिए औसत का एक गुच्छा का उपयोग कर सकता है, जिसे आप ट्विक कर सकते हैं यदि आप किसी विशेष स्थिति के लिए "बेहतर जानते हैं" तो लगभग उतना ही करीब हो जितना आप प्राप्त कर सकते हैं। यह कुछ ऐसा है जो मैं वर्तमान में पढ़ रहा हूं इसलिए मैं आपको बता सकता हूं कि मैं अब तक क्या जानता हूं (जमीन से ऊपर, भौतिक परत पर शुरू):

  • इलेक्ट्रॉनिक्स एसई पर मेरे सवाल देखें; ईथरनेट देरी और संचार की देरी के लिए तांबे के माध्यम से केबल आवृत्ति रेटिंग और बिजली की गति (सिग्नल प्रसार) के संबंध में एन्कोडिंग । चूंकि आप मानकीकृत गति (100Mbps, 1Gbps, 10Gbps आदि) का उपयोग कर रहे हैं, इसलिए फाइबर या तांबे का अलग-अलग व्यवहार न करें। दोनों के नीचे "देरी" के रूप में यह एक ही लानत के पास है, लेकिन तांबे स्पष्ट रूप से एक संकेत नहीं ले जा सकता है। मेरा यह सवाल फिजिक्स एसई साइट पर है, जिसका उत्तर अब मुझे पता है। मुझे इसे ठीक करने के लिए समय निकालने की आवश्यकता है, इसलिए इस बात पर ध्यान रखें कि यदि आप रुचि रखते हैं (मैं कुछ और टेलीकॉम-उपयोग-से-फाइबर संबंधित प्रश्न पोस्ट करूंगा, जिसका मुझे अब मौका मिला है, जब मुझे मौका मिलेगा )।

  • एक लिंक के अंत में उपकरणों द्वारा बहुत अधिक देरी जोड़ी जा रही है। यह कहने का कोई मानक तरीका नहीं है "ओह 2 स्विच एक पथ के साथ Xms देरी है, 4 स्विच 2 * Xms है, 2 राउटर Yms है ... आदि"। मान लें कि आप उदाहरण के लिए 1Gpbs का उपयोग कर रहे हैं और लाइन दर पर आगे के मार्ग में डिवाइस हैं, तो हम जानते हैं कि 1000000000bps है, इसलिए भौतिक इंटरफ़ेस एक निश्चित एन्कोडिंग दर पर चल रहा है (अधिकतम 1 नैनोसेकंड से प्रति बिट तक) जो भी अधिकतम हो उपयोग में प्रतीक एन्कोडिंग योजना, जैसे कि 10 बी )

  • देरी के तीन मुख्य प्रकार हैं (भौतिक परत पर) आपको इसके बारे में और कारक के बारे में पता होना चाहिए; सीरियलाइजेशन देरी, एन्कोडिंग देरी, प्रसार देरी (और प्रसंस्करण देरी, कतार देरी, सांकेतिक शब्दों में बदलना और डिकोडिंग देरी, लेकिन ये भौतिक परत से ऊपर हैं लेकिन उल्लेख करने की आवश्यकता है!)। ये इंटरनेट पर बहुत अच्छी तरह से प्रलेखित हैं, वीओआईपी: इन-डेप्थ एनालिसिस , स्लाइड 13 यहां , Google विद्वान पर लोड , और बहुत कुछ।

  • जैसा कि हम प्रोटोकॉल स्टैक को आगे बढ़ाते हैं, मैं इस धारणा पर काम करूंगा कि गंतव्य मैक प्रत्येक स्विच कैम तालिका में है, और आईपी परत पर, एआरपी तालिकाओं में गंतव्य मैक। इन खोज प्रक्रियाओं से प्रेरित अतिरिक्त देरी केवल एक प्रवाह में पहले पैकेट के लिए होती है, ताकि समय-समय पर बढ़ाकर और gratuitous ARP आदि भेजकर उन्हें दरकिनार किया जा सके।

  • जैसा कि आप एप्लिकेशन लेयर पर पहुंचते हैं यह वास्तव में मुश्किल होने वाला है क्योंकि यह सर्वर (उदाहरण के लिए) अनुरोध को संसाधित करने पर निर्भर करता है, जो देरी में बाधा के अधीन होगा। लोड के कारण अनुरोध और संदर्भ स्विच को संसाधित करने के लिए आवश्यक व्यवधानों की संख्या अप्रत्याशित है।

मैं आपके प्रश्न के साथ आपकी मदद करना चाहूंगा, दुख की बात यह है कि मेरे पास अभी इसके लिए समय है। मैं इस उत्तर को शायद आज रात या कल अपडेट करूंगा, मैं अब तक जो भी पोस्ट करना चाहता हूं।

इस समय के दौरान, अधिकांश लोग शारीरिक तांबे / फाइबर परत पर लगभग 0.6 * c (प्रकाश की गति) की देरी के लिए आकृति के साथ काम करते हैं। इसके अलावा, आपको हर एक्स पैकेट पर टीसीपी के एसीके एक्सचेंज के बारे में सोचने की ज़रूरत है, जो कि अगर आप उदाहरण के लिए सैक का उपयोग कर रहे हैं, और यदि आप जंबो फ्रेम और / या बड़े एमएसएस आकार का उपयोग कर रहे हैं (अब एमटीयू को भी इसमें शामिल होने की आवश्यकता है!) , यदि आप ACK के बीच अधिक भेज रहे हैं (यदि हस्तांतरित डेटा की मात्रा आपके लिए ब्याज की है)। आपको कुख्यात बैंडवे डिले प्रोडक्ट में भी फैक्टर की जरूरत है और मैं उस पेज की मूर्खतापूर्ण गलत व्याख्या नहीं करता । मैंने यहां विभिन्न सरल (और बहुत बदसूरत) डेटा कैलकुलेटर बनाना शुरू कर दिया। फिर से एक कार्य प्रगति पर है और मैं उन्हें जल्द ही अपडेट करने की कोशिश करूंगा। मैं एक कैलकुलेटर जोड़ने की योजना बना रहा हूं जो आप करने की कोशिश कर रहे हैं। यदि आप रुचि रखते हैं, तो मैंने कुछ प्रकाश और फाइबर कैलकुलेटर भी बनाए हैं, लेकिन फिर से, कोई समय नहीं!, मैंने अभी तक उन्हें अपलोड करने के लिए गोल नहीं किया है। मैं ASAP को इस उत्तर को कुछ और अपडेट करने की कोशिश करूंगा, आने वाले दिनों में।

PS मैं QoS का उल्लेख करना भूल गया! यदि QoS रास्ते में कहीं भी खेल में है, तो यह RTT को शांत करने के लिए वास्तव में कठिन होने वाला है!


धन्यवाद। विस्तार से यह बहुत अच्छा है। मुझे इस बात पर जोर देने की आवश्यकता है कि दो नोड्स के बीच हॉप्स की संख्या वायर्ड नेटवर्क में दो नोड्स के बीच भौतिक दूरी पर उच्च प्रभाव डालती है। (कम से कम चूंकि मेरी वास्तविक बेंचमार्किंग से पता चलता है।) इसलिए, मैं सभी को एक साथ रखूंगा और जल्द ही अपने मॉडल के साथ आऊंगा। उन सभी में से बहुत धन्यवाद, जिन्होंने पढ़ा, उत्थान किया, उत्तर दिया, और उत्तर देंगे।
एस्पांटा

टेलीकॉम-यूज-ऑफ-फाइबर (यह मानते हुए कि ओपी केवल एक डेटा सेंटर के भीतर देरी से निपट नहीं रहा है, या कुछ सेटअप जहां उसका भौतिक बुनियादी ढांचे पर पूरा नियंत्रण है) दिलचस्प हो सकता है और असंभव पर मॉडलिंग को शून्य बना सकता है। समस्या को उजागर करने का एक किस्सा। मेरे पास एक बार टी -1 का लुइसविले, केवाई <-> लेक्सिंगटन, केवाई और लुइसविले, केवाई <-> सिनसिनाटी, ओह विफल रहे। टेल्को को फोन किया गया और उन्होंने मुझे सूचित किया कि पश्चिमी इलिनोइस में एक फाइबर कटौती को दोष देना था। एक नक्शा देखें और देखें कि वह सिर्फ पागल क्यों है। हालांकि, उच्च बैंडविड्थ लिंक टेल्को पागलपन के इस प्रकार के शिकार होने की संभावना कम है।
जेफ मैक एडम्स

5

(मैं यह बताना चाहता हूं कि दूसरों ने इस बारे में उत्कृष्ट उत्तर पोस्ट किए हैं कि विलंब एट अल कैसे काम करता है और उनके कारण क्या होता है। लेकिन ओपी ने मॉडलिंग के बारे में पूछा; एक मूल मॉडल सरल है और आप सिर्फ उदाहरण संख्याओं में प्लग करते हैं। यदि आप जानना चाहते हैं कि क्यों। देरी वे क्या कर रहे हैं, तो हर किसी के जवाब देखें: ^)

नेटवर्क विलंबता केवल एन छोरों के बीच फैले एक छोर से दूसरे छोर तक पारगमन का समय है

तो आपके पास एन -1 इंटरमीडिएट नोड्स के साथ एन सेगमेंट (हॉप्स) हैं। प्रत्येक नोड में एक देरी होती है (उस नोड पर कई चीजों का संचयी प्रभाव, जैसे कतार देरी, प्रसंस्करण देरी, आदि), और प्रत्येक खंड में एक पारगमन देरी होती है। कुल मिलाकर यह 2N - 1 स्वतंत्र चर है। तो यह seg1 + node1 + seg2 ... + नोड (N-1) + segN एक हॉप है, बस = seg1 है, दो उम्मीदें seg1 + नोड 1 + seg2, आदि हैं।

आगे आपको उन सभी टुकड़ों को परिभाषित करना होगा। तो आप एक CATV नेटवर्क, एक उपग्रह लिंक, एक फाइबर ऑप्टिक लिंक, एक ईथरनेट, आदि के साथ एक मॉडल नेटवर्क का निर्माण कर सकते हैं। उन प्रत्येक तकनीकों के लिए आपको उदाहरण की जानकारी देखनी होगी।

पारगमन की देरी लगभग डेटा आकार खंड की संचरण गति से विभाजित होगी। यदि आपको अधिक सटीक मॉडल की आवश्यकता है, तो आपने उड़ान समय अंतराल को जोड़ दिया है - डेटा प्रवाह की गति (प्रकाश की गति अनुमानित) से विभाजित खंड की लगभग लंबाई, यदि आपके पास उपग्रह लिंक शामिल है तो यह महत्वपूर्ण है; जियोसिंक्रोनस उपग्रह का अप और डाउन महत्वपूर्ण है।

प्रत्येक नोड पर देरी का अनुमान आपको अपने मॉडल में रखे जाने वाले उपकरणों के आधार पर लगाना होगा।

यदि आप एप्लिकेशन विलंबता चाहते हैं, (उदाहरण के लिए जब तक कि एफ़टीपी हस्तांतरण के डेटा प्रवाह की शुरुआत तक विलंब होता है), तब आप अपने नेटवर्क विलंबता को खेलने में कितनी बार गिनते हैं, इसका निर्माण करते हैं। उदाहरण के लिए, 3-तरफ़ा TCP हैंडशेक ट्रिपल-नेटवर्क विलंबता को जोड़ता है, और इस तरह से अप्लिकेशन क्या देखता है के निर्माण पर।


3

आप दोनों तरफ एक पैकेट पर कब्जा करके गोल यात्रा विलंबता का अनुमान लगा सकते हैं, फिर निगरानी मशीन से निकलने वाले अनुरोधों और वापस आने वाली प्रतिक्रियाओं के बीच देरी को माप सकते हैं। उदाहरण के लिए, यदि आप उस समय को चिह्नित करते हैं जब एक SYN रिमोट मशीन के लिए चला गया था, तब उस समय को चिह्नित किया जब SYN + ACK प्रतिक्रिया आई, अंतर आपको गोल ट्रिप टीसीपी विलंबता का एक बहुत अच्छा बॉलपार्क देगा।

ध्यान रखें कि यह वास्तविक नेटवर्क विलंबता से अधिक होगा, और कितना अधिक या तो लोड किए गए मशीन पर निर्भर करता है।


आपके उत्तर के लिए धन्यवाद, लेकिन मैं मशीन के किसी भी कोडिंग या व्याख्या का उपयोग करके इसे मापना नहीं चाहता, मुझे गणितीय मॉडल का उपयोग करके इसे तैयार करने की आवश्यकता है। उदाहरण के लिए कुछ इस तरह: कुल विलंब = कुल प्रसार + कुल संचरण + कुल दुकान और आगे + कुल प्रसंस्करण। और इनमें से प्रत्येक समय के लिए, मेरे पास एक और सूत्र हो सकता है। तो यह गणितीय रूप से मापा जा सकता है।
एस्पांटा

3

दो मेजबानों के बीच विलंब कई कारकों पर निर्भर करेगा:

  • प्रचार देरी
  • सीरियलाइजेशन में देरी
  • कतारबद्ध / बफरिंग में देरी

प्रचार में देरी होने पर पैकेट को दो स्थानों के बीच यात्रा करने में कितना समय लगता है। फाइबर में प्रकाश की गति लगभग 200000 किमी / घंटा है। स्वीडन जहाँ मैं रहता हूँ 1570 किमी के आसपास है, इसलिए यह 7.85 एमएस होगा लेकिन वास्तव में यह अधिक है क्योंकि यह पक्षियों के दृश्य के माध्यम से दूरी है।

सीरियलाइजेशन में देरी भौतिक पैकेट के माध्यम से पैकेट को सीरीज़ करने में कितना समय लगता है, यही नेटवर्किंग डिवाइस पर इंटरफेस है। यदि आपके पास 2 Mbit कनेक्शन है और आप 1500 बाइट का पैकेट भेज रहे हैं जो पैकेट को क्रमबद्ध करने के लिए 6 ms (12000/2000000) होगा।

कतारबद्ध / बफ़रिंग विलंब कितना समय है जब पैकेट को इंटरफ़ेस पर भेजे जाने से पहले कतार / बफर में रहना पड़ता है। इंटरफ़ेस पर गति और बड़े बफ़र्स का उपयोग कैसे किया जाता है, इसके आधार पर अगले कुछ भी नहीं या एक महत्वपूर्ण देरी हो सकती है।

उसके बाद पैकेटों को बनाने और उन्हें संभालने के लिए आवेदन के लिए मेजबानों पर कुछ देरी होगी। HTTP देरी को मापने के लिए अनुप्रयोग हैं। लोग वेब साइटों पर ज्यादा देरी नहीं करते हैं, क्योंकि यह एक महत्वपूर्ण कारक है।


हॉप्स की संख्या के बारे में क्या? और प्रत्येक हॉप में देरी?
एस्पांटा

एक सामान्य सूत्र बनाना मुश्किल है क्योंकि कुछ कारक भिन्न होते हैं जैसे क्रमबद्धता और कतारबद्धता। यहाँ कोई है जो इसके बारे में लिखा है। ccieflyer.com/pdf/2009-Mar-Oleg-Berzin.pdf - गणित मेरी गणित कौशल से परे है, हालांकि :)
डैनियल डीआईबी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.