मैंने WebSockets पढ़ा है और मुझे आश्चर्य है कि ब्राउजर बस छोटे टीसीपी कनेक्शन क्यों नहीं खोल सकता और किसी अन्य डेस्कटॉप एप्लिकेशन की तरह सर्वर के साथ संवाद कर सकता था। और websockets के माध्यम से यह संचार संभव क्यों है?वेबसाकेट और शुद्ध टीसीपी के बीच मौलिक अंतर क्या है?
उत्तर
जब आप इंट्रानेट सीमा के भीतर काम कर रहे हों तो टीसीपी सॉकेट के माध्यम से संवाद करना आसान है, क्योंकि आपके पास उस नेटवर्क पर मशीनों पर नियंत्रण हो सकता है और टीसीपी कनेक्शन बनाने के लिए उपयुक्त पोर्ट खोल सकते हैं।
इंटरनेट पर, आप दूसरे छोर पर किसी और के सर्वर से संचार कर रहे हैं। वे बेहद कनेक्शन के लिए पुरानी सॉकेट खोलने की संभावना नहीं है। आम तौर पर उनके पास केवल कुछ मानक होंगे जैसे HTTP के लिए पोर्ट 80 या HTTPS के लिए 443। तो, सर्वर के साथ संवाद करने के लिए आप उन बंदरगाहों में से किसी एक का उपयोग करके कनेक्ट करने के लिए बाध्य हैं।
यह देखते हुए कि ये वेब सर्वर के लिए मानक बंदरगाह हैं जो आम तौर पर HTTP बोलते हैं, इसलिए आप HTTP प्रोटोकॉल के अनुरूप होने के लिए बाध्य हैं, अन्यथा सर्वर आपसे बात नहीं करेगा। वेब सॉकेट का उद्देश्य आपको HTTP के माध्यम से कनेक्शन शुरू करने की अनुमति देना है, लेकिन फिर वेब सॉकेट प्रोटोकॉल का उपयोग करने के लिए बातचीत करें (यह मानते हुए कि सर्वर ऐसा करने में सक्षम है) और अधिक "टीसीपी सॉकेट" जैसी संचार स्ट्रीम की अनुमति देता है।
आसान स्पष्टीकरण के लिए धन्यवाद, एश। – xap4o
तो मूल रूप से वेबस्केट टीसीपी के लिए एक आवरण है, इस अर्थ में कि यूडीपी बस आईपी के लिए एक रैपर है? – Pacerier
@Pacerier: एक वेबसाकेट को कुछ प्रकार के परिवहन प्रोटोकॉल को संचालित करने की आवश्यकता होती है, लेकिन उस परिवहन परत को टीसीपी नहीं होना चाहिए (हालांकि यह लगभग हमेशा अभ्यास में टीसीपी होने जा रहा है)। आप वेबसाकेट्स को टीसीपी के चारों ओर एक प्रकार का रैपर के रूप में सोच सकते हैं, लेकिन मुझे विश्वास नहीं है कि दोनों के बीच कोई भी अनुवांशिक लिंक है। – Ash
वेब ब्राउज़र एप्लिकेशन परत पर काम करते हैं, जबकि टीसीपी ट्रांसपोर्ट लेयर पर काम करता है। वेब एप्लिकेशन डेवलपर के रूप में, ट्रांसपोर्ट लेयर पर कच्चे बाइट्स के बजाय एप्लिकेशन लेयर के माध्यम से तार पर संदेश भेजना आसान है।
अंतर्निहित वेबसाकेट टीसीपी है, यह सादगी के लिए दूर है।
वेबसाइटसेट एक अनुप्रयोग परत प्रोटोकॉल है जबकि टीसीपी परिवहन परत प्रोटोकॉल है। परिवहन परत पर, हमारे पास आमतौर पर टीसीपी और यूडीपी प्रोटोकॉल होता है। आवेदन परत से किसी भी संदेश को अन्य मशीन पर प्रेषित करने के लिए परिवहन परत के माध्यम से जाना होगा। इसलिए, वेबसाकेट और टीसीपी का एक-दूसरे से संबंध है और तुलनात्मक नहीं हो सकता है।
- 1. वेबसाकेट संस्करणों के बीच प्रोटोकॉल अंतर क्या हैं?
- 2. net.tcp और TCP प्रोटोकॉल के बीच क्या अंतर है?
- 3. क्या मॉलोक और हीपअलोक (पोर्टेबिलिटी से अलग) के बीच कोई मौलिक अंतर है?
- 4. सॉकेट कनेक्शन और टीसीपी कनेक्शन के बीच कोई अंतर?
- 5. टीसीपी - कंजेशन विंडो के बीच अंतर और विंडो
- 6. ओएसजीआई और जावा ईई के बीच मौलिक मतभेद क्या हैं?
- 7. वेबसाकेट टीसीपी पैकेट एक साथ चिपकते हैं?
- 8. # {} $ {} और% {} के बीच क्या अंतर है?
- 9. [अपरिभाषित] और [,] के बीच क्या अंतर है?
- 10. $ और $$ के बीच क्या अंतर है?
- 11. के बीच क्या अंतर है:। और: आर !?
- 12. भिन्नता और '-' के बीच क्या अंतर है?
- 13. "$^एन" और "$ +" के बीच क्या अंतर है?
- 14. एसीएक्स और .cshtml के बीच क्या अंतर है?
- 15. नियंत्रक और सेवा के बीच क्या अंतर है?
- 16. जेपीए और जेडीओ विनिर्देशों के बीच क्या अंतर है?
- 17. निर्माण और तैनाती के बीच क्या अंतर है?
- 18. क्या कोई निजी और संरक्षित शुद्ध वर्चुअल फ़ंक्शन के बीच कोई अंतर है?
- 19. बूस्ट :: एएसओओपी में टीसीपी :: एंडपॉइंट और udp :: एंडपॉइंट के बीच क्या अंतर है?
- 20. पूल और क्लस्टर के बीच अंतर
- 21. के बीच क्या अंतर है?
- 22. पैटर्न मिलान और गार्ड के बीच क्या अंतर है?
- 23. फ्लेक्स/लेक्स और वाईएसीसी/बाइसन के बीच क्या अंतर है?
- 24. अंतर और कहां के बीच क्या अंतर है?
- 25. गिट प्रोजेक्ट बनाम भंडार, मौलिक अंतर क्या है?
- 26. एचबीएएस कैसंड्रा कॉचडब मोंगोडब..यह मौलिक अंतर?
- 27. आंतरिक/स्थानीय/अज्ञात कक्षाओं के संदर्भ में जावा और सी # के बीच मौलिक मतभेद क्या हैं?
- 28. सी में स्रोत और शीर्षलेख फ़ाइलों के बीच कोई मौलिक अंतर?
- 29. file_get_contents और fread बीच क्या अंतर है
- 30. क्या बीच का अंतर है :: और ::: स्काला
क्योंकि वेबसाकेट और ब्राउज़र HTTP के माध्यम से एप्लिकेशन स्तर पर संचार करते हैं और टीसीपी के माध्यम से परिवहन परत पर नहीं? – anonymous
लेकिन समस्या क्या है? उन्हें टीसीपी का उपयोग करने दें। – xap4o
अधिक जानकारी http://stackoverflow.com/questions/8051516/how-to-establish-a-tcp-socket-connection-from-a-web-browser-client-side –