HTTP2.0 draft04が公開されました + その他

7月8日に5つめとなるHTTP2.0 draft 04が公開されました。
http://tools.ietf.org/html/draft-ietf-httpbis-http2-04


今までの非常にざっくりした流れはこのようになっています。



仕様の中でも触れられている通り、出すとしていたimplementation draftと呼ばれていてものになります。
この仕様に則って、8月5日に相互運用性テスト(Interoperability testing)が行われる予定です。また、合わせて8月の5〜7日にドイツのハンブルクでinterim meetingが行われ、HTTP2.0について議論される予定です。



draft 04における変更点ですが
6月13,14日に行われたinterim meetingの議論の結果が多く反映されているようです。
正直、全然追えてないのでメモ書き程度になります

  • HTTP/2.0 Protocol Overviewの章を追加。フレーム、多重化、セマンティクスの概要が書かれています
  • header compressionの仕様をリファレンスに追加
  • HEADERS+PRIORITYフレームを、HEADERSフレームに変更(priority値は含む)
  • PRIORITYフレームを追加しストリームのpriorityを再設定可能に
  • HTTP1.1からアップグレードする際に、HTTP2-Settingsヘッダを付加しSETTINGS_INITIAL_WINDOW_SIZE等を設定する
  • Stream Statesの項目追加。ストリームのライフサイクルについての詳しい説明が加わりました
  • HTTP Message Exchangesの章が追加されました。HTTP1.1の通信が、HTTP2.0だとどうなるか例が示されています

header compressionの仕様についても更新が行われていますが、追えていませんorz

その他HTTP2.0 周りの話題

JANOG32ミーティング

7月4,5日に大阪でJANOG32ミーティング(URL)というイベントが開催されました。
僕はいけなかったのですが、その中で「HTTP 2.0のインパクト」というセッションが行われ、HTTP2.0に関しての発表があったようです。
資料も公式HPにアップ(URL)されているようですので、気になる人は目を通してみるといいと思います。

node-http2

GSoCでGábor Molnár氏によって開発されている、HTTP2.0のnode実装。
簡単なフレームや、ヘッダ圧縮について、ちゃくちゃくと開発が進んでいるようです。
彼のGitHubとブログからその様子が確認できます。
GitHub : https://github.com/molnarg/node-http2
blog : http://gabor.molnar.es/

ALPN

ChromeがALPNに対応したようです。
GoogleのサーバとHTTPSで通信する際は、ALPNでのネゴシエーションを行なっているみたいです