HTTP/2

Protocollen & Standaarden
Een belangrijke herziene versie van HTTP die multiplexing, headercompressie en verbeterde prestaties biedt ten opzichte van HTTP/1.1.
← Terug naar Woordenlijst

Wat is HTTP/2?

HTTP/2 is een belangrijke herziening van het HTTP-protocol (gestandaardiseerd als RFC 7540) met binaire framing, multiplexing, headercompressie en server push, voor aanzienlijk betere webprestaties dan HTTP/1.1.

HTTP/2 versus HTTP/1.1

FunctieHTTP/1.1HTTP/2
FormaatOp tekst gebaseerdBinair
VerbindingenMeerdere (6-8 per host)Eén gemultiplexte verbinding
Verwerking van verzoekenSequentieelParallelle streams
HeadercompressieGeenHPACK-compressie
Server pushNiet beschikbaarOndersteund
PrioriteringGeenStreamprioriteiten

Hoe HTTP/2 werkt

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

Belangrijkste functies

Binaire framinglaag

HTTP/2 Frame Structure:

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

│ Length (24 bits) │

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

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

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

│ Stream Identifier (32 bits) │

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

│ Frame Payload (variable) │

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

HPACK-headercompressie

ScenarioHTTP/1.1-headersHTTP/2-headers
Eerste verzoek~800 bytes~800 bytes
Volgende verzoeken~800 bytes elk~20-50 bytes (geïndexeerd)

Streamprioritering

Priority Tree:

Root (connection)

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

├── JavaScript (weight: 220)

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

Serververeisten

ServerHTTP/2-ondersteuning
nginx1.9.5+
Apache2.4.17+ (mod_http2)
Node.js8.4+ (native)
IISWindows 10/Server 2016+

Prestatievoordelen

Beste praktijken

1. Schakel TLS in: HTTP/2 vereist in de praktijk HTTPS (browsers dwingen dit af)

2. Beperk domain sharding: meerdere domeinen schaden de prestaties nu

3. Stop met bestanden samenvoegen: door multiplexing is bundelen minder nodig

4. Gebruik server push zorgvuldig: push alleen kritieke resources

5. Monitor prestaties: controleer of HTTP/2 uw specifieke gebruiksscenario verbetert

HTTP/2 levert voor de meeste websites aanzienlijke prestatieverbeteringen door netwerkverbindingen efficiënter te benutten.

Pas Deze Kennis Toe

Gebruik de API van DomScan om domeinbeschikbaarheid, gezondheid en meer te controleren.