:

Szerző: Gálffy Csaba

2015. január 8. 10:22

Célegyenesben a HTTP/2

A Google-féle SPDY kezdeményezést ápolta tovább az iparági szabványosító testület, célegyenesbe fordult a HTTP/2 elfogadása. A protokoll (pontosabban az SPDY) már rengeteg weboldalon és böngészőben támogatott, de a szabványosítás nem csak formalitás.

December 31-én jelentette be az IESG (Internet Engineering Steering Group), hogy a HTTP következő generációjának kidolgozásával megbízott HTTPbis munkacsoport átadta a szabvány formalizált szövegére vonatkozó javaslatát. Ezzel a szakmai munka legnagyobb része véget ért, a következő időszakban, január 14-ig az IESG visszajelzéseket, megjegyzéseket vár a javaslatra vonatkozóan, ezt követően pedig hamarosan végső döntésre is sor kerülhet.

Az iparág kezében az SPDY

A HTTP/2 alapjául a Google által kifejlesztett SPDY (ejtsd: speedy, nem rövidítés, a Google fantázianeve) protokoll szolgál, és az 1999-ben elfogadott HTTP/1.1 óta az első iparági újítás ezen a területen. Az SPDY-t a Google a webes kapcsolatok létesítésének és átvitelének felgyorsítására, valamint biztonságosabbá tételére dolgozta ki egyoldalúan, majd azt implementálta is saját böngészőiben és webes szolgáltatásainak nagy részében. A HTTPbis munkacsoport több alternatívát is megvizsgált, amelyek a HTTP/2 alapjául szolgálhatnak, az SPDY mellett a Microsoft-féle Speed+Mobility-t, illetve a Network Friendly HTTP Upgrade javaslatot is, ezek közül végül az SPDY-t választotta a testület az új szabvány alapjául.

A 2012 novemberében beindított szabványosítási folyamat során a testület több helyen módosította az SPDY-t, az adatfolyamok például egyéni azonosítot kaptak, így egyetlen TCP csatorna köti a felhasználót a szerverhez. A HTTP/2 multiplexelése is továbblépett az SPDY-hez képest - míg az SPDY egyszerre egy szerver felé képes a kapcsolatokat többszálúsítani, a HTTP/2 ezt több host felé is lehetővé teszi, ami tovább gyorsítja az átvitel sebességét.

CI/CD-vel folytatódik az AWS hazai online meetup-sorozata!

A sorozat december 12-i, ötödik állomásán bemutatjuk az AWS CodeCatalyst platformot, és a nyílt forráskódú Daggert is.

CI/CD-vel folytatódik az AWS hazai online meetup-sorozata! A sorozat december 12-i, ötödik állomásán bemutatjuk az AWS CodeCatalyst platformot, és a nyílt forráskódú Daggert is.

A legnagyobb visszalépés viszont egyértelműen a kötelező titkosítás elhagyása - míg az SPDY esetében a kapcsolat mindig titkosított, a HTTP/2 esetében a rendkívül fontos kitétel mögött nem alakult ki konszenzus. Bizonyos szereplők azonban már most kikötötték, hogy a titkosítás nélküli HTTP/2-t nem fogják implementálni kliens- vagy szerveroldali megoldásaikban, így az valószínűleg szabványosítás nélkül is de facto standard lesz. A protokoll egyébként nagyban épít az SPDY innovációira, így a szövegalapú kommunikációt bináris váltja (ennek megfelelően telnetezni már nem használató). Emellett a protokoll kötelező, a fejlécre is kiterjedő tömörítést ír elő, valamint lehetővé teszi a szerveroldali push üzenetek küldését.

A HTTP/2 jelölésénél a munkacsoport úgy döntött, hogy egyáltalán nem használ alverziózást, mivel az a HTTP/1.x esetében sem vált már be. Ennek megfelelően a HTTP verzió ettől a ponttól fogva csak egy általános kompatibilitást (wire compatibility) jelez, a kapcsolat felépítése során a kliens és a szerver megbeszélheti a közösen támogatott képességek legmagasabb verzióját, így rugalmasan megoldható a visszafelé kompatibilitás és az aktuális protokollok használata is (hasonlóan a titkosított kapcsolatoknál alapvetően bevált gyakorlathoz).

Már tesztelhető

Az SPDY már viszonylag széles körben használható, miután a Google fokozatosan bevezette azt webes szolgáltatásainál és böngészőjében, a Chrome-ban is (2010-2011-ben). A protokollt implementálta később a Firefox, az Opera és az Internet Explorer is, szerveroldalon pedig a Twitter, a Facebook és a Yahoo is csatlakozott. Mára a WordPresstől az Nginxig és a CloudFlare-ig rengeteg szolgáltatás és szoftver támogatja a protokollt.

A HTTP/2 implementációjával mindenki várja a végleges szabvány elfogadását. Tesztelni azért már lehet, a Microsoft még 2013 közepén kiadta a Katana nyílt forráskódú webszerver prototípusát, amely az akkor aktuális HTTP/2 draft 4-et implementálja. Ugyanígy az Akamai is üzemeltet tesztszervert, amellyel az implementációk működése kiprobálható, ellenőrizhető.

A szabvány jelenlegi, legfrissebb (és várhatóan végleges) verziója itt olvasható a maga teljességében.

November 25-26-án 6 alkalmas K8s security és 10 alkalmas, a Go és a cloud native szoftverfejlesztés alapjaiba bevezető képzéseket indítunk. Az élő képzések órái utólag is visszanézhetők, és munkaidő végén kezdődnek.

a címlapról