HTTP/3 ist die dritte große Version des Hypertext Transfer Protocol und die erste, die nicht auf TCP läuft: HTTP/3 überträgt die HTTP-Semantik über QUIC. Standardisiert ist es in RFC 9114, die Header-Kompression in RFC 9204 (QPACK). Ziel ist es, Webseiten und APIs spürbar schneller zu machen — vor allem bei mobilen Verbindungen und Paketverlust.
Vom HTTP/2-Problem zur QUIC-Lösung
HTTP/2 multiplexte viele Anfragen über eine einzige TCP-Verbindung. Verlor TCP dabei ein einziges Segment, warteten alle parallelen Streams, bis das Segment wieder da war — das berüchtigte Head-of-Line-Blocking auf Transportebene. HTTP/3 nutzt die unabhängigen Streams von QUIC: Ein Paketverlust verzögert nur den betroffenen Stream, alle anderen laufen weiter. Gerade bei unzuverlässigen Mobilfunknetzen macht das den Unterschied.
QPACK statt HPACK
HTTP/2 komprimierte Header mit HPACK, dessen dynamische Tabelle von der Reihenfolge der ankommenden Header abhängt. Da QUIC-Streams ungeordnet ankommen können, wäre HPACK unpraktikabel. HTTP/3 verwendet deshalb QPACK: Es trennt die Kodierung von Header-Referenzen und Auflösung der dynamischen Tabelle, sodass Header auch ohne strikte Reihenfolge komprimiert übertragen werden können.
Technik
- Transport: QUIC über UDP statt TCP; Port 443 für HTTPS.
- Handshake: Verbindungsaufbau in 1-RTT, bei wiederholtem Besuch 0-RTT.
- Aushandlung: Server kündigen HTTP/3 über den
Alt-Svc-Header an; Browser versuchen dann automatisch die QUIC-Verbindung. - Streams: unbegrenzt viele parallele Streams über eine Verbindung (identifiziert über die QUIC-Stream-ID).
Verbreitung
Alle großen Browser unterstützen HTTP/3: Chrome, Firefox, Safari, Edge. Auch die großen CDNs (Cloudflare, Fastly, Akamai) liefern standardmäßig per HTTP/3 aus. Je nach Messung laufen 2025/2026 rund 20 bis 35 Prozent der Web-Requests über HTTP/3 — Tendenz steigend. Zusammen mit HTTPS und TLS ersetzt es nach und nach HTTP/2, das nur als Fließtext erwähnt wird.