Očekává se, že Firefox spustí podporu HTTP/3 do konce května.

Mozilla oznámila svůj záměr zahájit postupné zavádění HTTP/3 a QUIC s vydáním Firefoxu 88, naplánovaným na 19. dubna (původně se očekávalo vydání 20. dubna, ale soudě podle plánu bude o jeden den posunuto zpět). Podpora HTTP/3 bude zpočátku povolena pouze pro malé procento uživatelů a s výjimkou neočekávaných problémů bude do konce května zpřístupněna všem. V nočních sestaveních a beta verzích byl HTTP/3 standardně povolen na konci března.

Připomeňme, že implementace HTTP/3 ve Firefoxu je založena na projektu neqo vyvinutém Mozillou, který poskytuje klientskou a serverovou implementaci pro protokol QUIC. Kód součásti pro podporu HTTP/3 a QUIC je napsán v Rustu. Chcete-li ovládat, zda je povolen HTTP/3, about:config poskytuje možnost „network.http.http3.enabled“. Z klientského softwaru byla do Chrome a curl přidána také experimentální podpora HTTP/3 a pro servery je k dispozici v nginx a také ve formě modulu nginx a testovacího serveru od Cloudflare. Na straně webu je podpora HTTP/3 již poskytována na serverech Google a Facebook.

Protokol HTTP/3 je stále ve fázi návrhu specifikace a ještě nebyl plně standardizován IETF. HTTP/3 vyžaduje podporu klienta a serveru pro stejnou verzi konceptu QUIC standardu a HTTP/3, která je uvedena v záhlaví Alt-Svc (Firefox podporuje koncepty specifikací 27 až 32).

HTTP/3 definuje použití protokolu QUIC jako přenos pro HTTP/2. Protokol QUIC (Quick UDP Internet Connections) vyvíjí Google od roku 2013 jako alternativu ke kombinaci TCP+TLS pro web, řeší problémy s dlouhými časy nastavování a vyjednávání pro připojení v TCP a odstraňuje zpoždění při ztrátě paketů během dat. převod. QUIC je rozšíření protokolu UDP, které podporuje multiplexování více připojení a poskytuje metody šifrování ekvivalentní TLS/SSL. Během vývoje standardu IETF byly provedeny změny protokolu, které vedly ke vzniku dvou paralelních větví, jedné pro HTTP/3 a druhé podporované Googlem (Chrome podporuje obě možnosti).

Klíčové vlastnosti QUIC:

  • Vysoká bezpečnost podobná TLS (v podstatě QUIC poskytuje možnost používat TLS přes UDP);
  • Řízení integrity toku, zabraňující ztrátě paketů;
  • Schopnost okamžitě navázat spojení (0-RTT, v přibližně 75 % případů lze data přenést ihned po odeslání paketu nastavení spojení) a poskytnout minimální prodlevy mezi odesláním požadavku a přijetím odpovědi (RTT, Round Trip Time);
  • Použití jiného sekvenčního čísla při opakovaném přenosu paketu, což zabrání nejednoznačnosti při identifikaci přijatých paketů a zbaví se časových limitů;
  • Ztráta paketu ovlivní pouze doručení s ním spojeného proudu a nezastaví doručování dat v paralelních proudech přenášených prostřednictvím aktuálního připojení;
  • Funkce opravy chyb, které minimalizují zpoždění kvůli opakovanému přenosu ztracených paketů. Použití speciálních kódů pro opravu chyb na úrovni paketů ke snížení situací vyžadujících opakovaný přenos ztracených paketových dat.
  • Hranice kryptografických bloků jsou zarovnány s hranicemi paketů QUIC, což snižuje dopad ztrát paketů na dekódování obsahu následujících paketů;
  • Žádné problémy s blokováním fronty TCP;
  • Podpora pro identifikátor připojení, který zkracuje dobu potřebnou k vytvoření opětovného připojení pro mobilní klienty;
  • Možnost připojení pokročilých mechanismů řízení přetížení připojení;
  • Využívá techniky předpovědi propustnosti v jednotlivých směrech, aby zajistil, že pakety budou odesílány optimální rychlostí, čímž se zabrání jejich zahlcení a ztrátě paketů;
  • Výrazné zvýšení výkonu a propustnosti ve srovnání s TCP. U video služeb, jako je YouTube, bylo prokázáno, že QUIC snižuje operace opětovného vyrovnávací paměti při sledování videí o 30 %.
  • Zdroj: opennet.ru

Přidat komentář