HTTP/3.0 je prejel predlagani standardni status

IETF (Internet Engineering Task Force), ki je odgovorna za razvoj internetnih protokolov in arhitekture, je zaključila oblikovanje RFC za protokol HTTP/3.0 in objavila povezane specifikacije pod identifikatorjema RFC 9114 (protokol) in RFC 9204 ( Tehnologija stiskanja glave QPACK za HTTP/3). Specifikacija HTTP/3.0 je prejela status “Predlaganega standarda”, po katerem se bodo začela dela za pridobitev RFC statusa osnutka standarda (Draft Standard), kar dejansko pomeni popolno stabilizacijo protokola in upoštevanje vseh podane pripombe. Hkrati so bile objavljene posodobljene različice specifikacij za protokola HTTP/1.1 (RFC 9112) in HTTP/2.0 (RFC 9113) ter dokumenti, ki opredeljujejo semantiko zahtev HTTP (RFC 9110) in nadzorne glave predpomnjenja HTTP. (RFC 9111).

Protokol HTTP/3 definira uporabo protokola QUIC (Quick UDP Internet Connections) kot transporta za HTTP/2. QUIC je razširitev protokola UDP, ki podpira multipleksiranje več povezav in zagotavlja metode šifriranja, enakovredne TLS/SSL. Protokol je leta 2013 ustvaril Google kot alternativo kombinaciji TCP+TLS za splet, ki rešuje težave z dolgimi nastavitvami povezave in pogajalskimi časi v TCP ter odpravlja zamude, ko se paketi med prenosom podatkov izgubijo.

HTTP/3.0 je prejel predlagani standardni status

Trenutno je podpora za QUIC in HTTP/3.0 že implementirana v vseh priljubljenih spletnih brskalnikih (v Chromu, Firefoxu in Edgeu je podpora za HTTP/3 privzeto omogočena, v Safariju pa zahteva nastavitev »Napredno > Eksperimentalne funkcije > HTTP/3« biti omogočen). Na strani strežnika so na voljo HTTP/3 implementacije za nginx (v ločeni veji in v obliki ločenega modula), Caddy, IIS in LiteSpeed. Podporo HTTP/3 zagotavlja tudi omrežje za dostavo vsebin Cloudflare.

Ključne lastnosti QUIC:

  • Visoka varnost, podobna TLS (v bistvu QUIC omogoča uporabo TLS prek UDP);
  • Nadzor celovitosti pretoka, preprečevanje izgube paketov;
  • Sposobnost takojšnje vzpostavitve povezave (0-RTT, v približno 75% primerov se lahko podatki prenesejo takoj po pošiljanju paketa za nastavitev povezave) in zagotavljanje minimalnih zamud med pošiljanjem zahteve in prejemom odgovora (RTT, Round Trip Time);
    HTTP/3.0 je prejel predlagani standardni status
  • Uporaba druge zaporedne številke pri ponovnem pošiljanju paketa, s čimer se izognete dvoumnosti pri prepoznavanju prejetih paketov in odpravite časovne omejitve;
  • Izguba paketa vpliva samo na dostavo z njim povezanega toka in ne ustavi dostave podatkov v vzporednih tokovih, ki se prenašajo prek trenutne povezave;
  • Funkcije za popravljanje napak, ki zmanjšajo zamude zaradi ponovnega prenosa izgubljenih paketov. Uporaba posebnih kod za popravljanje napak na ravni paketa za zmanjšanje situacij, ki zahtevajo ponovno pošiljanje izgubljenih paketnih podatkov.
  • Meje kriptografskih blokov so poravnane z mejami paketov QUIC, kar zmanjša vpliv izgube paketov na dekodiranje vsebine naslednjih paketov;
  • Ni težav z blokiranjem čakalne vrste TCP;
  • Podpora za identifikator povezave, ki skrajša čas, potreben za vzpostavitev ponovne povezave za mobilne odjemalce;
  • Možnost priklopa naprednih mehanizmov za nadzor prezasedenosti povezav;
  • Uporablja tehnike napovedovanja prepustnosti po smeri, da zagotovi, da so paketi poslani z optimalnimi hitrostmi, kar preprečuje, da bi postali prezasedeni in povzročili izgubo paketov;
  • Znatno povečanje zmogljivosti in prepustnosti v primerjavi s TCP. Pri video storitvah, kot je YouTube, se je izkazalo, da QUIC zmanjša operacije vnovičnega medpomnjenja pri gledanju videoposnetkov za 30 %.

Med spremembami v specifikaciji HTTP/1.1 je mogoče opozoriti na prepoved izolirane uporabe znaka za vrnitev v prvi vrstico (CR) zunaj telesa z vsebino, tj. V elementih protokola se znak CR lahko uporablja samo skupaj z znakom za premik vrstice (CRLF). Algoritem za razporeditev zahtevkov v kosih je bil izboljšan za poenostavitev ločevanja priloženih polj in odsekov z glavami. Dodana priporočila za ravnanje z dvoumno vsebino za blokiranje napadov »HTTP Request Smuggling«, ki nam omogočajo, da se zagozdimo v vsebino zahtev drugih uporabnikov v toku med sprednjim in zadnjim delom.

Posodobitev specifikacije HTTP/2.0 izrecno opredeljuje podporo za TLS 1.3. Zastarela je shema določanja prednosti in povezana polja glave. Neuporabljeni mehanizem za posodabljanje povezave s HTTP/1.1 je bil razglašen za zastarelega. Zmanjšane zahteve za preverjanje imen in vrednosti polj. Za uporabo so predlagane nekatere predhodno rezervirane vrste okvirjev in parametri. Natančneje so opredeljena prepovedana polja glave, povezana s povezavo.

Vir: opennet.ru

Dodaj komentar