HTTP/2
HTTP |
---|
主要項目 |
リクエストメソッド |
ヘッダーフィールド |
ステータスコード |
認証方式 |
セキュリティホール |
HTTP/2 (Hypertext Transfer Protocol version 2) は、World Wide Webで用いられているHypertext Transfer Protocolのバージョンの一つである。HTTP/2はIETFのHypertext Transfer Protocol Bis (httpbis)ワーキンググループにおいて制定され[1]、2015年2月17日に正式な仕様として承認され[2]、2015年5月にRFC 7540として文書化された。HTTP/2は1999年6月にRFC 2616としてHTTP/1.1が規定されて以来16年ぶりのバージョンアップである。
プロトコル概要
HTTP/2の目標はHTTP/1.1のトランザクション・セマンティクスとの完全な後方互換性を維持したまま非同期な接続の多重化、ヘッダ圧縮、リクエストとレスポンスのパイプライン化を実現することである。Googleによって立ち上げられ[3]、全ての主要なウェブブラウザが対応しているHTTP互換のプロトコルSPDYの人気が高まっていることに対応するために開発された[4]。
対応状況
ウェブブラウザ
下記ウェブブラウザが対応している。ただし、全てHTTP/2 over TLSのみである。
- Google Chrome (30は設定が必要[5][6])
- Mozilla Firefox (34から標準で有効[7])
- Windows 10上のInternet Explorer 11
- Microsoft Edge
- Opera
サーバ
HTTP/2をサポート
- IIS (Windows 10)[8]
- OpenLiteSpeed 1.3.11 および 1.4.8[9]
- LiteSpeed Web Server 5.0[10]
- Akamai Edge Servers
- nginx 1.9.5 [11]
SPDYのみサポート
計画なし
その他
経緯
httpbisワーキンググループはGoogleのSPDYプロトコル、(SPDYを基にした)MicrosoftのHTTP Speed+Mobility[3]、Network-Friendly HTTP Upgradeを検討した[15]。2012年7月にFacebookはそれぞれの提案にフィードバックを行い、HTTP/2はSPDYを基にすることを推奨した[16]。SPDYをそのままコピーしたものを基にしたHTTP/2の最初のドラフトが2012年11月に発行された[17]。
これらのプロトコルにおけるアーキテクチャ上の提案の多くは以前にW3CのHTTP-NGワーキンググループで調査済みであった。HTTP-NGプロジェクトの活動は1998年に休止された[18]。
開発マイルストーン
IETFのHypertext Transfer Protocol Bis (httpbis)ワーキンググループによる[1]。
状態 | マイルストーン |
---|---|
完了 | 最初のHTTP/1.1改訂版インターネットドラフト |
完了 | 最初のHTTPセキュリティプロパティインターネットドラフト |
完了 | HTTP/2.0のための提案の呼びかけ |
完了 | ワーキンググループによるHTTP/1.1のための最終案内(Last Call) |
完了 | draft-mbelshe-httpbis-spdy-00を基にしたHTTP/2.0の最初のワーキンググループドラフト |
実施/延期 | ワーキンググループによるHTTPセキュリティプロパティのための最終案内(Last Call) |
完了 | 標準化提案(Proposed Standard)として検討されるためにIESGにHTTP/1.1改訂版を提出 |
完了 | ワーキンググループによるHTTP/2のための最終案内(Last Call) |
2014年11月 | 標準化提案(Proposed Standard)として検討されるためにIESGにHTTP/2を提出 |
2015年2月17日 | IETFにて仕様として承認され、RFCとしての文章化へと進む[2] |
2015年5月14日 | RFC 7540として文書化[19] |
名称
ワーキンググループにおいて当初はHTTP 2.0という名称で制定作業を進めていたが、後にHTTP/2と置き換えることとなった[20]。また、GoogleはSPDY/4という呼び方もしていた。
関連項目
出典
- ^ a b “Hypertext Transfer Protocol Bis (httpbis) - Charter”. IETF (2012年). 2013年9月4日閲覧。
- ^ a b HTTP/2 Approved | IETF Blog
- ^ a b Sebastian Anthony (2012年3月28日). “S&M vs. SPDY: Microsoft and Google battle over the future of HTTP 2.0”. ExtremeTech. 2013年9月4日閲覧。
- ^ Jerome Louvel (2011年10月6日). “Can the rise of SPDY threaten HTTP?”. Restlet. 2013年9月4日閲覧。
- ^ Issue 230124 - chromium - Support SPDY/4 - An open-source project to help move the web forward. - Google Project Hosting
- ^ HTTP/2 - The Chromium Projects
- ^ Firefox 34 サイト互換性情報 - Mozilla | MDN
- ^ “HTTP/2: The Long-Awaited Sequel”. MSDN IEBlog. Microsoft Corporation (October 8, 2014). 2015年5月19日閲覧。
- ^ “OpenLiteSpeed 1.4.5 change log”. LiteSpeed Technologies, Inc. (2015年2月26日). 2015年5月19日閲覧。
- ^ “LSWS 5.0 Is Out – Support for HTTP/2, ESI, LiteMage Cache” (April 17, 2015). 2015年5月19日閲覧。
- ^ “Module ngx_http_v2_module”. nginx.org. 2015年9月24日閲覧。
- ^ Matthew Steele (June 19, 2014). “mod_spdy is now an Apache project”. Google Developers Blog. 2015年5月19日閲覧。
- ^ “Log of /httpd/mod_spdy”. svn.apache.org. 2015年5月19日閲覧。
- ^ stbuehler. “lighttpd Feature #2322 - Support for SPDY protocol”. Lighttpd. 2015年5月19日閲覧。
- ^ W. Tarreau (2012年3月29日). “draft-tarreau-httpbis-network-friendly-00 - Proposal for a Network-Friendly HTTP Upgrade”. 2013年9月4日閲覧。
- ^ Doug Beaver (2012年7月15日). “HTTP2 Expression of Interest”. 2013年9月4日閲覧。
- ^ Dio Synodinos (2012年11月30日). “HTTP 2.0 First Draft Published”. InfoQ. 2013年9月4日閲覧。
- ^ “Final HTTP-NG Activity Statement”. World Wide Web Consortium. 2013年9月4日閲覧。
- ^ The RFC Editor Team (14 May 2015). "RFC 7540 on Hypertext Transfer Protocol Version 2 (HTTP/2)". ietf-announce (Mailing list). 2015年5月15日閲覧。
{{cite mailing list}}
:|author=
に無意味な名前が入力されています。 (説明) - ^ “Is it HTTP/2.0 or HTTP/2?”. 2014年9月15日閲覧。
外部リンク
- 公式ウェブサイト
- HTTP/2 JP
- HTTP/2 Japan Local Activity
- 仕様
- RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
- RFC 7541: HPACK: Header Compression for HTTP/2
- HTTP/2の日本語訳