Un Web mai rapid

Ştirea aceasta ar fi trebuit să apară pe prima pagină a ziarelor din toată lumea în ziua de 18 februarie. Este o ştire care afectează viaţa a miliarde de locuitori ai planetei. Este vorba despre o îmbunătăţire reală şi măsurabilă a calităţii vieţii acestora, despre multe minute pierdute de ei în aşteptări, care vor fi economisite zilnic şi transformate în timp disponibil pentru activităţi diverse, este vorba despre o calitate sporită de informaţie pe care toţi aceştia o pot accesa şi despre un număr sporit de comunicări şi interacţii inter-umane. Ştirea a apărut însă doar în publicaţiile de specialitate, iar presa “importantă” a menţionat-o în cel mai bun caz în treacăt, în rubricile tehnologice sau economice. Este vorba despre aprobarea de către Internet Engineering Steering Group (IESG) - echipa de conducere tehnică a organizaţiei de standardizare a infrastructurii Internetului IETF - a celei de-a doua versiuni (şi prima revizie majoră din ultimii 16 ani) a protocolului Hypertext Transfer Protocol - HTTP/2. 

                                  

(sursa imaginiihttp://www.fxp.co.il/)

Revizuirea periodică a standardelor este o practică curentă în lumea ingineriei, în general, şi a Internetului, în particular. Protocolul de bază însuşi, Internet Protocol – IP, se află în proces de tranziţie între prima şi a doua generaţie. Standardele Internetului sunt în marea lor majoritate implementate ca programe software, iar cei care lucrează în domeniu ştiu că greşelile şi problemele de exploatare fac parte din procesul însuşi de cercetare şi dezvoltare; tehnicile moderne preferă o generare rapidă de aplicaţii care să fie verificate în practica unui proces de proiectare minuţios, dar care consumă timp şi întârzie contactul între produse şi piaţa nerăbdătoare a consumatorilor de Internet.

În cazul standardului HTTP revizuirea era necesară din motive pe care le cunoaşte orice utilizator al Internetului. De câte ori nu s-a întâmplat ca apariţia paginii de Web pe care încercăm să o accesăm să dureze mai mult decât una sau două secunde tolerabile şi să ne pună la încercare răbdarea, până la a reboteza iniţialele WWW ca World Wide Wait sau a recurge la alte exprimări mai puţin literare? Cauzele acestei aşteptări pot fi în realitate multiple, dar în multe cazuri motivele pot fi găsite în limitările primelor versiuni (0.9 şi1.0 – cea inventată şi folosită de Tim Berners-Lee, şi 1.1 - standardizată de IETF între 1997 şi 1999). S-a întâmplat de fapt, cu HTTP, ceea ce s-a întâmplat cu multe altele dintre componentele familiei de standarde Internet Protocol-IP - creşterea numărului de utlilizatori şi a dimensiunilor Internetului a depăşit cele mai optimiste aşteptări şi au apărut probleme de scalabilitate şi performanţe care nu pot fi complet anticipate şi sunt detectate doar în folosire.

(sursa imaginii http://www.geektime.co.il/http2-is-a-major-change/)

Care sunt, deci, principalele caracteristici ale versiunii pe care astăzi o numim HTTP/2 şi diferenţele principale faţă de versiunile anterioare? Să le enumerăm şi să le explicăm pe scurt:

  • Compatibilitatea cu versiunile anterioare – Aceasta este una dintre regulile de bază ale introducerii unei noi versiuni a unui protocol. Toate calculatoarele, telefoanele mobile, tabletele, şi orice alte dispozitive conectate la Internet prin HTTP, precum şi serverele de aplicaţii, şi aplicaţiile însăşi trebuie să continue să funcţioneze cu aceeaşi funcţionalitate şi la aceiaşi parametri de performanţă la introducerea noii versiuni. Desigur, ele nu se vor bucura de avantajele noii versiuni, dar vor continua să funcţioneze şi vor inter-opera cu dispozitivele care au încărcat versiunea mai avansată.

  • Codificarea noii versiuni este binară (sistemul 0/1) şi nu textuală – Rezultatul este o transmisie mai compactă a informaţiei şi o prelucrare mai simplă la transmisie şi recepţie

(sursa imaginii http://getprismatic.com/story/1417748221625)

 

  • Protocolul permite desfăşurarea în paralel a mai multor sesiuni multiplexate, în loc de prelucrarea serială a acestora. Este vorba despre o evoluţie semnificativă în arhitectura protocolului care permite ca diverse etape ale sesiunilor să se desfăşoare în paralel într-un mod mult mai eficace. Această funcţie rezolvă şi o problemă (“bug”) a primelor versiuni, numită “problema capului de linie” în care o etapă neterminată a unui proces bloca întreaga desfăşurare ulterioară şi ducea la apariţia acelor enervante ceasuri de nisip pe ecranele utilizatorilor.

  • Capacitatea “serverelor” (calculatoarele unde se află aplicaţiile Web) de a “împinge” informaţii spre “browsere” fără a aştepta o interacțiune “întrebare-răspuns”. Este încă o funcţie care se bazează pe anticiparea a ceea va urma în interacțiune, ceea ce reduce numărul de mesaje şi face comunicarea mai eficientă.

  • Comprimarea începutului mesajelor care duce la o eficienţă mai mare a transmisiei informaţiei pe reţea.

HTTP/2 se bazează pe protocolul SPDY (a se citi “spidi”) al companiei Google. Este implementat deja de majoritatea browserelor populare şi în primul rând de Chrome, Firefox, Internet Explorer.

(sursa imaginii https://twitter.com/hashtag/httpbis)

 

Succesul procesului de standardizare nu a trecut fără contestări, aşa cum a fost de altfel şi procesul însuşi. Criticii pun sub semnul întrebării gradul de optimizare şi îmbunătăţire a vitezelor de acces pentru diversele feluri de aplicaţii şi diferitele browsere şi un răspuns definitiv va putea fi obţinut doar peste câteva luni când va fi mai avansată instalarea noii versiuni la scara întregului Internet. (Deocamdată rezultatele simulaţiilor şi ale instalărilor limitate sunt foarte încurajatoare.) Alte critici se referă la apărarea confidenţialitătii private (“privacy”) pe care IETF s-a angajat în vara lui 2014 că o va implementa în orice protocol nou, folosind metoda “criptografiei oportuniste”, mai exact căutarea celei mai eficiente metode criptografice aflată la îndemână pentru un protocol dat într-o sesiune dată. HTTP/2 are scuza că a fost proiectat cu mulţi ani înaintea acestei hotărîri şi încă nu o aplica. Criptografierea nu este obligatorie - încă - şi site-urile care o aplică o marchează prin prefixul “https” în loc de “http” pentru adresele lor.  Google şi Firefox au anunţat deja că vor implementa întotdeauna criptografia în programele lor care folosesc HTTP/2 ceea ce va face din criptografie o funcţie standard “de facto” până la apariţia unei versiuni 2.1 a standardului.

 

Efectul final al introducerii versiunii HTTP/2 va putea fi evaluat doar peste câţiva ani. În mod sigur viaţa noastră internetică se va schimba, speranţa este că schimbarea va fi în mult mai bine.

Add new comment