Diversi siti specializzati hanno illustrato i dettagli tecnici alla base di HTTP/3, la nuova versione del protocollo HTTP che include numerosi miglioramenti, a cominciare da una capacità di recupero più robusta in caso di perdita di pacchetti. In questi giorni HTTP/3 è appena una bozza in valutazione, ma Chrome e Firefox hanno già un supporto ufficiale, disattivato di serie. Oggi ti insegniamo ad attivarlo in entrambi i browser.
La versione 2 di HTTP ci ha servito molto bene dal suo debutto, ma non possiamo negare che la rete sia cambiata molto in questi ultimi cinque anni. Le connessioni costanti e lo streaming continuano a moltiplicarsi e, anche se tutto sembra funzionare bene in superficie, esistono alcuni punti di conflitto nel protocollo attuale.
Uno di questi è la dipendenza da TCP. Non c'è nulla di male in sé, ma i meccanismi di recupero di TCP sono “ciechi” davanti alla multiplexing di HTTP/2, causando ritardi e pause inutili se si perdono pacchetti. È qui che interviene HTTP/3, che funziona con l'aiuto del protocollo QUIC, sviluppato inizialmente da Jim Roskind in Google. In termini semplici, TCP viene “pensionato” in HTTP/3, lasciando multiplexing, negoziazione e recupero sotto l'ala di QUIC, mentre UDP assume il ruolo di livello di trasporto.
Mettendo questi vantaggi sul tavolo, come lo attiviamo? L'unico avvertimento è che HTTP/3 è in fase di bozza, quindi viene considerato una funzione sperimentale. Ciò significa che non ci sono molti siti in grado di usare correttamente HTTP/3 e che esiste la possibilità (seppur remota) che alcuni siti smettano di caricarsi o presentino errori con HTTP/3 attivato. Detto questo, cominciamo.
HTTP/3 in Firefox
L'ultima versione stabile 78.0.1 supporta HTTP/3 di serie, ma dobbiamo fare una visita a about:config e cambiare il valore network.http.http3.enabled da false a true. Riavvia il browser e il gioco è fatto.
HTTP/3 in Chrome
Si suppone che HTTP/3 e QUIC dovrebbero essere usati con le build Canary di Chrome, ma oggi possiamo fare la prova nella versione stabile. Per prima cosa, apri chrome://flags, digita “QUIC” nella casella di ricerca e cambia l'opzione «Experimental QUIC protocol» da Default a Enabled. Chrome ti chiederà di riavviare il browser, ma non è sufficiente.
Per abilitare completamente questa tecnologia, il secondo passaggio è aggiungere due modificatori al collegamento di Chrome: --enable-quic --quic-version=h3-46. È probabile che la versione di QUIC nel modificatore cambi col tempo, ma “46” sembra funzionare abbastanza bene.
Come verifichiamo che HTTP/3 e QUIC funzionino? Ci sono due siti: la pagina ufficiale di LiteSpeed e quic.rocks. La conferma richiede di premere F12 per aprire gli strumenti di sviluppo, andare nella scheda Rete o Network, ricaricare la pagina e abilitare la scheda Protocollo. Firefox lo presenta come HTTP/3, mentre in Chrome dovrebbe dire HTTP/2+QUIC/46.
Se qualcosa va storto, basta annullare i passaggi precedenti. Fai la prova!