HTTP/3 gira su QUIC, sopra UDP. Non è l’header Upgrade. Il server lo annuncia con Alt-Svc. Un pacchetto perso ferma uno stream, non tutta la connessione.
L’header Upgrade non accende HTTP/3. Quello è un meccanismo di HTTP/1.1, in pratica per WebSocket. HTTP/2 lo vieta. HTTP/3 gira su QUIC, sopra UDP, non sopra TCP. Il browser lo scopre da un’alternativa dichiarata dal server — di solito Alt-Svc — non da un plugin e non dal punteggio Lighthouse.
In breve: HTTP/3 succede HTTP/2. Trasporto QUIC/UDP. Handshake TLS dentro il primo handshake QUIC. Perdita di un pacchetto: un solo stream, non tutta la connessione. Alt-Svc: h3=… è un annuncio, non un upgrade. Verifica del 3 ottobre 2026 su MDN (HTTP/3 e QUIC, 20 ottobre 2025; Alt-Svc, 4 maggio 2026) e RFC 9114 / RFC 9000.
Cosa trovi in questo articolo
HTTP/3 è QUIC su UDP (non è TCP, non è Upgrade)
MDN, voce HTTP/3, ultima modifica 20 ottobre 2025, rilettura 3 ottobre 2026: revisione maggiore del protocollo HTTP, dopo HTTP/2. La differenza che MDN mette in testa: usa QUIC sopra UDP invece di TCP. Meno latenza. Niente head-of-line blocking di HTTP-su-TCP.
La voce QUIC, stessa data: trasporto multiplexato su UDP, usato da HTTP/3 al posto di TCP. Due punti, in pagina. Primo: in TCP l’handshake TCP è seguito, di solito, da un handshake TLS, e i dati aspettano. QUIC mette il TLS nel primo handshake QUIC, meno messaggi. Secondo: HTTP/2 multiplexa più transazioni su una connessione TCP; un pacchetto perso e la ritrasmissione TCP bloccano tutte le transazioni. QUIC ritrasmette per stream: si ferma solo lo stream colpito. Specifiche in calce MDN: RFC 9000 (QUIC), RFC 9114 (HTTP/3).
La guida MDN Protocol upgrade mechanism descrive l’header Upgrade di HTTP/1.1. Meccanismo opzionale. In pratica, WebSocket. Nota in pagina: HTTP/2 «explicitly disallows the use of this mechanism; it is specific to HTTP/1.1». Non è il modo in cui si «passa a HTTP/3». Il cluster è Infrastruttura. Non è Server-Timing: quello è un header di risposta con i millisecondi del backend. Non è il certificato TLS: QUIC integra TLS, ma il certificato resta un altro mestiere.
Come il browser lo scopre: Alt-Svc
MDN, header Alt-Svc, ultima modifica 4 maggio 2026: il server indica che la stessa risorsa si può prendere da un altro servizio — altro host, altra porta, altro protocollo. Non è un redirect. Non è Upgrade. È un annuncio. Il client può ignorarlo.
Esempi in pagina MDN:
| Esempio MDN | Cosa c’è |
|---|---|
Alt-Svc: h2=":443"; ma=2592000 | alternativa HTTP/2 sulla 443, max-age 30 giorni |
Alt-Svc: h2=":443"; ma=2592000; persist=1 | stesso, con persist |
Alt-Svc: h2="alt.example.com:443", h2=":443" | due alternative, la prima è preferita |
Alt-Svc: h3-25=":443"; ma=3600, h2=":443"; ma=3600 | un token di draft HTTP/3 e HTTP/2, un’ora |
MDN: più valori, separati da virgola; quelli a sinistra sono preferiti. ma è la durata in secondi della cache di quell’alternativa. Senza persist=1, in pagina, le alternative di solito si cancellano al cambio di rete. Il token a sinistra è un identificativo ALPN. L’esempio usa h3-25, un identificativo di draft. HTTP/3 registrato, RFC 9114, usa h3. Si legge in Network, sulla risposta, il token che il server ha davvero mandato. Non si copia h3-25 in produzione perché sta in un esempio.
Specifica citata da MDN: HTTP Alternative Services (RFC 7838). Non è un CDN. Non è un WAF. È l’header con cui un’origine dice «la prossima volta prova QUIC su questa porta». Se il server non lo manda, e non c’è un altro segnale (per esempio un record HTTPS in DNS), il browser resta su TCP. Si verifica sulla risposta, non sul pannello del plugin cache.
Cosa resta di HTTP/2 (e cosa è stato tolto)
MDN, voce HTTP/2, 20 ottobre 2025: multiplexing, priorità, HPACK. La semantica HTTP (metodi, status, URI, header) non cambia; cambia il framing. Server Push, in pagina, «has been removed from most major browser engines». Sostituito da rel="preload" e da 103 Early Hints. Chi «abilita HTTP/2 Push» su un reverse proxy sta accendendo una cosa che i browser, in scheda MDN, hanno spento.
HTTP/3 non è più veloce «perché è tre». È un altro trasporto. Se il collo di bottiglia è il database, il database è lento anche su QUIC. Se manca la cache, si legge Cache-Control, non l’ALPN. DNS e anycast restano su DNS, hosting, CDN.
Errori da evitare
Mandare
Upgrade: h3e credere di aver acceso HTTP/3. MDN:Upgradeè HTTP/1.1, e HTTP/2 lo vieta.Confondere
h3-25dell’esempio MDN conh3di RFC 9114.Trattare Alt-Svc come un redirect 301: il client può ignorarlo.
Misurare HTTP/3 con Lighthouse e chiamare quel numero «il protocollo».
Riaccendere HTTP/2 Server Push: MDN, rimosso dai motori principali.
Attribuire a HTTP/3 la scomparsa di un head-of-line blocking applicativo (un mutex sul backend non è UDP).
In sintesi
HTTP/3 è HTTP su QUIC, su UDP. Non è l’Upgrade di HTTP/1.1. Il server lo annuncia, di solito, con Alt-Svc. Il token si legge in Network. RFC 9114 e RFC 9000. Si rilegge MDN il giorno in cui si configura il reverse proxy. Verifica del 3 ottobre 2026.