WebSoocketではなくTCPSocketが欲しい!
現在、WebSocket は既存のHTTPプロキシを通した際にセキュリティ上の問題があるという理由で、Firefox 4 beta と Opera 11 で無効になっています。Chrome や Safari も悪意のある攻撃が始まったら無効にすると言っています。
そして、どのようなプロトコルにするかを IETF のメーリングリストであーだーこーだ議論されています。→ hybi Discussion Archive - Date Index
つまみ食いで読んだだけですが、話し合いは全然まとまっていないみたいです。TLSは重いからXORがいいとか、クッキーが使えるように普通のHTTPヘッダを使いたいとか、なんか色々です。(つまみ食いなので間違っていたらごめんなさい)
そもそも、既存のHTTPプロキシを通すSocketを作るというところにだいぶ無理があります。Skypeがルーター越えをするというのと同レベルの話じゃないでしょうか。バッドノウハウ過ぎて、IETFやW3Cでやるレベルのことなのだろうか?
複雑すぎる物を作ると大人数の話し合いではまとまらないというのは ECMAScript4 の反省ですが、同じ過ちを WebSocket で繰り返している気がします。
Flash には Socket クラスがあり、生の TCP が使えます。HTML5 でも TCPSocket を作って、生のTCPを使えるようにして、どうやって HTTP プロキシを通すかは、JavaScript のライブラリで解決すれば良い問題じゃないのでしょうか?
僕は、JavaScript は21世紀のC言語だと思っているのですが、仕様として用意すべき物はC言語同様、プリミティブな物にすべきだと思います。
TCPSocket と UDPSocket 作って!
(追記)ちなみに、ActionScriptでは似た話はas3corelibに入っているRFC2817Socketです。解説はここ→WordPress › Error。