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.
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.