HTTP/2

Protocoles et Normes
Une révision majeure de HTTP qui introduit le multiplexage, la compression des en-têtes et des performances améliorées par rapport à HTTP/1.1.
← Retour au Glossaire

Qu’est-ce que HTTP/2 ?

HTTP/2 est une révision majeure du protocole HTTP, normalisée par la RFC 7540, qui introduit le cadrage binaire, le multiplexage, la compression des en-têtes et le server push afin d’améliorer fortement les performances web par rapport à HTTP/1.1.

HTTP/2 par rapport à HTTP/1.1

FonctionnalitéHTTP/1.1HTTP/2
FormatFondé sur le texteBinaire
ConnexionsMultiples (6 à 8 par hôte)Une seule, multiplexée
Traitement des requêtesSéquentielFlux parallèles
Compression des en-têtesAucuneCompression HPACK
Server pushNon disponiblePrise en charge
PriorisationAucunePriorités des flux

Fonctionnement de HTTP/2

HTTP/1.1 (Head-of-Line Blocking):

Connection 1: Request A ──────────► Response A

Connection 2: Request B ──────────► Response B

Connection 3: Request C ──────────► Response C

(Multiple connections, sequential per connection)

HTTP/2 (Multiplexing):

Single Connection:

├── Stream 1: Request A ──► Response A

├── Stream 2: Request B ──► Response B

├── Stream 3: Request C ──► Response C

└── All interleaved on same connection

Fonctionnalités clés

Couche de cadrage binaire

HTTP/2 Frame Structure:

┌─────────────────────────────────────┐

│ Length (24 bits) │

├─────────────────────────────────────┤

│ Type (8 bits) │ Flags (8 bits) │

├─────────────────────────────────────┤

│ Stream Identifier (32 bits) │

├─────────────────────────────────────┤

│ Frame Payload (variable) │

└─────────────────────────────────────┘

Compression des en-têtes HPACK

ScénarioEn-têtes HTTP/1.1En-têtes HTTP/2
Première requête~800 octets~800 octets
Requêtes suivantes~800 octets chacune~20 à 50 octets (indexés)

Priorisation des flux

Priority Tree:

Root (connection)

├── CSS (weight: 256, high priority)

├── JavaScript (weight: 220)

└── Images (weight: 110, lower priority)

Exigences serveur

ServeurPrise en charge HTTP/2
nginx1.9.5+
Apache2.4.17+ (mod_http2)
Node.js8.4+ (native)
IISWindows 10/Server 2016+

Avantages en matière de performances

Bonnes pratiques

1. Activer TLS : HTTP/2 nécessite pratiquement HTTPS (les navigateurs l’imposent)

2. Réduire le domain sharding : plusieurs domaines nuisent désormais aux performances

3. Cesser de concaténer les fichiers : le multiplexage rend le regroupement moins nécessaire

4. Utiliser le server push avec prudence : pousser uniquement les ressources critiques

5. Surveiller les performances : vérifier que HTTP/2 améliore votre cas d’utilisation précis

HTTP/2 apporte des améliorations de performances importantes à la plupart des sites grâce à une utilisation plus efficace des connexions réseau.

Mettez Vos Connaissances en Pratique

Utilisez l'API de DomScan pour vérifier la disponibilité des domaines, la santé et bien d'autres choses.