Vyšlo v týdeníku Computerworld č. 30/92 v roce 1992
Vytištěno z adresy: http://www.earchiv.cz/a92/a230c110.php3

Vzájemné propojování sítí a RM ISO/OSI

V minulých dvou dílech našeho seriálu jsme se zabývali možností vzájemného propojování počítačových sítí na různých úrovních vrstvového síťového modelu. Ukažme si nyní, jak se k této problematice staví referenční model ISO/OSI.

Obrázek 41.1.
Obr. 41.1.: Představa vzájemného propojování sítí v referenčním modelu ISO/OSI
Referenční model ISO/OSI samozřejmě počítá s možností vzájemného propojování jednotlivých sítí - veřejných i privátních, rozlehlých i lokálních - a v důsledku toho i s tím, že spojení mezi dvěma koncovými účastníky může ve skutečnosti procházet přes jednu či více mezilehlých sítí (které se v terminologii ISO označují jako podsítě, subnetworks). Pro transportní vrstvu, která zajišťuje přímou komunikaci koncových účastníků, by ale tento fakt neměl být vůbec viditelný - proto referenční model ISO/OSI svěřuje veškerou agendu, spojenou se vzájemným propojením podsítí, vrstvě síťové (viz též obrázek 41.1.).

Síťová vrstva referenčního modelu ISO/OSI se pak člení na tři podvrstvy, a to (viz obr. 41.2.):

Obrázek 41.2.
Obr. 41.2.: Členění síťové vrstvy ISO/OSI na podvrstvy
  • podvrstvu přístupu k podsíti (subnet access sublayer), používající protokol SNDAP (SubNetwork Dependent Access Protocol),
  • podvrstvu přizpůsobení podsítě (subnet enhancement sublayer), s protokolem SNDCP (SubNetwork Dependent Convergence Protocol),
  • podvrstvu řízení vzájemně propojených podsítí (internet sublayer), s protokolem SNICP (SubNetwork Independent Convergence Protocol)

Podvrstva přístupu k podsíti, která je z těchto tří podvrstev nejnižší, má na starosti to, co jsme až doposud přisuzovali celé síťové vrstvě jako takové - tedy především směrování jednotlivých paketů či datagramů - ovšem pouze v rámci jedné konkrétní podsítě (viz obrázek 41.3.), kde platí stejná pravidla pro směrování, kde se používají stejné adresy, kde jsou k dispozici stejné přenosové služby atd.

Obrázek 41.3.
Obr. 41.3.: Průchod dat propojovacími zařízeními (IS, Intermediary System)
Sítě odlišného typu samozřejmě vyžadují různé podvrstvy přístupu, které ovšem poskytují nestejné služby, vyplývající z odlišného charakteru mechanismů a principů, na kterých jsou tyto sítě založeny. Jednotlivé podvrstvy přístupu k podsíti proto ještě není možné mezi sebou vzájemně propojit. Místo toho je nutné nejprve přizpůsobit jimi poskytované služby jednotnému standardu, což má za úkol prostřední ze tří zmíněných podvrstev, podvrstva přizpůsobení podsítě (viz opět obrázek 41.3.).

Pro nejvyšší podvrstvu se pak všechny podsítě "tváří" stejně. Podvrstva řízení vzájemně propojených sítí pak již může zajišťovat vše, co je potřeba k doručování jednotlivých paketů až k jejich konečnému příjemci - včetně jejich průchodu skrz jednu či několik mezilehlých sítí prostřednictvím existujících propojovacích zařízení (IS, Intermediary System).

Pro správné pochopení smyslu prostřední podvrstvy, tedy podvrstvy přizpůsobení podsítě, je vhodné si poněkud upřesnit, v čem mohou spočívat odlišnosti jednotlivých sítí resp. podsítí, a jak se projevují.

Představme si jako příklad dvě lokální sítě, propojené prostřednictvím veřejné datové sítě na bázi doporučení X.25. Jedním z nejmarkantnějších rozdílů zde bude již samotná povaha přenosových služeb na úrovni síťové vrstvy. Zatímco lokální sítě budou nejspíše používat nespojované (connectionless) služby, síť na bázi X.25 používá spojovaný (connection-oriented) mechanismus virtuální okruhů. Při přenosu jednotlivých datagramů z jedné lokální sítě do druhé je pak nutné pro každý z nich vždy znovu zřídit nový virtuální okruh, a po přenesení datagramu jej zase ihned zrušit (případně ještě chvíli počkat, zda nebude záhy požadován přenos dalšího datagramu, pro který by se již vytvořený virtuální okruh dal ještě využít). Jde tedy vlastně o emulaci mechanismu datagramové služby prostřednictvím mechanismu virtuálního okruhu, kterou zajišťuje právě podvrstva přizpůsobení podsítě.

Další možnou odlišností je maximální velikost datových paketů resp. rámců v jednotlivých podsítích. Například sítě na bázi X.25 umožňují, aby datový rámec měl až 32768 bitů, zatímco sítě typu Ethernet (resp. IEEE 802.3) připouští rámce jen do velikosti 12144 bitů, ale například sítě typu Token Bus (resp. IEEE 802.4) mohou přenášet rámce velikosti až 65528 bitů.

Obrázek 41.4.
Obr. 41.4. Představa fragmentace
a/ transparentní
b/ netransparentní
Problém nastává v okamžiku, kdy potřebujeme přenést pakety resp. rámce určité velikosti podsítí, která je schopna pracovat jen s menšími pakety resp. rámci - například při přenosu z jedné sítě Token Bus do jiné sítě Token Bus přes veřejnou datovou síť na bázi X.25. Zřejmým a v podstatě jediným možným řešením je rozdělit původní velký paket na několik menších paketů, tzv. fragmentů, a ty přenést jako samostatné celky. Otázkou ovšem je, kdo a kdy má provést zpětné sestavení jednotlivých fragmentů do původního celku. Zde jsou možné dva základní přístupy. První z nich, označovaný jako transparentní fragmentace (transparent fragmentation, někdy též: intranet fragmentation), předpokládá, že všechny fragmenty (dílčí pakety) jsou zpětně sestaveny do původního tvaru na výstupu z té podsítě, která fragmentaci vyvolala. Opačný přístup, označovaný jako netransparentní fragmentace (nontransparent fragmentation, někdy též: internet fragmentation), počítá naopak s tím, že jednotlivé fragmenty si do původního tvaru poskládá až jejich koncový příjemce. Oba přístupy ilustruje obrázek 41.4.

Další odlišnosti mezi jednotlivými podsítěmi se týkají například odlišného způsobu adresování a formátu adres, používaných v jednotlivých podsítích, mechanismu řízení toku dat a předcházení stavu zahlcení, zajišťování správy, hlášení nestandardních situací atd.

Podvrstva řízení vzájemně propojených sítí, nejvyšší ze tří podvrstev síťové vrstvy, může být koncipována tak, aby své bezprostředně vyšší (tj. transportní) vrstvě poskytovala služby buď spojovaného, nebo naopak nespojovaného charakteru. V současné době se však i v rámci referenčního modelu ISO/OSI, původně orientovaného výhradně na služby spojovaného charakteru, prosazuje spíše nespojovaná varianta. Organizace ISO přijala dokonce normu ISO 8473, definující protokol podvrstvy řízení vzájemně propojených podsítí (protokol SNICP, viz výše). Tento protokol, známý též jako ISO Internet Protocol či jen ISO-IP, totiž předpokládá právě nespojovaný charakter poskytovaných přenosových služeb. Je nezávislý na konkrétním charakteru podsítě, a je schopen zajistit jak transparentní, tak i netransparentní fragmentaci, směrování, řízení toku atd. Je do značné míry inspirován obdobným protokolem IP (Internet Protocol) ze soustavy protokolů TCP/IP.