Vyšlo v týdeníku CHIPweek č. 21/96, 20. května 1994
Vytištěno z adresy: http://www.earchiv.cz/a96/a621k150.php3

Sítě ATM

Technologii ATM (Asynchronous Transfer Mode) je v dnešní době věnována obrovská pozornost, a to jak ve „světě počítačů", tak i ve „světě spojů". Oba tábory, které až dosud neměly příliš mnoho styčných bodů, ji shodně považují za svůj perspektivní cíl, ke kterému chtějí směřovat. Jak je to možné, a co je vlastně ATM zač?

Jeden z možných přístupů k vysvětlení podstaty technologie ATM je její zasazení do kontextu sítí ISDN, o kterých jsme si povídali minule. Zde jsme si také řekli, že „klasické" ISDN, které jsme si popisovali, je se svými kanály o rychlosti 64 kbps pro mnoho účelů příliš pomalé. Zcela zákonitě se proto objevily snahy po zrychlení sítí ISDN tak, aby tyto vyhověly i značně vyšším požadavkům na přenosové rychlosti. Ovšem výraznější zrychlení ISDN znamenalo opustit dosavadní „telefonní" platformu, předpokládající využití stávajících účastnických přípojek (a tzv. spojů T1 o rychlosti 1,54 Mbps, používaných taktéž v telefonii), protože zde již nebyl dostatečný potenciál pro významnější zvyšování rychlostí. Vzhledem k fyzikálním zákonům to znamenalo přejít na jiné druhy přenosových médií (přenosových cest), s větší šířkou přenosového pásma (angl. bandwidth) - na které závisí i nejvyšší dosažitelná přenosová rychlost. Proto se také v této souvislosti hovoří o „původní" variantě ISDN jako o tzv. úzkopásmové variantě ISDN (narrowband ISDN), zatímco „nová" varianta je označována jako širokopásmové ISDN (broadband ISDN). Příkladem přenosových cest, které nabízí dostatečnou šířku přenosového pásma a umožňují tudíž dosahovat velmi vysokých přenosových rychlostí, jsou optická vlákna.

Přechod na „netelefonní" přenosové cesty však znamenal použít i jiné techniky přenosu dat po těchto přenosových cestách - ať již na fyzické úrovni, bezprostředně vázané na dané přenosové médium a zajišťujících přenos jednotlivých bitů, tak i na úrovni poněkud vyšší, zajišťující přenos celých bloků dat (rámců). Jelikož pro potřeby širokopásmového ISDN nebylo nic dostatečně vhodného k dispozici, byly takovéto techniky nově vyvinuty. No a technologie ATM je právě takovouto technologií, vyvinutou pro potřeby širokopásmového ISDN.

ATM nepřenáší data

ATM přitom není technologií na nejnižší fyzické úrovni, která by zajišťovala skutečný fyzický přenos jednotlivých datových bitů. Je technologií „o patro výše", která sama využívá jinou existující technologii pro vlastní fyzický přenos a stará se především o to, jak tyto možnosti fyzického přenosu využít pro přenášení celých bloků dat. Díky tomu ATM není vázáno na nějakou konkrétní přenosovou rychlost - v podstatě zde záleží pouze na tom, jaká fyzická přenosová technologie se „podstrčí" pod ATM. Díky tomu je možné provozovat ATM rychlostí 155 Mbps po optických vláknech, nebo třeba rychlostí 25 Mbps po kroucené dvoulince. Na obzoru jsou již i rychlosti 622 Mbps, a do budoucna lze očekávat další zvyšování - samotné ATM přitom nemá žádný rychlostní strop, který by nebylo možné překročit.

Malé buňky, nebo velké buňky?

Hlavní úlohou ATM je tedy sdružovat přenášené bity a byty do vhodně velkých celků, a pro tyto celky pak zajišťovat jejich přenos. Ale jaká je ona „vhodná velikost"? V odpovědi na tuto otázku je zřejmě schován klíč k dnešní popularitě ATM.

Ve „světě spojů" platí, že čím menší tento celek bude, tím lépe. Důvodem je skutečnost, že pro služby typu přenosu hlasu či obrazu je velmi důležitá pravidelnost doručování dat - no a budou-li data přenášena po velmi malých blocích (např. 16 nebo 32 bytů), bude takovýchto bloků „cirkulovat" více a bude větší šance, že se v případě potřeby podaří data odeslat (i doručit) skutečně včas.

Naproti tomu ve „světě počítačů" platí opačná úměrnost: „čím větší celek, tím lépe". Důvodem je především režie spojená s přenosem, která je relativně nejmenší (tj. vztaženo na jednotku objemu dat) při největším možném bloku.

Traduje se (možná i s trochou dodatečné nadsázky), že když ATM přicházelo na svět, stáli u jeho kolébky jak „lidé od spojů", tak i „lidé od počítačů". Jedni vehementně prosazovali extrémně malé bloky a byli ochotni přistoupit nejvýše na 32 bytů. Druzí naopak chtěli co největší bloky, a byli ochotni ustoupit (klesnout) až na 64 bytové bloky. Nakonec přeci jen zvítězil kompromis, spočívající v čistém aritmetickém průměru 48 bytů „užitečného nákladu". K tomu sudičky připočítaly ještě 5 dalších bytů na hlavičku - a světlo světa tak spatřila 53-bytová buňka ATM (ATM cell).

Jedna cesta, dvě využití

Další možný pohled na technologii ATM je takový, že jde o kompromis mezi technikami přepojování okruhů a přepojování paketů - které až doposud dosti výrazně oddělovaly „svět spojů" (preferující přepojování okruhů) a „svět počítačů" (preferující přepojování paketů). Rozdílnost těchto dvou technik byla přitom tak velká, že neumožňovala využívat jednu a tutéž přenosovou cestu oběma tábory současně - místo toho se obvykle budovaly samostatné přenosové sítě pro přenosy hlasu a obrazu, a jiné samostatné sítě pro datové přenosy. Technologie ATM, díky svému kompromisnímu přístupu k velikosti přenášených buněk, dokáže přijatelným způsobem vyhovět požadavkům obou světů současně. Umožní tedy budovat takové sítě, které bude možné využít jak pro typicky „datové" služby, tak i pro typicky „spojové" služby. ATM jako další vývojová fáze

Existují ovšem i některé další možné pohledy na technologii ATM, které jsou velmi inspirativní. Jednou z nich je chápání ATM jako dalšího vývojového stádia technologie X.25 (viz předminulý díl). Když jsme si o této technologii na bázi přepojování paketů povídali podrobněji, řekli jsme si že má zabudované velmi silné opravné mechanismy, které při spolehlivosti dnešních přenosových cest již jsou zbytečné a jsou dokonce překážkou vyšší efektivnosti přenosů. Odstraněním těchto zabezpečovacích mechanismů pak vznikla technologie Frame Relay, která ale stále ještě počítala s proměnnou velikostí přenášených bloků dat (nyní již označovaných jako rámců, proto také „Frame" Relay). I tato proměnná velikost se ale ukázala jako překážka působící proti zvyšování přenosové rychlosti, protože manipulace s různě velkými bloky je vždy náročnější než manipulaci s bloky pevné velikosti. No a právě zde přišlo ATM se svou pevně danou velikostí přenášených bloků (nyní označovaných jako buňky) - navíc velikostí tak malou, že veškeré zpracování buněk může být „zadrátováno" v hardwaru a tudíž realizováno i velmi rychle. Z tohoto pohledu je tedy možné chápat ATM jako další vývojové stádium technologie Frame Relay (a tím i X.25), které kromě odstranění zabezpečovacích mechanismů pro zajištění spolehlivosti výrazně zmenšilo velikost přenášených bloků a fixovalo ji.

ATM jako statistický multiplex

Jestliže předchozí odstavec chápe ATM jako výsledek přirozeného vývoje jedné ze základních technologií na bázi přepojování paketů, pak existuje i obdobné přirovnání ATM k něčemu, co vzniklo z technologie na principu přepojování okruhů.

Základní technikou, která se ve „světě spojů" používá pro rozdělení jednoho přenosového kanálu (pracujícího na principu přepojování okruhů) na více samostatných částí, je tzv. časový multiplex (TDM, Time-Division Multiplex). Spočívá v tom, že celý dostupný kanál je pravidelně (cyklicky) přiřazován jednotlivým podkanálům, celý a vždy na určité pevně dané časové úseky. Představíme-li si totéž v „počítačové" terminologii, pak to znamená že existujícím kanálem je neustále přenášen souvislý proud bitů, jednotlivé bity patří různým dílčím kanálům (podkanálům), a je vždy předem známo, komu patří ten který bit. Například při dvou podkanálech každý sudý bit patří jednomu podkanálu, a každý lichý druhému. Nevýhodou časového multiplexu je skutečnost, že když nějaký podkanál právě nepotřebuje jemu vyhrazenou část přenosové kapacity, nemůže ji jednoduchým způsobem přepustit jinému podkanálu, který by ji naopak velmi potřeboval. To dokáže až tzv. statistický multiplex, který již umožňuje nepravidelné střídání bitů od jednotlivých podkanálů. Platí za to ale tím, že již nemůže být předem známo, komu každý jednotlivý bit patří - proto je při statistickém multiplexu nutné opatřit přenášená data vhodnou „nálepkou", která by je identifikovala. To ale není možné dělat samostatně pro jednotlivé bity - místo toho dochází k jejich sdružování do vhodně velkých (a relativně malých) bloků, které se opatří malou hlavičkou. Nepřipomíná vám to buňky ATM?