U Firefox, koji će činiti osnovu za izdanje Firefoxa 72, planirano za 7. siječnja, podrška za protokol HTTP/3. Prema zadanim postavkama HTTP/3 je isključen i zahtijeva aktivaciju opcije „network.http.http3.enabled” u about:config.
Podrška za HTTP/3 u Firefoxu temelji se na projektu koji razvija kompanija Mozilla , koji pruža implementaciju klijenta i poslužitelja za protokol QUIC. Kod komponenti za podršku HTTP/3 i QUIC napisan je na jeziku Rust.
Iz klijentskog softvera eksperimentalna podrška za HTTP/3 također već u Chromeu i curl-u, a za poslužitelje dostupna je u obliku za nginx i temeljenog na knjižnici ( QUIC i HTTP/3 na jeziku Rust od strane kompanije Cloudflare). Za provjeru rada klijenata HTTP/3 nekoliko testnih web stranica, većina kojih za sada se ispravno ne otvara u Firefoxe (HTTP/3 je u fazi i nije konačno standardiziran).
Podsjetimo da HTTP/3 standardizira korištenje protokola QUIC kao transporta za HTTP/2. Protokol (Quick UDP Internet Connections) razvija se od 2013. godine od strane Google-a kao alternativa vezi TCP+TLS za web, riješavajući probleme s dugim vremenom uspostave i dogovora veza u TCP-u te uklanjajući kašnjenja prilikom gubitka paketa tijekom prijenosa podataka. QUIC je nadogradnja na UDP protokol, koja podržava multiplexiranje više veza i pruža metode šifriranja ekvivalentne TLS/SSL-u.
Glavne QUIC:
- Visoka sigurnost, slična TLS-u (u suštini QUIC pruža mogućnost korištenja TLS-a preko UDP-a);
- Kontrola cjelovitosti toka, koja sprječava gubitak paketa;
- Mogućnost trenutnog uspostavljanja veze (0-RTT, u otprilike 75% slučajeva podaci se mogu prenositi odmah nakon slanja paketa za uspostavljanje veze) i osiguranje minimalnih kašnjenja između slanja zahtjeva i primanja odgovora (RTT, Round Trip Time);
- Nedavanje istog broja sekvencijskog paketa pri ponovnom slanju, što omogućava izbjegavanje nejasnoća pri određivanju primljenih paketa i uklanjanje vremenskih prekida;
- Gubitak paketa utječe samo na isporuku povezane struje i ne zaustavlja isporuku podataka u paralelno prijenosima kroz trenutno uspostavljene struje;
- Sredstva za ispravak grešaka, koja minimiziraju kašnjenja uzrokovana ponovnim slanjem izgubljenih paketa. Korištenje specijalnih kodova za ispravak grešaka na razini paketa za smanjenje situacija koje zahtijevaju ponovno slanje podataka izgubljenog paketa.
- Granice kriptografskih blokova su poravnate s granicama QUIC paketa, što smanjuje utjecaj gubitaka paketa na dekodiranje sadržaja sljedećih paketa;
- Nema problema s blokiranjem TCP reda;
- Podrška za identifikator veze, koji omogućava smanjenje vremena potrebnog za ponovnu uspostavu veze za mobilne klijente;
- Mogućnost povezivanja s proširenim mehanizmima kontrole opterećenja veze;
- Korištenje tehnike predviđanja propusnosti u svakom smjeru za osiguranje optimalne intenziteta slanja paketa, sprječavajući povratak u stanje preopterećenja u kojem se primjećuje gubitak paketa;
- Značajan performansi i propusnosti, u usporedbi s TCP-om. Za video servise poput YouTube-a, uporaba QUIC-a pokazala je smanjenje ponovnog punjenja prilikom reprodukcije videa za 30%.
Izvor: opennet.ru
