क्या टीसीपी और यूडीपी सॉकेट समान पोर्ट का उपयोग कर सकते हैं?


104

सबसे पहले, एक ही सर्वर पर यूडीपी और टीसीपी दोनों का उपयोग करने में कोई समस्या है?

दूसरे, क्या मैं उसी पोर्ट नंबर का उपयोग कर सकता हूं?

जवाबों:


110

हां, आप टीसीपी और यूडीपी दोनों के लिए एक ही पोर्ट नंबर का उपयोग कर सकते हैं। कई प्रोटोकॉल पहले से ही ऐसा करते हैं, उदाहरण के लिए DNS udp / 53 और पर काम करता है tcp / 53 ।

तकनीकी रूप से प्रत्येक प्रोटोकॉल के लिए पोर्ट पूल पूरी तरह से स्वतंत्र होते हैं, लेकिन उच्च स्तर के प्रोटोकॉल के लिए या तो टीसीपी या यूडीपी का उपयोग कर सकते हैं यह सम्मेलन है कि वे एक ही पोर्ट नंबर के लिए डिफ़ॉल्ट हैं

अपने सर्वर को लिखते समय, ध्यान रखें कि एक टीसीपी सॉकेट के लिए घटनाओं का अनुक्रम यूडीपी सॉकेट की तुलना में बहुत कठिन है, साथ ही साथ सामान्य socketऔर bindकॉल भी आपको listenऔर accept

इसके अलावा वह acceptकॉल एक नया सॉकेट लौटाएगा और यह वह सॉकेट है जिसे आपको फिर ईवेंट प्राप्त करने के लिए भी मतदान करना होगा। आपके सर्वर को acceptमूल सॉकेट पर कनेक्शन को जारी रखने के लिए तैयार रहना चाहिए , साथ ही साथ कई क्लाइंट्स को सर्विस देनी होगी, जिनमें से प्रत्येक को अपने सॉकेट्स पर इवेंट प्राप्त करने के लिए ट्रिगर किया जाएगा।


2
@ एरिक फोर्टिस आरएफसी 1700 उदाहरणों से भरा है, आइए उन सभी को सूचीबद्ध न करें जो हम करेंगे? ;-)
लोर्ने

2
@ एरिक फोर्टिस्ट को 'नेटबीआईओएस पोर्ट नंबर' के बारे में सबको क्यों जानना चाहिए?
लोर्ने

4
कृपया इसे एक प्रश्न के रूप में पोस्ट करें ताकि आप मुझे जवाब दे सकें
एरिक फोर्टिस

6
कुछ इस उत्तर की व्याख्या नहीं करता है: परिवहन स्तर (OSI मॉडल स्तर 4) का प्रत्येक प्रोटोकॉल (लेकिन कुछ का यह अर्थ नहीं हो सकता है) के लिए 'पोर्ट' सिमेंटिक विशिष्ट है। तो टीसीपी के अपने पोर्ट हैं, जिनकी व्याख्या टीसीपी स्टैक द्वारा की जाती है; यूडीपी के अपने पोर्ट हैं, जिनकी व्याख्या यूडीपी स्टैक द्वारा की जाती है। तो कहने के लिए, पोर्ट यूडीपी और टीसीपी के बीच साझा नहीं किए जाते हैं; यह केवल ऐसा होता है कि दोनों प्रोटोकॉल में "पोर्ट" की एक ही परिभाषा है और यह कि सरलीकरण करने के लिए, हम एक ही सेवा के लिए विभिन्न प्रकारों के कई कनेक्शनों के लिए समान पोर्ट मान का उपयोग करते हैं।
मूला

2
@EricFortis क्योंकि इस तरह का सवाल मेरे या किसी और के लिए शून्य ब्याज का होगा, जैसा कि इसे दिलचस्प मानने के लिए आपके कारण होंगे, और एक आरएफसी का हवाला देते हुए आपकी आपत्तियों को यहां ठीक उसी उद्देश्य के लिए बताया जाएगा जिस पर हम चर्चा कर रहे हैं।
लोर्ने का

8

सबसे पहले, सर्वर पर tcp और udp दोनों का उपयोग करने में कोई समस्या नहीं है।

दूसरे, हमारे पास एक ही पोर्ट पर यूडीपी और टीसीपी दोनों अनुरोध हो सकते हैं, क्योंकि प्रत्येक अनुरोध को आईपी, डेस्टिनेशन आईपी, सोर्स पोर्ट, डेस्टिनेशन पोर्ट, प्रोटोकोल (प्रोटोकॉल के रूप में टीसीपी या यूडीपी हो सकता है) द्वारा निहित क्विंटुपल द्वारा पहचाना जाता है।


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

मेरी गलती को इंगित करने के लिए धन्यवाद। यह सही है कि यूडीपी का उपयोग करने का कोई संबंध नहीं है।
मौली
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.