Vad är HTTP / 2 och vad gör det?



Prova Vårt Instrument För Att Eliminera Problem

Under de senaste 20 åren har World Wide Web utvecklats dramatiskt. Alla förbättrade webbtekniker kräver bättre och snabbare lösningar och protokoll för kommunikation och filöverföring än de nuvarande (HTTP) som når sina tekniska gränser.





Vad är HTTP / 2?

HTTP / 2 är den senaste versionen av Hypertext Transportprotokoll (HTTP) - det underliggande protokollet som används av Internet . Den godkändes ursprungligen i februari 2015. Det är nästan 20 år efter den ursprungliga HTTP. HTTP / 2 minskar laddningstiderna och ger stora förbättringar i kommunikationen mellan servrar och webbläsare. Majoriteten av webbläsarna har redan lagt till HTTP / 2, och det förändrade inte många saker ur användarnas perspektiv. Det är den främsta anledningen till att många av oss inte har läst eller hört talas om det ännu.



Vad gör HTTP / 2?

Som en efterföljare till HTTP, HTTP / 2 fokuserar på att förbättra alla HTTP-egenskaper . För att upprätthålla bakåtkompatibilitet med det äldre protokollet behåller det mesta av HTTP-funktionaliteten. Det introducerar dock några drastiska förbättringar.

Både HTTP eller HTTP / 2 definierar:

  • Vilka åtgärder webbläsare och servrar behöver vidta som svar på olika kommandon.
  • Hur varje bit information överförs från en till en annan dator via webben.
  • Hur meddelanden skapas, formateras och överförs.

Med andra ord sätter HTTP och HTTP / 2 standarderna för hur webbinnehåll levereras till din dator, med skillnaden att HTTP / 2 gör allting snabbare än sin föregångare. Här kan du se vad HTTP / 2 gör i detaljer.



Multiplexa strömmar

Dubbelriktade serier av textformatramar som skickas via HTTP / 2-protokollet mellan en server och klient kallas 'strömmar'. HTTP kan bara sända en av dessa 'strömmar' åt gången. Efter att strömmen har skickats sker en tidsfördröjning mellan nästa strömöverföring.

HTTP / 2 skapar ett nytt binärt inramningsskikt som direkt löser problemet med att sända ”strömmar” en efter en. Det gör att klienter och servrar kan sönderdela HTTP / 2-nyttolasten i små, oberoende och lätt hanterbara sammanflätade ramsekvenser. All denna information sätts ihop igen när den tas emot i andra änden. Detta protokoll möjliggör utbyte av flera, samtidigt öppna och oberoende dubbelriktade sekvenser utan latens mellan på varandra följande strömmar.

Fördelar:

  • De parallella multiplexerade förfrågningarna och svaren blockerar inte varandra.
  • En enda TCP-anslutning kan säkerställa effektivt nätverksresursutnyttjande även vid överföring av flera dataströmmar.
  • Snabbare webbprestanda, minskad latens och bättre sökmotorresultat.
  • Minskat CapEx och OpEx när det gäller nätverks- och IT-resurser.

HTTP / 2 Server Push och Cache Push

Detta är en funktion som gör att servrar kan skicka ytterligare cachbar information till klienter . Den informationen begärs inte men förväntas för framtida förfrågningar. Om klienten begär en resurs A och det är känt att en annan resurs B refereras till den begärda kan servern trycka på B tillsammans med A istället för att vänta på en annan klientförfrågan. Sedan sparar klienten den tryckta resursen B i cachen för framtida bruk. Den här funktionen sparar en hel tur och retur-process och minskar nätverkets latens. Google introducerade ursprungligen Server Push i SPDY-protokollet.

En annan förbättring av HTTP / 2 är Cache Push. Detta uppdaterar eller ogiltigförklarar klientens cache proaktivt. Detta ger servrarna möjlighet att identifiera möjliga resurser som kan drivas som klienter faktiskt inte vill ha.

Fördelar:

  • Kunder kan avvisa push-resurser för att upprätthålla en effektiv förvaring av cachade resurser (eller till och med inaktivera Server Push helt).
  • Kunder kan begränsa antalet pushade strömmar som multiplexeras samtidigt.
  • Servrar kan prioritera drivna resurser. Detta är en nyckel i prestandaskillnaden mellan HTTP / 2 och HTTP.
  • Servrar kan multiplexera resurser tillsammans med klientens begärda information inom samma TCP-anslutning.
  • Kunder kan använda cachade resurser på olika sidor.
  • Kunder sparar pressade resurser i cacheminnet.

Binära protokoll

HTTP / 2 har avsevärt förbättrade funktioner när textprotokoll omvandlas till ett binärt protokoll . Medan HTTP används för att bearbeta textkommandon för att utföra begäran-svar-cykler, förlitar sig HTTP / 2 på binära kommandon. Det förkortar tiden (till 1s och 0s) för att utföra samma uppgifter.

Webbläsare med HTTP / 2-stöd konverterar textkommandon till binär kod innan de sänds över nätverket. Det binära inramningsskiktet är dock inte bakåtkompatibelt med HTTP-servrar och klienter.

Fördelar:

  • Förebyggande av säkerhetsproblem som är förknippade med HTTP: s textiska karaktär (t.ex. svarssplittande attacker).
  • Aktiverar HTTP / 2-funktioner som komprimering, prioritering, multiplexering, effektiv hantering av TLS och flödeskontroll.
  • Kompakt representation av kommandon som möjliggör enklare implementering och bearbetning.
  • Robust och effektiv databehandling mellan klienter och servrar.
  • Förbättrad genomströmning och minskad nätverkslatens.
  • Färre chanser för fel jämfört med HTTP.
  • Mycket effektivt nätverksresursutnyttjande.
  • Låg overhead i analysdata.
  • Lättare nätverksavtryck.

Streamprioritering

HTTP / 2 tillåter klienter att tillhandahålla inställningar för vissa dataströmmar. Servrarna följer inte dessa klienters instruktioner, men den här mekanismen gör det möjligt för servrar att optimera nätverksresurstilldelningen baserat på användarkraven .

Streamprioritering fungerar med vikt och beroende beroende på varje ström. Trots det faktum att alla strömmar i sig är beroende av varandra förutom att de har en vikt tilldelad mellan 1 och 256. Strömprioriteringsmekanismer är fortfarande ett diskussionsämne. Men när strömprioritering kombineras med HTTP / 2-förmågan att behandla flera dataströmmar i en enda TCP-anslutning, kan det leda till en samtidig ankomst av olika prioritetsserverförfrågningar.

Fördelar:

  • Minskade negativa effekter av nätverkslatensproblem.
  • Förbättrad användarupplevelse och sidhämtningshastighet.
  • Optimering i datakommunikation mellan servrar och klienter.
  • Mycket effektivt nätverksresursutnyttjande.
  • Minskad leveranstid för primära innehållsförfrågningar.

Stateful Header Compression

När användare surfar på medierikt innehållswebbplatser, med hjälp av HTTP, skjuter klienter flera nästan identiska rubrikramar. Detta är fallet eftersom varje klientförfrågan måste innehålla så mycket information som servern kräver för att utföra den begärda åtgärden. Denna process leder till latens och onödig resursförbrukning.

HTTP / 2 inkluderar möjligheten att komprimera ett stort antal redundanta rubrikramar. Det förlitar sig på HPACK-specifikationen som ett säkert och enkelt tillvägagångssätt för huvudkomprimering . Kunder och servrar håller en lista med rubriker som använts i tidigare klient-serverförfrågningar. Detta löser problem direkt med redundanta rubrikramar.

Fördelar:

  • Kodar vanliga rubriker och stora rubriker. Det eliminerar behovet av att skicka hela rubrikramar. Den individuella storleken för varje ström krymper avsevärt.
  • Förhindra säkerhetsattacker som CRIME som utforskar dataströmmar med komprimerade rubriker.
  • Effektivt utnyttjande av multiplexeringsmekanismer.
  • Effektiv strömprioritering.
  • Minskad resurskostnad.

Verkliga fördelar med HTTP / 2

HTTP / 2 är inriktad på att maximera teknikens potential , för att möta framtida behov och förväntningar. Här är de verkliga fördelarna med att använda HTTP / 2.

Web Performace och Mobile Web Performance - HTTP / 2 har förmåga att skicka och ta emot mer data i en klient-server-kommunikationscykel. Det fungerar bra för att minska latensen vid åtkomst till internettjänster i mobila datanätverk och nätverk med begränsad bandbredd per användare.

Billigare höghastighetsinternet - HTTP / 2 ökar effektiviteten i datakommunikation. Det gör att internetleverantörer kan krympa de totala utgifterna samtidigt som standarderna för höghastighetsinternet bibehålls.

säkerhet - HTTP / 2 är inte sårbart för de hot som riktar sig mot textbaserade applikationslagerprotokoll. Dessutom använder den 'Security by Obscurity' -metoden för att skydda känslig dataöverföring mellan klienter och servrar.

Expansiv räckvidd - HTTP / 2-fördelar minskar internetresultaten för leverantörer. Det kommer att leda till bredare täckning på internet på global nivå.

Medierik webbupplevelse - Teknologifunktionerna och fördelarna som HTTP / 2 ger med sig på Internet ger en infrastruktur som kan leverera mediarikt innehåll med högre sidhastighetshastigheter.

Sammanfatta

HTTP / 2 är relativt nytt protokoll, men stödet för det växer ständigt. Numera stöder de flesta webbläsare HTTP / 2 (Microsoft Edge, Google Chrome, Safari, Firefox, Chrome för Android). Många webbservrar inkluderar HTTP / 2 native support (Apache HTTP Server, Tomcat, NGINX). Utan tvekan är HTTP / 2 framtidens WWW-protokoll.

5 minuter läst