HTTP/2
Google
が考案した
SPDY
という
プロトコル
をもとに
2015年
に
RFC_7540
として
標準化
された.
HTTP/1.1
との
互換性
のもと
通信
の
高速化
や
ネットワーク帯域
の
効率化
が達成されている.
TCPコネクション
の上で
並列処理
することで
Head-of-Line-Blocking問題
に対応した.
各
スレッド
を
ストリーム
として管理する.
実際に
並列
に送信しているわけではない.
1つの
HTTPメッセージ
が複数の
フレーム
に分割されて送信される.
1つの
TCPコネクション
を長く使い回すことで確立と切断の
オーバーヘッド
を削減した.
色々な機能がある.
ウィンドウ制御
ヘッダ圧縮
サーバプッシュ
優先制御
エラーハンドリング
仕様改定版を出そうという動きがある.
HTTP/2 bis
TCP
に由来する
遅延
の問題がある.
UDP
と
TLS
を利用した
QUIC
によって解消が望まれる.
HTTP/3
では
TCP
の代わりに
QUIC
を利用する.
フレーム
と呼ばれる
バイナリ
形式で情報をやりとりするため,
Wireshark
などを利用する必要がある.