RFC 8878 - Compression Zstandard et type de média 'application/zstd'
- Statut: Informational
- Publié: February 2021
- Stream: IETF
- Remplace: RFC8478
- Errata: Pas d'errata
Résumé (Abstract)
Zstandard, ou "zstd" (prononcé "zee standard"), est un mécanisme de compression de données sans perte (Lossless Data Compression Mechanism). Ce document décrit ce mécanisme et enregistre le type de média (Media Type), l'encodage de contenu (Content Encoding) et le suffixe de syntaxe structurée (Structured Syntax Suffix) utilisés lors de la transmission de contenu compressé zstd via MIME.
Bien que le nom Zstandard utilise le mot "standard", les lecteurs doivent noter que ce document n'est pas une spécification Internet Standards Track; il est publié uniquement à des fins informatives.
Ce document remplace et rend obsolète RFC 8478.
Table des matières (Contents)
Sections principales
- 1. Introduction (Introduction)
- 2. Definitions (Définitions)
- 3. Compression Algorithm (Algorithme de compression)
- 3.1 Frames (Trames)
- 3.1.1 Zstandard Frames
- 3.1.2 Skippable Frames
- 3.1 Frames (Trames)
- 4. Entropy Encoding (Codage entropique) 🌟
- 4.1 FSE (Entropie à états finis)
- 4.1.1 FSE Table Description
- 4.2 Huffman Coding (Codage Huffman)
- 4.2.1 Huffman Tree Description
- 4.2.2 Huffman-Coded Streams
- 4.1 FSE (Entropie à états finis)
Sections de normalisation
- 5. Dictionary Format (Format du dictionnaire)
- 6. Use of Dictionaries (Utilisation des dictionnaires)
- 7. IANA Considerations (Considérations IANA)
- 7.1 The 'application/zstd' Media Type
- 7.2 Content Encoding
- 7.3 Structured Syntax Suffix
- 7.4 Dictionaries
- 8. Security Considerations (Considérations de sécurité)
Annexes (Appendices)
- Appendix A. Decoding Tables for Predefined Codes (Tables de décodage pour les codes prédéfinis)
- A.1 Literals Length Code Table
- A.2 Match Length Code Table
- A.3 Offset Code Table
- Appendix B. Changes since RFC 8478 (Changements depuis RFC 8478)
- Acknowledgments (Remerciements)
- Authors' Addresses (Adresses des auteurs)
Références
- 9. References (Références)
- 9.1 Normative References
- 9.2 Informative References
Points forts techniques
🔬 Algorithmes principaux
FSE (Entropie à états finis)
- Encodeur entropique basé sur ANS
- Codage/décodage piloté par machine à états
- Table de distribution de probabilité optimisée
Codage Huffman
- Construction de code préfixe
- Conversion poids vers mot de code
- Lecture de flux de bits inversé
📊 Caractéristiques de performance
Plage de niveau de compression: -5 à 22
Niveau par défaut: 3 (vitesse et compression équilibrées)
Vitesse de compression: 100-500 MB/s (niveaux 1-3)
Vitesse de décompression: 1000-1500 MB/s
Taille de fenêtre maximale: 128 MB
🎯 Scénarios d'application
- Compression de contenu Web: Réponses HTTP, ressources statiques
- Système de fichiers: Compression transparente Btrfs, ZFS
- Base de données: Kafka, MySQL, Clickhouse
- Transmission réseau: HTTP/2, gRPC, WebSocket
Ressources associées
- Texte original officiel: RFC 8878
- Page officielle: RFC 8878 DataTracker
- Site Web Zstandard:
http://www.zstd.net - Dépôt GitHub:
https://github.com/facebook/zstd - Errata: RFC Editor Errata
Statut du document
Version de traduction: Français
Statut de traduction: 🔄 En cours
Dernière mise à jour: 2024-12-25
Revue technique: En attente