Što je HTTP / 2 i što radi?



Isprobajte Naš Instrument Za Uklanjanje Problema

U posljednjih 20 godina World Wide Web dramatično se razvio. Sve poboljšane web tehnologije zahtijevaju bolja i brža rješenja i protokole za komunikaciju i prijenos datoteka od trenutnih (HTTP) koji dosežu svoje tehnološke granice.





Što je HTTP / 2?

HTTP / 2 je najnovija verzija Hypertext-a Transport Protocol (HTTP) - temeljni protokol koji koristi World Wide Web . Prvotno je odobren u veljači 2015. To je gotovo 20 godina nakon izvornog HTTP-a. HTTP / 2 smanjuje vrijeme učitavanja i donosi velika poboljšanja u komunikaciji između poslužitelja i preglednika. Većina preglednika već je dodala HTTP / 2 i to nije promijenilo mnoge stvari iz perspektive korisnika. To je glavni razlog zašto mnogi od nas to još nisu pročitali ili čuli.



Što HTTP / 2 radi?

Kao nasljednik HTTP-a, HTTP / 2 usredotočen je na poboljšanje svih karakteristika HTTP-a . Kako bi se zadržala kompatibilnost sa starijim protokolom, on zadržava većinu funkcionalnosti HTTP-a. Međutim, uvodi drastična poboljšanja.

I HTTP ili HTTP / 2 definiraju:

  • Koje radnje web preglednici i poslužitelji trebaju poduzeti kao odgovor na različite naredbe.
  • Kako se svaki djelić informacija prenosi s jednog na drugo računalo putem weba.
  • Kako se poruke stvaraju, formatiraju i prenose.

Drugim riječima, HTTP i HTTP / 2 postavljaju standarde za dostavu web sadržaja na vaše računalo, s tom razlikom što HTTP / 2 čini sve stvari bržim od svog prethodnika. Ovdje možete detaljno vidjeti što HTTP / 2 radi.



Multipleksirani tokovi

Dvosmjerne serije okvira tekstualnog formata poslane putem HTTP / 2 protokola između jednog poslužitelja i klijenta nazivaju se 'tokovi'. HTTP može istodobno prenositi samo jedan od tih 'tokova'. Nakon slanja toka postoji vremensko kašnjenje između sljedećeg prijenosa toka.

HTTP / 2 uspostavlja novi binarni okvir za uokvirivanje koji izravno rješava problem s prijenosom 'strujanja' jedan po jedan. Omogućuje klijentima i poslužiteljima da rastavljaju HTTP / 2 korisni teret u malene, neovisne i lako upravljane isprepletene sekvence okvira. Sve se ove informacije ponovno sastavljaju kad se prime na drugi kraj. Ovaj protokol omogućuje razmjenu više, istovremeno otvorenih i neovisnih dvosmjernih sekvenci bez kašnjenja između uzastopnih tokova.

Prednosti:

  • Paralelni multipleksirani zahtjevi i odgovori ne blokiraju jedni druge.
  • Jedna TCP veza može osigurati učinkovito korištenje mrežnih resursa čak i kada odašilje višestruke tokove podataka.
  • Brže web performanse, smanjena latencija i bolji rezultati tražilice.
  • Smanjen CapEx i OpEx u pokretanju mrežnih i IT resursa.

HTTP / 2 poslužitelj Push i Cache Push

Ovaj je sposobnost koja omogućuje poslužiteljima da klijentima šalju dodatne podatke iz predmemorije . Te se informacije ne traže, ali se predviđaju za buduće zahtjeve. Ako klijent zatraži jedan resurs A i ako se zna da se drugi resurs B odnosi na traženi, poslužitelj može gurnuti B zajedno s A umjesto da čeka drugi zahtjev klijenta. Tada klijent sprema gurnuti resurs B u predmemoriju za buduću upotrebu. Ova značajka štedi cijeli postupak povratnog putovanja zahtjev-odgovor i smanjuje kašnjenje mreže. Google je izvorno predstavio Server Push u protokolu SPDY.

Još jedno poboljšanje HTTP / 2 je Cache Push. To proaktivno ažurira ili onesposobljava klijentovu predmemoriju. To omogućuje poslužiteljima mogućnost prepoznavanja mogućih potisnih resursa koje klijenti zapravo ne žele.

Prednosti:

  • Klijenti mogu odbiti potisnute resurse kako bi održali učinkovito spremište predmemoriranih resursa (ili čak potpuno onemogućili Push Server).
  • Klijenti mogu istovremeno istovremeno multipleksirati broj potisnutih tokova.
  • Poslužitelji mogu dati prednost potisnutim resursima. To je ključ razlike u izvedbi između HTTP / 2 i HTTP-a.
  • Poslužitelji mogu multipleksirati potisnute resurse zajedno s traženim informacijama klijenta unutar iste TCP veze.
  • Klijenti mogu koristiti predmemorirane resurse na različitim stranicama.
  • Klijenti spremaju potisnute resurse u predmemoriju.

Binarni protokoli

HTTP / 2 je značajno poboljšao mogućnosti prilikom pretvaranja tekstualnog protokola u binarni protokol . Dok se HTTP koristio za obradu tekstualnih naredbi za izvršavanje ciklusa zahtjev-odgovor, HTTP / 2 oslanja se na binarne naredbe. To skraćuje vrijeme (na 1s i 0s) za izvršavanje istih zadataka.

Preglednici s podrškom za HTTP / 2 pretvorit će tekstualne naredbe u binarni kôd prije prijenosa putem mreže. Međutim, binarni okvir za uokvirivanje nije kompatibilan s HTTP poslužiteljima i klijentima.

Prednosti:

  • Sprečavanje sigurnosnih problema povezanih s tekstualnom prirodom HTTP-a (npr. Napadi razdvajanja odgovora).
  • Omogućuje HTTP / 2 mogućnosti poput kompresije, određivanja prioriteta, multipleksiranja, učinkovito rukovanje TLS-om i kontrolu protoka.
  • Kompaktni prikaz naredbi omogućava lakšu implementaciju i obradu.
  • Robusna i učinkovita obrada podataka između klijenata i poslužitelja.
  • Poboljšana propusnost i smanjena mrežna latencija.
  • Manje šanse za pogreške u usporedbi s HTTP-om.
  • Visoko učinkovito korištenje mrežnih resursa.
  • Niska režija pri raščlanjivanju podataka.
  • Lakši trag mreže.

Određivanje prioriteta strujanja

HTTP / 2 omogućuje klijentima da daju preferencije određenim tokovima podataka. Poslužitelji nisu dužni slijediti upute ovih klijenata, ali ovaj mehanizam omogućuje poslužiteljima da optimiziraju raspodjelu mrežnih resursa na temelju korisničkih zahtjeva .

Prioritizacija streama funkcionira s težinom i ovisnostima dodijeljenim svakom streamu. Unatoč činjenici da su svi tokovi međusobno ovisni jedni o drugima, osim što imaju težinu dodijeljenu između 1 i 256. Mehanizmi prioritizacije toka i dalje su tema rasprave. Međutim, kada se prioritet streama kombinira s HTTP / 2 sposobnošću obrade više tokova podataka u jednoj TCP vezi, to može dovesti do istodobnog dolaska zahtjeva poslužitelja s različitim prioritetom.

Prednosti:

  • Smanjeni negativni učinci zabrinutosti zbog kašnjenja mreže.
  • Poboljšano korisničko iskustvo i brzina učitavanja stranice.
  • Optimizacija podatkovne komunikacije između poslužitelja i klijenata.
  • Vrlo učinkovito korištenje mrežnih resursa.
  • Skraćeno vrijeme isporuke za primarne zahtjeve za sadržajem.

Državna kompresija zaglavlja

Kada korisnici pregledavaju web stranice s bogatim medijima, koristeći HTTP, klijenti guraju više gotovo identičnih okvira zaglavlja. To je slučaj jer svaki zahtjev klijenta mora sadržavati onoliko podataka koliko poslužitelj zahtijeva za izvođenje tražene operacije. Ovaj postupak dovodi do kašnjenja i nepotrebne potrošnje resursa.

HTTP / 2 uključuje mogućnost komprimiranja velikog broja suvišnih okvira zaglavlja. Oslanja se na HPACK specifikaciju kao siguran i jednostavan pristup kompresiji zaglavlja . Klijenti i poslužitelji održavaju popis zaglavlja korištenih u prethodnim zahtjevima klijent-poslužitelj. Ovo se izravno rješava problema sa suvišnim okvirima zaglavlja.

Prednosti:

  • Kodira često korištena zaglavlja i velika zaglavlja. To eliminira potrebu za slanjem cijelih okvira zaglavlja. Pojedinačna veličina svake struje značajno se smanjuje.
  • Sprječavanje sigurnosnih napada kao što je CRIME istraživanje tokova podataka sa komprimiranim zaglavljima.
  • Učinkovito korištenje mehanizama multipleksiranja.
  • Učinkovito određivanje prioriteta za tok.
  • Smanjena potrošnja resursa.

Prednosti HTTP / 2 u stvarnom svijetu

HTTP / 2 usredotočen je na maksimaliziranje potencijala tehnologije , kako bi se udovoljilo budućim potrebama i očekivanjima. Evo stvarnih blagodati korištenja HTTP / 2.

Web performanse i web performanse na mobilnim uređajima - HTTP / 2 ima mogućnosti slanja i primanja više podataka u jednom komunikacijskom ciklusu klijent-poslužitelj. Dobro djeluje na smanjenju kašnjenja u pristupu internetskim uslugama na mobilnim podatkovnim mrežama i mrežama s ograničenom propusnošću po korisniku.

Jeftiniji brzi internet - HTTP / 2 povećava učinkovitost komunikacije podataka. To omogućuje internetskim pružateljima usluge da smanje sveukupne troškove, a istovremeno održavaju standarde brze Interneta.

Sigurnost - HTTP / 2 nije ranjiv na prijetnje koje ciljaju tekstualne protokole aplikacijskog sloja. Nadalje, koristi pristup 'Sigurnost nejasnoćom' kako bi zaštitio prijenos osjetljivih podataka između klijenata i poslužitelja.

Ekspanzivni doseg - HTTP / 2 prednosti smanjuju internetske ishode za pružatelje usluga. To će dovesti do šireg internetskog pokrivanja na svjetskoj razini.

Medijsko bogato web iskustvo - Tehnološke značajke i prednosti koje HTTP / 2 unosi u World Wide Web pružaju infrastrukturu sposobnu za isporuku sadržaja bogatog medijima bržim brzinama učitavanja stranice.

Zamotati

HTTP / 2 je relativno novi protokol, ali podrška za njega neprestano raste. Danas većina internetskih preglednika podržava HTTP / 2 (Microsoft Edge, Google Chrome, Safari, Firefox, Chrome za Android). Mnogi web poslužitelji uključuju HTTP / 2 izvornu podršku (Apache HTTP poslužitelj, Tomcat, NGINX). Bez sumnje, HTTP / 2 je WWW protokol budućnosti.

5 minuta čitanja