2010-06-08 14 views
15

जब कोई क्लाइंट टीसीपी का उपयोग कर किसी सर्वर से कनेक्ट होता है, तो टीसीपी स्ट्रीम के लिए एक नई सॉकेट बनाई जाती है। क्या कनेक्शन उसी पोर्ट पर रहता है जो कनेक्शन बनाया गया था या क्या यह किसी अन्य बंदरगाह में बदल जाता है?क्या पोर्ट बदलता है जब एक सर्वर द्वारा एक टीसीपी कनेक्शन स्वीकार किया जाता है?

उत्तर

16

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

+1

सत्र स्रोत और गंतव्य आईपी और पोर्ट, और प्रोटोकॉल के संयोजन द्वारा पहचाना जाता है। इसलिए यह 5-टुपल है जो विशिष्ट रूप से कनेक्शन की पहचान करता है, न कि 4-टुपल। – treecoder

+1

@treecoder कौन सा स्तर प्रोटोकॉल? परिवहन स्तर? या आवेदन स्तर? जैसे '' या ''? – smwikipedia

+0

आवेदन स्तर – KawaiKx

6

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

संबंधित मुद्दे