Na přelomu 60. a 70. let už inženýři měli ověřenou základní funkčnost paketového spojení mezi dvěma počítači a mohli začít propojovat USA. Zrodil se tak Arpanet.
Koncem šedesátých let začaly vznikat základy současného internetu. Tehdy se mu říkalo Arpanet a v naší sérii se dočtete, jak jej inženýři postupně stavěli, jak se poprvé připojili k jinému počítači a vytvářeli nové protokoly.
Dnes se přeneseme na přelom 60. a 70. let po prvním propojení vzdálených počítačů a podíváme se na postupné rozšiřování sítě a ještě starší předchůdce Arpanetu.
I když se v na konci října roku 1969 prvním experimentátorům nepodařilo nalogovat do Stanfordu a Arpanet tedy napoprvé selhal, přesto se jednalo o velké vítězství. Už o pár minut později se podařilo komunikaci zprovoznit a potvrdilo se, že chyba netkvěla v principu paketového přenosu dat. Právě naopak, ukázalo se, že tímto principem lze propojit počítače, které si pak jako staří dobří známí spokojeně vyměňují zprávy a vše funguje tak, jak má. Síť sítí se vynořila jako nějaká mytická bytost, aby tu s námi již natrvalo zůstala.
Jak už jsme si vyprávěli v předchozích dílech, první uzel (IMP) budoucí sítě byl zprovozněn počátkem září 1969 na univerzitě v Los Angeles, zatímco druhý o měsíc později ve Stanford Research Institute (SRI), na což padlo nějakých 350 mil duplexní telefonní dvojlinky. S třetím IMPem bylo možné ušetřit, jelikož příslušné instituce dělí jen zhruba 100 mil. Byl nainstalován v UCSB prvního listopadu zcela bez problémů, no a na univerzitu v Utahu, ležící v Salt Lake City nedaleko skvělých lyžařských středisek, se v prosinci vypravil téměř celý tvůrčí tým – lyže si pochopitelně vzali s sebou. Instalace IMPů se sice už stávala rutinou, ale Frank Heart dospěl k názoru, že troška relaxace za firemní peníze neuškodí. Univerzita v Utahu ale byla k Arpanetu připojena pouze přes SRI, takže schéma první sítě vypadalo jako na obrázku níže.
Schéma sítě ARPANET v březnu 1970
Z obrázku je patrné, že se nejednalo o strukturu odolnou válečnému konfliktu, jak Roberts a další slibovali generálům v Pentagonu. Ten omezený počet propojení byl důsledkem šetření, protože natáhnutí dalších drátů bylo příliš drahé a Roberts dospěl k názoru, že to prozatím stačí.
V průběhu prvních měsíců existence sítě začal Kleinrock se svým týmem paralelně s BBN měřit efektivitu přenosu dat. No a ve stejné době se stalo přesně to, čeho se Heart obával – studenti na UCSB si začali se svým IMPem hrát. Zkoušeli jej restartovat, zapínali jej a vypínali a měli dobrý pocit z toho, že na to nikdo nepřijde. Vůbec netušili, že svou činností narušují síťový provoz a zcela znemožňují experimenty. Jaké bylo jejich překvapení, když zčistajasna přišlo výrazné „tytyty“, neboť v BBN díky svému monitorovacímu systému už poznali, co se děje.
S prvními čtyřmi počítači sice Arpanet zdárně fungoval, nicméně k jeho skutečné užitečnosti stále něco chybělo – funkční síťový komunikační protokol, který by umožnil propojení dvou počítačů, vyměňování zpráv mezi nimi a zajistil podporu pro síťové aplikace. Steve Crocker, Vint Cerf a další na tom sice usilovně pracovali, nicméně stále se nedařilo. Proto se na prosincovém setkání pokusili Robertse ukonejšit alespoň specifikací pro Telnet, který umožňoval nalogování a práci na vzdáleném počítači. Roberts se ale opít rohlíkem nedal. Moc dobře si totiž uvědomoval, že Telnet v podstatě změní velký počítač v „hloupý“ terminál. Síť měla přitom mnohem větší ambice. Proto trval na tom, aby skupina dále pokračovala. Nemohl si dovolit spokojit se s málem. Arpanet musel nabídnout mnohem víc. Měl totiž konkurenci.
Předchůdci Arpanetu
Arpanet je dnes známý jako první paketová univerzální síť, počítačových sítí jako takových ale bylo v minulosti více. Jednou z nich byl třeba systém pro varování před mezikontinentálními střelami jménem SAGE. Jeho předchůdcem byla síť s jediným centrálním počítačem typu Whirlwind. Poprvé se v něm matematické operace realizovaly paralelně na šestnáctibitových číslech, nikoliv sériově bit po bitu, jako u jeho předchůdců.
To se zcela pochopitelně podepsalo na podstatně vyšší rychlosti. Další novinkou bylo použití tehdy nových pamětí z ferritových jader. Jinak byl ovšem dítětem své doby - jeho paměť měla „mamutí“ kapacitu 1 K (uschovala 1 024 slov o šířce 16 bitů) a počítač sestával zhruba z 5 000 elektronek. Systém s tímto počítačem byl pouhým prototypem pozdějšího SAGE – pracoval pouze v oblasti Cape Cod a zpracovával údaje z celkem 17 radarů.
Počítač IBM AN/FSQ-7 si díky své monstróznosti zahrál i v mnoha sci-fi filmech
Když se koncept podařilo doladit, došlo ke stavbě finálního obranného systému SAGE, který v konečné podobě představoval mamutí síť složenou z 24 center. Každé bylo osazeno hlavním a záložním počítačem IBM AN/FSQ-7, největšími monstry, jaká kdy byla vyrobena. Jejich váha 250 tun nás o tomto faktu vcelku přesvědčí. Sestávaly z 60 000 elektronek, nicméně navzdory šílené spotřebě 3 megawatů počítaly pouze rychlostí cca 75 000 instrukcí za vteřinu – tedy s rychlostí menší, než to dokázal první mikroprocesor 4004 se zlomkem spotřeby, velikosti a o váze nemluvě.
Vzhledem k náročnosti připojení mnoha operátorských konzolí a zajištění síťového spojení je celkem logické, že paměť tohoto počítače byla na svou dobu enormní – celkem 65 K, tedy 65 535 slov o šířce 32 bitů. Tyto gigantické počítače řídily veškerý síťový provoz a sbíhaly se u nich všechny informace z radarů či monitorovacích terminálů. Centra byla propojena mezi sebou a s hlavní centrálou, která mohla koordinovat případné obrané akce.
Operátoři u konzole systému SAGE (Foto: computerhistory.org)
V komerční sféře vznikaly první sítě třeba pro potřeby nákupu a rezervace letenek. Ty se totiž od druhé světové války staly cenově dostupnými a počet cestujících dramaticky stoupal. Rezervační systém SITA přitom vznikl v roce 1949 a pracoval s děrnými páskami jakožto hlavním úložným a komunikačním médiem. Koncem padesátých let se situace stala neudržitelnou, proto American Airlines zavelely k útoku a podepsaly s IBM smlouvu na vytvoření nového počítačového rezervačního systému SABRE.
IBM se inspirovalo vlastním systémem SAGE, zmíněným výše, jen místo monster byly použity přeci jen skromnější mainframy IBM 7090. Od roku 1960 byl SABRE nasazen k testování, které ovšem trvalo několik dlouhých let – až v roce 1964 byl plně operační. Systém propojil více než 1 500 terminálů v celých USA a Kanadě k jedinému centrálnímu počítači (respektive k hlavnímu a záložnímu), v databázi měl každý let včetně všech pasažérů a umožňoval rezervovat letenku až rok před odletem. Byl dál a dál rozvíjen, až v roce 1976 propojil pomocí technologie přepojování paketů nejen terminály, ale i počítače různých společností - to už ovšem s použití novějšího typu mainframů IBM System/360.
Robert Kahn
Je ale třeba zdůraznit, že na rozdíl od univerzálního Arpanetu byl tento systém sestaven z unifikovaného hardwaru a za jediným konkrétním komerčním účelem. Arpanet měl být na rozdíl od něj akademickou sítí využívanou pro vývoj a testování nových technologií. Proto se Roberts nemohl spokojit jen s Telnetem. Naštěstí, mladí nadšenci jej chápali, založili skupinu zvanou Network Working Group. Ta měla v budoucnu hrát zásadní roli při organizování práce na nových protokolech a jejich implementaci v praxi. Její prvním zásadním úspěchem byl létě 1970 konečně hotový slíbený protokol. Ten, nazvaný neinvenčně Network Control Protocol, zajišťoval vše, co si Roberts přál. Experimenty mohly začít.
První se do nich pustil Bob Kahn. Tvrdil totiž softwarovému týmu, že jejich návrh algoritmu je sice velmi elegantní, ale hrozí zhroucení celé sítě ve chvíli, když bude jeden IMP zahlcen zprávami. V takovém případě nebude schopen dále reagovat a komunikace na síti bude naprosto ochromena. Walden a Crowther měli příliš mnoho starostí, takže na tyto alarmující varování nedali, ale Kahn věřil svým simulacím.
Nastal tedy čas toto tvrzení vyzkoušet. Kahn s Waldenem proto vyrazili na UCLA, kde Walden neustále modifikoval program IMPu, aby se měnila velikost zasílaných paketů, přičemž se zkoušelo jejich hromadné zasílání na ostatní uzly. Kahn byl spokojen, jeho předpověď se potvrdila. Stačilo dvanáct rychle po sobě odeslaných paketů a zahlcení vyrovnávacích pamětí IMPů se po síti rozšířilo jako rakovina. Na vině byl samozřejmě nedostatečný hardware, tedy především opravdu minimální velikost vyrovnávací paměti.
Kahnova pozice v týmu se tímto experimentem velmi upevnila. Až doposud se na něj ryzí programátoři dívali jako na teoretika, který praxi ve skutečnosti moc nerozumí. Nyní i velmi skeptický Crowther pochopil, že simulace a teorie mají něco do sebe. Ukázalo se, že k vytvoření skutečně funkčního systému, který by odolal i velmi nepravděpodobným a neočekávaným situacím, potřebujete nejen skvěle umět programovat, ale i mít schopnost ryze abstraktní představy dat, proudících sítí a naplňující ty nejméně pravděpodobné katastrofické scénáře.
Vzdálená správa
Koncem března byl k síti konečně připojen i testovací IMP v BBN a Frank Heart se tak dočkal své vysněné vzdálené správy sítě. Až doposud to tvůrci neměli lehké a například Dave Walden strávil mnoho hodin v letadle, když měl do všech čtyř uzlů distribuovat novou verzi softwaru na papírové pásce. Inženýři firmy BBN sice zpočátku nebyli schopni zajistit servis čtyřiadvacet hodin v kuse, nicméně připojili ke svému IMPu terminál a naprogramovali všechny uzly tak, aby každých patnáct minut zasílaly zprávu se svým stavem a spolehlivostí sítě.
Je pravda, že nikdo neměl tu trpělivost sedět u terminálu a číst tu hromadu dat, nicméně čas od času se tím někdo probral, neboť z dat bylo možné leccos vyčíst. Například zkušený inženýr dokázal z chybovosti paketů předpovědět blížící se selhání některé propojovací linky, čemuž se dalo předejít zavoláním na telefonní společnost. Tam ovšem na něco takového nebyli vůbec připravení, nechápali, že někdo na východním pobřeží USA má informace o stavu linky na druhé straně země. Zpočátku byla tato varování brána na lehkou váhu, ale postupem času se v servisních centrech přesvědčili, že to, co ti divní vědátoři předpovídají, se nakonec vždycky potvrdí.
Vzdálená zpráva zprvu ještě nebyla zcela propracovaná, v BBN sice dokázali zjistit selhání některého z IMPů, ovšem k jeho restartování či převinutí pásky s programem potřebovali pomocnou ruku na tom správném místě. To byl někdy menší problém, neboť ne všichni studenti v laboratořích byli počítačově dostatečně gramotní a schopní následovat detailní instrukce, co přesně udělat, jak pásku převinout zpět a minipočítač restartovat. V BBN si zakrátko vytvořili seznam zdatnějších kontaktů, aby se v případě nutnosti mohli poptat po někom, kdo počítačům rozumí.
V létě 1970 však došlo k dalšímu rozšíření Arpanetu na celkem devět uzlů. Bylo vybudováno připojení na východ USA do MIT, RAND a na Harvard. S tímto provozem už si dosavadním amatérským způsobem v BBN nedokázali poradit, a proto bylo zřízeno Network Control Center a vylepšená vzdálená správa. Program už bylo možné do uzlů distribuovat přes síť a v případě výpadku si postižený IMP dokázal svůj software stáhnout přes síť od svého kolegy. Papírová páska se tím stala minulostí a významně se snížil počet zoufalých telefonních hovorů. Stejně tak došlo ke zrušení patnáctiminutových logů na terminálu, protože v kupě záznamů už se nikdo nevyznal. Místo toho se logy zpracovávaly elektronicky na počítači PDP-10, statisticky se vyhodnocovaly, čímž přesnost předpovědí ještě stoupla. Síť z prvních dětských krůčků vyrůstala v respektovaný funkční systém.
ARPANET v roce 1971 (Foto: computerhistory.org)
Síť tedy fungovala. Sice tak úplně nesplňovala představy Pentagonu o schopnosti přežití v případě atomového útoku a to jen z toho důvodu, že na nezbytných záložních propojeních se šetřilo, nicméně o její funkčnosti nebyly nejmenší pochyby. Technologie přepojování paketů se tedy ukázala jako úspěšný a smysluplný koncept. Mělo to ale jednu malou chybičku. Na síti prakticky neexistoval žádný datový provoz. Nikdo jí nevyužíval. Nelze se tedy divit, že se mnozí začali ptát po jejím účelu. K čemu to vlastně je?
Ale o tom zase až příště.