टीसीपी 3-वे हैंडशेक (SYN, SYN-ACK,ACK)
⚡ स्मार्ट सारांश
TCP 3-वे हैंडशेक वह कनेक्शन-सेटअप प्रक्रिया है जिससे प्रत्येक TCP सत्र शुरू होता है। क्लाइंट और सर्वर SYN, SYN-ACK और ACK पैकेट का आदान-प्रदान करते हैं ताकि अनुक्रम संख्याओं को सिंक्रनाइज़ किया जा सके और एप्लिकेशन डेटा का एक भी बाइट भेजने से पहले दोनों पक्षों की तैयारी की पुष्टि की जा सके।

टीसीपी थ्री-वे हैंडशेक क्या है?
RSI टीसीपी थ्री-वे हैंडशेक यह वह प्रक्रिया है जिसका उपयोग क्लाइंट और सर्वर एक दूसरे पर करते हैं। टीसीपी/आईपी नेटवर्क किसी भी एप्लिकेशन डेटा के आदान-प्रदान से पहले एक विश्वसनीय कनेक्शन स्थापित करने के लिए। जैसा कि नाम से ही स्पष्ट है, इसमें तीन चरण होते हैं जिनमें दोनों पक्ष सिंक्रोनाइज़ेशन (SYN) और एक्नॉलेजमेंट (ACK) पैकेट का आदान-प्रदान करते हैं और उन प्रारंभिक अनुक्रम संख्याओं पर सहमत होते हैं जिनका वे उपयोग करेंगे।
यह हैंडशेक इस तरह से डिज़ाइन किया गया है कि दोनों छोर सममित रूप से टीसीपी सॉकेट शुरू कर सकते हैं, बातचीत कर सकते हैं और समाप्त कर सकते हैं। हैंडशेक पूरा होने के बाद, कनेक्शन फुल-डुप्लेक्स हो जाता है - दोनों पक्ष समानांतर रूप से डेटा भेज और प्राप्त कर सकते हैं जब तक कि कोई भी पक्ष सत्र बंद करने के लिए FIN जारी नहीं करता।
टीसीपी संदेश प्रकार
हैंडशेक और टियरडाउन के दौरान चार कंट्रोल फ्लैग बार-बार दिखाई देते हैं।
| मैसेज | विवरण |
|---|---|
| SYN | यह कनेक्शन शुरू करता है और उपकरणों के बीच अनुक्रम संख्याओं को सिंक्रनाइज़ करता है। |
| एसीके | दूसरे पक्ष को इस बात की पुष्टि करता है कि पिछला खंड प्राप्त हो गया था। |
| SYN-एसीके | एक संयुक्त संदेश — स्थानीय डिवाइस से एक SYN और साथ ही सहकर्मी के पहले के SYN की ACK। |
| फिन | किसी कनेक्शन को सुचारू रूप से समाप्त करने के लिए उपयोग किया जाता है। |
टीसीपी थ्री-वे हैंडशेक प्रक्रिया
TCP ट्रैफ़िक हमेशा तीन-तरफ़ा हैंडशेक से शुरू होता है। क्लाइंट सर्वर के साथ एक सेशन का अनुरोध करके बातचीत शुरू करता है।
तीन-तरफ़ा हैंडशेक आरेख।
- चरण 1 — SYN: क्लाइंट SYN फ्लैग सेट करके एक सेगमेंट भेजता है। यह सर्वर को बताता है कि "मैं संचार शुरू करना चाहता हूँ" और एक प्रारंभिक अनुक्रम संख्या प्रस्तावित करता है।
- चरण 2 — SYN-ACK: सर्वर एक ऐसे सेगमेंट के साथ प्रतिक्रिया करता है जिसमें SYN और ACK दोनों फ्लैग सेट होते हैं। ACK क्लाइंट के SYN की स्वीकृति देता है, और SYN सर्वर का अपना प्रारंभिक अनुक्रम संख्या प्रस्तावित करता है।
- चरण 3 — स्वीकृति: क्लाइंट, सर्वर के SYN-ACK का अंतिम ACK के साथ जवाब देता है। अब कनेक्शन स्थापित हो गया है और दोनों पक्ष काम शुरू कर सकते हैं। transmitटिंग एप्लिकेशन डेटा।
वास्तविक दुनिया का उदाहरण
यहां ठोस अनुक्रम संख्याओं के साथ एक हल किया हुआ उदाहरण दिया गया है।
- होस्ट X सर्वर को TCP SYN पैकेट भेजकर कनेक्शन शुरू करता है। पैकेट में एक यादृच्छिक प्रारंभिक अनुक्रम संख्या होती है — उदाहरण के लिए,
4321— यह उस बाइट स्ट्रीम की शुरुआत को दर्शाता है जिसे होस्ट X भेजेगा। - सर्वर SYN प्राप्त करता है और SYN-ACK के साथ उत्तर देता है। ACK संख्या होस्ट X की अनुक्रम संख्या में 1 की वृद्धि के बराबर होती है।
4322), और SYN सर्वर की अपनी प्रारंभिक अनुक्रम संख्या प्रस्तावित करता है। - होस्ट X एक अंतिम स्वीकृति के साथ उत्तर देता है जिसका स्वीकृति नंबर सर्वर के अनुक्रम संख्या में 1 की वृद्धि के बराबर होता है।
डेटा एक्सचेंज पूरा होने के बाद, TCP चार-तरफ़ा FIN/ACK अनुक्रम के साथ कनेक्शन को समाप्त कर देता है ताकि दोनों छोर सॉकेट को सुचारू रूप से छोड़ सकें।
TCP को तीन-तरफ़ा हैंडशेक की आवश्यकता क्यों है?
यह समझौता महज एक औपचारिकता नहीं है - यह विश्वसनीय बाइट-स्ट्रीम परिवहन से जुड़ी तीन ठोस समस्याओं का समाधान करता है:
- अनुक्रम संख्या तुल्यकालन: दोनों पक्ष एक दूसरे के प्रारंभिक अनुक्रम संख्या को जान लेते हैं, जिसका उपयोग टीसीपी खोए हुए या अव्यवस्थित खंडों का पता लगाने के लिए करता है।
- कनेक्शन-स्थिति समझौता: तीसरा ACK इस बात की पुष्टि करता है कि सर्वर का SYN-ACK प्राप्त हो गया है, इसलिए दोनों पक्षों के बीच सहमति बनने तक कोई भी पक्ष डेटा भेजना शुरू नहीं करता है। कायम करना राज्य.
- डुप्लिकेट पैकेट से सुरक्षा: यादृच्छिक प्रारंभिक अनुक्रम संख्याएँ और समयबद्ध हैंडशेक स्थितियाँ पिछली सत्र के पुराने खंडों को गलती से स्वीकार किए जाने से रोकती हैं।
TCP हैंडशेक के साथ सामान्य समस्याएं
नेटवर्क संचार प्रक्रिया मजबूत है, लेकिन इसमें कुछ पहचानने योग्य कमियां आ सकती हैं। नेटवर्क इंजीनियरों को आमतौर पर निम्नलिखित में से कोई एक समस्या दिखाई देती है:
- SYN फ्लड हमले: एक दुर्भावनापूर्ण क्लाइंट SYN-ACK का जवाब दिए बिना हजारों SYN भेजता है, जिससे सर्वर की कनेक्शन तालिका समाप्त हो जाती है। SYN कुकीज़ इसका मानक बचाव हैं।
- आंशिक रूप से खुले कनेक्शन: जब तीसरा ACK खो जाता है, तो कनेक्शन आधा खुला रहता है और अंततः टाइमआउट द्वारा साफ हो जाता है।
- फ़ायरवॉल या NAT के कारण बीच में ही डेटा ड्रॉप होना: स्टेटफुल मिडलबॉक्स जो अपनी स्थिति खो देते हैं, वे SYN-ACK पैकेट को छोड़ सकते हैं और क्लाइंट को पुनः प्रयास करने के लिए मजबूर कर सकते हैं।
- RST रीसेट: यदि सर्वर अनुरोधित पोर्ट पर मौजूद नहीं है, तो वह SYN का उत्तर RST से देता है, जिससे प्रयास तुरंत समाप्त हो जाता है।


