Protokol HTTP/3.0 získal status navrhovaného standardu

Komitét IETF (Internet Engineering Task Force), zabývající se rozvojem protokolů a architektury internetu, dokončil tvorbu RFC pro protokol HTTP/3.0 a zveřejnil s ním spojené specifikace pod identifikátory RFC 9114 (protokol) a RFC 9204 (technologie komprese hlaviček QPACK pro HTTP/3). Specifikace HTTP/3.0 získala status „Návrhového standardu“, poté začne práce na udělení RFC statusu návrhu standardu (Draft Standard), což v podstatě znamená plnou stabilizaci protokolu a zohlednění všech vznesených připomínek. Současně byly publikovány aktualizované verze specifikací pro protokoly HTTP/1.1 (RFC 9112) a HTTP/2.0 (RFC 9113), stejně jako dokumenty definující sémantiku HTTP požadavků (RFC 9110) a HTTP hlavičky pro řízení mezipaměti (RFC 9111).

Protokol HTTP/3 definuje použití protokolu QUIC (Quick UDP Internet Connections) jako transportu pro HTTP/2. QUIC představuje nadstavbu nad protokolem UDP, která podporuje multiplexování několika spojení a zajišťuje metody šifrování, ekvivalentní TLS/SSL. Protokol byl vytvořen v roce 2013 společností Google jako alternativa k propojení TCP+TLS pro web, řešící problémy s velkým časem pro nastavení a sjednávání spojení v TCP a odstraňující zpoždění při ztrátě paketů během přenosu dat.

Protokol HTTP/3.0 získal status navrhovaného standardu

V současnosti je podpora QUIC a HTTP/3.0 již implementována ve všech populárních webových prohlížečích (v Chrome, Firefox a Edge je podpora HTTP/3 aktivována ve výchozím nastavení, zatímco v Safari vyžaduje aktivaci nastavení „Advanced > Experimental Features > HTTP/3“). Na serverové straně jsou implementace HTTP/3 dostupné pro nginx (v samostatné větvi a jako samostatný modul), Caddy, IIS a LiteSpeed. Podporu HTTP/3 také zajišťuje síť pro doručování obsahu Cloudflare.

Hlavní vlastnosti QUIC:

  • Vysoká bezpečnost, srovnatelná s TLS (v podstatě QUIC poskytuje možnost použití TLS nad UDP);
  • Kontrola integrity toku, která zabraňuje ztrátě paketů;
  • Možnost okamžitého navázání připojení (0-RTT, v přibližně 75 % případů lze data odesílat ihned po odeslání balíčku pro navázání připojení) a zajištění minimálních zpoždění mezi odesláním žádosti a příjmem odpovědi (RTT, Round Trip Time);
    Protokol HTTP/3.0 získal status navrhovaného standardu
  • Použití při opětovném přenosu paketu jiného pořadového čísla, což umožňuje vyhnout se nejasnostem při určení přijatých paketů a zbavit se časových limitů;
  • Ztráta paketu ovlivňuje doručení pouze souvisejícího toku a nezastavuje doručení dat v paralelně přenášených tocích přes aktuální spojení;
  • Nástroje pro opravu chyb, které minimalizují zpoždění způsobené opětovným přenosem ztracených paketů. Využití speciálních chybových kódů na úrovni paketů pro snížení situací, které vyžadují opětovný přenos dat ztraceného paketu.
  • Hranice kryptografických bloků jsou sladěny s hranicemi paketů QUIC, což snižuje dopad ztráty paketů na dekódování obsahu následujících paketů;
  • Žádné problémy s blokováním front TCP;
  • Podpora identifikátoru spojení, která snižuje čas potřebný k opětovnému navázání spojení pro mobilní klienty;
  • Možnost připojení rozšířených mechanismů řízení přetížení spojení;
  • Použití techniky predikce šířky pásma v každém směru pro zajištění optimální intenzity odesílání paketů, což zabraňuje přechodu do stavu přetížení, ve kterém dochází ke ztrátě paketů;
  • Výrazný nárůst výkonu a propustnosti ve srovnání s TCP. Pro video služby, jako je YouTube, použití QUIC ukázalo snížení operací opětovného buffrování při sledování videa o 30%.

Změny ve specifikaci HTTP/1.1 zahrnují zákaz samostatného použití znaku návratu karu (CR) mimo tělo s obsahem, tj. v prvcích protokolu může být symbol CR použit pouze spolu se symbolem nového řádku (CRLF). Algoritmus pro zpracování chunked požadavků byl vylepšen pro zjednodušení separace připojených polí a sekce s hlavičkami. Byly přidány doporučení pro zpracování nejednoznačného obsahu, aby se zablokovaly útoky třídy „HTTP Request Smuggling“, které umožňují vnikání do obsahu požadavků jiných uživatelů v toku mezi frontendem a backendem.

Ve specifikaci aktualizace HTTP/2.0 je jasně stanovena podpora TLS 1.3. Byla převedena do kategorie zastaralých schémata stanovení priorit a související pole v hlavičkách. Mechanismus pro obnovu spojení s HTTP/1.1, který se neujal, byl prohlášen za zastaralý. Byly zjednodušeny požadavky na kontrolu názvů polí a hodnot. Některé dříve rezervované typy rámců a parametry byly navrženy k použití. Přesněji byly určené zakázané hlavičky související se spojením.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster