Vyšlo v týdeníku Computerworld č. 4/94,
Vytištěno z adresy: http://www.earchiv.cz/a94/a404c503.php3

Spoje vs. počítačové sítě

Tento článek vyšel v tzv. tématu týdne v CW 6/94, jako třetí ze série článků věnovaných historii komunikací.

Komunikace jsou oborem, který má za sebou poměrně dlouhou historii - začneme-li ji počítat od počátků telegrafie v minulém století, pak je to již 150 let. To je dostatečně dlouhá doba na to, aby si komunikace stačily vybudovat takové postavení, jaké jim jistě právem náleží: od všeobecného povědomí lidí o významu a nutnosti komunikací přes legislativní rámec pro svou činnost až po vybudování určité materiální i vědecko-výzkumné základny. Kromě toho si také již stačily vybudovat fungující systém výchovy nových odborníků - vždyť studovat různé obory, které se bezprostředně týkají komunikací a spojů, lze dnes prakticky na každé vysoké škole technického zaměření.

Naproti tomu počítačové sítě jsou oborem velmi mladým. Ve vyspělých zemích se jeho historie sice již měří dvoucifernými čísly, ale jinde (například u nás), na to stále stačí čísla jednociferná. Do povědomí širší veřejnosti se počítačové sítě sice již také stačily dostat, ale jejich chápání je mnohdy spojeno buď s nekritickým obdivem, který značně přeceňuje jejich reálné možnosti, nebo je naopak spojeno s nepochopením a nedoceněním skutečných možností dnešních počítačových sítí. Samostatný legislativní rámec pro budování a provozování počítačových sítí většinou ještě neexistuje, a místo toho jsou na počítačové sítě aplikována ustanovení, týkající se spojů a komunikací obecně.

Také lidé, kteří se počítačovými sítěmi zabývají, se vesměs rekrutují z jiných oborů. Nejčastěji jde o různé profese, které mají co do činění s výpočetní technikou jako takovou - od systémových a aplikačních programátorů přes analytiky až po techniky, kteří se zajímají hlavně o hardware. Další velkou skupinou "lidí od počítačových sítí" jsou lidé, kteří byli původně "lidmi od spojů". Prakticky všichni se ale museli sami naučit to, co o počítačových sítích potřebují znát - jako snad u každého velmi mladého oboru je i výuka počítačových sítí na vysokých školách zatím v počátcích, a pokud se vůbec učí, tak nejčastěji jen jako jeden z předmětů na jiných studijních oborech, a nikoli jako základní směr studia. Inu, všechno chce svůj čas.

V praxi tedy vedle sebe existují dva různé světy: svět "lidí od spojů", a svět "lidí od počítačových sítí". Oba mají mnoho společného, ale také mnoho odlišností. Ty nevychází jen z délky jejich existence, ale především z různých pohledů na to, jak by některé věci měly být řešeny a jak by měly fungovat. Tyto světy zdaleka nejsou vždy disjunktní - navzájem se ovlivňují svými myšlenkami a technikami, které si mezi sebou předávají či přebírají, a v důsledku toho se pak mohou vzájemně vzájemně prorůstat do takové míry, že někdy je prakticky nemožné je rozlišit. Oba tyto světy se navzájem potřebují, ale občas si také tvrdě konkurují. Jejich vzájemný vztah může být velmi kladný a konstruktivní, ale stejně tak i ostře antagonistický - vše záleží na konkrétních lidech a jejich přístupu.

Udělejme si nyní malou procházku po hraničním pásmu mezi oběma těmito světy. Přitom si naznačme, jaké techniky a postupy se používají na jedné či obou stranách hranice, a v čem se přístupy a názory obou stran mohou významněji lišit.

Analogově nebo digitálně?

Morseův telegraf, který zahájil celou éru moderních komunikací, měl digitální charakter. S příchodem Bellova telefonu, který je naopak vysloveně analogovým zařízení, převládly ve světě spojů analogové přenosy a analogové zpracování přenášených signálů. Teprve v poslední době se pak i svět spojů začíná vracet k digitálním přenosům. Naproti tomu svět "lidí od počítačových sítí" byl od začátku světem digitálním.

V čem ale spočívá rozdíl mezi analogovým a digitálním? Analogová veličina je veličinou spojitou, a jako taková může nabývat nekonečně mnoha různých hodnot - a právě v tom je hlavní zdroj problémů. Například přenos analogové veličiny (signálu) je vždy zatížen určitým zkreslením, útlumem a dalšími změnami přenášené veličiny (což je dáno reálnými obvodovými vlastnostmi přenosových cest). V důsledku toho nelze analogovou veličinu nikdy přenést naprosto přesně - její přenos je vždy zatížen určitou mírou nepřesnosti (zkreslení), a záleží na konkrétní situaci a konkrétních hodnotách, zda je tato míra podstatná, zanedbatelná, či například zcela neměřitelná (při dané rozlišovací schopnosti měřících přístrojů). Přesně stejná úvaha pak platí i pro jakékoli zpracování analogových veličin, které také není nikdy ideální, ale je vždy zatíženo určitou nepřesností. Ještě horší je situace v případě, kdy analogová veličina postupně prochází celým řetězcem zpracování a přenosů, a nepřesnosti jednotlivých prvků tohoto řetězce se přitom akumulují (mnohdy se spíše násobí).

Lidé sice dokázali dovést technologie a techniky pro přenos analogových veličin k takové dokonalosti, že míra jejich nepřesnosti (zkreslení) může být únosně malá. Problém je ovšem v tom, že toto řešení je technicky náročné, a hlavně také velmi nákladné - zejména v porovnání s digitálním přenosem a digitálním zpracováním.

Digitální veličina je takovou veličinou, která může nabývat jen konečného počtu různých hodnot. Někdy se v této souvislosti hovoří také o diskrétní veličině, resp. veličině, která může nabývat vždy jen diskrétních hodnot (tedy hodnot, které jsou od sebe navzájem odděleny, zatímco možné hodnoty analogové veličiny na sebe spojitě navazují, resp. vždy tvoří souvislé intervaly).

Přenos digitální veličiny je v obecném případě také zatížen určitou mírou nepřesnosti (i když zde se hovoří spíše o chybovosti), ale je nepoměrně jednodušší ji udržet na nulové úrovni, resp. ji zcela eliminovat. Totéž platí i pro zpracování digitálních veličin.

Digitální veličinu, na rozdíl od analogové, je tedy možné přenést s ideální přesností. Dokonce je možné ji nechat projít celým řetězcem přenosů a zpracování, a přitom se zcela vyhnout jakékoli nepřesnosti (chybovosti). Jak je to ale možné?

Intuitivní představu o tom, že digitální veličinu lze "rekonstruovat" naprosto přesně, zatímco analogovou nikoli, lze velmi názorně dokumentovat na následujícím příkladu (který má navíc velmi blízko ke skutečné praxi):

představme si, že potřebujeme přenést digitální veličinu, ale k dispozici máme jen takový prostředek přenosu (přenosovou cestu), který je uzpůsoben pro přenos analogových veličin (signálů). Proto to uděláme tak, že každé z možných hodnot diskrétní veličiny přiřadíme celý interval možných hodnot analogové veličiny, a ve skutečnosti budeme přenášet právě tuto analogovou veličinu. Pokud by šlo například o binární (tj. dvouhodnotovou) diskrétní veličinu, a k dispozici bychom měli analogový přenosový kanál, schopný přenášet elektrický proud (a tím i el. napětí), mohli bychom za jednu diskrétní hodnotu považovat nezáporné napětí na přenosovém kanálu, a za druhou diskrétní hodnotu naopak záporné napětí. Pokud bychom pak například na vysílající straně vyslali impuls o napětí 5 V, a na druhé straně vlivem zkreslení a útlumu přijali impuls jen o napětí 4,9 V, bylo by to stále ještě nezáporné napětí, reprezentující tutéž diskrétní hodnotu, která byla původně vyslána. Navíc, pokud bychom potřebovali tuto diskrétní hodnotu vyslat dále, mohli bychom ji opět znázornit impulsem o napětí 5 V, a tím zcela eliminovat zkreslení, které by se v případě analogového přenosu postupně akumulovalo.

Jak digitalizovat lidský hlas?

Digitální přenos je tedy v mnoha ohledech výhodnější, než přenos analogový. Proč tedy v oblasti spojů tak dlouho dominoval právě přenos analogový, a proč zde dochází k přechodu na digitální přenosy a digitální zpracování až v poslední době?

Odpověď má dvě části. Tou první je časový faktor: pomineme-li telegraf, digitální technologie schopné masovějšího nasazení se objevily přeci jen později, než technologie analogové.

Snad ještě závažnější je ale druhý důvod: i když je digitální přenos a zpracování v mnoha směrech výhodnější než analogové, existuje jedna oblast, ve které je tomu spíše naopak. Tato oblast je přitom zvlášť důležitá právě pro sféru spojů, které mají nejčastěji za úkol přenášet lidský hlas. Problém přitom spočívá v tom, že "nasnímání" lidského hlasu a jeho převod na veličinu analogového charakteru (např. el. proudu, resp. napětí) je záležitostí téměř triviální - stačí k tomu obyčejný mikrofon (který poprvé sestrojil německý učitel J.P.Reis v roce 1860). Stejně tak je tomu i pro zpětnou rekonstrukci lidského hlasu z analogové veličiny (ke které stačí obyčejný reproduktor).

Převést lidský hlas do digitální podoby (tedy vyjádřit jej pomocí digitální veličiny) je nesrovnatelně těžší. První Morseův telegraf mohl být digitálním hlavně díky tomu, že vůbec nepracoval s lidským hlasem, a navíc veškerou "digitalizaci" svěřil lidem (kteří museli ručně převádět jednotlivé znaky textových zpráv do digitální Morseovy abecedy).

Na způsob, jak zdigitalizovat lidský hlas, přišel v roce 1936 pan Alec Reeves. Jeho technika, označovaná jako pulzně kódová modulace (PCM, Pulse Coded Modulation) je založena na myšlence, že lidský hlas se nejprve čistě analogovým způsobem "nasnímá", tj. pomocí mikrofonu se převede na analogovou veličinu. Hodnota této analogové veličiny se pak bude v pravidelně se opakujících okamžicích snímat (tzv. vzorkovat). Naměřené hodnoty (vzorky) sice budou stále ještě analogového charakteru, ale budou to jednorozměrná čísla, která již lze převést do číslicové podoby (samozřejmě s jistým zaokrouhlením). Pravidelným vzorkováním analogového signálu a digitalizací jednotlivých vzorků tak vzniká posloupnost digitálních dat. Pro potřeby přenosu se na ni můžeme dívat jako na spojitý proud nul a jedniček (předpokládáme-li mlčky binární kódování), zatímco příjemce je bude rozdělovat na stejně velké části, které bude považovat za číslicové vyjádření hodnoty jednotlivých vzorků (tj. za vzorky původního analogového signálu). Příjemce pak pomocí zvláštního obvodu (tzv. digitálně-analogového převodníku) z těchto vzorků zpětně zrekonstruuje původní analogový signál, a z něj pak již jednoduchým způsobem (např. pomocí reproduktoru) i původní lidský hlas.

Myšlenka je to jistě jednoduchá, a použitelná obecně pro digitalizaci jakékoli analogové veličiny. V případě lidského hlasu jsou ale velmi zajímavé i některé kvantitativní aspekty, které se týkají i jiných způsobů přenosu lidského hlasu.

Člověk je schopen vnímat zvuky o frekvenci od cca 30 Hz do cca 15 000 Hz (15 KHz), samozřejmě s možností individuálních odchylek. Výrobci všelijaké reprodukční techniky vás jistě budou přesvědčovat o tom, že pro věrnou reprodukci je nutné ještě širší frekvenční pásmo. Praktickými pokusy se ale zjistilo, že pokud jde o lidský hlas (a nikoli tedy hudbu), stačí pro dosažení dobré srozumitelnosti přenášet frekvence jen od cca 300 do 3400 Hz (neboli frekvenční pásmo o šířce 3100 Hz). Díky tomuto pozorování pak mohli provozovatelé telefonních služeb přistoupit k umělému omezení frekvenčního pásma přenášených telefonních hovorů právě na oněch 300 až 3400 Hz (aby tak mohli "vměstnat" více telefonních hovorů do takového přenosového pásma, jaké mají k dispozici - viz dále).

Pro techniku pulzně kódové modulace (PCM) je ovšem velmi podstatné, jak často má vzorkovat analogový signál takovéhoto frekvenčního rozsahu, aby jej bylo možné zase zpětně rekonstruovat (s dostatečnou věrností). Zde se uplatnil jeden známý teoretický výsledek (tzv. Nyquistův teorém): podle něj musí být analogový signál vzorkován nejméně dvakrát za každou svou periodu (neboli: dvakrát tak rychle, než kolik činí jeho frekvence). Vzhledem k maximální frekvenci přenášeného signálu (3400 Hz) byla zvolena frekvence vzorkování 8000 Hz (neboli: 8000 vzorků za sekundu, tj. 1 vzorek každých 125 mikrosekund).

Za jednu sekundu digitalizace tedy vznikne 8000 vzorků, které je třeba vyjádřit v číslicové podobě. Od toho, kolik bitů se použije pro vyjádření hodnoty jednoho vzorku, pak bude do značné míry záviset "věrnost" digitalizovaného lidského hlasu.

Opět po řadě experimentů se ukázalo, že pro dostatečnou srozumitelnost lidského hlasu postačuje vyjádřit hodnotu každého vzorku jako jedno sedmi či osmibitové číslo (přesněji: v Evropě se používá 8 bitů, zatímco v Americe dávají přednost 7 bitům). Osm tisíc vzorků za sekundu, každý o velikosti 8 bitů, dává celkem 64 000 bitů. K přenosu digitalizovaného lidského hlasu je proto zapotřebí přenosová cesta s přenosovou rychlostí 64 kbit/sekundu (resp. 56 kbit/sekundu, při znázornění každého vzorku jen v 7 bitech). Dnes ovšem existují i jiné způsoby kódování, které dokáží vystačit i s podstatně menšími přenosovými rychlostmi.

Ačkoli podstata techniky PCM je známa již téměř 50 let, její masovější nasazení se stalo možné (a hlavně cenově únosné) až v nepříliš dávné době, díky pokrokům v polovodičových a jiných technologiích.

Frekvenční nebo časový multiplex?

Jak analogové, tak i digitální přenosy se musí umět vyrovnat s jedním základním úkolem: s tím, jak využít jednu přenosovou cestu o velké kapacitě pro několik samostatných přenosových kanálů, které by jinak používaly vlastní přenosové cesty. Typickým příkladem může být vzájemné propojení telefonních ústředen: to nebývá realizováno mnoha a mnoha individuálními přenosovými cestami (páry vodičů), z nich každý by přenášel vždy jeden telefonní hovor. Místo toho jsou telefonní ústředny propojovány spíše menším počtem přenosových cest o větší přenosové kapacitě, po kterých se přenáší více telefonních hovorů současně. Jinak by ani nebylo dost dobře myslitelné telefonní spojení mezi městy či celými kontinenty, které je realizováno podzemními či podmořskými kabely, nebo družicovými spoji.

Analogová technika se na přenosovou cestu s větší kapacitou dívá jako na přenosový okruh, schopný přenášet širší frekvenční pásmo. Proto se snaží rozdělit toto jedno široké frekvenční pásmo na několik užších frekvenčních pásem, a v každém z nich přenášet "samostatný" analogový signál. V praxi to ovšem znamená, že každý jednotlivý signál musí nejprve frekvenčně upravit (posunout) tak, aby se "vešel" do jeho vyhrazeného frekvenčního pásma, a pak všechny takto frekvenčně upravené signály sloučit (tak, aby vznikl jediný výsledný signál, zaplňující celé široké frekvenční pásmo). Na straně příjemce pak následuje přesně opačný proces - výsledný signál je zpětně rozdělen na jednotlivé dílčí signály, a tyto jsou pak znovu frekvenčně upraveny (posunuty zpět do své původní "frekvenční polohy").

Tato technika se označuje jako tzv. frekvenční multiplex (FDM, Frequency Division Multiplexing). Svou celkovou filosofií i způsobem realizace je čistě analogovou technikou.

Naopak digitální technika se na přenosovou cestu s větší kapacitou dívá jako na přenosový okruh s vyšší přenosovou rychlostí, a tedy schopný přenést větší počet bitů za časovou jednotku. Jeden souvislý proud bitů, přenášený velkou rychlostí, proto cyklicky alokuje (přiděluje) jednotlivým dílčím kanálům - každý z nich dostane pravidelně přidělen určitý počet bitů (přesněji: časových intervalů, ve kterých se přenáší jednotlivé datové bity), a ty může využít pro přenos "svých" dat (a pak čekat, než na něj znovu přijde řada). Efekt je tedy takový, jako kdyby byla jedna přenosová cesta vždy na krátký časový úsek "přepnuta" jednomu dílčímu kanálu, pak dalšímu atd., dokud se postupně nedostane na všechny, a pak se vše opakuje. Proto se také této technice říká časový multiplex (TDM, Time Division Multiplexing)

Analogová nebo digitální paměť?

Existence časového multiplexu, který je v zásadě digitální technikou, je umožněna také tím, že data digitálního charakteru je možné poměrně snadno uchovávat v pamětech, zatímco u analogových signálů by to bylo neúnosně náročné. U digitálních přenosů je pak poměrně snadné přizpůsobovat se různým přenosovým rychlostem v celém řetězci na sebe navazujících přenosových cest. Při přechodu z pomalejší na rychlejší přenosovou cestu je možné přicházející data určitou dobu akumulovat ve vhodné vyrovnávací paměti (často označované také jako buffer), a pak je vyslat vyšší rychlostí po rychlejší přenosové cestě. Na druhé straně je pak možné přijmout rychleji přenášená data do obdobné vyrovnávací paměti, a z ní je pak již pomaleji vysílat po další přenosové cestě s nižší přenosovou rychlostí. U analogových přenosů není nic takového prakticky možné, analogový přenos nemůže být po cestě jakkoli "zastavován" či alespoň "zpomalován".

Přenosová kapacita trvale, nebo až při skutečné potřebě?

Techniky frekvenčního i časového multiplexu mají jednu společnou nevýhodu: přidělují přenosovou kapacitu bez ohledu na to, zda je či není skutečně požadována. Je-li například jedna přenosová cesta rozdělena pomocí techniky frekvenčního multiplexu pro potřeby přenosu určitého počtu telefonních hovorů, má každý z nich přidělenu určitou část této celkové přenosové kapacity bez ohledu na to, zda ji skutečně využívá nebo nikoli. Tedy bez ohledu na to, zda některý z účastníků příslušného telefonního hovoru právě něco říká, nebo oba současně mlčí.

Strategie trvalého přidělování přenosové kapacity, bez ohledu na její skutečnou potřebu, má samozřejmě četné výhody. Například tu, že při ní odpadá režie na zjišťování, zda je přenosová kapacita požadována či nikoli. Dále je tato strategie výhodná u takových druhů přenosů, které mají trvalejší charakter (nikoli nárazový), a dokáží trvale přidělenou přenosovou kapacitu rovnoměrně využít (příkladem může být přenos televizního signálu). Jistou atraktivnost pak mohou v této strategii spatřovat ti, kteří si za trvale přidělenou přenosovou kapacitu nechávají platit.

Existuje však i celá řada případů, kdy tato strategie není výhodná. Například většina datových přenosů v počítačových sítích má spíše nárazový charakter, a trvalé přidělování přenosové kapacitu je v jejich případě velmi neefektivní. Zde je pak mnohem výhodnější přidělovat přenosovou kapacitu až na základě její skutečné potřeby.

V terminologii "lidí od spojů" je přidělování přenosové kapacity až na základě skutečné potřeby označováno jako statistický multiplex (někdy též jako asynchronní, zatímco časový multiplex bývá označován také jako synchronní). Ve sdělovací technice je tato strategie používána relativně málo (nejvíce asi u dálkových spojů). Její konkrétní podobou pro přenos telefonních hovorů je technika, označovaná jako TASI (Time Assigned Speech Interpolation). Ta mj. využívá i skutečnost, že pro přenos telefonního hovoru není nikdy potřeba přenášet signál oběma směry současně (schválně si to zkuste - budete-li mluvit do telefonu oba současně, uslyšíte každý jen sám sebe). Proto také technika TASI přiděluje na základě skutečné potřeby místo obousměrných okruhů jen jednosměrné kanály. Praktické zkušenosti ukazují, že tímto způsobem je možné vystačit jen s cca 40% přenosové kapacity, než jaká by byla zapotřebí bez statistického multiplexu ve formě techniky TASI.

Přepojování okruhů nebo přepojování paketů?

V terminologii "lidí od počítačových sítí" je trvalé přidělování přenosové kapacity, bez ohledu na její skutečnou potřebu, označováno jako přepojování okruhů (circuit switching). Přenosová cesta, vytvořená tímto způsobem, se sice může skládat z několika dílčích úseků, ale tyto nejsou z pohledu datových přenosů vůbec patrné - celá přenosová cesta se jeví jako jediný celek. To mj. znamená, že přenášená data nejsou v průběhu přenosu nikde ukládána (ve vyrovnávacích pamětech). To je samo o sobě spíše výhodou. Výraznou nevýhodou je ovšem nárazový charakter datových přenosů v počítačových sítích, který trvale přidělenou přenosovou kapacitu nedokáže trvale využít.

Analogií statistického multiplexu je pro "lidi od počítačových sítí" tzv. přepojování paketů (packet switching). Při něm jsou data sdružována do bloků (tzv. paketů), a tyto jsou přenášeny jako celky - přenosová cesta je tedy vždy "přidělena" na přenos celého paketu. Ten je vyslán buď okamžitě, je-li přenosová cesta volná, nebo se nejprve řadí do výstupních front, ze kterých pak jsou jednotlivé pakety postupně odesílány (buď podle určitého systému priorit, nebo bez jakéhokoli "předbíhání"). Tímto způsobem pak může být celková přenosová kapacita určitého spoje velmi spravedlivě a efektivně rozdělována mezi všechny aktuální zájemce o její využití.

Spojovaně nebo nespojovaně?

Jedním ze zásadních rozdílů mezi telekomunikačními a poštovními službami je již samotný charakter jimi poskytovaných služeb. Posíláte-li někomu dopis, opatříte jej adresou příjemce a předáte k doručení poště. Ta dopis převezme, a v dobré víře, že adresát existuje, se jej snaží doručit. Podáte-li současně dva dopisy jednomu a témuž adresátovi, může se snadno stát, že každý z nich bude doručován jinou cestou, a že tedy jeden z nich dojde dříve, a druhý později - pošta totiž přenáší každý dopis samostatně.

Když si potřebujete s někým promluvit po telefonu, musíte nejprve vytočit jeho telefonní číslo. Dotyčný musí akceptovat vaše volání (musí zvednout sluchátko), a tím umožnit navázání spojení mezi oběma stranami. Teprve pak s ním můžete hovořit, a po skončení hovoru zase musíte spojení zrušit (tím, že první z vás zavěsí).

V terminologii "lidí od počítačových sítí" jsou tyto dvě varianty poskytovaných služeb označovány jako nespojované (connectionless, jako v případě listovní pošty), resp. jako spojované (connection-oriented, jako v případě telefonních hovorů). Obě varianty se přitom nejčastěji vztahují na situaci, kdy mezi odesilatelem a koncovým příjemcem neexistuje přímé spojení, ale pouze takové spojení, které prochází přes několik mezilehlých uzlů.

V případě nespojovaného přenosu jsou jednotlivé bloky dat (pakety) přenášeny samostatně, tj. nezávisle na sobě. Každý jednotlivý paket je opatřen úplnou adresou svého příjemce, a je přenášen cestou, která je volena jen a jen pro něj (v důsledku toho mohou být různé pakety přenášeny ke stejnému cíli různými cestami, a tudíž není zaručeno, že budou doručovány ve správném pořadí. Před vysláním jednotlivých paketů není předem zjišťováno, zda jejich koncový příjemce existuje, a je schopen pakety přijmout. Není navazováno ani žádné jiné spojení mezi odesilatelem a příjemcem.

Naproti tomu v případě spojovaného přenosu je mezi odesilatelem a koncovým příjemcem nejprve navázáno spojení, a v rámci toho je i vytyčena cesta, po které budou následně přenášeny datové pakety. Tyto pak již nemusí být opatřeny adresou svého příjemce, ale pouze identifikátorem vytyčené cesty. Všechny pakety jsou přitom přenášeny právě touto (a tudíž stejnou) cestou, a díky tomu je zaručeno i správné pořadí jejich doručování.

Výhodnost jednotlivých variant pro potřeby datových přenosů nelze obecně stanovit. Pro přenosy větších objemů dat je výhodnější přenos spojovaný, který má sice větší jednorázovou počáteční režii (na navázání spojení), ale na druhé straně zase menší průběžnou režii na přenos jednotlivých bloků dat. Naproti tomu nespojovaný přenos dat je výhodnější pro přenosy menších objemů dat, protože má nulovou počáteční režii (díky tomu, že nenavazuje žádné spojení).

Spolehlivě nebo nespolehlivě?

Při analogových přenosech se veškeré nedokonalosti přenosových cest (resp. jejich reálné obvodové vlastnosti) projevují zkreslením, útlumem či jinými změnami přenášeného signálu. Obrana proti nim přitom vede především cestou minimalizace negativních vlivů (různými kompenzacemi reálných obvodových vlastností apod.). V případě digitálních přenosů je citlivost na všechny negativní vlivy výrazně menší, a mnohem snáze se odstraňuje (viz výše). Přesto se chybám v přenášených datech nelze nikdy se stoprocentní jistotou vyhnout. Existují samozřejmě různé techniky, které umožňují detekovat, zda určitý blok dat byl přenesen bez chyb či s chybami (jde například o použití různých druhů parity, kontrolních součtů, CRC kódů apod.). Existuje-li pak zpětná vazba mezi odesilatelem a příjemcem, může se příjemce po přijetí poškozených dat ozvat a vyžádat si jejich nový přenos.

Velmi zajímavou otázkou je ale to, kdo se má starat o detekci chyb, a hlavně pak o jejich nápravu.

Počítačové sítě jsou dnes budovány téměř výlučně podle tzv. vrstvových modelů. Velmi zjednodušeně řečeno to znamená, že v každém uzlu sítě existuje několik hierarchických vrstev, a každá z nich má na starosti určité specifické úkoly. Nižší vrstvy se obecně starají o přenos dat, zatímco vyšší vrstvy již vychází vstříc vlastním aplikacím, a snaží se jim poskytovat nejrůznější podpůrné služby.

Úkol postarat se o nápravu všech chyb při přenosech lze samozřejmě svěřit již nejnižším síťovým vrstvám. Ty pak díky tomu zajišťují takové přenosové služby, které se označují jako spolehlivé (reliable). Jejich spolehlivost ovšem stále nemůže být absolutní (protože absolutně spolehlivé nejsou z principu ani metody detekce chyb v přenášených datech). V důsledku toho je skutečná spolehlivost "spolehlivých" přenosových služeb vždy jen relativní. Záleží pak na uživatelích této přenosové služby (tj. na vyšších vrstvách, resp. na vlastní aplikaci), zda tuto spolehlivost bude považovat za dostatečnou, či nikoli. Pokud ne, bude si požadovanou míru spolehlivosti zajišťovat znovu a sama.

Problém je ovšem v tom, že zajištění spolehlivosti přenosových služeb (navíc nikdy ne absolutní), je vždy spojeno s nezanedbatelnou režií. Pokud si spolehlivost zajišťuje vlastními prostředky několik vrstev současně, jejich režie se samozřejmě sčítají. Jindy zase nemusí být spolehlivost přenosů požadována vůbec.

Proto mají své oprávnění i takové přenosové služby, které se označují jako nespolehlivé (unreliable). Jejich označení ovšem není vhodné chápat tak, že samy a z vlastní iniciativy způsobují chyby či dokonce bezdůvodně zahazují celé bloky dat. Nespolehlivost těchto služeb je třeba chápat v tom smyslu, že se sice snaží o bezchybový přenos, ale jakmile zjistí, že se nepodařil, nepodnikají žádné nápravné akce (a chybně přijatá data jednoduše ignorují). Nápravné akce tak ponechávají až na toho, kdo skutečně pociťuje potřebu spolehlivého přenosu, resp. kdo si ji raději chce zajišťovat ve vlastní režii. Významnou výhodou je pak i to, že nespolehlivé přenosové služby mohou být rychlejší, než obdobné spolehlivé služby.

Představa "lidí od spojů" a představa "lidí od počítačových sítí"

Odlišnost světa "lidí od spojů" a světa "lidí od počítačových sítí" je dobře patrná právě na jejich představě o tom, jakou povahu by měly mít datové přenosy.

"Lidé od spojů" mají velkou tradici v přenosových službách charakteru přepojování okruhů - takto totiž funguje většina komunikačních sítí, které spojové organizace provozují. Nejmarkantnějším příkladem je veřejná telefonní síť. Dalším charakteristickým rysem většiny telekomunikačních služeb je jejich spojovaný charakter.

Naproti tomu "lidé od počítačových sítí" dávají jednoznačně přednost přenosům na bázi přepojování paketů. Rozhodnutí o tom, zda přepojování paketů má být realizováno jako spolehlivé či nespolehlivé, a zda má mít spojovaný či nespojovaný charakter, pak většinou ponechávají až na konkrétní aplikaci, která tyto přenosy bude používat.

Představa "lidí od spojů" je v tomto ohledu mnohem vyhraněnější, a projevuje se zejména v koncepci veřejných datových sítí (které jsou zřizovány a provozovány právě "lidmi od spojů"). Veřejné datové sítě fungují obvykle na principu přepojování paketů (i když někde i na bázi přepojování okruhů), a základní přenosové služby, které poskytují, jsou pouze spojovaného a spolehlivého charakteru. Nespojované služby, pokud vůbec, jsou dostupné jen jako zvláštní vylepšení. Má to ostatně i svojí logiku - za spolehlivé služby (které samozřejmě nejsou spolehlivé absolutně) je možné požadovat vyšší ceny.

Rozdíl mezi oběma světy se v praxi projevil ještě jedním zajímavým způsobem.

Představ o tom, jak mají být budovány počítačové sítě (tj. podle jakého vrstvového modelu) existuje celá řada. Většina z nich jsou představy, které si vytvořili a v praxi také naplňují jednotliví výrobci (jsou to například síťové architektury SNA, DECnet, XNS, IPX/SPX apod.). Kromě toho ale existují také dvě představy, kterým se dostává všeobecného uznání, a které stojí "nad" konkrétními výrobci - protože nejsou dílem žádného jednotlivého výrobce. Obě tyto představy vykrystalizovaly zhruba ve stejné době (na přelomu sedmdesátých a osmdesátých let), ale jejich celková filosofie je až nápadně odlišná.

První z nich je tzv. rodina protokolů TCP/IP, což je ve skutečnosti celá tzv. síťová architektura, neboli velmi ucelený názor na to, jak by počítačové sítě měly vypadat a fungovat (doplněný konkrétními protokoly pro naplnění těchto představ). Tvůrci této síťové architektury, které si dovolím označit za typické "lidi od počítačových sítí", postupovali metodou zobecnění již existujícího a fungujícího: kodifikovali výsledky, ke kterým dospěli po teoretickém výzkumu a praktickém ověření (obojí přitom bylo financováno z prostředků ministerstva obrany USA). Další vývoj této síťové architektury se pak ubíral cestou postupného zdokonalování a přidávání dalších prvků, funkcí, schopností a protokolů, které nejprve musely prokázat svou životaschopnost alespoň na různých pilotních projektech.

Síťová architektura rodiny protokolů TCP/IP přitom jednoznačně preferuje přenosy na bázi přepojování paketům, na úrovni nižších vrstev realizované jako nespojované a nespolehlivé, zatímco zajištění případné spolehlivosti přenosů (i případné změny nespojovaného charakteru přenosů na spojovaný) ponechává jako úkol vyšším vrstvám. Vlastním aplikacím pak dává možnost výběru, zda chtějí využívat spolehlivé a spojované, či nespolehlivé a nespojované přenosové služby.

Druhou významnou představou o tom, jak mají počítačové sítě vypadat a fungovat, je tzv. referenční model ISO/OSI (Reference Model for Open Systems Interconnection), vytvořený mezinárodní organizací pro standardizaci (ISO - International Organization for Standardization). Na rozdíl od rodiny protokolů TCP/IP však vznikal spíše "od zeleného stolu", za kterým seděli hlavně "lidé od spojů".

Referenční model ISO/OSI ve své původní podobě předpokládal pouze přenosové služby spojovaného a spolehlivého charakteru, a jeho nižší vrstvy byly do značné míry ovlivněny filosofií veřejných datových sítí. Teprve dodatečně, pod silným tlakem "lidí do počítačových sítí", byly do tohoto modelu začleněny jako alternativní i služby nespojovaného a nespolehlivého charakteru. Samotný repertoár poskytovaných služeb (zejména na nejvyšší, tj. aplikační úrovni), byl přitom přitom koncipován spíše maximalisticky - nezřídka sem bylo zařazeno všechno, co by podle představy autorů "mohl někdo někdy potřebovat". Při praktické realizaci se pak musí hledat rozumně implementovatelné podmnožiny.