टीसीपी संकुलन नियंत्रण: Difference between revisions

From Vigyanwiki
No edit summary
 
(16 intermediate revisions by 2 users not shown)
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> एंड-टू-एंड सिद्धांत के अनुसार, भीड़भाड़ नियंत्रण काफी हद तक [[[[इंटरनेट]] होस्ट]] का कार्य है, न कि नेटवर्क का। इंटरनेट से कनेक्ट होने वाले कंप्यूटरों के [[ऑपरेटिंग सिस्टम]] के [[प्रोटोकॉल स्टैक]] में लागू एल्गोरिदम के कई रूप और संस्करण हैं।
'''[[ प्रसारण नियंत्रण प्रोटोकॉल |ट्रांसमिशन कंट्रोल प्रोटोकॉल]] (टीसीपी)''' [[ भीड़ नियंत्रण |कंजेशन कंट्रोल]] एल्गोरिदम का उपयोग करता है जिसमें कंजेशन से बचने के लिए स्लो स्टार्ट और कंजेशन विंडो (सीडब्ल्यूएनडी) सहित अन्य योजनाओं के साथ-साथ एडिटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) योजना के विभिन्न विषय सम्मिलित हैं।{{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" />
एड्डीटिव इनक्रीस/मल्टिप्लिकेटिव डिक्रीज (एआईएमडी) एल्गोरिदम क्लोज्ड-लूप [[नियंत्रण प्रणाली|कंट्रोल]] एल्गोरिदम है। एआईएमडी कंजेशन होने पर कंजेशन विंडो की लीनियर ग्रोथ को एक्सपोनेंशियल से रिडक्शन के साथ कंबाइन करती है। एआईएमडी कंजेशन कंट्रोल का उपयोग करने वाले मल्टीप्ल फ्लो कण्टेण्डेड लिंक के समान अमाउंटस का उपयोग करने के लिए एकत्रित होंगे।<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}} प्रत्येक [[पावती (डेटा नेटवर्क)]] (एसीके) प्राप्त होने पर कंजेशन विंडो आकार के मूल्य को 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>}}


ट्रांसमिशन दर धीमी-प्रारंभ एल्गोरिथ्म द्वारा तब तक बढ़ाई जाएगी जब तक कि पैकेट हानि का पता नहीं चल जाता है, या रिसीवर की विज्ञापित विंडो (आरडब्ल्यूएनडी) सीमित कारक नहीं है।
ट्रांसमिशन रेट स्लो स्टार्ट एल्गोरिथ्म द्वारा तब तक इनक्रीसड की जाएगी जब तक कि पैकेट लॉस को डिटेक्ट नहीं किया जा सकता है, या रिसीवर की एडवर्टाइज विंडो (आरडब्ल्यूएनडी) लिमिट फैक्टर नहीं है।


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


यदि CWND ssthresh तक पहुँच जाता है, तो TCP कंजेशन अवॉइडेंस एल्गोरिदम में बदल जाता है। इसे प्रत्येक आरटीटी के लिए 1 एमएसएस तक बढ़ाया जाना चाहिए।
यदि सीडब्ल्यूएनडी ssthresh तक पहुँच जाता है, तो टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम में परिवर्तित कर दिया जाता है। इसे प्रत्येक आरटीटी के लिए 1 एमएसएस तक इनक्रीसड किया जाना चाहिए।


सामान्य सूत्र यह है कि प्रत्येक नया ACK MSS द्वारा CWND बढ़ाता है *{{nobreak|MSS / CWND.}} यह लगभग रैखिक रूप से बढ़ता है और स्वीकार्य सन्निकटन प्रदान करता है।
सामान्य फार्मूला यह है कि प्रत्येक एसीके सीडब्ल्यूएनडी को MSS* {{nobreak|MSS / CWND.}} द्वारा इनक्रीसड करता है। यह लगभग लीनियर रूप से इनक्रीसड होता है और एक्सेप्टएबल एप्प्रोक्सिमेंशन प्रदान करता है।


यदि कोई हानि की घटना होती है, तो टीसीपी मानता है कि यह नेटवर्क की भीड़ के कारण है और नेटवर्क पर प्रस्तावित लोड को कम करने के लिए कदम उठाता है। ये माप उपयोग किए गए सटीक टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम पर निर्भर करते हैं।
यदि कोई लॉस इवेंट होता है, तो टीसीपी मानता है कि यह नेटवर्क के कंजेशन के कारण है और नेटवर्क पर ऑफर्ड लोड को कम करने के लिए स्टेप लेता है। ये मेज़रमेंट उपयोग किए गए एक्साक्ट टीसीपी कंजेशन अवॉइडेंस एल्गोरिदम पर निर्भर करते हैं।


जब टीसीपी प्रेषक रीट्रांसमिशन टाइमर का उपयोग करके सेगमेंट हानि का पता लगाता है और दिए गए सेगमेंट को रीट्रांसमिशन टाइमर के माध्यम से अभी तक दोबारा नहीं भेजा गया है, तो ssthresh का मान भेजे गए डेटा की मात्रा के आधे से अधिक पर सेट नहीं किया जाना चाहिए, लेकिन नहीं फिर भी संचयी रूप से स्वीकार किया गया। या 2 * एमएसएस
जब टीसीपी सेन्डर रीट्रांसमिशन टाइमर का उपयोग करके सेगमेंट लॉस को डिटेक्ट किया जाता है और दिए गए सेगमेंट को रीट्रांसमिशन टाइमर के माध्यम से अभी तक रिसेंट नहीं गया है, तो ssthresh की वैल्यू सेंट किये गए डेटा के अमाउंट के हाफ से अधिक पर सेट नहीं किया जाना चाहिए, किंतु फिर भी क्युमुलेटिव रूप से 2 * MSS को एकनॉलेज किया गया।
;टीसीपी ताहो
;टीसीपी ताहो
: जब कोई हानि होती है, तो पुनः ट्रांसमिट भेजा जाता है, वर्तमान CWND का आधा हिस्सा ssthresh के रूप में सहेजा जाता है और इसके प्रारंभिक CWND से धीमी शुरुआत फिर से शुरू होती है।
: जब कोई लॉस होता है, तो रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ पार्टिसिपेट ssthresh के रूप में सेव किया जाता है और इसके प्रारंभिक सीडब्ल्यूएनडी से स्लो स्टार्ट फिर से प्रारंभ होती है।
; टीसीपी रेनो
; टीसीपी रेनो
: फास्ट रिट्रांसमिट भेजा जाता है, वर्तमान सीडब्ल्यूएनडी का आधा हिस्सा एसएसथ्रेश और नए सीडब्ल्यूएनडी के रूप में सहेजा जाता है, इस प्रकार धीमी शुरुआत को छोड़ दिया जाता है और सीधे कंजेशन अवॉइडेंस एल्गोरिदम पर चला जाता है। यहां समग्र एल्गोरिदम को 'कहा जाता है{{vanchor|fast recovery}}.
: फास्ट रिट्रांसमिट सेंट किया जाता है, करंट सीडब्ल्यूएनडी का हाफ पार्टिसिपेट 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>


== तेजी से पुनः प्रेषण ==
== फास्ट रीट्रांसमिट ==
फास्ट रीट्रांसमिट ट्रांसमिशन कंट्रोल प्रोटोकॉल का संवर्द्धन है जो किसी खोए हुए सेगमेंट को दोबारा ट्रांसमिट करने से पहले प्रेषक के इंतजार के समय को कम कर देता है। टीसीपी प्रेषक आम तौर पर खोए हुए खंडों को पहचानने के लिए साधारण टाइमर का उपयोग करता है। यदि किसी निर्दिष्ट समय (अनुमानित [[राउंड-ट्रिप में देरी का समय]] का फ़ंक्शन) के भीतर किसी विशेष खंड के लिए पावती प्राप्त नहीं होती है, तो प्रेषक मान लेगा कि खंड नेटवर्क में खो गया है और खंड को पुनः प्रेषित करेगा।
'''फास्ट रीट्रांसमिट''' ट्रांसमिशन कंट्रोल प्रोटोकॉल का एनहांसमेंट है जो किसी लॉस्ट हुए सेगमेंट को रीट्रांसमिट करने से पूर्व सेन्डर के टाइमर को कम कर देता है। टीसीपी सेन्डर सामान्यतः लॉस्ट सेगमेंटों को पहचानने के लिए साधारण टाइमर का उपयोग करता है। यदि किसी स्पेसिफ़िएड टाइम (एस्टिमेटेड [[राउंड-ट्रिप में देरी का समय|राउंड-ट्रिप डिले टाइम]] का फ़ंक्शन) के भीतर किसी विशेष सेगमेंट के लिए एकनॉलेजमेंट प्राप्त नहीं होती है, तो सेन्डर मान लेगा कि सेगमेंट नेटवर्क में लॉस्ट हो गया है और सेगमेंट को रीट्रांसमिट करेगा।


डुप्लिकेट पावती तेजी से पुन: प्रेषण तंत्र का आधार है। पैकेट प्राप्त करने के बाद प्राप्त डेटा के अंतिम इन-ऑर्डर बाइट के लिए पावती भेजी जाती है। इन-ऑर्डर पैकेट के लिए, यह प्रभावी रूप से अंतिम पैकेट की अनुक्रम संख्या और वर्तमान पैकेट की पेलोड लंबाई है। यदि अनुक्रम में अगला पैकेट खो जाता है लेकिन अनुक्रम में तीसरा पैकेट प्राप्त होता है, तो रिसीवर केवल डेटा के अंतिम इन-ऑर्डर बाइट को स्वीकार कर सकता है, जो कि वही मान है जो पहले पैकेट के लिए स्वीकार किया गया था। दूसरा पैकेट खो गया है और तीसरा पैकेट क्रम में नहीं है, इसलिए डेटा का अंतिम इन-ऑर्डर बाइट पहले जैसा ही रहता है। इस प्रकार ''डुप्लिकेट पावती'' होती है। प्रेषक पैकेट भेजना जारी रखता है, और चौथा और पांचवां पैकेट रिसीवर को प्राप्त होता है। फिर, दूसरा पैकेट अनुक्रम से गायब है, इसलिए अंतिम इन-ऑर्डर बाइट नहीं बदला है। इन दोनों पैकेटों के लिए डुप्लिकेट पावती भेजी जाती है।
'''डुप्लिकेट एकनॉलेजमेंट''' फास्ट से रीट्रांसमिट सिस्टम का बेसिस है। पैकेट प्राप्त करने के पश्चात प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट के लिए एकनॉलेजमेंट सेंट की जाती है। इन-ऑर्डर पैकेट के लिए, यह प्रभावी रूप से लास्ट पैकेट की सीक्वेंस नंबर और करंट पैकेट की पेलोड लंबाई है। यदि सीक्वेंस में नेक्स्ट पैकेट लॉस्ट हो जाता है किंतु सीक्वेंस में थर्ड पैकेट प्राप्त होता है, तो रिसीवर केवल डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है, जो कि वही मान है जो पहले पैकेट के लिए एकनॉलेजड किया गया था। सेकंड पैकेट लॉस्ट हो गया है और थर्ड पैकेट आर्डर में नहीं है, इसलिए डेटा का लास्ट इन-ऑर्डर बाइट पहले जैसा ही रहता है। इस प्रकार डुप्लिकेट एकनॉलेजमेंट होती है। सेन्डर पैकेट सेंट करना प्रारंभ रखता है, फोर्थ और फिफ्थ पैकेट रिसीवर को प्राप्त होता है। फिर, सेकंड पैकेट सीक्वेंस से मिस हो जाता है, इसलिए लास्ट इन-ऑर्डर बाइट नहीं परिवर्तित हुआ है। इन दोनों पैकेटों के लिए डुप्लिकेट एकनॉलेजमेंट सेंट की जाती है।


जब प्रेषक को तीन डुप्लिकेट पावती प्राप्त होती है, तो यह उचित रूप से आश्वस्त हो सकता है कि पावती में निर्दिष्ट अंतिम इन-ऑर्डर बाइट के बाद डेटा ले जाने वाला खंड खो गया था। तेजी से पुनः प्रेषित करने वाला प्रेषक इस पैकेट को इसके समय समाप्त होने की प्रतीक्षा किए बिना तुरंत पुनः प्रेषित करेगा। पुन: प्रेषित खंड की प्राप्ति पर, प्राप्तकर्ता प्राप्त डेटा के अंतिम इन-ऑर्डर बाइट को स्वीकार कर सकता है। उपरोक्त उदाहरण में, यह पांचवें पैकेट के पेलोड के अंत की पुष्टि करेगा। मध्यवर्ती पैकेटों को स्वीकार करने की कोई आवश्यकता नहीं है क्योंकि टीसीपी डिफ़ॉल्ट रूप से संचयी स्वीकृतियों का उपयोग करता है।
जब सेन्डर को तीन डुप्लिकेट एकनॉलेजमेंट प्राप्त होती है, तो यह उचित रूप से कॉंफिडेंट हो सकता है कि एकनॉलेजमेंट में स्पेसिफ़िएड लास्ट इन-ऑर्डर बाइट के पश्चात डेटा ले जाने वाला सेगमेंट लॉस्ट हो गया था। फास्ट रीट्रांसमिट करने वाला सेन्डर इस पैकेट को इसके टाइम आउट होने की प्रतीक्षा किए बिना रीट्रांसमिट करेगा। रीट्रांसमिट सेगमेंट की प्राप्ति पर, रिसीवर प्राप्त डेटा के लास्ट इन-ऑर्डर बाइट को एकनॉलेजड कर सकता है। उपरोक्त उदाहरण में, यह फिफ्थ पैकेट के पेलोड के एंड को एकनॉलेजड करेगा। इंटरमीडिएट पैकेटों को एकनॉलेजमेंट करने की कोई आवश्यकता नहीं है क्योंकि टीसीपी डिफ़ॉल्ट रूप से क्युमुलेटिव एकनॉलेजमेंट का उपयोग करता है।


== एल्गोरिदम ==
== एल्गोरिदम ==
कंजेशन कंट्रोल एल्गोरिदम (सीसीए) के लिए नामकरण परंपरा की शुरुआत केविन फॉल और सैली फ्लॉयड के 1996 के पेपर में हुई होगी।<ref>{{cite journal| last = Fall | first = Kevin |author2=Sally Floyd  | title = ताहो, रेनो और सैक टीसीपी की सिमुलेशन-आधारित तुलना| journal = Computer Communications Review | volume = 26 | issue = 3 | pages = 5–21 | date = July 1996 | url = https://www.icir.org/floyd/papers/sacks.pdf | doi = 10.1145/235160.235162 | citeseerx = 10.1.1.586.2403 | s2cid = 7459148 }}</ref>{{failed verification|reason=The naming conventions are used in this paper but what we really need is a secondary source that indicates that this paper was the first to use them.|date=January 2019}}
कंजेशन कंट्रोल एल्गोरिदम (सीसीए) के लिए नेमिंग कन्वेंशन का प्रारंभ केविन फॉल और सैली फ्लॉयड के 1996 के पेपर में हुई होगी।<ref>{{cite journal| last = Fall | first = Kevin |author2=Sally Floyd  | title = ताहो, रेनो और सैक टीसीपी की सिमुलेशन-आधारित तुलना| journal = Computer Communications Review | volume = 26 | issue = 3 | pages = 5–21 | date = July 1996 | url = https://www.icir.org/floyd/papers/sacks.pdf | doi = 10.1145/235160.235162 | citeseerx = 10.1.1.586.2403 | s2cid = 7459148 }}</ref>


निम्नलिखित गुणों के अनुसार निम्नलिखित  संभावित वर्गीकरण है:
निम्नलिखित प्रॉपर्टीज के अनुसार संभावित क्लासिफिकेशन है:


# नेटवर्क से प्राप्त फीडबैक का प्रकार और मात्रा
# नेटवर्क से प्राप्त फीडबैक का टाइप और अमाउंट।
# वर्तमान इंटरनेट पर वृद्धिशील तैनाती
# करंट इंटरनेट पर इनक्रीमेंटल डेप्लॉयबिलिटी।
# प्रदर्शन का वह पहलू जिसे सुधारना है: उच्च [[बैंडविड्थ-विलंब उत्पाद]] नेटवर्क (बी); हानिपूर्ण लिंक (एल); निष्पक्षता (एफ); लघु प्रवाह का लाभ (एस); परिवर्तनीय-दर लिंक (वी); [[अभिसरण की गति]] (सी)
# परफॉरमेंस के जिस विषय में इम्प्रूव करना इसका गोल है: हाई [[बैंडविड्थ-विलंब उत्पाद|बैंडविड्थ-डिले प्रोडक्ट]] नेटवर्क (बी); लॉसी लिंक (एल); फेयरनेस (एफ); शोर्ट फ्लो का एडवांटेज (एस); वेरिएबल-रेट लिंक (वी); [[अभिसरण की गति|कन्वर्जेन्स की स्पीड]] (सी)
# यह निष्पक्षता मानदंड का उपयोग करता है
# यह फेयरनेस क्रिटेरियन का उपयोग करता है।


कुछ प्रसिद्ध भीड़-भाड़ से बचाव तंत्रों को इस योजना द्वारा निम्नानुसार वर्गीकृत किया गया है:
कुछ प्रसिद्ध कंजेशन से एवॉइडेन्स सिस्टमों को इस योजना द्वारा निम्नानुसार क्लासिफाइड किया गया है:


{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Variant
! वैरिएंट
! Feedback
! फीडबैक
! Required changes
! आवश्यक परिवर्तन
! Benefits
! लाभ
! Fairness
! फेयरनेस
|-
|-
| (New) Reno
| (न्यू) रिनो
| Loss
| लॉस
| {{sdash}}
| {{sdash}}
| {{sdash}}
| {{sdash}}
| Delay
| डिले
|-
|-
| Vegas
| वेगास
| Delay
| डिले
| Sender
| सेन्डर
| Less loss
| लेस लॉस
| Proportional
| प्रोपोरशनल
|-
|-
| High Speed
| हाई स्पीड
| Loss
| लॉस
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
|  
|  
|-
|-
| BIC
| बीआईसी
| Loss
| लॉस
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
|  
|  
|-
|-
| CUBIC
| क्यूबिक
| Loss
| लॉस
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
|  
|  
|-
|-
| C2TCP<ref name="C2TCP-JSAC" /><ref name="C2TCP"/>
| सी2टीसीपी<ref name="C2TCP-JSAC" /><ref name="C2TCP"/>
| Loss/Delay
| लॉस/डिले
| Sender
| सेन्डर
| Ultra-low latency and high bandwidth
| अल्ट्रा-लो लेटेंसी और हाई बैंडविड्थ
|  
|  
|-
|-
|NATCP{{sfn|Abbasloo|Xu|Chao|Shi|2019}}
|एन्यूटीसीपी{{sfn|Abbasloo|Xu|Chao|Shi|2019}}
|Multi-bit signal
|मल्टी-बिट सिग्नल
|Sender
|सेन्डर
|Near Optimal Performance
|नियर ऑप्टीमल परफॉरमेंस
|
|
|-
|-
| Elastic-TCP
| इलास्टिक-टीसीपी
| Loss/Delay
| लॉस/डिले
| Sender
| सेन्डर
| High bandwidth/short & long-distance
| हाई बैंडविड्थ/शोर्ट और लॉन्ग डिस्टेंस
|  
|  
|-
|-
| Agile-TCP
| एजल-टीसीपी
| Loss
| लॉस
| Sender
| सेन्डर
| High bandwidth/short-distance
| हाई बैंडविड्थ/शोर्ट-डिस्टेंस
|  
|  
|-
|-
| H-TCP
| एच-टीसीपी
| Loss
| लॉस
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
|  
|  
|-
|-
| FAST
| फ़ास्ट
| Delay
| डिले
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
| Proportional
| प्रोपोरशनल
|-
|-
| Compound TCP
| कंपाउंड टीसीपी
| Loss/Delay
| लॉस/डिले
| Sender
| सेन्डर
| High bandwidth
| हाई बैंडविड्थ
| Proportional
| प्रोपोरशनल
|-
|-
| Westwood
| वेस्टवुड
| Loss/Delay
| लॉस/डिले
| Sender
| सेन्डर
| Lossy links
| लॉसी लिंक्स
|  
|  
|-
|-
| Jersey
| जर्सी
| Loss/Delay
| लॉस/डिले
| Sender
| सेन्डर
| Lossy links
| लॉसी लिंक्स
|  
|  
|-
|-
|BBR<ref>{{cite journal|title=BBR: Congestion-Based Congestion Control|journal=Queue|year=2016|doi=10.1145/3012426.3022184|doi-access=free|last1=Cardwell|first1=Neal|last2=Cheng|first2=Yuchung|last3=Gunn|first3=C. Stephen|last4=Yeganeh|first4=Soheil Hassas|last5=Jacobson|first5=Van|volume=14|issue=5|pages=20–53}}</ref>
|बीबीआर<ref>{{cite journal|title=BBR: Congestion-Based Congestion Control|journal=Queue|year=2016|doi=10.1145/3012426.3022184|doi-access=free|last1=Cardwell|first1=Neal|last2=Cheng|first2=Yuchung|last3=Gunn|first3=C. Stephen|last4=Yeganeh|first4=Soheil Hassas|last5=Jacobson|first5=Van|volume=14|issue=5|pages=20–53}}</ref>
|Delay
|डिले
|Sender
|सेन्डर
|BLVC, [[Bufferbloat]]
|बीएलवीसी, [[Bufferbloat|बफ़रब्लोट]]
|
|
|-
|-
| CLAMP
| क्लैंप
| Multi-bit signal
| मल्टी-बिट सिग्नल
| Receiver, Router
| रिसीवर, राउटर
| Variable-rate links
| वेरिएबल-रेट लिंक्स
| Max-min
| मैक्सिमम-मिनिमम
|-
|-
| TFRC
| टीएफआरसी
| Loss
| लॉस
| Sender, Receiver
| सेन्डर, रिसीवर
| No Retransmission
| नो रीट्रान्समिशन
| Minimum delay
| मिनिमम डिले
|-
|-
| XCP
| एक्ससीपी
| Multi-bit signal
| मल्टी-बिट सिग्नल
| Sender, Receiver, Router
| सेन्डर, रिसीवर, राउटर
| BLFC
| बीएलएफसी
| Max-min
| मैक्सिमम-मिनिमम
|-
|-
| VCP
| वीसीपी
| 2-bit signal
| 2-बिट सिग्नल
| Sender, Receiver, Router
| सेन्डर, रिसीवर, राउटर
| BLF
| बीएलएफ
| Proportional
| प्रोपोरशनल
|-
|-
| MaxNet
| मैक्सनेट
| Multi-bit signal
| मल्टी-बिट सिग्नल
| Sender, Receiver, Router
| सेन्डर, रिसीवर, राउटर
| BLFSC
| बीएलएफएस
| Max-min
| मैक्सिमम-मिनिमम
|-
|-
| JetMax
| जेटमैक्स
| Multi-bit signal
| मल्टी-बिट सिग्नल
| Sender, Receiver, Router
| सेन्डर, रिसीवर, राउटर
| High bandwidth
| हाई बैंडविड्थ
| Max-min
| मैक्सिमम-मिनिमम
|-
|-
| RED
| रेड
| Loss
| लॉस
| Router
| राउटर
| Reduced delay
| रिडूएड डिले
|  
|  
|-
|-
| ECN
| ईसीएन
| Single-bit signal
| सिंगल-बिट सिग्नल
| Sender, Receiver, Router
| सेन्डर, रिसीवर, राउटर
| Reduced loss
| रिडूएड लॉस
|  
|  
|}
|}
Line 214: Line 214:
'''टीसीपी ताहो और रेनो'''
'''टीसीपी ताहो और रेनो'''


टीसीपी ताहो और रेनो एल्गोरिदम को पूर्वव्यापी रूप से 4.3बीएसडी ऑपरेटिंग सिस्टम के संस्करणों या स्वादों के नाम पर रखा गया था, जिनमें से प्रत्येक पहली बार दिखाई दिया था (जो स्वयं [[ताहो झील]] और पास के शहर रेनो, नेवादा के नाम पर थे)। ताहो एल्गोरिथ्म पहली बार 4.3बीएसडी-ताहो में दिखाई दिया (जो कंप्यूटर कंसोल इंक. # पावर 5 और पावर 6 कंप्यूटर | सीसीआई पावर 6/32 ताहो मिनी कंप्यूटर का समर्थन करने के लिए बनाया गया था), और बाद में इसे गैर-एटी एंड टी लाइसेंसधारियों के लिए उपलब्ध कराया गया था। 4.3बीएसडी नेटवर्किंग रिलीज़ 1 का; इससे इसका व्यापक वितरण और कार्यान्वयन सुनिश्चित हुआ। 4.3BSD-रेनो में सुधार किए गए और बाद में इसे नेटवर्किंग रिलीज़ 2 और बाद में 4.4BSD-लाइट के रूप में जनता के लिए जारी किया गया।
टीसीपी ताहो और रेनो एल्गोरिदम को रेट्रोस्पेक्टिवेली 4.3बीएसडी ऑपरेटिंग सिस्टम के वर्जन या फ्लेवरस के नाम पर रखा गया था, जिनमें से प्रत्येक सर्वप्रथम दिखाई दिया था (जो स्वयं [[ताहो झील|ताहो लेक]] और निकट के शहर रेनो, नेवादा के नाम पर थे)। ताहो एल्गोरिथ्म सर्वप्रथम 4.3बीएसडी-ताहो (जो सीसीआई पावर 6/32 "ताहो" मिनीकंप्यूटर का सपोर्ट करने के लिए बनाया गया था) में दिखाई दिया, और पश्चात में 4.3बीएसडी नेटवर्किंग रिलीज़ 1 के पार्टिसिपेट के रूप में नॉन-एटी एंड टी लिसेंसिस के लिए उपलब्ध कराया गया; इससे इसका व्यापक वितरण और इम्प्लीमेंटेशन सुनिश्चित हुआ। 4.3बीएसडी-रेनो में इम्प्रूव किए गए और पश्चात में इसे नेटवर्किंग रिलीज़ 2 और पश्चात में 4.4बीएसडी-लाइट के रूप में पब्लिक के लिए प्रारंभ किया गया।


जबकि दोनों रीट्रांसमिशन टाइमआउट (आरटीओ) और डुप्लिकेट एसीके को पैकेट हानि की घटनाओं के रूप में मानते हैं, ताहो और रेनो का व्यवहार मुख्य रूप से इस बात में भिन्न होता है कि वे डुप्लिकेट एसीके पर कैसे प्रतिक्रिया करते हैं:
जबकि दोनों रीट्रांसमिशन टाइमआउट (आरटीओ) और डुप्लिकेट एसीके को पैकेट लॉस की इवेंट्स के रूप में मानते हैं, ताहो और रेनो का बिहेवियर मेन रूप से इस विचार में भिन्न होता है कि वे डुप्लिकेट एसीके पर कैसे फीडबैक करते हैं:


* ताहो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं (अर्थात ही पैकेट को स्वीकार करने वाले चार एसीके, जो डेटा पर पिग्गीबैक नहीं होते हैं और रिसीवर की विज्ञापित विंडो को नहीं बदलते हैं), ताहो तेज़ रिट्रांसमिट करता है, धीमी शुरुआत सीमा को वर्तमान के आधे पर सेट करता है कंजेशन विंडो, कंजेशन विंडो को 1 एमएसएस तक कम कर देता है, और धीमी शुरुआत स्थिति पर रीसेट कर देता है।{{sfn|Kurose|Ross|2008|p=284}}
* ताहो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं (अर्थात एक ही पैकेट को एकनॉलेजिंग करने वाले चार एसीके, जो डेटा पर पिग्गीबैक नहीं होते हैं और रिसीवर की एडवर्टाइड विंडो को नहीं परिवर्तितत करते हैं), ताहो फ़ास्ट रिट्रांसमिट करता है, स्लो स्टार्ट लिमिट को करंट के हाफ पर सेट करता है विंडो, कंजेशन विंडो को 1 एमएसएस तक कम कर देती है, और स्लो स्टार्ट स्टेट पर रीसेट कर देती है।{{sfn|Kurose|Ross|2008|p=284}}
* रेनो: यदि तीन डुप्लिकेट ACK प्राप्त होते हैं, तो रेनो तेजी से पुन: ट्रांसमिट करेगा और कंजेशन विंडो को आधा करके (ताहो की तरह 1 MSS पर सेट करने के बजाय), ssthresh को नई कंजेशन विंडो के बराबर सेट करके धीमी शुरुआत चरण को छोड़ देगा। और तेज़ पुनर्प्राप्ति नामक चरण में प्रवेश करें।{{sfn|Kurose|Ross|2012|p=277}}
* रेनो: यदि तीन डुप्लिकेट एसीके प्राप्त होते हैं, तो रेनो फास्ट से रिट्रांसमिट करेगा और कंजेशन विंडो को हाफ करके (ताहो के जैसे 1 MSS पर सेट करने के अतिरिक्त), ssthresh को न्यू कंजेशन विंडो के समान सेट करके स्लो स्टार्ट फेज को स्किप कर देगा। और फ़ास्ट रिकवरी नामक फेज में एंटर करें।{{sfn|Kurose|Ross|2012|p=277}}


ताहो और रेनो दोनों में, यदि एसीके टाइम आउट (आरटीओ टाइमआउट) होता है, तो धीमी शुरुआत का उपयोग किया जाता है, और दोनों एल्गोरिदम कंजेशन विंडो को 1 एमएसएस तक कम कर देते हैं।
ताहो और रेनो दोनों में, यदि एसीके टाइम आउट (आरटीओ टाइमआउट) होता है, तो स्लो स्टार्ट का उपयोग किया जाता है, और दोनों एल्गोरिदम कंजेशन विंडो को 1 एमएसएस तक कम कर देते हैं।


=== टीसीपी न्यू रेनो ===
=== टीसीपी न्यू रेनो ===
टीसीपी न्यू रेनो, द्वारा परिभाषित {{IETF RFC|6582}} (जो पिछली परिभाषाओं को अप्रचलित करता है {{IETF RFC|3782}} और {{IETF RFC|2582}}), टीसीपी रेनो के तेजी से पुनर्प्राप्ति चरण के दौरान पुनः ट्रांसमिशन में सुधार करता है।
टीसीपी न्यू रेनो, {{IETF RFC|6582}} द्वारा परिभाषित (जो {{IETF RFC|3782}} और {{IETF RFC|2582}} में पूर्व परिभाषाओं को ओब्सोलेस करता है), टीसीपी रेनो के फास्ट रिकवरी फेज के टाइम रिट्रांसमिशन में इम्प्रूव करता है।


तेजी से पुनर्प्राप्ति के दौरान, ट्रांसमिट विंडो को भरा रखने के लिए, लौटाए जाने वाले प्रत्येक डुप्लिकेट ACK के लिए, कंजेशन विंडो के अंत से नया असंतुलित पैकेट भेजा जाता है।
फास्ट रिकवरी के टाइम, ट्रांसमिट विंडो को फुल रखने के लिए, रिटर्न किये जाने वाले प्रत्येक डुप्लिकेट एसीके के लिए, कंजेशन विंडो के अंत से न्यू अनसेंट पैकेट सेंट किया जाता है।


रेनो से अंतर यह है कि नई रेनो ssthresh को तुरंत आधा नहीं करती है, जिससे ाधिक पैकेट हानि होने पर विंडो बहुत कम हो सकती है। यह तेजी से पुनर्प्राप्ति से बाहर नहीं निकलता है और ssthresh को रीसेट नहीं करता है जब तक कि यह सभी डेटा को स्वीकार नहीं करता है।
रेनो से अंतर यह है कि न्यू रेनो ssthresh को इम्मेडिएटली हाफ नहीं करती है, जिससे मल्टीप्ल पैकेट लॉस होने पर विंडो अधिक कम हो सकती है। यह फास्ट रिकवरी से बाहर नहीं निकलता है और ssthresh को रीसेट नहीं करता है जब तक कि यह सभी डेटा को एकनॉलेज नहीं करता है।


पुनः ट्रांसमिशन के बाद, नए स्वीकृत डेटा के दो मामले हैं:
रिट्रांसमिशन के पश्चात, न्यू एकनॉलेजड डेटा के दो केसेस हैं:


* पूर्ण स्वीकृतियाँ: ACK भेजे गए सभी मध्यवर्ती खंडों को स्वीकार करता है, ssthresh को बदला नहीं जा सकता है, cwnd को ssthresh पर सेट किया जा सकता है
* फुल एकनॉलेजमेंट्स: एसीके सेंट किये गए सभी इंटरमीडिएट सेगमेंटों को एकनॉलेज करता है, ssthresh को परिवर्तित नहीं किया जा सकता है, cwnd को ssthresh पर सेट किया जा सकता है।
* आंशिक स्वीकृतियाँ: ACK सभी डेटा को स्वीकार नहीं करता है। इसका मतलब है कि और हानि हो सकती है, यदि अनुमति हो तो पहले अज्ञात खंड को दोबारा प्रसारित करें
* पार्शियल एकनॉलेजमेंट्स: एसीके सभी डेटा को एकनॉलेज नहीं करता है। इसका तात्पर्य है कि लॉस हो सकता है, यदि अनुमति हो तो पहले अनएकनॉलेजड सेगमेंट को रिट्रांसमिट करना है।


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


न्यू रेनो के साथ समस्या तब उत्पन्न होती है जब कोई पैकेट हानि नहीं होती है, बल्कि पैकेट को 3 से अधिक पैकेट अनुक्रम संख्याओं द्वारा पुन: व्यवस्थित किया जाता है। इस मामले में, नई रेनो गलती से तेजी से रिकवरी में प्रवेश करती है। जब पुन: ऑर्डर किया गया पैकेट वितरित किया जाता है, तो डुप्लिकेट और अनावश्यक पुन: ट्रांसमिशन तुरंत भेज दिए जाते हैं।
न्यू रेनो के साथ समस्या तब उत्पन्न होती है जब कोई पैकेट लॉस नहीं होता है, अन्यथा पैकेट को 3 से अधिक पैकेट सीक्वेंस नंबर्स द्वारा रिआर्डरड किया जाता है। इस केस में, न्यू रेनो मिस्टेक्स से फास्ट रिकवरी में एंटर करती है। जब रिऑर्डर किया गया पैकेट डिलीवर किया जाता है, तो डुप्लिकेट और अनावश्यक रिट्रांसमिशन इम्मेडिएटली सेंट कर दिए जाते हैं।


नई रेनो कम पैकेट त्रुटि दर पर SACK के समान ही प्रदर्शन करती है और उच्च त्रुटि दर पर रेनो से काफी बेहतर प्रदर्शन करती है।<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>
न्यू रेनो लो पैकेट एरर रेट पर सैक के समान ही परफॉरमेंस करती है और हाई एरर रेट पर रेनो से अधिक बेटर परफॉर्म करती है।<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|TCP Vegas}}
{{main|टीसीपी वेगास}}


1990 के दशक के मध्य तक, टीसीपी के सभी निर्धारित टाइमआउट और मापी गई राउंड-ट्रिप देरी केवल ट्रांसमिट बफर में अंतिम प्रेषित पैकेट पर आधारित थी। [[एरिज़ोना विश्वविद्यालय]] के शोधकर्ता लैरी पीटरसन और [[लॉरेंस ब्रैक्मो]] ने टीसीपी वेगास की शुरुआत की जिसमें टाइमआउट सेट किए गए थे और ट्रांसमिट बफर में प्रत्येक पैकेट के लिए राउंड-ट्रिप देरी को मापा गया था। इसके अलावा, टीसीपी वेगास कंजेशन विंडो में एडिटिव बढ़ोतरी का उपयोग करता है। विभिन्न टीसीपी के तुलनात्मक अध्ययन में {{abbr|CCA|congestion control algorithm}}एस, टीसीपी क्यूबिक के बाद टीसीपी वेगास सबसे सहज दिखाई दिया।<ref>{{cite web|title=टीसीपी कंजेशन नियंत्रण एल्गोरिदम का प्रदर्शन विश्लेषण|url=http://www.wseas.us/journals/cc/cc-27.pdf|access-date=26 March 2012}}</ref>
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>
 
टीसीपी वेगास को पीटरसन की लेबोरेटरी के बाहर व्यापक रूप से डेप्लॉयड नहीं किया गया था, किंतु [[डीडी-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 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>
टीसीपी हाइब्ला<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|BIC TCP}}
{{main|बीआईसी टीसीपी }}
बाइनरी इनक्रीस कंजेशन कंट्रोल (बीआईसी) उच्च विलंबता वाले हाई-स्पीड नेटवर्क के लिए अनुकूलित सीसीए के साथ टीसीपी कार्यान्वयन है, जिसे लंबे वसा नेटवर्क (एलएफएन) के रूप में जाना जाता है।<ref>{{cite IETF |title=लंबी-विलंबित पथों के लिए टीसीपी एक्सटेंशन|first1=Jacobson |last1=V. |first2=Braden |last2=R.T. |rfc=1072}}</ref> [[लिनक्स कर्नेल]] 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से बीआईसी का उपयोग किया जाता है।{{citation needed|date=March 2020}}
 
बाइनरी इनक्रीस कंजेशन कंट्रोल (बीआईसी) हाई लेटेंसी वाले हाई-स्पीड नेटवर्क के लिए ऑप्टीमाइज़्ड सीसीए के साथ टीसीपी इम्प्लीमेंटेशन है, जिसे लॉन्ग फैट नेटवर्क (एलएफएन) के रूप में जाना जाता है।<ref>{{cite IETF |title=लंबी-विलंबित पथों के लिए टीसीपी एक्सटेंशन|first1=Jacobson |last1=V. |first2=Braden |last2=R.T. |rfc=1072}}</ref> [[लिनक्स कर्नेल]] 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से बीआईसी का उपयोग किया जाता है।
 
=== टीसीपी क्यूबिक ===
{{main|क्यूबिक टीसीपी}}


=== टीसीपी घन ===
क्यूबिक, बीआईसी का लेस एग्रेसिव और अधिक सिस्टेमेटिक डेरीवेटिव है, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन है, जिसमें इवेंट से पूर्व विंडो पर इन्फ्लेक्शन पॉइंट सेट होता है। वर्जन्स 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से क्यूबिक का उपयोग किया जाता है।
{{main|CUBIC TCP}}
CUBIC, BIC का कम आक्रामक और अधिक व्यवस्थित व्युत्पन्न है, जिसमें विंडो अंतिम कंजेशन इवेंट के बाद से समय का क्यूबिक फ़ंक्शन है, जिसमें इवेंट से पहले विंडो पर विभक्ति बिंदु सेट होता है। संस्करण 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से CUBIC का उपयोग किया जाता है।


=== एजाइल-एसडी टीसीपी ===
=== एजाइल-एसडी टीसीपी ===
एजाइल-एसडी लिनक्स-आधारित सीसीए है जिसे वास्तविक लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो चपलता कारक (एएफ) नामक उपन्यास तंत्र का उपयोग करके हानि-आधारित दृष्टिकोण को नियोजित करता है। उच्च गति और कम दूरी के नेटवर्क (कम-बीडीपी नेटवर्क) जैसे स्थानीय क्षेत्र नेटवर्क या फाइबर-ऑप्टिक नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए, खासकर जब लागू बफर आकार छोटा होता है।<ref name="agilesd"/>NS-2 सिम्युलेटर का उपयोग करके इसके प्रदर्शन की तुलना कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए) और क्यूबिक (लिनक्स का डिफ़ॉल्ट) से करके इसका मूल्यांकन किया गया है। यह औसत थ्रूपुट की अवधि में कुल प्रदर्शन को 55% तक सुधारता है।
एजाइल-एसडी लिनक्स-बेस्ड सीसीए है जिसे रियल लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो अजेलिटी फैक्टर (एएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-बेस्ड एप्रोच को नियोजित करता है। हाई स्पीड और कम दूरी के नेटवर्क (कम-बीडीपी नेटवर्क) जैसे लोकल एरिया नेटवर्क या फाइबर-ऑप्टिक नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए, विशेष जब इम्प्लीमेंट बफर साइज़ छोटा होता है।<ref name="agilesd"/>NS-2 सिम्युलेटर का उपयोग करके इसके परफॉरमेंस की कम्पेरिंग कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए) और क्यूबिक (लिनक्स का डिफ़ॉल्ट) से करके इसका मूल्यांकन किया गया है। यह एवरेज थ्रूपुट की अवधि में टोटल परफॉरमेंस को 55% तक इम्प्रूव करता है।


=== टीसीपी वेस्टवुड+ ===
=== टीसीपी वेस्टवुड+ ===
{{main|TCP Westwood plus}}
{{main|टीसीपी वेस्टवुड+}}
वेस्टवुड+ टीसीपी रेनो का केवल-प्रेषक संशोधन है जो वायर्ड और [[ बेतार तंत्र ]] दोनों पर टीसीपी कंजेशन नियंत्रण के प्रदर्शन को अनुकूलित करता है। टीसीपी वेस्टवुड+ कंजेशन एपिसोड के बाद, यानी तीन डुप्लिकेट पावती या टाइमआउट के बाद कंजेशन विंडो और धीमी शुरुआत सीमा निर्धारित करने के लिए एंड-टू-एंड [[बैंडविड्थ (कंप्यूटिंग)]] अनुमान पर आधारित है। पावती पैकेट लौटाने की दर के औसत से बैंडविड्थ का अनुमान लगाया जाता है। टीसीपी रेनो के विपरीत, जो तीन डुप्लिकेट एसीके के बाद कंजेशन विंडो को आँख बंद करके आधा कर देता है, टीसीपी वेस्टवुड+ अनुकूल रूप से धीमी शुरुआत सीमा और कंजेशन विंडो सेट करता है जो कंजेशन के अनुभव के समय उपलब्ध बैंडविड्थ के अनुमान को ध्यान में रखता है। रेनो और न्यू रेनो की तुलना में, वेस्टवुड+ वायरलेस लिंक पर थ्रूपुट को महत्वपूर्ण रूप से बढ़ाता है और वायर्ड नेटवर्क में निष्पक्षता में सुधार करता है।
 
वेस्टवुड+ टीसीपी रेनो का केवल-सेन्डर मॉडिफिकेशन है जो वायर्ड और [[ बेतार तंत्र |वायरलेस नेटवर्क]] दोनों पर टीसीपी कंजेशन कंट्रोल के परफॉरमेंस को ऑप्टीमाइज़्ड करता है। टीसीपी वेस्टवुड+ कंजेशन एपिसोड के पश्चात, अर्थात तीन डुप्लिकेट एकनॉलेजमेंट या टाइमआउट के पश्चात कंजेशन विंडो और स्लो स्टार्ट थ्रेशोल्ड सेट करने के लिए एंड-टू-एंड [[बैंडविड्थ (कंप्यूटिंग)]] अनुमान पर बेस्ड है। एकनॉलेजमेंट पैकेट रिटर्न रेट के एवरेज से बैंडविड्थ का अनुमान लगाया जाता है। टीसीपी रेनो के विपरीत, जो तीन डुप्लिकेट एसीके के पश्चात कंजेशन विंडो को क्लोज्ड करके हाफ कर देता है, टीसीपी वेस्टवुड+ अनुकूल रूप से स्लो स्टार्ट लिमिट और कंजेशन विंडो सेट करता है जो कंजेशन के अनुभव के टाइम उपलब्ध बैंडविड्थ के अनुमान को ध्यान में रखता है। रेनो और न्यू रेनो की कम्पेयर में, वेस्टवुड+ वायरलेस लिंक पर थ्रूपुट को महत्वपूर्ण रूप से बढ़ाता है और वायर्ड नेटवर्क में फेयरनेस में इम्प्रूव करता है।


=== कंपाउंड टीसीपी ===
=== कंपाउंड टीसीपी ===
{{main|Compound TCP}}
{{main|कंपाउंड टीसीपी}}
कंपाउंड टीसीपी, टीसीपी का  [[माइक्रोसॉफ्ट]] कार्यान्वयन है जो [[निष्पक्षता माप]] को ख़राब किए बिना एलएफएन पर अच्छा प्रदर्शन प्राप्त करने के लक्ष्य के साथ, दो अलग-अलग कंजेशन विंडो को  साथ बनाए रखता है। इसे Microsoft [[Windows Vista]] और [[Windows Server 2008]] के बाद से Windows संस्करणों में व्यापक रूप से तैनात किया गया है और इसे पुराने Microsoft Windows संस्करणों के साथ-साथ [[Linux]] में भी पोर्ट किया गया है।


=== टीसीपी आनुपातिक दर में कमी ===
कंपाउंड टीसीपी, टीसीपी का [[माइक्रोसॉफ्ट]] इम्प्लीमेंटेशन है जो [[निष्पक्षता माप|फेयरनेस मेज़रमेंट]] को पुअर किए बिना एलएफएन पर बेटर परफॉरमेंस प्राप्त करने के गोल के साथ, दो भिन्न-भिन्न कंजेशन विंडो को बनाए रखता है। इसे माइक्रोसॉफ्ट [[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]] द्वारा किए गए परीक्षणों में, PRR के परिणामस्वरूप औसत विलंबता में 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>
 
=== टीसीपी प्रोपोरशनल रेट में रिडक्शन ===
टीसीपी प्रोपोरशनल रेट में रिडक्शन (पीआरआर)<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 में Google द्वारा विकसित 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>
बॉटलनेक बैंडविड्थ और राउंड-ट्रिप प्रोपगेशन टाइम (बीबीआर) 2016 में गूगल द्वारा विकसित सीसीए है।<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 ने औसतन 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) की गैर-बीबीआर धाराओं के प्रति निष्पक्षता विवादित है। जबकि Google की प्रस्तुति BBRv1 को CUBIC के साथ अच्छी तरह से सह-अस्तित्व में दिखाती है,<ref name=GOOGBBR/>ज्योफ हस्टन और हॉक, ब्लेस और ज़िटरबार्ट जैसे शोधकर्ताओं ने इसे अन्य धाराओं के लिए अनुचित और स्केलेबल नहीं पाया।<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> सोहेल अब्बासलू एट अल। (C2TCP के लेखक) बताते हैं कि BBRv1 सेलुलर नेटवर्क जैसे गतिशील वातावरण में अच्छा प्रदर्शन नहीं करता है।<ref name="C2TCP-JSAC"/><ref name="C2TCP"/>उन्होंने यह भी दिखाया है कि बीबीआर में अनुचितता का मुद्दा है। उदाहरण के लिए, जब [[CUBIC TCP]] प्रवाह (जो Linux, Android और MacOS में डिफ़ॉल्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल कार्यान्वयन है) नेटवर्क में BBR प्रवाह के साथ सह-अस्तित्व में होता है, तो BBR प्रवाह CUBIC प्रवाह पर हावी हो सकता है और इससे संपूर्ण लिंक बैंडविड्थ प्राप्त कर सकता है। (चित्र 16 देखें <ref name="C2TCP-JSAC"/>).
जब इसे [[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 (BBRv1) की नॉन-बीबीआर स्ट्रीम्स के प्रति फेयरनेस कण्टेण्डेड है। जबकि गूगल का प्रेजेंटेशन BBRv1 को सीयूबीआईसी के साथ वेल को-एक्सिस्टिंग में दर्शाता है,<ref name="GOOGBBR" /> ज्योफ हस्टन और हॉक, ब्लेस और ज़िटरबार्ट जैसे रेसर्चेर्स ने इसे अन्य स्ट्रीम्स के लिए अनफेयर और स्केलेबल नहीं पाया है।<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|सीयूबीआईसी टीसीपी]] फ्लो (जो लिनक्स, एंड्राइड और मैकओएस में डिफ़ॉल्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल इम्प्लीमेंटेशन है) नेटवर्क में बीबीआर फ्लो के साथ कोएक्सिस्ट्स है, तो बीबीआर फ्लो सीयूबीआईसी फ्लो पर प्रभावी हो सकता है और इससे संपूर्ण लिंक बैंडविड्थ प्राप्त कर सकता है। (चित्र 16 देखें <ref name="C2TCP-JSAC" />).


संस्करण 2 CUBIC जैसे हानि-आधारित भीड़ प्रबंधन के साथ संचालन करते समय अनुचितता के मुद्दे से निपटने का प्रयास करता है।<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 द्वारा उपयोग किए गए मॉडल को पैकेट हानि के बारे में जानकारी और स्पष्ट भीड़ अधिसूचना (ECN) से जानकारी शामिल करने के लिए संवर्धित किया गया है।<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 सीयूबीआईसी जैसे लॉस-बेस्ड कंजेशन मैनेजमेंट के साथ ऑपरेट होते टाइम अनफेयरनेस के इश्यूज को सॉल्व करने का प्रयास करता है।<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 कहा जाता है, जो डेटासेंटर-आंतरिक लिंक के लिए अनुकूलित है: यह मुख्य भीड़ नियंत्रण सिग्नल के रूप में नेटवर्क_आरटीटी (रिसीवर देरी को छोड़कर) का उपयोग करता है।<ref name=bbr3/>
वर्जन्स 3 (BBRv3) BBRv2 में दो बग को फिक्स करता है (बैंडविड्थ प्रोबिंग का टाइम से पहले '''समेज़रमेंट्त''' होना, बैंडविड्थ कन्वर्जेन्स) और कुछ परफॉरमेंस ट्यूनिंग करता है। वैरिएंट भी है, जिसे BBR.Swift कहा जाता है, जो डेटासेंटर-इंटरनल लिंक के लिए ऑप्टीमाइज़्ड है: यह मेन कंजेशन कंट्रोल सिग्नल के रूप में नेटवर्क_आरटीटी (एक्सक्लूडिंग रिसीवर डिले) का उपयोग करता है।<ref name="bbr3" />


'''C2TCP'''
'''सी2टीसीपी'''


सेलुलर नियंत्रित विलंब टीसीपी (C2TCP)<ref name="C2TCP-JSAC"/><ref name="C2TCP"/> लचीले एंड-टू-एंड टीसीपी दृष्टिकोण की कमी से प्रेरित था जो नेटवर्क उपकरणों में किसी भी बदलाव की आवश्यकता के बिना विभिन्न अनुप्रयोगों के लिए सेवा की विभिन्न गुणवत्ता आवश्यकताओं को पूरा कर सकता है। C2TCP का लक्ष्य वर्तमान LTE (दूरसंचार) और भविष्य के [[5G]] जैसे अत्यधिक गतिशील वातावरण में [[ आभासी वास्तविकता ]], [[वीडियो कॉन्फ्रेंसिंग]], [[ऑनलाइन गेम]], [[वाहन संचार प्रणाली]] आदि जैसे अनुप्रयोगों की अल्ट्रा-लो [[ विलंबता (इंजीनियरिंग) ]] और उच्च-बैंडविड्थ आवश्यकताओं को पूरा करना है। [[सेल्युलर नेटवर्क]] C2TCP हानि-आधारित टीसीपी (जैसे रेनो, न्यूरेनो, क्यूबिक टीसीपी, [[बीआईसी टीसीपी]], ...) के शीर्ष पर  [[प्लग-इन (कंप्यूटिंग)]] | ऐड-ऑन के रूप में काम करता है, इसे केवल सर्वर-साइड पर स्थापित करना आवश्यक है और पैकेटों के औसत विलंब को अनुप्रयोगों द्वारा निर्धारित वांछित विलंबों तक सीमित कर देता है।
सेलुलर कण्ट्रोल डिले टीसीपी (सी2टीसीपी)<ref name="C2TCP-JSAC"/><ref name="C2TCP"/> फ्लेक्सिबल एंड-टू-एंड टीसीपी एप्रोच की डिक्रीज से प्रेरित था जो नेटवर्क डिवाइस में किसी भी चेंजेस की आवश्यकता के बिना विभिन्न ऍप्लिकेशन्स के लिए सर्विसेज की विभिन्न क्वालिटी आवश्यकताओं को पूर्ण कर सकता है। सी2टीसीपी का गोल करंट एलटीई (टेलीकम्यूनिकेशन) और भविष्य के [[5G]] जैसे अत्यधिक डायनामिक एनवायरनमेंट में [[ आभासी वास्तविकता |वर्चुअल रियलिटी]], [[वीडियो कॉन्फ्रेंसिंग]], [[ऑनलाइन गेम]], [[वाहन संचार प्रणाली|वेहिटोटलर कम्युनिकेशन सिस्टम]] आदि जैसे ऍप्लिकेशन्स की अल्ट्रा-लो [[ विलंबता (इंजीनियरिंग) |लेटेंसी (इंजीनियरिंग)]] और हाई-बैंडविड्थ आवश्यकताओं को पूर्ण करना है। [[सेल्युलर नेटवर्क]] सी2टीसीपी लॉस-बेस्ड टीसीपी के टॉप पर [[प्लग-इन (कंप्यूटिंग)]] (जैसे रेनो, न्यूरेनो, क्यूबिक टीसीपी, [[बीआईसी टीसीपी]], ...) ऐड-ऑन के रूप में कार्य करता है, इसे केवल सर्वर-साइड पर स्थापित करना आवश्यक है और पैकेटों के एवरेज डिले को ऍप्लिकेशन्स द्वारा सेट डिसाएर्ड डिलेस तक सीमित कर देता है।


[[न्यूयॉर्क विश्वविद्यालय]] के शोधकर्ता<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> दिखाया गया कि C2TCP विभिन्न अत्याधुनिक टीसीपी योजनाओं के विलंब और विलंब-भिन्नता प्रदर्शन से बेहतर प्रदर्शन करता है। उदाहरण के लिए, उन्होंने दिखाया कि BBR, CUBIC और वेस्टवुड की तुलना में, C2TCP विभिन्न सेलुलर नेटवर्क वातावरणों पर पैकेट की औसत देरी को क्रमशः 250%, 900% और 700% कम कर देता है।<ref name="C2TCP-JSAC" />
[[न्यूयॉर्क विश्वविद्यालय]] के रिसर्च<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> में दिखाया गया है कि सी2टीसीपी विभिन्न अत्याधुनिक टीसीपी योजनाओं के डिले और डिले वेरिएशन परफॉरमेंस से आउट परफॉर्म करता है। उदाहरण के लिए, उन्होंने दिखाया कि बीबीआर, सीयूबीआईसी और वेस्टवुड के कंपैरिजन में, सी2टीसीपी विभिन्न सेलुलर नेटवर्क एनवायरनमेंटों पर पैकेट की एवरेज डिले को क्रमशः 250%, 900% और 700% कम कर देता है।<ref name="C2TCP-JSAC" />


'''इलास्टिक-टीसीपी'''
'''इलास्टिक-टीसीपी'''


क्लाउड कंप्यूटिंग के समर्थन में उच्च-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रस्ताव दिया गया था। यह Linux-आधारित CCA है जिसे Linux कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो विंडो-सहसंबंधित वेटिंग फ़ंक्शन (डब्ल्यूडब्ल्यूएफ) नामक उपन्यास तंत्र का उपयोग करके हानि-विलंब-आधारित दृष्टिकोण को नियोजित करता है। इसमें मानव ट्यूनिंग की आवश्यकता के बिना विभिन्न नेटवर्क विशेषताओं से निपटने के लिए उच्च स्तर की लोच है। एनएस-2 सिम्युलेटर और टेस्टबेड का उपयोग करके इसके प्रदर्शन की तुलना कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए), क्यूबिक (लिनक्स के लिए डिफ़ॉल्ट) और टीसीपी-बीबीआर (Google द्वारा उपयोग किए जाने वाले लिनक्स 4.9 का डिफ़ॉल्ट) से तुलना करके की गई है। इलास्टिक-टीसीपी औसत थ्रूपुट, हानि अनुपात और देरी के मामले में कुल प्रदर्शन में उल्लेखनीय सुधार करता है।<ref name="elastictcp" />
क्लाउड कंप्यूटिंग के सपोर्ट में हाई-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रपोजल दिया गया था। यह लिनक्स-बेस्ड सीसीए है जिसे लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो विंडो-कोरिलेटेड वेटिंग फ़ंक्शन (डब्ल्यूडब्ल्यूएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-डिले-बेस्ड एप्रोच को नियोजित करता है। इसमें ह्यूमन ट्यूनिंग की आवश्यकता के बिना विभिन्न नेटवर्क कैरेक्टरिस्टिक से डील करने के लिए हाई लेवल की इलास्टिसिटी है। एन्यूस-2 सिम्युलेटर और टेस्टबेड का उपयोग करके इसके परफॉरमेंस का इवैल्यूएशन कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए), क्यूबिक (लिनक्स के लिए डिफ़ॉल्ट) और टीसीपी-बीबीआर (गूगल द्वारा उपयोग किए जाने वाले लिनक्स 4.9 का डिफ़ॉल्ट) से कम्पेर करके किया गया है। इलास्टिक-टीसीपी एवरेज थ्रूपुट, लॉस रेशियो और डिले के केस में परफॉरमेंस इम्प्रूव करता है।<ref name="elastictcp" />


'''एनएटीसीपी'''
'''एनएटीसीपी'''


सोहेल अब्बासलू एट अल। प्रस्तावित NATCP (नेटवर्क-असिस्टेड टीसीपी){{sfn|Abbasloo|Xu|Chao|Shi|2019}} {{According to whom|controversial|date=October 2021}} टीसीपी डिज़ाइन [[मल्टी-एक्सेस एज कंप्यूटिंग|मल्टी-्सेस एज कंप्यूटिंग]] (एमईसी) को लक्षित करता है। NATCP का मुख्य विचार यह है कि यदि नेटवर्क की विशेषताओं के बारे में पहले से पता होता, तो TCP को अलग तरह से डिज़ाइन किया गया होता। इसलिए, NATCP टीसीपी के प्रदर्शन को इष्टतम प्रदर्शन के करीब पहुंचाने के लिए वर्तमान एमईसी-आधारित सेलुलर आर्किटेक्चर में उपलब्ध सुविधाओं और गुणों को नियोजित करता है। NATCP नेटवर्क से पास में स्थित सर्वर पर आउट-ऑफ-बैंड फीडबैक का उपयोग करता है। नेटवर्क से फीडबैक, जिसमें सेलुलर ्सेस लिंक की क्षमता और नेटवर्क का न्यूनतम आरटीटी शामिल है, सर्वर को उनकी भेजने की दरों को समायोजित करने के लिए मार्गदर्शन करता है। जैसा कि प्रारंभिक परिणाम दिखाते हैं, NATCP अत्याधुनिक टीसीपी योजनाओं से बेहतर प्रदर्शन करता है।{{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>
सोहेल अब्बासलू एट अल प्रोपोसड एनएटीसीपी (नेटवर्क-असिस्टेड टीसीपी){{sfn|Abbasloo|Xu|Chao|Shi|2019}} {{According to whom|कंट्रोवर्सिअल|date=October 2021}} टीसीपी डिज़ाइन [[मल्टी-एक्सेस एज कंप्यूटिंग|मल्टी-्एक्सेस एज कंप्यूटिंग]] (एमईसी) को टारगेट करता है। एनएटीसीपी का मेन आईडिया यह है कि यदि नेटवर्क की कैरेक्टरिस्टिक के विषय में पहले से ज्ञात होता, तो टीसीपी को भिन्न प्रकार से डिज़ाइन किया गया होता। इसलिए, एनएटीसीपी टीसीपी के परफॉरमेंस को ऑप्टीमल परफॉरमेंस के नियर पहुंचाने के लिए करंट एमईसी-बेस्ड सेलुलर आर्किटेक्वेरिएबल में फीचर्स और प्रॉपर्टीज को नियोजित करता है। एनएटीसीपी नेटवर्क से नियर बाय लोकेटेड सर्वर पर आउट-ऑफ-बैंड फीडबैक का उपयोग करता है। नेटवर्क से फीडबैक, जिसमें सेलुलर एक्सेस लिंक की कैपेबिलिटी और नेटवर्क का मिनिमम आरटीटी सम्मिलित है, सर्वर को उनकी कैपेबिलिटी रेटों को समायोजित करने के लिए गाइड करता है। जैसा कि प्रारंभिक परिणाम दिखाते हैं, एनएटीसीपी अत्याधुनिक टीसीपी योजनाओं से बेटर परफॉर्म करता है।{{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 305: Line 312:
* एचएसटीसीपी-एलपी<ref name="ece.rice.edu">{{cite web|url=http://www.ece.rice.edu/networks/TCP-LP/|title=Rice Networks Group}}</ref>
* एचएसटीसीपी-एलपी<ref name="ece.rice.edu">{{cite web|url=http://www.ece.rice.edu/networks/TCP-LP/|title=Rice Networks Group}}</ref>
* [[टीसीपी-इलिनोइस]]
* [[टीसीपी-इलिनोइस]]
* टीसीपी-एलपी<ref name="ece.rice.edu"/>* [[ टीसीपी बोरी ]]
* [[ टीसीपी बोरी |टीसीपी एलपी]]
* [[स्केलेबल टीसीपी]]
* [[स्केलेबल टीसीपी]]
* टीसीपी वेनो<ref>{{cite web|url=https://www.ie.cuhk.edu.hk/fileadmin/staff_upload/soung/Journal/J3.pdf|title=TCP Veno: TCP Enhancement for Transmission over Wireless Access Networks|publisher=IEEE Journal on Selected Areas in Communication}}</ref>
* टीसीपी वेनो<ref>{{cite web|url=https://www.ie.cuhk.edu.hk/fileadmin/staff_upload/soung/Journal/J3.pdf|title=TCP Veno: TCP Enhancement for Transmission over Wireless Access Networks|publisher=IEEE Journal on Selected Areas in Communication}}</ref>
* [[टीसीपी वेस्टवुड]]
* [[टीसीपी वेस्टवुड]]
*्ससीपी<ref>{{cite web|url=http://www.isi.edu/isi-xcp/|title=XCP @ ISI}}</ref>
*एक्ससीपी<ref>{{cite web|url=http://www.isi.edu/isi-xcp/|title=XCP @ ISI}}</ref>
* हाँ-टीसीपी<ref>{{cite web |url=http://www.csc.lsu.edu/~sjpark/cs7601/4-YeAH_TCP.pdf |title=हाई स्पीड टीपीसी|website=www.csc.lsu.edu}}</ref>
* येअह-टीसीपी<ref>{{cite web |url=http://www.csc.lsu.edu/~sjpark/cs7601/4-YeAH_TCP.pdf |title=हाई स्पीड टीपीसी|website=www.csc.lsu.edu}}</ref>
* टीसीपी-फिट<ref>{{cite web |url=http://media.cs.tsinghua.edu.cn/~multimedia/tcp-fit/ |title=संग्रहीत प्रति|access-date=2011-03-05 |archive-url=https://web.archive.org/web/20110403142334/http://media.cs.tsinghua.edu.cn/~multimedia/tcp-fit/ |archive-date=3 April 2011 |df=dmy-all }}</ref>
* टीसीपी-फिट<ref>{{cite web |url=http://media.cs.tsinghua.edu.cn/~multimedia/tcp-fit/ |title=संग्रहीत प्रति|access-date=2011-03-05 |archive-url=https://web.archive.org/web/20110403142334/http://media.cs.tsinghua.edu.cn/~multimedia/tcp-fit/ |archive-date=3 April 2011 |df=dmy-all }}</ref>
* समय के सामान्यीकृत अंतराल के साथ भीड़भाड़ से बचाव (CANIT)<ref>{{cite journal |doi=10.1145/605521.605530 |title= टीसीपी प्रोटोकॉल में CANIT एल्गोरिदम का एक विश्लेषणात्मक अध्ययन|journal= ACM SIGMETRICS Performance Evaluation Review|volume= 30|issue= 3|page= 20|year= 2002|last1= Benaboud|first1= H.|last2= Berqia|first2= A.|last3= Mikou|first3= N.|s2cid= 6637174}}</ref>
* टाइम के जनरलाइज्ड इंटरवल के साथ कंजेशन कंट्रोल से एवॉइडेन्स (सीएएनआईटी)<ref>{{cite journal |doi=10.1145/605521.605530 |title= टीसीपी प्रोटोकॉल में CANIT एल्गोरिदम का एक विश्लेषणात्मक अध्ययन|journal= ACM SIGMETRICS Performance Evaluation Review|volume= 30|issue= 3|page= 20|year= 2002|last1= Benaboud|first1= H.|last2= Berqia|first2= A.|last3= Mikou|first3= N.|s2cid= 6637174}}</ref>
* टीसीपी/आईपी नेटवर्क के लिए आनुवंशिक एल्गोरिदम पर आधारित गैर-रेखीय तंत्रिका नेटवर्क भीड़ नियंत्रण<ref>{{cite book|chapter=Nonlinear Neural Network Congestion Control Based on Genetic Algorithm for TCP/IP Networks|last=Rouhani|first=Modjtaba|doi=10.1109/CICSyN.2010.21|title=2010 2nd International Conference on Computational Intelligence, Communication Systems and Networks|pages=1–6|year=2010|isbn=978-1-4244-7837-8|s2cid=15126416}}</ref>
* टीसीपी/आईपी नेटवर्क के लिए जेनेटिक एल्गोरिदम पर बेस्ड नॉन-लीनियर नेटवर्क कंजेशन कंट्रोल<ref>{{cite book|chapter=Nonlinear Neural Network Congestion Control Based on Genetic Algorithm for TCP/IP Networks|last=Rouhani|first=Modjtaba|doi=10.1109/CICSyN.2010.21|title=2010 2nd International Conference on Computational Intelligence, Communication Systems and Networks|pages=1–6|year=2010|isbn=978-1-4244-7837-8|s2cid=15126416}}</ref>
*डी-टीसीपी<ref>{{Cite book|last1=Kanagarathinam|first1=Madhan Raj|last2=Singh|first2=Sukhdeep|last3=Sandeep|first3=Irlanki|last4=Roy|first4=Abhishek|last5=Saxena|first5=Navrati|title=2018 15th IEEE Annual Consumer Communications & Networking Conference (CCNC) |chapter=D-TCP: Dynamic TCP congestion control algorithm for next generation mobile networks |date=January 2018|chapter-url=https://ieeexplore.ieee.org/document/8319185|pages=1–6|doi=10.1109/CCNC.2018.8319185|isbn=978-1-5386-4790-5 |s2cid=3991163 }}</ref>
*डी-टीसीपी<ref>{{Cite book|last1=Kanagarathinam|first1=Madhan Raj|last2=Singh|first2=Sukhdeep|last3=Sandeep|first3=Irlanki|last4=Roy|first4=Abhishek|last5=Saxena|first5=Navrati|title=2018 15th IEEE Annual Consumer Communications & Networking Conference (CCNC) |chapter=D-TCP: Dynamic TCP congestion control algorithm for next generation mobile networks |date=January 2018|chapter-url=https://ieeexplore.ieee.org/document/8319185|pages=1–6|doi=10.1109/CCNC.2018.8319185|isbn=978-1-5386-4790-5 |s2cid=3991163 }}</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=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 संस्करण में डिफ़ॉल्ट कार्यान्वयन को फिर से CUBIC में बदल दिया गया। फ्रीबीएसडी न्यू रेनो को डिफ़ॉल्ट एल्गोरिदम के रूप में उपयोग करता है। हालाँकि, यह कई अन्य विकल्पों का समर्थन करता है।<ref>{{cite web|url=http://forums.freebsd.org/showthread.php?t=22396|title=पांच नए टीसीपी कंजेशन नियंत्रण एल्गोरिदम परियोजना का सारांश|date=8 March 2011 }}</ref>
#टीसीपी न्यू रेनो सबसे सामान्यतः इम्प्लीमेंट किया जाने वाला एल्गोरिदम था, सैक सपोर्ट अधिक कॉमन है और रेनो/न्यू रेनो का एक्सटेंड है। अधिकांश अन्य कंपेटिंग प्रपोजल हैं जिन्हें अभी भी मूल्यांकन की आवश्यकता है। 2.6.8 से प्रारंभ होकर लिनक्स कर्नेल ने डिफ़ॉल्ट इम्प्लीमेंटेशन को न्यू रेनो से बीआईसी टीसीपी में परिवर्तित कर दिया। 2.6.19 वर्जन्स में डिफ़ॉल्ट इम्प्लीमेंटेशन को फिर से सीयूबीआईसी में परिवर्तित कर दिया गया। फ्रीबीएसडी न्यू रेनो को डिफ़ॉल्ट एल्गोरिदम के रूप में उपयोग करता है। चूँकि, यह कई अन्य चॉइसेस का सपोर्ट करता है।<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>
[[ज़ेटा-टीसीपी]] लेटेंसी और लॉस रेट दोनों उपायों से कंजेशन को डिटेक्ट करता है। गुडपुट ज़ेटा-टीसीपी को मैक्सिमम करने के लिए और कंजेशन कंट्रोल की संभावना के बेसिस पर भिन्न-भिन्न कंजेशन विंडो बैकऑफ़ स्ट्रेटेजीज को इम्प्लीमेंट करता है। इसमें पैकेट के लॉस का एक़ुरेटेली डिटेक्ट करने के लिए इम्प्रोवेमेन्ट्स भी हैं, जिससे रिट्रांसमिशन टाइमआउट रिट्रांसमिशन से बचा जा सकता है; और इनबाउंड (डाउनलोड) ट्रैफ़िक को फ़ास्ट और कण्ट्रोल कर सकता है।<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>


== नेटवर्क जागरूकता द्वारा वर्गीकरण ==
== नेटवर्क अवेयरनेस द्वारा क्लासिफिकेशन ==
सीसीए को नेटवर्क जागरूकता के संबंध में वर्गीकृत किया जा सकता है, जिसका अर्थ है कि ये एल्गोरिदम नेटवर्क की स्थिति के बारे में किस हद तक जागरूक हैं। इसमें तीन प्राथमिक श्रेणियां शामिल हैं: ब्लैक बॉक्स, ग्रे बॉक्स और ग्रीन बॉक्स।<ref>{{cite journal|title=पैकेट नेटवर्क में भीड़ नियंत्रण के दृष्टिकोण|date=January 2007|url=http://utopia.duth.gr/~emamatas/jie2007.pdf|number=1|author=Lefteris Mamatas|author2=Tobias Harks|author3=Vassilis Tsaoussidis|journal=Journal of Internet Engineering|volume=1|archive-url=https://web.archive.org/web/20140221123729/http://utopia.duth.gr/~emamatas/jie2007.pdf|archive-date=2014-02-21}}</ref>
सीसीए को नेटवर्क अवेयरनेस के संबंध में क्लासिफाइड किया जा सकता है, जिसका अर्थ है कि ये एल्गोरिदम नेटवर्क के स्टेट के विषय में किस लिमिट तक अवेयर हैं। इसमें तीन प्राइमरी कैटेगरीज: ब्लैक बॉक्स, ग्रे बॉक्स और ग्रीन बॉक्स सम्मिलित हैं।<ref>{{cite journal|title=पैकेट नेटवर्क में भीड़ नियंत्रण के दृष्टिकोण|date=January 2007|url=http://utopia.duth.gr/~emamatas/jie2007.pdf|number=1|author=Lefteris Mamatas|author2=Tobias Harks|author3=Vassilis Tsaoussidis|journal=Journal of Internet Engineering|volume=1|archive-url=https://web.archive.org/web/20140221123729/http://utopia.duth.gr/~emamatas/jie2007.pdf|archive-date=2014-02-21}}</ref>ब्लैक बॉक्स एल्गोरिदम कंजेशन कंट्रोल के ब्लाइंड मेथड्स को ऑफर करते हैं। वे केवल कंजेशन पर प्राप्त बाइनरी फीडबैक पर कार्य करते हैं और जिस नेटवर्क को वे मैनेज करते हैं उनके स्टेट के विषय में कोई इंफॉर्मेशन नहीं रखते हैं।
ब्लैक बॉक्स एल्गोरिदम भीड़ नियंत्रण के अंधी तरीकों की पेशकश करते हैं। वे केवल कंजेशन पर प्राप्त बाइनरी फीडबैक पर काम करते हैं और जिस नेटवर्क को वे प्रबंधित करते हैं उसकी स्थिति के बारे में कोई जानकारी नहीं रखते हैं।


ग्रे बॉक्स एल्गोरिदम का उपयोग करें {{Clarify|text=time-instances|reason=what does this mean?|date=December 2021}} बैंडविड्थ, प्रवाह विवाद और नेटवर्क स्थितियों के अन्य ज्ञान के माप और अनुमान प्राप्त करने के लिए।
{{Clarify|text=टाइम इन्सटेंसेस|reason=what does this mean?|date=December 2021}} बैंडविड्थ, फ्लो कंटेन्शन और नेटवर्क स्टेट के अन्य नॉलेज, मेज़रमेंट और अनुमान प्राप्त करने के लिए ग्रे बॉक्स एल्गोरिदम का उपयोग किया जाना चाहिए।


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


=== ब्लैक बॉक्स ===
=== ब्लैक बॉक्स ===
* [[हाईस्पीड-टीसीपी]]<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>
* [[एआईएमडी-एफसी]] (फास्ट से कन्वर्जेन्स के साथ एड्डीटिव इनक्रीस [[आनुपातिक नियंत्रण|मल्टीप्लिकेटिव]] डिक्रीज), एआईएमडी का इम्प्रूवमेंट है।<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 प्रोटोकॉल|एसआईएमडी प्रोटोकॉल]]
* [[GAIMD]]
* [[GAIMD|जीएआईएमडी]]


=== ग्रे बॉक्स ===
=== ग्रे बॉक्स ===
* [[टीसीपी वेगास]] - कतार में देरी का अनुमान लगाता है, और विंडो को रैखिक रूप से बढ़ाता या घटाता है ताकि नेटवर्क में प्रति प्रवाह पैकेट की  स्थिर संख्या कतार में रहे। वेगास आनुपातिक निष्पक्षता लागू करता है।
* [[टीसीपी वेगास]]- क्वेउंग डिले में डिले का अनुमान लगाता है, और विंडो को लीनियर रूप से इनक्रीस या डीक्रीज़ करता है जिससे नेटवर्क में पर फ्लो पैकेट के कांस्टेंट नंबर क्वेउंग डिले में रहे। वेगास प्रोपोरशनल फेयरनेस इम्प्लीमेंट करता है।
* फास्ट टीसीपी - वेगास के समान संतुलन प्राप्त करता है, लेकिन रैखिक वृद्धि के बजाय [[आनुपातिक नियंत्रण]] का उपयोग करता है, और स्थिरता सुनिश्चित करने के उद्देश्य से बैंडविड्थ बढ़ने पर जानबूझकर लाभ को कम कर देता है।
* फास्ट टीसीपी- वेगास के समान इक्विलिब्रियम प्राप्त करता है, किंतु लीनियर इनक्रीस के अतिरिक्त [[आनुपातिक नियंत्रण|प्रोपोरशनल कंट्रोल]] का उपयोग करता है, और स्टेबिलिटी सुनिश्चित करने के ऐंम से बैंडविड्थ बढ़ने पर एडवांटेज को कम कर देता है।
* टीसीपी बीबीआर - कतार में देरी का अनुमान लगाता है लेकिन तेजी से वृद्धि का उपयोग करता है। निष्पक्षता और विलंब को कम करने के लिए जानबूझकर समय-समय पर इसे धीमा किया जाता है।
* टीसीपी बीबीआर- क्वेउंग डिले में डिले का अनुमान लगाता है किंतु एक्सपोनेंशियल इनक्रीस का उपयोग करता है। फेयरनेस और डिले को कम करने के लिए इंटेंसीअली टाइम पर इसे स्लो किया जाता है।
* [[टीसीपी-वेस्टवुड]] (टीसीपीडब्ल्यू) - नुकसान के कारण विंडो बैंडविड्थ-विलंब उत्पाद के प्रेषक के अनुमान पर रीसेट हो जाती है (एसीके प्राप्त करने की देखी गई दर से गुणा किया गया सबसे छोटा आरटीटी)।<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>
* [[टीसीपी-रियल]]
* [[टीसीपी-रियल]]
* [[टीसीपी-जर्सी]]
* [[टीसीपी-जर्सी]]


=== हरा डिब्बा ===
=== ग्रीन बॉक्स ===
* [[बिमोडल तंत्र]] - बिमोडल कंजेशन बचाव और नियंत्रण तंत्र।
* [[बिमोडल तंत्र|बिमोडल सिस्टम]]- बिमोडल कंजेशन एवॉइडेन्स और कंट्रोल सिस्टम।
* राउटर्स द्वारा कार्यान्वित सिग्नलिंग विधियाँ
* राउटर्स द्वारा इम्प्लीमेंटेड सिग्नलिंग मेथड्स
** [[रैंडम अर्ली डिटेक्शन]] (RED) राउटर की कतार के आकार के अनुपात में पैकेट को बेतरतीब ढंग से गिराता है, जिससे कुछ प्रवाह में गुणक कमी आती है।
** [[रैंडम अर्ली डिटेक्शन]] (रेड) राउटर की क्वेउंग डिले के साइज़ के रेशियो में पैकेट को रैंडम्ली ड्राप करता है, जिससे कुछ फ्लो में मल्टिप्लिकेटिव डिक्रीज आती है।
** स्पष्ट भीड़ अधिसूचना (ईसीएन)
** एक्सप्लिसिट कंजेशन नोटिफिकेशन (ईसीएन)
* नेटवर्क-सहायता प्राप्त भीड़ नियंत्रण
* नेटवर्क-असिस्ट कंजेशन कंट्रोल
** एनएटीसीपी{{sfn|Abbasloo|Xu|Chao|Shi|2019}} - नेटवर्क-असिस्टेड टीसीपी नेटवर्क के न्यूनतम आरटीटी और सेल्युलर ्सेस लिंक की क्षमता को इंगित करने वाले आउट-ऑफ-बैंड स्पष्ट फीडबैक का उपयोग करता है।
** एन्यूटीसीपी{{sfn|Abbasloo|Xu|Chao|Shi|2019}} - नेटवर्क-असिस्टेड टीसीपी नेटवर्क के मिनिमम आरटीटी और सेल्युलर एक्सेस लिंक की कैपेबिलिटी को इंडिकेट करने वाले आउट-ऑफ-बैंड फीडबैक का उपयोग करता है।
**वैरिएबल-स्ट्रक्चर कंजेशन कंट्रोल प्रोटोकॉल (वीसीपी) कंजेशन की नेटवर्क स्थिति पर स्पष्ट रूप से प्रतिक्रिया देने के लिए दो ईसीएन बिट्स का उपयोग करता है। इसमें एंड होस्ट साइड एल्गोरिदम भी शामिल है।
**वैरिएबल-स्ट्रक्वेरिएबल कंजेशन कंट्रोल प्रोटोकॉल (वीसीपी) कंजेशन की नेटवर्क स्टेट पर एक्सप्लीसिटली फीडबैक देने के लिए दो ईसीएन बिट्स का उपयोग करता है। इसमें एंड होस्ट साइड एल्गोरिदम भी सम्मिलित है।


निम्नलिखित एल्गोरिदम को टीसीपी पैकेट संरचना में कस्टम फ़ील्ड जोड़ने की आवश्यकता होती है:
निम्नलिखित एल्गोरिदम को टीसीपी पैकेट स्ट्रक्चर में कस्टम फ़ील्ड ऐड करने की आवश्यकता होती है:
* [[स्पष्ट नियंत्रण प्रोटोकॉल]] (्ससीपी) - ्ससीपी पैकेट में फीडबैक फ़ील्ड के साथ कंजेशन हेडर होता है, जो प्रेषक की कंजेशन विंडो में वृद्धि या कमी का संकेत देता है। XCP राउटर दक्षता और निष्पक्षता के लिए फीडबैक मान को स्पष्ट रूप से निर्धारित करते हैं।<ref>{{Cite book|last1=Katabi|first1=Dina|last2=Handley|first2=Mark|last3=Rohrs|first3=Charlie|title=Proceedings of the 2002 conference on Applications, technologies, architectures, and protocols for computer communications |chapter=Congestion control for high bandwidth-delay product networks |date=2002|page=89|location=New York, New York, USA|publisher=ACM Press|doi=10.1145/633025.633035|isbn=1-58113-570-X|doi-access=free}}</ref>
* [[स्पष्ट नियंत्रण प्रोटोकॉल|एक्सप्लिसिट कंट्रोल प्रोटोकॉल]] (एक्ससीपी)- एक्ससीपी पैकेट में फीडबैक फ़ील्ड के साथ कंजेशन हेडर होता है, जो सेन्डर की कंजेशन विंडो में इनक्रीस या डिक्रीज का संकेत देता है। एक्ससीपी राउटर एफिशिएंसी और फेयरनेस के लिए फीडबैक मान को एक्सप्लीसिटली सेट करते हैं।<ref>{{Cite book|last1=Katabi|first1=Dina|last2=Handley|first2=Mark|last3=Rohrs|first3=Charlie|title=Proceedings of the 2002 conference on Applications, technologies, architectures, and protocols for computer communications |chapter=Congestion control for high bandwidth-delay product networks |date=2002|page=89|location=New York, New York, USA|publisher=ACM Press|doi=10.1145/633025.633035|isbn=1-58113-570-X|doi-access=free}}</ref>
* [[मैक्सनेट]] - हेडर फ़ील्ड का उपयोग करता है, जो प्रवाह के पथ पर किसी भी राउटर के अधिकतम भीड़ स्तर को वहन करता है। दर इस अधिकतम भीड़ के फ़ंक्शन के रूप में निर्धारित की जाती है, जिसके परिणामस्वरूप [[अधिकतम-न्यूनतम निष्पक्षता]] होती है।<ref>{{cite web|url=http://netlab.caltech.edu/maxnet/|title=मैक्सनेट--मैक्स-मिन फेयर, स्थिर स्पष्ट सिग्नलिंग कंजेशन नियंत्रण|website=netlab.caltech.edu}}</ref>
* [[मैक्सनेट]]- सिंगल हेडर फ़ील्ड का उपयोग करता है, जो फ्लो के पाथ पर किसी भी राउटर के मैक्सिमम कंजेशन लेवल को कैरी करता है। रेट इस मैक्सिमम कंजेशन के फ़ंक्शन के रूप में सेट की जाती है, जिसके परिणामस्वरूप [[अधिकतम-न्यूनतम निष्पक्षता|मैक्सिमम-मिनिमम फेयरनेस]] होती है।<ref>{{cite web|url=http://netlab.caltech.edu/maxnet/|title=मैक्सनेट--मैक्स-मिन फेयर, स्थिर स्पष्ट सिग्नलिंग कंजेशन नियंत्रण|website=netlab.caltech.edu}}</ref>
* [[जेटमैक्स]], मैक्सनेट की तरह, केवल अधिकतम कंजेशन सिग्नल पर प्रतिक्रिया करता है, लेकिन अन्य ओवरहेड फ़ील्ड भी वहन करता है।
* [[जेटमैक्स]], मैक्सनेट के जैसे, केवल मैक्सिमम कंजेशन सिग्नल पर फीडबैक करता है, किंतु अन्य ओवरहेड फ़ील्ड भी कैरी करता है।


== लिनक्स उपयोग ==
== लिनक्स उपयोग ==
* बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006)
* बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006)
* संस्करण 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से CUBIC का उपयोग किया जाता है। (नवंबर 2006)
* वर्जन 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से सीयूबीआईसी का उपयोग किया जाता है। (नवंबर 2006)
* पीआरआर को संस्करण 3.2 के बाद से हानि पुनर्प्राप्ति में सुधार के लिए लिनक्स कर्नेल में शामिल किया गया है। (जनवरी 2012)
* पीआरआर को वर्जन 3.2 के पश्चात से लॉस रिकवरी में इम्प्रूवमेंट के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (जनवरी 2012)
* BBRv1 को संस्करण 4.9 के बाद से मॉडल-आधारित कंजेशन नियंत्रण को सक्षम करने के लिए लिनक्स कर्नेल में शामिल किया गया है। (दिसंबर 2016)
* BBRv1 को वर्जन 4.9 के पश्चात से मॉडल-बेस्ड कंजेशन कंट्रोल को इनेबल करने के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (दिसंबर 2016)


== यह भी देखें ==
== यह भी देखें ==
* {{section link|Transmission Control Protocol|Congestion control|Development}}
* {{section link|ट्रांसमिशन कंट्रोल प्रोटोकॉल|कंजेशन कंट्रोल|डेवलपमेंट}}
* {{section link|Network congestion|Mitigation}}
* {{section link|नेटवर्क कंजेशन|मिटिगेशन}}
* [[कम अतिरिक्त विलंब पृष्ठभूमि परिवहन]] (LEDBAT)
* [[कम अतिरिक्त विलंब पृष्ठभूमि परिवहन|लो एक्स्ट्रा डिले बैकग्राउंड ट्रांसपोर्ट]] (LEDBAT)


== टिप्पणियाँ ==
== टिप्पणियाँ ==
{{notelist}}
{{notelist}}


== संदर्भ ==
== संरेट्भ ==
{{reflist|refs=
{{reflist|refs=
<ref name="chui1989">{{cite journal|last=Chiu|first=Dah-Ming|author2=Raj Jain|title=Analysis of increase and decrease algorithms for congestion avoidance in computer networks|journal=Computer Networks and ISDN Systems|year=1989|volume=17|pages=1–14|doi=10.1016/0169-7552(89)90019-6|citeseerx=10.1.1.136.8108}}</ref>
<ref name="chui1989">{{cite journal|last=Chiu|first=Dah-Ming|author2=Raj Jain|title=Analysis of increase and decrease algorithms for congestion avoidance in computer networks|journal=Computer Networks and ISDN Systems|year=1989|volume=17|pages=1–14|doi=10.1016/0169-7552(89)90019-6|citeseerx=10.1.1.136.8108}}</ref>
Line 387: Line 393:
}}
}}


'''स्रोत'''
'''सोर्स'''
* {{cite book |title=कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण|last1=Kurose |first1=James |last2=Ross |first2=Keith |author-link=Jim Kurose |year=2008 |edition=4th |publisher=Addison Wesley |isbn=978-0-13-607967-5 }}
* {{cite book |title=कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण|last1=Kurose |first1=James |last2=Ross |first2=Keith |author-link=Jim Kurose |year=2008 |edition=4th |publisher=Addison Wesley |isbn=978-0-13-607967-5 }}
* {{cite book |title=कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण|last1=Kurose |first1=James |last2=Ross |first2=Keith |author-link=Jim Kurose |date=2012 |edition=6th |publisher=Pearson |isbn=978-0-13-285620-1}}
* {{cite book |title=कंप्यूटर नेटवर्किंग: एक ऊपर से नीचे का दृष्टिकोण|last1=Kurose |first1=James |last2=Ross |first2=Keith |author-link=Jim Kurose |date=2012 |edition=6th |publisher=Pearson |isbn=978-0-13-285620-1}}
Line 419: Line 425:
  | access-date  = 2010-05-01
  | access-date  = 2010-05-01
}}
}}
* [http://www.tcpipguide.com/free/t_TCPCongestionHandlingandCongestionAvoidanceAlgorit-3.htm TCP Congestion Handling and Congestion Avoidance Algorithms]{{snd}} The TCP/IP Guide
* [http://www.tcpipguide.com/free/t_TCPCongestionHandlingandCongestionAvoidanceAlgorit-3.htm टीसीपी Congestion Handling and Congestion Avoidance Algorithms]{{snd}} The टीसीपी/IP Guide
[[Category: टीसीपी भीड़ नियंत्रण| टीसीपी भीड़ नियंत्रण]] [[Category: प्रवाह नियंत्रण (डेटा)]] [[Category: नेटवर्क प्रदर्शन]]  
[[Category: टीसीपी भीड़ नियंत्रण| टीसीपी भीड़ नियंत्रण]] [[Category: प्रवाह नियंत्रण (डेटा)]] [[Category: नेटवर्क प्रदर्शन]]  


Line 426: Line 432:
[[Category: Machine Translated Page]]
[[Category: Machine Translated Page]]
[[Category:Created On 16/08/2023]]
[[Category:Created On 16/08/2023]]
[[Category:Vigyan Ready]]

Latest revision as of 07:28, 13 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]

निम्नलिखित प्रॉपर्टीज के अनुसार संभावित क्लासिफिकेशन है:

  1. नेटवर्क से प्राप्त फीडबैक का टाइप और अमाउंट।
  2. करंट इंटरनेट पर इनक्रीमेंटल डेप्लॉयबिलिटी।
  3. परफॉरमेंस के जिस विषय में इम्प्रूव करना इसका गोल है: हाई बैंडविड्थ-डिले प्रोडक्ट नेटवर्क (बी); लॉसी लिंक (एल); फेयरनेस (एफ); शोर्ट फ्लो का एडवांटेज (एस); वेरिएबल-रेट लिंक (वी); कन्वर्जेन्स की स्पीड (सी)।
  4. यह फेयरनेस क्रिटेरियन का उपयोग करता है।

कुछ प्रसिद्ध कंजेशन से एवॉइडेन्स सिस्टमों को इस योजना द्वारा निम्नानुसार क्लासिफाइड किया गया है:

वैरिएंट फीडबैक आवश्यक परिवर्तन लाभ फेयरनेस
(न्यू) रिनो लॉस डिले
वेगास डिले सेन्डर लेस लॉस प्रोपोरशनल
हाई स्पीड लॉस सेन्डर हाई बैंडविड्थ
बीआईसी लॉस सेन्डर हाई बैंडविड्थ
क्यूबिक लॉस सेन्डर हाई बैंडविड्थ
सी2टीसीपी[11][12] लॉस/डिले सेन्डर अल्ट्रा-लो लेटेंसी और हाई बैंडविड्थ
एन्यूटीसीपी[13] मल्टी-बिट सिग्नल सेन्डर नियर ऑप्टीमल परफॉरमेंस
इलास्टिक-टीसीपी लॉस/डिले सेन्डर हाई बैंडविड्थ/शोर्ट और लॉन्ग डिस्टेंस
एजल-टीसीपी लॉस सेन्डर हाई बैंडविड्थ/शोर्ट-डिस्टेंस
एच-टीसीपी लॉस सेन्डर हाई बैंडविड्थ
फ़ास्ट डिले सेन्डर हाई बैंडविड्थ प्रोपोरशनल
कंपाउंड टीसीपी लॉस/डिले सेन्डर हाई बैंडविड्थ प्रोपोरशनल
वेस्टवुड लॉस/डिले सेन्डर लॉसी लिंक्स
जर्सी लॉस/डिले सेन्डर लॉसी लिंक्स
बीबीआर[14] डिले सेन्डर बीएलवीसी, बफ़रब्लोट
क्लैंप मल्टी-बिट सिग्नल रिसीवर, राउटर वेरिएबल-रेट लिंक्स मैक्सिमम-मिनिमम
टीएफआरसी लॉस सेन्डर, रिसीवर नो रीट्रान्समिशन मिनिमम डिले
एक्ससीपी मल्टी-बिट सिग्नल सेन्डर, रिसीवर, राउटर बीएलएफसी मैक्सिमम-मिनिमम
वीसीपी 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 में गूगल द्वारा विकसित सीसीए है।[28] जबकि अधिकांश सीसीए लॉस-बेस्ड हैं, इसमें वे कंजेशन और ट्रांसमिशन के कम रेटों को डिटेक्ट करने के लिए पैकेट लॉस पर रिलाय करते हैं, बीबीआर, टीसीपी वेगास की भाँति, मॉडल-बेस्ड है। एल्गोरिदम मैक्सिमम बैंडविड्थ और राउंड-ट्रिप टाइम का उपयोग करता है जिस पर नेटवर्क ने नेटवर्क का मॉडल बनाने के लिए आउटबाउंड डेटा पैकेट की सबसे रीसेंट फ्लाइट डिलीवर की है। पैकेट डिलीवरी की प्रत्येक क्युमुलेटिव या सेलेक्टिव एकनॉलेजमेंट रेट सैंपल उत्पन्न करती है जो डेटा पैकेट के ट्रांसमिशन और उस पैकेट की एकनॉलेजमेंट के मध्य टाइम इंटरवल पर डिलीवर्ड डेटा के अमाउंट को रिकॉर्ड करती है।[29]

जब इसे यूट्यूब पर इम्प्लीमेंट किया गया, तो BBRv1 ने एवरेज 4% अधिक नेटवर्क थ्रूपुट और कुछ देशों में 14% तक का जनरेशन किया।[30] लिनक्स 4.9 के पश्चात् से बीबीआर लिनक्स टीसीपी के लिए उपलब्ध है।[31] यह क्यूयूआईसी के लिए भी उपलब्ध है।[32]

बीबीआर वर्जन्स 1 (BBRv1) की नॉन-बीबीआर स्ट्रीम्स के प्रति फेयरनेस कण्टेण्डेड है। जबकि गूगल का प्रेजेंटेशन BBRv1 को सीयूबीआईसी के साथ वेल को-एक्सिस्टिंग में दर्शाता है,[28] ज्योफ हस्टन और हॉक, ब्लेस और ज़िटरबार्ट जैसे रेसर्चेर्स ने इसे अन्य स्ट्रीम्स के लिए अनफेयर और स्केलेबल नहीं पाया है।[33] हॉक एट अल. लिनक्स 4.9 के बीबीआर इम्प्लीमेंटेशन में क्वेउंग डिले, अनफेयरनेस और बड़े लेवल पर पैकेट लॉस जैसे इन्हेरेंट इश्यूज भी पाए गए।[34] सोहेल अब्बासलू एट अल (C2टीसीपी के लेखक) बताते हैं कि BBRv1 सेलुलर नेटवर्क जैसे डायनामिक एनवायरनमेंट में उत्तम परफॉरमेंस नहीं करता है।[11][12]उन्होंने यह भी दिखाया है कि बीबीआर में अनफेयरनेस का इश्यू है। उदाहरण के लिए, जब सीयूबीआईसी टीसीपी फ्लो (जो लिनक्स, एंड्राइड और मैकओएस में डिफ़ॉल्ट ट्रांसमिशन कंट्रोल प्रोटोकॉल इम्प्लीमेंटेशन है) नेटवर्क में बीबीआर फ्लो के साथ कोएक्सिस्ट्स है, तो बीबीआर फ्लो सीयूबीआईसी फ्लो पर प्रभावी हो सकता है और इससे संपूर्ण लिंक बैंडविड्थ प्राप्त कर सकता है। (चित्र 16 देखें [11]).

वर्जन्स 2 सीयूबीआईसी जैसे लॉस-बेस्ड कंजेशन मैनेजमेंट के साथ ऑपरेट होते टाइम अनफेयरनेस के इश्यूज को सॉल्व करने का प्रयास करता है।[35] BBRv2 में BBRv1 द्वारा उपयोग किए गए मॉडल को पैकेट लॉस के विषय में इंफॉर्मेशन और एक्सप्लिसिट कंजेशन नोटिफिकेशन (ईसीएन) से इंफॉर्मेशन सम्मिलित करने के लिए ऑगमेंट किया गया है।[36] चूँकि BBRv2 में BBRv1 की अपेक्षा में कम थ्रूपुट हो सकता है, किंतु सामान्यतः इसे बेटर गुडपुट माना जाता है।

वर्जन्स 3 (BBRv3) BBRv2 में दो बग को फिक्स करता है (बैंडविड्थ प्रोबिंग का टाइम से पहले समेज़रमेंट्त होना, बैंडविड्थ कन्वर्जेन्स) और कुछ परफॉरमेंस ट्यूनिंग करता है। वैरिएंट भी है, जिसे BBR.Swift कहा जाता है, जो डेटासेंटर-इंटरनल लिंक के लिए ऑप्टीमाइज़्ड है: यह मेन कंजेशन कंट्रोल सिग्नल के रूप में नेटवर्क_आरटीटी (एक्सक्लूडिंग रिसीवर डिले) का उपयोग करता है।[36]

सी2टीसीपी

सेलुलर कण्ट्रोल डिले टीसीपी (सी2टीसीपी)[11][12] फ्लेक्सिबल एंड-टू-एंड टीसीपी एप्रोच की डिक्रीज से प्रेरित था जो नेटवर्क डिवाइस में किसी भी चेंजेस की आवश्यकता के बिना विभिन्न ऍप्लिकेशन्स के लिए सर्विसेज की विभिन्न क्वालिटी आवश्यकताओं को पूर्ण कर सकता है। सी2टीसीपी का गोल करंट एलटीई (टेलीकम्यूनिकेशन) और भविष्य के 5G जैसे अत्यधिक डायनामिक एनवायरनमेंट में वर्चुअल रियलिटी, वीडियो कॉन्फ्रेंसिंग, ऑनलाइन गेम, वेहिटोटलर कम्युनिकेशन सिस्टम आदि जैसे ऍप्लिकेशन्स की अल्ट्रा-लो लेटेंसी (इंजीनियरिंग) और हाई-बैंडविड्थ आवश्यकताओं को पूर्ण करना है। सेल्युलर नेटवर्क सी2टीसीपी लॉस-बेस्ड टीसीपी के टॉप पर प्लग-इन (कंप्यूटिंग) (जैसे रेनो, न्यूरेनो, क्यूबिक टीसीपी, बीआईसी टीसीपी, ...) ऐड-ऑन के रूप में कार्य करता है, इसे केवल सर्वर-साइड पर स्थापित करना आवश्यक है और पैकेटों के एवरेज डिले को ऍप्लिकेशन्स द्वारा सेट डिसाएर्ड डिलेस तक सीमित कर देता है।

न्यूयॉर्क विश्वविद्यालय के रिसर्च[37] में दिखाया गया है कि सी2टीसीपी विभिन्न अत्याधुनिक टीसीपी योजनाओं के डिले और डिले वेरिएशन परफॉरमेंस से आउट परफॉर्म करता है। उदाहरण के लिए, उन्होंने दिखाया कि बीबीआर, सीयूबीआईसी और वेस्टवुड के कंपैरिजन में, सी2टीसीपी विभिन्न सेलुलर नेटवर्क एनवायरनमेंटों पर पैकेट की एवरेज डिले को क्रमशः 250%, 900% और 700% कम कर देता है।[11]

इलास्टिक-टीसीपी

क्लाउड कंप्यूटिंग के सपोर्ट में हाई-बीडीपी नेटवर्क पर बैंडविड्थ उपयोग को बढ़ाने के लिए फरवरी 2019 में इलास्टिक-टीसीपी का प्रपोजल दिया गया था। यह लिनक्स-बेस्ड सीसीए है जिसे लिनक्स कर्नेल के लिए डिज़ाइन किया गया है। यह रिसीवर-साइड एल्गोरिदम है जो विंडो-कोरिलेटेड वेटिंग फ़ंक्शन (डब्ल्यूडब्ल्यूएफ) नामक नावेल सिस्टम का उपयोग करके लॉस-डिले-बेस्ड एप्रोच को नियोजित करता है। इसमें ह्यूमन ट्यूनिंग की आवश्यकता के बिना विभिन्न नेटवर्क कैरेक्टरिस्टिक से डील करने के लिए हाई लेवल की इलास्टिसिटी है। एन्यूस-2 सिम्युलेटर और टेस्टबेड का उपयोग करके इसके परफॉरमेंस का इवैल्यूएशन कंपाउंड टीसीपी (एमएस विंडोज में डिफ़ॉल्ट सीसीए), क्यूबिक (लिनक्स के लिए डिफ़ॉल्ट) और टीसीपी-बीबीआर (गूगल द्वारा उपयोग किए जाने वाले लिनक्स 4.9 का डिफ़ॉल्ट) से कम्पेर करके किया गया है। इलास्टिक-टीसीपी एवरेज थ्रूपुट, लॉस रेशियो और डिले के केस में परफॉरमेंस इम्प्रूव करता है।[38]

एनएटीसीपी

सोहेल अब्बासलू एट अल प्रोपोसड एनएटीसीपी (नेटवर्क-असिस्टेड टीसीपी)[13] कंट्रोवर्सिअल[according to whom?] टीसीपी डिज़ाइन मल्टी-्एक्सेस एज कंप्यूटिंग (एमईसी) को टारगेट करता है। एनएटीसीपी का मेन आईडिया यह है कि यदि नेटवर्क की कैरेक्टरिस्टिक के विषय में पहले से ज्ञात होता, तो टीसीपी को भिन्न प्रकार से डिज़ाइन किया गया होता। इसलिए, एनएटीसीपी टीसीपी के परफॉरमेंस को ऑप्टीमल परफॉरमेंस के नियर पहुंचाने के लिए करंट एमईसी-बेस्ड सेलुलर आर्किटेक्वेरिएबल में फीचर्स और प्रॉपर्टीज को नियोजित करता है। एनएटीसीपी नेटवर्क से नियर बाय लोकेटेड सर्वर पर आउट-ऑफ-बैंड फीडबैक का उपयोग करता है। नेटवर्क से फीडबैक, जिसमें सेलुलर एक्सेस लिंक की कैपेबिलिटी और नेटवर्क का मिनिमम आरटीटी सम्मिलित है, सर्वर को उनकी कैपेबिलिटी रेटों को समायोजित करने के लिए गाइड करता है। जैसा कि प्रारंभिक परिणाम दिखाते हैं, एनएटीसीपी अत्याधुनिक टीसीपी योजनाओं से बेटर परफॉर्म करता है।[13][39]

अन्य टीसीपी कंजेशन से एवॉइडेन्स एल्गोरिदम

  1. टीसीपी न्यू रेनो सबसे सामान्यतः इम्प्लीमेंट किया जाने वाला एल्गोरिदम था, सैक सपोर्ट अधिक कॉमन है और रेनो/न्यू रेनो का एक्सटेंड है। अधिकांश अन्य कंपेटिंग प्रपोजल हैं जिन्हें अभी भी मूल्यांकन की आवश्यकता है। 2.6.8 से प्रारंभ होकर लिनक्स कर्नेल ने डिफ़ॉल्ट इम्प्लीमेंटेशन को न्यू रेनो से बीआईसी टीसीपी में परिवर्तित कर दिया। 2.6.19 वर्जन्स में डिफ़ॉल्ट इम्प्लीमेंटेशन को फिर से सीयूबीआईसी में परिवर्तित कर दिया गया। फ्रीबीएसडी न्यू रेनो को डिफ़ॉल्ट एल्गोरिदम के रूप में उपयोग करता है। चूँकि, यह कई अन्य चॉइसेस का सपोर्ट करता है।[51]

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

टीसीपी इंटरैक्टिव (आईटीसीपी)[52] एप्लिकेशन को टीसीपी ईवेंट की सब्सक्राइब करने और तदनुसार फीडबैक देने की अनुमति देता है, जिससे टीसीपी लेयर के बाहर से टीसीपी में विभिन्न फंक्शनल एक्सटेंशन इनेबल होते हैं। अधिकांश टीसीपी कंजेशन स्कीम्स इंटरनल रूप से कार्य करती हैं। आईटीसीपी अतिरिक्त रूप से उन्नत ऍप्लिकेशन्स को डायरेक्ट कंजेशन कंट्रोल में पार्टिसिपेट करने में इनेबल बनाता है जैसे कि सोर्स जनरेशन रेट को कण्ट्रोल करना आदि।

ज़ेटा-टीसीपी लेटेंसी और लॉस रेट दोनों उपायों से कंजेशन को डिटेक्ट करता है। गुडपुट ज़ेटा-टीसीपी को मैक्सिमम करने के लिए और कंजेशन कंट्रोल की संभावना के बेसिस पर भिन्न-भिन्न कंजेशन विंडो बैकऑफ़ स्ट्रेटेजीज को इम्प्लीमेंट करता है। इसमें पैकेट के लॉस का एक़ुरेटेली डिटेक्ट करने के लिए इम्प्रोवेमेन्ट्स भी हैं, जिससे रिट्रांसमिशन टाइमआउट रिट्रांसमिशन से बचा जा सकता है; और इनबाउंड (डाउनलोड) ट्रैफ़िक को फ़ास्ट और कण्ट्रोल कर सकता है।[53]

नेटवर्क अवेयरनेस द्वारा क्लासिफिकेशन

सीसीए को नेटवर्क अवेयरनेस के संबंध में क्लासिफाइड किया जा सकता है, जिसका अर्थ है कि ये एल्गोरिदम नेटवर्क के स्टेट के विषय में किस लिमिट तक अवेयर हैं। इसमें तीन प्राइमरी कैटेगरीज: ब्लैक बॉक्स, ग्रे बॉक्स और ग्रीन बॉक्स सम्मिलित हैं।[54]ब्लैक बॉक्स एल्गोरिदम कंजेशन कंट्रोल के ब्लाइंड मेथड्स को ऑफर करते हैं। वे केवल कंजेशन पर प्राप्त बाइनरी फीडबैक पर कार्य करते हैं और जिस नेटवर्क को वे मैनेज करते हैं उनके स्टेट के विषय में कोई इंफॉर्मेशन नहीं रखते हैं।

टाइम इन्सटेंसेस[clarification needed] बैंडविड्थ, फ्लो कंटेन्शन और नेटवर्क स्टेट के अन्य नॉलेज, मेज़रमेंट और अनुमान प्राप्त करने के लिए ग्रे बॉक्स एल्गोरिदम का उपयोग किया जाना चाहिए।

ग्रीन बॉक्स एल्गोरिदम कंजेशन कंट्रोल के बाईमोडल मेथड्स को ऑफर करते हैं जो टोटल बैंडविड्थ के फेयर शेयर को मेज़र करता हैं जिसे सिस्टम के एक्सेक्यूशन के टाइम किसी भी पॉइंट पर प्रत्येक फ्लो के लिए अल्लोकेट किया जाना चाहिए।

ब्लैक बॉक्स

  • हाईस्पीड-टीसीपी[55]
  • बीआईसी टीसीपी (बाइनरी इनक्रीस कंजेशन कंट्रोल प्रोटोकॉल) प्रत्येक कंजेशन इवेंट के पश्चात सोर्स रेट में कॉनकेव इनक्रीस का उपयोग करता है जब तक कि विंडो इवेंट पूर्व विंडो के समान न हो जाए, जिससे नेटवर्क के उपयोग किए जाने वाले टाइम को मैक्सिमम किया जा सके। इसके पश्चात वह अग्ग्रेसिवली प्रोब करती है।
  • क्यूबिक टीसीपी - बीआईसी का कम अग्ग्रेसिवली और अधिक सिस्टेमेटिक डेरीवेटिव, जिसमें विंडो लास्ट कंजेशन इवेंट के पश्चात से टाइम का क्यूबिक फ़ंक्शन से पूर्व विंडो पर इन्फ्लेक्शन पॉइंट सेट होता है।
  • एआईएमडी-एफसी (फास्ट से कन्वर्जेन्स के साथ एड्डीटिव इनक्रीस मल्टीप्लिकेटिव डिक्रीज), एआईएमडी का इम्प्रूवमेंट है।[56]
  • बिनोमिअल मैकेनिज्म
  • एसआईएमडी प्रोटोकॉल
  • जीएआईएमडी

ग्रे बॉक्स

  • टीसीपी वेगास- क्वेउंग डिले में डिले का अनुमान लगाता है, और विंडो को लीनियर रूप से इनक्रीस या डीक्रीज़ करता है जिससे नेटवर्क में पर फ्लो पैकेट के कांस्टेंट नंबर क्वेउंग डिले में रहे। वेगास प्रोपोरशनल फेयरनेस इम्प्लीमेंट करता है।
  • फास्ट टीसीपी- वेगास के समान इक्विलिब्रियम प्राप्त करता है, किंतु लीनियर इनक्रीस के अतिरिक्त प्रोपोरशनल कंट्रोल का उपयोग करता है, और स्टेबिलिटी सुनिश्चित करने के ऐंम से बैंडविड्थ बढ़ने पर एडवांटेज को कम कर देता है।
  • टीसीपी बीबीआर- क्वेउंग डिले में डिले का अनुमान लगाता है किंतु एक्सपोनेंशियल इनक्रीस का उपयोग करता है। फेयरनेस और डिले को कम करने के लिए इंटेंसीअली टाइम पर इसे स्लो किया जाता है।
  • टीसीपी-वेस्टवुड (टीसीपीडब्ल्यू)- लॉस के कारण विंडो बैंडविड्थ-डिले प्रोडक्ट के सेन्डर के अनुमान पर रीसेट हो जाती है (एसीके प्राप्त करने की देखी गई रेट से मल्टीप्लाई किया गया सबसे छोटा आरटीटी)।[57]
  • सी2टीसीपी[12][11]* टीसीपी रेट कंट्रोल[58]
  • टीसीपी-रियल
  • टीसीपी-जर्सी

ग्रीन बॉक्स

  • बिमोडल सिस्टम- बिमोडल कंजेशन एवॉइडेन्स और कंट्रोल सिस्टम।
  • राउटर्स द्वारा इम्प्लीमेंटेड सिग्नलिंग मेथड्स
    • रैंडम अर्ली डिटेक्शन (रेड) राउटर की क्वेउंग डिले के साइज़ के रेशियो में पैकेट को रैंडम्ली ड्राप करता है, जिससे कुछ फ्लो में मल्टिप्लिकेटिव डिक्रीज आती है।
    • एक्सप्लिसिट कंजेशन नोटिफिकेशन (ईसीएन)
  • नेटवर्क-असिस्ट कंजेशन कंट्रोल
    • एन्यूटीसीपी[13] - नेटवर्क-असिस्टेड टीसीपी नेटवर्क के मिनिमम आरटीटी और सेल्युलर एक्सेस लिंक की कैपेबिलिटी को इंडिकेट करने वाले आउट-ऑफ-बैंड फीडबैक का उपयोग करता है।
    • वैरिएबल-स्ट्रक्वेरिएबल कंजेशन कंट्रोल प्रोटोकॉल (वीसीपी) कंजेशन की नेटवर्क स्टेट पर एक्सप्लीसिटली फीडबैक देने के लिए दो ईसीएन बिट्स का उपयोग करता है। इसमें एंड होस्ट साइड एल्गोरिदम भी सम्मिलित है।

निम्नलिखित एल्गोरिदम को टीसीपी पैकेट स्ट्रक्चर में कस्टम फ़ील्ड ऐड करने की आवश्यकता होती है:

  • एक्सप्लिसिट कंट्रोल प्रोटोकॉल (एक्ससीपी)- एक्ससीपी पैकेट में फीडबैक फ़ील्ड के साथ कंजेशन हेडर होता है, जो सेन्डर की कंजेशन विंडो में इनक्रीस या डिक्रीज का संकेत देता है। एक्ससीपी राउटर एफिशिएंसी और फेयरनेस के लिए फीडबैक मान को एक्सप्लीसिटली सेट करते हैं।[59]
  • मैक्सनेट- सिंगल हेडर फ़ील्ड का उपयोग करता है, जो फ्लो के पाथ पर किसी भी राउटर के मैक्सिमम कंजेशन लेवल को कैरी करता है। रेट इस मैक्सिमम कंजेशन के फ़ंक्शन के रूप में सेट की जाती है, जिसके परिणामस्वरूप मैक्सिमम-मिनिमम फेयरनेस होती है।[60]
  • जेटमैक्स, मैक्सनेट के जैसे, केवल मैक्सिमम कंजेशन सिग्नल पर फीडबैक करता है, किंतु अन्य ओवरहेड फ़ील्ड भी कैरी करता है।

लिनक्स उपयोग

  • बीआईसी का उपयोग लिनक्स कर्नेल 2.6.8 से 2.6.18 तक डिफ़ॉल्ट रूप से किया जाता है। (अगस्त 2004 - सितम्बर 2006)
  • वर्जन 2.6.19 से लिनक्स कर्नेल में डिफ़ॉल्ट रूप से सीयूबीआईसी का उपयोग किया जाता है। (नवंबर 2006)
  • पीआरआर को वर्जन 3.2 के पश्चात से लॉस रिकवरी में इम्प्रूवमेंट के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (जनवरी 2012)
  • BBRv1 को वर्जन 4.9 के पश्चात से मॉडल-बेस्ड कंजेशन कंट्रोल को इनेबल करने के लिए लिनक्स कर्नेल में सम्मिलित किया गया है। (दिसंबर 2016)

यह भी देखें

टिप्पणियाँ

  1. Even if, actually, the receiver may delay its ACKs, typically sending one ACK for every two segments that it receives[2]

संरेट्भ

  1. Jacobson & Karels 1988.
  2. 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. 3.0 3.1 M. Allman; S. Floyd; C. Partridge (October 2002). टीसीपी की आरंभिक विंडो बढ़ाना. doi:10.17487/RFC3390. RFC 3390.
  4. "टीसीपी कंजेशन से बचाव को एक अनुक्रम आरेख के माध्यम से समझाया गया" (PDF). eventhelix.com.
  5. 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.
  6. Allman, M.; Paxson, V. (September 2009). टीसीपी कंजेशन नियंत्रण. IETF. sec. 3.1. doi:10.17487/RFC5681. RFC 5681. Retrieved March 4, 2021.
  7. Blanton, Ethan; Paxson, Vern; Allman, Mark (September 2009). "टीसीपी कंजेशन नियंत्रण". IETF.
  8. Corbet, Jonathan. "टीसीपी प्रारंभिक कंजेशन विंडो को बढ़ाना". LWN. Retrieved 10 October 2012.
  9. Nick O'Neill. "What's Making Your Site Go Slow? Could Be The Like Button". AllFacebook, 10 November 2010. Retrieved on 12 September 2012.
  10. 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. 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. 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. 13.0 13.1 13.2 13.3 Abbasloo et al. 2019.
  14. 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.
  15. Kurose & Ross 2008, p. 284.
  16. Kurose & Ross 2012, p. 277.
  17. 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.
  18. "टीसीपी कंजेशन नियंत्रण एल्गोरिदम का प्रदर्शन विश्लेषण" (PDF). Retrieved 26 March 2012.
  19. "डीडी-डब्ल्यूआरटी चेंजलॉग". Retrieved 2 January 2012.
  20. "हाइब्ला होम पेज". Archived from the original on 11 October 2007. Retrieved 4 March 2007.
  21. 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.
  22. 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.
  23. V., Jacobson; R.T., Braden. लंबी-विलंबित पथों के लिए टीसीपी एक्सटेंशन. doi:10.17487/RFC1072. RFC 1072.
  24. 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.
  25. Mathis, M.; Dukkipati, N.; Cheng, Y. (2013). टीसीपी के लिए आनुपातिक दर में कमी. doi:10.17487/RFC6937. RFC 6937.
  26. Corbet, Jonathan. "LPC: Making the net go faster". Retrieved 6 June 2014.
  27. "Linux 3.2 - Linux Kernel Newbies". Retrieved 6 June 2014.
  28. 28.0 28.1 "BBR: Congestion-Based Congestion Control". Retrieved 25 August 2017.
  29. Cheng, Yuchung; Cardwell, Neal; Yeganeh, Soheil Hassas; Jacobson, Van. "डिलिवरी दर अनुमान". IETF. Retrieved 25 August 2017.
  30. "TCP BBR congestion control comes to GCP – your Internet just got faster". Retrieved 25 August 2017.
  31. "BBR congestion control [LWN.net]". lwn.net.
  32. "बीबीआर अद्यतन". IETF.
  33. "टीसीपी और बीबीआर" (PDF). Retrieved 27 May 2018.
  34. "बीबीआर कंजेशन नियंत्रण का प्रायोगिक मूल्यांकन" (PDF). Retrieved 27 May 2018.
  35. "A Performance Evaluation of TCP BBRv2". Retrieved 12 January 2021.
  36. 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)
  37. "Cellular Controlled Delay TCP (C2TCP)". wp.nyu.edu. Retrieved 2019-04-27.
  38. 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.
  39. Abbasloo, Soheil (2019-06-03), GitHub - Soheil-ab/natcp, retrieved 2019-08-05
  40. 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. "Rice Networks Group".
  42. "TCP Veno: TCP Enhancement for Transmission over Wireless Access Networks" (PDF). IEEE Journal on Selected Areas in Communication.
  43. "XCP @ ISI".
  44. "हाई स्पीड टीपीसी" (PDF). www.csc.lsu.edu.
  45. "संग्रहीत प्रति". Archived from the original on 3 April 2011. Retrieved 5 March 2011.
  46. Benaboud, H.; Berqia, A.; Mikou, N. (2002). "टीसीपी प्रोटोकॉल में CANIT एल्गोरिदम का एक विश्लेषणात्मक अध्ययन". ACM SIGMETRICS Performance Evaluation Review. 30 (3): 20. doi:10.1145/605521.605530. S2CID 6637174.
  47. 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.
  48. 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.
  49. 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.
  50. 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.
  51. "पांच नए टीसीपी कंजेशन नियंत्रण एल्गोरिदम परियोजना का सारांश". 8 March 2011.
  52. "iTCP - Interactive Transport Protocol - Medianet Lab, Kent State University".
  53. "Whitepaper: Zeta-TCP - Intelligent, Adaptive, Asymmetric TCP Acceleration" (PDF). Retrieved 2019-12-06.
  54. Lefteris Mamatas; Tobias Harks; Vassilis Tsaoussidis (January 2007). "पैकेट नेटवर्क में भीड़ नियंत्रण के दृष्टिकोण" (PDF). Journal of Internet Engineering. 1 (1). Archived from the original (PDF) on 2014-02-21.
  55. "हाईस्पीड टीसीपी". www.icir.org.
  56. "एआईएमडी-एफसी होमपेज". neu.edu. Archived from the original on 13 January 2009. Retrieved 13 March 2016.
  57. "नेटवर्क रिसर्च लैब में आपका स्वागत है". www.cs.ucla.edu.
  58. "यूनिकैस्ट अनुप्रयोगों के लिए समीकरण-आधारित भीड़ नियंत्रण". www.icir.org.
  59. 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.
  60. "मैक्सनेट--मैक्स-मिन फेयर, स्थिर स्पष्ट सिग्नलिंग कंजेशन नियंत्रण". netlab.caltech.edu.

सोर्स

बाहरी संबंध