Čo je HTTP/2 a ako dokáže zrýchliť internet o 30 %?

Už v začiatkoch éry počítačov sa ukázalo, že trh IT nemôže fungovať čisto na princípoch konkurencie, ale aj medzi súpermi musí existovať určitá spolupráca. Kvôli tomu, aby ich výrobky, softvér a služby boli aspoň ako-tak kompatibilné a schopné vzájomnej komunikácie. Preto vznikli štandardy, okrem iných aj komunikačné protokoly. Jeden z tých úplne základných sa práve dočkal novej generácie.

Notebook

Štandardy sa nemenia často, ale zato skokovo

Dohodnuté štandardy majú potenciál vydržať veľmi dlho nezmenené. Zavádzanie ich nových generácií môžeme prirovnať k príprave nového zákona a jeho prechodu parlamentom. Presadzovanie „novelizácií“ v oblasti technológií je však často ešte ťažkopádnejšie. Väčšinou vzniká na pôde zoskupenia patričných výrobcov, ktorí o novom štandarde diskutujú, pripomienkujú návrhy, testujú ho, schvaľujú a až potom sa pomaly dostáva do prvých výrobkov.

Do masového rozšírenia však ubiehajú ďalšie mesiace, väčšinou dokonca roky. Záleží od dynamiky trhu, napríklad smartfóny preberajú inovácie veľmi rýchlo, také televízory oveľa pomalšie. Nástup dokážu spomaliť aj vysoké licenčné poplatky – nie všetky technológie sú otvorené a bezplatné. Zato vylepšenia štandardov bývajú skokové, radikálne.

Vidieť to môžeme napríklad na štandarde konektora USB. Pred rokom bol schválený rýchly štandard USB 3.1 spolu s novým tvarom konektora typu C. Stalo sa tak v dobe, keď sa predchádzajúca generácia, teda USB 3.0, stala takmer samozrejmosťou v spotrebiteľských počítačoch. Kým takúto mieru rozšírenia dosiahne USB 3.1 typu C, prejdú ďalšie roky.

Podobnou aktualizáciou štandardov v posledných rokoch bol napríklad jazyk HTML5, efektívnejší multimediálny kodek h.265 alebo z hardvérovej oblasti konektor HDMI 2.0.

Smartfón

Čo je to protokol a akú úlohu má HTTP?

Protokol môžeme jednoducho definovať ako pravidlá komunikácie. Takéto pravidlá, písané či nepísané, môžu existovať v rámci niektorých formálnych organizácií či kultúr. V technologickom svete znamená asi toľko, že zariadenia podporujúce daný protokol vedia, do akej formy majú prenášané informácie „zabaliť“, aby boli na druhej strane správne prečítané.

Protokol HTTP definuje spôsob komunikácie na internete, najmä medzi serverom a internetovým prehliadačom, teda počítačom bežného používateľa. Definuje obsah hlavičky, usporiadanie tela správy a určuje tiež, ako má vyzerať pätička. V hlavičke sú najmä informácie o adrese prijímateľa i odosielateľa a základné údaje o obsahu, najmä veľkosť a typ údajov. Hlavičku si môžeme predstaviť ako obálku listu. List a text na ňom napísaný v tomto prípade symbolizuje samotné dáta, ktoré chceme preniesť – typicky je to HTML kód stránky, obrázky na nej a podobne. Pätička obsahuje najmä informácie pre detekciu chýb.

Bez dohodnutého protokolu by počítače neboli schopné medzi sebou komunikovať – jednoducho by si nerozumeli, pretože by každý hovoril iným jazykom. Súčasná verzia protokolu HTTP/1.1 je však už značne zastaralá, funguje už od roku 1999.

Smartfón

Prečo potrebujeme novú verziu?

Problém je v tom, že dnešné webstránky už zďaleka nie sú tvorené iba samotným HTML dokumentom. Obsahujú veľké množstvo vedľajších prvkov, ako sú dizajnové elementy (CSS formáty), skriptovacie jazyky (JavaScript), obrázky, animácie a podobne. Tieto však v rámci HTTP/1.1 nie je možné preniesť v rámci jedného spojenia, musí sa ich vytvoriť niekoľko, čo zvyšuje réžiu, napríklad aj z dôvodu zbytočného opakovania hlavičiek. Výsledkom je tak väčší dátový objem, väčší nárok na výpočtový výkon na oboch stranách a v konečnom dôsledku zbytočné čakanie. A dnešný netrpezlivý človek hrá na milisekundy.

Počas predchádzajúcich rokov sa rôzne firmy i nadšenci snažili čo najviac zrýchliť načítavanie stránok. Ciest je viacero – zjednodušenie a zefektívnenie kódu, zvýšenie výkonu servera, ukladanie niektorých informácií priamo u používateľa (cookies, vyrovnávacie pamäte…), zníženie kvality obrázkov a videí. Najďalej sa dostal Google v roku 2012, keď jeho inžinieri masívnym prepracovaním protokolu HTTP/1.1 vytvorili zrýchlený SPDY protokol. Minimálne zrýchlenie stránok čisto použitím SPDY sa udávalo na úrovni 10 %, špičkovo však úspora času načítania dosahovala až 40 %.

A práve tu sa začína príbeh HTTP/2 – vychádza totiž práve zo SPDY protokolu. Jeho výhody sú postavené na viacerých princípoch. Najväčší prínos čerpá zo zjednotenia dátových prúdov – namiesto spomínaných samostatných kanálov pre každý druh obsahu využíva celá stránka iba jeden. Úspora dát i réžie je zjavná.

Dátové polia sú prenášané hneď ako binárne, nie ako text. HTTP/2 zvláda multiplexovanie, teda príjem a odosielanie viacerých správ naraz. Dokáže dáta prioritizovať, komprimovať a dokonca predvídať ďalšie požiadavky používateľa a posielať dáta vopred. Dohromady sa očakáva zvýšenie rýchlosti načítavania webstránok typicky o 30 %.

Notebook

Nie je za dverami. Podliezol ich

V porovnaní s hardvérovými štandardmi sa HTTP/2 zrejme dočká podstatne rýchlejšieho presadenia. Práve pred troma dňami skončila pripomienková lehota, malo by nasledovať schválenie finálneho štandardu. Prakticky však nebolo a nie je nutné čakať, ide o odporúčanie, nie povinný štandard. Navyše, softvéroví vývojári ho do svojich produktov zapracovali už dávnejšie, takže v niektorých prípadoch HTTP/2 už používame, hoci o tom ani nevieme.

HTTP/2 je zapracované v prehliadačoch Chrome (aj keď môže byť natívne zakázané), vo Firefoxe od verzie 36 beta, fungovalo pod Internet Explorerom v rámci Windows 10 Technical Preview (či ho podporuje prehliadač Edge, nedokážeme potvrdiť). Nový protokol podporujú Windows servery na báze desiatky, očakáva sa skoré nasadenia na platformách Apache a Nginx.

HTTP/2 teda už pomaly preniká do sveta internetu. Robí to však nenápadne, skôr v zákulisí – nečakajte ani takú malú vizuálnu zmenu, že namiesto http:// v adresnom riadku prehliadača uvidíte http2://. Podstatné však je, že technológie budú zas o čosi rýchlejšie a efektívnejšie.

Zdroj a foto: ASUS, Engadget, Lenovo, Samsung, Sony, Tom&#039s Hardware

Komentáre k článku