Kaj je HTTP / 2 in kaj počne?



Preizkusite Naš Instrument Za Odpravo Težav

V zadnjih 20 letih se je svetovni splet dramatično razvil. Vse izboljšane spletne tehnologije zahtevajo boljše in hitrejše rešitve in protokole za komunikacijo in prenos datotek kot sedanje (HTTP), ki dosegajo svoje tehnološke meje.





Kaj je HTTP / 2?

HTTP / 2 je najnovejša različica hiperteksta Transport Protocol (HTTP) - osnovni protokol, ki ga uporablja svetovni splet . Prvotno je bil odobren februarja 2015. To je skoraj 20 let po prvotnem HTTP. HTTP / 2 zmanjšuje čas nalaganja in prinaša velike izboljšave v komunikaciji med strežniki in brskalniki. Večina brskalnikov je že dodala HTTP / 2, kar pa z vidika uporabnikov ni spremenilo veliko stvari. To je glavni razlog, zakaj mnogi od nas tega še nismo prebrali ali slišali.



Kaj počne HTTP / 2?

Kot naslednik HTTP, HTTP / 2 se osredotoča na izboljšanje vseh značilnosti HTTP . Da bi ohranili združljivost s starejšim protokolom, ohranja večino funkcionalnosti HTTP. Vendar pa uvaja nekaj drastičnih izboljšav.

Tako HTTP kot HTTP / 2 definirata:

  • Katera dejanja morajo spletni brskalniki in strežniki izvesti kot odgovor na različne ukaze.
  • Kako se vsak bit informacij prek spleta prenese iz enega v drug računalnik.
  • Kako se sporočila ustvarjajo, formatirajo in prenašajo.

Z drugimi besedami, HTTP in HTTP / 2 postavljata standarde za dostavo spletne vsebine v vaš računalnik, s to razliko, da HTTP / 2 pospešuje vse stvari hitreje kot predhodnik. Tu si lahko podrobno ogledate, kaj počne HTTP / 2.



Multipleksirani tokovi

Dvosmerne vrste okvirjev besedilnih formatov, poslanih prek protokola HTTP / 2 med enim strežnikom in odjemalcem, se imenujejo »tokovi«. HTTP lahko hkrati prenaša samo enega od teh 'tokov'. Po pošiljanju toka pride do zakasnitve med naslednjim prenosom toka.

HTTP / 2 vzpostavi novo plast binarnega kadriranja, ki neposredno reši problem s prenosom 'tokov' enega za drugim. Omogoča odjemalcem in strežnikom, da razgradijo tovor HTTP / 2 v majhna, neodvisna in enostavno obvladljiva zaporedja okvirjev. Vse te informacije se ponovno sestavijo, ko so prejete na drugem koncu. Ta protokol omogoča izmenjavo več, hkrati odprtih in neodvisnih dvosmernih zaporedij brez zakasnitve med zaporednimi tokovi.

Prednosti:

  • Vzporedne multipleksirane zahteve in odgovori se ne blokirajo.
  • Ena povezava TCP lahko zagotovi učinkovito izrabo omrežnih virov tudi pri prenosu več podatkovnih tokov.
  • Hitrejša spletna zmogljivost, zmanjšana zakasnitev in boljši rezultati iskalnikov.
  • Zmanjšani CapEx in OpEx pri izvajanju omrežnih in informacijskih virov.

Potiskanje strežnika HTTP / 2 in predpomnilnik

To je zmožnost, ki omogoča strežnikom, da strankam pošiljajo dodatne podatke, ki jih je mogoče predpomniti . Te informacije niso zahtevane, vendar so predvidene za prihodnje zahteve. Če odjemalec zahteva en vir A in je znano, da se na drug vir B sklicuje na zahtevani, lahko strežnik potisne B skupaj z A, namesto da bi čakal na drugo zahtevo odjemalca. Nato odjemalec shrani potisnjeni vir B v predpomnilnik za nadaljnjo uporabo. Ta funkcija prihrani celoten postopek povratnega povratnega obvestila z zahtevo in zmanjša zakasnitev omrežja. Google je prvotno predstavil Server Push v protokolu SPDY.

Druga izboljšava HTTP / 2 je Cache Push. To proaktivno posodobi ali razveljavi odjemalčev predpomnilnik. To strežnikom omogoča, da prepoznajo morebitne potisljive vire, ki jih stranke dejansko ne želijo.

Prednosti:

  • Stranke lahko zavrnejo potisnjene vire, da bi ohranile učinkovito skladišče predpomnjenih virov (ali celo popolnoma onemogoči potiskanje strežnika).
  • Naročniki lahko sočasno multipleksirajo število potisnjenih tokov.
  • Strežniki lahko dajo prednost potisnjenim virom. To je ključ do razlike v zmogljivosti med HTTP / 2 in HTTP.
  • Strežniki lahko multipleksirajo potisnjene vire skupaj z zahtevanimi informacijami stranke v isti povezavi TCP.
  • Stranke lahko uporabljajo predpomnjene vire na različnih straneh.
  • Stranke shranijo potisnjene vire v začasni pomnilnik.

Binarni protokoli

HTTP / 2 je bistveno izboljšal zmogljivosti pri pretvorbi besedilnega protokola v binarni protokol . Medtem ko je HTTP uporabljal za obdelavo besedilnih ukazov za izvajanje ciklov odziv-zahteva, se HTTP / 2 zanaša na binarne ukaze. To skrajša čas (na 1 in 0 s) za izvajanje istih nalog.

Brskalniki s podporo HTTP / 2 bodo besedilne ukaze pretvorili v binarno kodo, preden jo bodo poslali po omrežju. Vendar plast binarnega uokvirjanja ni združljiva s strežniki HTTP in odjemalci.

Prednosti:

  • Preprečevanje varnostnih težav, povezanih z besedilno naravo HTTP (npr. Napadi na razdeljevanje odzivov).
  • Omogoča funkcije HTTP / 2, kot so stiskanje, določanje prednosti, multipleksiranje, učinkovito ravnanje s TLS in nadzor pretoka.
  • Kompaktna predstavitev ukazov, ki omogoča lažje izvajanje in obdelavo.
  • Robustna in učinkovita obdelava podatkov med odjemalci in strežniki.
  • Izboljšana prepustnost in manjša zakasnitev omrežja.
  • Manj možnosti za napake v primerjavi s HTTP.
  • Zelo učinkovito izkoriščanje omrežnih virov.
  • Nizka režija pri razčlenjevanju podatkov.
  • Lažji odtis omrežja.

Prednostno določanje toka

HTTP / 2 strankam omogoča, da določijo nastavitve za določene tokove podatkov. Strežniki niso zavezani slediti navodilom teh odjemalcev, vendar ta mehanizem omogoča strežnikom, da optimizirajo dodeljevanje omrežnih virov na podlagi uporabniških zahtev .

Prednostno določanje toka deluje s težo in odvisnostmi, dodeljenimi vsakemu toku. Kljub dejstvu, da so vsi tokovi po naravi odvisni drug od drugega, imajo utež, dodeljeno med 1 in 256. Mehanizmi za določanje prioritet tokov so še vedno tema razprav. Če pa prednostno določanje toka kombiniramo s funkcijo HTTP / 2 za obdelavo več podatkovnih tokov v eni povezavi TCP, lahko to istočasno pripelje do zahtev strežnika z različno prioriteto.

Prednosti:

  • Zmanjšani negativni učinki zaskrbljenosti omrežja.
  • Izboljšana uporabniška izkušnja in hitrost nalaganja strani.
  • Optimizacija podatkovne komunikacije med strežniki in odjemalci.
  • Zelo učinkovita uporaba omrežnih virov.
  • Skrajšan čas dostave za zahteve po primarni vsebini.

Stiskanje glave s stanjem

Ko uporabniki po HTTP-ju brskajo po spletnih mestih z bogato vsebino, odjemalci potisnejo več skoraj enakih okvirjev glave. To velja, ker mora vsaka zahteva odjemalca vsebovati toliko informacij, kot jih strežnik zahteva za izvedbo zahtevane operacije. Ta postopek vodi do zakasnitve in nepotrebne porabe virov.

HTTP / 2 vključuje možnost stiskanja velikega števila odvečnih okvirjev glave. Zanaša se na specifikacijo HPACK kot varen in preprost pristop k stiskanju glave . Stranke in strežniki vzdržujejo seznam glav, uporabljenih v prejšnjih zahtevah odjemalec-strežnik. To neposredno obravnava pomisleke glede odvečnih okvirjev glave.

Prednosti:

  • Kodira pogosto uporabljene glave in velike glave. To odpravlja potrebo po pošiljanju celotnih okvirjev glave. Posamezna velikost vsakega potoka se znatno zmanjša.
  • Preprečevanje varnostnih napadov, kot je CRIME, raziskovanje podatkovnih tokov s stisnjenimi glavami.
  • Učinkovita uporaba mehanizmov multipleksiranja.
  • Učinkovito določanje prioritet.
  • Zmanjšana poraba virov.

Resnične prednosti HTTP / 2

HTTP / 2 je osredotočen na povečanje potenciala tehnologije , da bi izpolnili prihodnje potrebe in pričakovanja. Tu so resnične prednosti uporabe HTTP / 2.

Spletno delovanje in mobilna spletna zmogljivost - HTTP / 2 ima zmožnosti pošiljanja in prejemanja več podatkov v enem komunikacijskem ciklu odjemalca in strežnika. Dobro deluje tako, da zmanjša zakasnitev pri dostopu do internetnih storitev v mobilnih podatkovnih omrežjih in omrežjih z omejeno pasovno širino na uporabnika.

Cenejši hitri internet - HTTP / 2 povečuje učinkovitost prenosa podatkov. To omogoča internetnim ponudnikom, da zmanjšajo celotne stroške, hkrati pa ohranjajo standarde hitrega interneta.

Varnost - HTTP / 2 ni ranljiv za grožnje, ki ciljajo na besedilne protokole aplikacijske plasti. Poleg tega za zaščito prenosa občutljivih podatkov med odjemalci in strežniki uporablja pristop 'Varnost zaradi nejasnosti'.

Obsežen doseg - Prednosti HTTP / 2 zmanjšujejo internetne rezultate za ponudnike. To bo privedlo do širše internetne pokritosti na svetovni ravni.

Medijsko bogata spletna izkušnja - Tehnološke značilnosti in prednosti, ki jih HTTP / 2 vnaša v svetovni splet, zagotavljajo infrastrukturo, ki omogoča hitrejše nalaganje strani z vsebino, bogato z mediji.

Zaviti

HTTP / 2 je relativno nov protokol, vendar podpora zanj nenehno narašča. Danes večina internetnih brskalnikov podpira HTTP / 2 (Microsoft Edge, Google Chrome, Safari, Firefox, Chrome za Android). Številni spletni strežniki vključujejo izvorno podporo HTTP / 2 (Apache HTTP Server, Tomcat, NGINX). Brez dvoma je HTTP / 2 protokol WWW prihodnosti.

5 minut branja