HTTP/3 (RFC 9114・2022)(エイチティーティーピースリー)
IETF 2022年6月標準化のHTTP 第3世代。QUIC (UDP) 上で動作・0-RTT・Connection Migration・Stream Multiplexing で TCP 時代の遅延問題を解消した次世代Webプロトコル。
概要
HTTP/3 はIETF が2018年8月に「HTTP-over-QUIC」を「HTTP/3」と命名、2022年6月6日にRFC 9114 として正式標準化したHTTP 第3世代。QUIC (RFC 9000) 上で動作、HTTP/1.1 (1997・TCP) → HTTP/2 (2015・TCP) → HTTP/3 (2022・UDP/QUIC) の系統的進化。0-RTT 接続・Connection Migration・Stream Multiplexing で TCP 時代の遅延問題を解消、Chrome / Firefox / Safari / Edge 標準対応で2024年Web トラフィック35%+ がHTTP/3 経由。
HTTP/1.1 vs HTTP/2 vs HTTP/3
| 項目 | HTTP/1.1 (1997) | HTTP/2 (2015) | HTTP/3 (2022) |
|---|---|---|---|
| トランスポート | TCP | TCP | QUIC (UDP) |
| 暗号化 | 任意 (HTTPS) | 任意 (HTTP/2 over TCP) / 強制 (HTTPS) | 強制 (TLS 1.3) |
| 多重化 | なし (1 接続 1 req) | あり (1 接続 N req) | あり (Stream 独立) |
| ヘッダ圧縮 | なし | HPACK | QPACK |
| 0-RTT | なし | なし | あり (再接続) |
| HoL Blocking | あり | あり (TCP層) | なし |
| Connection Migration | なし | なし | あり |
| Server Push | なし | あり (廃止傾向) | なし |
| Stream 数 | 1 | 100 (default) | 100+ |
| Header Frame | テキスト | バイナリ | バイナリ |
HTTP/3 主要機能
| 機能 | 内容 |
|---|---|
| ベース | QUIC (RFC 9000) |
| 暗号化 | TLS 1.3 必須 |
| 多重化 | Stream 単位独立 (TCP HoL Blocking 解消) |
| ヘッダ圧縮 | QPACK (HTTP/2 HPACK の改良版・並列対応) |
| 0-RTT | あり (再接続時) |
| Connection Migration | あり (IP変更でも接続維持) |
| Web Transport | 兄弟プロトコル (双方向ストリーム) |
| Server Push | 廃止 (HTTP/2 失敗から学習) |
HTTP/3 採用率 (2024年)
| 地域 | HTTP/3 採用率 |
|---|---|
| 全世界 | 35% |
| 米国 | 38% |
| 欧州 | 33% |
| アジア | 30% |
| 日本 | 28% |
| Google サーバ | 100% |
| Cloudflare | 90%+ |
| AWS CloudFront | 50%+ |
W3Techs 調査・主要サイトの大半がHTTP/3 対応済。
主要ブラウザ対応
| ブラウザ | HTTP/3 サポート開始 |
|---|---|
| Chrome | 87 (2020-11) |
| Firefox | 88 (2021-04) |
| Safari | 14 (2020-09 試験的) |
| Safari | 16 (2022-09 正式) |
| Edge | 87 (2020-11) |
| Opera | 73 (2020-11) |
Web サーバ対応
| サーバ | HTTP/3 サポート |
|---|---|
| nginx | 1.25+ (2023-05・実験的) |
| Apache HTTP Server | mod_h3 (実験的) |
| LiteSpeed | 5.4+ (2019-09・先発) |
| Caddy | 2.6+ (2022・標準対応) |
| H2O | 2.0+ |
| Cloudflare | 商業利用 (Edge) |
| AWS CloudFront | 2022-08 |
なぜQUIC?
HTTP/2 (2015・TCP) の問題:
- TCP HoL Blocking (1パケット損失で全Stream 停止)
- TCP の改造困難 (OS カーネル統合)
- TLS / HTTP/2 のRTT 多重
- IP 変更で接続切断
→ QUIC (UDP上ユーザ空間プロトコル) で根本解決。
モバイル・5G での効果
スマートフォン環境で特に効果:
- Wi-Fi → 5G/4G 切替: Connection Migration で接続維持
- 高い Packet Loss (Wi-Fi 干渉): HoL Blocking 解消
- 低レイテンシ: 0-RTT 接続
- TLS 1.3 強制 (TLS 1.2 / 1.0 廃止)
関連用語との違い
- vs HTTP/2: TCP / UDP・HoL Blocking 解消
- vs HTTP/1.1: 多重化・暗号化必須
- vs QUIC: HTTP/3 = HTTP + QUIC
FAQ
Q1: HTTP/2 廃止? A: 廃止予定なし。HTTP/3 と HTTP/2 並存・サーバ Alt-Svc ヘッダで自動切替。HTTP/3 失敗時はHTTP/2 (TCP) フォールバック。
Q2: 個人サイト対応? A: nginx 1.25+ / Caddy 2.6+ で自動対応・Cloudflare 経由なら設定なしで対応。証明書はLet's Encrypt 標準。
Q3: HTTP/3 デバッグ? A: curl 7.66+ がHTTP/3 サポート (--http3 オプション)。Chrome DevTools / Wireshark でも HTTP/3 / QUIC 解析可能。