Re:The WebSocket protocol "Last Call"
by speckledjim on Tuesday July 19, 2011 @05:02AM
(#2780077)
All 3 versions are reasonably successful, and in any event, it's not rocket science to try websocket and fallback on comet upon failure.
The latest version is probably the most robust if your ISP likes fiddling with your HTTP though.
It's not about ISPs fiddling with HTTP, it's about using existing reverse proxies / load balancers, such as nginx, haproxy, perlbal, pound, etc. None of them work in HTTP mode with the spec currently in the wild. If you use a non-layer7 balancer, you lose the ability to inject X-Forwarded-For. It's a real concern for sites that serve websocket traffic from more than one machine.
Re:The WebSocket protocol "Last Call"
by speckledjim on Tuesday July 19, 2011 @05:31AM
(#2780132)
Firefox 6 uses the latest spec. So it's active in the wild already.
I don't think reverse proxies are that big a deal personally, as you as a website owner have control of that part of the system. If the reverse proxy can't deal with it, fix it so it can or use a different one or write your own.
There's certainly ISPs out there that proxy all HTTP through their own cache/proxies and fallover with previous spec websocket. Of course the alternative is just to use HTTPS.
The handshake requires sending 8 bytes of body data, without a suitable content-length header. Without the content-length header, http proxies won't pass on those 8 bytes, so handshakes fail.
Hopefully this is addressed in the newest revision.