Cumpagnia NGINX circa l'iniziu di a prova Protokolli QUIC è HTTP/3 in u servitore HTTP è proxy nginx. L'implementazione hè basatu nantu Specificazione IETF-QUIC è hè dispunibule attraversu , forked da a liberazione 1.19.0. U codice hè distribuitu sottu a licenza BSD è ùn interferiscenu micca Implementazione HTTP/3 per nginx da Cloudflare, chì hè un prughjettu separatu.
U supportu HTTP/3 in nginx hè marcatu cum'è sperimentale perchè i protokolli sò implementati. À u listessu tempu, nginx pò esse digià utilizatu per mandà risposti à richieste simplici HTTP / 3 nantu à QUIC è scaricate / caricate grandi schedari. E caratteristiche di u protocolu attualmente mancanti includenu strumenti di negoziazione di versione di u protokollu, ECN è cuntrollu di congestione, logs strutturati, modalità di ricuperazione (recuperazione QUIC, cuntrollu di flussu è di congestione), NAT Rebinding, indirizzi mobile, push Server, attache di dati (trailer). Offre ancu solu supportu di basa per u processu di pacchetti ACK è u cuntrollu di u flussu, chì esige più sviluppu. Ùn sò micca tenuti in contu tutti i requisiti di u standard.
Per attivà HTTP/3, avete bisognu di custruisce nginx cù u modulu http_v3_module è aghjunghje una direttiva supplementaria.
"ascolta" cù a bandiera "http3" per creà un socket d'ascolta UDP. Per esempiu:
servitore {
ascolta 443 ssl; # Socket TCP per HTTP / 1.1
ascolta 443 http3 reuseport; # Socket UDP per QUIC+HTTP/3
ssl_protocols TLSv1.3; # QUIC richiede TLS 1.3
ssl_certificate ssl/www.example.com.crt;
ssl_certificate_key ssl/www.example.com.key;
add_header Alt-Svc 'quic=":443″'; # Bandiera di accessibilità QUIC
add_header QUIC-Status $quic; # Header cù statu d'usu QUIC
}
Ricurdativi chì HTTP/3 standardizeghja l'usu di u protocolu QUIC cum'è un trasportu per HTTP/2. Protocolu (Quick UDP Internet Connections) hè statu sviluppatu da Google da 2013 cum'è una alternativa à a cumminazione TCP + TLS per u Web, risolve i prublemi cù l'installazione longa è i tempi di negoziazione per e cunnessione in TCP è eliminendu i ritardi quandu i pacchetti sò persi durante u trasferimentu di dati. QUIC hè una estensione di u protokollu UDP chì sustene a multiplexazione di parechje cunnessione è furnisce metudi di criptografia equivalenti à TLS / SSL. Da u latu di u cliente, u supportu sperimentale per HTTP / 3 hè digià aghjuntu , и .
menu QUIC:
- Alta sicurezza simile à TLS (essenzialmente QUIC furnisce a capacità di utilizà TLS 1.3 sopra UDP);
- U cuntrollu di l'integrità di u flussu, impediscendu a perdita di pacchetti;
- A capacità di stabilisce istantaneamente una cunnessione (0-RTT, in circa 75% di i casi, i dati ponu esse trasmessi immediatamente dopu à mandà u pacchettu di setup di cunnessione) è furnisce ritardi minimi trà l'inviu di una dumanda è riceve una risposta (RTT, Round Trip Time);
- Ùn aduprate micca u listessu numeru di sequenza quandu si ritrasmette un pacchettu, chì evita l'ambiguità in l'identificazione di i pacchetti ricevuti è sbarazza di timeout;
- A perdita di un pacchettu affetta solu a consegna di u flussu assuciatu cù questu è ùn impedisce micca a consegna di dati in flussi paralleli trasmessi attraversu a cunnessione attuale;
- Funzioni di correzione d'errore chì minimizanu i ritardu per via di a ritrasmissione di pacchetti persi. Utilizazione di codici di correzione d'errore speciale à u livellu di u pacchettu per riduce e situazioni chì necessitanu ritrasmissioni di dati di pacchetti persi.
- I cunfini di u bloccu criptograficu sò allinati cù i limiti di u pacchettu QUIC, chì reduce l'impattu di perdite di pacchetti nantu à a decodificazione di u cuntenutu di i pacchetti successivi;
- Nisun prublema cù u bloccu di fila TCP;
- Supportu per l'identificatore di cunnessione, chì riduce u tempu chì ci vole à stabilisce una reconnection per i clienti mobili;
- Possibilità di cunnette i meccanismi avanzati di cuntrollu di congestioni di cunnessione;
- Aduprà tecniche di previsione di u throughput per direzzione per assicurà chì i pacchetti sò mandati à ritmi ottimali, impediscendu di diventà congestionati è causendu a perdita di pacchetti;
- Perceptible prestazioni è throughput paragunatu à TCP. Per i servizii di video cum'è YouTube, QUIC hè statu dimustratu per riduce l'operazioni di rebuffering quandu vede video da 30%.
Source: opennet.ru
