Eelversion nginx toetusega QUIC ja HTTP/3

NGINX ettevõte teatas teavitab katsetuste algusest rakenduste QUIC ja HTTP/3 protokollide osas nginx HTTP serveris ja proksis. Teostus põhineb 27. eelnõul IETF-QUIC spetsifikatsioonist ja on saadaval läbi eraldiseisva hoidla, mis on haru versioonist 1.19.0. Kood levitatakse BSD litsentsi alusel ja ei põrku kokku varasemalt pakutud HTTP/3 teostusega nginxis Cloudflare'i poolt, mis on eraldi projekt.

HTTP/3 toetus nginxis on märgistatud katsetamiseks, kuna kõiki funktsioone protokollist ei ole rakendatud. Sellegipoolest saab nginxit kasutada lihtsate HTTP/3 päringute vastamiseks QUIC-i kaudu ning suurte failide saatmiseks/vastuvõtmiseks. Protokolli puuduvate funktsioonide seas on versiooni kokkuleppe vahendid, ECN ja ülekoormuse kontroll, struktureeritud logid, taastamisrežiim (QUIC recovery, voogude ja ülekoormuse haldamine), NAT Rebinding, mobiilsete aadresside toetus, Server push, andmete lisamine (trailer). Samuti on pakkuda vaid põhitoetus ACK-pakettide töötlemiseks ja voogude haldamiseks, mis vajab täiustamist. Kõiki standardi nõudeid ei ole arvesse võetud.

HTTP/3 aktiveerimiseks tuleb nginx koguda koos http_v3_module mooduliga ja lisada täiendav direktiiv
«listen» märkega «http3″ UDP-soketi loomiseks. Näiteks:

server {
listen 443 ssl; # TCP-soket HTTP/1.1 jaoks
listen 443 http3 reuseport; # UDP-soket QUIC+HTTP/3 jaoks

ssl_protocols TLSv1.3; # QUIC-i korral on TLS 1.3 kohustuslik
ssl_certificate ssl/www.example.com.crt;
ssl_certificate_key ssl/www.example.com.key;

add_header Alt-Svc ‘quic=»:443″‘; # QUIC-i kergesti kättesaadavust näitav märk
add_header QUIC-Status $quic; # QUIC-i kasutuseisendi staatuse pealkiri
}

Meenutame, et HTTP/3 standardiseerib QUIC protokolli kasutamise HTTP/2 transpordina. Protokoll QUIC (Quick UDP Internet Connections) on alates 2013. aastast arendatud Google'i poolt alternatiivina TCP+TLS komplektile, lahendades TCP-s suurte ühenduse seadistamise ja tunnustamise aegade probleemid ning kõrvaldades viivitused andmeedastuse käigus pakettide kadumise tõttu. QUIC on UDP protokolli pealispind, mis toetab mitme ühenduse mitme loomise ja pakub krüpteerimismeetodeid, mis on võrdsed TLS/SSL-iga. Klientide tarkvara poolel on katsetav tugi HTTP/3-le juba lisatud. Curl, Firefox ja Chromium.

Eelversion nginx toetusega QUIC ja HTTP/3

Peamised omadused QUIC:

  • Kõrge turvalisus, mis on analoogne TLS-iga (QUIC pakub tegelikult võimalust kasutada TLS 1.3 UDP peal);
  • Voogude terviklikkuse kontrollimine, mis takistab pakettide kadumist;
  • Kohene ühenduse loomise võimalus (0-RTT, umbes 75% juhtudest saab andmeid edastada kohe pärast ühenduse loomise paketi saatmist) ning tagab minimaalsed viivitused päringu saatmise ja vastuse saamise vahel (RTT, Round Trip Time);
    Eelversion nginx toetusega QUIC ja HTTP/3
  • Ei kasutata sama järjestikuse numbri paketi kordussaatmisel, mis võimaldab vältida segadust saadud paketide tuvastamisel ja kõrvaldab ajutised katkestused;
  • Paketi kadu mõjutab ainult seotud voogu ja ei peata andmete edastamist paralleelselt edastatavatest voogudest läbi praeguse ühenduse;
  • Vigade parandamise vahendid, mis minimeerivad viivitused kadunud pakettide kordussaatmise tõttu. Spetsiaalsete vigade parandamise koodide kasutamine paketi tasandil, et vähendada olukordade arvu, mis vajavad kadunud paketi andmete uuesti edastamist.
  • Krüptograafiliste plokkide piirid on joondatud QUIC pakettide piiride külge, mis vähendab pakettide kadumise mõju järgmiste pakettide sisu dekodeerimisele;
  • TCP järjekorra ummistusega seotud probleeme pole.
  • Ühenduse identifikaatori toetus, mis võimaldab mobiilsete klientide uuesti ühendamise aega lühendada;
  • Täpsemate ühenduse koormusjuhtimise mehanismide toetus;
  • Võimet kasutada igas suunas läbipääsutehnika prognoosimist, et tagada optimaalne pakettide saatmise intensiivsus, vältides ülekoormusse sattumist, mille korral toimub pakettide kadu;
  • Silmatorkav kasv suurem jõudlus ja läbilaskevõime, võrreldes TCP-ga. Video teenuste, nagu YouTube, puhul on QUIC-i kasutamine vähendanud uuesti puhverdamise operatsioonide arvu video vaatamise ajal 30% võrra.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster