2013-07-11 32 views
13

करने के लिए सर्वर यह एक तरीका है कि यूडीपी का उपयोग कर को छोड़कर Socket.io की कार्यक्षमता (और अधिमानतः एपीआई) (WebSockets) की नकल करता में पर Node.js WebRTC डाटा चैनल का उपयोग करना संभव है?WebRTC डेटा चैनल ग्राहकों यूडीपी संचार

संक्षेप में मैं एक सर्वर Node.js चल रहा है जिसके साथ ब्राउज़र ग्राहकों के लिए एक पूर्ण द्वैध द्वि दिशात्मक यूडीपी जावास्क्रिप्ट के माध्यम से संबंध स्थापित कर सकते करना चाहते हैं।

उत्तर

8

Node.js के लिए एक WebRTC मॉड्यूल है: https://js-platform.github.io/node-webrtc/

स्थापना (कम से कम कहने के लिए) वास्तव में बोझिल हो सकता है, लेकिन यदि आप सफल हो तुम एक के रूप में अपने Node.js सर्वर अधिनियम बनाने के लिए सक्षम हो जाएगा ब्राउजर के रूप में वेबआरटीसी सहकर्मी। इस तरह आप ब्राउज़र और अपने node.js सर्वर के बीच एक डेटा चैनल खोलने में सक्षम होंगे।

हम प्रदर्शन विशेषताओं का मूल्यांकन करने के लिए हमारे अनुसंधान परियोजना में उपयोग में इस किया है।

+0

क्या node.js सर्वर को एकाधिक ब्राउज़र क्लाइंट से कनेक्ट करने के लिए एक इंटरफेस है और उन्हें कैसे संभालता है Socket.io में एकाधिक websocket क्लाइंट हैंडल किया जाता है? – Willem

+1

शायद आप वेबआरटीसी जेएस रैपर में से एक का उपयोग कर सकते हैं। Webrtc.io या orca.js जैसे रैपर के साथ समस्या यह है कि वे ब्राउज़र पर उपयोग किए जाने के लिए बनाए गए हैं, इसलिए आपको सर्वर सर्वर पर उपयोग करने के लिए शायद उन्हें अनुकूलित करना होगा। – Makkes

+0

तो वे रैपर एक ब्राउज़र क्लाइंट को कई अन्य ब्राउज़रों के साथ संचार में एंड-पॉइंट के रूप में कार्य करने की अनुमति देते हैं? – Willem

4

हाँ, सिद्धांत रूप में आप ऐसा करने में सक्षम होना चाहिए। हालांकि, आपको एक नोड मॉड्यूल की आवश्यकता होगी जो वेबआरटीसी डेटा चैनल का समर्थन करता है, ताकि आप इसे किसी अन्य सहकर्मी की तरह कनेक्ट कर सकें। दुर्भाग्यवश, current modules के माध्यम से स्कैनिंग, मुझे वह नहीं दिखाई देता है जो डेटा चैनल लागू करता है।

दूसरी बात नोट करने के लिए WebRTC डेटा चैनलों विश्वसनीय मोड SCTP (Firefox और Chrome) के साथ लागू किया जा रहा के साथ विभिन्न reliability modes के लिए विन्यस्त किया जा सकता है।

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

+0

धन्यवाद, जो मेरे संदेह की पुष्टि करता है। मुझे आशा है कि कोई ऐसा मॉड्यूल तैयार करेगा जो एकाधिक कनेक्ट किए गए ग्राहकों के समर्थन के साथ Websockets के एपीआई की नकल करता है। – Willem

+1

मैं वास्तव में अविश्वसनीय मोड (0 retransmits) में सबसे अधिक रुचि रखते हैं। क्या वेबआरटीसी एससीटीपी या कुछ और के माध्यम से इसका समर्थन करता है? – Willem

+1

मैं अविश्वसनीय मोड शुरुआत [क्रोम में आरटीपी] (https://code.google.com/p/webrtc/issues/detail?id=1494) पर बनाया गया था लगता है, लेकिन है कि सब कुछ [अंततः SCTP के आधार पर किया] होगा (https://code.google.com/p/webrtc/issues/detail?id=1430)। कि मोज़िला डेटा चैनल के साथ उपयोग करता SCTP पुस्तकालय यहाँ है: https://code.google.com/p/sctp-refimpl/ –

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