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
530
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
730
マイナンバーカードの有効利用法を探る / Finding-ways-to-use-my-number-card
sou1118
0
250
少し幸せになれるスマートなリモコンを作る / Making-a-Smart-remote-controller
sou1118
0
290
Other Decks in Technology
See All in Technology
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.8k
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
600
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
6
620
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Become a Pro
speakerdeck
PRO
25
5k
KATA
mclloyd
29
14k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Code Review Best Practice
trishagee
64
17k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
GraphQLとの向き合い方2022年版
quramy
43
13k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
The Language of Interfaces
destraynor
154
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
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