मैं websocket और इसके आंतरिक कार्यान्वयन के बारे में अधिक जानने की कोशिश कर रहा हूं। लेकिन अभी भी कुछ चीजें समझ नहीं सकते हैं। मैंने गहराई से स्पष्टीकरण के लिए googling की कोशिश की, लेकिन उनमें से ज्यादातर सिर्फ उच्च स्तरीय अवलोकन देता है। बाद मेरी संदेह कर रहे हैंवेबसाइटसेट कनेक्शन सेटअप
1. मैं क्या पढ़ा के अनुसार, वेब सॉकेट सर्वर (सी #/सी ++ कार्यान्वयन) डिफ़ॉल्ट रूप से बंदरगाह 80 हालांकि हम किसी भी बंदरगाह का उपयोग कर सकते का उपयोग करता है, यह पसंद किया जाता है कि हम पोर्ट 80 का उपयोग के रूप में हम जीत गए कोई फ़ायरवॉल मुद्दे नहीं है। यदि ऐसा है, तो हम उसी पोर्ट (80) पर वेबसर्वर और वेब सॉकेट सर्वर दोनों को कैसे चला सकते हैं?
2. की है कि वेब सॉकेट सर्वर पोर्ट 81 पर चल रहा है मान लेते हैं और 80.
तो जब ब्राउज़र प्रारंभिक हाथ मिलाना HTTP अनुरोध जारी वेबसर्वर बंदरगाह पर चल रहा है (अपग्रेड: WebSocket) , यह अनुरोध पोर्ट 81 को भेजा गया। ठीक है? यदि ऐसा है, तो यह अनुरोध (नीचे देखें) HTTP प्रोटोकॉल से कोई संबंध नहीं है। लेकिन फिर भी हम HTTP प्रोटोकॉल हेडर का उपयोग करते हैं। क्यूं कर?
GET /mychat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw== Sec-WebSocket-Protocol: chat Sec-WebSocket-Version: 13 Origin: http://example.com
क्यों सहारे वे वर्तमान में एक सीधा टीसीपी/दिए गए पोर्ट के साथ IP कनेक्शन जारी करने के लिए सबसे ब्राउज़र में लागू ही WebSocket इंटरफ़ेस का उपयोग किसी HTTP सामान के बिना?
3. वहाँ किसी भी पैकेट आकार सीमा या डेटा/भेजे गए डेटा के लिए बफर सीमा है/ग्राहक/सर्वर से प्राप्त? यदि ऐसा है, तो क्या हमें डेटा फ्रेम करने और इसे स्वयं संभालने की आवश्यकता है?
4. क्या वेबसाईट सर्वर को हमेशा एक अलग सेवा/प्रक्रिया की आवश्यकता होती है? भविष्य में वेबसर्वर (आईआईएस, अपाचे) में प्रोसेस स्पेस के भीतर वेब सॉकेट सर्वर होस्ट करने के लिए समर्थन शामिल होगा?
वास्तव में अच्छे प्रश्न! – GameScripting
मुझे कहीं पढ़ना याद है कि विंडोज सर्वर का अगला संस्करण आईआईएस के तहत वेब सॉकेट का समर्थन करेगा। Http.sys http.sys के कार्यान्वयन के कारण WebSockets का समर्थन नहीं कर सकता है। अगर मुझे संदर्भ मिल जाए तो मैं इसे उत्तर में – JoshBerke