आज हम TCP पर ध्यान केंद्रित करके शुरुआत करेंगे। लेयरिंग पर आधारित अध्याय में हमने एक महत्वपूर्ण बिंदु का उल्लेख किया था। नेटवर्क लेयर और उससे नीचे, मुख्य रूप से होस्ट-टू-होस्ट कनेक्शन होते हैं, जिसका अर्थ है कि किसी कंप्यूटर से कनेक्ट होने के लिए उसे यह जानना आवश्यक है कि दूसरा कंप्यूटर कहाँ स्थित है। हालांकि, नेटवर्क में संचार अक्सर इंटर-मशीन संचार के बजाय इंटर-प्रोसेस संचार होता है। इसलिए, TCP प्रोटोकॉल पोर्ट की अवधारणा प्रस्तुत करता है। एक पोर्ट पर केवल एक ही प्रोसेस हो सकता है, जो विभिन्न होस्ट पर चल रहे एप्लिकेशन प्रोसेस के बीच सीधा संचार प्रदान करता है।
ट्रांसपोर्ट लेयर का कार्य विभिन्न होस्ट पर चल रही एप्लिकेशन प्रक्रियाओं के बीच प्रत्यक्ष संचार सेवाएं प्रदान करना है, इसलिए इसे एंड-टू-एंड प्रोटोकॉल भी कहा जाता है। ट्रांसपोर्ट लेयर नेटवर्क के मुख्य विवरणों को छुपाती है, जिससे एप्लिकेशन प्रक्रिया को ऐसा प्रतीत होता है जैसे दोनों ट्रांसपोर्ट लेयर इकाइयों के बीच एक तार्किक एंड-टू-एंड संचार चैनल मौजूद है।
TCP का पूरा नाम ट्रांसमिशन कंट्रोल प्रोटोकॉल है और इसे कनेक्शन-ओरिएंटेड प्रोटोकॉल के रूप में जाना जाता है। इसका अर्थ है कि एक एप्लिकेशन द्वारा दूसरे को डेटा भेजना शुरू करने से पहले, दोनों प्रक्रियाओं को हैंडशेक करना होता है। हैंडशेक एक तार्किक रूप से जुड़ी प्रक्रिया है जो डेटा के विश्वसनीय संचरण और व्यवस्थित प्राप्ति को सुनिश्चित करती है। हैंडशेक के दौरान, स्रोत और गंतव्य होस्ट के बीच नियंत्रण पैकेटों की एक श्रृंखला का आदान-प्रदान करके और सफल डेटा संचरण सुनिश्चित करने के लिए कुछ मापदंडों और नियमों पर सहमति बनाकर एक कनेक्शन स्थापित किया जाता है।
TCP क्या है? (माईलिंकिंग कानेटवर्क टैपऔरनेटवर्क पैकेट ब्रोकरयह TCP और UDP दोनों पैकेटों को प्रोसेस कर सकता है।)
टीसीपी (ट्रांसमिशन कंट्रोल प्रोटोकॉल) एक कनेक्शन ओरिएंटेड, विश्वसनीय, बाइट-स्ट्रीम आधारित ट्रांसपोर्ट लेयर संचार प्रोटोकॉल है।
संबंध-उन्मुखकनेक्शन-ओरिएंटेड का मतलब है कि टीसीपी संचार एक-से-एक होता है, यानी बिंदु-से-बिंदु अंत-से-अंत संचार, यूडीपी के विपरीत, जो एक ही समय में कई होस्ट को संदेश भेज सकता है, इसलिए एक-से-अनेक संचार प्राप्त नहीं किया जा सकता है।
भरोसेमंदTCP की विश्वसनीयता यह सुनिश्चित करती है कि नेटवर्क लिंक में बदलाव के बावजूद पैकेट रिसीवर तक विश्वसनीय रूप से पहुंचाए जाएं, जिससे TCP का प्रोटोकॉल पैकेट प्रारूप UDP की तुलना में अधिक जटिल हो जाता है।
बाइट-स्ट्रीम-आधारितTCP की बाइट-स्ट्रीम आधारित प्रकृति किसी भी आकार के संदेशों के प्रसारण की अनुमति देती है और संदेश क्रम की गारंटी देती है: भले ही पिछला संदेश पूरी तरह से प्राप्त न हुआ हो, और भले ही बाद के बाइट्स प्राप्त हो गए हों, TCP उन्हें प्रसंस्करण के लिए एप्लिकेशन लेयर तक नहीं पहुंचाएगा और स्वचालित रूप से डुप्लिकेट पैकेटों को हटा देगा।
एक बार होस्ट A और होस्ट B के बीच कनेक्शन स्थापित हो जाने के बाद, एप्लिकेशन को डेटा भेजने और प्राप्त करने के लिए केवल वर्चुअल संचार लाइन का उपयोग करना होता है, जिससे डेटा ट्रांसमिशन सुनिश्चित होता है। TCP प्रोटोकॉल कनेक्शन स्थापित करने, डिस्कनेक्शन करने और उसे बनाए रखने जैसे कार्यों को नियंत्रित करता है। यह ध्यान रखना महत्वपूर्ण है कि यहां वर्चुअल लाइन का अर्थ केवल कनेक्शन स्थापित करना है, TCP प्रोटोकॉल कनेक्शन का अर्थ केवल यह है कि दोनों पक्ष डेटा ट्रांसमिशन शुरू कर सकते हैं और डेटा की विश्वसनीयता सुनिश्चित कर सकते हैं। रूटिंग और ट्रांसपोर्ट नोड्स नेटवर्क डिवाइस द्वारा नियंत्रित किए जाते हैं; TCP प्रोटोकॉल का इन विवरणों से कोई लेना-देना नहीं है।
TCP कनेक्शन एक फुल-डुप्लेक्स सेवा है, जिसका अर्थ है कि होस्ट A और होस्ट B एक TCP कनेक्शन में दोनों दिशाओं में डेटा संचारित कर सकते हैं। अर्थात्, होस्ट A और होस्ट B के बीच द्विदिशात्मक प्रवाह में डेटा का स्थानांतरण हो सकता है।
TCP कनेक्शन के सेंड बफर में डेटा को अस्थायी रूप से संग्रहीत करता है। यह सेंड बफर तीन-तरफ़ा हैंडशेक के दौरान स्थापित किए गए कैश में से एक है। बाद में, TCP उचित समय पर सेंड कैश में मौजूद डेटा को गंतव्य होस्ट के रिसीव कैश में भेजता है। व्यवहार में, प्रत्येक पीयर के पास एक सेंड कैश और एक रिसीव कैश होता है, जैसा कि यहाँ दिखाया गया है:
सेंड बफर, सेंडर साइड पर TCP इम्प्लीमेंटेशन द्वारा बनाए रखा गया मेमोरी का एक क्षेत्र है जिसका उपयोग भेजे जाने वाले डेटा को अस्थायी रूप से स्टोर करने के लिए किया जाता है। जब कनेक्शन स्थापित करने के लिए थ्री-वे हैंडशेक किया जाता है, तो सेंड कैश को सेट अप किया जाता है और डेटा को स्टोर करने के लिए उपयोग किया जाता है। नेटवर्क कंजेशन और रिसीवर से प्राप्त फीडबैक के अनुसार सेंड बफर को गतिशील रूप से समायोजित किया जाता है।
रिसीव बफर, रिसीविंग साइड पर TCP इम्प्लीमेंटेशन द्वारा बनाए रखा गया मेमोरी का एक क्षेत्र है जिसका उपयोग प्राप्त डेटा को अस्थायी रूप से स्टोर करने के लिए किया जाता है। TCP प्राप्त डेटा को रिसीव कैश में स्टोर करता है और ऊपरी एप्लिकेशन द्वारा इसे पढ़ने की प्रतीक्षा करता है।
ध्यान दें कि सेंड कैश और रिसीव कैश का आकार सीमित होता है, कैश भर जाने पर, टीसीपी विश्वसनीय डेटा ट्रांसमिशन और नेटवर्क स्थिरता सुनिश्चित करने के लिए कंजेशन कंट्रोल, फ्लो कंट्रोल आदि जैसी कुछ रणनीतियों को अपना सकता है।
कंप्यूटर नेटवर्क में, होस्टों के बीच डेटा का संचरण सेगमेंट के माध्यम से किया जाता है। तो पैकेट सेगमेंट क्या है?
TCP, आने वाले डेटा स्ट्रीम को छोटे-छोटे हिस्सों में बाँटकर और प्रत्येक हिस्से में TCP हेडर जोड़कर एक TCP सेगमेंट या पैकेट सेगमेंट बनाता है। प्रत्येक सेगमेंट को सीमित समय के लिए ही भेजा जा सकता है और यह अधिकतम सेगमेंट आकार (MSS) से अधिक नहीं हो सकता। नीचे जाते समय, पैकेट सेगमेंट लिंक लेयर से होकर गुजरता है। लिंक लेयर में एक अधिकतम ट्रांसमिशन यूनिट (MTU) होती है, जो डेटा लिंक लेयर से गुजरने वाले पैकेट का अधिकतम आकार होता है। अधिकतम ट्रांसमिशन यूनिट आमतौर पर संचार इंटरफ़ेस से संबंधित होती है।
तो एमएसएस और एमटीयू में क्या अंतर है?
कंप्यूटर नेटवर्क में, पदानुक्रमित संरचना बहुत महत्वपूर्ण है क्योंकि यह विभिन्न स्तरों के बीच के अंतरों को ध्यान में रखती है। प्रत्येक परत का एक अलग नाम होता है; परिवहन परत में, डेटा को सेगमेंट कहा जाता है, और नेटवर्क परत में, डेटा को आईपी पैकेट कहा जाता है। इसलिए, मैक्सिमम ट्रांसमिशन यूनिट (एमटीयू) को नेटवर्क परत द्वारा प्रेषित किए जा सकने वाले अधिकतम आईपी पैकेट आकार के रूप में समझा जा सकता है, जबकि मैक्सिमम सेगमेंट साइज (एमएसएस) परिवहन परत की एक अवधारणा है जो एक समय में टीसीपी पैकेट द्वारा प्रेषित किए जा सकने वाले डेटा की अधिकतम मात्रा को संदर्भित करती है।
ध्यान दें कि जब अधिकतम सेगमेंट आकार (MSS) अधिकतम ट्रांसमिशन यूनिट (MTU) से बड़ा होता है, तो नेटवर्क लेयर पर IP फ्रेग्मेंटेशन किया जाएगा, और TCP बड़े डेटा को MTU आकार के लिए उपयुक्त सेगमेंट में विभाजित नहीं करेगा। नेटवर्क लेयर पर IP लेयर के लिए एक अलग सेक्शन होगा।
टीसीपी पैकेट खंड संरचना
आइए टीसीपी हेडर के प्रारूप और सामग्री का अन्वेषण करें।
अनुक्रम संख्याTCP कनेक्शन स्थापित होने पर कंप्यूटर द्वारा एक यादृच्छिक संख्या उत्पन्न की जाती है, जो प्रारंभिक मान के रूप में कार्य करती है। यह अनुक्रम संख्या SYN पैकेट के माध्यम से प्राप्तकर्ता को भेजी जाती है। डेटा संचरण के दौरान, प्रेषक भेजे गए डेटा की मात्रा के अनुसार अनुक्रम संख्या को बढ़ाता है। प्राप्तकर्ता प्राप्त अनुक्रम संख्या के आधार पर डेटा के क्रम का निर्धारण करता है। यदि डेटा अव्यवस्थित पाया जाता है, तो प्राप्तकर्ता डेटा के क्रम को सुनिश्चित करने के लिए उसे पुनः व्यवस्थित करता है।
पावती संख्यायह एक अनुक्रम संख्या है जिसका उपयोग TCP में डेटा प्राप्ति की पुष्टि करने के लिए किया जाता है। यह उस अगले डेटा की अनुक्रम संख्या को दर्शाता है जिसे प्रेषक प्राप्त करने की अपेक्षा करता है। TCP कनेक्शन में, प्राप्तकर्ता प्राप्त डेटा पैकेट खंड की अनुक्रम संख्या के आधार पर यह निर्धारित करता है कि कौन सा डेटा सफलतापूर्वक प्राप्त हुआ है। जब प्राप्तकर्ता डेटा सफलतापूर्वक प्राप्त कर लेता है, तो वह प्रेषक को एक ACK पैकेट भेजता है, जिसमें पावती संख्या होती है। ACK पैकेट प्राप्त करने के बाद, प्रेषक उत्तर संख्या की पुष्टि करने से पहले यह सुनिश्चित कर सकता है कि डेटा सफलतापूर्वक प्राप्त हो गया है।
एक TCP सेगमेंट के कंट्रोल बिट्स में निम्नलिखित शामिल होते हैं:
ACK बिटजब यह बिट 1 होता है, तो इसका मतलब है कि स्वीकृति उत्तर फ़ील्ड मान्य है। TCP निर्दिष्ट करता है कि प्रारंभिक कनेक्शन स्थापित होने पर SYN पैकेट को छोड़कर, इस बिट को 1 पर सेट किया जाना चाहिए।
आरएसटी बिटजब यह बिट 1 होता है, तो यह इंगित करता है कि टीसीपी कनेक्शन में कोई अपवाद है और कनेक्शन को जबरदस्ती डिस्कनेक्ट करना होगा।
SYN बिटजब यह बिट 1 पर सेट होता है, तो इसका मतलब है कि कनेक्शन स्थापित किया जाना है और अनुक्रम संख्या का प्रारंभिक मान अनुक्रम संख्या फ़ील्ड में सेट किया जाता है।
फिन बिटजब यह बिट 1 होता है, तो इसका मतलब है कि भविष्य में और कोई डेटा नहीं भेजा जाएगा और कनेक्शन वांछित है।
टीसीपी के विभिन्न कार्यों और विशेषताओं को टीसीपी पैकेट खंडों की संरचना द्वारा दर्शाया जाता है।
यूडीपी क्या है? (मायलिंकिंग का)नेटवर्क टैपऔरनेटवर्क पैकेट ब्रोकरयह TCP और UDP दोनों पैकेटों को प्रोसेस कर सकता है।
यूज़र डेटाग्राम प्रोटोकॉल (UDP) एक कनेक्शन रहित संचार प्रोटोकॉल है। TCP की तुलना में, UDP में जटिल नियंत्रण तंत्र नहीं होते हैं। UDP प्रोटोकॉल अनुप्रयोगों को कनेक्शन स्थापित किए बिना सीधे एनकैप्सुलेटेड IP पैकेट भेजने की अनुमति देता है। जब डेवलपर TCP के बजाय UDP का उपयोग करना चुनता है, तो एप्लिकेशन सीधे IP से संचार करता है।
यूडीपी प्रोटोकॉल का पूरा नाम यूजर डेटाग्राम प्रोटोकॉल है, और इसका हेडर केवल आठ बाइट्स (64 बिट्स) का होता है, जो बहुत संक्षिप्त है। यूडीपी हेडर का प्रारूप इस प्रकार है:
गंतव्य और स्रोत बंदरगाहइनका मुख्य उद्देश्य यह बताना है कि यूडीपी को पैकेट किस प्रक्रिया को भेजने चाहिए।
पैकेट का आकारपैकेट आकार फ़ील्ड में यूडीपी हेडर का आकार और डेटा का आकार दोनों शामिल होते हैं।
अंततः,यूडीपी हेडर और डेटा की विश्वसनीय डिलीवरी सुनिश्चित करने के लिए डिज़ाइन किया गया चेकसम, यूडीपी पैकेट के प्रसारण के दौरान हुई किसी त्रुटि या खराबी का पता लगाने का काम करता है ताकि डेटा की अखंडता सुनिश्चित हो सके।
Mylinking में TCP और UDP के बीच अंतरनेटवर्क टैपऔरनेटवर्क पैकेट ब्रोकरयह TCP और UDP दोनों पैकेटों को प्रोसेस कर सकता है।
TCP और UDP निम्नलिखित पहलुओं में भिन्न हैं:
संबंधTCP एक कनेक्शन-ओरिएंटेड ट्रांसपोर्ट प्रोटोकॉल है जिसमें डेटा ट्रांसफर करने से पहले कनेक्शन स्थापित होना आवश्यक होता है। दूसरी ओर, UDP को कनेक्शन की आवश्यकता नहीं होती और यह डेटा को तुरंत ट्रांसफर कर सकता है।
सेवा वस्तुTCP एक-से-एक दो-बिंदु सेवा है, यानी एक कनेक्शन में आपस में संवाद करने के लिए केवल दो छोर होते हैं। हालांकि, UDP एक-से-एक, एक-से-अनेक और अनेक-से-अनेक अंतःक्रियात्मक संचार का समर्थन करता है, जो एक ही समय में कई होस्ट के साथ संवाद कर सकता है।
विश्वसनीयताTCP डेटा को विश्वसनीय रूप से वितरित करने की सेवा प्रदान करता है, जिससे यह सुनिश्चित होता है कि डेटा त्रुटि रहित, हानि रहित, डुप्लिकेट रहित है और मांग पर प्राप्त होता है। दूसरी ओर, UDP अपना सर्वोत्तम प्रयास करता है, लेकिन विश्वसनीय वितरण की गारंटी नहीं देता। UDP में डेटा हानि और अन्य समस्याएं संचरण के दौरान उत्पन्न हो सकती हैं।
भीड़ नियंत्रण, प्रवाह नियंत्रणTCP में कंजेशन कंट्रोल और फ्लो कंट्रोल तंत्र होते हैं, जो नेटवर्क की स्थितियों के अनुसार डेटा ट्रांसमिशन दर को समायोजित करके डेटा ट्रांसमिशन की सुरक्षा और स्थिरता सुनिश्चित करते हैं। वहीं, UDP में कंजेशन कंट्रोल और फ्लो कंट्रोल तंत्र नहीं होते हैं, इसलिए नेटवर्क में अत्यधिक भीड़ होने पर भी यह UDP भेजने की दर में कोई समायोजन नहीं करता है।
शीर्षTCP में हेडर की लंबाई आमतौर पर 20 बाइट्स होती है, जो ऑप्शन फ़ील्ड का उपयोग करने पर बढ़ जाती है। दूसरी ओर, UDP में हेडर की लंबाई केवल 8 बाइट्स होती है, इसलिए UDP में हेडर ओवरहेड कम होता है।

TCP और UDP अनुप्रयोग परिदृश्य:
TCP और UDP दो अलग-अलग ट्रांसपोर्ट लेयर प्रोटोकॉल हैं, और उनके अनुप्रयोग परिदृश्यों में कुछ अंतर हैं।
क्योंकि TCP एक कनेक्शन-ओरिएंटेड प्रोटोकॉल है, इसलिए इसका उपयोग मुख्य रूप से उन स्थितियों में किया जाता है जहाँ विश्वसनीय डेटा डिलीवरी की आवश्यकता होती है। इसके कुछ सामान्य उपयोग इस प्रकार हैं:
FTP फ़ाइल स्थानांतरण: TCP यह सुनिश्चित कर सकता है कि स्थानांतरण के दौरान फाइलें खो न जाएं या दूषित न हों।
HTTP/HTTPS: टीसीपी वेब सामग्री की अखंडता और शुद्धता सुनिश्चित करता है।
क्योंकि UDP एक कनेक्शन रहित प्रोटोकॉल है, इसलिए यह विश्वसनीयता की गारंटी नहीं देता है, लेकिन इसमें दक्षता और वास्तविक समय की विशेषताएं हैं। UDP निम्नलिखित परिदृश्यों के लिए उपयुक्त है:
कम पैकेट वाला ट्रैफ़िक, जैसे DNS (डोमेन नेम सिस्टम)DNS क्वेरी आमतौर पर छोटे पैकेट होते हैं, और UDP उन्हें तेजी से पूरा कर सकता है।
वीडियो और ऑडियो जैसे मल्टीमीडिया संचारउच्च रीयल-टाइम आवश्यकताओं वाले मल्टीमीडिया ट्रांसमिशन के लिए, यूडीपी कम विलंबता प्रदान कर सकता है ताकि यह सुनिश्चित किया जा सके कि डेटा समय पर प्रसारित हो सके।
प्रसारण संचारयूडीपी एक से अनेक और अनेक से अनेक संचार का समर्थन करता है और इसका उपयोग ब्रॉडकास्ट संदेशों के प्रसारण के लिए किया जा सकता है।
सारांश
आज हमने TCP के बारे में सीखा। TCP एक कनेक्शन आधारित, विश्वसनीय, बाइट-स्ट्रीम आधारित ट्रांसपोर्ट लेयर संचार प्रोटोकॉल है। यह कनेक्शन स्थापित करने, हैंडशेक और एक्नॉलेजमेंट के माध्यम से डेटा के विश्वसनीय ट्रांसमिशन और व्यवस्थित रिसेप्शन को सुनिश्चित करता है। TCP प्रोटोकॉल प्रक्रियाओं के बीच संचार को साकार करने के लिए पोर्ट का उपयोग करता है, और विभिन्न होस्ट पर चलने वाली एप्लिकेशन प्रक्रियाओं के लिए प्रत्यक्ष संचार सेवाएं प्रदान करता है। TCP कनेक्शन फुल-डुप्लेक्स होते हैं, जो एक साथ द्विदिशात्मक डेटा स्थानांतरण की अनुमति देते हैं। इसके विपरीत, UDP एक कनेक्शन रहित संचार प्रोटोकॉल है, जो विश्वसनीयता की गारंटी नहीं देता है और उच्च रीयल-टाइम आवश्यकताओं वाले कुछ परिदृश्यों के लिए उपयुक्त है। TCP और UDP कनेक्शन मोड, सेवा ऑब्जेक्ट, विश्वसनीयता, कंजेशन नियंत्रण, फ्लो नियंत्रण और अन्य पहलुओं में भिन्न हैं, और उनके अनुप्रयोग परिदृश्य भी भिन्न हैं।
पोस्ट करने का समय: 03 दिसंबर 2024



