TCP को गोप्य हतियार: नेटवर्क प्रवाह नियन्त्रण र नेटवर्क भीड नियन्त्रण

TCP विश्वसनीयता यातायात
हामी सबै एक भरपर्दो यातायात प्रोटोकोलको रूपमा TCP प्रोटोकोलको साथ परिचित छौं, तर यसले यातायातको विश्वसनीयता कसरी सुनिश्चित गर्दछ?

भरपर्दो प्रसारण प्राप्त गर्न, धेरै कारकहरू विचार गर्न आवश्यक छ, जस्तै डाटा भ्रष्टाचार, नक्कल, र आउट-आउट शर्डहरू। यदि यी समस्याहरू समाधान गर्न सकिदैन, विश्वसनीय प्रसारण प्राप्त गर्न सकिदैन।

तसर्थ, TCP ले अनुक्रमको संख्या, पहिचानको उत्तर, नियन्त्रण, जडान, जडान, जडान व्यवस्थापन र विन्डो नियन्त्रण पुन: स्थापना गर्दछ।

यस कागजमा, हामी घुफाइ विन्डोमा ध्यान केन्द्रित गर्नेछौं, प्रवाह नियन्त्रण र tcp को भीड नियन्त्रण। अर्को खण्डमा retransition संयन्त्र छुट्टै ढाकिएको छ।

नेटवर्क प्रवाह नियन्त्रण
नेटवर्क प्रवाह नियन्त्रण वा जान्नुहोस् नेट नेटवर्क ट्राफिक नियन्त्रण वास्तवमा उत्पादक र उपभोक्ताहरू बीच सूक्ष्म सम्बन्धको अभिव्यक्तिको अभिव्यक्ति हो। तपाईं सायद यो परिदृश्यमा काम गर्नुहुन्छ वा अन्तर्वार्तामा धेरै आउँदछन्। यदि निर्माता उत्पादन गर्न उत्पादकको क्षमता उपभोक्ताको क्षमता उपभोग गर्न भन्दा बढी छ भने, यसले लामलाई अनिश्चित कालका साथ बढ्न लगाउनेछ। अधिक गम्भीर मामला मा, तपाईं जान्न सक्नुहुन्छ कि जब वाबीबिकक सन्देशहरू धेरै धेरै धेरै टाढा हुन्छ, यसले सम्पूर्ण MQ सर्वरको प्रदर्शन गिरावट हुन सक्छ। TCP को लागी पनि यो सही छ; यदि जाँच गरिएको छोडियो भने, धेरै सन्देशहरू नेटवर्कमा राखिनेछ, र उपभोक्ताहरूले आफ्नो क्षमता भन्दा बढी पाउनेछ, जबकि उत्पादकहरू डुप्लिकेट सन्देशहरू पठाउन जारी राख्नेछन्, जसले नेटवर्कको प्रदर्शनलाई असर गर्दछ।

यस घटनालाई सम्बोधन गर्न, TCP ले रिसीजरको वास्तविक डिसेग्स क्षमतामा आधारित डाटा नियन्त्रण गर्न प्रेषकको लागि संयन्त्र प्रदान गर्दछ, जुन प्रवाह नियन्त्रणको रूपमा चिनिन्छ। रिसीभरले एक प्राप्त विन्डोलाई राख्दछ, जबकि प्रेषकले विन्डो कमाउँछ। यो ध्यान दिनुहोस् कि यी विन्डोजहरू एकल TCP जडानका लागि मात्र हुन् र सबै जडानहरू विन्डो साझा गर्दैनन्।

TCP ले एक चर प्रयोग गरेर भ्यारीएबल प्रयोग गरेर प्रवाह नियन्त्रण प्रदान गर्दछ। प्राप्त विन्डोले प्रेषकलाई कति क्यास स्पेस अझै उपलब्ध छ भन्ने संकेत दिन्छ। प्रेषकले प्राप्तिको वास्तविक स्वीकृति क्षमता अनुसार पठाइएको डाटाको मात्रा नियन्त्रण गर्दछ।

रिसीभर होस्टले यसलाई प्राप्त गर्न सक्दछ डाटाको आकारको प्रेषकलाई सूचित गर्दछ, र प्रेषकले यस सीमामा पठाउँदछ। यो सीमा विन्डो आकार हो, TCP हेडर याद गर्नुहोस्? त्यहाँ विन्डो फिल्ड प्राप्त छ, जुन बाइट्सहरूको संख्या सक्षम हुन्छ वा प्राप्त गर्न इच्छुक हुन्छ।

प्रेषक होस्टले आवधिक रूपमा विन्डो प्रोब प्याकेट पठाउँदछ, जुन रिसीभर होस्टले डाटा स्वीकार गर्न सक्षम छ भनेर पत्ता लगाउन प्रयोग गर्दछ। जब रिसीभरको बफर ओभरफ्लोको खतरामा छ, विन्डोज आकार पठाइएको डाटाको मात्रा नियन्त्रण गर्न प्रेशरलाई निर्देशन दिन।

यहाँ एक नेटवर्क प्रवाह नियन्त्रण रेखाचित्र छ:

ट्राफिक नियन्त्रण

नेटवर्क भीड नियन्त्रण
भीड नियन्त्रण गर्नु अघि, हामीले बुझ्नु पर्छ कि विन्डोमा पठाउन हामीले बुझ्नु पर्छ कि त्यहाँ एक भीड विन्डो पनि छ, जुन मुख्य रूपमा दर्जाले विन्डोमा डाटा पठाउन प्रयोग गर्दछ। त्यसकारण, भीड विन्डो TCP प्रेषकले पनि कायम राखिन्छ। हामीलाई धेरै डाटा पठाउन उपयुक्त छ भनेर निर्णय गर्न हामीलाई एलोगारिथ्म चाहिन्छ, किनकि धेरै डाटा पठाउन आदर्श छैन, त्यसैले भीड विन्डोको अवधारणा।

अघिल्लो नेटवर्क प्रवाह नियन्त्रणमा, हामीले बेवास्ता गरेका थियौं, डेलिभरको क्यास भर्न डेटाको साथ ड्राइभरको क्यास भर्न, तर हामीलाई थाहा थिएन कि नेटवर्कमा के भइरहेको थियो भनेर हामीलाई थाहा थिएन। सामान्यतया, कम्प्युटर नेटवर्कहरू साझा वातावरणमा हुन्छन्। नतिजाको रूपमा, अन्य होस्टहरू बीचको सञ्चारका कारण नेटवर्क भी अनुरोध हुन सक्छ।

जब नेटवर्क गडबडी हुन्छ, यदि प्याकेटको ठूलो संख्या पठाइन्छ भने, यसले समस्याहरू निम्त्याउन सक्छ र प्याकेटको क्षति पुर्याउन सक्छ। यस बिन्दुमा, TCP ले डाटा फिर्ता लिन्छ, तर retransision नेटवर्कमा बोझ बढ्नेछ, परिणामस्वरूप ठूलो ढिलाइ र अधिक प्याकेट घाटा परिणामस्वरूप। यसले एक क्राइन्ड चक्रमा जान र ठूलो हुँदै जान सक्छ।

यसैले TCP नेटवर्कमा के भइरहेको छ बेवास्ता गर्न सक्दैन। जब नेटवर्क भीडभाड हुन्छ, टीसीपीले यसलाई पठाउँदछ जुन पठाउँदछ यसले पठाउँदछ।

यसैले, भीड नियन्त्रण प्रस्ताव गरिएको छ, जुन शीर्षक प्रेषकबाट डाटाको साथ सम्पूर्ण नेटवर्क भर्नबाट जोगिनेछ। प्रेषकले पठाउनु पर्ने डाटालाई नियमित गर्न TCP ले भीड विन्डो भन्ने अवधारणालाई परिभाषित गर्दछ। भीड नियन्त्रण एल्गोरिथ्म नेटवर्कको भीड डिग्री अनुसार भीड विन्डोको आकार समायोजन गर्दछ, ताकि प्रेषक द्वारा पठाइएको डाटाको मात्रा नियन्त्रण गर्न।

भीड विन्डो के हो? यसले विन्डो पठाउँदै के गर्नु पर्छ?

भीड विन्डो भनेको प्रेषक द्वारा राखिएको एक राज्य चर हो जसले प्रेषकले पठाउन सक्दछ। भीड विन्डोले गतिशील रूपमा नेटवर्कको भीड स्तर अनुसार परिवर्तन गर्दछ।

पठाउँदै विन्डोजलाई प्रेषक र रिसीभर बीचको विन्डो आकारमा सहमति हुन्छ जसले रिसीभर प्राप्त गर्न सक्दछ। भीड विन्डो र पठाउन विन्डो सम्बन्धित छ; पठाउँदै विन्डो प्राय: भीड को न्यूनतम बराबर हो र विन्डोज प्राप्त गर्न को लागी, त्यो हो, स्वि ond = मिनेट (cwnd, rwnd)।

भीड विन्डो क्लोन्डहरू तल दिइएका छन्:

यदि नेटवर्कमा कुनै भीषण छैन, अर्थात्, कुनै retransaition टाइमआउट देखा पर्दैन, भीड विन्डो बढ्छ।

यदि नेटवर्कमा भीड छ भने, भीड विन्डो घट्छ।

एन्डरटरले नेटवर्क कन्फरेन्जिएको छ कि छैन भनेर अवलोकन गर्दा यदि प्रेषकले निर्दिष्ट समय भित्र एसी स्वीकृत प्याकेट प्राप्त गर्दैन भने, यो नेटवर्क भीडभाड छ भनेर मानिन्छ।

भीड विन्डोको अतिरिक्त, TCP भीड नियन्त्रण एल्गोरिथ्म छलफल गर्ने समय हो। TCP भीड नियन्त्रण एल्गोरिथ्म तीन मुख्य भागहरू समावेश गर्दछ:

ढिलो सुरु:सुरुमा कल्याण्ड भीड विन्डो तुलनात्मक रूपमा सानो छ, र प्रेषकले भीड विन्डोलाई नेटवर्कको क्षमतालाई छिटो आकर्षित गर्न।
भीड वेवास्ता गर्नुहोस्:भीडभा विन्डो एक निश्चित सीमा भन्दा बढी पछि प्रेषकले भीड विन्डोको बृद्धि दरमा रिडाररी तरीकाले बढ्दछ र नेटवर्क ओभरलोड गर्नबाट जोगिन्छ।
छिटो रिकभरी:यदि भीड देखा पर्छ भने, प्रेषकले भीड विन्डोलाई आधा भाग गर्दछ र पेपर विन्डोको माध्यमबाट नेटवर्क रिकभरीको स्थान निर्धारण गर्न द्रुत रिकभरी राज्यमा प्रवेश गर्दछ, र त्यसपछि भीड विन्डो बढाउन जारी छ।

ढिलो शुरुआत
जब एक TCP जडान स्थापित हुन्छ, भीड विन्डो cwnd सुरुमा न्यूनतम एमएसएस (अधिकतम क्षेत्र आकार) को मूल्यमा सेट गरिएको छ। यस तरिकाले, प्रारम्भिक पठाउन दर MSS / RTT बाइट्स / सेकेन्डको बारेमा हो। वास्तविक उपलब्ध ब्यान्डविथ प्राय: एमएसएस / RTT भन्दा ठूलो हुन्छ, त्यसैले TCP इष्टतम पठन दर फेला पार्न चाहन्छ, जुन ढिलो-सुरुको माध्यमबाट प्राप्त गर्न सकिन्छ।

ढिलो सुरूवात प्रक्रियामा भीड विन्डोको मूल्य 1 एमएसएसको लागि सुरु हुनेछ, र प्रत्येक पटक प्रसारण गरिएको प्याकेट खण्डलाई एक एमएमएसले बढाइनेछ, जुन 2 एमएसओले बढाइनेछ। त्यस पछि, प्याकेट सेगमेन्टको प्रत्येक सफल प्रसारणको लागि cwnd को मान दोब्बर छ। निर्दिष्ट बृद्धि प्रक्रिया निम्न आंकडामा देखाइएको छ।

 नेटवर्क भीड नियन्त्रण

जे होस्, पठाउने दर सँधै बढ्न सक्दैन; विकास केहि समय समाप्त हुनु पर्छ। त्यसोभए, पठाउँदा दर्जा बढाउँदा कहिले अन्त्य हुन्छ? ढिलो-सुरुमा सामान्यतया धेरै तरीकाले पठाउँदामा वृद्धि समाप्त हुन्छ:

पहिलो तरिका ढिलो सुरूवातको पठनको प्रक्रियामा प्याकेटको बीजको मामला हो। जब एक प्याकेट घाटा हुन्छ, TCP ले प्रेषकको भीड विन्डो cwnd 1 मा 1 सेट गर्दछ र ढिलो-सुरू प्रक्रिया पुनः सुरु गर्दछ। यस बिन्दुमा, ढिलो सुरु सॉरीहोल्ड Ssthreash को अवधारणा परिचय दिइएको छ, जसको प्रारम्भिक मूल्य cwdd को मूल्य को आधा हो जसले प्याकेट घाटा उत्पन्न गर्दछ। त्यो हो, जब भीड पत्ता लाग्यो, SSTHERSH को मान आधा विन्डो मूल्य हो।

दोस्रो तरीका भनेको ढिलो-स्टार्ट थ्रेसोल्ड Ssthresh को मूल्य संग सीधा संचालित छ। SSTHRESH को मान यसको आधा विन्डो मान को आधा हो जब भीड पत्ता लाग्यो, प्याकेट घाटा SWNDSH भन्दा ठूलो छ जब CWEDRESH भन्दा ठूलो हुन्छ। तसर्थ, Ssthresh मा cwndst सेट गर्न उत्तम छ, जसले भीड नियन्त्रण मोडमा स्विच गर्न र अन्त्य-सुरूमा स्विच गर्न TCP निम्त्याउँदछ।

अन्तिम तरिका जुन ढिलो सुरू गर्न सकिन्छ कि सौन्दर्य अन्त हुन सक्छ यदि तीन अनावश्यक अँढीहरू पत्ता लगाइन्छ भने, TCP ले छिटो retranizion गर्दछ र रिकभरी राज्यमा प्रवेश गर्दछ। (यदि त्यहाँ स्पष्ट छैन किन तीन ACK प्याकेटहरू छन्, यसलाई retransition संयन्त्रमा व्याख्या गरिनेछ।)

भीड बेवास्ता
जब TCP भीड नियन्त्रण स्थितिमा प्रवेश गर्दछ, CWNDS आधा भीड थ्रेड्रेसमा सेट हुन्छ। यसको मतलव यो हो कि CWND को मान प्रत्येक पटक प्याकेट खण्ड प्राप्त गर्न सकिदैन। यसको सट्टामा, अपेक्षाकृत रूढीवादी दृष्टिकोण अपनाइएको छ जसमा CWND को मान प्रत्येक प्रसारण पूरा भएपछि केवल एक एमएसएस (अधिकतम प्याकेट सेटर लम्बाइ) मा बढेको छ। उदाहरण को लागी, 10 प्याकेट फ्रिटनहरू स्वीकार गरिए पनि, cwnd को मान मात्र एक एमएसएस द्वारा वृद्धि हुनेछ। यो एक रवर्न वृद्धि मोडेल हो र यसको पनि वृद्धि मा एक माथिल्लो सीमा छ। जब प्याकेटको घाटा हुन्छ, cwnd एक एमएसएस मा परिवर्तन हुन्छ, र SSTRESH को मान cwind को आधा मा सेट गरिएको छ। वा यसले MSS को बृद्धि पनि गर्न रोक्दछ जब putunterent न्यून्न्डेन्ट ACK प्रतिक्रियाहरू प्राप्त हुन्छन्। यदि तीन अवरुद्ध अंक अझै पनि CWND को मानलाई लगाउँने पछि, SSTRESH को मान cwnd को आधा मूल्यको रूपमा रेकर्ड गरिएको छ र द्रुत रिकभरी राज्य प्रविष्ट गरिएको छ।

उपमृद्घि
द्रुत रिकभरी राज्यमा, भीड विन्डो cwnd को मूल्य प्रत्येक प्राप्त गरिएको घटाउनको लागि एक एमएसएस द्वारा बढेको छ, त्यो हो जुन अनुक्रममा पुग्न सक्दैन। यो प्याकेट सेमेन्टहरूको प्रयोग गर्नु हो जुन नेटवर्कमा सफलतापूर्वक प्रसारण दक्षता सुधार गर्न सकेसम्म धेरै सुधार गर्न।

जब हराएको प्याकेटको खण्डको एक ACCE आइपुग्छ, TCP ले क्वान्डको मान घटाउँछ र भीडलाई वेवास्ता नगरे राज्यमा प्रवेश गर्दछ। यो भीड विन्डोको आकार नियन्त्रण गर्न र नेटवर्क भीड बढाउन अगाडि बढ्नबाट जोगिनुहोस्।

यदि भीड नियन्त्रण राज्य पछि एक टाइमआउट हुन्छ भने, नेटवर्क सर्तको अवस्था नजिकको परिवेश राज्यको लागि अधिक गम्भीर र TCP माइग्रेट हुन्छ। यस अवस्थामा, भीड विन्डो क्वेन्डको मूल्य 1 एमएसईमा सेट गरिएको छ, अधिकतम प्याकेट विभाजनको लम्बाई, र ढिलो-स्टार्ट थ्रेडेल्ड SSTHRESH को मूल्य cwind को आधा हिस्सा सेट गरिएको छ। यसका उद्देश्य पुनःप्रयालीय रूपमा भीड विन्डोको आकार र नेटवर्कको संतुलन र नेटवर्क कौजीको डिग्रीको डिग्रीको रूपमा बिस्तारै बढाउनु हो।

सारांश
भरपर्दो यातायात प्रोटोकोलको रूपमा, अनुक्रम संख्या, स्वीकृति, सेवा व्यवस्थापन, जडान व्यवस्थापन र विन्डो नियन्त्रण। ती मध्ये प्रवाह नियन्त्रण संयन्त्रले रिसीभरको वास्तविक प्राप्त क्षमताअनुसार पठाउने डाटाको मात्रा नियन्त्रण गर्दछ, जसले नेटवर्क भीड र प्रदर्शन गिरावटको समस्यालाई वेवास्ता गर्दछ। भीड नियन्त्रण संयन्त्रले प्रेषक द्वारा पठाएको डाटाको मात्रा समायोजन गरेर नेटवर्क भीडको घटना घट्दछ। भीड विन्डोको अवधारणाहरू र विन्डोलाई पठाउनेहरू एक अर्कासँग सम्बन्धित छन्, र प्रेषकमा डाटाको मात्रा गतिमा रूपमा भीड विन्डोको आकार समायोजित गरिएको छ। ढिलो सुरुवात, भीडरोध र छिटो रिकभरी TCP भीड नियन्त्रण एल्गोरिथ्म को तीन मुख्य भागहरू जुन नेटवर्कको क्षमता र भीड डिग्रीबाट अनुकूलन गर्दछ।

अर्को खण्डमा, हामी TCP को retransition संयन्त्रलाई विस्तृत रूपमा जाँच गर्नेछौं। Retransition संयन्त्र TCP को एक महत्त्वपूर्ण हिस्सा हो विश्वसनीय प्रसारण प्राप्त गर्न। यसले हराएको, बिग्रेको वा ढिलाइ भएको डाटालाई पुनःबहाली वा ढिलाइ गरेर डाटाको भरपर्दो प्रसारण सुनिश्चित गर्दछ। Retraansition संयन्त्रको कार्यान्वयन सिद्धान्त र रणनीति अर्को खण्डमा विस्तृत रूपमा प्रस्तुत र विश्लेषण गरिनेछ। ट्यूबन रहनुहोस्!


पोष्ट समय: फेब्रुअरी -2-20225