HTTP/3, webaren komunikazio-protokoloaren bertsio berria

2020/09/01 Leturia Azkarate, Igor - Informatikaria eta ikertzaileaElhuyar Hizkuntza eta Teknologia Iturria: Elhuyar aldizkaria

World Wide Weba HTTP protokoloan oinarritzen da, nabigatzaileen orri-eskaerak eta zerbitzarien orri-bidalketak Interneten garraiatzeko. Protokolo hori eboluzionatzen joan da, 1990eko hamarkadaren hasieran sortu zenetik. Orain, bertsio berri bat proposatu dute, HTTP/3, weba azkarragoa eta seguruagoa izatea eragingo duena. Bertsio hori gure artean dago jada, hainbat nabigatzailek, zerbitzarik eta enpresak eskaintzen baitute dagoeneko; eta etorkizun ez oso urrunean hori izango da webeko komunikazioa bermatuko duen bide nagusia.
Arg. Wavebreakmedia/Shutterstock.com

Internet-sarea azpiegitura fisiko batez (bideratzaileak, kableak, uhin elektromagnetikoen bidaltzaile eta jasotzaileak...) eta hainbat komunikazio-protokolo eta sistemez (WiFi, TCP, UDP, IP, DNS...) osatuta dago. Eta sare horren gainean eratuta dauden zerbitzuek ere (weba, posta elektronikoa, SSH, FTP...) beren protokoloak dituzte. Bada, weba nagusiki HTML formatuan (web-orriak idatzi eta kodetzeko erabiltzen den formatua) eta HTTP komunikazio-protokoloan oinarritzen da.

HTTP siglek HyperText Transfer Protocol esan nahi dute, hau da, hipertestua transferitzeko protokoloa. Protokolo horrek web-nabigatzailearen eta web-zerbitzari baten arteko komunikazioa definitzen du, eta horregatik erakusten dute nabigatzaileek “http://” (edo “https://” webgune seguruetan) web-helbideen hasieran. HTTP protokoloak ezartzen du nola kodetu behar duen nabigatzaileak zerbitzariari egiten dion orri-eskaera (GET, POST, HEAD, PUT, DELETE edo bestelako eskaera-motak nolakoak diren, nola bidaliko diren parametroak eta cookieak...) eta nola erantzungo duen zerbitzariak (HTMLn kodetutako web-orri bat edo errore bat: 404 errorea, helbidea existitzen ez denean; 301, helbidea berbideratu egin denean; 403 errorea, orria atzitzeko baimenik ez dugunean; 500, zerbitzarian errore bat gertatu denean...).

HTTP protokoloaren historia

Sir Tim Berners-Lee webaren asmatzaileak sortu zituen 1989an weba, HTTP protokoloa eta HTML formatua. W3C edo World Wide Web Consortium erakundeak, zeina Berners-Leek berak sortu baitzuen eta gaur egun haren zuzendari baita, gidatu izan du hiruren eboluzioa, berriki arte: HTML formatua WHATWG taldeak kudeatzen du 2019tik, eta HTTP protokoloa IETF edo Internet Engineering Task Force erakundearen esku dago, azken urteotan.

Lehen bertsio hartan GET eskaerak soilik existitzen ziren, eta erantzuna beti zen web-orri bat. Bertsio hura estandarraren 0.9 bertsio gisa argitaratu zen, 1991n. 1996an, HTTP 1.0 bertsioa argitaratu zen, zeinak protokoloari gehitzen baitzizkion eskaera- eta erantzun-mota gehiago eta goiburuko informazioa. Eta, 1997an, HTTP 1.1 bertsioa atera zen: haren berrikuntza nagusia zen web-orri bat osatzen duten osagai guztiak (HTML orria, irudiak, CSS eta Javascript fitxategiak...) konexio bakar baten bidez jaits zitezkeela, ordura arteko bertsioek ez bezala, zeinek bakoitzarentzat konexio berri bat egitea eskatzen baitzuten.

HTTP/2-a, 2015ean argitaratu zen. Googlek garatutako SPDY protokolo esperimentalean oinarrituta zegoen (2013an idatzi genuen hari buruz). Haren berrikuntza eta abantailak hauek ziren: konexio bakarra erabiltzea zerbitzari bati egiten zaizkion orri-eskaera guztientzat, zerbitzariak nabigatzaileari Push jakinarazpenak bidali ahal izatea eta goiburukoak konprimituta bidaltzea.

HTTP/3-aren ezaugarriak

HTTP/3-ak ere HTTP/2-aren antzeko historia du, Googlek 2012. urtean sortutako protokolo esperimental bat baitauka atzean honek ere; kasu honetan, QUIC. Siglek Quick UDP Internet Connections adierazten dute, eta hor adierazten den bezala, bi dira HTTP/3-aren ezaugarri edo berrikuntza nagusiak: azkartasuna eta UDP protokoloaren erabilera.

Izan ere, HTTP-aren aurreko bertsioek TCP (Transmission Control Protocol) protokoloa erabiltzen zuten beheragoko garraio-geruzan, datu-paketeak nabigatzailetik zerbitzarira eta alderantziz eramateko. Protokolo horren ezaugarri nagusia da datuen fidagarritasuna bermatzen duela: datu-paketeak ordenatuta bidaltzen dira, bakoitzaren integritatea ziurtatzeko mekanismoak ditu, eta pakete bakoitzaren ondoren, jaso izanaren adierazpena espero da hurrengoa bidali aurretik; jaso izanaren adierazpena jasotzen ez bada, berriz bidaltzen du paketea. Beraz, fidagarria da, baina mantso samarra ere bada, bidaltzen dituen datu gehigarriengatik eta jasotze-konfirmazio mezuei itxaron beharragatik.

Aldiz, QUIC-ek UDP (User Datagram Protocol) protokoloa erabiltzen du garraio-geruzan. UDP-n, bidaltzaileak paketeak bidaltzen ditu eta kito; berdin dio jasotzailearengana iritsi diren edo ez, eta paketeak bidean galdu badira, galdu egin dira. Aldiro konfirmaziorik behar ez duenez, azkarragoa da. Webean, ordea, garrantzitsua da datu-pakete guztiak ongi iristea; pentsa dezagun, bestela, webgune batean testu-zatiak edo irudi-zatiak faltako balira edo oker baleude. Kontua da weba sortu zenean sarea gaur egungoa ez bezalakoa zela, akats gehiago egoten ziren komunikazioetan, eta horregatik ziren beharrezkoak fidagarritasuna bermatzeko mekanismoak; gaur egun, ordea, horiek ez dira hain beharrezkoak. Gainera, QUIC-en hainbat mekanismo jarri ziren galdutako zatiak berriz eskatzeko eta birbidaltzeko, eta akats horiek ekiditeko.

2015ean, IETF taldeari bidali zitzaion QUIC protokoloa, HTTP protokoloaren estandarraren hurrengo bertsioan sartzeko proposatuz, eta taldeak aldaketa eta hobekuntza batzuk landu eta gero, estandar berriaren proposamen gisa onartu zuen 2018an: HTTP/3 deitu zuten.

HTTP/3-aren helburu eta lorpen nagusia web-komunikazioen abiadura handitzea bada ere, esandako guztiagatik argi dago ez dela hobekuntza tekniko sinpletxo bat soilik: sorreratik eta ia 30 urtean TCP garraio-protokoloan oinarritu ondoren, webaren oinarria den HTTP protokoloa UDP erabiltzera pasatu da.

Inplementazioa eta zabalkundea

Berak sortua izaki, Googlek badaramatza urte batzuk QUIC erabiltzen bere Chrome nabigatzailearen eta bere zerbitzuetako batzuen (Gmail, Drive, Youtube...) arteko komunikaziotarako. Chrome bera eta beste nabigatzaileak (Firefox, Safari, Edge...) aurten hasi dira HTTP/3 inplementatzen, baina oraingoz ez dator lehenetsita, erabili edo probatu nahi duenak eskuz aldatu behar ditu ezarpenak. Baina, ziur, luze gabe, HTTP/3-a lehenespen gisa erabiliko dute guztiek.

HTTP/3-a baliatu ahal izateko, hala ere, web-zerbitzarietan ere jarri behar da. Abiadura hobetzen duela ikusita, ziurrenik laster samar jarriko dute web-zerbitzu eta sare sozial nagusiek. Beste webguneetan, ohi bezala, denbora gehixeago beharko du.

Nolanahi ere, aldaketa etorri etorriko da. Erabiltzaileontzat oharkabean gertatuko da gainera, webeko abiadura hobetuko dela nabarituko dugu bakarrik (edo, agian, ezta hori ere, webguneen pisua ere gero eta handiagoa baita). Baina garrantzitsuak dira horrelako hobekuntzak, webak lehiakortasuna eta, ondorioz, eragina eta presentzia gal ez ditzan, bestelako protokolo ez estandar eta ezkutuak erabiltzen dituzten app-en aurrean.

Gai honi buruzko eduki gehiago

Elhuyarrek garatutako teknologia