Vyšlo v týdeníku CHIPweek č. 3/96, 16. ledna 1996
Vytištěno z adresy: http://www.earchiv.cz/a96/a602k150.php3

Jak vznikly sítě

Počítačové sítě nám nespadly z nebe. Stejně tak ale nevznikly tím, že jednoho krásného dne někdo dostal dobrý nápad, zrealizoval jej, a všichni kolem to ihned přijali za své, neboť okamžitě pochopili, o jak báječnou věc jde. Nikoli, takovýmto idylickým způsobem se v reálném životě věci neodehrávají a jinak tomu nebylo ani v případě počítačových sítí - také ty si musely své místo na slunci nejprve vybojovat.

Počítačové sítě tedy vznikaly postupně, a stejně tak postupné bylo i jejich prosazování se do praxe. Hnacím motorem pro výraznější prosazení počítačových sítí přitom mohla být jen jedna jediná věc: reálná poptávka po tom, co počítačové sítě nabízely. Tedy poptávka po takových řešeních, službách, možnostech či technikách, které počítačové sítě mohly nabídnout, a které dokázaly nabídnout lépe a efektivněji než jiná řešení, která připadala v úvahu. Teprve později, když už se počítačové sítě náležitě prosadily a „už tady byly", se začalo přemýšlet i o tom, jak co nejlépe využít všech jejich možností. Pak se tedy pořadí v jistém smyslu obrátilo: řešení (počítačové sítě) již existovalo a hledal se problém, který by mohl být vyřešen. Příkladem mohou být dnešní snahy zaintegrovat do počítačových sítí nejrůznější telekomunikační služby, dosud řešené samostatnými prostředky - například distribuci multimediálních pořadů, přenos zvuku, obrazu apod.

Na počátku, v době svého postupného prosazování do života, se počítačové sítě také nutně musely přizpůsobovat stylu práce a zvyklostem lidí - musely se například chovat tak, aby „nebyly vidět", a uživatelé mohli i v síťovém prostředí pracovat v zásadě stejným způsobem, na jaký byli původně zvyklí. Teprve později, když už se počítačové sítě náležitě prosadily, si mohly dovolit začít měnit způsob práce lidí s výpočetní technikou. Až v poslední době a právě díky počítačovým sítím se tak začínají prosazovat různé formy skupinové práce, objevují se různé formy groupwaru, lidé si začínají zvykat na telecommuting (tj. na možnost pracovat na dálku ze svého domova], na výhody „globální vesnice", na přístup k plně interaktivním zdrojům informací skutečně v globálním měřítku, a další dříve netušené možnosti.

V tomto úvodním modulu celého seriálu nám ale nepůjde ani tak o nejmodernější techniky a zajímavé perspektivy počítačových sítí, jako spíše o pohled zpět do historie. Budeme se tedy dívat na počítačové sítě především jako na řešení určitých potřeb, které v určitém období vyvstaly a které počítačové sítě dokázaly efektivně pokrýt. Budeme se tedy ptát, jaké potřeby to byly, a jakým způsobem se s nimi dokázaly počítačové sítě vyrovnat. To nám totiž pomůže správně pochopit celou historii vývoje počítačových sítí, stejně tak jako většinu myšlenek a principů, které za dnešními sítěmi a jejich fungováním stojí.

Nevyhovující výpočetní model

Zřejmě největší motivací pro vznik počítačových sítí byl nevyhovující výpočetní model, který byl bez existence sítí praktikován. Co si ale pod tímto pojmem správně představit?

Pod pojmem „výpočetní model" si představujme způsob, jakým jsou provozovány celé aplikace i jejich jednotlivé části, způsob jakým uživatelé komunikují s těmito aplikacemi, způsob jakým jim zadávají svá vstupní data a přebírají si data výstupní atd. Úplně na počátku, když byl počítačový hardware ještě extrémně drahý a nevýkonný, mohl být přístup uživatelů k počítači pouze neinteraktivní a svou konkrétní podobu nacházel v tzv. dávkovém zpracování. To tedy byl úplně první výpočetní model.

Jakmile pak počítače poněkud vyspěly a jejich možnosti se zvýšily, dalo se přejít k interaktivním režimům práce. Pro ně ale musel být vypracován nový výpočetní model, posléze nazvaný host/terminál (to proto, že uživatelův program běžel na centrálním, tzv. hostitelském počítači, a uživatel s ním komunikoval prostřednictvím terminálu). Tento výpočetní model vydržel poměrně dlouhou dobu a ani dnes ještě zdaleka nezaniknul - uživatelé mu však vytýkali a dodnes vytýkají příliš malý komfort. Jak uvidíme přístě, neprávem (protože na vině není tento výpočetní model jako takový, ale způsob jeho implementace).

Výpočetní model host/terminál kraloval v době, kdy světu vládly tzv. střediskové počítače, a kdy ceny počítačů byly stále ještě tak vysoké, že nepřipadalo v úvahu dát každému uživateli jeho vlastní počítač k výhradnímu užívání. Tehdy bylo ještě nutné existující počítače sdílet, a právě model host/terminál tomu byl doslova šit na míru.

Ceny počítačů však neustále klesaly, až v určitém okamžiku klesly natolik, že přestalo být ekonomicky nevyhnutné sdílet jeden počítač více uživateli. Právě tehdy se na scéně objevily počítače s přívlastkem „osobní", který si skutečně zasloužily - mohly totiž být přiděleny jednotlivým uživatelům, kteří je měli jen a jen pro sebe, a nemuseli se o ně s kýmkoli dělit. Tím ale zanikly i terminály, a také jednotlivé aplikace a všechna data, původně umístěná „na jedné hromadě" na centrálním hostitelském počítači, se musela zreplikovat a rozdistribuovat na jednotlivé osobní počítače. Dosud dominující výpočetní model „host/terminál", počítající s centralizovaným umístěním všech významnějších zdrojů (nejen aplikací a jejich dat, ale také výpočetní kapacity, paměti, disků, a v neposlední řadě i podpůrné péče systémových programátorů, operátorů a techniků), tak byl nahrazen takovou situací, kterou asi nejlépe charakterizuje slogan „každý na svém písečku". Lidé, žehrající na malý komfort střediskových počítačů a aplikací pracujících v režimu host/terminál, si od tohoto kroku slibovali definitivní řešení všech svých problémů, a stejně tak i definitivní odstranění potřeby se s kýmkoli o cokoli dělit. Bohužel, byli zklamáni.

Ode zdi ke zdi, nebo zlatou střední cestou?

Nahrazení centralizovaného modelu host/terminál plně distribuovaným modelem, v rámci kterého byl každý jednouživatelský počítač „světem sám pro sebe", izolovaným od ostatních, skutečně vyřešilo mnoho problémů. Současně s tím ale přineslo velmi mnoho problémů nových, dosud netušených. Například ten, jak zajistit možnost spolupráce více uživatelů - třeba přístup k průběžně aktualizovaným údajům v jedné a téže databázi, práci na společném dokumentu apod. Nebo co třeba taková instalace nových aplikací? Co dříve stačilo udělat jednou, se nyní muselo dělat n-krát. Obecně to mnohdy vypadalo tak, že se sice podařilo vyřešit jeden problém, ale za cenu vzniku n jiných problémů.

Lidé kolem počítačů naštěstí celkem brzy pochopili, že svět vzájemně zcela izolovaných osobních počítačů je pouze opačný extrém k dosud plně centralizovanému světu střediskových počítačů. Pochopili, že něco se vyplatí dát každému uživateli zcela a výhradně k jeho výlučné dispozici, zatímco u jiných věcí to ještě dlouho nebude únosné (například aby každý měl sám pro sebe kvalitní a výkonnou laserovou tiskárnu), a u jiných věcí to nebude vhodné nikdy (třeba u sdílených dat). Tedy že tak jako obvykle nakonec stejně zvítězí zlatá střední cesta, jako vhodný kompromis mezi oběma extrémy.

V našem konkrétním případě tímto kompromisem bylo vzájemné propojení dosud izolovaných osobních počítačů a možnost sdílení takových věcí, u kterých to je žádoucí. A právě v tomto okamžiku se na scéně začínají objevovat první lokální počítačové sítě, začíná se hovořit o file serverech (pro sdílení souborů), print serverech (pro sdílení tiskáren) a dalších druzích serverů, a obecně o sítích serverového typu, a o modelu file server/pracovní stanice.

Sítě mění výpočetní model

Lokální počítačové sítě serverového typu musely nejprve velmi dbát na to, aby o jejich podstatě uživatelé vůbec nemuseli vědět, nemuseli si uvědomovat že něco s někým sdílí a mohli si myslet, že pracují na zcela samostatných osobních počítačích. Teprve později se existenci počítačových sítí začaly přizpůsobovat i jednotlivé aplikace, které se snažily využít síť lépe a efektivněji, než jen pro společná skladiště souborů - aplikace se začínají štěpit na části, které jsou provozovány na různých uzlech sítě: nejčastěji na dvě části, z nichž jedna běží na některém centrálním uzlu, kde má k dispozici různé místní zdroje, a druhá na pracovní stanici uživatele, kde zejména zajišťuje komunikaci s tímto uživatelem. Ano, vzniká dnes tak populární výpočetní model klient/server, kterým se samozřejmě budeme zabývat podrobněji.

Tím však není vývoj výpočetního modelu zdaleka ukončen. V současné době se například začíná na obzoru objevovat zcela nový výpočetní model, který dosud nemá ani příliš ustálené jméno - nejvýstižnější je zřejmě jeho označení „network-centric computing". Lze jej připodobnit k situaci, kdy jsou celé aplikace či jejich jednotlivé části umístěny „někde v síti", a na počítač uživatele jsou přenášeny a zde spouštěny až v okamžiku, kdy jsou skutečně požadovány. Ale o tom si povíme podrobněji až v závěru tohoto modulu.