RFC 9204 - QPACK: Feldkomprimierung für HTTP/3
Veröffentlichungsdatum: Juni 2022
Status: Standards Track
Autoren: C. Krasic, M. Bishop, A. Frindell (Meta)
Zusammenfassung (Abstract)
Diese Spezifikation definiert QPACK: ein Komprimierungsformat zur effizienten Darstellung von HTTP-Feldern, das in HTTP/3 verwendet werden soll. Es handelt sich um eine Variation der HPACK-Komprimierung, die darauf abzielt, Head-of-Line Blocking zu reduzieren.
Inhaltsverzeichnis (Contents)
- 1. Einführung
- 1.1 Konventionen und Definitionen
- 1.2 Notationskonventionen
- 2. Übersicht des Komprimierungsprozesses
- 2.1 Encoder
- 2.2 Decoder
- 3. Referenztabellen
- 3.1 Statische Tabelle
- 3.2 Dynamische Tabelle
- 4. Wire-Format
- 4.1 Primitive
- 4.2 Encoder- und Decoder-Streams
- 4.3 Encoder-Anweisungen
- 4.4 Decoder-Anweisungen
- 4.5 Feldzeilen-Darstellungen
- 5. Konfiguration
- 6. Fehlerbehandlung
- 7. Sicherheitsüberlegungen
- 7.1 Sondierung des dynamischen Tabellenzustands
- 7.2 Statische Huffman-Kodierung
- 7.3 Speicherverbrauch
- 7.4 Implementierungsgrenzen
- 8. IANA-Überlegungen
- 9. Referenzen
Anhänge (Appendices)
- Anhang A. Statische Tabelle
- Anhang B. Kodierungs- und Dekodierungsbeispiele
- Anhang C. Beispiel eines Single-Pass-Kodierungsalgorithmus
Verwandte Ressourcen
- Offizielles RFC: RFC 9204
- Offizielle Seite: RFC 9204 DataTracker
- Errata: RFC Editor Errata
Schnellreferenz
Was ist QPACK?
QPACK ist das Header-Komprimierungsformat für HTTP/3, basierend auf HPACK, aber optimiert für die ungeordnete Zustellung von QUIC.
Hauptverbesserungen
Wesentliche Änderungen gegenüber HPACK:
- ✅ Reduziertes Head-of-Line Blocking - Ermöglicht ungeordnete Dekodierung
- ✅ Unabhängige Streams - Encoder/Decoder verwenden separate unidirektionale Streams
- ✅ Flexible Kompromisse - Balance zwischen Komprimierungsrate und Latenz
- ✅ Dynamische Tabellenverwaltung - Feinere Kontrollmechanismen
QPACK vs HPACK
| Merkmal | HPACK (HTTP/2) | QPACK (HTTP/3) |
|---|---|---|
| Transportprotokoll | TCP | QUIC (UDP) |
| Head-of-Line Blocking | Schwerwiegend | Signifikant reduziert |
| Dynamische Tabelle | Einheitlich | Encoder/Decoder getrennt |
| Komprimierungsrate | Hoch | Nahe an HPACK |
| Ungeordnete Verarbeitung | Nicht unterstützt | Unterstützt |
| Referenzmodi | Nur absolute Indizierung | Mehrere Indextypen |
Quelle: RFC 9204 - QPACK: Field Compression for HTTP/3
Copyright: © 2022 IETF Trust. Siehe https://www.rfc-editor.org/info/rfc9204 für vollständige Copyright-Hinweise.