HTTP/3.0 dobio je predloženi standardni status

IETF (Internet Engineering Task Force), koji je odgovoran za razvoj internetskih protokola i arhitekture, dovršio je formiranje RFC-a za HTTP/3.0 protokol i objavio povezane specifikacije pod identifikatorima RFC 9114 (protokol) i RFC 9204 ( Tehnologija kompresije zaglavlja QPACK za HTTP/3) . Specifikacija HTTP/3.0 dobila je status “Predloženog standarda”, nakon čega će se krenuti s radom na dobivanju statusa nacrta standarda (Draft Standard) RFC-u, što zapravo znači potpunu stabilizaciju protokola i uzimanje u obzir svih dani komentari. Istodobno su objavljene ažurirane verzije specifikacija za protokole HTTP/1.1 (RFC 9112) i HTTP/2.0 (RFC 9113), kao i dokumenti koji definiraju semantiku HTTP zahtjeva (RFC 9110) i zaglavlja kontrole HTTP predmemoriranja (RFC 9111).

HTTP/3 protokol definira korištenje QUIC (Quick UDP Internet Connections) protokola kao prijenosa za HTTP/2. QUIC je proširenje UDP protokola koji podržava multipleksiranje višestrukih veza i pruža metode šifriranja ekvivalentne TLS/SSL-u. Protokol je 2013. stvorio Google kao alternativu kombinaciji TCP+TLS za web, rješavajući probleme s dugim postavljanjem veze i vremenima pregovora u TCP-u te eliminirajući kašnjenja kada se paketi izgube tijekom prijenosa podataka.

HTTP/3.0 dobio je predloženi standardni status

Trenutno je podrška za QUIC i HTTP/3.0 već implementirana u svim popularnim web preglednicima (u Chromeu, Firefoxu i Edgeu, HTTP/3 podrška je omogućena prema zadanim postavkama, a u Safariju zahtijeva postavku "Napredno > Eksperimentalne značajke > HTTP/3" biti omogućen). Na strani poslužitelja dostupne su HTTP/3 implementacije za nginx (u zasebnoj grani i u obliku zasebnog modula), Caddy, IIS i LiteSpeed. HTTP/3 podršku također pruža Cloudflare mreža za dostavu sadržaja.

Ključne značajke QUIC-a:

  • Visoka sigurnost slična TLS-u (u suštini QUIC pruža mogućnost korištenja TLS-a preko UDP-a);
  • Kontrola integriteta protoka, sprječavanje gubitka paketa;
  • Mogućnost trenutnog uspostavljanja veze (0-RTT, u otprilike 75% slučajeva podaci se mogu prenijeti odmah nakon slanja paketa za postavljanje veze) i pružanja minimalnih kašnjenja između slanja zahtjeva i primanja odgovora (RTT, Round Trip Time);
    HTTP/3.0 dobio je predloženi standardni status
  • Korištenje drugog sekvencijskog broja prilikom ponovnog slanja paketa, čime se izbjegava dvosmislenost u identifikaciji primljenih paketa i rješava se vremenskih ograničenja;
  • Gubitak paketa utječe samo na isporuku toka koji je s njim povezan i ne zaustavlja isporuku podataka u paralelnim tokovima koji se prenose kroz trenutnu vezu;
  • Značajke ispravljanja pogrešaka koje minimiziraju kašnjenja zbog ponovnog slanja izgubljenih paketa. Korištenje posebnih kodova za ispravljanje pogrešaka na razini paketa za smanjenje situacija koje zahtijevaju ponovni prijenos izgubljenih paketnih podataka.
  • Granice kriptografskih blokova usklađene su s granicama QUIC paketa, što smanjuje utjecaj gubitaka paketa na dekodiranje sadržaja sljedećih paketa;
  • Nema problema s blokiranjem TCP čekanja;
  • Podrška za identifikator veze, što smanjuje vrijeme potrebno za uspostavljanje ponovne veze za mobilne klijente;
  • Mogućnost povezivanja naprednih mehanizama kontrole zagušenja veze;
  • Koristi tehnike predviđanja propusnosti po smjeru kako bi se osiguralo da se paketi šalju optimalnim brzinama, sprječavajući da postanu zagušeni i uzrokuju gubitak paketa;
  • Značajno povećanje performansi i propusnosti u usporedbi s TCP-om. Za video usluge kao što je YouTube, pokazalo se da QUIC smanjuje operacije ponovnog međuspremnika prilikom gledanja videa za 30%.

Među promjenama u HTTP/1.1 specifikaciji može se primijetiti zabrana izolirane upotrebe znaka za povratak na početak (CR) izvan tijela sa sadržajem, tj. U elementima protokola, CR znak se može koristiti samo zajedno sa znakom za novi redak (CRLF). Algoritam rasporeda zahtjeva u komadima je poboljšan kako bi se pojednostavilo odvajanje priloženih polja i odjeljaka sa zaglavljima. Dodane preporuke za rukovanje dvosmislenim sadržajem za blokiranje napada "HTTP Request Smuggling", koji nam omogućuju da se uglavimo u sadržaj zahtjeva drugih korisnika u protoku između sučelja i pozadine.

Ažuriranje specifikacije HTTP/2.0 izričito definira podršku za TLS 1.3. Zastarjela je shema određivanja prioriteta i povezana polja zaglavlja. Neiskorišteni mehanizam za ažuriranje veze s HTTP/1.1 proglašen je zastarjelim. Smanjeni zahtjevi za provjeru naziva polja i vrijednosti. Neki prethodno rezervirani tipovi okvira i parametri predlažu se za korištenje. Preciznije su definirana zabranjena polja zaglavlja vezana uz vezu.

Izvor: opennet.ru

Dodajte komentar