HTTP仕様書の編集者は、最初のドラフト2.0を公開したが、それはSPDYのそのままのコピーで、これからの差分のベースとして使われるだろう。新フィーチャを加えたり、あるものを削除したり、電話で数バイト変更したりなど多くの変更がなされる予定である。テスト実装が可能なドラフトは、来年の早い時期に公開される予定である。
HTTP 2.0は、IETFのHypertext Transfer Protocol Bis (httpbis)ワーキング・グループによって開発され、1999年のv1.1(RFC 2616)以来最初の新バージョンとなる。
HTTP 2.0のゴールは以下の通りである。
- 非同期の接続多重化
- ヘッダー圧縮、そして
- リクエスト-レスポンスのパイプライン化。
主要なゴールはまた、HTTP 1.1のセマンティクスと後方互換性を維持することである。
SPDYはGoogleによって開始されたHTTP互換のプロトコルで、 Chrome, Opera, Firefox, Amazon Silkブラウザーがサポートしている。
HTTP実装のボトルネックの1つは、HTTPが並列化に対して複数の接続に依存していることである。HTTPパイプライン化が助けとなりえるが、部分的多重化しか達成できない。更に、パイプライン化は、中継混信により既存のブラウザでは、配置できないことがわかっている。
SPDYは、フレーミング層を追加して、単一接続で多重化、並列ストリームを実現している。フレーミング層は、HTTP上のアプリのような、HTTPライクなリクエスト-レスポンスストリーム用に最適化されている。
SPDYは現行バージョンのHTTPに対して4つの改善を提供する。
- 多重化されたリクエスト
- 優先順位づけされたリクエスト
- 圧縮されたヘッダー
- サーバープッシュのストリーム(サーバープッシュ)
SPDYは、HTTPの既存セマンティクスを維持しようとしており、そのためクッキー、ETagなどのようなフィーチャも使える。
SPDYにおける多くのアーキテクチャ上のアプローチ(例えば多重化)は、W3C HTTP-NGワーキング・グループによって以前に研究され、1998年に中止した。HTTPの改善は、長年議論のされてきた。そしてだいぶ前にInfoQのエイプリルフールの冗談の題材になった。
Dio Synodinos 氏は、webエンジニアでフリーランスのコンサルでweb技術に注力している。