I de nattsamlade versionerna av Firefox samt i beta-versionen Àr stödet för protokollet HTTP/3 som standard aktiverat. I den stabila versionen planeras aktiveringen av HTTP/3 för utgÄvan av Firefox 88, som Àr schemalagd till den 20 april. I Chrome började selektiv aktivering av HTTP/3 i oktober 2020.
Stödet för HTTP/3 i Firefox baseras pÄ det av Mozilla utvecklade projektet neqo, som tillhandahÄller implementeringen av klienten och servern för protokollet QUIC. Koden för komponenterna för att stödja HTTP/3 och QUIC Àr skriven i Rust. För att styra aktiveringen av HTTP/3 i about:config finns det ett alternativ "network.http.http3.enabled". Inom klientprogramvaran har experimentellt stöd för HTTP/3 ocksÄ redan lagts till i Chrome och curl, och för servrar Àr det tillgÀngligt i nginx, samt i form av en nginx-modul och en testserver frÄn Cloudflare. För att kontrollera funktionen hos HTTP/3-klienter har flera testwebbplatser lanserats.
Protokollet HTTP/3 Àr fortfarande i stadiet för skissspecifikation och har Ànnu inte standardiserats inom IETF. HTTP/3 definierar anvÀndningen av protokollet QUIC som transport för HTTP/2. Protokollet QUIC (Quick UDP Internet Connections) har utvecklats av Google sedan 2013 som ett alternativ till TCP+TLS för webben, vilket löser problem med lÄng tid för att upprÀtta och förhandla anslutningar i TCP och eliminerar fördröjningar vid paketförluster under datatransmission. QUIC Àr en överbyggnad pÄ UDP-protokollet som stöder multiplexering av flera anslutningar och tillhandahÄller krypteringsmetoder som motsvarar TLS/SSL. Under utvecklingen av standarden i IETF har förÀndringar gjorts i protokollet, vilket har lett till att tvÄ parallella grenar existerar, en för HTTP/3 och den andra som stöds av Google (Chrome stöder bÄda varianterna).
Huvudfunktioner i QUIC:
- Hög sÀkerhet, liknande TLS (i praktiken ger QUIC möjlighet till anvÀndning av TLS över UDP);
- Kontroll av strömmens integritet, vilket förhindrar pak förlust;
- Möjlighet att omedelbart upprÀtta en anslutning (0-RTT, i ungefÀr 75% av fallen kan data överföras omedelbart efter att anslutningsinstallationspaketet skickats) och sÀkerstÀlla minimala fördröjningar mellan begÀran och svar (RTT, Round Trip Time);
- AnvÀndning av ett annat sekvensnummer vid omöverföring av paket, vilket undviker tvetydighet vid identifiering av mottagna paket och eliminerar tidsavbrott;
- Paketsförlust pÄverkar endast leveransen av den relaterade strömmen och stoppar inte dataöverföringen i parallella strömmar som sÀnds via den aktuella anslutningen;
- Felkorrekteringsmedel som minimerar förseningar pÄ grund av Äteröverföring av förlorade paket. AnvÀndning av speciella felkorrekteringskoder pÄ paketnivÄ för att minska situationer dÀr Äteröverföring av förlorad data krÀvs.
- GrÀnserna för kryptografiska block överensstÀmmer med grÀnserna för QUIC-paketen, vilket minskar pÄverkan av paketförluster pÄ avkodningen av innehÄllet i efterföljande paket;
- Ingen köblockering som uppstÄr i TCP;
- Stöd för anslutningsidentifierare som gör att tiden för att Äteransluta till mobila kunder minskar;
- Möjlighet att ansluta avancerade mekanismer för överbelastningskontroll;
- AnvÀndning av tekniker för kapacitetsprognoser i varje riktning för att sÀkerstÀlla optimal paketöverföringstakt och förhindra att man hamnar i en överbelastad status dÀr paketförluster observeras;
- En mÀrkbar ökning av prestanda och kapacitet jÀmfört med TCP. För videotjÀnster sÄsom YouTube har anvÀndningen av QUIC visat en minskning av ombuffring under videovisning med 30%.
KĂ€lla: opennet.ru
