टीसीपी संकुलन नियंत्रण: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
'''[[ प्रसारण नियंत्रण प्रोटोकॉल |ट्रांसमिशन कंट्रोल प्रोटोकॉल]] (टीसीपी)''' [[ भीड़ नियंत्रण |कंजेशन कंट्रोल]] एल्गोरिदम का उपयोग करता है जिसमें कंजेशन से बचने के लिए स्लो | '''[[ प्रसारण नियंत्रण प्रोटोकॉल |ट्रांसमिशन कंट्रोल प्रोटोकॉल]] (टीसीपी)''' [[ भीड़ नियंत्रण |कंजेशन कंट्रोल]] एल्गोरिदम का उपयोग करता है जिसमें कंजेशन से बचने के लिए स्लो स्टार्ट सहित और कंजेशन विंडो (सीडब्ल्यूएनडी) सहित अन्य योजनाओं के साथ-साथ एडिटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) योजना के विभिन्न विषय सम्मिलित हैं।{{sfn|Jacobson|Karels|1988}} '''टीसीपी''' '''कंजेशन-अवॉइडेंस एल्गोरिदम''' इंटरनेट में कंजेशन कंट्रोल का प्राइमरी आधार है।<ref name="RFC 2001"/><ref name="RFC 3390">{{cite IETF|title=टीसीपी की आरंभिक विंडो बढ़ाना|rfc=3390|author=M. Allman|author2=S. Floyd|author3=C. Partridge|date=October 2002}}</ref><ref>{{cite web|url=http://www.eventhelix.com/RealtimeMantra/Networking/TCP_Congestion_Avoidance.pdf|title=टीसीपी कंजेशन से बचाव को एक अनुक्रम आरेख के माध्यम से समझाया गया|website=eventhelix.com}}</ref> एंड-टू-एंड सिद्धांत के अनुसार, कंजेशन कंट्रोल अधिक लिमिट तक [[[[इंटरनेट]] होस्ट]] का कार्य है, न कि नेटवर्क का कार्य है। इंटरनेट से कनेक्ट होने वाले कंप्यूटरों के [[ऑपरेटिंग सिस्टम]] के [[प्रोटोकॉल स्टैक]] में प्रारम्भ एल्गोरिदम के कई वैरिएशंस और वर्जन्स हैं। | ||
कंजेस्टिव कोलैपस से बचने के लिए, टीसीपी मल्टी-फेसटेड कंजेशन-कंट्रोल स्ट्रेटेजी का उपयोग करता है। प्रत्येक कनेक्शन के लिए, टीसीपी सीडब्ल्यूएनडी बनाए रखता है, जो ट्रांजिट में एंड-टू-एंड हो सकने वाले अनएकनॉलेजड पैकेटों की कुल | कंजेस्टिव कोलैपस से बचने के लिए, टीसीपी मल्टी-फेसटेड कंजेशन-कंट्रोल स्ट्रेटेजी का उपयोग करता है। प्रत्येक कनेक्शन के लिए, टीसीपी सीडब्ल्यूएनडी बनाए रखता है, जो ट्रांजिट में एंड-टू-एंड हो सकने वाले अनएकनॉलेजड पैकेटों की कुल नंबर को सीमित करता है। यह कुछ लिमिट तक फ्लो कंट्रोल के लिए उपयोग की जाने वाली टीसीपी की[[ स्लाइडिंग खिड़की | स्लाइडिंग विंडो]] के समान है। | ||
== एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज == | == एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज == | ||
एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) एल्गोरिदम क्लोज्ड-लूप [[नियंत्रण प्रणाली|कंट्रोल]] एल्गोरिदम है। एआईएमडी कंजेशन होने पर कंजेशन विंडो की लीनियर ग्रोथ को एक्सपोनेंशियल से रिडक्शन के साथ जोड़ती है। एआईएमडी कंजेशन कंट्रोल का उपयोग करने वाले मल्टीप्ल फ्लो कण्टेण्डेड लिंक की समान | एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) एल्गोरिदम क्लोज्ड-लूप [[नियंत्रण प्रणाली|कंट्रोल]] एल्गोरिदम है। एआईएमडी कंजेशन होने पर कंजेशन विंडो की लीनियर ग्रोथ को एक्सपोनेंशियल से रिडक्शन के साथ जोड़ती है। एआईएमडी कंजेशन कंट्रोल का उपयोग करने वाले मल्टीप्ल फ्लो कण्टेण्डेड लिंक की समान अमाउंटस का उपयोग करने के लिए एकत्रित होंगे।<ref name="chui1989" /> | ||
यह वह एल्गोरिदम है जिसे कंजेशन एवॉइडेन्स स्थिति के लिए {{IETF RFC|5681}} में वर्णन किया गया है।<ref>{{cite IETF|title=टीसीपी कंजेशन नियंत्रण|rfc=5681|section=3.1|last1=Allman|first1=M.|last2=Paxson|first2=V.|date=September 2009|publisher=[[Internet Engineering Task Force|IETF]]|access-date=March 4, 2021|doi=10.17487/RFC5681}}</ref> | यह वह एल्गोरिदम है जिसे कंजेशन एवॉइडेन्स स्थिति के लिए {{IETF RFC|5681}} में वर्णन किया गया है।<ref>{{cite IETF|title=टीसीपी कंजेशन नियंत्रण|rfc=5681|section=3.1|last1=Allman|first1=M.|last2=Paxson|first2=V.|date=September 2009|publisher=[[Internet Engineering Task Force|IETF]]|access-date=March 4, 2021|doi=10.17487/RFC5681}}</ref> | ||
== कंजेशन विंडो == | == कंजेशन विंडो == | ||
टीसीपी में, '''कंजेशन विंडो''' (सीडब्ल्यूएनडी) उन फैक्टर्स में से है जो किसी भी टाइम भेजे जा सकने वाले बाइट्स की | टीसीपी में, '''कंजेशन विंडो''' (सीडब्ल्यूएनडी) उन फैक्टर्स में से है जो किसी भी टाइम भेजे जा सकने वाले बाइट्स की नंबर निर्धारित करती है। कंजेशन विंडो को सेन्डर द्वारा बनाए रखा जाता है और यह सेन्डर और रिसीवर के मध्य लिंक को अधिक ट्रैफ़िक से ओवरलोड होने से स्टॉप करने का साधन है। इसे सेन्डर द्वारा बनाए गए स्लाइडिंग विंडो के साथ कन्फ्यूज्ड नहीं किया जाना चाहिए जो रिसीवर को ओवरलोड होने से स्टॉप करने के लिए उपस्थित है। कंजेशन विंडो की गणना यह अनुमान लगाकर की जाती है कि लिंक पर कितना कंजेशन है। | ||
जब कोई कनेक्शन स्थापित किया जाता है, तो कंजेशन विंडो, प्रत्येक होस्ट पर | जब कोई कनेक्शन स्थापित किया जाता है, तो कंजेशन विंडो, प्रत्येक होस्ट पर स्वतंत्र रूप से बनाए रखा गया मान, उस कनेक्शन पर अलाउड '''मैक्सिमम सेगमेंट साइज़ (एमएसएस)''' के छोटे मल्टिप्लिकेटिव पर सेट किया जाता है। कंजेशन विंडो में और अधिक वरियन्स एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) दृष्टिकोण द्वारा निर्धारित होती है। इसका तात्पर्य यह है कि यदि सभी सेगमेंट प्राप्त हो जाते हैं और एकनॉलेजमेंट सेन्डर टाइम पर पहुंच जाती है, तो विंडो साइज़ में कुछ कांस्टेंट जोड़ दिया जाता है। यह भिन्न-भिन्न एल्गोरिदम का पालन करेगा। | ||
सिस्टम | सिस्टम एडमिनिस्ट्रेटर [[टीसीपी ट्यूनिंग]] के भाग के रूप में मैक्सिमम विंडो साइज़ लिमिट को समायोजित कर सकता है, या एडिटिव इनक्रीस के टाइम जोड़े गए कांस्टेंट को समायोजित कर सकता है। | ||
टीसीपी कनेक्शन पर डेटा के फ्लो रिसीवर द्वारा एडवर्टाइज ट्रांसमिशन रिसीव विंडो के उपयोग से भी कण्ट्रोल होता है। सेन्डर अपनी स्वयं की कंजेशन विंडो और रिसीव विंडो से कम डेटा | टीसीपी कनेक्शन पर डेटा के फ्लो रिसीवर द्वारा एडवर्टाइज ट्रांसमिशन रिसीव विंडो के उपयोग से भी कण्ट्रोल होता है। सेन्डर अपनी स्वयं की कंजेशन विंडो और रिसीव विंडो से कम डेटा सेंट कर सकता है। | ||
== स्लो स्टार्ट == | == स्लो स्टार्ट == | ||
स्लो स्टार्ट, {{IETF RFC|5681}}<ref name="Blanton">{{Cite journal |last1=Blanton|first1=Ethan|last2=Paxson|first2=Vern|last3=Allman|first3=Mark|date=September 2009|title=टीसीपी कंजेशन नियंत्रण|website=IETF |url=https://datatracker.ietf.org/doc/rfc5681/}}</ref> द्वारा परिभाषित टीसीपी द्वारा अन्य [[कलन विधि|एल्गोरिदम विधि]] के साथ मिलकर उपयोग की जाने वाली कंजेशन कंट्रोल स्ट्रेटेजी का भाग है जिससे नेटवर्क फ़ॉर्वर्डेड करने में सक्षम से अधिक डेटा | स्लो स्टार्ट, {{IETF RFC|5681}}<ref name="Blanton">{{Cite journal |last1=Blanton|first1=Ethan|last2=Paxson|first2=Vern|last3=Allman|first3=Mark|date=September 2009|title=टीसीपी कंजेशन नियंत्रण|website=IETF |url=https://datatracker.ietf.org/doc/rfc5681/}}</ref> द्वारा परिभाषित टीसीपी द्वारा अन्य [[कलन विधि|एल्गोरिदम विधि]] के साथ मिलकर उपयोग की जाने वाली कंजेशन कंट्रोल स्ट्रेटेजी का भाग है जिससे नेटवर्क फ़ॉर्वर्डेड करने में सक्षम से अधिक डेटा सेंट करने से बचा जा सके, अर्थात नेटवर्क कंजेशन से बचने के लिए किया जाता है। | ||
स्लो स्टार्ट में 1, 2, 4 या 10 एमएसएस के कंजेशन विंडो साइज़ (सीडब्ल्यूएनडी) के साथ प्रारंभ होती है।<ref>{{cite web |last=Corbet |first=Jonathan |title=टीसीपी प्रारंभिक कंजेशन विंडो को बढ़ाना|url=https://lwn.net/Articles/427104/ |publisher=LWN |access-date=10 October 2012}}</ref><ref name="RFC 3390"/>{{rp|1}}प्रभावी रूप से प्रत्येक [[पावती (डेटा नेटवर्क)|आरटीटी]] में विंडो का साइज़ डबल हो जाता है।{{efn|Even if, actually, the receiver may delay its ACKs, typically sending one ACK for every two segments that it receives<ref name="RFC 2001">{{cite IETF|title=TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms|rfc=2001|author=W. Stevens|date=January 1997}}</ref>}} | स्लो स्टार्ट में 1, 2, 4 या 10 एमएसएस के कंजेशन विंडो साइज़ (सीडब्ल्यूएनडी) के साथ प्रारंभ होती है।<ref>{{cite web |last=Corbet |first=Jonathan |title=टीसीपी प्रारंभिक कंजेशन विंडो को बढ़ाना|url=https://lwn.net/Articles/427104/ |publisher=LWN |access-date=10 October 2012}}</ref><ref name="RFC 3390"/>{{rp|1}}प्रभावी रूप से प्रत्येक [[पावती (डेटा नेटवर्क)|आरटीटी]] में विंडो का साइज़ डबल हो जाता है।{{efn|Even if, actually, the receiver may delay its ACKs, typically sending one ACK for every two segments that it receives<ref name="RFC 2001">{{cite IETF|title=TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms|rfc=2001|author=W. Stevens|date=January 1997}}</ref>}} | ||
Line 28: | Line 28: | ||
ट्रांसमिशन रेट स्लो स्टार्ट एल्गोरिथ्म द्वारा तब तक इनक्रीसड की जाएगी जब तक कि पैकेट लॉस को ज्ञात नहीं किया जा सकता है, या रिसीवर की एडवर्टाइज विंडो (आरडब्ल्यूएनडी) लिमिट फैक्टर नहीं है। | ट्रांसमिशन रेट स्लो स्टार्ट एल्गोरिथ्म द्वारा तब तक इनक्रीसड की जाएगी जब तक कि पैकेट लॉस को ज्ञात नहीं किया जा सकता है, या रिसीवर की एडवर्टाइज विंडो (आरडब्ल्यूएनडी) लिमिट फैक्टर नहीं है। | ||
या स्लो स्टार्ट थ्रेशोल्ड (ssthresh) तक पहुंच गया है, जिसका उपयोग यह निर्धारित करने के लिए किया जाता है कि स्लो स्टार्ट या कंजेशन से एवॉइडेन्स एल्गोरिदम का उपयोग किया जाता है, जो स्लो स्टार्ट को सीमित करने के लिए निर्धारित मान | या स्लो स्टार्ट थ्रेशोल्ड (ssthresh) तक पहुंच गया है, जिसका उपयोग यह निर्धारित करने के लिए किया जाता है कि स्लो स्टार्ट या कंजेशन से एवॉइडेन्स एल्गोरिदम का उपयोग किया जाता है, जो स्लो स्टार्ट को सीमित करने के लिए निर्धारित मान है। | ||
यदि सीडब्ल्यूएनडी ssthresh तक पहुँच जाता है, तो टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम में परिवर्तित कर दिया जाता है। इसे प्रत्येक आरटीटी के लिए 1 एमएसएस तक इनक्रीसड किया जाना चाहिए। | यदि सीडब्ल्यूएनडी ssthresh तक पहुँच जाता है, तो टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम में परिवर्तित कर दिया जाता है। इसे प्रत्येक आरटीटी के लिए 1 एमएसएस तक इनक्रीसड किया जाना चाहिए। | ||
सामान्य सूत्र यह है कि प्रत्येक नया | सामान्य सूत्र यह है कि प्रत्येक नया एसीके सीडब्ल्यूएनडी को MSS* {{nobreak|MSS / CWND.}} द्वारा इनक्रीसड करता है। यह लगभग लीनियर रूप से इनक्रीसड होता है और एक्सेप्टएबल एप्प्रोक्सिमेंशन प्रदान करता है। | ||
यदि कोई लॉस इवेंट होता है, तो टीसीपी मानता है कि यह नेटवर्क के कंजेशन के कारण है और नेटवर्क पर प्रस्तावित लोड को कम करने के लिए स्टेप लेता है। ये मेज़रमेंट उपयोग किए गए एक्साक्ट टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम पर निर्भर करते हैं। | यदि कोई लॉस इवेंट होता है, तो टीसीपी मानता है कि यह नेटवर्क के कंजेशन के कारण है और नेटवर्क पर प्रस्तावित लोड को कम करने के लिए स्टेप लेता है। ये मेज़रमेंट उपयोग किए गए एक्साक्ट टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम पर निर्भर करते हैं। | ||
जब टीसीपी सेन्डर रीट्रांसमिशन टाइमर का उपयोग करके सेगमेंट लॉस को ज्ञात किया जाता है और दिए गए सेगमेंट को रीट्रांसमिशन टाइमर के माध्यम से अभी तक रिसेंट नहीं गया है, तो ssthresh का मान | जब टीसीपी सेन्डर रीट्रांसमिशन टाइमर का उपयोग करके सेगमेंट लॉस को ज्ञात किया जाता है और दिए गए सेगमेंट को रीट्रांसमिशन टाइमर के माध्यम से अभी तक रिसेंट नहीं गया है, तो ssthresh का मान सेंट किये गए डेटा के अमाउंट के हाफ से अधिक पर सेट नहीं किया जाना चाहिए, किंतु फिर भी क्युमुलेटिव रूप से 2 * MSS एकनॉलेजमेंट किया गया। | ||
;टीसीपी ताहो | ;टीसीपी ताहो | ||
: जब कोई लॉस होता है, तो रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh के रूप में सेव किया जाता है और इसके प्रारंभिक सीडब्ल्यूएनडी से स्लो स्टार्ट फिर से प्रारंभ होती है। | : जब कोई लॉस होता है, तो रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh के रूप में सेव किया जाता है और इसके प्रारंभिक सीडब्ल्यूएनडी से स्लो स्टार्ट फिर से प्रारंभ होती है। | ||
; टीसीपी रेनो | ; टीसीपी रेनो | ||
: फास्ट रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh और | : फास्ट रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh और न्यू सीडब्ल्यूएनडी के रूप में सेव किया जाता है, इस प्रकार स्लो स्टार्ट को स्किप कर दिया जाता है और डायरेक्ट कंजेशन अवॉइडेंस एल्गोरिदम पर चला जाता है। यहां ओवरआल एल्गोरिदम को '''{{vanchor|फ़ास्ट रिकवरी}}''' कहा जाता है। | ||
स्लो स्टार्ट यह मानती है कि | स्लो स्टार्ट यह मानती है कि अन्यूकनॉलेजड सेगमेंट नेटवर्क कंजेशन के कारण हैं। चूँकि यह कई नेटवर्कों के लिए एक्सेप्टएबल धारणा है, अन्य कारणों से सेगमेंट लॉस्ट हो सकते हैं, जैसे पुअर [[सूचना श्रंखला तल|डेटा लिंक लेयर]] ट्रांसमिशन क्वालिटी है। इस प्रकार, [[वायरलेस लेन]] जैसी पुअर रिसेप्शन वाली स्थितियों में स्लो स्टार्ट पुअर परफॉर्म कर सकता है। | ||
स्लो स्टार्ट प्रोटोकॉल शार्ट लिवड कनेक्शन के लिए भी बेड परफॉर्म करता है। ओल्डर [[वेब ब्राउज़र्स]] वेब सर्वर के लिए निरंतर कई शार्ट लिवड कनेक्शन बनाएंगे, और रिक्वेस्टड प्रत्येक फ़ाइल के लिए कनेक्शन ओपन और क्लोज्ड करेंगे। इसने अधिकांश कनेक्शनों को स्लो स्टार्ट मोड में रखा, जिसके परिणामस्वरूप रिपोंस टाइम पुअर हो गया। इस समस्या से बचने के लिए, मॉडर्न ब्राउज़र या तो कई कनेक्शन ओपन करते हैं या किसी विशेष वेब सर्वर से रिक्वेस्टड सभी फ़ाइलों के लिए [[HTTP लगातार कनेक्शन|एचटीटीपी कनेक्शन]] पुन: उपयोग करते हैं। चूँकि, [[विज्ञापन नेटवर्क|वेब एडवर्टाइजिंग]] को प्रारंभ करने, [[सामाजिक नेटवर्किंग सेवा|सोशल नेटवर्किंग सर्विसेज]] की सुविधाओं को और [[ बटन की तरह |एनालिटिक्स की काउंटर स्क्रिप्ट]] के लिए वेब साइटों द्वारा उपयोग किए जाने वाले कई थर्ड-पार्टी सर्वरों के लिए कनेक्शन का पुन: उपयोग नहीं किया जा सकता है।<ref>Nick O'Neill. "[http://allfacebook.com/whats-making-your-site-go-slow-could-be-the-like-button_b24121 What's Making Your Site Go Slow? Could Be The Like Button]". ''AllFacebook'', 10 November 2010. Retrieved on 12 September 2012.</ref> | स्लो स्टार्ट प्रोटोकॉल शार्ट लिवड कनेक्शन के लिए भी बेड परफॉर्म करता है। ओल्डर [[वेब ब्राउज़र्स]] वेब सर्वर के लिए निरंतर कई शार्ट लिवड कनेक्शन बनाएंगे, और रिक्वेस्टड प्रत्येक फ़ाइल के लिए कनेक्शन ओपन और क्लोज्ड करेंगे। इसने अधिकांश कनेक्शनों को स्लो स्टार्ट मोड में रखा, जिसके परिणामस्वरूप रिपोंस टाइम पुअर हो गया। इस समस्या से बचने के लिए, मॉडर्न ब्राउज़र या तो कई कनेक्शन ओपन करते हैं या किसी विशेष वेब सर्वर से रिक्वेस्टड सभी फ़ाइलों के लिए [[HTTP लगातार कनेक्शन|एचटीटीपी कनेक्शन]] पुन: उपयोग करते हैं। चूँकि, [[विज्ञापन नेटवर्क|वेब एडवर्टाइजिंग]] को प्रारंभ करने, [[सामाजिक नेटवर्किंग सेवा|सोशल नेटवर्किंग सर्विसेज]] की सुविधाओं को और [[ बटन की तरह |एनालिटिक्स की काउंटर स्क्रिप्ट]] के लिए वेब साइटों द्वारा उपयोग किए जाने वाले कई थर्ड-पार्टी सर्वरों के लिए कनेक्शन का पुन: उपयोग नहीं किया जा सकता है।<ref>Nick O'Neill. "[http://allfacebook.com/whats-making-your-site-go-slow-could-be-the-like-button_b24121 What's Making Your Site Go Slow? Could Be The Like Button]". ''AllFacebook'', 10 November 2010. Retrieved on 12 September 2012.</ref> | ||
Line 49: | Line 49: | ||
'''फास्ट रीट्रांसमिट''' ट्रांसमिशन कंट्रोल प्रोटोकॉल का एनहांसमेंट है जो किसी लॉस्ट हुए सेगमेंट को रीट्रांसमिट करने से पहले सेन्डर के टाइमर को कम कर देता है। टीसीपी सेन्डर सामान्यतः लॉस्ट सेगमेंटों को पहचानने के लिए साधारण टाइमर का उपयोग करता है। यदि किसी स्पेसिफ़िएड टाइम (एस्टिमेटेड [[राउंड-ट्रिप में देरी का समय|राउंड-ट्रिप डिले टाइम]] का फ़ंक्शन) के भीतर किसी विशेष सेगमेंट के लिए एकनॉलेजमेंट प्राप्त नहीं होती है, तो सेन्डर मान लेगा कि सेगमेंट नेटवर्क में लॉस्ट हो गया है और सेगमेंट को रीट्रांसमिट करेगा। | '''फास्ट रीट्रांसमिट''' ट्रांसमिशन कंट्रोल प्रोटोकॉल का एनहांसमेंट है जो किसी लॉस्ट हुए सेगमेंट को रीट्रांसमिट करने से पहले सेन्डर के टाइमर को कम कर देता है। टीसीपी सेन्डर सामान्यतः लॉस्ट सेगमेंटों को पहचानने के लिए साधारण टाइमर का उपयोग करता है। यदि किसी स्पेसिफ़िएड टाइम (एस्टिमेटेड [[राउंड-ट्रिप में देरी का समय|राउंड-ट्रिप डिले टाइम]] का फ़ंक्शन) के भीतर किसी विशेष सेगमेंट के लिए एकनॉलेजमेंट प्राप्त नहीं होती है, तो सेन्डर मान लेगा कि सेगमेंट नेटवर्क में लॉस्ट हो गया है और सेगमेंट को रीट्रांसमिट करेगा। | ||
'''डुप्लिकेट एकनॉलेजमेंट''' फास्ट से रीट्रांसमिट सिस्टम का आधार है। पैकेट प्राप्त करने के पश्चात प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट के लिए एकनॉलेजमेंट | '''डुप्लिकेट एकनॉलेजमेंट''' फास्ट से रीट्रांसमिट सिस्टम का आधार है। पैकेट प्राप्त करने के पश्चात प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट के लिए एकनॉलेजमेंट सेंट की जाती है। इन-ऑर्डर पैकेट के लिए, यह प्रभावी रूप से लास्ट पैकेट की सीक्वेंस नंबर और करंट पैकेट की पेलोड लंबाई है। यदि सीक्वेंस में नेक्स्ट पैकेट लॉस्ट हो जाता है किंतु सीक्वेंस में थर्ड पैकेट प्राप्त होता है, तो रिसीवर केवल डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है, जो कि वही मान है जो पहले पैकेट के लिए एकनॉलेजड किया गया था। सेकंड पैकेट लॉस्ट हो गया है और थर्ड पैकेट आर्डर में नहीं है, इसलिए डेटा का लास्ट इन-ऑर्डर बाइट पहले जैसा ही रहता है। इस प्रकार डुप्लिकेट एकनॉलेजमेंट होती है। सेन्डर पैकेट सेंट करना प्रारंभ रखता है, फोर्थ और फिफ्थ पैकेट रिसीवर को प्राप्त होता है। फिर, सेकंड पैकेट सीक्वेंस से मिस हो जाता है, इसलिए लास्ट इन-ऑर्डर बाइट नहीं परिवर्तित हुआ है। इन दोनों पैकेटों के लिए डुप्लिकेट एकनॉलेजमेंट सेंट की जाती है। | ||
जब सेन्डर को तीन डुप्लिकेट एकनॉलेजमेंट प्राप्त होती है, तो यह उचित रूप से कॉंफिडेंट हो सकता है कि एकनॉलेजमेंट में स्पेसिफ़िएड लास्ट इन-ऑर्डर बाइट के पश्चात डेटा ले जाने वाला सेगमेंट लॉस्ट हो गया था। फास्ट रीट्रांसमिट करने वाला सेन्डर इस पैकेट को इसके टाइम आउट होने की प्रतीक्षा किए बिना रीट्रांसमिट करेगा। रीट्रांसमिट सेगमेंट की प्राप्ति पर, रिसीवर प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है। उपरोक्त उदाहरण में, यह फिफ्थ पैकेट के पेलोड के एंड को एकनॉलेजड | जब सेन्डर को तीन डुप्लिकेट एकनॉलेजमेंट प्राप्त होती है, तो यह उचित रूप से कॉंफिडेंट हो सकता है कि एकनॉलेजमेंट में स्पेसिफ़िएड लास्ट इन-ऑर्डर बाइट के पश्चात डेटा ले जाने वाला सेगमेंट लॉस्ट हो गया था। फास्ट रीट्रांसमिट करने वाला सेन्डर इस पैकेट को इसके टाइम आउट होने की प्रतीक्षा किए बिना रीट्रांसमिट करेगा। रीट्रांसमिट सेगमेंट की प्राप्ति पर, रिसीवर प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है। उपरोक्त उदाहरण में, यह फिफ्थ पैकेट के पेलोड के एंड को एकनॉलेजड करेगा। इंटरमीडिएट पैकेटों को एकनॉलेजमेंट करने की कोई आवश्यकता नहीं है क्योंकि टीसीपी डिफ़ॉल्ट रूप से क्युमुलेटिव एकनॉलेजमेंट का उपयोग करता है। | ||
== एल्गोरिदम == | == एल्गोरिदम == | ||
Line 58: | Line 58: | ||
निम्नलिखित गुणों के अनुसार निम्नलिखित संभावित वर्गीकरण है: | निम्नलिखित गुणों के अनुसार निम्नलिखित संभावित वर्गीकरण है: | ||
# नेटवर्क से प्राप्त फीडबैक का टाइप और | # नेटवर्क से प्राप्त फीडबैक का टाइप और अमाउंट। | ||
# करंट इंटरनेट पर इनक्रीमेंटल | # करंट इंटरनेट पर इनक्रीमेंटल डेप्लॉयबिलिटी। | ||
# परफॉरमेंस के जिस विषय में | # परफॉरमेंस के जिस विषय में इम्प्रूव करना इसका लक्ष्य है: हाई [[बैंडविड्थ-विलंब उत्पाद|बैंडविड्थ-डिले प्रोडक्ट]] नेटवर्क (बी); लॉसी लिंक (एल); फेयरनेस (एफ); शोर्ट फ्लो का एडवांटेज (एस); वेरिएबल-रेट लिंक (वी); [[अभिसरण की गति|कन्वर्जेन्स की स्पीड]] (सी)। | ||
# यह फेयरनेस क्रिटेरियन का उपयोग करता है। | # यह फेयरनेस क्रिटेरियन का उपयोग करता है। | ||
Line 109: | Line 109: | ||
| | | | ||
|- | |- | ||
| | |एन्यूटीसीपी{{sfn|Abbasloo|Xu|Chao|Shi|2019}} | ||
|मल्टी-बिट सिग्नल | |मल्टी-बिट सिग्नल | ||
|सेन्डर | |सेन्डर | ||
Line 214: | Line 214: | ||
'''टीसीपी ताहो और रेनो''' | '''टीसीपी ताहो और रेनो''' | ||
टीसीपी ताहो और रेनो एल्गोरिदम को | टीसीपी ताहो और रेनो एल्गोरिदम को रेट्रोस्पेक्टिवेली 4.3बीएसडी ऑपरेटिंग सिस्टम के वर्जन या फ्लेवरस के नाम पर रखा गया था, जिनमें से प्रत्येक सर्वप्रथम दिखाई दिया था (जो स्वयं [[ताहो झील|ताहो लेक]] और निकट के शहर रेनो, नेवादा के नाम पर थे)। ताहो एल्गोरिथ्म सर्वप्रथम 4.3बीएसडी-ताहो (जो सीसीआई पावर 6/32 "ताहो" मिनीकंप्यूटर का समर्थन करने के लिए बनाया गया था) में दिखाई दिया, और पश्चात में 4.3बीएसडी नेटवर्किंग रिलीज़ 1 के भाग के रूप में नॉन-एटी एंड टी लिसेंसिस के लिए उपलब्ध कराया गया; इससे इसका व्यापक वितरण और कार्यान्वयन सुनिश्चित हुआ। 4.3बीएसडी-रेनो में इम्प्रूव किए गए और पश्चात में इसे नेटवर्किंग रिलीज़ 2 और पश्चात में 4.4बीएसडी-लाइट के रूप में पब्लिक के लिए प्रारंभ किया गया। | ||
जबकि दोनों रीट्रांसमिशन टाइमआउट (आरटीओ) और डुप्लिकेट एसीके को पैकेट लॉस की | जबकि दोनों रीट्रांसमिशन टाइमआउट (आरटीओ) और डुप्लिकेट एसीके को पैकेट लॉस की इवेंट्स के रूप में मानते हैं, ताहो और रेनो का व्यवहार मुख्य रूप से इस विचार में भिन्न होता है कि वे डुप्लिकेट एसीके पर कैसे प्रतिक्रिया करते हैं: | ||
* ताहो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं (अर्थात | * ताहो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं (अर्थात एक ही पैकेट को एकनॉलेजिंग करने वाले चार एसीके, जो डेटा पर पिग्गीबैक नहीं होते हैं और रिसीवर की एडवर्टाइड विंडो को नहीं परिवर्तितत करते हैं), ताहो फ़ास्ट रिट्रांसमिट करता है, स्लो स्टार्ट लिमिट को करंट के हाफ पर सेट करता है विंडो, कंजेशन विंडो को 1 एमएसएस तक कम कर देती है, और स्लो स्टार्ट स्थिति पर रीसेट कर देती है।{{sfn|Kurose|Ross|2008|p=284}} | ||
* रेनो: यदि तीन डुप्लिकेट | * रेनो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं, तो रेनो फास्ट से रिट्रांसमिट करेगा और कंजेशन विंडो को हाफ करके (ताहो के जैसे 1 MSS पर सेट करने के अतिरिक्त), ssthresh को न्यू कंजेशन विंडो के समान सेट करके स्लो स्टार्ट फेज को स्किप कर देगा। और फ़ास्ट रिकवरी नामक फेज में प्रवेश करें।{{sfn|Kurose|Ross|2012|p=277}} | ||
ताहो और रेनो दोनों में, यदि एसीके टाइम आउट (आरटीओ टाइमआउट) होता है, तो | ताहो और रेनो दोनों में, यदि एसीके टाइम आउट (आरटीओ टाइमआउट) होता है, तो स्लो स्टार्ट का उपयोग किया जाता है, और दोनों एल्गोरिदम कंजेशन विंडो को 1 एमएसएस तक कम कर देते हैं। | ||
=== टीसीपी न्यू रेनो === | === टीसीपी न्यू रेनो === | ||
टीसीपी न्यू रेनो, | टीसीपी न्यू रेनो, {{IETF RFC|6582}} द्वारा परिभाषित (जो {{IETF RFC|3782}} और {{IETF RFC|2582}} में पूर्व परिभाषाओं को अप्रचलित करता है), टीसीपी रेनो के फास्ट रिकवरी फेज के टाइम रिट्रांसमिशन में इम्प्रूव करता है। | ||
फास्ट | फास्ट रिकवरी के टाइम, ट्रांसमिट विंडो को फुल रखने के लिए, रिटर्न किये जाने वाले प्रत्येक डुप्लिकेट एसीके के लिए, कंजेशन विंडो के अंत से नया अनसेंट पैकेट सेंट किया जाता है। | ||
रेनो से अंतर यह है कि | रेनो से अंतर यह है कि न्यू रेनो ssthresh को इम्मेडिएटली हाफ नहीं करती है, जिससे मल्टीप्ल पैकेट लॉस होने पर विंडो अधिक कम हो सकती है। यह फास्ट रिकवरी से बाहर नहीं निकलता है और ssthresh को रीसेट नहीं करता है जब तक कि यह सभी डेटा को एकनॉलेजमेंट नहीं करता है। | ||
रिट्रांसमिशन के पश्चात, न्यू एकनॉलेजड डेटा के दो केसेस हैं: | |||
* | * फुल एकनॉलेजमेंट्स: एसीके सेंट किये गए सभी इंटरमीडिएट सेगमेंटों को एकनॉलेज करता है, ssthresh को परिवर्तित नहीं किया जा सकता है, cwnd को ssthresh पर सेट किया जा सकता है। | ||
* | * पार्शियल एकनॉलेजमेंट्स: एसीके सभी डेटा को एकनॉलेज नहीं करता है। इसका तात्पर्य है कि लॉस हो सकता है, यदि अनुमति हो तो पहले अनएकनॉलेजड सेगमेंट को रिट्रांसमिट करना। | ||
यह रिकॉर्ड करने के लिए | यह रिकॉर्ड करने के लिए कि कितना डेटा रिकवर करने की आवश्यकता है, यह "रिकवर" नामक वेरिएबल का उपयोग करता है। रीट्रांसमिट टाइमआउट के पश्चात, यह रिकवरी वेरिएबल में ट्रांसमिटेड हाईएस्ट सीक्वेंस नंबर को रिकॉर्ड करता है और फास्ट रिकवरी प्रोसीजर से बाहर निकलता है। यदि इस सीक्वेंस नंबर को एकनॉलेजड किया जाता है, तो टीसीपी कंजेशन से एवॉइडेन्स की स्थिति में वापस आ जाती है। | ||
न्यू रेनो के साथ | न्यू रेनो के साथ समस्या तब उत्पन्न होती है जब कोई पैकेट लॉस नहीं होती है, अन्यथा पैकेट को 3 से अधिक पैकेट सीक्वेंस नंबर्स द्वारा रिआर्डरड किया जाता है। इस केस में, न्यू रेनो मिस्टेक्स से फास्ट रिकवरी में प्रवेश करती है। जब रिऑर्डर किया गया पैकेट वितरित किया जाता है, तो डुप्लिकेट और अनावश्यक रिट्रांसमिशन इम्मेडिएटली सेंट कर दिए जाते हैं। | ||
न्यू रेनो लो पैकेट एरर रेट पर सैक के समान ही परफॉरमेंस करती है और हाई एरर रेट पर रेनो से अधिक उत्तम परफॉरमेंस करती है।<ref>{{cite journal|last1=VasanthiN.|first1=V.|last2=SinghM.|first2=Ajith|last3=Kumar|first3=Romen|last4=Hemalatha|first4=M.|date=2011|editor1-last=Das|editor1-first=Vinu V|editor2-last=Thankachan|editor2-first=Nessy|title=Evaluation of Protocols and Algorithms for Improving the Performance of TCP over Wireless/Wired Network|journal=International Conference on Computational Intelligence and Information Technology|series=Communications in Computer and Information Science|publisher=Springer|volume=250|pages=693–697|doi=10.1007/978-3-642-25734-6_120|isbn=978-3-642-25733-9}}</ref> | |||
'''टीसीपी वेगास''' | '''टीसीपी वेगास''' | ||
{{main| | {{main|टीसीपी वेगास}} | ||
1990 के दशक के मध्य तक, टीसीपी के सभी निर्धारित टाइमआउट और | 1990 के दशक के मध्य तक, टीसीपी के सभी निर्धारित टाइमआउट और मेज़रमेंट की गई राउंड-ट्रिप डिले केवल ट्रांसमिट बफर में लास्ट ट्रांसमिटेड पैकेट पर आधारित थी। [[एरिज़ोना विश्वविद्यालय]] के रिसर्च लैरी पीटरसन और [[लॉरेंस ब्रैक्मो]] ने टीसीपी वेगास का प्रारंभ किया जिसमें टाइमआउट सेट किए गए थे और ट्रांसमिट बफर में प्रत्येक पैकेट के लिए राउंड-ट्रिप डिले को मेज़रमेंट किया गया था। इसके अतिरिक्त, टीसीपी वेगास कंजेशन विंडो में एडिटिव इनक्रीसजस का उपयोग करता है। विभिन्न टीसीपी {{abbr|सीसीए|congestion control algorithm}}एस के कम्पेरिजन अध्ययन में, टीसीपी क्यूबिक के पश्चात टीसीपी वेगास सबसे स्मूथ दिखाई दिया।<ref>{{cite web|title=टीसीपी कंजेशन नियंत्रण एल्गोरिदम का प्रदर्शन विश्लेषण|url=http://www.wseas.us/journals/cc/cc-27.pdf|access-date=26 March 2012}}</ref> | ||
टीसीपी वेगास को पीटरसन की | |||
टीसीपी वेगास को पीटरसन की लेबोरेटरी के बाहर व्यापक रूप से डेप्लॉयड नहीं किया गया था, किंतु [[डीडी-WRT|डीडी-डब्ल्यूआरटी]] फर्मवेयर v24 SP2 के लिए डिफ़ॉल्ट कंजेशन कंट्रोल विधि के रूप में चयन किया गया था।<ref>{{cite web|title=डीडी-डब्ल्यूआरटी चेंजलॉग|url=http://www.dd-wrt.com/wiki/index.php/Changelog|access-date=2 January 2012}}</ref> | |||
'''टीसीपी हाइब्ला''' | '''टीसीपी हाइब्ला''' | ||
टीसीपी हाइब्ला<ref>{{cite web |url=http://hybla.deis.unibo.it/ |title=हाइब्ला होम पेज|access-date=2007-03-04 |archive-url=https://web.archive.org/web/20071011095352/http://hybla.deis.unibo.it/ |archive-date=11 October 2007 |df=dmy-all }}</ref><ref>{{Cite journal |last1=Caini |first1=Carlo |last2=Firrincieli |first2=Rosario |date=2004 |title=TCP Hybla: a TCP enhancement for heterogeneous networks |url=https://onlinelibrary.wiley.com/doi/10.1002/sat.799 |journal=International Journal of Satellite Communications and Networking |language=en |volume=22 |issue=5 |pages=547–566 |doi=10.1002/sat.799 |s2cid=2360535 |issn=1542-0973}}</ref> | टीसीपी हाइब्ला<ref>{{cite web |url=http://hybla.deis.unibo.it/ |title=हाइब्ला होम पेज|access-date=2007-03-04 |archive-url=https://web.archive.org/web/20071011095352/http://hybla.deis.unibo.it/ |archive-date=11 October 2007 |df=dmy-all }}</ref><ref>{{Cite journal |last1=Caini |first1=Carlo |last2=Firrincieli |first2=Rosario |date=2004 |title=TCP Hybla: a TCP enhancement for heterogeneous networks |url=https://onlinelibrary.wiley.com/doi/10.1002/sat.799 |journal=International Journal of Satellite Communications and Networking |language=en |volume=22 |issue=5 |pages=547–566 |doi=10.1002/sat.799 |s2cid=2360535 |issn=1542-0973}}</ref> का उद्देश्य हाई-लेटेंसी टेरेस्ट्रियल या सॅटॅलाइट रेडियो लिंक का उपयोग करने वाले टीसीपी कनेक्शनों पर पेनलटीएस को समाप्त करना है। हाइब्ला इम्प्रूव कंजेशन विंडो डायनामिक्स के एनालिटिकल इवैल्यूएशन पर आधारित हैं।<ref>{{Cite book |last1=Caini |first1=C. |last2=Firrincieli |first2=R. |last3=Lacamera |first3=D. |title=2009 IEEE International Conference on Communications |chapter=Comparative Performance Evaluation of TCP Variants on Satellite Environments |date=2009 |chapter-url=https://ieeexplore.ieee.org/document/5198834 |pages=1–5 |doi=10.1109/ICC.2009.5198834|s2cid=8352762 }}</ref> | ||
'''टीसीपी बीआईसी''' | '''टीसीपी बीआईसी''' | ||
{{main| | {{main|बीआईसी टीसीपी }} | ||
=== टीसीपी | बाइनरी इनक्रीस कंजेशन कंट्रोल (बीआईसी) हाई लेटेंसी वाले हाई-स्पीड नेटवर्क के लिए ऑप्टीमाइज़्ड सीसीए के साथ टीसीपी कार्यान्वयन है, जिसे लॉन्ग फैट नेटवर्क (एलएफएन) के रूप में जाना जाता है।<ref>{{cite IETF |title=लंबी-विलंबित पथों के लिए टीसीपी एक्सटेंशन|first1=Jacobson |last1=V. |first2=Braden |last2=R.T. |rfc=1072}}</ref> [[लिनक्स कर्नेल]] 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से बीआईसी का उपयोग किया जाता है। | ||
{{main| | |||
=== टीसीपी क्यूबिक === | |||
{{main|क्यूबिक टीसीपी}} | |||
क्यूबिक, बीआईसी का लेस एग्रेसिव और अधिक सिस्टेमेटिक डेरीवेटिव है, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन है, जिसमें इवेंट से पहले विंडो पर इन्फ्लेक्शन बिंदु सेट होता है। वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से क्यूबिक का उपयोग किया जाता है। | |||
=== एजाइल-एसडी टीसीपी === | === एजाइल-एसडी टीसीपी === | ||
एजाइल-एसडी | एजाइल-एसडी लिनक्स-आधारित सीसीए है जिसे रियल लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो अजेलिटी फैक्टर (एएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-आधारित दृष्टिकोण को नियोजित करता है। हाई स्पीड और कम दूरी के नेटवर्क (कम-बीडीपी नेटवर्क) जैसे लोकल एरिया नेटवर्क या फाइबर-ऑप्टिक नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए, विशेष जब प्रारम्भ बफर साइज़ छोटा होता है।<ref name="agilesd"/>NS-2 सिम्युलेटर का उपयोग करके इसके परफॉरमेंस की कम्पेरिंग कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए) और क्यूबिक (लिनक्स का डिफ़ॉल्ट) से करके इसका मूल्यांकन किया गया है। यह एवरेज थ्रूपुट की अवधि में कुल परफॉरमेंस को 55% तक इम्प्रूव करता है। | ||
=== टीसीपी वेस्टवुड+ === | === टीसीपी वेस्टवुड+ === | ||
{{main| | {{main|टीसीपी वेस्टवुड+}} | ||
वेस्टवुड+ टीसीपी रेनो का केवल-सेन्डर | |||
वेस्टवुड+ टीसीपी रेनो का केवल-सेन्डर मॉडिफिकेशन है जो वायर्ड और [[ बेतार तंत्र |वायरलेस नेटवर्क]] दोनों पर टीसीपी कंजेशन कंट्रोल के परफॉरमेंस को ऑप्टीमाइज़्ड करता है। टीसीपी वेस्टवुड+ कंजेशन एपिसोड के पश्चात, अर्थात तीन डुप्लिकेट एकनॉलेजमेंट या टाइमआउट के पश्चात कंजेशन विंडो और स्लो स्टार्ट थ्रेशोल्ड सेट करने के लिए एंड-टू-एंड [[बैंडविड्थ (कंप्यूटिंग)]] अनुमान पर आधारित है। एकनॉलेजमेंट पैकेट रिटर्न रेट के एवरेज से बैंडविड्थ का अनुमान लगाया जाता है। टीसीपी रेनो के विपरीत, जो तीन डुप्लिकेट एसीके के पश्चात कंजेशन विंडो को क्लोज्ड करके हाफ कर देता है, टीसीपी वेस्टवुड+ अनुकूल रूप से स्लो स्टार्ट लिमिट और कंजेशन विंडो सेट करता है जो कंजेशन के अनुभव के टाइम उपलब्ध बैंडविड्थ के अनुमान को ध्यान में रखता है। रेनो और न्यू रेनो की कम्पेयर में, वेस्टवुड+ वायरलेस लिंक पर थ्रूपुट को महत्वपूर्ण रूप से बढ़ाता है और वायर्ड नेटवर्क में फेयरनेस में इम्प्रूव करता है। | |||
=== कंपाउंड टीसीपी === | === कंपाउंड टीसीपी === | ||
{{main| | {{main|कंपाउंड टीसीपी}} | ||
कंपाउंड टीसीपी, टीसीपी का | |||
कंपाउंड टीसीपी, टीसीपी का [[माइक्रोसॉफ्ट]] इम्प्लीमेंटेशन है जो [[निष्पक्षता माप|फेयरनेस मेज़रमेंट]] को पुअर किए बिना एलएफएन पर उत्तम परफॉरमेंस प्राप्त करने के लक्ष्य के साथ, दो भिन्न-भिन्न कंजेशन विंडो को बनाए रखता है। इसे माइक्रोसॉफ्ट [[Windows Vista|विंडोज विस्टा]] और [[Windows Server 2008|विंडोज सर्वर 2008]] के पश्चात से विंडोज वर्जन में व्यापक रूप से डेप्लॉयड किया गया है और इसे ओल्डर माइक्रोसॉफ्ट विंडोज वर्जन के साथ-साथ लिनक्स में भी पोर्ट किया गया है। | |||
=== टीसीपी | === टीसीपी प्रोपोरशनल रेट में रिडक्शन === | ||
टीसीपी | टीसीपी प्रोपोरशनल रेट में रिडक्शन (पीआरआर)<ref>{{cite IETF |rfc=6937 |title=टीसीपी के लिए आनुपातिक दर में कमी|year=2013 |doi=10.17487/RFC6937 |last1=Mathis |first1=M. |last2=Dukkipati |first2=N. |last3=Cheng |first3=Y. |doi-access=free}}</ref> एल्गोरिदम है जिसे रिकवरी के टाइम सेंट किये गए डेटा की एक्यूरेसी में इम्प्रूव करने के लिए डिज़ाइन किया गया एल्गोरिदम है। एल्गोरिदम यह सुनिश्चित करता है कि रिकवरी के पश्चात विंडो का साइज़ स्लो स्टार्ट लिमिट के जितना संभव हो उतना निकाट हो। [[Google|गूगल]] द्वारा किए गए परीक्षणों में, पीआरआर के परिणामस्वरूप एवरेज लेटेंसी में 3-10% रिडक्शन हुआ और रिकवरी टाइमआउट 5% डिक्रीज हुआ।<ref>{{cite web|last1=Corbet|first1=Jonathan|title=LPC: Making the net go faster|url=https://lwn.net/Articles/458610/|access-date=6 June 2014}}</ref> पीआरआर लिनक्स कर्नेल में वर्जन्स 3.2 से लिनक्स कर्नेल में उपलब्ध है।<ref>{{cite web|title=Linux 3.2 - Linux Kernel Newbies|url=http://kernelnewbies.org/Linux_3.2#head-1c3e71416a9fdc2f59c1c251a97963f165302b6e|access-date=6 June 2014}}</ref> | ||
'''टीसीपी बीबीआर''' | '''टीसीपी बीबीआर''' | ||
बॉटलनेक बैंडविड्थ और राउंड-ट्रिप प्रसार टाइम (बीबीआर) 2016 में | बॉटलनेक बैंडविड्थ और राउंड-ट्रिप प्रसार टाइम (बीबीआर) 2016 में गूगल द्वारा विकसित CCA है।<ref name=GOOGBBR>{{cite web|title=BBR: Congestion-Based Congestion Control|url=https://research.google.com/pubs/pub45646.html|access-date=25 August 2017}}</ref> जबकि अधिकांश सीसीए लॉस-आधारित हैं, इसमें वे कंजेशनभाड़ और ट्रांसमिशन की कम रेटों का पता लगाने के लिए पैकेट लॉस पर भरोसा करते हैं, बीबीआर, टीसीपी वेगास की तरह, मॉडल-आधारित है। एल्गोरिदम मैक्सिमम बैंडविड्थ और राउंड-ट्रिप टाइम का उपयोग करता है जिस पर नेटवर्क ने नेटवर्क का मॉडल बनाने के लिए आउटबाउंड डेटा पैकेट की सबसे हालिया उड़ान वितरित की। पैकेट डिलीवरी की प्रत्येक क्युमुलेटिव या चयनात्मक एकनॉलेजमेंट रेट नमूना उत्पन्न करती है जो डेटा पैकेट के ट्रांसमिशन और उस पैकेट की एकनॉलेजमेंट के मध्य टाइम अंतराल पर वितरित डेटा की अमाउंट को रिकॉर्ड करती है।<ref>{{cite journal |title=डिलिवरी दर अनुमान|url=https://tools.ietf.org/html/draft-cheng-iccrg-delivery-rate-estimation-00#section-2.2|access-date=25 August 2017|last1=Cheng|first1=Yuchung|last2=Cardwell|first2=Neal|last3=Yeganeh|first3=Soheil Hassas|last4=Jacobson|first4=Van|website=IETF}}</ref> | ||
जब [[YouTube]] पर प्रारम्भ किया गया, तो BBRv1 ने | जब [[YouTube]] पर प्रारम्भ किया गया, तो BBRv1 ने एवरेजन 4% अधिक नेटवर्क थ्रूपुट और कुछ देशों में 14% तक का प्रोडक्टन किया।<ref>{{cite web|title=TCP BBR congestion control comes to GCP – your Internet just got faster|url=https://cloudplatform.googleblog.com/2017/07/TCP-BBR-congestion-control-comes-to-GCP-your-Internet-just-got-faster.html|access-date=25 August 2017}}</ref> लिनक्स 4.9 से बीबीआर लिनक्स टीसीपी के लिए उपलब्ध है।<ref>{{cite web|url=https://lwn.net/Articles/701165/|title=BBR congestion control [LWN.net]|website=lwn.net}}</ref> यह [[QUIC]] के लिए भी उपलब्ध है।<ref>{{cite web |url=https://datatracker.ietf.org/meeting/100/materials/slides-100-iccrg-a-quick-bbr-update-bbr-in-shallow-buffers |title=बीबीआर अद्यतन|website=IETF}}</ref> | ||
बीबीआर वर्जन्स 1 (बीबीआरवी1) की गैर-बीबीआर धाराओं के प्रति फेयरनेस कण्टेण्डेड है। जबकि | बीबीआर वर्जन्स 1 (बीबीआरवी1) की गैर-बीबीआर धाराओं के प्रति फेयरनेस कण्टेण्डेड है। जबकि गूगल की प्रस्तुति BBRv1 को CUबीआईसी के साथ अच्छी तरह से सह-अस्तित्व में दिखाती है,<ref name=GOOGBBR/>ज्योफ हस्टन और हॉक, ब्लेस और ज़िटरबार्ट जैसे रिसर्चओं ने इसे अन्य धाराओं के लिए अनुचित और स्केलेबल नहीं पLinux<ref>{{cite web|title=टीसीपी और बीबीआर|url=https://ripe76.ripe.net/presentations/10-2018-05-15-bbr.pdf|access-date=27 May 2018}}</ref> हॉक एट अल. लिनक्स 4.9 के बीबीआर कार्यान्वयन में कतार में बढ़ती डिले, अनुचितता और बड़े पैमाने पर पैकेट लॉस जैसे कुछ गंभीर अंतर्निहित मुद्दे भी पाए गए।<ref>{{cite web|title=बीबीआर कंजेशन नियंत्रण का प्रायोगिक मूल्यांकन|url=https://doc.tm.uka.de/2017-kit-icnp-bbr-authors-copy.pdf|access-date=27 May 2018}}</ref> सोहेल अब्बासलू एट अल। (C2टीसीपी के लेखक) बताते हैं कि BBRv1 सेलुलर नेटवर्क जैसे स्पीडशील वातावरण में अच्छा परफॉरमेंस नहीं करता है।<ref name="C2TCP-JSAC"/><ref name="C2TCP"/>उन्होंने यह भी दिखाया है कि बीबीआर में अनुचितता का मुद्दा है। उदाहरण के लिए, जब [[CUBIC TCP|CUबीआईसी टीसीपी]] फ्लो (जो लिनक्स, Android और MacOS में डिफ़ॉल्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल कार्यान्वयन है) नेटवर्क में BBR फ्लो के साथ सह-अस्तित्व में होता है, तो BBR फ्लो CUबीआईसी फ्लो पर हावी हो सकता है और इससे संपूर्ण लिंक बैंडविड्थ प्राप्त कर सकता है। (चित्र 16 देखें <ref name="C2TCP-JSAC"/>). | ||
वर्जन्स 2 CUबीआईसी जैसे लॉस-आधारित कंजेशन प्रबंधन के साथ संचालन करते टाइम अनुचितता के मुद्दे से निपटने का प्रयास करता है।<ref>{{cite web|title=A Performance Evaluation of TCP BBRv2|url=https://www.researchgate.net/publication/341781089|access-date=12 January 2021}}</ref> BBRv2 में BBRv1 द्वारा उपयोग किए गए मॉडल को पैकेट लॉस के बारे में जानकारी और स्पष्ट कंजेशन अधिसूचना (ईसीएन) से जानकारी सम्मिलित करने के लिए संवर्धित किया गया है।<ref name=bbr3>{{cite conference|conference=IETF 117: San Francisco |author1=Google TCP BBR team |author2=Google QUIC BBR team |title=BBRv3: Algorithm Bug Fixes and Public Internet Deployment |url=https://datatracker.ietf.org/meeting/117/materials/slides-117-ccwg-bbrv3-algorithm-bug-fixes-and-public-internet-deployment-00 |date=Jul 26, 2023}}</ref> चूँकि BBRv2 में कई बार BBRv1 की तुलना में कम थ्रूपुट हो सकता है, किंतु आमतौर पर इसे | वर्जन्स 2 CUबीआईसी जैसे लॉस-आधारित कंजेशन प्रबंधन के साथ संचालन करते टाइम अनुचितता के मुद्दे से निपटने का प्रयास करता है।<ref>{{cite web|title=A Performance Evaluation of TCP BBRv2|url=https://www.researchgate.net/publication/341781089|access-date=12 January 2021}}</ref> BBRv2 में BBRv1 द्वारा उपयोग किए गए मॉडल को पैकेट लॉस के बारे में जानकारी और स्पष्ट कंजेशन अधिसूचना (ईसीएन) से जानकारी सम्मिलित करने के लिए संवर्धित किया गया है।<ref name=bbr3>{{cite conference|conference=IETF 117: San Francisco |author1=Google TCP BBR team |author2=Google QUIC BBR team |title=BBRv3: Algorithm Bug Fixes and Public Internet Deployment |url=https://datatracker.ietf.org/meeting/117/materials/slides-117-ccwg-bbrv3-algorithm-bug-fixes-and-public-internet-deployment-00 |date=Jul 26, 2023}}</ref> चूँकि BBRv2 में कई बार BBRv1 की तुलना में कम थ्रूपुट हो सकता है, किंतु आमतौर पर इसे उत्तम [[गुडपुट]] माना जाता है। | ||
वर्जन्स 3 (बीबीआरवी3) बीबीआरवी2 में दो बग को ठीक करता है (बैंडविड्थ जांच का टाइम से पहले समेज़रमेंट्त होना, बैंडविड्थ कन्वर्जेन्स) और कुछ परफॉरमेंस ट्यूनिंग करता है। वैरिएंट भी है, जिसे BBR.Swift कहा जाता है, जो डेटासेंटर-आंतरिक लिंक के लिए | वर्जन्स 3 (बीबीआरवी3) बीबीआरवी2 में दो बग को ठीक करता है (बैंडविड्थ जांच का टाइम से पहले समेज़रमेंट्त होना, बैंडविड्थ कन्वर्जेन्स) और कुछ परफॉरमेंस ट्यूनिंग करता है। वैरिएंट भी है, जिसे BBR.Swift कहा जाता है, जो डेटासेंटर-आंतरिक लिंक के लिए ऑप्टीमाइज़्ड है: यह मुख्य कंजेशन कंट्रोल सिग्नल के रूप में नेटवर्क_आरटीटी (रिसीवर डिले को छोड़कर) का उपयोग करता है।<ref name=bbr3/> | ||
'''C2टीसीपी''' | '''C2टीसीपी''' | ||
सेलुलर कण्ट्रोल डिले टीसीपी (C2टीसीपी)<ref name="C2TCP-JSAC"/><ref name="C2TCP"/> लचीले एंड-टू-एंड टीसीपी दृष्टिकोण की डिक्रीज से प्रेरित था जो नेटवर्क उपकरणों में किसी भी परिवर्तिताव की आवश्यकता के बिना विभिन्न अनुप्रयोगों के लिए सर्विसेज की विभिन्न क्वालिटी आवश्यकताओं को पूरा कर सकता है। C2टीसीपी का लक्ष्य करंट LTE (दूरसंचार) और भविष्य के [[5G]] जैसे अत्यधिक स्पीडशील वातावरण में [[ आभासी वास्तविकता ]], [[वीडियो कॉन्फ्रेंसिंग]], [[ऑनलाइन गेम]], [[वाहन संचार प्रणाली]] आदि जैसे अनुप्रयोगों की अल्ट्रा-लो [[ विलंबता (इंजीनियरिंग) | | सेलुलर कण्ट्रोल डिले टीसीपी (C2टीसीपी)<ref name="C2TCP-JSAC"/><ref name="C2TCP"/> लचीले एंड-टू-एंड टीसीपी दृष्टिकोण की डिक्रीज से प्रेरित था जो नेटवर्क उपकरणों में किसी भी परिवर्तिताव की आवश्यकता के बिना विभिन्न अनुप्रयोगों के लिए सर्विसेज की विभिन्न क्वालिटी आवश्यकताओं को पूरा कर सकता है। C2टीसीपी का लक्ष्य करंट LTE (दूरसंचार) और भविष्य के [[5G]] जैसे अत्यधिक स्पीडशील वातावरण में [[ आभासी वास्तविकता | आभासी रियलता]] , [[वीडियो कॉन्फ्रेंसिंग]], [[ऑनलाइन गेम]], [[वाहन संचार प्रणाली]] आदि जैसे अनुप्रयोगों की अल्ट्रा-लो [[ विलंबता (इंजीनियरिंग) | लेटेंसी (इंजीनियरिंग)]] और हाई-बैंडविड्थ आवश्यकताओं को पूरा करना है। [[सेल्युलर नेटवर्क]] C2टीसीपी लॉस-आधारित टीसीपी (जैसे रेनो, न्यूरेनो, क्यूबिक टीसीपी, [[बीआईसी टीसीपी]], ...) के शीर्ष पर [[प्लग-इन (कंप्यूटिंग)]] | ऐड-ऑन के रूप में काम करता है, इसे केवल सर्वर-साइड पर स्थापित करना आवश्यक है और पैकेटों के एवरेज डिले को अनुप्रयोगों द्वारा निर्धारित वांछित डिलेों तक सीमित कर देता है। | ||
[[न्यूयॉर्क विश्वविद्यालय]] के | [[न्यूयॉर्क विश्वविद्यालय]] के रिसर्च<ref>{{Cite web|url=https://wp.nyu.edu/c2tcp/|title=Cellular Controlled Delay TCP (C2TCP)|website=wp.nyu.edu|access-date=2019-04-27}}</ref> दिखाया गया कि C2टीसीपी विभिन्न अत्याधुनिक टीसीपी योजनाओं के डिले और डLinuxन्नता परफॉरमेंस से उLinuxरफॉरमेंस करता है। उदाहरण के लिए, उन्होंने दिखाया कि BBR, CUबीआईसी और वेस्टवुड की तुलना में, C2टीसीपी विभिन्न सेलुलर नेटवर्क वातावरणों पर पैकेट की एवरेज डिले को आर्डरशः 250%, 900% और 700% कम कर देता है।<ref name="C2TCP-JSAC" /> | ||
'''इलास्टिक-टीसीपी''' | '''इलास्टिक-टीसीपी''' | ||
क्लाउड कंप्यूटिंग के समर्थन में हाई-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रस्ताव दिया गया था। यह | क्लाउड कंप्यूटिंग के समर्थन में हाई-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रस्ताव दिया गया था। यह लिनक्स-आधारित CCA है जिसे लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो विंडो-सहसंबंधित वेटिंग फ़ंक्शन (डब्ल्यूडब्ल्यूएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-डिले-आधारित दृष्टिकोण को नियोजित करता है। इसमें मानव ट्यूनिंग की आवश्यकता के बिना विभिन्न नेटवर्क विशेषताओं से निपटने के लिए हाई स्तर की लोच है। एन्यूस-2 सिम्युलेटर और टेस्टबेड का उपयोग करके इसके परफॉरमेंस की तुलना कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए), क्यूबिक (लिनक्स के लिए डिफ़ॉल्ट) और टीसीपी-बीबीआर (गूगल द्वारा उपयोग किए जाने वाले लिनक्स 4.9 का डिफ़ॉल्ट) से तुलना करके की गई है। इलास्टिक-टीसीपी एवरेज थ्रूपुट, लॉस अनुपात और डिले के केस में कुल परफॉरमेंस में उल्लेखनीय इम्प्रूव करता है।<ref name="elastictcp" /> | ||
''' | '''एन्यूटीसीपी''' | ||
सोहेल अब्बासलू एट अल। प्रस्तावित NAटीसीपी (नेटवर्क-असिस्टेड टीसीपी){{sfn|Abbasloo|Xu|Chao|Shi|2019}} ए {{According to whom|controversial|date=October 2021}} टीसीपी डिज़ाइन [[मल्टी-एक्सेस एज कंप्यूटिंग|मल्टी-्सेस एज कंप्यूटिंग]] (एमईसी) को लक्षित करता है। NAटीसीपी का मुख्य विचार यह है कि यदि नेटवर्क की विशेषताओं के बारे में पहले से पता होता, तो टीसीपी को भिन्न तरह से डिज़ाइन किया गया होता। इसलिए, NAटीसीपी टीसीपी के परफॉरमेंस को इष्टतम परफॉरमेंस के करीब पहुंचाने के लिए करंट एमईसी-आधारित सेलुलर | सोहेल अब्बासलू एट अल। प्रस्तावित NAटीसीपी (नेटवर्क-असिस्टेड टीसीपी){{sfn|Abbasloo|Xu|Chao|Shi|2019}} ए {{According to whom|controversial|date=October 2021}} टीसीपी डिज़ाइन [[मल्टी-एक्सेस एज कंप्यूटिंग|मल्टी-्सेस एज कंप्यूटिंग]] (एमईसी) को लक्षित करता है। NAटीसीपी का मुख्य विचार यह है कि यदि नेटवर्क की विशेषताओं के बारे में पहले से पता होता, तो टीसीपी को भिन्न तरह से डिज़ाइन किया गया होता। इसलिए, NAटीसीपी टीसीपी के परफॉरमेंस को इष्टतम परफॉरमेंस के करीब पहुंचाने के लिए करंट एमईसी-आधारित सेलुलर आर्किटेक्वेरिएबल में उपलब्ध सुविधाओं और गुणों को नियोजित करता है। NAटीसीपी नेटवर्क से निकट में स्थित सर्वर पर आउट-ऑफ-बैंड फीडबैक का उपयोग करता है। नेटवर्क से फीडबैक, जिसमें सेलुलर ्सेस लिंक की क्षमता और नेटवर्क का न्यूनतम आरटीटी सम्मिलित है, सर्वर को उनकी भेजने की रेटों को समायोजित करने के लिए मार्गरेट्शन करता है। जैसा कि प्रारंभिक परिणाम दिखाते हैं, NAटीसीपी अत्याधुनिक टीसीपी योजनाओं से उत्तम परफॉरमेंस करता है।{{sfn|Abbasloo|Xu|Chao|Shi|2019}}<ref>{{Citation|last=Abbasloo|first=Soheil|title=GitHub - Soheil-ab/natcp|date=2019-06-03|url=https://github.com/Soheil-ab/natcp|access-date=2019-08-05}}</ref> | ||
'''अन्य टीसीपी कंजेशन से एवॉइडेन्स एल्गोरिदम''' | '''अन्य टीसीपी कंजेशन से एवॉइडेन्स एल्गोरिदम''' | ||
* [[तेज़ टीसीपी]] | * [[तेज़ टीसीपी|फ़ास्ट टीसीपी]] | ||
* सामान्यीकृत फास्ट टीसीपी<ref>{{Cite journal|last1=Yuan|first1=Cao|last2=Tan|first2=Liansheng|last3=Andrew|first3=Lachlan L. H.|last4=Zhang|first4=Wei|last5=Zukerman|first5=Moshe|date=6 June 2008 |title=एक सामान्यीकृत फास्ट टीसीपी योजना|journal=Computer Communications|volume=31|issue=14|pages=3242–3249|doi=10.1016/j.comcom.2008.05.028|hdl=1959.3/44051|s2cid=17988768 |url=https://resolver.caltech.edu/CaltechAUTHORS:YUAcc08|hdl-access=free}}</ref> | * सामान्यीकृत फास्ट टीसीपी<ref>{{Cite journal|last1=Yuan|first1=Cao|last2=Tan|first2=Liansheng|last3=Andrew|first3=Lachlan L. H.|last4=Zhang|first4=Wei|last5=Zukerman|first5=Moshe|date=6 June 2008 |title=एक सामान्यीकृत फास्ट टीसीपी योजना|journal=Computer Communications|volume=31|issue=14|pages=3242–3249|doi=10.1016/j.comcom.2008.05.028|hdl=1959.3/44051|s2cid=17988768 |url=https://resolver.caltech.edu/CaltechAUTHORS:YUAcc08|hdl-access=free}}</ref> | ||
* [[एच-टीसीपी]] | * [[एच-टीसीपी]] | ||
Line 317: | Line 322: | ||
*नेक्सजेन डी-टीसीपी<ref>{{Cite journal|last1=Kanagarathinam|first1=Madhan Raj|last2=Singh|first2=Sukhdeep|last3=Sandeep|first3=Irlanki|last4=Kim|first4=Hanseok|last5=Maheshwari|first5=Mukesh Kumar|last6=Hwang|first6=Jaehyun|last7=Roy|first7=Abhishek|last8=Saxena|first8=Navrati|date=2020|title=NexGen D-TCP: Next Generation Dynamic TCP Congestion Control Algorithm|journal=IEEE Access|volume=8|pages=164482–164496|doi=10.1109/ACCESS.2020.3022284|s2cid=221846931 |issn=2169-3536|doi-access=free}}</ref> | *नेक्सजेन डी-टीसीपी<ref>{{Cite journal|last1=Kanagarathinam|first1=Madhan Raj|last2=Singh|first2=Sukhdeep|last3=Sandeep|first3=Irlanki|last4=Kim|first4=Hanseok|last5=Maheshwari|first5=Mukesh Kumar|last6=Hwang|first6=Jaehyun|last7=Roy|first7=Abhishek|last8=Saxena|first8=Navrati|date=2020|title=NexGen D-TCP: Next Generation Dynamic TCP Congestion Control Algorithm|journal=IEEE Access|volume=8|pages=164482–164496|doi=10.1109/ACCESS.2020.3022284|s2cid=221846931 |issn=2169-3536|doi-access=free}}</ref> | ||
* कप <ref>{{Cite journal|last1=Arun|first1=Venkat|last2=Balakrishnan|first2=Hari|date=2018|title=Copa: Practical Delay-Based Congestion Control for the Internet|url=https://www.usenix.org/conference/nsdi18/presentation/arun|journal=15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18)|pages=329–342|isbn=978-1-939133-01-4}}</ref> | * कप <ref>{{Cite journal|last1=Arun|first1=Venkat|last2=Balakrishnan|first2=Hari|date=2018|title=Copa: Practical Delay-Based Congestion Control for the Internet|url=https://www.usenix.org/conference/nsdi18/presentation/arun|journal=15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18)|pages=329–342|isbn=978-1-939133-01-4}}</ref> | ||
#टीसीपी न्यू रेनो सबसे सामान्यतः प्रारम्भ किया जाने वाला एल्गोरिदम था, सैक समर्थन | #टीसीपी न्यू रेनो सबसे सामान्यतः प्रारम्भ किया जाने वाला एल्गोरिदम था, सैक समर्थन अधिक आम है और रेनो/न्यू रेनो का विस्तार है। अधिकांश अन्य प्रतिस्पर्धी प्रस्ताव हैं जिन्हें अभी भी मूल्यांकन की आवश्यकता है। 2.6.8 से प्रारंभ होकर लिनक्स कर्नेल ने डिफ़ॉल्ट कार्यान्वयन को न्यू रेनो से बीआईसी टीसीपी में परिवर्तित दिया। 2.6.19 वर्जन्स में डिफ़ॉल्ट कार्यान्वयन को फिर से CUबीआईसी में परिवर्तित दिया गया। फ्रीबीएसडी न्यू रेनो को डिफ़ॉल्ट एल्गोरिदम के रूप में उपयोग करता है। चूँकि, यह कई अन्य विकल्पों का समर्थन करता है।<ref>{{cite web|url=http://forums.freebsd.org/showthread.php?t=22396|title=पांच नए टीसीपी कंजेशन नियंत्रण एल्गोरिदम परियोजना का सारांश|date=8 March 2011 }}</ref> | ||
जब कतार योजना की परवाह किए बिना बैंडविड्थ और | जब कतार योजना की परवाह किए बिना बैंडविड्थ और लेटेंसी का प्रति-फ्लो प्रोडक्ट बढ़ता है, तो टीसीपी अक्षम हो जाता है और अस्थिरता का खतरा होता है। यह और भी महत्वपूर्ण हो जाता है क्योंकि इंटरनेट अधिक हाई-बैंडविड्थ ऑप्टिकल लिंक को सम्मिलित करने के लिए विकसित हो रहा है। | ||
टीसीपी इंटरैक्टिव (आईटीसीपी)<ref>{{cite web|url=http://www.medianet.kent.edu/itcp/main.html|title=iTCP - Interactive Transport Protocol - Medianet Lab, Kent State University}}</ref> एप्लिकेशन को टीसीपी ईवेंट की सदस्यता लेने और तदनुसार प्रतिक्रिया देने की अनुमति देता है, जिससे टीसीपी परत के बाहर से टीसीपी में विभिन्न कार्यात्मक ्सटेंशन सक्षम होते हैं। अधिकांश टीसीपी कंजेशन योजनाएं आंतरिक रूप से काम करती हैं। आईटीसीपी अतिरिक्त रूप से उन्नत अनुप्रयोगों को सीधे कंजेशन कंट्रोल में भाग लेने में सक्षम बनाता है जैसे कि स्रोत प्रोडक्टन रेट को कण्ट्रोल करना। | टीसीपी इंटरैक्टिव (आईटीसीपी)<ref>{{cite web|url=http://www.medianet.kent.edu/itcp/main.html|title=iTCP - Interactive Transport Protocol - Medianet Lab, Kent State University}}</ref> एप्लिकेशन को टीसीपी ईवेंट की सदस्यता लेने और तदनुसार प्रतिक्रिया देने की अनुमति देता है, जिससे टीसीपी परत के बाहर से टीसीपी में विभिन्न कार्यात्मक ्सटेंशन सक्षम होते हैं। अधिकांश टीसीपी कंजेशन योजनाएं आंतरिक रूप से काम करती हैं। आईटीसीपी अतिरिक्त रूप से उन्नत अनुप्रयोगों को सीधे कंजेशन कंट्रोल में भाग लेने में सक्षम बनाता है जैसे कि स्रोत प्रोडक्टन रेट को कण्ट्रोल करना। | ||
[[ज़ेटा-टीसीपी]] | [[ज़ेटा-टीसीपी]] लेटेंसी और लॉस रेट दोनों उपायों से कंजेशन का पता लगाता है। गुडपुट ज़ेटा-टीसीपी को मैक्सिमम करने के लिए और कंजेशनभाड़ की संभावना के आधार पर भिन्न-भिन्न कंजेशन विंडो बैकऑफ़ स्ट्रेटेजीयों को प्रारम्भ करता है। इसमें पैकेट के नुकसान का सटीक पता लगाने के लिए अन्य इम्प्रूव भी हैं, जिससे रिट्रांसमिशन टाइमआउट रिट्रांसमिशन से बचा जा सके; और इनबाउंड (डाउनलोड) ट्रैफ़िक को फ़ास्ट और कण्ट्रोल करें।<ref name="Zeta-TCP">{{cite web |url=http://www.appexnetworks.com/Assets/PDF/ZetaTCP.pdf |title=Whitepaper: Zeta-TCP - Intelligent, Adaptive, Asymmetric TCP Acceleration|access-date=2019-12-06}}</ref> | ||
== नेटवर्क जागरूकता द्वारा वर्गीकरण == | == नेटवर्क जागरूकता द्वारा वर्गीकरण == | ||
Line 334: | Line 339: | ||
=== ब्लैक बॉक्स === | === ब्लैक बॉक्स === | ||
* [[हाईस्पीड-टीसीपी]]<ref>{{cite web|url=http://www.icir.org/floyd/hstcp.html|title=हाईस्पीड टीसीपी|website=www.icir.org}}</ref> | * [[हाईस्पीड-टीसीपी]]<ref>{{cite web|url=http://www.icir.org/floyd/hstcp.html|title=हाईस्पीड टीसीपी|website=www.icir.org}}</ref> | ||
* बीआईसी टीसीपी (बाइनरी इनक्रीस कंजेशन कंट्रोल प्रोटोकॉल) प्रत्येक कंजेशन इवेंट के पश्चात स्रोत रेट में अवतल इनक्रीस का उपयोग करता है जब तक कि विंडो इवेंट से पहले विंडो के | * बीआईसी टीसीपी (बाइनरी इनक्रीस कंजेशन कंट्रोल प्रोटोकॉल) प्रत्येक कंजेशन इवेंट के पश्चात स्रोत रेट में अवतल इनक्रीस का उपयोग करता है जब तक कि विंडो इवेंट से पहले विंडो के समान न हो जाए, जिससे नेटवर्क के पूरी तरह से उपयोग किए जाने वाले टाइम को मैक्सिमम किया जा सके। इसके पश्चात वह आक्रामक तरीके से जांच करती है. | ||
* क्यूबिक टीसीपी - बीआईसी का कम आक्रामक और अधिक व्यवस्थित | * क्यूबिक टीसीपी - बीआईसी का कम आक्रामक और अधिक व्यवस्थित डेरीवेटिव, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन हआनुपातिकइवेंट से पहले विंडो पर इन्फ्लेक्शन बिंदु सेट होता है। | ||
* [[एआईएमडी-एफसी]] (फास्ट से कन्वर्जेन्स के साथ एड्डीटिव इनक्रीस | * [[एआईएमडी-एफसी]] (फास्ट से कन्वर्जेन्स के साथ एड्डीटिव इनक्रीस [[आनुपातिक नियंत्रण|आनुपातिक]]ेटिव डिक्रीज), एआईएमडी का इम्प्रूव।<ref>{{cite web|url=http://www.ccs.neu.edu/home/ladrian/abstract/aimdfc.html|title=एआईएमडी-एफसी होमपेज|website=neu.edu|access-date=13 March 2016|archive-url=https://web.archive.org/web/20090113204941/http://www.ccs.neu.edu/home/ladrian/abstract/aimdfc.html|archive-date=13 January 2009}}</ref> | ||
* [[द्विपद तंत्र|द्विपद सिस्टम]] | * [[द्विपद तंत्र|द्विपद सिस्टम]] | ||
* [[SIMD प्रोटोकॉल]] | * [[SIMD प्रोटोकॉल]] | ||
Line 342: | Line 347: | ||
=== ग्रे बॉक्स === | === ग्रे बॉक्स === | ||
* [[टीसीपी वेगास]] - कतार में | * [[टीसीपी वेगास]] - कतार में डिले का अनुमान लगाता है, और विंडो को लीनियर रूप से बढ़ाता या घटाता है जिससे नेटवर्क में प्रति फ्लो पैकेट की स्थिर नंबर कतार में रहे। वेगास प्रोपोरशनल फेयरनेस प्रारम्भ करता है। | ||
* फास्ट टीसीपी - वेगास के समान संतुलन प्राप्त करता है, किंतु लीनियर इनक्रीस के | * फास्ट टीसीपी - वेगास के समान संतुलन प्राप्त करता है, किंतु लीनियर इनक्रीस के अतिरिक्त [[आनुपातिक नियंत्रण|प्रोपोरशनल कंट्रोल]] का उपयोग करता है, और स्थिरता सुनिश्चित करने के उद्देश्य से बैंडविड्थ बढ़ने पर जानबूझकर एडवांटेज को कम कर देता है। | ||
* टीसीपी बीबीआर - कतार में | * टीसीपी बीबीआर - कतार में डिले का अनुमान लगाता है किंतु फास्ट से इनक्रीस का उपयोग करता है। फेयरनेस और डिले को कम करने के लिए जानबूझकर टाइम-टाइम पर इसे धीमा किया जाता है। | ||
* [[टीसीपी-वेस्टवुड]] (टीसीपीडब्ल्यू) - नुकसान के कारण विंडो बैंडविड्थ-डिले प्रोडक्ट के सेन्डर के अनुमान पर रीसेट हो जाती है (एसीके प्राप्त करने की देखी गई रेट से गुणा किया गया सबसे छोटा आरटीटी)।<ref>{{cite web|url=http://www.cs.ucla.edu/NRL/hpi/tcpw/|title=नेटवर्क रिसर्च लैब में आपका स्वागत है|website=www.cs.ucla.edu}}</ref> | * [[टीसीपी-वेस्टवुड]] (टीसीपीडब्ल्यू) - नुकसान के कारण विंडो बैंडविड्थ-डिले प्रोडक्ट के सेन्डर के अनुमान पर रीसेट हो जाती है (एसीके प्राप्त करने की देखी गई रेट से गुणा किया गया सबसे छोटा आरटीटी)।<ref>{{cite web|url=http://www.cs.ucla.edu/NRL/hpi/tcpw/|title=नेटवर्क रिसर्च लैब में आपका स्वागत है|website=www.cs.ucla.edu}}</ref> | ||
*सी2टीसीपी<ref name="C2TCP" /><ref name="C2TCP-JSAC" />* [[टीसीपी अनुकूल दर नियंत्रण|टीसीपी अनुकूल रेट कंट्रोल]]<ref>{{cite web|url=http://www.icir.org/tfrc/|title=यूनिकैस्ट अनुप्रयोगों के लिए समीकरण-आधारित भीड़ नियंत्रण|website=www.icir.org}}</ref> | *सी2टीसीपी<ref name="C2TCP" /><ref name="C2TCP-JSAC" />* [[टीसीपी अनुकूल दर नियंत्रण|टीसीपी अनुकूल रेट कंट्रोल]]<ref>{{cite web|url=http://www.icir.org/tfrc/|title=यूनिकैस्ट अनुप्रयोगों के लिए समीकरण-आधारित भीड़ नियंत्रण|website=www.icir.org}}</ref> | ||
Line 356: | Line 361: | ||
** स्पष्ट कंजेशन अधिसूचना (ईसीएन) | ** स्पष्ट कंजेशन अधिसूचना (ईसीएन) | ||
* नेटवर्क-सहायता प्राप्त कंजेशन कंट्रोल | * नेटवर्क-सहायता प्राप्त कंजेशन कंट्रोल | ||
** | ** एन्यूटीसीपी{{sfn|Abbasloo|Xu|Chao|Shi|2019}} - नेटवर्क-असिस्टेड टीसीपी नेटवर्क के न्यूनतम आरटीटी और सेल्युलर ्सेस लिंक की क्षमता को इंगित करने वाले आउट-ऑफ-बैंड स्पष्ट फीडबैक का उपयोग करता है। | ||
**वैरिएबल- | **वैरिएबल-स्ट्रक्वेरिएबल कंजेशन कंट्रोल प्रोटोकॉल (वीसीपी) कंजेशन की नेटवर्क स्थिति पर स्पष्ट रूप से प्रतिक्रिया देने के लिए दो ईसीएन बिट्स का उपयोग करता है। इसमें एंड होस्ट साइड एल्गोरिदम भी सम्मिलित है। | ||
निम्नलिखित एल्गोरिदम को टीसीपी पैकेट संरचना में कस्टम फ़ील्ड जोड़ने की आवश्यकता होती है: | निम्नलिखित एल्गोरिदम को टीसीपी पैकेट संरचना में कस्टम फ़ील्ड जोड़ने की आवश्यकता होती है: | ||
Line 367: | Line 372: | ||
* बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006) | * बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006) | ||
* वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से CUबीआईसी का उपयोग किया जाता है। (नवंबर 2006) | * वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से CUबीआईसी का उपयोग किया जाता है। (नवंबर 2006) | ||
* पीआरआर को वर्जन्स 3.2 के पश्चात से लॉस | * पीआरआर को वर्जन्स 3.2 के पश्चात से लॉस रिकवरी में इम्प्रूव के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (जनवरी 2012) | ||
* BBRv1 को वर्जन्स 4.9 के पश्चात से मॉडल-आधारित कंजेशन कंट्रोल को सक्षम करने के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (दिसंबर 2016) | * BBRv1 को वर्जन्स 4.9 के पश्चात से मॉडल-आधारित कंजेशन कंट्रोल को सक्षम करने के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (दिसंबर 2016) | ||
Revision as of 23:51, 5 October 2023
ट्रांसमिशन कंट्रोल प्रोटोकॉल (टीसीपी) कंजेशन कंट्रोल एल्गोरिदम का उपयोग करता है जिसमें कंजेशन से बचने के लिए स्लो स्टार्ट सहित और कंजेशन विंडो (सीडब्ल्यूएनडी) सहित अन्य योजनाओं के साथ-साथ एडिटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) योजना के विभिन्न विषय सम्मिलित हैं।[1] टीसीपी कंजेशन-अवॉइडेंस एल्गोरिदम इंटरनेट में कंजेशन कंट्रोल का प्राइमरी आधार है।[2][3][4] एंड-टू-एंड सिद्धांत के अनुसार, कंजेशन कंट्रोल अधिक लिमिट तक [[इंटरनेट होस्ट]] का कार्य है, न कि नेटवर्क का कार्य है। इंटरनेट से कनेक्ट होने वाले कंप्यूटरों के ऑपरेटिंग सिस्टम के प्रोटोकॉल स्टैक में प्रारम्भ एल्गोरिदम के कई वैरिएशंस और वर्जन्स हैं।
कंजेस्टिव कोलैपस से बचने के लिए, टीसीपी मल्टी-फेसटेड कंजेशन-कंट्रोल स्ट्रेटेजी का उपयोग करता है। प्रत्येक कनेक्शन के लिए, टीसीपी सीडब्ल्यूएनडी बनाए रखता है, जो ट्रांजिट में एंड-टू-एंड हो सकने वाले अनएकनॉलेजड पैकेटों की कुल नंबर को सीमित करता है। यह कुछ लिमिट तक फ्लो कंट्रोल के लिए उपयोग की जाने वाली टीसीपी की स्लाइडिंग विंडो के समान है।
एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज
एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) एल्गोरिदम क्लोज्ड-लूप कंट्रोल एल्गोरिदम है। एआईएमडी कंजेशन होने पर कंजेशन विंडो की लीनियर ग्रोथ को एक्सपोनेंशियल से रिडक्शन के साथ जोड़ती है। एआईएमडी कंजेशन कंट्रोल का उपयोग करने वाले मल्टीप्ल फ्लो कण्टेण्डेड लिंक की समान अमाउंटस का उपयोग करने के लिए एकत्रित होंगे।[5]
यह वह एल्गोरिदम है जिसे कंजेशन एवॉइडेन्स स्थिति के लिए RFC 5681 में वर्णन किया गया है।[6]
कंजेशन विंडो
टीसीपी में, कंजेशन विंडो (सीडब्ल्यूएनडी) उन फैक्टर्स में से है जो किसी भी टाइम भेजे जा सकने वाले बाइट्स की नंबर निर्धारित करती है। कंजेशन विंडो को सेन्डर द्वारा बनाए रखा जाता है और यह सेन्डर और रिसीवर के मध्य लिंक को अधिक ट्रैफ़िक से ओवरलोड होने से स्टॉप करने का साधन है। इसे सेन्डर द्वारा बनाए गए स्लाइडिंग विंडो के साथ कन्फ्यूज्ड नहीं किया जाना चाहिए जो रिसीवर को ओवरलोड होने से स्टॉप करने के लिए उपस्थित है। कंजेशन विंडो की गणना यह अनुमान लगाकर की जाती है कि लिंक पर कितना कंजेशन है।
जब कोई कनेक्शन स्थापित किया जाता है, तो कंजेशन विंडो, प्रत्येक होस्ट पर स्वतंत्र रूप से बनाए रखा गया मान, उस कनेक्शन पर अलाउड मैक्सिमम सेगमेंट साइज़ (एमएसएस) के छोटे मल्टिप्लिकेटिव पर सेट किया जाता है। कंजेशन विंडो में और अधिक वरियन्स एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) दृष्टिकोण द्वारा निर्धारित होती है। इसका तात्पर्य यह है कि यदि सभी सेगमेंट प्राप्त हो जाते हैं और एकनॉलेजमेंट सेन्डर टाइम पर पहुंच जाती है, तो विंडो साइज़ में कुछ कांस्टेंट जोड़ दिया जाता है। यह भिन्न-भिन्न एल्गोरिदम का पालन करेगा।
सिस्टम एडमिनिस्ट्रेटर टीसीपी ट्यूनिंग के भाग के रूप में मैक्सिमम विंडो साइज़ लिमिट को समायोजित कर सकता है, या एडिटिव इनक्रीस के टाइम जोड़े गए कांस्टेंट को समायोजित कर सकता है।
टीसीपी कनेक्शन पर डेटा के फ्लो रिसीवर द्वारा एडवर्टाइज ट्रांसमिशन रिसीव विंडो के उपयोग से भी कण्ट्रोल होता है। सेन्डर अपनी स्वयं की कंजेशन विंडो और रिसीव विंडो से कम डेटा सेंट कर सकता है।
स्लो स्टार्ट
स्लो स्टार्ट, RFC 5681[7] द्वारा परिभाषित टीसीपी द्वारा अन्य एल्गोरिदम विधि के साथ मिलकर उपयोग की जाने वाली कंजेशन कंट्रोल स्ट्रेटेजी का भाग है जिससे नेटवर्क फ़ॉर्वर्डेड करने में सक्षम से अधिक डेटा सेंट करने से बचा जा सके, अर्थात नेटवर्क कंजेशन से बचने के लिए किया जाता है।
स्लो स्टार्ट में 1, 2, 4 या 10 एमएसएस के कंजेशन विंडो साइज़ (सीडब्ल्यूएनडी) के साथ प्रारंभ होती है।[8][3]: 1 प्रभावी रूप से प्रत्येक आरटीटी में विंडो का साइज़ डबल हो जाता है।[lower-alpha 1]
ट्रांसमिशन रेट स्लो स्टार्ट एल्गोरिथ्म द्वारा तब तक इनक्रीसड की जाएगी जब तक कि पैकेट लॉस को ज्ञात नहीं किया जा सकता है, या रिसीवर की एडवर्टाइज विंडो (आरडब्ल्यूएनडी) लिमिट फैक्टर नहीं है।
या स्लो स्टार्ट थ्रेशोल्ड (ssthresh) तक पहुंच गया है, जिसका उपयोग यह निर्धारित करने के लिए किया जाता है कि स्लो स्टार्ट या कंजेशन से एवॉइडेन्स एल्गोरिदम का उपयोग किया जाता है, जो स्लो स्टार्ट को सीमित करने के लिए निर्धारित मान है।
यदि सीडब्ल्यूएनडी ssthresh तक पहुँच जाता है, तो टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम में परिवर्तित कर दिया जाता है। इसे प्रत्येक आरटीटी के लिए 1 एमएसएस तक इनक्रीसड किया जाना चाहिए।
सामान्य सूत्र यह है कि प्रत्येक नया एसीके सीडब्ल्यूएनडी को MSS* MSS / CWND. द्वारा इनक्रीसड करता है। यह लगभग लीनियर रूप से इनक्रीसड होता है और एक्सेप्टएबल एप्प्रोक्सिमेंशन प्रदान करता है।
यदि कोई लॉस इवेंट होता है, तो टीसीपी मानता है कि यह नेटवर्क के कंजेशन के कारण है और नेटवर्क पर प्रस्तावित लोड को कम करने के लिए स्टेप लेता है। ये मेज़रमेंट उपयोग किए गए एक्साक्ट टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम पर निर्भर करते हैं।
जब टीसीपी सेन्डर रीट्रांसमिशन टाइमर का उपयोग करके सेगमेंट लॉस को ज्ञात किया जाता है और दिए गए सेगमेंट को रीट्रांसमिशन टाइमर के माध्यम से अभी तक रिसेंट नहीं गया है, तो ssthresh का मान सेंट किये गए डेटा के अमाउंट के हाफ से अधिक पर सेट नहीं किया जाना चाहिए, किंतु फिर भी क्युमुलेटिव रूप से 2 * MSS एकनॉलेजमेंट किया गया।
- टीसीपी ताहो
- जब कोई लॉस होता है, तो रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh के रूप में सेव किया जाता है और इसके प्रारंभिक सीडब्ल्यूएनडी से स्लो स्टार्ट फिर से प्रारंभ होती है।
- टीसीपी रेनो
- फास्ट रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ भाग ssthresh और न्यू सीडब्ल्यूएनडी के रूप में सेव किया जाता है, इस प्रकार स्लो स्टार्ट को स्किप कर दिया जाता है और डायरेक्ट कंजेशन अवॉइडेंस एल्गोरिदम पर चला जाता है। यहां ओवरआल एल्गोरिदम को फ़ास्ट रिकवरी कहा जाता है।
स्लो स्टार्ट यह मानती है कि अन्यूकनॉलेजड सेगमेंट नेटवर्क कंजेशन के कारण हैं। चूँकि यह कई नेटवर्कों के लिए एक्सेप्टएबल धारणा है, अन्य कारणों से सेगमेंट लॉस्ट हो सकते हैं, जैसे पुअर डेटा लिंक लेयर ट्रांसमिशन क्वालिटी है। इस प्रकार, वायरलेस लेन जैसी पुअर रिसेप्शन वाली स्थितियों में स्लो स्टार्ट पुअर परफॉर्म कर सकता है।
स्लो स्टार्ट प्रोटोकॉल शार्ट लिवड कनेक्शन के लिए भी बेड परफॉर्म करता है। ओल्डर वेब ब्राउज़र्स वेब सर्वर के लिए निरंतर कई शार्ट लिवड कनेक्शन बनाएंगे, और रिक्वेस्टड प्रत्येक फ़ाइल के लिए कनेक्शन ओपन और क्लोज्ड करेंगे। इसने अधिकांश कनेक्शनों को स्लो स्टार्ट मोड में रखा, जिसके परिणामस्वरूप रिपोंस टाइम पुअर हो गया। इस समस्या से बचने के लिए, मॉडर्न ब्राउज़र या तो कई कनेक्शन ओपन करते हैं या किसी विशेष वेब सर्वर से रिक्वेस्टड सभी फ़ाइलों के लिए एचटीटीपी कनेक्शन पुन: उपयोग करते हैं। चूँकि, वेब एडवर्टाइजिंग को प्रारंभ करने, सोशल नेटवर्किंग सर्विसेज की सुविधाओं को और एनालिटिक्स की काउंटर स्क्रिप्ट के लिए वेब साइटों द्वारा उपयोग किए जाने वाले कई थर्ड-पार्टी सर्वरों के लिए कनेक्शन का पुन: उपयोग नहीं किया जा सकता है।[9]
फास्ट रीट्रांसमिट
फास्ट रीट्रांसमिट ट्रांसमिशन कंट्रोल प्रोटोकॉल का एनहांसमेंट है जो किसी लॉस्ट हुए सेगमेंट को रीट्रांसमिट करने से पहले सेन्डर के टाइमर को कम कर देता है। टीसीपी सेन्डर सामान्यतः लॉस्ट सेगमेंटों को पहचानने के लिए साधारण टाइमर का उपयोग करता है। यदि किसी स्पेसिफ़िएड टाइम (एस्टिमेटेड राउंड-ट्रिप डिले टाइम का फ़ंक्शन) के भीतर किसी विशेष सेगमेंट के लिए एकनॉलेजमेंट प्राप्त नहीं होती है, तो सेन्डर मान लेगा कि सेगमेंट नेटवर्क में लॉस्ट हो गया है और सेगमेंट को रीट्रांसमिट करेगा।
डुप्लिकेट एकनॉलेजमेंट फास्ट से रीट्रांसमिट सिस्टम का आधार है। पैकेट प्राप्त करने के पश्चात प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट के लिए एकनॉलेजमेंट सेंट की जाती है। इन-ऑर्डर पैकेट के लिए, यह प्रभावी रूप से लास्ट पैकेट की सीक्वेंस नंबर और करंट पैकेट की पेलोड लंबाई है। यदि सीक्वेंस में नेक्स्ट पैकेट लॉस्ट हो जाता है किंतु सीक्वेंस में थर्ड पैकेट प्राप्त होता है, तो रिसीवर केवल डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है, जो कि वही मान है जो पहले पैकेट के लिए एकनॉलेजड किया गया था। सेकंड पैकेट लॉस्ट हो गया है और थर्ड पैकेट आर्डर में नहीं है, इसलिए डेटा का लास्ट इन-ऑर्डर बाइट पहले जैसा ही रहता है। इस प्रकार डुप्लिकेट एकनॉलेजमेंट होती है। सेन्डर पैकेट सेंट करना प्रारंभ रखता है, फोर्थ और फिफ्थ पैकेट रिसीवर को प्राप्त होता है। फिर, सेकंड पैकेट सीक्वेंस से मिस हो जाता है, इसलिए लास्ट इन-ऑर्डर बाइट नहीं परिवर्तित हुआ है। इन दोनों पैकेटों के लिए डुप्लिकेट एकनॉलेजमेंट सेंट की जाती है।
जब सेन्डर को तीन डुप्लिकेट एकनॉलेजमेंट प्राप्त होती है, तो यह उचित रूप से कॉंफिडेंट हो सकता है कि एकनॉलेजमेंट में स्पेसिफ़िएड लास्ट इन-ऑर्डर बाइट के पश्चात डेटा ले जाने वाला सेगमेंट लॉस्ट हो गया था। फास्ट रीट्रांसमिट करने वाला सेन्डर इस पैकेट को इसके टाइम आउट होने की प्रतीक्षा किए बिना रीट्रांसमिट करेगा। रीट्रांसमिट सेगमेंट की प्राप्ति पर, रिसीवर प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है। उपरोक्त उदाहरण में, यह फिफ्थ पैकेट के पेलोड के एंड को एकनॉलेजड करेगा। इंटरमीडिएट पैकेटों को एकनॉलेजमेंट करने की कोई आवश्यकता नहीं है क्योंकि टीसीपी डिफ़ॉल्ट रूप से क्युमुलेटिव एकनॉलेजमेंट का उपयोग करता है।
एल्गोरिदम
कंजेशन कंट्रोल एल्गोरिदम (सीसीए) के लिए नेमिंग कन्वेंशन का प्रारंभ केविन फॉल और सैली फ्लॉयड के 1996 के पेपर में हुई होगी।[10]
निम्नलिखित गुणों के अनुसार निम्नलिखित संभावित वर्गीकरण है:
- नेटवर्क से प्राप्त फीडबैक का टाइप और अमाउंट।
- करंट इंटरनेट पर इनक्रीमेंटल डेप्लॉयबिलिटी।
- परफॉरमेंस के जिस विषय में इम्प्रूव करना इसका लक्ष्य है: हाई बैंडविड्थ-डिले प्रोडक्ट नेटवर्क (बी); लॉसी लिंक (एल); फेयरनेस (एफ); शोर्ट फ्लो का एडवांटेज (एस); वेरिएबल-रेट लिंक (वी); कन्वर्जेन्स की स्पीड (सी)।
- यह फेयरनेस क्रिटेरियन का उपयोग करता है।
कुछ प्रसिद्ध कंजेशन से एवॉइडेन्स सिस्टमों को इस योजना द्वारा निम्नानुसार वर्गीकृत किया गया है:
वैरिएंट | फीडबैक | आवश्यक परिवर्तन | लाभ | फेयरनेस |
---|---|---|---|---|
(न्यू) रिनो | लॉस | — | — | डिले |
वेगास | डिले | सेन्डर | लेस लॉस | प्रोपोरशनल |
हाई स्पीड | लॉस | सेन्डर | हाई बैंडविड्थ | |
बीआईसी | लॉस | सेन्डर | हाई बैंडविड्थ | |
क्यूबिक | लॉस | सेन्डर | हाई बैंडविड्थ | |
सी2टीसीपी[11][12] | लॉस/डिले | सेन्डर | अल्ट्रा-लो लेटेंसी और हाई बैंडविड्थ | |
एन्यूटीसीपी[13] | मल्टी-बिट सिग्नल | सेन्डर | नियर ऑप्टीमल परफॉरमेंस | |
इलास्टिक-टीसीपी | लॉस/डिले | सेन्डर | हाई बैंडविड्थ/शोर्ट और लॉन्ग डिस्टेंस | |
एजल-टीसीपी | लॉस | सेन्डर | हाई बैंडविड्थ/शोर्ट-डिस्टेंस | |
एच-टीसीपी | लॉस | सेन्डर | हाई बैंडविड्थ | |
फ़ास्ट | डिले | सेन्डर | हाई बैंडविड्थ | प्रोपोरशनल |
कंपाउंड टीसीपी | लॉस/डिले | सेन्डर | हाई बैंडविड्थ | प्रोपोरशनल |
वेस्टवुड | लॉस/डिले | सेन्डर | लॉसी लिंक्स | |
जर्सी | लॉस/डिले | सेन्डर | लॉसी लिंक्स | |
बीबीआर[14] | डिले | सेन्डर | बीएलवीसी, बफ़रब्लोट | |
क्लैंप | मल्टी-बिट सिग्नल | रिसीवर, राउटर | वेरिएबल-रेट लिंक्स | मैक्सिमम-मिनिमम |
टीएफआरसी | लॉस | सेन्डर, रिसीवर | नो Retransmission | मिनिमम डिले |
एक्ससीपी | मल्टी-बिट सिग्नल | सेन्डर, रिसीवर, राउटर | बीएलएफसी | मैक्सिमम-मिनिमम |
वीसीपी | 2-बिट सिग्नल | सेन्डर, रिसीवर, राउटर | बीएलएफ | प्रोपोरशनल |
मैक्सनेट | मल्टी-बिट सिग्नल | सेन्डर, रिसीवर, राउटर | बीएलएफएस | मैक्सिमम-मिनिमम |
जेटमैक्स | मल्टी-बिट सिग्नल | सेन्डर, रिसीवर, राउटर | हाई बैंडविड्थ | मैक्सिमम-मिनिमम |
रेड | लॉस | राउटर | रिडूएड डिले | |
ईसीएन | सिंगल-बिट सिग्नल | सेन्डर, रिसीवर, राउटर | रिडूएड लॉस |
टीसीपी ताहो और रेनो
टीसीपी ताहो और रेनो एल्गोरिदम को रेट्रोस्पेक्टिवेली 4.3बीएसडी ऑपरेटिंग सिस्टम के वर्जन या फ्लेवरस के नाम पर रखा गया था, जिनमें से प्रत्येक सर्वप्रथम दिखाई दिया था (जो स्वयं ताहो लेक और निकट के शहर रेनो, नेवादा के नाम पर थे)। ताहो एल्गोरिथ्म सर्वप्रथम 4.3बीएसडी-ताहो (जो सीसीआई पावर 6/32 "ताहो" मिनीकंप्यूटर का समर्थन करने के लिए बनाया गया था) में दिखाई दिया, और पश्चात में 4.3बीएसडी नेटवर्किंग रिलीज़ 1 के भाग के रूप में नॉन-एटी एंड टी लिसेंसिस के लिए उपलब्ध कराया गया; इससे इसका व्यापक वितरण और कार्यान्वयन सुनिश्चित हुआ। 4.3बीएसडी-रेनो में इम्प्रूव किए गए और पश्चात में इसे नेटवर्किंग रिलीज़ 2 और पश्चात में 4.4बीएसडी-लाइट के रूप में पब्लिक के लिए प्रारंभ किया गया।
जबकि दोनों रीट्रांसमिशन टाइमआउट (आरटीओ) और डुप्लिकेट एसीके को पैकेट लॉस की इवेंट्स के रूप में मानते हैं, ताहो और रेनो का व्यवहार मुख्य रूप से इस विचार में भिन्न होता है कि वे डुप्लिकेट एसीके पर कैसे प्रतिक्रिया करते हैं:
- ताहो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं (अर्थात एक ही पैकेट को एकनॉलेजिंग करने वाले चार एसीके, जो डेटा पर पिग्गीबैक नहीं होते हैं और रिसीवर की एडवर्टाइड विंडो को नहीं परिवर्तितत करते हैं), ताहो फ़ास्ट रिट्रांसमिट करता है, स्लो स्टार्ट लिमिट को करंट के हाफ पर सेट करता है विंडो, कंजेशन विंडो को 1 एमएसएस तक कम कर देती है, और स्लो स्टार्ट स्थिति पर रीसेट कर देती है।[15]
- रेनो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं, तो रेनो फास्ट से रिट्रांसमिट करेगा और कंजेशन विंडो को हाफ करके (ताहो के जैसे 1 MSS पर सेट करने के अतिरिक्त), ssthresh को न्यू कंजेशन विंडो के समान सेट करके स्लो स्टार्ट फेज को स्किप कर देगा। और फ़ास्ट रिकवरी नामक फेज में प्रवेश करें।[16]
ताहो और रेनो दोनों में, यदि एसीके टाइम आउट (आरटीओ टाइमआउट) होता है, तो स्लो स्टार्ट का उपयोग किया जाता है, और दोनों एल्गोरिदम कंजेशन विंडो को 1 एमएसएस तक कम कर देते हैं।
टीसीपी न्यू रेनो
टीसीपी न्यू रेनो, RFC 6582 द्वारा परिभाषित (जो RFC 3782 और RFC 2582 में पूर्व परिभाषाओं को अप्रचलित करता है), टीसीपी रेनो के फास्ट रिकवरी फेज के टाइम रिट्रांसमिशन में इम्प्रूव करता है।
फास्ट रिकवरी के टाइम, ट्रांसमिट विंडो को फुल रखने के लिए, रिटर्न किये जाने वाले प्रत्येक डुप्लिकेट एसीके के लिए, कंजेशन विंडो के अंत से नया अनसेंट पैकेट सेंट किया जाता है।
रेनो से अंतर यह है कि न्यू रेनो ssthresh को इम्मेडिएटली हाफ नहीं करती है, जिससे मल्टीप्ल पैकेट लॉस होने पर विंडो अधिक कम हो सकती है। यह फास्ट रिकवरी से बाहर नहीं निकलता है और ssthresh को रीसेट नहीं करता है जब तक कि यह सभी डेटा को एकनॉलेजमेंट नहीं करता है।
रिट्रांसमिशन के पश्चात, न्यू एकनॉलेजड डेटा के दो केसेस हैं:
- फुल एकनॉलेजमेंट्स: एसीके सेंट किये गए सभी इंटरमीडिएट सेगमेंटों को एकनॉलेज करता है, ssthresh को परिवर्तित नहीं किया जा सकता है, cwnd को ssthresh पर सेट किया जा सकता है।
- पार्शियल एकनॉलेजमेंट्स: एसीके सभी डेटा को एकनॉलेज नहीं करता है। इसका तात्पर्य है कि लॉस हो सकता है, यदि अनुमति हो तो पहले अनएकनॉलेजड सेगमेंट को रिट्रांसमिट करना।
यह रिकॉर्ड करने के लिए कि कितना डेटा रिकवर करने की आवश्यकता है, यह "रिकवर" नामक वेरिएबल का उपयोग करता है। रीट्रांसमिट टाइमआउट के पश्चात, यह रिकवरी वेरिएबल में ट्रांसमिटेड हाईएस्ट सीक्वेंस नंबर को रिकॉर्ड करता है और फास्ट रिकवरी प्रोसीजर से बाहर निकलता है। यदि इस सीक्वेंस नंबर को एकनॉलेजड किया जाता है, तो टीसीपी कंजेशन से एवॉइडेन्स की स्थिति में वापस आ जाती है।
न्यू रेनो के साथ समस्या तब उत्पन्न होती है जब कोई पैकेट लॉस नहीं होती है, अन्यथा पैकेट को 3 से अधिक पैकेट सीक्वेंस नंबर्स द्वारा रिआर्डरड किया जाता है। इस केस में, न्यू रेनो मिस्टेक्स से फास्ट रिकवरी में प्रवेश करती है। जब रिऑर्डर किया गया पैकेट वितरित किया जाता है, तो डुप्लिकेट और अनावश्यक रिट्रांसमिशन इम्मेडिएटली सेंट कर दिए जाते हैं।
न्यू रेनो लो पैकेट एरर रेट पर सैक के समान ही परफॉरमेंस करती है और हाई एरर रेट पर रेनो से अधिक उत्तम परफॉरमेंस करती है।[17]
टीसीपी वेगास
1990 के दशक के मध्य तक, टीसीपी के सभी निर्धारित टाइमआउट और मेज़रमेंट की गई राउंड-ट्रिप डिले केवल ट्रांसमिट बफर में लास्ट ट्रांसमिटेड पैकेट पर आधारित थी। एरिज़ोना विश्वविद्यालय के रिसर्च लैरी पीटरसन और लॉरेंस ब्रैक्मो ने टीसीपी वेगास का प्रारंभ किया जिसमें टाइमआउट सेट किए गए थे और ट्रांसमिट बफर में प्रत्येक पैकेट के लिए राउंड-ट्रिप डिले को मेज़रमेंट किया गया था। इसके अतिरिक्त, टीसीपी वेगास कंजेशन विंडो में एडिटिव इनक्रीसजस का उपयोग करता है। विभिन्न टीसीपी सीसीएएस के कम्पेरिजन अध्ययन में, टीसीपी क्यूबिक के पश्चात टीसीपी वेगास सबसे स्मूथ दिखाई दिया।[18]
टीसीपी वेगास को पीटरसन की लेबोरेटरी के बाहर व्यापक रूप से डेप्लॉयड नहीं किया गया था, किंतु डीडी-डब्ल्यूआरटी फर्मवेयर v24 SP2 के लिए डिफ़ॉल्ट कंजेशन कंट्रोल विधि के रूप में चयन किया गया था।[19]
टीसीपी हाइब्ला
टीसीपी हाइब्ला[20][21] का उद्देश्य हाई-लेटेंसी टेरेस्ट्रियल या सॅटॅलाइट रेडियो लिंक का उपयोग करने वाले टीसीपी कनेक्शनों पर पेनलटीएस को समाप्त करना है। हाइब्ला इम्प्रूव कंजेशन विंडो डायनामिक्स के एनालिटिकल इवैल्यूएशन पर आधारित हैं।[22]
टीसीपी बीआईसी
बाइनरी इनक्रीस कंजेशन कंट्रोल (बीआईसी) हाई लेटेंसी वाले हाई-स्पीड नेटवर्क के लिए ऑप्टीमाइज़्ड सीसीए के साथ टीसीपी कार्यान्वयन है, जिसे लॉन्ग फैट नेटवर्क (एलएफएन) के रूप में जाना जाता है।[23] लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से बीआईसी का उपयोग किया जाता है।
टीसीपी क्यूबिक
क्यूबिक, बीआईसी का लेस एग्रेसिव और अधिक सिस्टेमेटिक डेरीवेटिव है, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन है, जिसमें इवेंट से पहले विंडो पर इन्फ्लेक्शन बिंदु सेट होता है। वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से क्यूबिक का उपयोग किया जाता है।
एजाइल-एसडी टीसीपी
एजाइल-एसडी लिनक्स-आधारित सीसीए है जिसे रियल लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो अजेलिटी फैक्टर (एएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-आधारित दृष्टिकोण को नियोजित करता है। हाई स्पीड और कम दूरी के नेटवर्क (कम-बीडीपी नेटवर्क) जैसे लोकल एरिया नेटवर्क या फाइबर-ऑप्टिक नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए, विशेष जब प्रारम्भ बफर साइज़ छोटा होता है।[24]NS-2 सिम्युलेटर का उपयोग करके इसके परफॉरमेंस की कम्पेरिंग कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए) और क्यूबिक (लिनक्स का डिफ़ॉल्ट) से करके इसका मूल्यांकन किया गया है। यह एवरेज थ्रूपुट की अवधि में कुल परफॉरमेंस को 55% तक इम्प्रूव करता है।
टीसीपी वेस्टवुड+
वेस्टवुड+ टीसीपी रेनो का केवल-सेन्डर मॉडिफिकेशन है जो वायर्ड और वायरलेस नेटवर्क दोनों पर टीसीपी कंजेशन कंट्रोल के परफॉरमेंस को ऑप्टीमाइज़्ड करता है। टीसीपी वेस्टवुड+ कंजेशन एपिसोड के पश्चात, अर्थात तीन डुप्लिकेट एकनॉलेजमेंट या टाइमआउट के पश्चात कंजेशन विंडो और स्लो स्टार्ट थ्रेशोल्ड सेट करने के लिए एंड-टू-एंड बैंडविड्थ (कंप्यूटिंग) अनुमान पर आधारित है। एकनॉलेजमेंट पैकेट रिटर्न रेट के एवरेज से बैंडविड्थ का अनुमान लगाया जाता है। टीसीपी रेनो के विपरीत, जो तीन डुप्लिकेट एसीके के पश्चात कंजेशन विंडो को क्लोज्ड करके हाफ कर देता है, टीसीपी वेस्टवुड+ अनुकूल रूप से स्लो स्टार्ट लिमिट और कंजेशन विंडो सेट करता है जो कंजेशन के अनुभव के टाइम उपलब्ध बैंडविड्थ के अनुमान को ध्यान में रखता है। रेनो और न्यू रेनो की कम्पेयर में, वेस्टवुड+ वायरलेस लिंक पर थ्रूपुट को महत्वपूर्ण रूप से बढ़ाता है और वायर्ड नेटवर्क में फेयरनेस में इम्प्रूव करता है।
कंपाउंड टीसीपी
कंपाउंड टीसीपी, टीसीपी का माइक्रोसॉफ्ट इम्प्लीमेंटेशन है जो फेयरनेस मेज़रमेंट को पुअर किए बिना एलएफएन पर उत्तम परफॉरमेंस प्राप्त करने के लक्ष्य के साथ, दो भिन्न-भिन्न कंजेशन विंडो को बनाए रखता है। इसे माइक्रोसॉफ्ट विंडोज विस्टा और विंडोज सर्वर 2008 के पश्चात से विंडोज वर्जन में व्यापक रूप से डेप्लॉयड किया गया है और इसे ओल्डर माइक्रोसॉफ्ट विंडोज वर्जन के साथ-साथ लिनक्स में भी पोर्ट किया गया है।
टीसीपी प्रोपोरशनल रेट में रिडक्शन
टीसीपी प्रोपोरशनल रेट में रिडक्शन (पीआरआर)[25] एल्गोरिदम है जिसे रिकवरी के टाइम सेंट किये गए डेटा की एक्यूरेसी में इम्प्रूव करने के लिए डिज़ाइन किया गया एल्गोरिदम है। एल्गोरिदम यह सुनिश्चित करता है कि रिकवरी के पश्चात विंडो का साइज़ स्लो स्टार्ट लिमिट के जितना संभव हो उतना निकाट हो। गूगल द्वारा किए गए परीक्षणों में, पीआरआर के परिणामस्वरूप एवरेज लेटेंसी में 3-10% रिडक्शन हुआ और रिकवरी टाइमआउट 5% डिक्रीज हुआ।[26] पीआरआर लिनक्स कर्नेल में वर्जन्स 3.2 से लिनक्स कर्नेल में उपलब्ध है।[27]
टीसीपी बीबीआर
बॉटलनेक बैंडविड्थ और राउंड-ट्रिप प्रसार टाइम (बीबीआर) 2016 में गूगल द्वारा विकसित CCA है।[28] जबकि अधिकांश सीसीए लॉस-आधारित हैं, इसमें वे कंजेशनभाड़ और ट्रांसमिशन की कम रेटों का पता लगाने के लिए पैकेट लॉस पर भरोसा करते हैं, बीबीआर, टीसीपी वेगास की तरह, मॉडल-आधारित है। एल्गोरिदम मैक्सिमम बैंडविड्थ और राउंड-ट्रिप टाइम का उपयोग करता है जिस पर नेटवर्क ने नेटवर्क का मॉडल बनाने के लिए आउटबाउंड डेटा पैकेट की सबसे हालिया उड़ान वितरित की। पैकेट डिलीवरी की प्रत्येक क्युमुलेटिव या चयनात्मक एकनॉलेजमेंट रेट नमूना उत्पन्न करती है जो डेटा पैकेट के ट्रांसमिशन और उस पैकेट की एकनॉलेजमेंट के मध्य टाइम अंतराल पर वितरित डेटा की अमाउंट को रिकॉर्ड करती है।[29] जब YouTube पर प्रारम्भ किया गया, तो BBRv1 ने एवरेजन 4% अधिक नेटवर्क थ्रूपुट और कुछ देशों में 14% तक का प्रोडक्टन किया।[30] लिनक्स 4.9 से बीबीआर लिनक्स टीसीपी के लिए उपलब्ध है।[31] यह QUIC के लिए भी उपलब्ध है।[32] बीबीआर वर्जन्स 1 (बीबीआरवी1) की गैर-बीबीआर धाराओं के प्रति फेयरनेस कण्टेण्डेड है। जबकि गूगल की प्रस्तुति BBRv1 को CUबीआईसी के साथ अच्छी तरह से सह-अस्तित्व में दिखाती है,[28]ज्योफ हस्टन और हॉक, ब्लेस और ज़िटरबार्ट जैसे रिसर्चओं ने इसे अन्य धाराओं के लिए अनुचित और स्केलेबल नहीं पLinux[33] हॉक एट अल. लिनक्स 4.9 के बीबीआर कार्यान्वयन में कतार में बढ़ती डिले, अनुचितता और बड़े पैमाने पर पैकेट लॉस जैसे कुछ गंभीर अंतर्निहित मुद्दे भी पाए गए।[34] सोहेल अब्बासलू एट अल। (C2टीसीपी के लेखक) बताते हैं कि BBRv1 सेलुलर नेटवर्क जैसे स्पीडशील वातावरण में अच्छा परफॉरमेंस नहीं करता है।[11][12]उन्होंने यह भी दिखाया है कि बीबीआर में अनुचितता का मुद्दा है। उदाहरण के लिए, जब CUबीआईसी टीसीपी फ्लो (जो लिनक्स, Android और MacOS में डिफ़ॉल्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल कार्यान्वयन है) नेटवर्क में BBR फ्लो के साथ सह-अस्तित्व में होता है, तो BBR फ्लो CUबीआईसी फ्लो पर हावी हो सकता है और इससे संपूर्ण लिंक बैंडविड्थ प्राप्त कर सकता है। (चित्र 16 देखें [11]).
वर्जन्स 2 CUबीआईसी जैसे लॉस-आधारित कंजेशन प्रबंधन के साथ संचालन करते टाइम अनुचितता के मुद्दे से निपटने का प्रयास करता है।[35] BBRv2 में BBRv1 द्वारा उपयोग किए गए मॉडल को पैकेट लॉस के बारे में जानकारी और स्पष्ट कंजेशन अधिसूचना (ईसीएन) से जानकारी सम्मिलित करने के लिए संवर्धित किया गया है।[36] चूँकि BBRv2 में कई बार BBRv1 की तुलना में कम थ्रूपुट हो सकता है, किंतु आमतौर पर इसे उत्तम गुडपुट माना जाता है।
वर्जन्स 3 (बीबीआरवी3) बीबीआरवी2 में दो बग को ठीक करता है (बैंडविड्थ जांच का टाइम से पहले समेज़रमेंट्त होना, बैंडविड्थ कन्वर्जेन्स) और कुछ परफॉरमेंस ट्यूनिंग करता है। वैरिएंट भी है, जिसे BBR.Swift कहा जाता है, जो डेटासेंटर-आंतरिक लिंक के लिए ऑप्टीमाइज़्ड है: यह मुख्य कंजेशन कंट्रोल सिग्नल के रूप में नेटवर्क_आरटीटी (रिसीवर डिले को छोड़कर) का उपयोग करता है।[36]
C2टीसीपी
सेलुलर कण्ट्रोल डिले टीसीपी (C2टीसीपी)[11][12] लचीले एंड-टू-एंड टीसीपी दृष्टिकोण की डिक्रीज से प्रेरित था जो नेटवर्क उपकरणों में किसी भी परिवर्तिताव की आवश्यकता के बिना विभिन्न अनुप्रयोगों के लिए सर्विसेज की विभिन्न क्वालिटी आवश्यकताओं को पूरा कर सकता है। C2टीसीपी का लक्ष्य करंट LTE (दूरसंचार) और भविष्य के 5G जैसे अत्यधिक स्पीडशील वातावरण में आभासी रियलता , वीडियो कॉन्फ्रेंसिंग, ऑनलाइन गेम, वाहन संचार प्रणाली आदि जैसे अनुप्रयोगों की अल्ट्रा-लो लेटेंसी (इंजीनियरिंग) और हाई-बैंडविड्थ आवश्यकताओं को पूरा करना है। सेल्युलर नेटवर्क C2टीसीपी लॉस-आधारित टीसीपी (जैसे रेनो, न्यूरेनो, क्यूबिक टीसीपी, बीआईसी टीसीपी, ...) के शीर्ष पर प्लग-इन (कंप्यूटिंग) | ऐड-ऑन के रूप में काम करता है, इसे केवल सर्वर-साइड पर स्थापित करना आवश्यक है और पैकेटों के एवरेज डिले को अनुप्रयोगों द्वारा निर्धारित वांछित डिलेों तक सीमित कर देता है।
न्यूयॉर्क विश्वविद्यालय के रिसर्च[37] दिखाया गया कि C2टीसीपी विभिन्न अत्याधुनिक टीसीपी योजनाओं के डिले और डLinuxन्नता परफॉरमेंस से उLinuxरफॉरमेंस करता है। उदाहरण के लिए, उन्होंने दिखाया कि BBR, CUबीआईसी और वेस्टवुड की तुलना में, C2टीसीपी विभिन्न सेलुलर नेटवर्क वातावरणों पर पैकेट की एवरेज डिले को आर्डरशः 250%, 900% और 700% कम कर देता है।[11]
इलास्टिक-टीसीपी
क्लाउड कंप्यूटिंग के समर्थन में हाई-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रस्ताव दिया गया था। यह लिनक्स-आधारित CCA है जिसे लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो विंडो-सहसंबंधित वेटिंग फ़ंक्शन (डब्ल्यूडब्ल्यूएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-डिले-आधारित दृष्टिकोण को नियोजित करता है। इसमें मानव ट्यूनिंग की आवश्यकता के बिना विभिन्न नेटवर्क विशेषताओं से निपटने के लिए हाई स्तर की लोच है। एन्यूस-2 सिम्युलेटर और टेस्टबेड का उपयोग करके इसके परफॉरमेंस की तुलना कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए), क्यूबिक (लिनक्स के लिए डिफ़ॉल्ट) और टीसीपी-बीबीआर (गूगल द्वारा उपयोग किए जाने वाले लिनक्स 4.9 का डिफ़ॉल्ट) से तुलना करके की गई है। इलास्टिक-टीसीपी एवरेज थ्रूपुट, लॉस अनुपात और डिले के केस में कुल परफॉरमेंस में उल्लेखनीय इम्प्रूव करता है।[38]
एन्यूटीसीपी
सोहेल अब्बासलू एट अल। प्रस्तावित NAटीसीपी (नेटवर्क-असिस्टेड टीसीपी)[13] ए controversial[according to whom?] टीसीपी डिज़ाइन मल्टी-्सेस एज कंप्यूटिंग (एमईसी) को लक्षित करता है। NAटीसीपी का मुख्य विचार यह है कि यदि नेटवर्क की विशेषताओं के बारे में पहले से पता होता, तो टीसीपी को भिन्न तरह से डिज़ाइन किया गया होता। इसलिए, NAटीसीपी टीसीपी के परफॉरमेंस को इष्टतम परफॉरमेंस के करीब पहुंचाने के लिए करंट एमईसी-आधारित सेलुलर आर्किटेक्वेरिएबल में उपलब्ध सुविधाओं और गुणों को नियोजित करता है। NAटीसीपी नेटवर्क से निकट में स्थित सर्वर पर आउट-ऑफ-बैंड फीडबैक का उपयोग करता है। नेटवर्क से फीडबैक, जिसमें सेलुलर ्सेस लिंक की क्षमता और नेटवर्क का न्यूनतम आरटीटी सम्मिलित है, सर्वर को उनकी भेजने की रेटों को समायोजित करने के लिए मार्गरेट्शन करता है। जैसा कि प्रारंभिक परिणाम दिखाते हैं, NAटीसीपी अत्याधुनिक टीसीपी योजनाओं से उत्तम परफॉरमेंस करता है।[13][39]
अन्य टीसीपी कंजेशन से एवॉइडेन्स एल्गोरिदम
- फ़ास्ट टीसीपी
- सामान्यीकृत फास्ट टीसीपी[40]
- एच-टीसीपी
- डाटा सेंटर टीसीपी
- हाई स्पीड टीसीपी
- एचएसटीसीपी-एलपी[41]
- टीसीपी-इलिनोइस
- टीसीपी-एलपी[41]* टीसीपी बोरी
- स्केलेबल टीसीपी
- टीसीपी वेनो[42]
- टीसीपी वेस्टवुड
- ्ससीपी[43]
- हाँ-टीसीपी[44]
- टीसीपी-फिट[45]
- टाइम के सामान्यीकृत अंतराल के साथ कंजेशनभाड़ से एवॉइडेन्स (CANIT)[46]
- टीसीपी/आईपी नेटवर्क के लिए आनुवंशिक एल्गोरिदम पर आधारित गैर-रेखीय सिस्टमिका नेटवर्क कंजेशन कंट्रोल[47]
- डी-टीसीपी[48]
- नेक्सजेन डी-टीसीपी[49]
- कप [50]
- टीसीपी न्यू रेनो सबसे सामान्यतः प्रारम्भ किया जाने वाला एल्गोरिदम था, सैक समर्थन अधिक आम है और रेनो/न्यू रेनो का विस्तार है। अधिकांश अन्य प्रतिस्पर्धी प्रस्ताव हैं जिन्हें अभी भी मूल्यांकन की आवश्यकता है। 2.6.8 से प्रारंभ होकर लिनक्स कर्नेल ने डिफ़ॉल्ट कार्यान्वयन को न्यू रेनो से बीआईसी टीसीपी में परिवर्तित दिया। 2.6.19 वर्जन्स में डिफ़ॉल्ट कार्यान्वयन को फिर से CUबीआईसी में परिवर्तित दिया गया। फ्रीबीएसडी न्यू रेनो को डिफ़ॉल्ट एल्गोरिदम के रूप में उपयोग करता है। चूँकि, यह कई अन्य विकल्पों का समर्थन करता है।[51]
जब कतार योजना की परवाह किए बिना बैंडविड्थ और लेटेंसी का प्रति-फ्लो प्रोडक्ट बढ़ता है, तो टीसीपी अक्षम हो जाता है और अस्थिरता का खतरा होता है। यह और भी महत्वपूर्ण हो जाता है क्योंकि इंटरनेट अधिक हाई-बैंडविड्थ ऑप्टिकल लिंक को सम्मिलित करने के लिए विकसित हो रहा है।
टीसीपी इंटरैक्टिव (आईटीसीपी)[52] एप्लिकेशन को टीसीपी ईवेंट की सदस्यता लेने और तदनुसार प्रतिक्रिया देने की अनुमति देता है, जिससे टीसीपी परत के बाहर से टीसीपी में विभिन्न कार्यात्मक ्सटेंशन सक्षम होते हैं। अधिकांश टीसीपी कंजेशन योजनाएं आंतरिक रूप से काम करती हैं। आईटीसीपी अतिरिक्त रूप से उन्नत अनुप्रयोगों को सीधे कंजेशन कंट्रोल में भाग लेने में सक्षम बनाता है जैसे कि स्रोत प्रोडक्टन रेट को कण्ट्रोल करना।
ज़ेटा-टीसीपी लेटेंसी और लॉस रेट दोनों उपायों से कंजेशन का पता लगाता है। गुडपुट ज़ेटा-टीसीपी को मैक्सिमम करने के लिए और कंजेशनभाड़ की संभावना के आधार पर भिन्न-भिन्न कंजेशन विंडो बैकऑफ़ स्ट्रेटेजीयों को प्रारम्भ करता है। इसमें पैकेट के नुकसान का सटीक पता लगाने के लिए अन्य इम्प्रूव भी हैं, जिससे रिट्रांसमिशन टाइमआउट रिट्रांसमिशन से बचा जा सके; और इनबाउंड (डाउनलोड) ट्रैफ़िक को फ़ास्ट और कण्ट्रोल करें।[53]
नेटवर्क जागरूकता द्वारा वर्गीकरण
सीसीए को नेटवर्क जागरूकता के संबंध में वर्गीकृत किया जा सकता है, जिसका अर्थ है कि ये एल्गोरिदम नेटवर्क की स्थिति के बारे में किस लिमिट तक जागरूक हैं। इसमें तीन प्राइमरी श्रेणियां सम्मिलित हैं: ब्लैक बॉक्स, ग्रे बॉक्स और ग्रीन बॉक्स।[54] ब्लैक बॉक्स एल्गोरिदम कंजेशन कंट्रोल के अंधी तरीकों की पेशकश करते हैं। वे केवल कंजेशन पर प्राप्त बाइनरी फीडबैक पर काम करते हैं और जिस नेटवर्क को वे प्रबंधित करते हैं उसकी स्थिति के बारे में कोई जानकारी नहीं रखते हैं।
ग्रे बॉक्स एल्गोरिदम का उपयोग करें time-instances[clarification needed] बैंडविड्थ, फ्लो विवाद और नेटवर्क स्थितियों के अन्य ज्ञान के मेज़रमेंट और अनुमान प्राप्त करने के लिए।
ग्रीन बॉक्स एल्गोरिदम कंजेशन कंट्रोल के द्विमोडल तरीकों की पेशकश करते हैं जो कुल बैंडविड्थ के उचित भाग को मेज़रमेंटते हैं जिसे सिस्टम के निष्पादन के टाइम किसी भी बिंदु पर प्रत्येक फ्लो के लिए आवंटित किया जाना चाहिए।
ब्लैक बॉक्स
- हाईस्पीड-टीसीपी[55]
- बीआईसी टीसीपी (बाइनरी इनक्रीस कंजेशन कंट्रोल प्रोटोकॉल) प्रत्येक कंजेशन इवेंट के पश्चात स्रोत रेट में अवतल इनक्रीस का उपयोग करता है जब तक कि विंडो इवेंट से पहले विंडो के समान न हो जाए, जिससे नेटवर्क के पूरी तरह से उपयोग किए जाने वाले टाइम को मैक्सिमम किया जा सके। इसके पश्चात वह आक्रामक तरीके से जांच करती है.
- क्यूबिक टीसीपी - बीआईसी का कम आक्रामक और अधिक व्यवस्थित डेरीवेटिव, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन हआनुपातिकइवेंट से पहले विंडो पर इन्फ्लेक्शन बिंदु सेट होता है।
- एआईएमडी-एफसी (फास्ट से कन्वर्जेन्स के साथ एड्डीटिव इनक्रीस आनुपातिकेटिव डिक्रीज), एआईएमडी का इम्प्रूव।[56]
- द्विपद सिस्टम
- SIMD प्रोटोकॉल
- GAIMD
ग्रे बॉक्स
- टीसीपी वेगास - कतार में डिले का अनुमान लगाता है, और विंडो को लीनियर रूप से बढ़ाता या घटाता है जिससे नेटवर्क में प्रति फ्लो पैकेट की स्थिर नंबर कतार में रहे। वेगास प्रोपोरशनल फेयरनेस प्रारम्भ करता है।
- फास्ट टीसीपी - वेगास के समान संतुलन प्राप्त करता है, किंतु लीनियर इनक्रीस के अतिरिक्त प्रोपोरशनल कंट्रोल का उपयोग करता है, और स्थिरता सुनिश्चित करने के उद्देश्य से बैंडविड्थ बढ़ने पर जानबूझकर एडवांटेज को कम कर देता है।
- टीसीपी बीबीआर - कतार में डिले का अनुमान लगाता है किंतु फास्ट से इनक्रीस का उपयोग करता है। फेयरनेस और डिले को कम करने के लिए जानबूझकर टाइम-टाइम पर इसे धीमा किया जाता है।
- टीसीपी-वेस्टवुड (टीसीपीडब्ल्यू) - नुकसान के कारण विंडो बैंडविड्थ-डिले प्रोडक्ट के सेन्डर के अनुमान पर रीसेट हो जाती है (एसीके प्राप्त करने की देखी गई रेट से गुणा किया गया सबसे छोटा आरटीटी)।[57]
- सी2टीसीपी[12][11]* टीसीपी अनुकूल रेट कंट्रोल[58]
- टीसीपी-रियल
- टीसीपी-जर्सी
हरा डिब्बा
- बिमोडल सिस्टम - बिमोडल कंजेशन एवॉइडेन्स और कंट्रोल सिस्टम।
- राउटर्स द्वारा कार्यान्वित सिग्नलिंग विधियाँ
- रैंडम अर्ली डिटेक्शन (रेड) राउटर की कतार के साइज़ के अनुपात में पैकेट को बेतरतीब ढंग से गिराता है, जिससे कुछ फ्लो में मल्टिप्लिकेटिव डिक्रीज आती है।
- स्पष्ट कंजेशन अधिसूचना (ईसीएन)
- नेटवर्क-सहायता प्राप्त कंजेशन कंट्रोल
- एन्यूटीसीपी[13] - नेटवर्क-असिस्टेड टीसीपी नेटवर्क के न्यूनतम आरटीटी और सेल्युलर ्सेस लिंक की क्षमता को इंगित करने वाले आउट-ऑफ-बैंड स्पष्ट फीडबैक का उपयोग करता है।
- वैरिएबल-स्ट्रक्वेरिएबल कंजेशन कंट्रोल प्रोटोकॉल (वीसीपी) कंजेशन की नेटवर्क स्थिति पर स्पष्ट रूप से प्रतिक्रिया देने के लिए दो ईसीएन बिट्स का उपयोग करता है। इसमें एंड होस्ट साइड एल्गोरिदम भी सम्मिलित है।
निम्नलिखित एल्गोरिदम को टीसीपी पैकेट संरचना में कस्टम फ़ील्ड जोड़ने की आवश्यकता होती है:
- स्पष्ट कंट्रोल प्रोटोकॉल (्ससीपी) - ्ससीपी पैकेट में फीडबैक फ़ील्ड के साथ कंजेशन हेडर होता है, जो सेन्डर की कंजेशन विंडो में इनक्रीस या डिक्रीज का संकेत देता है। एक्ससीपी राउटर दक्षता और फेयरनेस के लिए फीडबैक मान को स्पष्ट रूप से निर्धारित करते हैं।[59]
- मैक्सनेट - ल हेडर फ़ील्ड का उपयोग करता है, जो फ्लो के पथ पर किसी भी राउटर के मैक्सिमम कंजेशन स्तर को वहन करता है। रेट इस मैक्सिमम कंजेशन के फ़ंक्शन के रूप में निर्धारित की जाती है, जिसके परिणामस्वरूप मैक्सिमम-न्यूनतम फेयरनेस होती है।[60]
- जेटमैक्स, मैक्सनेट की तरह, केवल मैक्सिमम कंजेशन सिग्नल पर प्रतिक्रिया करता है, किंतु अन्य ओवरहेड फ़ील्ड भी वहन करता है।
लिनक्स उपयोग
- बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006)
- वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से CUबीआईसी का उपयोग किया जाता है। (नवंबर 2006)
- पीआरआर को वर्जन्स 3.2 के पश्चात से लॉस रिकवरी में इम्प्रूव के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (जनवरी 2012)
- BBRv1 को वर्जन्स 4.9 के पश्चात से मॉडल-आधारित कंजेशन कंट्रोल को सक्षम करने के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (दिसंबर 2016)
यह भी देखें
- Transmission Control Protocol §§ Congestion control and Development
- Network congestion § Mitigation
- कम अतिरिक्त डिले पृष्ठभूमि परिवहन (LEDBAT)
टिप्पणियाँ
संरेट्भ
- ↑ Jacobson & Karels 1988.
- ↑ 2.0 2.1 W. Stevens (January 1997). TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms. doi:10.17487/RFC2001. RFC 2001.
- ↑ 3.0 3.1 M. Allman; S. Floyd; C. Partridge (October 2002). टीसीपी की आरंभिक विंडो बढ़ाना. doi:10.17487/RFC3390. RFC 3390.
- ↑ "टीसीपी कंजेशन से बचाव को एक अनुक्रम आरेख के माध्यम से समझाया गया" (PDF). eventhelix.com.
- ↑ Chiu, Dah-Ming; Raj Jain (1989). "Analysis of increase and decrease algorithms for congestion avoidance in computer networks". Computer Networks and ISDN Systems. 17: 1–14. CiteSeerX 10.1.1.136.8108. doi:10.1016/0169-7552(89)90019-6.
- ↑ Allman, M.; Paxson, V. (September 2009). टीसीपी कंजेशन नियंत्रण. IETF. sec. 3.1. doi:10.17487/RFC5681. RFC 5681. Retrieved March 4, 2021.
- ↑ Blanton, Ethan; Paxson, Vern; Allman, Mark (September 2009). "टीसीपी कंजेशन नियंत्रण". IETF.
- ↑ Corbet, Jonathan. "टीसीपी प्रारंभिक कंजेशन विंडो को बढ़ाना". LWN. Retrieved 10 October 2012.
- ↑ Nick O'Neill. "What's Making Your Site Go Slow? Could Be The Like Button". AllFacebook, 10 November 2010. Retrieved on 12 September 2012.
- ↑ Fall, Kevin; Sally Floyd (July 1996). "ताहो, रेनो और सैक टीसीपी की सिमुलेशन-आधारित तुलना" (PDF). Computer Communications Review. 26 (3): 5–21. CiteSeerX 10.1.1.586.2403. doi:10.1145/235160.235162. S2CID 7459148.
- ↑ 11.0 11.1 11.2 11.3 11.4 11.5 Abbasloo, S.; Xu, Y.; Chao, H. J. (2019). "C2TCP: A Flexible Cellular TCP to Meet Stringent Delay Requirements". IEEE Journal on Selected Areas in Communications. 37 (4): 918–932. arXiv:1810.13241. doi:10.1109/JSAC.2019.2898758. ISSN 0733-8716. S2CID 53107038.
- ↑ 12.0 12.1 12.2 12.3 Abbasloo, S.; Li, T.; Xu, Y.; Chao, H. J. (May 2018). "Cellular Controlled Delay TCP (C2TCP)". 2018 IFIP Networking Conference and Workshops: 118–126. arXiv:1807.02689. Bibcode:2018arXiv180702689A. doi:10.23919/IFIPNetworking.2018.8696844. ISBN 978-3-903176-08-9. S2CID 49650788.
- ↑ 13.0 13.1 13.2 13.3 Abbasloo et al. 2019.
- ↑ Cardwell, Neal; Cheng, Yuchung; Gunn, C. Stephen; Yeganeh, Soheil Hassas; Jacobson, Van (2016). "BBR: Congestion-Based Congestion Control". Queue. 14 (5): 20–53. doi:10.1145/3012426.3022184.
- ↑ Kurose & Ross 2008, p. 284.
- ↑ Kurose & Ross 2012, p. 277.
- ↑ VasanthiN., V.; SinghM., Ajith; Kumar, Romen; Hemalatha, M. (2011). Das, Vinu V; Thankachan, Nessy (eds.). "Evaluation of Protocols and Algorithms for Improving the Performance of TCP over Wireless/Wired Network". International Conference on Computational Intelligence and Information Technology. Communications in Computer and Information Science. Springer. 250: 693–697. doi:10.1007/978-3-642-25734-6_120. ISBN 978-3-642-25733-9.
- ↑ "टीसीपी कंजेशन नियंत्रण एल्गोरिदम का प्रदर्शन विश्लेषण" (PDF). Retrieved 26 March 2012.
- ↑ "डीडी-डब्ल्यूआरटी चेंजलॉग". Retrieved 2 January 2012.
- ↑ "हाइब्ला होम पेज". Archived from the original on 11 October 2007. Retrieved 4 March 2007.
- ↑ Caini, Carlo; Firrincieli, Rosario (2004). "TCP Hybla: a TCP enhancement for heterogeneous networks". International Journal of Satellite Communications and Networking (in English). 22 (5): 547–566. doi:10.1002/sat.799. ISSN 1542-0973. S2CID 2360535.
- ↑ Caini, C.; Firrincieli, R.; Lacamera, D. (2009). "Comparative Performance Evaluation of TCP Variants on Satellite Environments". 2009 IEEE International Conference on Communications. pp. 1–5. doi:10.1109/ICC.2009.5198834. S2CID 8352762.
- ↑ V., Jacobson; R.T., Braden. लंबी-विलंबित पथों के लिए टीसीपी एक्सटेंशन. doi:10.17487/RFC1072. RFC 1072.
- ↑ Alrshah, M.A.; Othman, M.; Ali, B.; Hanapi, Z.M. (September 2015). "Agile-SD: A Linux-based TCP congestion control algorithm for supporting high-speed and short-distance networks". Journal of Network and Computer Applications. 55: 181–190. doi:10.1016/j.jnca.2015.05.011. S2CID 2645016.
- ↑ Mathis, M.; Dukkipati, N.; Cheng, Y. (2013). टीसीपी के लिए आनुपातिक दर में कमी. doi:10.17487/RFC6937. RFC 6937.
- ↑ Corbet, Jonathan. "LPC: Making the net go faster". Retrieved 6 June 2014.
- ↑ "Linux 3.2 - Linux Kernel Newbies". Retrieved 6 June 2014.
- ↑ 28.0 28.1 "BBR: Congestion-Based Congestion Control". Retrieved 25 August 2017.
- ↑ Cheng, Yuchung; Cardwell, Neal; Yeganeh, Soheil Hassas; Jacobson, Van. "डिलिवरी दर अनुमान". IETF. Retrieved 25 August 2017.
- ↑ "TCP BBR congestion control comes to GCP – your Internet just got faster". Retrieved 25 August 2017.
- ↑ "BBR congestion control [LWN.net]". lwn.net.
- ↑ "बीबीआर अद्यतन". IETF.
- ↑ "टीसीपी और बीबीआर" (PDF). Retrieved 27 May 2018.
- ↑ "बीबीआर कंजेशन नियंत्रण का प्रायोगिक मूल्यांकन" (PDF). Retrieved 27 May 2018.
- ↑ "A Performance Evaluation of TCP BBRv2". Retrieved 12 January 2021.
- ↑ 36.0 36.1 Google TCP BBR team; Google QUIC BBR team (Jul 26, 2023). BBRv3: Algorithm Bug Fixes and Public Internet Deployment. IETF 117: San Francisco.
{{cite conference}}
:|author1=
has generic name (help) - ↑ "Cellular Controlled Delay TCP (C2TCP)". wp.nyu.edu. Retrieved 2019-04-27.
- ↑ Alrshah, M.A.; Al-Maqri, M.A.; Othman, M. (June 2019). "Elastic-TCP: Flexible Congestion Control Algorithm to Adapt for High-BDP Networks". IEEE Systems Journal. 13 (2): 1336–1346. arXiv:1904.13105. Bibcode:2019ISysJ..13.1336A. doi:10.1109/JSYST.2019.2896195.
- ↑ Abbasloo, Soheil (2019-06-03), GitHub - Soheil-ab/natcp, retrieved 2019-08-05
- ↑ Yuan, Cao; Tan, Liansheng; Andrew, Lachlan L. H.; Zhang, Wei; Zukerman, Moshe (6 June 2008). "एक सामान्यीकृत फास्ट टीसीपी योजना". Computer Communications. 31 (14): 3242–3249. doi:10.1016/j.comcom.2008.05.028. hdl:1959.3/44051. S2CID 17988768.
- ↑ 41.0 41.1 "Rice Networks Group".
- ↑ "TCP Veno: TCP Enhancement for Transmission over Wireless Access Networks" (PDF). IEEE Journal on Selected Areas in Communication.
- ↑ "XCP @ ISI".
- ↑ "हाई स्पीड टीपीसी" (PDF). www.csc.lsu.edu.
- ↑ "संग्रहीत प्रति". Archived from the original on 3 April 2011. Retrieved 5 March 2011.
- ↑ Benaboud, H.; Berqia, A.; Mikou, N. (2002). "टीसीपी प्रोटोकॉल में CANIT एल्गोरिदम का एक विश्लेषणात्मक अध्ययन". ACM SIGMETRICS Performance Evaluation Review. 30 (3): 20. doi:10.1145/605521.605530. S2CID 6637174.
- ↑ Rouhani, Modjtaba (2010). "Nonlinear Neural Network Congestion Control Based on Genetic Algorithm for TCP/IP Networks". 2010 2nd International Conference on Computational Intelligence, Communication Systems and Networks. pp. 1–6. doi:10.1109/CICSyN.2010.21. ISBN 978-1-4244-7837-8. S2CID 15126416.
- ↑ Kanagarathinam, Madhan Raj; Singh, Sukhdeep; Sandeep, Irlanki; Roy, Abhishek; Saxena, Navrati (January 2018). "D-TCP: Dynamic TCP congestion control algorithm for next generation mobile networks". 2018 15th IEEE Annual Consumer Communications & Networking Conference (CCNC). pp. 1–6. doi:10.1109/CCNC.2018.8319185. ISBN 978-1-5386-4790-5. S2CID 3991163.
- ↑ Kanagarathinam, Madhan Raj; Singh, Sukhdeep; Sandeep, Irlanki; Kim, Hanseok; Maheshwari, Mukesh Kumar; Hwang, Jaehyun; Roy, Abhishek; Saxena, Navrati (2020). "NexGen D-TCP: Next Generation Dynamic TCP Congestion Control Algorithm". IEEE Access. 8: 164482–164496. doi:10.1109/ACCESS.2020.3022284. ISSN 2169-3536. S2CID 221846931.
- ↑ Arun, Venkat; Balakrishnan, Hari (2018). "Copa: Practical Delay-Based Congestion Control for the Internet". 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18): 329–342. ISBN 978-1-939133-01-4.
- ↑ "पांच नए टीसीपी कंजेशन नियंत्रण एल्गोरिदम परियोजना का सारांश". 8 March 2011.
- ↑ "iTCP - Interactive Transport Protocol - Medianet Lab, Kent State University".
- ↑ "Whitepaper: Zeta-TCP - Intelligent, Adaptive, Asymmetric TCP Acceleration" (PDF). Retrieved 2019-12-06.
- ↑ Lefteris Mamatas; Tobias Harks; Vassilis Tsaoussidis (January 2007). "पैकेट नेटवर्क में भीड़ नियंत्रण के दृष्टिकोण" (PDF). Journal of Internet Engineering. 1 (1). Archived from the original (PDF) on 2014-02-21.
- ↑ "हाईस्पीड टीसीपी". www.icir.org.
- ↑ "एआईएमडी-एफसी होमपेज". neu.edu. Archived from the original on 13 January 2009. Retrieved 13 March 2016.
- ↑ "नेटवर्क रिसर्च लैब में आपका स्वागत है". www.cs.ucla.edu.
- ↑ "यूनिकैस्ट अनुप्रयोगों के लिए समीकरण-आधारित भीड़ नियंत्रण". www.icir.org.
- ↑ Katabi, Dina; Handley, Mark; Rohrs, Charlie (2002). "Congestion control for high bandwidth-delay product networks". Proceedings of the 2002 conference on Applications, technologies, architectures, and protocols for computer communications. New York, New York, USA: ACM Press. p. 89. doi:10.1145/633025.633035. ISBN 1-58113-570-X.
- ↑ "मैक्सनेट--मैक्स-मिन फेयर, स्थिर स्पष्ट सिग्नलिंग कंजेशन नियंत्रण". netlab.caltech.edu.
स्रोत
- Kurose, James; Ross, Keith (2008). कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण (4th ed.). Addison Wesley. ISBN 978-0-13-607967-5.
- Kurose, James; Ross, Keith (2012). कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण (6th ed.). Pearson. ISBN 978-0-13-285620-1.
- Abbasloo, Soheil; Xu, Yang; Chao, H. Jonathon; Shi, Hang; Kozat, Ulas C.; Ye, Yinghua (2019). "मोबाइल एज पर नेटवर्क असिस्टेड टीसीपी के साथ इष्टतम प्रदर्शन की ओर". 2nd USENIX Workshop on Hot Topics in Edge Computing (HotEdge 19). Renton, WA: USENIX Association.
- Afanasyev, A.; N. Tilley; P. Reiher; L. Kleinrock (2010). "टीसीपी के लिए होस्ट-टू-होस्ट भीड़ नियंत्रण" (PDF). IEEE Communications Surveys and Tutorials. 12 (3): 304–342. CiteSeerX 10.1.1.228.3080. doi:10.1109/SURV.2010.042710.00114. S2CID 8638824.
- Jacobson, Van; Karels, Michael J. (November 1988). "भीड़भाड़ से बचाव और नियंत्रण" (PDF). ACM SIGCOMM Computer Communication Review. 18 (4): 314–329. doi:10.1145/52325.52356.
बाहरी संबंध
- Approaches to Congestion Control in Packet Networks
- Papers in Congestion Control
- Allman, Mark; Paxson, Vern; Stevens, W. Richard (April 1999). "Fast Retransmit/Fast Recovery". TCP Congestion Control. IETF. sec. 3.2. doi:10.17487/RFC2581. RFC 2581. Retrieved 2010-05-01.
- टीसीपी Congestion Handling and Congestion Avoidance Algorithms – The टीसीपी/IP Guide