WebRTC Data Channel in Workers Proposal

I would like to propose that we support WebRTC Data Channel in Workers
(`WebWorker`, `ServiceWorker`, etc.)

WebRTC DataChannel is basically a drop-in replacement for `WebSocket`,
except it's peer-to-peer. For all the same reasons that `WebSocket`
was added to the `Worker` spec, we should add WebRTC DataChannel.

Here are some possible use cases:

- DataChannel in a `ServiceWorker` would support the use case of "peer
assisted delivery" a la [PeerCDN](https://www.peercdn.com/faq.html),
CDN/P2P CDN video streaming delivery, file transfer, etc.

- DataChannel in a `WebWorker` would support offloading CPU intensive
data transfer and subsequent processing to another thread.

- DataChannel in a `SharedWorker` would let one construct and reuse a
DHT (a decentralized/distributed lookup service similar to a hash
table) across tabs. Useful for routing to nodes in decentralized
applications.

Websockets are already available in Workers, so there likely aren't
any new security/privacy issues, just potential for exciting new data
channel use cases!

Received on Tuesday, 26 May 2015 15:09:20 UTC