この記事は HTTP2 Advent Calendar 2014 の 16 日目の投稿です。 HTTP2 では、通信の遅延を小さくするために、ヘッダのサイズを小さくする機構を備えています。 その仕様は HPACK と呼ばれ、下記の組み合わせで構成されます。 Literal ASCII Encoding 非圧縮のエンコーディングと言える。 Huffman 今回の主人公。 出現頻度が高い文字ほど、小さいデータサイズで表現。 Index 「Static Table に事前定義されている値」または「既にインデックス化した値」を番号で指定する。 圧縮に大きく寄与する。 今回は、Huffman Encoding の原理とメリット/デメリットを解説します。 gzip じゃダメなんですか? HTTP/1.1 では、Body を gzip エンコードすることでサイズを圧縮することが出来ます。ヘッダも同じよう
![HTTP2のヘッダ圧縮 Huffman Encode の原理とメリット・デメリット - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/0f7d87599b290bc21e988d562b7c16faddf7b542/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Fadvent-calendar-ogp-background-7940cd1c8db80a7ec40711d90f43539e.jpg%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9SFRUUDIlRTMlODElQUUlRTMlODMlOTglRTMlODMlODMlRTMlODMlODAlRTUlOUMlQTclRTclQjglQUUlMjBIdWZmbWFuJTIwRW5jb2RlJTIwJUUzJTgxJUFFJUU1JThFJTlGJUU3JTkwJTg2JUUzJTgxJUE4JUUzJTgzJUExJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTg4JUUzJTgzJUJCJUUzJTgzJTg3JUUzJTgzJUExJUUzJTgzJUFBJUUzJTgzJTgzJUUzJTgzJTg4JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMzQTNDM0MmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1kMzA1NzRjYjdmMTA5YzUzMTQ2NGI4ZmI2NTkyNzZiOQ%26mark-x%3D120%26mark-y%3D96%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9OTcyJnR4dD0lNDBpd2FuYWdhJnR4dC1jb2xvcj0lMjMzQTNDM0MmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1kZWQwYjYyNWUwMzdmOTA2YmU1OWRiZGY0ZDNjYmZmMQ%26blend-x%3D120%26blend-y%3D500%26blend-mode%3Dnormal%26s%3D8ed358d58a0c975e3c2d2d1ecafb8f9b)