Cloudflare implimenta modulu biex jappoġġja HTTP/3 f'NGINX

Kumpanija Cloudflare ippreparat modulu biex tipprovdi appoġġ għall-protokoll HTTP/3 f'NGINX. Il-modulu huwa ddisinjat bħala add-on għal-librerija żviluppata minn Cloudflare quiche bl-implimentazzjoni tal-protokoll tat-trasport QUIC u HTTP/3. Il-kodiċi tal-quiche huwa miktub f'Rut, iżda l-modulu NGINX innifsu huwa miktub f'Ċ u jaċċessa l-librerija billi juża rabta dinamika. Żviluppi miftuħa taħt liċenzja BSD.

Biex tgħaqqad, tniżżel biss garża għal nginx 1.16 u kodiċi libreriji quiche, imbagħad jerġgħu jibnu nginx bl-għażliet “—with-http_v3_module —with-quiche=../quiche”. Meta tibni, l-appoġġ TLS għandu jkun ibbażat fuq il-librerija BoringSSL ("--with-openssl=../quiche/deps/boringssl"), l-użu ta 'OpenSSL għadu mhux appoġġjat. Biex taċċetta konnessjonijiet, trid iżżid id-direttiva ta’ isma’ bil-bandiera “quic” mas-settings (pereżempju, “isma’ 443 quic reuseport”).

Fis-softwer tal-klijent, l-appoġġ HTTP/3 diġà ġie miżjud mal-bini sperimentali ta 'Chrome Canary u l-utilità curl. Min-naħa tas-server, sa issa kien meħtieġ li tuża separata, limitata implimentazzjonijiet tat-test. Il-kapaċità li tipproċessa HTTP/3 f'nginx se tissimplifika b'mod sinifikanti l-iskjerament ta 'servers b'appoġġ HTTP/3 u se tagħmel l-implimentazzjoni tat-test tal-protokoll il-ġdid aktar aċċessibbli. L-emerġenza ta 'appoġġ standard għal HTTP/3 f'nginx huwa mistenni fil-fergħa 1.17.x għal 6-12-il xahar.

Ifakkar li HTTP/3 tistandardizza l-użu tal-protokoll QUIC bħala trasport għal HTTP/2. Protokoll QUIC (Quick UDP Internet Connections) ġie żviluppat minn Google mill-2013 bħala alternattiva għall-kombinazzjoni TCP + TLS għall-Web, isolvi problemi b'setup twal u ħinijiet ta 'negozjar għal konnessjonijiet f'TCP u jeliminaw dewmien meta l-pakketti jintilfu waqt it-trasferiment tad-dejta. QUIC hija estensjoni tal-protokoll UDP li tappoġġja l-multiplexing ta 'konnessjonijiet multipli u tipprovdi metodi ta' encryption ekwivalenti għal TLS/SSL.

Il-prinċipali Karatteristiċi QUIC:

  • Sigurtà għolja simili għal TLS (essenzjalment QUIC jipprovdi l-abbiltà li tuża TLS fuq UDP);
  • Kontroll tal-integrità tal-fluss, li jipprevjeni t-telf tal-pakketti;
  • Il-ħila li tistabbilixxi konnessjoni istantanjament (0-RTT, f'madwar 75% tal-każijiet id-dejta tista 'tiġi trażmessa immedjatament wara li jintbagħat il-pakkett tas-setup tal-konnessjoni) u tipprovdi dewmien minimu bejn li tibgħat talba u tirċievi tweġiba (RTT, Round Trip Time);
  • Ma jużax l-istess numru ta 'sekwenza meta jerġa' jittrażmetti pakkett, li jevita l-ambigwità fl-identifikazzjoni ta 'pakketti riċevuti u jeħles mill-timeouts;
  • Telf ta 'pakkett jaffettwa biss il-kunsinna tal-fluss assoċjat miegħu u ma jwaqqafx il-kunsinna ta' data fi flussi paralleli trażmessi permezz tal-konnessjoni kurrenti;
  • Karatteristiċi ta 'korrezzjoni ta' żbalji li jimminimizzaw id-dewmien minħabba trażmissjoni mill-ġdid ta 'pakketti mitlufa. Użu ta' kodiċijiet speċjali ta' korrezzjoni ta' żbalji fil-livell tal-pakkett biex jitnaqqsu s-sitwazzjonijiet li jeħtieġu trażmissjoni mill-ġdid tad-dejta tal-pakkett mitlufa.
  • Il-konfini tal-blokok kriptografiċi huma allinjati mal-konfini tal-pakketti QUIC, li jnaqqas l-impatt tat-telf tal-pakketti fuq id-dekodifikazzjoni tal-kontenut tal-pakketti sussegwenti;
  • Ebda problemi bl-imblukkar tal-kju TCP;
  • Appoġġ għall-identifikatur tal-konnessjoni, li jnaqqas iż-żmien li jieħu biex tiġi stabbilita konnessjoni mill-ġdid għall-klijenti mobbli;
  • Possibbiltà ta' konnessjoni ta' mekkaniżmi avvanzati ta' kontroll tal-konġestjoni tal-konnessjoni;
  • Juża tekniki ta' tbassir ta' throughput għal kull direzzjoni biex jiżgura li l-pakketti jintbagħtu b'rati ottimali, u ma jħallihomx isiru konġestjonati u jikkawżaw telf ta' pakketti;
  • Perċettibbli tkabbir prestazzjoni u throughput meta mqabbla ma 'TCP. Għal servizzi tal-vidjo bħal YouTube, QUIC intwera li jnaqqas l-operazzjonijiet ta 'rebuffering meta jaraw vidjows bi 30%.
  • Sors: opennet.ru

Żid kumment