Në ndërtesat natyrore të Firefox, si dhe në versionin beta, mbështetje për protokollin HTTP/3 aktivizohet automatikisht. Në degën stabile, aktivizimi i HTTP/3 është planifikuar për lëshimin e Firefox 88, i ndodhur më 20 prill. Në Chrome, aktivizimi selektiv i HTTP/3 filloi në tetor 2020.
Mbështetja për HTTP/3 në Firefox është e bazuar në projektin neqo, i zhvilluar nga Mozilla, që ofron implementimin e klientit dhe serverë për protokollin QUIC. Kodi i komponenteve për mbështetje të HTTP/3 dhe QUIC është shkruar në gjuhën Rust. Për të menaxhuar aktivizimin e HTTP/3, në about:config është parashikuar opsioni 'network.http.http3.enabled'. Nga aplikacionet e klientit, mbështetje eksperimentale për HTTP/3 gjithashtu është shtuar tashmë në Chrome dhe curl, ndërsa për serverësh është e disponueshme në nginx, si dhe në formën e një moduli nginx dhe një serveri testues nga Cloudflare. Për të verifikuar funksionimin e klientëve të HTTP/3, janë nisur disa faqe teste.
Protokolli HTTP/3 ndodhet në fazën e specifikimit për draft dhe nuk është finalizuar akoma në IETF. HTTP/3 përcakton përdorimin e protokollit QUIC si transport për HTTP/2. Protokolli QUIC (Quick UDP Internet Connections) është zhvilluar nga Google që nga viti 2013 si një alternativë për kombinimin TCP+TLS për Web, duke zgjidhur problemet me kohën e madhe të instaluar dhe pajtimit të lidhjeve në TCP dhe duke eliminuar vonesat gjatë humbjes së paketave gjatë transferimit të të dhënave. QUIC është një shtresë mbi protokollin UDP që mbështet të shumëfishta lidhjesh dhe siguron metoda të enkriptimit, që janë ekuivalente me TLS/SSL. Gjatë zhvillimit të standardit në IETF, janë bërë ndryshime në protokoll, që kanë çuar në ekzistencën e dy degëve paralele, një për HTTP/3 dhe tjetra e mbështetur nga Google (Chrome mbështet të dy variantet).
Karakteristikat kryesore të QUIC:
- Siguri e lartë, e ngjashme me TLS (në thelb QUIC ofron mundësinë e përdorimit të TLS mbi UDP);
- Kontrolli mbi integritetin e rrjedhës, që parandalon humbjen e pacakove;
- Mundësia për të vendosur një lidhje menjëherë (0-RTT, në rreth 75% të rasteve, të dhënat mund të transmetohen menjëherë pas dërgimit të paketës së vendosjes së lidhjes) dhe të sigurojë vonesa minimale midis dërgimit të kërkesës dhe marrjes së përgjigjes (RTT, Round Trip Time);
- Përdorimi i një numri tjetër sekonda për dërgimin e paketave përsëritëse, gjë që lejon shmangien e dyshimeve në përcaktimin e paketave të pranuara dhe eliminon vonesat;
- Humorja e paketës ndikon vetëm në dërgesën e fluksit lidhur me të dhe nuk ndalon dërgimin e të dhënave në flukset që dërgohen paralelisht nëpërmjet lidhjes aktuale;
- Mjetet për korrigjimin e gabimeve, që minimizojnë vonesat për shkak të dërgimit përsëritës të paketave të humbura. Përdorimi i kodeve speciale për korrigjimin e gabimeve në nivelin e paketës për të reduktuar situatat që kërkojnë dërgim përsëritës të të dhënave të paketës së humbur.
- Kufijtë e bllokave kriptografikë janë përputhur me kufijtë e paketave QUIC, duke zvogëluar ndikimin e humbjeve të paketave në dekodimin e përmbajtjes së paketave të ardhshme;
- Mungesa e problemeve me bllokimin e radhës TCP;
- Mbështetje për identifikuesin e lidhjes, që lejon zvogëlimin e kohës për vendosjen e lidhjes përsëritëse për klientët mobilë;
- Mundësia e lidhjes së mekanizmave të zgjeruar të kontrollit të ngarkesës së lidhjes;
- Përdorimi i teknikave të parashikimit të kapacitetit në çdo drejtim për të siguruar intensitetin optimal të dërgimit të paketave, duke parandaluar rënien në një gjendje ngarkese, ku humbjet e paketave vërehen;
- Një rritje e dukshme e performancës dhe kapacitetit, krahasuar me TCP. Për shërbimet e video, si YouTube, përdorimi i QUIC ka treguar një reduktim të operacioneve të ripërmendjes gjatë shikimit të videove me 30%.
Burimi: opennet.ru
