3 ms·
ok, since there's little in the way of useful responses, here are some results i've found since asking. first, there's a draft standard for arranging p2p conne
by andrewcooke 15y ago
ok, since there's little in the way of useful responses, here are some results i've found since asking.
first, there's a draft standard for arranging p2p connections with tcp hole punching (STUNT or STUN for TCP) - http://tools.ietf.org/html/draft-ietf-mmusic-ice-tcp-16 http://tools.ietf.org/html/draft-ietf-mmusic-ice-tcp-16
second, there's a draft standard for sip over websockets (sip is a protocol used to arrange a connection between two peers) - http://tools.ietf.org/html/draft-ibc-sipcore-sip-websocket-00 http://tools.ietf.org/html/draft-ibc-sipcore-sip-websocket-0...
these almost overlap, but there's an annoying gap, which is that i can still find no way to connect websockets to tcp. so you could use sip to negotiate a circuit, and you could use ice to close the circuit using tcp, but not (afaict) with websockets. furthermore, because of how websockets seems to be implemented (it's kind of multiplexed in to http, as far as i can tell) it seems like it would be hard to close this gap.
- andrewcooke 15y agoThis is so late I doubt anyone will see it, but I finally have an answer, thanks to Saul Ibarra Corretge. The missing link is WebRTC - http://www.webrtc.org/ http://www.webrtc.org/ You can set up a connection using SIP (see above) and then WebRTC will provide a Javascript API for making the connection between peers (and the WebRTC docs include various references to ICE which makes me suspect they will work correctly behind NAT etc). So it's possible with experimental Google APIs today ("Latest Google Chrome (dev channel) comes with WebRTC support" - Saul).