HTTP 1.0 protiv HTTP 1.1: razlika i usporedba

Ako koristite internet, vjerojatno ste naišli na izraz HTTP ili HTTPS. To je ujedno i najgledanije pismo, posebno s obzirom na milijarde web stranica koje su trenutno aktivne.

HTTP ili HyperText Transfer Protocol je akronim. Ovo služi i kao protokol na strani klijenta i kao poslužiteljski protokol, definirajući kako se poruke šalju i strukturiraju putem interneta.

Ključni za poneti

  1. HTTP 1.0 dopušta samo jedan zahtjev po vezi, dok HTTP 1.1 dopušta više zahtjeva.
  2. HTTP 1.1 podržava trajne veze, omogućujući brže učitavanje web stranice, dok HTTP 1.0 ne podržava.
  3. HTTP 1.1 ima učinkovitiju kompresiju zaglavlja od HTTP 1.0, što smanjuje korištenje propusnosti.

HTTP 1.0 protiv HTTP 1.1

HTTP 1.0 bila je prva verzija HTTP protokola, predstavljena 1996. To je jednostavan protokol bez statusa koji radi na bazi zahtjeva-odgovora. HTTP 1.1 najraširenija je verzija HTTP protokola, uvedena 1999. To je poboljšana verzija HTTP-a 1.0 koja uvodi nekoliko novih značajki, uključujući podršku za trajne veze, predmemoriju, cjevovod i kodiranje prijenosa u komadima.

HTTP 1.0 protiv HTTP 1.1

Godine 1996. HTTP/1.0 službeno je predstavljen i priznat. Njegova je popularnost od tada naglo porasla.

HTTPv1.0 omogućuje samo rudimentarnu provjeru autentičnosti (kontrola izazov-odgovor); ključni problem s ovom tehnikom je taj što korisnička imena i lozinke nisu šifrirani, ostavljajući ih podložnima špijuniranju i bez vremenskih ograničenja.

Bilo je samo 16 statusnih kodova.

HTTP 1.1 također pruža postojane veze, što implicira da se mnogi odgovori i zahtjevi mogu poslati preko iste HTTP veze.

Metoda OPTIONS je nova u HTTP/1.1. Ovu tehniku ​​može jednostavno koristiti HTTP klijent za otkrivanje mogućnosti HTTP poslužitelja. Prvenstveno se koristi u web-aplikacijama za dijeljenje resursa s više izvora.

Tabela za usporedbu

Parametri usporedbeHTTP 1.0HTTP 1.1
Statusni kodPostoji 16 statusnih kodova koji se mogu definirati; međutim, skočni prozori s pogreškama nisu dovoljno precizni.Izvješćivanje o pogreškama je brže i učinkovitije uz mogućnost navođenja 24 statusna koda.
Mehanizam provjere autentičnostiBudući da se lozinke i korisnička imena također šalju u čistom tekstu ili base64 kodiranom, osnovni mehanizam provjere autentičnosti nije siguran.Budući da koristi preglednu provjeru autentičnosti i NTLM provjeru autentičnosti, relativno je siguran.
cachingZaglavlje If-Modified-Since koristi se za pomoć u predmemoriranju.Koristi neka dodatna zaglavlja poput kontrole predmemorije.
Optimizacija izvedbePodržava predmemoriju za brže posluživanje više stranica.Mnoge optimizacije koriste se kao zaobilazno rješenje za zahtjev "šest veza po hostu" uključujući spriting, ulančavanje, umetanje i dijeljenje domene.
Glavne značajkePostoji samo jedan zahtjev i odgovor za svaku TCP vezu.Omogućuje ponovnu upotrebu veze, što znači da se mnogi zahtjevi i odgovori mogu poslati i primiti za svaku TCP vezu.

Što je HTTP 1.0?

HTTPv1.0 omogućuje samo rudimentarnu provjeru autentičnosti (kontrola izazov-odgovor); ključni problem s ovom tehnikom je taj što korisnička imena i lozinke nisu šifrirani, ostavljajući ih podložnima špijuniranju, a nema vremenskih ograničenja.

Također pročitajte:  Siteground protiv Hostingera: razlika i usporedba

Svaka informacija dobivena špijuniranjem može se koristiti dugo vremena nakon što je dobivena. Klijent treba izračunati a Kontrolni zbroj lozinke, korisničkog imena i jednokratne vrijednosti, uključujući vrstu HTTP zahtjeva i traženi URI za važeći odgovor.

Budući da je HTTP1.0 trebao koristiti novu TCP vezu za svaki zahtjev, svaka žalba morala je platiti trošak uspostavljanja nove TCP veze.

Budući da je većina internetskih transakcija kratka i rijetko napreduje dalje od faze sporog početka, one ne iskorištavaju optimalno dostupnu propusnost.

Iako su neke implementacije verzije 1.0 koristile "keep-alive" zaglavlje kako bi zahtijevale da se veza može održati živom, to nije dobro funkcioniralo s proxyjima između.

Poslužitelj i dalje mora davati odgovore istim redoslijedom kao odgovarajući zahtjev za danu vezu. Klijent ne mora čekati odgovor na svoj prethodni zahtjev prije podnošenja drugog preko iste veze (cjevovod).

Smanjuje latenciju mrežnog povratnog putovanja dok također optimizira mogućnosti TCP protokola.

Što je HTTP 1.1?

Uvođenjem trajnih spojeva i cjevovoda rješava ovaj problem. HTTP/1.1 implicira da bi veza TCP-a trebala biti aktivna osim ako se izričito ne zatraži prekid veze pri korištenju trajnih veza.

Omogućuje klijentu podnošenje brojnih žalbi preko iste veze bez čekanja da se na svaku odgovori, značajno povećavajući performanse HTTP/1.1 u odnosu na HTTP/1.0.

Nažalost, ova tehnika optimizacije ima inherentno usko grlo.

Zato što se nekoliko podatkovnih paketa jednostavno ne može mimoići na svom putu. postoje trenuci kada zahtjev na početku reda ne uspije dobiti resurs koji zahtijeva, uzrokujući da svi zahtjevi iza njega budu blokirani.

Također pročitajte:  Python vs Bash: razlika i usporedba

To je poznato kao HOL head-of-line blocking i to je glavni problem kada je u pitanju poboljšanje performansi HTTP/1.1 veze.

Odvojene, paralelne TCP veze mogu riješiti problem, međutim, broj istodobnih TCP veza između klijenta i poslužitelja je ograničen, a svaka nova veza troši puno resursa.

Kontrola protoka u HTTP/1.1 temelji se na TCP-u. Kada se TCP uspostavi, i poslužitelj i klijent koriste svoje zadane postavke sustava za određivanje veličine međuspremnika.

Ako je međuspremnik primatelja djelomično pun, obavijestit će pošiljatelja o prozoru primanja ili količini slobodnog prostora u međuspremniku.

Glavne razlike između HTTP 1.0 i HTTP 1.1

  1. HTTP1.0 uglavnom se koristi u zaglavlju, ali HTTP1.1 se koristi za uvođenje sofisticiranijeg predmemorija pristup upravljanju.
  2. Postoji nešto gubitka propusnosti u HTTP1.0, ali ima manje gubitka propusnosti u HTTP 1.1.
  3. Polje zaglavlja Host podržavaju HTTP1.1 poruke zahtjeva i odgovora, iako HTTP1.0 smatra da svaki poslužitelj treba vezati zasebnu IP adresu.
  4. U HTTP1.0 postoji samo jedan zahtjev i odgovor za svaku TCP vezu, dok HTTP 1.1 omogućuje ponovnu upotrebu veze.
  5. Spriting, ulančavanje, umetanje i dijeljenje domene neke su od optimizacija koje se koriste u HTTP-u 1.1, dok HTTP 1.0 podržava predmemoriju za brže posluživanje web stranica.
Reference
  1. https://ieeexplore.ieee.org/abstract/document/1243114/
  2. http://journals.uic.edu/ojs/index.php/fm/article/view/2125

Zadnje ažuriranje: 16. kolovoza 2023

točka 1
Jedan zahtjev?

Uložio sam mnogo truda u pisanje ovog posta na blogu kako bih vam pružio vrijednost. Bit će mi od velike pomoći ako razmislite o tome da to podijelite na društvenim medijima ili sa svojim prijateljima/obitelji. DIJELJENJE JE ♥️

10 misli o “HTTP 1.0 protiv HTTP 1.1: razlika i usporedba”

  1. HTTP 1.1 uvođenje metode OPTIONS značajan je dodatak koji omogućuje klijentima da otkriju mogućnosti poslužitelja, posebno korisne za dijeljenje resursa s više izvora u web aplikacijama.

    odgovor
  2. Mehanizmi provjere autentičnosti u HTTP 1.1 značajno su poboljšali sigurnost upotrebom sažetka i NTLM provjere autentičnosti, smanjujući rizik presretanja korisničkog imena i lozinke.

    odgovor
  3. Podrška HTTP-a 1.1 za trajne veze mijenja pravila igre u smislu ubrzanja vremena učitavanja web-mjesta i optimizacije latencije mrežnog povratnog putovanja.

    odgovor
  4. Uska grla i optimizacije u HTTP-u 1.1 naglašavaju potrebu za stalnim usavršavanjem web protokola kako bi se prevladali izazovi i poboljšala izvedba.

    odgovor
  5. Tablica za usporedbu pruža jasan pregled razlika između HTTP 1.0 i 1.1, naglašavajući napredak u izvješćivanju o pogreškama i optimizaciji performansi.

    odgovor
  6. Tehnički detalji o HTTP 1.0 i 1.1 pružaju vrijedan uvid u evoluciju protokola, posebno u smislu ponovne upotrebe veze i učinkovite kompresije zaglavlja.

    odgovor
  7. Detaljno objašnjenje HTTP 1.1 koje se bavi izazovima prethodnih verzija, kao što je izbjegavanje troškova uspostavljanja nove TCP veze za svaki zahtjev, pokazuje napredak protokola.

    odgovor
  8. Raščlamba HTTP-a 1.0 i 1.1 prikazuje postupna poboljšanja u rukovanju pogreškama, statusnim kodovima i predmemoriranju, naglašavajući važnost evolucije protokola.

    odgovor

Ostavite komentar

Želite li spremiti ovaj članak za kasnije? Kliknite srce u donjem desnom kutu da biste ga spremili u svoj okvir za članke!