Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WebRTC Data Channel server to clients UDP communication

Is it possible to use WebRTC Data Channels on Node.js in a way that mimics the functionality (and preferably API) of Socket.io (WebSockets) except using UDP?

In essence I want to have a server running Node.js with which browser clients can establish a full duplex bi directional UDP connection via JavaScript.

like image 847
Willem Avatar asked Jul 11 '13 23:07

Willem


2 Answers

There is a WebRTC module for node.js: https://js-platform.github.io/node-webrtc/

The installation can be really cumbersome (to say the least) but if you succeed you'll be able to make your node.js server act as a WebRTC peer just as browsers do. This way you'd be able to open a Data Channel between a browser and your node.js server.

We have this in use in our research project to evaluate performance characteristics.

like image 57
Makkes Avatar answered Oct 06 '22 18:10

Makkes


Yes, in theory you should be able to to do this. However, you'll need a node module that supports WebRTC data channels, so that you can connect to it like any other peer. Unfortunately, scanning through the current modules, I don't see one that implements the data channel.

The other thing to note is the WebRTC data channels can be configured for different reliability modes with the reliable mode being implemented with SCTP (Firefox and Chrome).

When testing the data channels I would recommend using Firefox since the WebRTC work was split such that Chrome initially focused on PeerConnection and Firefox on DataChannel (so Firefox is still ahead in their implementation of the DataChannel).

like image 40
tomtheengineer Avatar answered Oct 06 '22 17:10

tomtheengineer