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

Techniky vzájemného propojování sítí

Tento článek vyšel v tzv. tématu týdne v CW 38/94, jako druhý ze série článků věnovaných problematice aktivních síťových prvků

Pro potřeby vzájemného propojování sítí existuje celá řada různých technik, které se liší především svou celkovou filosofií. Z té pak také vyplývá nejen konkrétní způsob fungování příslušného propojení, ale i jeho potenciální a aktuální možnosti. Seznamme se nyní s těmi hlavními.

Propojení pomocí opakovačů

Jednou z možností vzájemného propojování sítí a jejich jednotlivých segmentů je takové řešení, kdy jsou v místě styku příslušných kabelových segmentů pouze regenerovány přenášené signály (tj. jejich útlum je kompenzován zesílením, zkreslení novým vytvarováním atd.). Zařízení, které propojuje dva nebo více kabelových segmentů a pracuje právě tímto způsobem, se označuje jako opakovač (anglicky: repeater). Používá se především pro zvětšení dosahu síťových rozvodů (překonání omezení na maximální možnou délku jednotlivých kabelových segmentů), a pro potřebné rozvětvení při použití rozvodů na bázi kroucené dvoulinky.

Již samotný název dává tušit, že opakovač funguje tak, že ze všech stran (tj. ze všech segmentů, které jsou k němu připojeny) trvale "poslouchá", a cokoli z některého segmentu zaslechne, to okamžitě "zopakuje" i do všech ostatních segmentů - patřičně zesílené, vytvarované atd. Podstatné přitom je, že opakovač funguje v reálném čase, neboli to, co přijme, zase ihned odesílá, aniž by si to jakkoli zapamatovával (ukládal do své vnitřní paměti). Z tohoto důvodu také opakovač dokáže vzájemně propojovat pouze takové segmenty, které pracují se stejnou přenosovou rychlostí (ale mohou to být různé druhy kabelů, například tlustý a tenký koaxiální kabel, tenký koaxiální kabel a kroucená dvoulinka apod.).

Vzhledem k tomu, že opakovač pouze regeneruje přijímané signály, ale nesnaží se nijak interpretovat jejich význam, je vlastně zařízením, které je z pohledu vrstvových modelů (zejména pak referenčního modelu ISO/OSI) nutné zařadit do nejnižší, tzv. fyzické vrstvy (viz obrázek 3).

Obrázek 3: Opakovač funguje na úrovni fyzické vrstvy

Tato skutečnost by správně měla znamenat, že opakovač je zcela nezávislý na vyšších vrstvách. V praxi tomu tak ovšem není, a to z následujícího důvodu: má-li opakovač nejen zesilovat, ale také nově tvarovat přenášené signály (tj. dávat jim jejich původní tvar), pak musí vědět, jak je má tvarovat, resp. jaký způsob kódování používá na úrovni fyzické vrstvy ten přenosový protokol, který pracuje na úrovni bezprostředně vyšší vrstvy. Z tohoto důvodu pak existují například opakovače, "šité na míru" sítím typu Ethernet, které ale nejsou v zásadě použitelné v jiných druzích lokálních sítí.

Zaměřme se nyní již specificky na vlastnosti opakovačů pro Ethernetovské sítě.

Tím, čemu takovéto opakovače musí vycházet vstříc, je kromě konkrétního způsobu kódování jednotlivých bitů i poměrně specifická přístupová metoda, používaná v Ethernetu. Přístupovou metodou (access method) v sítích, které mají možnost používat mnohobodové spoje, je takový mechanismus, který při případném souběhu více zájemců o právo vysílat rozhodne, komu z nich bude vyhověno a komu nikoli (protože z čistě praktických důvodů nemůže na takovýchto mnohobodových spojích vysílat více uzlů současně). V rámci Ethernetu se tato otázka řeší tak, že je sice přípustné, aby začalo vysílat více uzlů současně, ale takováto situace (označovaná jako kolize) musí být všemi detekovatelná a všechny uzly, které se na takovéto kolizi účastní, se pak musí zachovat podle přesně daných pravidel (která již přesahují rámec tohoto textu). Opakovač, který pracuje v reálném čase, musí být pro takovéto kolize průchodný, resp. musí je šířit do všech segmentů, které jsou k němu připojeny.

Pravidla Ethernetu také velmi přesně definují, co všechno musí platit, aby každá kolize byla všemi uzly bezpečně detekovatelná. Jedním z hlavních požadavků je i to, aby maximální doba šíření signálu (tj. mezi "nejvzdálenějšími" konci) nepřesáhla určitou pevně danou hranici. Maximální doba šíření signálu je ovšem závislá jak na počtu a délce použitých kabelových segmentů, tak i na počtu použitých opakovačů - přestože totiž opakovače pracují "v reálném čase" a nic si průběžně nezapamatovávají, přeci jen určitým způsobem zpožďují signál, který přes ně prochází. V důsledku toho existuje pro Ethernetovské sítě pravidlo které přesně říká, kolik kabelových segmentů a kolik opakovačů smí být použito, aby kolize byly stále ještě bezpečně detekovatelné. Toto pravidlo zní: kabelových segmentů smí být nejvýše pět, a mohou být propojeny nejvýše čtyřmi opakovači. Je zde ovšem ještě jeden malý háček: ze zmíněných pěti segmentů smí být nejvýše tři "obydlené", tj. nejvýše ke třem z nich lze připojovat nějaké uzly. Ostatní pak představují jen jakési propojovací segmenty (link segments), viz obrázek 4. V odborné literatuře se ovšem často uvádí také to, že opakovače smí být nejvýše dva (a jimi propojené segmenty pak nejvýše tři). Tento požadavek se od předchozího liší v tom, že explicitně nezmiňuje možnost "neobydlených" propojovacích segmentů, ale obvykle ji zahrnuje do možnosti logicky "rozpůlit" jeden opakovač na dvě části, a tyto propojit vhodným spojem (odpovídajícím "neobydlenému" segmentu). Tím pak vlastně oba případy splývají.

Obr. 4: Příklad zapojení s maximálním počtem opakovačů

Propojení pomocí mostů

Jednou ze základních nevýhod opakovačů je to, že šíří z jednoho segmentu do druhého i takový provoz, který by nutně šířit nemusely, resp. který by mohl zůstat "lokální" jen v jednom segmentu. Důvodem pro takovéto chování opakovače je skutečnost, že nijak neinterpretuje to, co přenáší, a tudíž by se ani neměl podle čeho rozhodovat, co kam přenést a co nikoli.

Obr. 5: Opakovač předává do ostatních segmentů i takový provoz, který by mohl zůstat lokální v jednom ze segmentů

K tomu, aby takovéto rozhodování bylo v zásadě možné, je bezpodmínečně nutné, aby příslušné propojovací zařízení dokázalo interpretovat data, která jim prochází - minimálně na takové úrovni, aby z nich dokázalo poznat, kdo je jejich odesilatelem a kdo příjemcem.

Aby toto bylo možné, musí již příslušné propojovací zařízení pracovat na vyšší úrovni, než je úroveň fyzické vrstvy. V rámci referenčního modelu ISO/OSI je bezprostředně vyšší vrstvou vrstva linková, a zařízení, které pracuje na úrovni této vrstvy, se nazývá most (bridge), viz obr. 6.

Obr. 6: Most pracuje na úrovni linkové vrstvy ISO/OSI

Další zásadní odlišností mostu od opakovače je to, že již nepracuje v reálném čase, ale způsobem dávkovým, na principu "store and forward". Každý jednotlivý rámec (jak se nazývají bloky, přenášené na úrovni linkové vrstvy) most nejprve přijme do své vnitřní vyrovnávací paměti, zde analyzuje jeho obsah - alespoň do té míry, aby dokázal rozpoznat odesilatele a příjemce - a na základě toho se pak rozhodne, co s takto přijatým rácem udělá.

Možnosti má v zásadě tři: pokud mu je známo, že jak příjemce, tak i odesilatel daného rámce se nachází ve stejném segmentu (v tom, ze kterého jej most přijal), pak s daným rámcem vlastně nemusí vůbec nic dělat, a může jej jednoduše ze své vnitřní paměti vymazat. Pak se jedná o tzv. filtrování (filtering), díky kterému most dokáže udržet "lokální" provoz skutečně lokálním v segmentu, kde vzniká a pro který je určen, a nepředávat jej do dalších segmentů, kde by zbytečně spotřebovával jejich přenosovou kapacitu.

Obr. 7: Most již nepředává do ostatních segmentů takový .. provoz, který může zůstat lokální v daném segmentu

Další možnost, která připadá v úvahu, vychází z toho, že most nemá k dispozici žádnou informaci o segmentu, ve kterém se nachází adresát přijatého rámce. V tomto případě mostu nezbývá, než se zachovat obdobně jako opakovač: rozeslat příslušný rámec do všech ostatních segmentů (kromě toho, ze kterého rámec přijal).

Třetí možnost pak připadá v úvahu v situaci, kdy most již má k dispozici informaci o tom, ve kterém segmentu se nachází příjemce daného rámce. V tomto případě most jednoduše odešle rámec do příslušného segmentu (a pouze do něj, nikoli i do ostatních segmentů). Tento případ je označován jako forwarding (doslova: předávání).

Zajímavou otázkou je jistě to, jak most získá potřebné informace o umístění jednotlivých uzlů v segmentech, aby vůbec mohl provádět cílené předávání (forwarding). Možností je opět několik: jednou z nich je ta, že most dostane všechny potřebné informace předem (například v rámci svého nakonfigurování apod.). Tato situace ovšem nevychází vstříc případným dynamickým změnám v topologii sítě, a samozřejmě není odolná vůči eventuálním chybám (v informacích, které most dostane a které "slepě" používá).

Dalším možným řešením, které se používá především v Ethernetovských sítích, jsou tzv. samoučící se mosty (Learning Bridges). Ty se snaží samy si získat potřebné informace, resp. samy se naučit znát skutečnou topologii sítě. Dělají to tak, že když z určitého segmentu dostanou rámec od určitého uzlu-odesilatele, odvodí si z toho, že tento uzel se nachází právě v daném segmentu. Tímto způsobem se pak postupně naučí znát celou topologii sítě, a všechny rámce pak buďto filtrují, nebo je cíleně předávají jen do příslušného cílového segmentu (tj. provádí forwarding). K tomu, aby rámce rozesílaly do více segmentů, se přitom uchylují jen v době, kdy se teprve učí, a nemají potřebné informace o topologii k dispozici.

Zajímavým důsledkem právě popsaného mechanismu fungování učících se mostů je požadavek, aby v síti nebyly žádné cykly. Ty by totiž celý proces učení znemožňovaly. Většina dnes vyráběných mostů se však i s takovouto situací dokáže vyrovnat: jsou vybaveny schopnostmi, které jim umožňují nejen rozpoznat existenci cyklů, ale hlavně se dokáží vzájemně domluvit a aplikovat vhodný algoritmus (tzv. Spanning Tree Algorithm), prostřednictvím kterého dokáží cyklus odstratnit a vyrobit opět čistě stromovitou strukturu sítě.

Mechanismus fungování učících se mostů, jaké jsou používány v Ethernetovských sítích, má ještě jeden zajímavý a velmi důležitý aspekt. Spočívá v tom, že tyto mosty propojují jednotlivé segmenty takovým způsobem, že z pohledu prvotních odesilatelů splývají v jediný homogenní celek (viz obr. 8 a/). To má velmi silný důsledek: odesilatel si pak může myslet, že příjemce se nachází ve stejném segmentu jako on (přestože se ve skutečnosti nachází v jiném segmentu), a může mu tedy příslušný datový rámec poslat přímo. Jakmile tak udělá, vstupuje do hry most, připojený k segmentu odesilatele - tento most zachytává veškerý provoz v příslušném segmentu (tj. i ten, který mu není explicitně adresován), a díky tomu zachytí i námi uvažovaný datový rámec. Z adresy příjemce, která je v něm obsažená, pak rozpozná, že jej musí předat do jiného segmentu (viz obr. 8 b/).

Obr. 8: Představa fungování mostů

Právě naznačená úvaha ovšem znamená, že mosty v Ethernetovských sítích vlastně nejsou pro ostatní uzly vůbec viditelné - tyto si jejich existenci nemusí vůbec uvědomovat, protože jim nikdy nic neadresují přímo. Proto se také těmto mostům říká transparentní (transparent bridges).

Transparentní samoučící se mosty, používané v Ethernetovských sítích, však nejsou jediným možným typem mostů. Dalším typem mostů jsou takové, které pracují na bázi tzv. Source Routingu (a používají se hlavně v sítích Token Ring).

Myšlenka, na které jsou tyto mosty založeny, je následující: o cestě, kterou má každý jednotlivý datový rámec projít, nebudou rozhodovat mosty, ale již prvotní odesilatel datového rámce. Ten pak vloží potřebné informace o "trase" přenosu do vlastního rámce, a odešle jej prvnímu mostu, který se na této trase nachází. Ten musí být schopen interpretovat údaje o požadované trase, které jsou v rámci obsaženy, a předat jej dalšímu mostu na trase - dokud není rámec doručen až svému konečnému adresátovi.

Jakým způsoben ale prvotní odesilatel získá všechny potřebné informace k tomu, aby dokázal sestavit příslušnou trasu ještě před odesláním rámce? Odpověď je následující: odesilatel nejprve vyšle speciální průzkumný rámec, která se v jednotlivých mostech rozvětvuje do všech existujících směrů - tj. je rozmnožen a rozeslán do všech segmentů, které příslušný most propojuje. Exempláře průzkumných paketů tak začnou zaplavovat celou soustavu vzájemně propojených segmentů, dokud se první z nich nedostane až k požadovanému cíli. Od něj se odrazí a vrátí zpět k původnímu odesilateli, kterému současně přinese i požadovanou informaci o tom, jak se k cílovému uzlu dostal.

Právě popsaný princip fungování mostů (tj. tzv. Source Routing) však příliš nezapadá do druhé nejnižší vrstvy referenčního modelu ISO/OSI, do kterého mosty jako takové patří. Svou celkovou filosofií patří spíše o vrstvu výše, neboli do vrstvy síťové, kde probíhá tzv. směrování. Říká to dokonce i jeho samotný název - Source Routing (v doslovném překladu: směrování, určované zdrojem dat). Do linkové vrstvy byl Source Routing zařazen zřejmě proto, že byl předložen ke standardizaci komisi, zabývající se právě linkovou vrstvou.

Mosty vs. opakovače v Ethernetu

Vraťme se nyní ještě k jednomu zajímavému aspektu, který se týká vztahu Ethernetovských transparentních mostů k opakovačům. Vzhledem k tomu, že tyto mosty pracují stylem "store and forward", tj. každý přijatý rámec nejprve celý přijmou do své vnitřní vyrovnávací paměti, a teprve pak se rozhodují co s nim udělají, nemusí již šířit kolize z jednoho segmentu do ostatních segmentů. Pokud například most přijme datový rámec z jednoho segmentu a má jej předat do jiného segmentu, ve kterém právě došlo ke kolizi, pak pro něj není principiálnm problémem počkat, dokud kolize neskončí a dokud sám nezíská právo vysílat.

Důsledkem právě naznačené skutečnosti je pak to, že pravidlo o maximálním možném počtu opakovačů v Ethernetovských sítích (viz výše) se "zastavuje" na nejbližším mostě - viz též obrázek 9. Ty segmenty, které jsou vzájemně propojeny pomocí opakovačů přitom tvoří tzv. kolizní doménu (tj. soustavu segmentů, v rámci které se kolize šíří všemi směry a do všech segmentů, protože opakovače tyto kolize propouští). Kolizní domény pak končí na nejbližším mostu.

Co však mosty stále ještě propouští, je tzv. všesměrové vysílání (broadcasting), neboli takový provoz, který jeden odesilatel adresuje současně všem potenciálním příjemcům. Tato skutečnost souvisí s transparentností Ethernetovských mostů a s iluzí, kterou ostatním uzlům vytváří - že jednotlivé segmenty, propojené mosty, splývají do jednoho logického celku (viz obr. 8/a).

Propojování pomocí směrovačů

Předchozí odstavce dávají tušit, že vzájemné propojování sítí a jejich částí je možné realizovat i na vyšších úrovních, než jakou je vrstva linková. Obecně platí, že to může být v podstatě na kterékoli vrstvě, ovšem v praxi se vzájemné propojování sítí a jejich segmentů provádí především na úrovni tří nejnižších vrstev referenčního modelu ISO/OSI: na úrovni fyzické vrstvy, kde se příslušné zařízení označuje jako opakovač, na úrovni linkové vrstvy, kde se označuje jako most, a na úrovni vrstvy síťové, kde se příslušné zařízení označuje jako směrovač (router).

Obr. 10: Směrovač pracuje na úrovni síťové vrstvy referenčního .. modelu ISO/OSI

Jaké ale jsou důvody vzájemného propojování sítí na úrovni síťové vrstvy pomocí směrovačů, resp. jaké výhody to přináší oproti použití mostů, pracujících na úrovni linkové vrstvy?

Nejprve je vhodné si uvědomit, že konkrétní mechanismus fungování směrovačů je v mnohém obdobný fungování mostů: stejně jako most, i směrovač nejprve přijme celý přenášený blok dat (tzv. paket, viz dále), pak analyzuje jeho obsah, podle něj se rozhodne kudy jej poslat dále, a posléze tak skutečně učiní. Rozdíly jsou však mj. v následujícím: most analyzuje obsah datového rámce, jak se nazývá blok dat, přenášený na úrovni linkové vrstvy. Naproti tomu směrovač analyzuje obsah tzv. paketu, jak jsou označovány bloky dat, přenášené na úrovni síťové vrstvy (viz obr. 11). Most i směrovač tedy při svém rozhodování vychází v zásadě z jiných údajů, přičemž ty, které dostává k dispozici směrovač, jsou obecnější a obsažnější. Například adresy, se kterými pracují směrovače (adresy na úrovni síťové vrstvy, neboli tzv. síťové adresy), většinou obsahují i informace o umístění daného uzlu (v konkrétní síti), zatímco adresy na úrovni linkové vrstvy (linkové adresy, se kterými pracují mosty) obvykle nemají žádnou souvislost s fyzickým umístěním uzlu. Například v Ethernetovských sítích se na úrovni linkové vrstvy používají 48-bitové číselné adresy, které do příslušných adatérů napevno "zadrátovává" již jejich výrobce (aniž samozřejmě může tušit, kde a jak bude příslušný adaptér připojen).

Obr. 11: Představa rámce a paketu

Rozhodování, které provádí směrovač, je obecně náročnější než rozhodování mostu (a také většinou trvá déle). V důsledku větší obecnosti údajů, které má pro své rozhodování k dispozici, však směrovač dokáže takové věci, které most nedokáže vůbec, nebo je alespoň dokáže zajistit lépe. Zejména:

  • směrovače dokáží využít obecně jakoukoli topologii sítě či soustavy vzájemně propojených sítí, zatímco mosty dokáží využít jen její podmnožinu (bez cyklů). Směrovače dokáží volit mezi více možnými trasami, zatímco mosty z principu nikoli (nedokáží-li pracovat s cykly).
  • rychlost, s jakou směrovače reagují na změny v topologii sítě, je obvykle řádově vyšší, než rychlost reakce mostů na tyto změny.
  • směrovače mají mnohem lepší předpoklady pro stavění logických zábran (.. prosím doplnit odkaz na první doprovodný článek ...) než mosty.
  • směrovače jsou účinnější i při "lokalizaci" provozu v jednotlivých sítích a segmentech. Například tzv. všesměrové vysílání, kterým se jeden odesilatel obrací ke všem existujícím příjemcům současně, mosty propouští, zatímco směrovače nikoli.

Další významnou odlišností směrovačů od mostů je skutečnost, že již nejsou transparentní. Ostatní uzly si jejich existenci plně uvědomují, a v důsledku toho si explicitně uvědomují také to, že směrovače navzájem propojují jednotlivé sítě. Při použití směrovačů si tedy jednotlivé sítě, resp. jejich části zachovávají svou identitu (jsou nadále samostatnými sítěmi, a mají například odlišné síťové adresy, resp. síťové části adres), zatímco při použití směrovačů splývaly v jediný logický celek (v jedinou síť, s jedinou síťovou adresou).

Odesilatel, který chce poslat datový paket jinému uzlu, musí být z jeho adresy schopen poznat, zda se nachází ve stejní síti jako on sám, nebo nikoli. Pokud ano, odesilatel pošle příslušný paket přímo (resp. předá jej své linkové vrstvě k odeslání). Pokud se ovšem příjemce nachází v jiné síti, pak odesilatel musí postupovat následovně: musí znát alespoň jeden směrovač, který z jeho sítě "vede ven" (a takový musí existovat, neboť v opačném případě by vůbec nebyl možný jakýkoli přenos mezi sítěmi odesioatele a příjemce). Svůj paket sice opatří adresou skutečného příjemce, ale ve skutečnosti jej pošle směrovači (tj. své linkové vrstvě jej předá s pokynem odeslat jej tomuto směrovači). Směrovač, který paket přijme, jej analyzuje, a z adresy příjemce si pak odvodí, kudy jej má poslat dál - zda již jej může přímo předat jeho konečnému příjemci, nebo zda jej musí předat ještě jinému směrovači atd., viz obr. 12.

Obr. 12: Představa přenosu v soustavě sítí, spojených .. směrovači

Proces rozhodování o dalším směru přenosu paketu, který směrovač provádí, se označuje příznačně jako tzv. směrování (routing). Může být založeno na mnoha různých principech a metodách (které již přesahují rámec tohoto textu), a může být prováděno pro každý samostatný paket vždy znovu (pokud sítová vrstva funguje tzv. nespojovaným způsobem, neboli nabízí tzv. datagramovou přenosovou službu), nebo pouze jednou, při navazování spojení mezi příjemcem a odesilatelem (pokud síťová vrstva funguje spojovaným způsobem, a nabízí přenos po tzv. virtuálních okruzích). V zásadě ovšem platí, že směrování se dokáže úspěšně vyrovnat s takovými situacemi, které mostům vadí - například s existencí alternativních cest ke stejnému příjemci (což pro most představuje nepřípustný cyklus). Směrovačům takovéto alternativní cesty nejen nevadí, ale často je dokáží i vhodně využít, tak že je používají všechny a datový provoz mezi ně rozdělují.

Mezi způsobem fungování směrovačů a mostů je ovšem i jeden zásadní rozdíl, podstatný zejména pro uživatele: mosty jsou zařízení typu "plug and play", které stačí pouze připojit a zapnout. Naproti tomu směrovače je třeba konfigurovat, což je často i dosti složité a vyžaduje to nemalé znalosti o používaných směrovacích protokolech atd.

Opakovač, most nebo směrovač, tak zní otázka!

Rozhodování mezi opakovačem, mostem či směrovačem nemusí být vůbec jednoduché. Relativně nejjednodušší je situace v případě opakovačů, pro které lze přesně stanovit hranice, za kterými již nejsou použitelné (např. maximální počet opakovačů v Ethernetovských sítích). Dále je v mnoha případech možné si odvodit, že použití opakovačů není výhodné - například tam, kde se analýzou datových toků zjistí, že v jednotlivých segmentech eistuje nezanedbatelný objem provozu, který by mohl zůstat lokální. Na druhé straně existují velmi zřetelně definované situace, kdy je použití opakovačů žádoucí - zejména při potřebě rozvětvit síťové rozvody na bázi kroucené dvoulinky.

Rozhodování mezi mostem a směrovačem může být mnohem složitější, a to zvláště v situacích, kdy je potřeba vzájemně propojit lokální sítě, které dosud fungovaly jako samostatné celky bez vzájemného propojení. Mají si nyní, po vzájemném propojení, udržet svou relativní samostatnost (tj. nadále být samostatnými sítěmi na úrovni síťové vrstvy, což by znamenalo propojit je pomocí směrovačů), nebo mají splynout v jediný homogenní celek, tj. v jedinou síť (což by znamenalo propojit je pomocí mostů)?

Pro použití mostů hovoří skutečnost, že jsou lacinější než směrovače (i když v poslední době nijak výrazně), že dokáží pracovat rychleji (protože mají jednodušší rozhodování než směrovače), a v neposlední řadě je jejich použití jednodušší (není třeba je složitě konfigurovat). Na druhá straně pro použití směrovačů hovoří fakt, že dokáží účinněji izolovat provoz, který může zůstat lokální v určité části sítě (na rozdíl od mostů například nepropouští tzv. všesměrové vysílání), že skýtají větší prostor pro realizaci všelijakých logických zábran (firewalls), a především že dokáží využít jakoukoli skutečnou topologii sítě.

Rozhodování mezi mostem a směrovačem může často ulehčit například volba použitých přenosových protokolů. Jde-li například o síť, kde jsou používány protokoly TCP/IP, pak je zde přesně stanoveno, jaký maximální možný počet uzlů může mít každá jednotlivá síť. Tento počet přitom závisí na druhu adresy, která je pro takovouto síť k dispozici: pro nejběžnější adresy třídy C (které typicky připadají v úvahu), může být v každé síti nevýše 254 uzlů. Pak je zřejmé, že kdyby měl počet uzlů ve vzájemně propojených segmentech překročit tento počet (nejspíše i v rozumném výhledu do budoucna), pak je nutné příslušné segmenty propojit pomocí směrovačů, a udělat z nich samostatné sítě (na úrovni sítové vrstvy), tak aby mohly používat vlastní, samostatné séťové adresy typu C.

Další skutečnost, která může rozhodování mezi mostem a směrovačem výrazně ovlivnit, je připojování na "vnější svět" - na některou rozlehlou síť. Zde se totiž prakticky výlučně používá propojení na úrovni směrovačů. Některé přenosové protokoly to dokonce přímo předepisují, ale hlavním důvodem je většinou potřeba logického oddělení propojovaných sítí, potřeba zachování jejich identity a co nejefektivnější možnost regulace přístupových práv a omezení.

Propojení pomocí ústředen

Zajímavou alternativou, která se v poslední době začíná dosti výrazně prosazovat a konkurovat opakovačům a mostům - alespoň v Ethernetovských sítích - jsou tzv. Ethernetové ústředny (Ethernet switches).

V prvním přiblážení je možné si je představit jako zvláštní variantu mostů, která předpokládá použití většího počtu samostatných segmentů, přičemž ke každému z nich se bude připojovat vždy jen jeden uzlový počítač (viz obrázek 13). Vlastní fungování ústředny je pak obdobné fungování mostu: když ústředna přijme z některého segmentu datový rámec, analyzuje jeho obsah takovým způsobem, aby zjistila kdo je jeho adresátem, načež jej odešle do toho segmentu, ve kterém se příslušný adresát nachází. Zásadní rozdíl oproti mostům je zde spíše v kvantitě než v kvalitě - vzhledem k tomu, že každý jednotlivý segment je "obydlen" pouze jedním uzlem, odpadá vlastně možnost filtrování, a ústředna vždy používá cílené předávání (forwarding) rámce tomu, komu patří. Pouze v souvislosti s ústřednami se již nepoužívá termín "forwarding", ale místo něj se používá termín switching (doslova: přepojování). Také místo segmentu ("obydleného" vždy jen jedním uzlem) se v souvislosti s ústřednami používá spíše termín port.

Obr. 13: Představa fungování Ethernetové ústředny

Další zajímavou odlišností Ethernetových ústředen od mostů je skutečnost, že již nemusí nutně pracovat dávkovým způsobem, na principu "store and forward". Ethernetové ústředny totiž existují ve dvou variantách: jedna z nich postupuje podobně jako most, tj. každý jednotlivý rámec vždy nejprve přijme do své vnitřní paměti, zde jej analyzuje, a podle výsledku jej odešlem tím směrem, ve kterém se adresát nachází (přesněji přes ten port, ke kterému je adresát připojen). Má to výhodu v tom, že takto pracující ústředna dokáže mj. rozpoznat chybné rámce a eliminovat je. Nevýhodou je ale větší zdržení rámce na jeho cestě od odesilatele k příjemci, které padá na vrub jeho ukládání do vnitřní vyrovnávací paměti ústředny.

Alternativou jsou pak takové ústředny, které nečekají na přijetí celého paketu, ale své rozhodování učiní okamžitě, jakmile je to jenom možné - tedy již v okamžiku, kdy z právě přijímaného rámce přijaly takovou část, aby z ní poznaly adresu příjemce. Průběžně přijímaný rámec pak takto pracující ústředna začně okamžitě předávat do příslušného cílového segmentu, a to opět průběžně (se zpožděním, které odpovídá velikosti hlavičky rámce, obsahující příslušné adresy). Výhodou je především malé přenosové zpoždění rámce, nevýhodou pak skutečnost, že takováto ústředna musí "pustit" i takové rámce, které jsou chybné (protože sama to pozná až v okamžiku, kdy přijme rámec celý, ale mezitím již jeho část sama odeslala).