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
480
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
96
スライド操作用リモコンを作った話/Making-a-remote-control-for-slide-operation
sou1118
0
320
マイナンバーカードを用いた認証について/Authentication-using-the-My-Number-Card
sou1118
0
700
マイナンバーカードの有効利用法を探る / Finding-ways-to-use-my-number-card
sou1118
0
230
少し幸せになれるスマートなリモコンを作る / Making-a-Smart-remote-controller
sou1118
0
270
Other Decks in Technology
See All in Technology
20240724_cm_odyssey_hibiyatech
hiashisan
0
110
プレイドにおけるDatadog APMの活用方法
plaidtech
PRO
2
120
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
160
AWS IAMのアンチパターン/AWSが考える最低権限実現へのアプローチ概略(JAWS-UG朝会#59資料改修20分版)
htan
0
330
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
開発生産性をむしろ向上させる セキュリティパートナーの作り方 / Dev Productivity Con 2024
flatt_security
0
390
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
成長期に歩みを止めないための創業期の開発文化形成
mayah
6
420
ゆめみのアクセシビリティの現在地と今後
ryokatsuse
3
290
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
3
1.2k
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
Featured
See All Featured
Gamification - CAS2011
davidbonilla
78
4.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
12
3.8k
Bash Introduction
62gerente
607
210k
How to name files
jennybc
67
96k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
How to Think Like a Performance Engineer
csswizardry
4
590
Web Components: a chance to create the future
zenorocha
307
41k
Statistics for Hackers
jakevdp
792
220k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
RailsConf 2023
tenderlove
16
720
Docker and Python
trallard
37
2.9k
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