Co je HTTP / 2 a co dělá?



Vyzkoušejte Náš Nástroj Pro Odstranění Problémů

Za posledních 20 let se World Wide Web dramaticky vyvinula. Všechny vylepšené webové technologie vyžadují pro komunikaci a přenos souborů lepší a rychlejší řešení a protokoly než ty současné (HTTP), které dosahují svých technologických limitů.





Co je HTTP / 2?

HTTP / 2 je nejnovější verze Hypertextu Transport Protocol (HTTP) - základní protokol používaný webovou sítí . Původně byl schválen v únoru 2015. To je téměř 20 let po původním protokolu HTTP. HTTP / 2 zkracuje dobu načítání a přináší obrovské zlepšení v komunikaci mezi servery a prohlížeči. Většina prohlížečů již přidala protokol HTTP / 2 a z pohledu uživatelů to mnoho nezměnilo. To je hlavní důvod, proč mnozí z nás o tom dosud nečetli ani neslyšeli.



Co dělá HTTP / 2?

Jako nástupce protokolu HTTP HTTP / 2 se zaměřuje na zlepšování všech vlastností protokolu HTTP . Z důvodu zachování zpětné kompatibility se starším protokolem zachovává většinu funkcí protokolu HTTP. Zavádí však některá drastická vylepšení.

Oba HTTP nebo HTTP / 2 definují:

  • Které akce musí webové prohlížeče a servery provádět v reakci na různé příkazy.
  • Jak se každý bit informací přenáší z jednoho do druhého počítače prostřednictvím webu.
  • Jak jsou zprávy vytvářeny, formátovány a přenášeny.

Jinými slovy, HTTP a HTTP / 2 stanoví standardy pro doručování webového obsahu do vašeho počítače, s tím rozdílem, že HTTP / 2 dělá všechny věci rychlejšími než jeho předchůdce. Zde můžete vidět, co dělá HTTP / 2 podrobně.



Multiplexované toky

Obousměrná řada rámců textového formátu odesílaných prostřednictvím protokolu HTTP / 2 mezi jedním serverem a klientem se nazývá „streamy“. HTTP je schopen přenášet najednou pouze jeden z těchto „streamů“. Po odeslání streamu je mezi dalším přenosem streamu časové zpoždění.

HTTP / 2 vytváří novou binární rámcovou vrstvu, která přímo řeší problém s přenosem „streamů“ jeden po druhém. Umožňuje klientům a serverům rozpadnout užitečné zatížení HTTP / 2 na malé, nezávislé a snadno spravovatelné prokládané rámcové sekvence. Všechny tyto informace jsou znovu sestaveny, jakmile jsou přijaty na druhém konci. Tento protokol umožňuje výměnu více, současně otevřených a nezávislých obousměrných sekvencí bez latence mezi po sobě následujícími proudy.

Výhody:

  • Paralelní multiplexované požadavky a odpovědi se navzájem neblokují.
  • Jediné připojení TCP může zajistit efektivní využití síťových zdrojů i při přenosu více datových proudů.
  • Rychlejší výkon webu, snížená latence a lepší výsledky vyhledávače.
  • Snížení CapEx a OpEx v provozu síťových a IT zdrojů.

HTTP / 2 Server Push a Cache Push

Tento je funkce, která umožňuje serverům odesílat klientům další informace uložené v mezipaměti . Tyto informace nejsou požadovány, ale jsou očekávány pro budoucí žádosti. Pokud klient požaduje jeden prostředek A a je známo, že na jiný prostředek B se odkazuje s požadovaným, může server namísto čekání na další požadavek klienta odeslat B spolu s A. Potom klient uloží přenesený prostředek B do mezipaměti pro budoucí použití. Tato funkce šetří celý proces zpětné vazby na žádost a snižuje latenci sítě. Google původně představil Server Push v protokolu SPDY.

Dalším vylepšením protokolu HTTP / 2 je Cache Push. To proaktivně aktualizuje nebo zneplatňuje mezipaměť klienta. To dává serverům schopnost identifikovat možné zdroje, které klienti skutečně chtějí.

Výhody:

  • Klienti mohou odmítnout tlačené prostředky, aby udrželi efektivní úložiště prostředků v mezipaměti (nebo dokonce úplně zakázat Server Push).
  • Klienti mohou současně omezit počet odesílaných streamů multiplexovaných.
  • Servery mohou upřednostňovat tlačené zdroje. Toto je klíč v rozdílu výkonu mezi HTTP / 2 a HTTP.
  • Servery mohou multiplexovat tlačené zdroje společně s požadovanými informacemi klienta v rámci stejného připojení TCP.
  • Klienti mohou používat prostředky v mezipaměti na různých stránkách.
  • Klienti ukládají tlačené prostředky do mezipaměti.

Binární protokoly

HTTP / 2 má výrazně vylepšené funkce při transformaci textového protokolu na binární . Zatímco HTTP se používá ke zpracování textových příkazů k provádění cyklů požadavků a odpovědí, HTTP / 2 se spoléhá na binární příkazy. To zkracuje čas (na 1 s a 0 s) pro provádění stejných úkolů.

Prohlížeče s podporou HTTP / 2 převádějí textové příkazy na binární kód před přenosem po síti. Binární rámcová vrstva však není zpětně kompatibilní se servery HTTP a klienty.

Výhody:

  • Předcházení bezpečnostním obavám spojeným s textovou povahou HTTP (např. Útoky dělení odpovědí).
  • Umožňuje funkce HTTP / 2, jako je komprese, stanovení priorit, multiplexování, efektivní zpracování TLS a řízení toku.
  • Kompaktní reprezentace příkazů umožňující snadnější implementaci a zpracování.
  • Robustní a efektivní zpracování dat mezi klienty a servery.
  • Vylepšená propustnost a snížená latence sítě.
  • Méně šancí na chyby ve srovnání s HTTP.
  • Vysoce efektivní využití síťových zdrojů.
  • Nízká režie při analýze dat.
  • Lehčí síťová stopa.

Prioritizace streamu

HTTP / 2 umožňuje klientům poskytovat předvolby konkrétním datovým proudům. Servery nejsou povinny dodržovat pokyny těchto klientů, ale tento mechanismus umožňuje serverům optimalizovat alokaci síťových prostředků na základě požadavků uživatelů .

Prioritizace streamu funguje s váhou a závislostmi přiřazenými každému streamu. Navzdory skutečnosti, že všechny proudy jsou ze své podstaty vzájemně závislé, s výjimkou, mají váhu přiřazenou mezi 1 a 256. Mechanismy prioritizace proudu jsou stále předmětem debat. Když je však Priorita proudu kombinována s možností protokolu HTTP / 2 zpracovat více datových proudů v jednom připojení TCP, může to vést k současnému příchodu požadavků serveru s jinou prioritou.

Výhody:

  • Snížení negativních účinků na obavy z latence sítě.
  • Vylepšená uživatelská zkušenost a rychlost načítání stránky.
  • Optimalizace datové komunikace mezi servery a klienty.
  • Vysoce efektivní využití síťových zdrojů.
  • Zkrácená doba dodání pro primární požadavky na obsah.

Stavová komprese záhlaví

Když uživatelé procházejí weby s multimediálním obsahem pomocí protokolu HTTP, klienti posílají několik téměř identických rámců záhlaví. Je tomu tak proto, že každý požadavek klienta musí obsahovat tolik informací, kolik server vyžaduje k provedení požadované operace. Tento proces vede k latenci a zbytečné spotřebě zdrojů.

HTTP / 2 zahrnuje schopnost komprimovat velké množství nadbytečných rámců záhlaví. Spoléhá se na specifikaci HPACK jako bezpečný a jednoduchý přístup ke kompresi záhlaví . Klienti a servery udržují seznam záhlaví použitých v předchozích požadavcích klient-server. To přímo řeší obavy pomocí nadbytečných rámců záhlaví.

Výhody:

  • Zakóduje běžně používané záhlaví a velké záhlaví. To eliminuje potřebu odesílání celých rámců záhlaví. Individuální velikost každého proudu se významně zmenšuje.
  • Předcházení bezpečnostním útokům, jako je CRIME, zkoumání datových proudů pomocí komprimovaných záhlaví.
  • Efektivní využití mechanismů multiplexování.
  • Efektivní stanovení priorit streamů.
  • Snížená režie prostředků.

Skutečné výhody protokolu HTTP / 2

HTTP / 2 se zaměřuje na maximalizaci potenciálu technologie , abychom splnili budoucí potřeby a očekávání. Zde jsou skutečné výhody používání protokolu HTTP / 2.

Výkon webu a výkon mobilního webu - HTTP / 2 má schopnost odesílat a přijímat více dat v jednom komunikačním cyklu klient-server. Funguje dobře na snížení latence v přístupu k internetovým službám v mobilních datových sítích a sítích s omezenou šířkou pásma na uživatele.

Levnější vysokorychlostní internet - HTTP / 2 zvyšuje efektivitu datové komunikace. To umožňuje poskytovatelům internetu snížit celkové výdaje při zachování standardů vysokorychlostního internetu.

Bezpečnostní - HTTP / 2 není zranitelný vůči hrozbám zaměřeným na textové protokoly aplikační vrstvy. Dále používá přístup „Zabezpečení pomocí nejasností“ k ochraně přenosu citlivých dat mezi klienty a servery.

Expanzivní dosah - Výhody protokolu HTTP / 2 snižují pro poskytovatele internetové výsledky. To povede k širšímu internetovému pokrytí na celosvětové úrovni.

Webové prostředí bohaté na média - Technologické funkce a výhody, které HTTP / 2 přináší do World Wide Web, poskytují infrastrukturu schopnou dodávat obsah bohatý na média při vyšších rychlostech načítání stránek.

Zabalit

HTTP / 2 je relativně nový protokol, ale jeho podpora neustále roste. V dnešní době většina internetových prohlížečů podporuje protokol HTTP / 2 (Microsoft Edge, Google Chrome, Safari, Firefox, Chrome pro Android). Mnoho webových serverů obsahuje nativní podporu HTTP / 2 (Apache HTTP Server, Tomcat, NGINX). Bezpochyby je HTTP / 2 WWW protokol budoucnosti.

5 minut čtení