L'azienda Cloudflare ha implementato un modulo per supportare HTTP/3 in NGINX

L'azienda Cloudflare ha preparato modulo per garantire il supporto del protocollo HTTP/3 in NGINX. Il modulo è realizzato come un'estensione della libreria in fase di sviluppo da Cloudflare quiche con l'implementazione del protocollo di trasporto QUIC e HTTP/3. Il codice di quiche è scritto in Rust, ma il modulo per NGINX è scritto in C e interagisce con la libreria tramite collegamento dinamico. Sviluppi sono aperti sotto licenza BSD.

Per l'assemblaggio è sufficiente scaricare patch nginx 1.16 e codice la libreria quiche, dopodiché ricompilare nginx con le opzioni «—with-http_v3_module —with-quiche=..\/quiche». Durante la compilazione, il supporto per TLS deve essere basato sulla libreria BoringSSL («—with-openssl=..\/quiche\/deps\/boringssl»); l'uso di OpenSSL non è ancora supportato. Per accettare connessioni, è necessario aggiungere la direttiva listen con il flag «quic» (ad esempio «listen 443 quic reuseport»).

Il supporto per HTTP/3 è già stato aggiunto nelle versioni sperimentali di Chrome Canary e nell'utilità curl. Sul lato server, era ancora necessario utilizzare implementazioni di test limitate nelle loro capacità testate.La possibilità di gestire HTTP/3 in nginx semplificherà notevolmente il dispiegamento di server con supporto per HTTP/3 e renderà più accessibile l'implementazione sperimentale del nuovo protocollo. La disponibilità del supporto nativo per HTTP/3 in nginx si prevede nella branch 1.17.x entro 6-12 mesi.

Ricordiamo che HTTP/3 standardizza l'uso del protocollo QUIC come trasporto per HTTP/2. Il protocollo QUIC (Quick UDP Internet Connections) è stato sviluppato da Google dal 2013 come alternativa alla combinazione TCP+TLS per il Web, affrontando problemi di elevato tempo di installazione e di negoziazione delle connessioni in TCP e eliminando i ritardi causati dalla perdita di pacchetti durante il trasferimento dei dati. QUIC è un'estensione del protocollo UDP, che supporta la multiplexing di diverse connessioni e fornisce metodi di crittografia equivalenti a TLS/SSL.

Principali di rendering tramite WebGL e Canvas, QUIC:

  • Elevata sicurezza, simile a TLS (essenzialmente QUIC offre la possibilità di utilizzare TLS sopra UDP);
  • Controllo dell'integrità del flusso, che previene la perdita di pacchetti;
  • Possibilità di stabilire immediatamente una connessione (0-RTT, in circa il 75% dei casi i dati possono essere trasferiti subito dopo l'invio del pacchetto di apertura connessione) e garantire latenze minime tra l'invio della richiesta e la ricezione della risposta (RTT, Round Trip Time);
  • Non utilizzo, durante la ritrasmissione, dello stesso numero di sequenza del pacchetto, il che consente di evitare ambiguità nella determinazione dei pacchetti ricevuti e di eliminare i timeout;
  • La perdita di pacchetti influisce solo sulla consegna del flusso a essi associato e non interrompe la consegna dei dati nei flussi trasmessi parallelamente attraverso l'attuale connessione;
  • Strumenti di correzione degli errori, che minimizzano i ritardi dovuti alla ritrasmissione dei pacchetti persi. Utilizzo di codici speciali di correzione degli errori a livello di pacchetto per ridurre le situazioni che richiedono la ritrasmissione dei dati del pacchetto perso.
  • I confini dei blocchi crittografici sono allineati con i confini dei pacchetti QUIC, riducendo l'impatto delle perdite di pacchetti sulla decodifica del contenuto dei pacchetti successivi;
  • Assenza di problemi di blocco della coda TCP;
  • Supporto per l'identificatore di connessione, che consente di ridurre i tempi per stabilire una nuova connessione per i clienti mobili;
  • Possibilità di connettere meccanismi avanzati di controllo del sovraccarico della connessione;
  • Utilizzo di tecniche di previsione della larghezza di banda in entrambe le direzioni per garantire un'intensità ottimale di invio dei pacchetti, evitando di scivolare in uno stato di sovraccarico, caratterizzato dalla perdita di pacchetti;
  • Notevole incremento della performance e della capacità, rispetto a TCP. Per i servizi video, come YouTube, l'applicazione di QUIC ha mostrato una riduzione delle operazioni di ri-buffering durante la visione dei video del 30%.
  • Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster