Sebbene fosse già stato integrato nel browser Chrome oltre che nel progetto Chromium (software opensource da cui viene fatto derivare Chrome), il protocollo QUIC viene ufficialmente presentato quest’oggi dagli sviluppatori Google.
Nonostante QUIC sia l’acronimo di Quick UDP Internet Connection, l’assonanza con il termine anglosassone quick (“veloce”, “rapido”) non è assolutamente casuale.
L’obiettivo è infatti quello di velocizzare ulteriormente il flusso di informazioni scambiate tra client e server web (e viceversa). I tecnici di Google hanno lavorato alacremente, in passato, su SPDY – protocollo poi confluito nelle specifiche di HTTP/2 (ne abbiamo parlato negli articoli Approvato HTTP/2, il web diventa più veloce e sicuro e Più veloce HTTP o HTTPS? Proviamo a chiarire).
Secondo Google, QUIC può rappresentare un’ulteriore passo in avanti.
Velocizzare il download delle pagine web con QUIC
HTTP, HTTPS e le successive incarnazioni come HTTP/2, infatti, poggiano sempre sul protocollo TCP a livello di trasporto. QUIC, invece, utilizza il più leggero UDP al posto di TCP.
A differenza di TCP, infatti, UDP non richiede l’effettuazione di un’operazione iniziale che consiste nella creazione di un “circuito virtuale” tra mittente e destinatario (è connectionless), non gestisce il riordinamento dei pacchetti dati né la ritrasmissione di quelli eventualmente persi. In compenso, UDP è caratterizzato da una latenza molto bassa rispetto a TCP rivelandosi particolarmente efficiente in tutte quelle applicazioni che richiedono la trasmissione e la ricezione delle informazioni praticamente “in tempo reale”.
I servizi VoIP ed i videogiochi, ad esempio, utilizzano sempre e solo il protocollo UDP: è infatti possibile tollerare l’eventuale periodica perdita di alcuni pacchetti dati (che non compromettono la comunicazione nella sua totalità) a fronte della garanzia di una bassa latenza.
Google è partita proprio da qui. Utilizzando UDP per veicolare alcune tipologie di dati sul web ed introducendo funzionalità aggiuntive come la ritrasmissione automatica ed il controllo di congestione, i tecnici della società statunitense sono riusciti a velocizzare lo scambio dei dati mantenendo un’elevata affidabilità del sistema.
Come spiegato nello schema in figura, in una normale connessione realizzata utilizzando TCP o TPC+TLS (quindi qualche forma di crittografia dei dati), sono necessari più percorsi andata-ritorno prima che il browser web inizi davvero a ricevere i dati richiesti.
Con QUIC, il dialogo con un server col quale il browser ha già colloquiato in precedenza può invece avvenire istantaneamente.
Gli utenti di Chrome già usano QUIC
La maggior parte degli utenti non lo sa ma chi utilizza Chrome sta già adoperando QUIC.
Già oggi circa la metà di tutte le richieste provenienti dalle installazioni di Chrome e dirette sui server di Google sono gestite utilizzando il protocollo QUIC. Lo ha confermato Google in questa pagina.
Terminati ulteriori test ed integrata la documentazione sin qui prodotta, Google ha in progetto di proporre all’IETF (Internet Engineering Task Force) l’avvio del processo di standardizzazione di QUIC.