「HPACK」の版間の差分
提供: セキュリティ
(相違点なし)
|
2015年4月11日 (土) 00:34時点における最新版
HPACK とは、HTTP2で利用されるヘッダを圧縮するアルゴリズムです。HTTP/1.x系で課題だったHTTPヘッダのオーバーヘッドを削減し、差分データだけを送信します。
読み方
- HPACK
- えいち ぱっく
目次
概要
HTTPプロトコルのリクエストヘッダは、冗長でした。HTTPヘッダで毎回変化しない(ときどきしか変化しない)UserAgentなどを送信していました。そのようなオーバーヘッダを削減するために、HPACKが開発されました。
ヘッダ圧縮の経緯
- HTTP/1.x では、 UserAgent や HTTP cookieなど、繰り返し、同じ値を送信していて、オーバーヘッドになっていました。
- SPDYでは、HTTPヘッダをgzipで圧縮しました。しかし、CRIME攻撃が見つかり、圧縮率を下げなければならなくなりました。
- HTTP/2では、ヘッダの差分だけを送信するアルゴリズムのHPACKでヘッダを圧縮します。
用語
- Reference Set
- 前回送信したヘッダ名と値のペアのセットをいいます。
- Static Table
- よく送信されるヘッダ名と値のペアにIDを設定したものを管理するテーブルです。クライアントとサーバで保持されます。送信時にヘッダがテーブルに存在するとき、設定されたIDを使用してヘッダを送信します。