Cloudflare pakub moodulit, mis toetab NGINX-is HTTP / 3

CloudFlare

Cloudflare on NGINX-is HTTP / 3-protokolli toetamiseks ette valmistanud mooduli. Moodul on valmis kiibi näol quiche raamatukogus välja töötatud Cloudflare'is QUIC ja HTTP / 3 transpordiprotokolli juurutamisega. Kiiruskood on kirjutatud Rustis, kuid NGINX-i moodul on kirjutatud C-s ja pääseb teeki dünaamiliste linkide kaudu. Töötunnid on avatud BSD litsentsi alusel.

Kliendi tarkvarast HTTP / 3 tugi on Chrome Canary katselistele järkudele juba lisatud ja lokkide utiliit. Serveri poolelt on seni nõutud piiratud võimalustega isoleeritud testrakenduste kasutamist. Võimalus HTTP / 3 haldamiseks nginxis lihtsustab oluliselt HTTP / 3 toega serverite juurutamist ja see muudab uue protokolli testimise lihtsamaks.

HTTP / 3 standardiseerib QUIC-protokolli kasutamise HTTP / 2 transpordina. Google on QUIC-protokolli välja töötanud alternatiivina veebi TCP + TLS-ile kavatseb TCP-s pikka aega installida ja kooskõlastada ühendeid ja viivitab pakettide kadumise kõrvaldamisega andmeedastuse ajal. QUIC on UDP-protokolli pistikprogramm, mis toetab mitme ühenduse multipleksimist ja pakub TLS / SSL-iga samaväärseid krüptimismeetodeid.

QUICi põhiomaduste hulgas, mis silma paistavad:

  • Kõrge turvalisus, sarnaselt TLS-ile (tegelikult pakub QUIC võimalust kasutada TLS-i UDP kaudu).
  • Voo terviklikkuse kontroll, mis hoiab ära pakettide kadumise.
  • Võimalus luua ühendus koheselt (0-RTT, umbes 75% juhtudest saab andmeid edastada kohe pärast ühenduse seadistuspaketi saatmist) ja tagada minimaalsed viivitused päringu saatmise ja vastuse saamise vahel (RTT, edasi-tagasi aeg) .
  • Paketi uuesti edastamisel sama järjekorranumbri mittekasutamine, mis väldib vastuvõetavate pakettide määramisel ebaselgust ja välistab ajalõpu.
  • Paketi kaotamine mõjutab ainult sellega seotud voo edastamist ja ei peata andmete edastamist paralleelselt praeguse ühenduse kaudu edastatud voogudes.
  • Vigade parandamise tööriistad, mis minimeerivad kaotatud pakettide uuesti edastamisest tingitud viivitusi. Spetsiaalsete paketitaseme tõrkeotsingu koodide kasutamine olukordade vähendamiseks, mis nõuavad kadunud pakettandmete uuesti edastamist.
  • Krüptograafiliste plokkide piirid on joondatud QUIC-i pakettide piiridega, vähendades pakettide kadumise mõju järgnevate pakettide sisu dekodeerimisele
  • TCP järjekorra blokeerimisega pole probleeme
  • Toetus ühenduse identifikaatorile, mis vähendab mobiiliklientide jaoks ühenduse loomise aega
  • Võimalus ühendada täiustatud mehhanisme ühenduse ülekoormuse juhtimiseks
  • Kasutades ribalaiuse prognoosimise tehnikat igas suunas, et tagada pakettide optimaalne edastamise intensiivsus, takistades selle jõudmist ülekoormatuse olekusse, kus täheldatakse pakettide kadu
  • Tähelepanuväärne jõudlus ja jõudluse kasv TCP-ga võrreldes. Videoteenuste, nagu YouTube, puhul näitas QUIC videote vaatamisel 30% puhverdamistoimingute vähenemist.

Kuidas rakendada moodulit HTTP / 3 toetamiseks NGINX-is?

Neile, kes on huvitatud selle mooduli juurutamisest oma serverisse, Nad saavad seda teha, järgides alltoodud juhiseid.

Selle koostamiseks nad peavad lihtsalt nginx 1.16 plaastri alla laadima ja quiche raamatukogu kood.

curl -O https://nginx.org/download/nginx-1.16.1.tar.gz

tar xzvf nginx-1.16.1.tar.gz

git clone --recursive https://github.com/cloudflare/quiche

cd nginx-1.16.1

patch -p01 < ../quiche/extras/nginx/nginx-1.16.patch

Ja koostame NGINX-i, kui HTTP / 3 tugi on lubatud:

 ./configure                                 \

--prefix=$PWD                           \

--with-http_ssl_module                  \

--with-http_v2_module                   \

--with-http_v3_module                   \

--with-openssl=../quiche/deps/boringssl \

--with-quiche=../quiche

make

Kompileerimise ajal peaks TLS-tugi põhinema BoringSSL-i teegil ("–with-openssl = .. / quiche / deps / boringssl"), OpenSSL-i kasutamist veel ei toetata.

Konfiguratsioonis ühenduste aktsepteerimiseks peavad nad lisama kuulaja direktiivi "quic" lipuga.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.