Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
QPACK って何?/What is QPACK?
Search
Kattyan
June 11, 2023
Technology
0
510
QPACK って何?/What is QPACK?
Kattyan
June 11, 2023
Tweet
Share
More Decks by Kattyan
See All by Kattyan
gVisorを使おう!/ Let's use gVisor!
sou1118
0
110
スライド操作用リモコンを作った話/Making-a-remote-control-for-slide-operation
sou1118
0
330
マイナンバーカードを用いた認証について/Authentication-using-the-My-Number-Card
sou1118
0
710
マイナンバーカードの有効利用法を探る / Finding-ways-to-use-my-number-card
sou1118
0
240
少し幸せになれるスマートなリモコンを作る / Making-a-Smart-remote-controller
sou1118
0
280
Other Decks in Technology
See All in Technology
Renovate ではじめる運用レスなライブラリ更新 / 令和最新版 他人に自慢したいヤバいCI/CD LT会 @ yabaibuki.dev #2
ponkio_o
PRO
1
120
仮想化って何だろう
shkoga
0
130
All your memory are belong to… whom?
ennael
PRO
0
360
20240927競プロとともにあるく_ソフトウェアテストの地図.pdf
prettyhappycatty
0
170
エムスリーマネジメントチーム紹介資料 / Introduction of M3 Management Team
m3_engineering
0
240
ドメインと向き合う - 旅行予約編
hidenorigoto
4
500
【shownet.conf_】コンピューティング資源を統合した分散コンテナ基盤の進化
shownet
PRO
0
270
AI時代のアジャイル開発(XP祭り2024版) / Agile Development in the AI Era in XPJUG
takaking22
13
3.3k
Vista FinderMx
jtes
0
160
サーバレス基盤で Gemini の性能を引きだすアーキテクトを構築した話
antonnion
0
100
REST API Design Pitfalls
victorrentea
1
500
マルチAWSアカウント間のストリーミングによるデータ同期/AWS SaaS Builders Forum 2024
visional_engineering_and_design
1
110
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
3
77
How GitHub Uses GitHub to Build GitHub
holman
472
290k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
26
4k
Agile that works and the tools we love
rasmusluckow
327
21k
Practical Orchestrator
shlominoach
185
10k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
227
52k
The Cost Of JavaScript in 2023
addyosmani
43
5.8k
Thoughts on Productivity
jonyablonski
67
4.2k
Visualization
eitanlees
143
15k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
5
170
Transcript
QPACK って何? Kattyan 2023/6/2 - RICORA LT © 2023 sou1118
1
QUIC って何なの? ネットワークにおけるトランスポート層の通信プロトコルの 1 種 簡単に言えば,TLS1.3, HTTP/2, TCP を組み合わせ,UDP 上で動くプ
ロトコル 基本的に QUIC がサーバサイド,ブラウザ双方ともに対応していたら 自動的に使われる TCP のような 3 way handshake が不要で,HTTP/2 のようなヘッダ 圧縮が可能 2023/6/2 - RICORA LT © 2023 sou1118 2
HTTP/2 におけるヘッダ圧縮と問題点 HTTP/2 ではヘッダ圧縮のために HPACK というアルゴリズムが用い られている HPACK はヘッダのキーと値をハフマン符号化し,ヘッダの重複を排除 することで圧縮を行う
しかし,HPACK はヘッダの重複を排除するために,ヘッダの順序を保 持する必要がある そのため順序依存性が、一部の環境で問題を引き起こす可能性がある 2023/6/2 - RICORA LT © 2023 sou1118 3
QPACK とは QUIC におけるヘッダ圧縮アルゴリズム HTTP/2 における HPACK と同様にヘッダのキーと値をハフマン符号 化し,ヘッダの重複を排除することで圧縮を行う HPACK
との違いは,ヘッダの順序に依存しないこと これにより,HTTP/3(HTTP over QUIC) と QUIC の特性を最大限に 活かすことが出来,ヘッダの圧縮効率を向上させることが可能 通信パケットが順不同で到着したり,一部のパケットが失われたりして も他パケットの遅延が起きない 2023/6/2 - RICORA LT © 2023 sou1118 4