Cloudflare huet e Modul implementéiert fir HTTP / 3 an NGINX z'ënnerstëtzen

Cloudflare Company virbereet Modul fir Ënnerstëtzung fir den HTTP/3 Protokoll am NGINX ze bidden. De Modul ass entworf als Add-on zu der Bibliothéik entwéckelt vu Cloudflare Quiche mat der Ëmsetzung vum QUIC an HTTP/3 Transportprotokoll. De Quichecode ass a Rust geschriwwen, awer den NGINX Modul selwer ass an C geschriwwen an huet Zougang zu der Bibliothéik mat dynamesche Verknëppung. Entwécklungen oppen ënner der BSD Lizenz.

Fir ze montéieren, just eroflueden Patch zu nginx 1.16 an code quiche Bibliothéiken, baut dann nginx op mat den Optiounen "—with-http_v3_module —with-quiche=../quiche". Wann Dir baut, sollt TLS-Ënnerstëtzung op der BoringSSL-Bibliothéik baséieren ("--with-openssl=../quiche/deps/boringssl"), d'Benotzung vun OpenSSL gëtt nach net ënnerstëtzt. Fir Verbindungen ze akzeptéieren, musst Dir d'Nolauschterdirektiv mam "quic" Fändel an d'Astellunge addéieren (zum Beispill "lauschtert 443 quic reuseport").

A Client Software ass HTTP/3 Support scho fir experimentell Builds vu Chrome Canary an dem Curl Utility bäigefüügt. Op der Server Säit, bis elo war et néideg separat, limitéiert ze benotzen Testimplementatiounen. D'Kapazitéit fir HTTP / 3 an nginx ze verarbeiten wäert d'Deployment vu Serveren mat HTTP / 3 Support wesentlech vereinfachen an d'Testimplementatioun vum neie Protokoll méi zougänglech maachen. D'Entstoe vu Standard Support fir HTTP / 3 an nginx erwaart an der 1.17.x Branche fir 6-12 Méint.

Denkt drun datt HTTP / 3 d'Benotzung vum QUIC Protokoll als Transport fir HTTP / 2 standardiséiert. Protokoll QUIC (Quick UDP Internet Connections) gouf vu Google zënter 2013 entwéckelt als Alternativ zu der TCP + TLS Kombinatioun fir de Web, léist Probleemer mat laange Setup- a Verhandlungszäite fir Verbindungen am TCP an eliminéiert Verspéidungen wann Päckchen beim Datentransfer verluer sinn. QUIC ass eng Verlängerung vum UDP Protokoll deen d'Multiplexing vu verschidde Verbindungen ënnerstëtzt a Verschlësselungsmethoden gläichwäerteg mat TLS / SSL ubitt.

Haaptstrooss Fonctiounen QUIC:

  • Héich Sécherheet ähnlech wéi TLS (wesentlech QUIC bitt d'Fäegkeet TLS iwwer UDP ze benotzen);
  • Flow Integritéit Kontroll, Verhënnerung vu Paketverloscht;
  • D'Kapazitéit fir direkt eng Verbindung z'etabléieren (0-RTT, an ongeféier 75% vun de Fäll kënnen d'Donnéeën direkt iwwerdroe ginn nodeems de Verbindungssetup-Paket geschéckt gëtt) a minimale Verspéidungen tëscht der Ufro ze schécken an eng Äntwert ze kréien (RTT, Round Trip Time);
  • Net déi selwecht Sequenznummer benotzt wann Dir e Paket nei iwwerdroen, wat Ambiguititéit bei der Identifikatioun vun Empfangspakete vermeit a vun Timeouts lass gëtt;
  • De Verloscht vun engem Paket beaflosst nëmmen d'Liwwerung vum Stream, deen domat assoziéiert ass a stoppt net d'Liwwerung vun Daten a parallele Streamen iwwer déi aktuell Verbindung iwwerdroen;
  • Fehlerkorrekturfeatures déi Verzögerungen minimiséieren wéinst der Iwwerdroung vu verluerene Päckchen. Benotzung vu spezielle Feelerkorrekturcoden um Paketniveau fir Situatiounen ze reduzéieren déi d'Wiedertransmissioun vu verluerene Paketdaten erfuerderen.
  • Kryptografesch Blockgrenzen si mat QUIC Paketgrenzen ausgeriicht, wat den Impakt vu Paketverloschter op d'Dekodéierung vum Inhalt vun de spéider Pakete reduzéiert;
  • Keng Problemer mat TCP Schlaangen Spär;
  • Ënnerstëtzung fir d'Verbindungsidentifizéierer, wat d'Zäit reduzéiert fir eng Reconnection fir mobil Clienten z'etabléieren;
  • Méiglechkeet vun Verbindung fortgeschratt Verbindung Stau Kontroll Mechanismen;
  • Benotzt pro-Direction Débit Prévisiounstechniken fir sécherzestellen datt Päckchen mat optimalen Tariffer geschéckt ginn, verhënnert datt se iwwerlaascht ginn a Paketverloscht verursaachen;
  • Perceptibel Wuesstem Leeschtung an Débit am Verglach zu TCP. Fir Videoservicer wéi YouTube ass QUIC gewisen datt d'Rebufferungsoperatioune reduzéiert ginn wann Dir Videoe kuckt ëm 30%.
  • Source: opennet.ru

Setzt e Commentaire