トップQs
タイムライン
チャット
視点
HTTP/2
World Wide Webで用いられているHypertext Transfer Protocolのバージョン2 ウィキペディアから
Remove ads
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はHTTP/1.1が1999年6月に RFC 2616 として規定されて以来16年ぶりのバージョンアップである。
Remove ads
プロトコル概要
HTTP/2の目標はHTTP/1.1のトランザクション・セマンティクスとの完全な後方互換性を維持したまま非同期な接続の多重化、ヘッダ圧縮、リクエストとレスポンスのパイプライン化を実現することである。Googleによって立ち上げられ[3]、全ての主要なウェブブラウザが対応しているHTTP互換のプロトコルSPDYの人気が高まっていることに対応するために開発された[4]。
高速化技術
下記の技術により従来より高速の通信を実現している。
- HTTPヘッダの圧縮。(HPACKで圧縮し[5]、二度目以降の通信は差分のみ送信する)
- HTTP/2サーバープッシュ通信。
- HTTPパイプライン
- HoL (Head-of-Line) ブロッキング問題(HTTP/1.1で発生していた)の解消。
- 一つのTCPソケット上に複数のリクエストが発生した時に最適に通信を行う。
対応状況
ウェブブラウザ
下記ウェブブラウザが対応している。ただし、全てHTTP/2 over TLSのみである。
- Google Chrome (30は設定が必要[6][7])
- Mozilla Firefox (34から標準で有効[8])
- Microsoft Windows 10上のInternet Explorer 11
- Microsoft Edge[9]
- Opera
- Safari 9から
サーバ
- IIS 10.0(Windows 10,Windows Server 2016)[10]
- OpenLiteSpeed 1.3.11 および 1.4.8[11]
- LiteSpeed Web Server 5.0[12]
- Akamai Edge Servers
- Amazon CloudFront[13]
- nginx 1.9.5 [14]
- Apache 2.4.17 [15]
- H2O (HTTP/2対応を目的として1から設計されている) [16]
- lighttpd 1.4.56[17]
その他
Remove ads
経緯
httpbisワーキンググループはGoogleのSPDYプロトコル、(SPDYを基にした)マイクロソフトのHTTP Speed+Mobility[3]、Network-Friendly HTTP Upgradeを検討した[18]。2012年7月にFacebookはそれぞれの提案にフィードバックを行い、HTTP/2はSPDYを基にすることを推奨した[19]。SPDYをそのままコピーしたものを基にしたHTTP/2の最初のドラフトが2012年11月に発行された[20]。
これらのプロトコルにおけるアーキテクチャ上の提案の多くは以前にW3CのHTTP-NGワーキンググループで調査済みであった。HTTP-NGプロジェクトの活動は1998年に休止された[21]。
開発マイルストーン
IETFのHypertext Transfer Protocol Bis (httpbis) ワーキンググループによる[1]。
名称
ワーキンググループにおいて当初はHTTP 2.0という名称で制定作業を進めていたが、後にHTTP/2と置き換えることとなった[23]。また、GoogleはSPDY/4という呼び方もしていた。
出典
関連項目
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads