Protokol SLIP je velice jednoduchý ale nezabezpečuje:
A zjistil, že mnohé údaje v těchto záhlavích se během TCP spojení nemění nebo mění jen málo. V podstatě se mění pouze položky: identifikace IP-datagramu, pořadové číslo odesílaného bajtu, pořadové číslo přijatého bajtu, některé příznaky, délka okna, kontrolní součet TCP záhlaví a ukazatel naléhavých dat. Změny v ostatních položkách jsou ojedinělé. Položky: celková délka IP-datagramu a kontrolní součet IP-záhlaví jsou zase postradatelné.
Komprese záhlaví komprimuje záhlaví pouze v případě, že se jedná o TCP protokol a v záhlavích se mění pouze uvedené položky. V opačném případě (např. je odeslán ICMP paket, je odeslán UDP datagram, jedná-li se o fragment IP-datagramu, je-li nastaven některýz příznaků RST, SYN, FIN nebo naopak nenastaven příznak ACK atp.) se komprese neprovede a linkou je přenesen nekomprimovaný (nezměněný) rámec.
Pokud odesilatel chce přenést TCP/IP paket, pak je paket na straně odesilatele předán komponentě označované jako kompresor (viz obr. 4.4). Kompresor buď paket zkomprimuje nebo jej nezměněný propustí. Na příjemcově straně je pak dekompresor, který z komprimovaného paketu postaví původní paket.
Kompresor komprimuje jednotlivá spojení. Pro každé spojení si udržuje slot, ve kterém má všechny informace z IP i TCP záhlaví nutné pro kompresi i pro dekompresi, tj. zpětné sestavní obou záhlaví.
Obr. 4.4 Kompresor a dekompresor
Nyní si představme, že odesilatelův paket dorazil na kompresor. Kompresor nejprve zkoumá, zda-li je paket komprimovatelný nebo nikoliv. V případě, že se jedná o nekomprimovatelný paket (např. je odeslán ICMP paket, je odeslán UDP datagram, jedná-li se o fragment IP-datagramu, je-li nastaven některý z příznaků RST, SYN, FIN nebo naopak nenastaven příznak ACK atp.) je paket propuštěn bez komprese. V opačném případě, tj. v případě že paket je komprimovatelný, tak se provede komprese. Tj. kompresor začne prohledávat své sloty, nemá-li v některém slotu IP+TCP záhlaví spojení kterému by tento paket mohl příslušet.
Mohou nastat dvě situace:
Komprimované záhlaví obsahuje v prvním bajtu tzv. masku. Jednotlivé bity masky specifikují které položky v záhlaví originálního paketu se změnily, a proto celé položky nebo jejich přírůstky musí být přenášeny i v komprimovaném záhlaví. Je-li příznak nastaven, pak v komprimovaném záhlaví je uvedena konkrétní položka komprimovaného záhlaví, pokud není nastaven, pak příslušná položka není v komprimovaném záhlaví přítomna.
Vždy se přenáší kontrolní součet z TCP-záhlaví.
Jednotlivé bity masky:
I když TCP spojení je plně duplexní, tak komprimace IP + TCP záhlaví se provádí pro každý směr zcela samostatně, tj. jako by šlo o dva samostatné simplexní spoje.
V případě, že by v komprimovaném záhlaví byly současně nastaveny příznaky A, W a U, pak se přenášený paket nekomprimuje - jedná o výjimku připravenou pro protokoly telnet, rlogin apod. Pro tyto protokoly se komprimované záhlaví skládá pouze z masky s nastavenými příznaky A, W a U a kontrolního součtu, tj. komprimované záhlaví se zkracuje na 3 bajty. V tomto případě se opravdu při stisknutí jedné klávesy na terminálu místo 41 bajtů přenáší pouze čtyři bajty (3 bajty komprimovaného záhlaví a 1 bajt dat).
Protokol HDLC rozeznává tzv. módy:
Obr. 4.6 Módy ABM a NRM
Obr. 4.7 Rámec protokolu HDLC
Křídlová značka se skládá z osmi bitů: 0111 1110. Šest po sobě následujících jedniček určuje právě křídlovou značku. Okamžitě můžete namítnout: Vždyť přenášený znak se může skládat i z více jak šesti jedniček. Jenže právě bitově orientovaná synchronní verze HDLC používá trik. Na vstupu, kdykoliv, když data obsahují více jak pět jedniček za sebou, tak se za těchto pět jedniček automaticky vloží jedna nula. Analogicky na výstupu, je-li v přenášených datech za pěti jedničkami 0, pak se tato nula vypouští. Není-li za pěti jedničkami nula, ale jednička, pak se jedná o křídlovou značku. Tato technika se též označuje jako bit stuffing.
Tato technika je možná jen u bitově orientovaného přenosu, kde se přenáší řada bitů, u znakově orientovaného přenosu tato technika není možná, protože počet přenášených bitů musí být dělitelný délkou znaku (zpravidla 7 nebo 8 bitů). Vložení bitu by pak toto pravidlo porušilo.
Určení jaký kontrolní součet se bude používat je součástí úvodního dialogu stanic při inicializaci spojení (pomocí příkazu XID).
Toto omezení platí pro tzv. číslované rámce. U nečíslovaných rámců je možné na počátek datového pole zadat specifikaci protokolu.
V I-rámci slouží pole N(S) a N(R) pro číslování rámců. Čísluje se od nuly do 127 (nejvyšší možné číslo v sedmi bitech), po dosažení čísla 127 se opět pokračuje od nuly. N(S) určuje číslo odesílaného rámce. Naopak pole N(R) slouží pro potvrzení přijatého rámce. Jelikož je komunikace obousměrná, potvrzují se v protisměru správně přijaté rámce.
V případě, že není třeba v protisměru posílat
data, pak se k potvrzení přijatých dat použije S-rámec (s příkazem RR).
V případě, že v přijatý rámec byl po přepočítání kontrolního součtu shledán
jako chybný, pak je pomocí S-rámce (příkazem REJ) vyžádáno opakování přenosu
- tzv. negativní potvrzení. Tento S-rámec ve svém poli N(R) zopakuje číslo
posledního správně přijatého rámce.
Obr. 4.9 Okno o velikosti 3
U-rámce mohou jak přenášet data, tak i příkazy a odpovědi:
Rámec protokolu PPP obsahuje v poli adresa ff16
(oběžník) a v řídícím poli vždy 0316
(U-rámce s nastaveným P/F bitem na 0). Pokud se na lince vyskytují rámce
pouze s těmito adresami a řídícími poli, pak oba konce linky mohou použít
kompresi (Address-and-Control-Field-Compression).
Při této kompresi se prostě při vysílání obě pole vypustí.
Křídlovou značkou je uvozen i ukončen každý rámec protokolu PPP. Křídlová značka obsahuje binárně 0111 1110, tj. 7e16. Co ale když je třeba znak 7e přenášet v datech. U binárně synchronních linek jsme si popsali techniku bit stuffing.
Pro asynchronní spoje (též pro znakově synchronní linky) se použijí Esc-sekvence (podobně jako u protokolu SLIP). Znak 7e se nahradí dvojicí 7d 5e. A znak 7d se nahradí dvojicí 7d 5d.
Implicitně se uvozují escape sekvencí 7d i všechny řídící znaky ASCII (tj. znaky s kódem desítkově menším než 32). Navíc se k hodnotě těchto znaku připočte desítkově 32 (tj. 20 šestnáctkově). Např. místo znaku 03 se přenáší 2316. Takže ani terminálový ovladač nemůže přenášeným znakům uškodit tím, že by je chybně interpretoval např. jako zvonek, BACKSPACE atp. Možná Vás zarazilo slovo implicitně v úvodu tohoto odstavce. Ale obě stanice se mohou pomocí příkazu Async-Control-Character-Map (ACCM) dohodnout na tabulce znaků které se budou uvozovat escape sekvencí.
Součástí protokolu PPP jsou dva služební protokoly:
Frame Relay používá virtuální okruhy. Virtuální okruh je obdobou pevné linky. Uživatel si od provozovatele sítě Frame Relay pronajímá virtuální okruhy mezi svými jednotlivými lokalitami.
Frame relay je datagramová nespojovaná služba, tj. jsou jí přenášeny nečíslované rámce. Doručení rámce obecně není provozovatelem garantováno. Každý rámec obsahuje kontrolní součet, lze tedy ověřovat došlo-li během přenosu k narušení paketu. Narušený paket se zahazuje.
Základním parametrem virtuálního okruhu je kolik může uživatel v časovém intervalu Tc předat virtuálnímu okruhu dat. Tuto veličinu budeme dále označovat jako šíři přenosového pásma (bandwidth interval) a označovat jí budeme Bc. Častěji se však používá poměr Bc/Tc, který se označuje jako CIR (Committed Inforamtion Rate). CIR vyjadřuje kolik dat může uživatel předat sítí Frame Relay za jednotku času. CIR je abstrakce, protože nikdy nelze přesně za 1 vteřinu předat tolik bajtů kolik vyjadřuje zprůměrovaný CIR. Data se totiž síti předávají v celých rámcích - nikoliv v jejich částech.
Pronajmete-li si pevné linky od provozovatele
veřejné telefonní sítě, pak pro propojení např. čtyř lokalit vzájemně mezi
sebou potřebujete čtyři pevné linky. V každé lokalitě budete mít tři modemy
a obsazeny tři rozhraní na směrovači. Obrázek 4.19 znázorňuje rozsáhlou
síť hypotetické firmy, která je situována v Praze, Plzni, Č.Budějovicích
a Brně.
Obr. 4.19 WAN založená na pevných linkách
Naproti tomu poskytovatel sítě Frame Relay provozuje vlastní datovou síť. Uživatel (zákazník) je na tuto síť napojen v jednotlivých lokalitách zpravidla jednou linkou o vyšší kapacitě.
Obr. 4.20 WAN založená na Frame Relay
Obr. 4.21 Připojení k poskytovateli
Frame Relay
Rámec má na cestě po virtuálním okruhu od zdroje k cíli celou řadu linek, kterými prochází. Mezi uživatelem a provozovatelem je linka (rozhraní uživatel-síť). Dále má na cestě jednotlivé linky od jednoho přepínače Frame Relay ke druhému. Na druhém konci následuje opět rozhraní uživatel-síť. Každý virtuální okruh je identifikována tzv. DLCI. DLCI je součástí záhlaví Frame Relay rámce. Jdou-li z nějaké lokality uživatele např. dva virtuální okruhy do různých lokalit, pak jednotlivé lokality se určují v záhlaví rámce pomocí DLCI.
Obr. 4.22 DLCI
DLCI se mohou používat v síti Frame Relay:
Každý bajt záhlaví obsahuje bit EA, který určuje, zda-li následující bajt je součástí záhlaví nebo přenášených dat. Je-li EA=0, pak i následující bajt je součástí záhlaví, je-li EA=1, pak je tento bajt posledním bajtem záhlaví.
Pole DLCI je identifikací virtuálního okruhu, jedna se obdobou adresy v protokolu HDLC.
Bit C/R určuje, zda-li jde o příkaz (C) nebo odpověď (R).
Nastavením bitu DE se signalizuje, že rámec se má zahodit.
Zbývají bity FECN a BECN. I když nastavování těchto bitů je nepovinné, tak se u nich zastavíme. Pomocí těchto bitů se řeší problém zahlcení virtuálního okruhu. Posílají-li se data virtuálním okruhem z jednoho konce do druhého, pak nevadí, když se nějaký paket ztratí (např. na úrovni protokolu TCP se přenos zopakuje). Problém je ale s zahlcením spoje, tj. je-li na cestě k cíli nějaké úzké místo, které není schopno rámce takovou rychlostí posílat dále. Rámce se takovému uzlu hromadí ve vyrovnávací paměti (ve frontě), až dojde k vyčerpání fronty a další rámce se musí zahazovat. Tuto situaci nazývám zahlcením linky.
Ztráta rámců pro vyšší vrstvy znamená, že si musí vyžadovat opakování přenosu paketů vyšší vrstvy, tj. zopakování vysílání ztracených rámců. Nebo dokonce může znamenat ztrátu spojení, tj. spojení je nutné obnovovat. V každém případě to znamená zvýšení objemu přenášených dat.
V případě zahlcení virtuálního okruhu signalizuje
síť odesilateli zahlcení nastavením bitu BECN a příjemci signalizuje zahlcení
nastavením bitu FENC (odesilatelem a příjemcem je myšlen uživatelův směrovač
na rozhraní uživatel-síť). Odesílání rámců s nastaveným bitem BECN (resp.FENC)
síť provádí v okamžiku, kdy je zahlcena, tj. kdy
musí zahazovat rámce. Síť může však zahlcení i předpovídat, když při kontrole
front nahromaděných rámců na uzlech sítě Frame Relay zjistí, že některá
fronta je blízká vyčerpání.
Obr. 4.25 Signalizace přehlcení virtuálního
okruhu
Nastavení bitů BECN a FECN se neprovádí u rámců běžných datových okruhů (datových DLCI). Pro tuto signalizaci je rezervováno služební DLCI=1023, jehož rámce síť Frame Relay odesílá uživateli na rozhraní uživatel-síť.
ATM přenáší: zvuk, video, rámce datových sítí tvořících virtuální okruhy (Frame Relay, X.25) i datových sítí netvořících virtuální okruhy jako je např. IP-protokol.
ATM využívá asynchronní přenos, veškerá
přenášená data se na vstupu krouhají do poměrně krátkých buněk, které jsou
dlouhé 53 bajtů, jak je znázorněno na obr. 4.26. Každá buňka přenáší 48
bajtů dat. Veškerá vstupní data (zvuk, video, privátní sítě, spojované
i nespojované sítě) se namelou do buněk (viz obr. 4.26). Síť ATM pak přenáší
buňky směrem k příjemci. Příjemce pak
z dopravených buněk skládá původní informaci.
Obr. 4.26 ATM mele pakety různých protokolů
do jedné standardní ATM buňky o velkosti 53 bajtů
ATM používá k přenosu dat fyzické linky (např. E1, E3 atp.).
Logicky je fyzická linka rozdělena na virtuální cesty (Virtual Path
– VP). Jak je znázorněno na obr. 4.27, tak každá virtuální cesta je dále
rozdělena na virtuální kanálky (Virtual Channel – VC).
Obr. 4.27 Virtuální cesty a virtuální kanálky
Každá ATM buňka ve svém záhlaví nese identifikaci virtuální cesty (Virtual Path Identifier –VPI) a virtuálního kanálku (Virtual Channel Identifier –VCI). Virtuální cesty i virtuální kanálky jsou jednostranné cesty, tj. pro oboustrannou komunikaci musí být pro každý směr komunikace zřízena samostatná cesta.
Jádrem ATM sítě jsou tzv. ATM přepínače,
které přepínají virtuální cesty mezi sebou. Na obraze 4.28 je schématicky
znázorněn ATM přepínač přepínající virtuální cesty. Takovýto ATM přepínač
přepisuje identifikaci VPI v záhlaví buňky. Na obr. 4.28 přepisuje např.
VPI=1 na VPI=6. Identifikace virtuálních kanálků zůstávají zachovány.
Obr. 4.28 ATM přepínač přepínající
virtuální cesty
ATM přepínače mohou přepínat nejenom virtuální cesty, ale i virtuální kanálky jak je znázorněno na obr. 4.29. Takový přepínač se skládá ze dvou vrstev. Spodní vrstva přepíná virtuální cesty, horní pak přepíná i virtuální kanálky.
Obr. 4.29 Přepínání virtuálních kanálků
Příchozí (resp. odcházející) ATM buňka je v ATM přepínači identifikována třemi údaji: VPI, VCI a síťovým rozhraním (interface) ATM přepínače.
Pro přepínání ATM buněk udržuje ATM přepínač
přepínací tabulku, která říká jaké buňky na vstupu se mají přepnout na
jaké buňky na výstup. Např. na obr. 4.30 počítač A chce odesílat buňky
jak počítači B, tak i počítači C. Počítač A používá pro odesílání buněk
na počítač B identifikaci VPI=3/VCI=31; buňky jsou na počítač B doručovány
s identifikací VPI=6/VCI=31, tj. dochází pouze k přepínání cesty z VPI=3
na VPI=6.
Obr. 4.30 Přepínání buněk
Přepínací tabulka pak pro náš případ musí mj. obsahovat následující
údaje (je třeba si uvědomit, že ATM spoj je jednostrannou komunikací, takže
tabulka musí mít minimálně další řádky pro komunikaci v opačném směru).
Vstup | Výstup | ||
Rozhraní | VPI/VCI | Rozhraní | VPI/VCI |
|
3/31 | 2 | 6/31 |
1 | 4/34 | 4 | 5/35 |
Některé kombinace VPI/VCI jsou vyhrazeny pro služební účely.
Rozlišujeme dva typy rozhraní (viz obr. 4.31):
Struktura hlavičky ATM buňky závisí na
skutečnosti, zda-li se jedná o buňku na rozhraní UNI nebo NNI. Jak je vidět
z obr. 4.32 Rozdíl mezi těmito dvěma typy spočívá pouze v tom, že buňka
UNI má na úkor pole VPI navíc pole GFC.
Obr. 4.32 Záhlaví ATM buněk
Význam jednotlivých polí záhlaví:
Z hlediska síťového modelu se problematika ATM skládá ze tří vrstev:
Na obr. 4.35 je znázorněn formát paketu vrstvy AAL typu 5. Výplň slouží k dosažení délky paketu tak, aby byla násobkem 48. Pole UU (User to User indication) je určeno pro přenos uživatelské informace. Pole CPI (Common Part Indicator) je určeno pro řízení výkonu a monitorování (tč. se nevyužívá). Pole délka obsahuje délku AAL paketu a pole CRC obsahuje kontrolní součet.
Na obr. 4.36 je pak znázorněna segmentace (mletí) AAL paketu do ATM buněk. V záhlaví ATM buněk se využívá pole PT. Pole PT je nastaveno na nulu kromě poslední buňky, která jej má nastaveno na jedničku. Vrstva AAL typu 5 předpokládá, že ATM buňky nesoucí konkrétní AAL paket jsou ATM sítí přenášeny za sebou, tj. nedochází k záměně pořadí buněk. Pomocí pole PT lze tak i buňku na druhém konci sestavit – datové části přicházejících buněk se skládají za sebe dokud nedorazí buňka s PT=1, tak se přidá jako poslední a vznikne tak sestavený AAL paket.
K vytváření okruhů slouží signalizace.
Signalizace neslouží jen k vytváření okruhů, ale i k signalizaci chybových
stavů, k monitorování sítě atd.
Signalizace probíhá ve dvou krocích.
(Existují i jiné varianty signalizace,
kdy se informace síti předají jen metasignalizací, pak
se zpravidla využívá kanálek VPI=0/VCI=5.)
I když se v sítích ATM signalizací ani
směrováním dále již nebudeme podrobně zabývat, tak si uveďme alespoň tvar
ATM adres.
Obr. 4.37
Na obr. 4.37 jsou nejčastěji používané ATM adresy (nejedná se o standarty ITU, ale ATM fóra). ATM adresy jsou odvozeny od NSAP – adresy používané protokoly OSI. Adresy jsou dvacetibajtové a skládají se z polí:
Obr. 4.38 Základní mód a emulace LAN
Architektura LAN emulace je znázorněna na obr. 4.39. Architektura se skládá z následujícího software:
V uplynulých deseti letech byla vyvinuta celá řada systémů LAN. Masového rozšíření se však dočkaly jen dva: Ethernet a v menším rozsahu FDDI. (Někdy se ještě setkáváme se systémem Token Ring firmy IBM, ale to spíše v případech, že uživatel je kompletně vybaven systémy firmy IBM.)
Pro připojení stanice na LAN je nutné do stanice vložit příslušnou přídavnou desku. Linkové protokoly LAN jsou realizovány z části přímo v přídavné desce.
Problematika LAN se vždy skládá z
Instituce IEEE před dvaceti lety předložila projekt, jehož cílem bylo vypracovat normy pro jednotlivé typy LAN (apr. Ethernet, Arcnet, Token Ring atd.). Tyto normy popisovaly pro každý typ LAN vrstvu MAC. Vznikla tak norma IEEE 802.3 pro Ethernet, IEEE 802.4 pro Token Bus, IEEE 802.5 pro Token Ring atd.
Pro všechny systémy pak byla vypracována společná norma pro vrstvu LLC pod označením IEEE 802.2, což schématicky vyjadřuje obr. 4.40.
Původní rozvod ethernetu by prováděn tzv. tlustým koaxiálním kabelem označovaným 10BASE5 . Koaxiální kabel, který mohl být dlouhý maximálně 500 metrů tvořil jeden segment lokální sítě. Segment tlustého ethernetu (jak se tomuto rozvodu často říkalo) byl většinou tvořen jedním kusem koaxiálního kabelu. Na koaxiální kabel byly napichovány transceivery, které se propojovaly šňůrou na AUI-port ethernetové přídavné karty v počítači. AUI-port zpravidla používá konektor CANNON-15.
Označení 10BASE5 vyjadřuje, že se
jedná o síť používající přenosovou frekvenci 10 MHz (ta je v případě ethernetu
rovná i teoretické přenosové rychlosti sítě).
Obr. 4.41 Segment Ethernetu tvořený
koaxiálním kabelem
Masově se ethernet rozšířil na tzv. tenkém koaxiálním kabelu. Tenký koaxiální kabel je u každé stanice přerušen a na oba konce přerušení je buď napájen nebo speciálními kleštěmi namáčknut BNC-konektor. Mezi dva BNC-konektory se vloží BNC-T-konektor - "odbočka k počítači". Třetí vývod BNC-konektoru se nasadí přímo na ethernetovou přídavnou desku v počítači (na její BNC-konektor). Existují však i transceivery pro tenký ethernet, pak BNC-T-konektor připojí na transceiver pro tenký ethernet a šňůra z transceiveru se připojí na AUI-port počítače.
Tenký ethernet označovaný jako 10BASE2 může být tvořen segmentem o maximální délce 185 metrů. Použíjí-li se na segmentu stejné síťové přídavné karty, pak v případě některý karet je možné segment zvětšit až na 300-400 metrů.
Délka segmentu LAN je tedy 500 (resp. 185
- 300) metrů. Rozsah LAN je možné zvětšit tím, že použijeme více segmentů,
které mezi sebou propojíme tzv. opakovači. Opakovač je v tvořen
dvěmi nebo více síťovými kartami, které jsou vzájemně propojeny. Objeví-li
se nějaký datový rámec na jednom rozhraní, pak je automaticky zopakován
na všechny ostatní. Opakovač může být osazen AUI i BNC porty, takže některé
segmenty mohou používat tlustý a jiné tenký ethernet.
Obr. 4.42 LAN tvořena jednotlivými
segmenty
Mezi dvěma opakovače může být použita i dvojice optických kabelů, tento typ ethernetu se někdy označuje jako 10BASE-F. Délka optického propojení dvou opakovačů může být 1 km.
Nyní si řekneme, že opakovač může být osazen i porty pro kroucenou dvojlinku. V případě kroucené dvojlinky je situace trochu odlišná. Kroucená dvojlinka (přesněji řečeno dva páry vodičů) je rozhraní mezi opakovačem a počítačem. Spíše toto rozhraní připomíná rozhraní mezi transceiverem a AUI-konektorem (neobsahuje však napájení).
V případě kroucené dvojlinky je jádrem
sítě opakovač (na rozdíl od koaxiálního kabelu). Z opakovače se hvězdicovitě
rozbíhají kroucené dvojlinky k jednotlivým počítačům. Opakovač pro kroucenou
dvojlinku se označuje jako HUB (označení HUB se používalo pro aktivní prvek
u sítí s hvězdicovou topologií). HUB může mít pochopitelně i BNC nebo AUI-porty.
Obr. 4.43 Opakovač pro kroucenou dvojlinku
(HUB)
Spoj mezi opakovačem a počítačem je tvořen dvěma páry kroucené dvoulinky (4 vodiče). Jedná se o duplexní spoj, kde pro každý kanál je určen jeden pár. Z hlediska počítače je tedy jeden pár "vysílání" a druhý pár "příjem". HUBy pro kroucenou dvojlinku je možné mezi sebou vzájemně propojovat. Ale pozor, co je pro jeden "vysílání" je pro druhý "příjem", takže v propojovací šňůře musí být páry překřížené (jako např. v případě nulových modemů). Většinou se však dodávají HUBy, kde jeden port je osazen přepínačem, který právě způsobí překřížení párů, takže stačí použít "normální" propojovací šňůru a připojit ji do portu s přepínačem a ten přepnout do vhodné polohy.
Ethernet na kroucené dvojlince se označuje jako 10BASE-T. Existuje i verze desetkrát rychlejšího ethernetu označovaná 100BASE-TX a gigabitový Ethernet označovaný 1000BASE-CX. (Pomocí opakovačů nelze kombinovat 10BASE-T, 100BASE-TX a 1000BASE-CX - propojit je lze až pomocí přepínače). Délka dvojlinky mezi opakovačem a stanicí je standardně do 100 metrů.
Z hlediska síťového modelu pracuje opakovač (HUB) na fyzické úrovni. Komunikace mezi počítači je v LAN osazené opakovači transparentní (průhledná), tj. počítače na LAN spolu komunikují, aniž by o opakovači věděly.
Obr. 4.44 Opakovač pro kroucenou dvojlinku
Oproti opakovači most také spojuje mezi sebou jednotlivé segmenty LAN, ale neopakuje mechanicky všechny rámce, které se nějakém z jeho portů objeví. Most je realizován specializovaným počítačem, který má předávací tabulku. V tabulce je seznam všech linkových adres všech síťových rozhraní LAN. U každé adresy má poznamenáno, za kterým síťovým rozhraním mostu se nachází. Objeví-li se datový rámec na nějakém síťovém rozhraní mostu, pak se most podívá do datového rámce na adresu příjemce a z předávací tabulky zjistí, za jakým rozhraním se adresát nachází. Rámec pak zopakuje pouze do rozhraní, za kterým je adresát. V případě, že se adresát nachází za stejným rozhraním, pak jej neopakuje vůbec. Oběžníky se pochopitelně opakují do všech rozhraní.
Důležitým parametrem mostu je jak velkou může mít předávací tabulku, tj. kolik má na ní paměti. Avšak kardinální otázkou je jak takovou tabulku naplnit správnými údaji. Naskýtá se odpověď, že data do ní může pořídit správce LAN ručně. Možná, že vám to připadá směšné řešení, ale toto řešení je oblíbené v případě sítí, kde se klade velký důraz na bezpečnost, pak správce LAN takovou tabulkou přesně řekne, kdo kam může. Dnes se mosty doplňují i o další tabulku, která je obdobou předávací tabulky a která vyjadřuje, kdo kam nemůže.
Jak se ale předávací tabulka naplní
automaticky? Algoritmus je velice jednoduchý. Most pracuje po zapnutí v
podstatě jako opakovač, tj. opakuje vše na všechna rozhraní. Avšak každému
příchozímu rámci se podívá na adresu odesilatele. Most ví z jakého rozhraní
rámec přišel, takže si může jako novou položku
do předávací tabulky uložit adresu odesilatele a příslušné rozhraní.
Obr. 4.45 Most
V lokální síti můžeme mít i více mostů. Předávání rámců mezi jednotlivými rozhraními mostu nemusí být tak rychlé jako u opakovače (může být delší doba odezvy). To otevírá cestu k tomu, aby dva mosty sítě byly propojeny např. sériovou linkou s modemy nebo radioreleovým spojem.
Jádrem jednotlivých segmentů LAN je opakovač. Jednotlivé segmenty jsou propojeny pomocí mostu. Na segment se pak umísťují počítače, které spolu více komunikují. Např. počítače jednoho oddělení. Na port mostu je užitečné připojit např. směrovač směřující do Internetu nebo centrální server atp. Pomocí mostu lze tedy oddělit provoz mezi segmenty.
Jiným řešením je použít most s velkým počtem portů a nepoužít již opakovače pro jednotlivé segmenty sítě. Takovéto řešení se někdy nazývá přepínaný ethernet. Jádrem přepínaného ethernetu je inteligentní most, který v okamžiku, kdy zjistí, na který interface má rámec opakovat, tak paralelně již začíná zpracovávat další rámec. Takovýto most se již označuje už jako přepínač.
Obr. 4.46 Přepínač
Přepínačem se označují výkonnější mosty, které umí opakovat rámce nejen mezi jednotlivými segmenty ethernetu, ale i např. mezi ethernetem a fast ethernetem. Mezi ethernetem a FDDI atd. Přepínač musí umět nejenom změnit tvar rámce např. z ethernetu na FDDI, ale se i pokusit překlenout rozdíl mezi přenosovými rychlostmi. Problém je totiž při přenosu dat mezi rychlým segmentem (FDDI) a např. ethernetem, kdy z FDDI může směrovat na ethernet takové množství dat, že jej ethernet nedokáže odebírat. Rámce se musí ukládat do vyrovnávací paměti přepínače atd.
Pro výměnu rámců mezi stanicemi se používá protokol CSMA/CD. V tomto protokolu jsou si všechny stanice na LAN rovny. Potřebuje-li nějaká stanice vysílat, pak si poslechne zdali jiná stanice právě nevysílá. V případě, že médium není používáno (jiná stanice nevysílá), pak může stanice začít vysílat. Jenže v přibližně stejném okamžiku to mohlo napadnout dvě stanice najednou. Takže kromě toho, že stanice vysílá data, tak ještě připoslouchává, jestli nezačal vysílat současně někdo jiný. V případě, že současně začala vysílat jiná stanice, tak dochází ke kolizi. Při kolizi nemohou obě stanice okamžitě přestat vysílat (aby kolize byla i ostatními detekovatelná), tak ještě nějakou dobu vysílají bezvýznamné znaky a pak se na náhodně zvolený časový interval odmlčí.
Čím je na ethernetu větší provoz, tím je větší prvaděpodobnost vzniku kolizí. Rozumnou zátěží je využití sítě asi na 20%. Takže u varianty ethernetu s frekvencí 10MHz kalkulujeme propustnost sítě asi na 2 Mb/s (tj. 256 KB/s. Pro ilustraci u FDDI (100 MHz) je výtěžnost 80-90%, takže lze kalkulovat 90Mb/s, tj. asi 11 MB/s.
Pokud ale máme segment, kde jsou pouze dvě stanice, tak na koaxiálním kabelu může dojít na takovémto segmentu také ke kolizi. Jiná je situace v případě, že segment o dvou stanicích je na kroucené dvojlince, která má samostatný pár pro vysílání a samostatný pár pro příjem. Síťové karty se pak na takovýchto segmentech předpnou do plně duplexního provozu ve kterém může stanice současně přijímat i vysílat data. Takovýto segment se nazývá bezkolizním segmentem. Na bezkolizním segmentu můžeme dosahovat praktických přenosových rychlostí blížících se až k teoretickému maximu. Pokud jádrem LAN není opakovač, ale přepínač a jednotlivé stanice jsou připojeny bezkolizním segmentem, pak hovoříme o přepínaném Ethernetu. Bezkolizním segment je tvořen z jedné strany počítačem a z druhé strany rozhraním přepínače.
Struktrura rámce protokolu Ethernet závisí
na použité normě. Struktura rámced protokolu Ethernet II je znázorněna
na obr. 4.47.
Obr. 4.47 Etherent II
Ethernet II má na počátku synchronizační preambuli (součást fyzické vrstvy), při které se synchronizují všechny stanice přijímající rámec. Na konci rámce je kontrolní součet, ze kterého lze zjistit, nebyl-li rámec přenosem poškozen. Dále obsahuje šestibajtovou linkovou adresu příjemce a odesilatele, pole specifikující protokol vyšší vrstvy (tj. síťové vrstvy) a vlastní přenášená data (specifikace protokolů: IP verze 4, ARP a RARP je patrná z obrázku 4.47). Datové pole musí být minimálně 46 bajtů dlouhé, takže v případě, že je potřeba přenášet méně dat, tak se datové pole zprava doplní bezvýznamnou výplní.
Fyzická adresa je šestibajtová. První tři bajty specifikují výrobce přídavné karty a zbylé tři bajty kartu v rámci výrobce, takže adresy jsou celosvětově unikátní. Toto platí pouze pro tzv. globální adresy, které jsou celosvětově jednoznačné. Tyto adresy jsou uloženy v permanentní paměti přídavné desky. Při inicializaci kary ovladačem lze kartě sdělit aby nepoužívala tuto adresu, ale adresu jinou. V rámci firmy tak lze používat vlastní systém linkových adres. Tento mechanismus využíval např. protokol DECnet fáze IV.
Síťová karta může používat globálně jednoznačnou adresu nebo jednoznačnou adresu v rámci firmy. Kromě těchto jednoznačných adres existují ještě oběžníky. Všeobecný oběžník (adresa se skládá z 48 jedniček) je určen pro všechny stanice na LAN. Adresný oběžník (má nastaven nejnižší bit prvního bajtu na jedničku) je určen pouze některým stanicím na LAN, stanicím, které akceptují uvedenou adresu.
Nultý a první bit prvního bajtu linkové adresy mají specifický význam (viz obr. 4.48):
Situace u protokolu ISO 8802-3 je
poněkud složitější. Datový rámec protokolu ISO 8802-3 se sice liší pouze
v jednom poli proti protokolu Ethernet II viz obr. 4.49.
Obr. 4.49
Avšak datové pole (viz obr. 4.50) může nést v sobě nikoliv přímo data, ale paket protokolu ISO 8802-2, jehož záhlaví může být rozšířeno ještě o další dvě pole tvořící tzv. SNAP. Jinými slovy stanici mohou spolu komunikovat:
Pole délka vyjadřuje délku přenášených dat. Je to pole, kterým se právě obě normy liší. V provozu sítě však nemůže dojít k záměně typů rámců jednotlivých protokolů, protože délka dat je nejvýše 1500 a specifikace protokolů pro normu Ethernet II jsou vyjadřovány vyššími čísly než 1500.
V Internetu je předepsáno, že každá stanice musí podporovat protokol Ethernet II. Pouze stanice, které se nějak dohodnou na použití protokolu Ethernet ISO 8802-3 jej mohou používat. Proto se v naprosté většině případů v Internetu setkáváme s protokolem Ethernet II.
Vraťme se k popisu polí. Destination Service Access Point (DSAP) / Source Service Access point (SSAP) specifikují aplikaci cílovou / zdrojovou aplikaci, která rámec odesílá / přijímá. Např. pro IP-protokol se používá DSAP=SSAP=AA16 a pro NetBIOS se používá DSAP=SSAP=F016. Při použití protokolu ISO 8802-2 je možné doručovat data až jednotlivým aplikacím běžícím na stanici. Existují i síťové protokoly, které pro komunikaci na LAN používají pouze tuto adresaci (nepoužívají síťovou vrstvu). Použití takových protokolů je sice efektní (o jednu vrstvu jsou rychlejší), ale jsou nesměrovatelné, tj. jsou určeny pouze pro LAN nikoliv pro WAN. Příkladem takovéhoto exotického protokolu je protokol NetBEUI.
Řídící pole je naprosto analogické řídícímu poli protokolu HDLC . Opět mezi stanicemi se může komunikovat pomocí U, I a S-rámci. Rámce mohou být číslovány, v případě ztráty nebo chyby v rámci může být vyžádána retransmise atd. Pro potřeby protokolu IP se používají pouze U-rámce a P/F bit je nastaven na nulu, tj. řídící pole má hodnotu 0316 (obdobně jako v případě protokolu PPP).
Pomocí záhlaví SNAP (Sub-network Access Protocol) je možné specifikovat protokol vyšší vrstvy, jedná se tedy o obdobu pole protokol v Ethernetu II. Dokonce pro specifikaci protokolu vyšší vrstvy se používají stejné hodnoty. Jinými slovy co chybělo protokolu ISO 8802-3 oproti protokolu Ethernet II (pole protokol) se krkolomně řeší pomocí záhlaví SNAP.
FDDI je lokální síť tvořící kruh. Jednotlivé stanice jsou propojeny do kruhu. K propojení stanic se používá optické vlákno. Lidovější variantou FDDI je varianta používající místo optického vlákna kroucenou dvojlinku (CDDI). Obě varianty se liší pouze použitým přenosovým médiem a modulem propojující přenosové médium se síťovou kartou. Tyto moduly jsou často výměnné, takže je možné snadno přejít od optického vlákna ke dvojlince a naopak.
Propojovací kruh je zpravidla zdvojen. Obsahuje primární a sekundární okruh. To umožňuje snadné zálohování situace, kdy dojde k přerušení kruhu. Přídavné síťové desky pro FDDI se vyrábějí ve dvou variantách:
Klasické zapojení FDDI spočívá v použití
síťových karet DAS. Páteř LAN na bázi FDDI spočívá právě ve vytvoření páteřního
kruhu ze stanic DAS. Právě karty DAS umožňují zdvojený páteřní kruh (primární
a sekundární). Síťové karty DAS se používají u koncentrátorů, přepínačů
a případně centrálních počítačů.
Obr. 4.52 Primární a sekundární kruh FDDI
Koncentrátor (Dual-Attachment Concentrator
- CAC) je aktivní prvek LAN, který kromě karty DAS obsahuje 2, 4, 8, 16,
32 atd. SAS rozhraní (viz obr. 4.53). Tyto SAS rozhraní označené jako M
(Master) slouží pro připojení
jednotlivých počítačů s kartou SAS typu Slave
k FDDI kruhu. V případě zapnutí stanice koncetrátor zařadí stanici do logického
kruhu FDDI a stanice muže komunikovat s ostatními stanicemi na LAN. Použití
SAS rozhraní pro jednotlivé počítače přináší úsporu nejen v ceně jednodušší
síťové karty, ale i jednoduššího rozvodu.
Obr. 4.53 DAC
Vypnutí nebo poruchu stanice SAS připojené ke koncetrátoru zjistí koncetrátor a stanici vyjme s logického kruhu FDDI bez toho, aby byla ohrožena komunikace na kruhu.
Funkce sekundárního kruhu FDDI spočívá v jeho využití při poruše primárního kruhu. Přerušení páteřního kruhu tvořeného primárním a sekundárním okruhem v jednom místě nebo porucha jedné stanice neohrozí celou síť. Obě situace a jejich řešení jsou znázorněny na následujícím obrázku 4.54.
Důležité je, že k přerušení kruhu může dojít pouze na jednom místě. Přerušení na více místech je pro FDDI osudové. Z tohoto důvodu se páteřní kruh zpravidla nerozvádí po budově, ale jen na nezbytně nutné vzdálenosti. K přerušení kruhu dojde i prostým vypnutím stanice, proto se na páteřní kruh neumísťují stanice, které neběží nepřetržitě.
FDDI se používá jako páteř lokální sítě. Pomocí přepínačů se propojuje s ostatními segmenty LAN, pro které je použit např. Ethernet, viz obr. 4.55.
Je třeba si uvědomit funkci přepínače.
Posílá-li totiž stanice na FDDI datové rámce stanici na ethernetu, pak
rámce mohou přicházet rychleji než je může přepínač předávat na ethernet.
Musí mít vyrovnávací paměť, do které si může určité množství dat uložit.
Dalším problémem přepínače je, že rámce na FDDI a na ethernetu mají odlišnou
strukturu, proto musí umět provést konverzi rámců mezi FDDI a ethernetem.
Obr. 4.54 Porucha na páteřním kruhu
FDDI
Obr. 4.55 Přepínač na FDDI kruhu
Obr. 4.63 Rámec FDDI
Formát zdrojové a cílové adresy se u protokolu FDDI používá stejný jako pro Ethernet. Zajímavé je řídící pole, které obsahuje: