Wat is HTTP/3?
HTTP/3 is de derde grote versie van HTTP die QUIC gebruikt als transport protocol in plaats van TCP, het elimineren van head-of-line blokkering, het verminderen van de latentie van de verbinding vestiging, en het verbeteren van de prestaties over onbetrouwbare netwerken.HTTP/3 vs HTTP/2
| Functie | HTTP/2 | HTTP/3 |
|---|---|---|
| Vervoer | TCP | QUIC (over UDP) |
| TLS | Afzonderlijke laag | Ingebouwd in QUIC |
| Handdruk | TCP + TLS (2-3 RTT) | 0-1 RTT |
| Blokkeerkop | Op TCP-niveau | Elimineerd |
| Verbindingsmigratie | Niet ondersteund | Ondersteund |
| Impact pakketverlies | Blokkeert alle stromen | Alleen per stroom |
Hoe werkt HTTP/3?
HTTP/2 over TCP:
Client Server
│─────────── SYN ────────────►│
│◄────────── SYN-ACK ─────────│
│─────────── ACK ────────────►│ TCP Handshake
│─────────── ClientHello ────►│
│◄────────── ServerHello ─────│ TLS Handshake
│─────────── Finished ───────►│
│◄────────── Finished ────────│
│─────────── HTTP Request ───►│ (3 RTT minimum)
HTTP/3 over QUIC:
Client Server
│─────── Initial + ClientHello ─►│
│◄────── Initial + ServerHello ──│
│─────── HTTP Request ──────────►│ (1 RTT)
With 0-RTT Resumption:
│─────── 0-RTT + HTTP Request ──►│ (0 RTT!)
Kenmerken van QUIC-protocol
| Functie | Voordeel |
|---|---|
| UDP-gebaseerd | Vermijdt TCP head-of-line blokkering |
| Geïntegreerde TLS 1.3 | Altijd versleuteld, snellere handdruk |
| Verbindings-ID's | Overleeft IP adreswijzigingen |
| Stream multiplexing | Onafhankelijke stroomlevering |
| Voorwaartse foutcorrectie | Vermindert de behoefte aan doorgifte |
Verbindingsmigratie
Mobile Network Switch (HTTP/2):
WiFi ──► Connection drops ──► New TCP connection ──► Start over
Mobile Network Switch (HTTP/3):
WiFi ──► Switch to cellular ──► Same QUIC connection continues
(Connection ID persists across IP changes)
Status adoptie
| Platform | HTTP/3 Ondersteuning |
|---|---|
| Chrome | 87+ (2020) |
| Firefox | 88+ (2021) |
| Safari | 14+ (2020) |
| Rand | 87+ (2020) |
| Wolkvlokken | Volledige steun |
| AWS CloudFront | Volledige steun |
| nginx | 1,25,0+ (experimenteel) |
Prestatieverbeteringen
- High-latency netwerken: Tot 50% snellere paginabelasting
- Lossy verbindingen: Een enkel pakket verlies houdt niet alle stromen tegen
- Mobiele netwerken: Verbinding overleeft WiFi/cellulaire schakelaars
- Initiale verbindingen: 1-RTT vs 3-RTT setup
Beste praktijken
1. Stel naast HTTP/2 in: Browsers vallen sierlijk terug
2. Gebruik Alt-Svc header: Adverteren HTTP/3 beschikbaarheid
3. UDP correct instellen: Zorg ervoor dat firewalls QUIC verkeer mogelijk maken
4. Monitor prestaties: Metriek vergelijken tussen protocolversies
5. Test mobiele scenario's: HTTP/3 blinkt uit op mobiele netwerken
Server configuratievoorbeeld
# Alt-Svc header to advertise HTTP/3
Alt-Svc: h3=":443"; ma=86400
HTTP/3 vertegenwoordigt de toekomst van het webtransport en levert snellere, betrouwbaardere verbindingen, met name voor mobiele en snelle gebruikers.