Archiwum  
Telenet.forum
CZASOPISMO KATALOG WWW ARCHIWUM OFERTY PRACY REKLAMA PRENUMERATA

Telenet.forum



STYCZEŃ 2001  

SIECI

Protokoły sieciowe
Token Ring

Token Ring jest drugim pod względem rozpowszechnienia protokołem warstwy drugiej dla sieci lokalnych. Protokół ten powstał w latach osiemdziesiątych w laboratorium IBM w Zurichu, a jako standard został zatwierdzony przez IEEE (Institute of Electrical and Electronic Engineers) pod numerem 802.5.

IBM - twórca protokołu Token Ring - jako pierwszy wprowadził do sprzedaży pracujący w tym standardzie sprzęt w październiku 1985 roku. Urządzenia pracowały z prędkością 4 Mb/s. Jednocześnie IBM współpracował z Texas Instruments nad produkcją chipsetów dla innych firm, aby i one mogły rozwijać tę technologię dla swoich platform sprzętowych. Już cztery lata po premierze, w 1989 roku, IBM poczynił kolejny krok na drodze rozwoju tego protokołu, wprowadzając produkty o czterokrotnie większej przepływności - 16 Mb/s. W 1994 roku powstał ASTRAL (Alliance for Strategic Token-Ring Advancement and Leadership), w którego skład weszły początkowo 3 Com, ACE, North Hills, Bay Networks, Bytex, Cabletron, Centillion, Chipcom, Hewlett Packard, IBM, Intel, Madge, Olicom, Proteon, Racore, SMC, Texas Instruments, Xircom, Xpoind oraz UB Networks. Dzięki tej współpracy w 1997 roku ukazał się szkic standardu 802.5r, który definiował Dedykowany Token Ring (ang. DTR - Dedicated Token Ring).

Protokół ten umożliwia obukierunkową transmisję danych pomiędzy dwoma stacjami w pierścieniu (tzn. stacja jest w stanie nadawać strumień danych z szybkością 16 Mb/s, jednocześnie odbierając inny strumień danych, także z szybkością 16 Mb/s), co zwiększyło całkowitą przepływność do 32 Mb/s. W tym samym czasie powstała HSTRA (ang. High Speed Token-Ring Alliance), której założycielami były takie firmy, jak 3Com, Bay Networks, IBM, Madge Networks, Olicom, the UNH Interoperability Lab oraz Xylan. Celem tej współpracy było stworzenie standardu Token Ring dla przepływności od 100 Mb/s do przynajmniej 1 Gb/s. I tym razem, dzięki kooperacji gigantów, powstała kolejna wersja standardu, 802.5t, która definiuje Token Ring o przepływności 100 Mb/s.

Pierwsze urządzenia Token Ring dla 100 Mb/s zostały zaprezentowane przez IBM oraz Olicom w 1998 roku, czyli jeszcze przed zatwierdzeniem standardu przez IEEE. Kolejny szkic standardu 802.5v definiuje Gigabit Token Ring o przepływności 1 Gb/s i w ostatnich miesiącach 2000 roku był w końcowej fazie zatwierdzania przez IEEE.

Rys. 1

Token Ring jest protokołem, w którym wszystkie stacje są połączone w topologii pierścienia (rys. 1). Obowiązują tu następujące zasady:

  • Każda stacja ma prawo do nadawania tylko wtedy, gdy jest w danej chwili posiadaczem tokena (rys. 1).
  • Stacje przekazują sobie kolejno token, który krąży po pierścieniu, dając każdej stacji w pierścieniu prawo do nadawania (rysunki 1, 2 i 3).
  • Każda stacja odbiera jedynie to, co nadaje jeden z najbliższych sąsiadów (rys. 3).
  • Stacja, po odebraniu tokena, zatrzymuje go i w jego miejsce wstawia ramkę z danymi do nadania.
  • Po odebraniu ramki z danymi stacja powtarza ją do następnej stacji w pierścieniu.
  • Gdy ramka z danymi, po obejściu całego pierścienia, powróci do stacji, która ją nadała, jest usuwana i w jej miejsce jest wstawiany, a potem przekazywany dalej, token.
Rys. 2

Rys. 3

Token jest ramką, dającą jej aktualnemu posiadaczowi (stacji, która go odebrała i jeszcze nie przesłała dalej) prawo nadawania. Budowa tej ramki jest bardzo prosta, gdyż składa się z jedynie trzech bajtów:

  • jednego bajtu startowego;
  • jednego bajtu kontroli dostępu, który zawiera informacje o typie i priorytecie ramki (dokładniej jest to opisane przy ramce danych);
  • jednego bajtu końcowego.
Rys. 4

Ramka danych zaś jest znacznie bardziej skomplikowana (rysunek 4). Składa się ona z:

  • Jednego bajtu startowego - jego celem jest rozpoznanie ramki.
  • Jednego bajtu kontroli dostępu, który się składa z:
    - trzech bitów priorytetu tokena (000 - najniższy, 111 - najwyższy), czyli informacji o tym, które ze stacji mogą w danej chwili zatrzymać token dla siebie;
    - jednego bitu odróżniającego ramkę danych od ramki tokena (0 - token, 1 - dane);
    - jednego bitu licznika aktywnego monitora (pojęcie monitora zostanie wyjaśnione w dalszej części);
    - trzech bitów priorytetów rezerwacji (te bity będą zmieniane z 000 - na wyżej, do 111 - przy przekazywaniu ramki danych przez stacje o wyższym priorytecie, w celu szybszego uzyskania dostępu do tokena).
  • Jednego bajtu kontrolnego ramki, składającego się z:
    - dwóch bitów, dzięki którym się rozpoznaje, czy jest to ramka LLC czy MAC (LLC=01, MAC=00 );
    - dwóch bitów równych 0;
    - czterech bitów, dzięki którym można zakomunikować specjalne operacje, takie jak sprawdzenie aktywności monitorów, poszukiwanie tokena itd.
  • Sześciobajtowego MAC adresu odbiorcy (łącznie z informacją, czy jest to adres indywidualny czy grupowy).
  • Sześciobajtowego MAC adresu nadawcy.
  • 0-30 bajtów informacji routowania, używanych przez:
    - dwa bajty kontroli routowania;
    - do czternastu dwubajtowych znaczników routowania, dodawanych przy każdym przejściu przez most (ang. bridge) przy zmianie pierścienia; każdy znacznik składa się z dwunastobitowego znacznika pierścienia oraz czterech bitów numeru mostu.
  • 0-n bajtów danych - gdzie n jest zależne od stosowanej przepływności (dla 4 Mb/s - jest to 0 do 4472 bajtów, a dla 16 Mb/s jest to 0 do 17 800 bajtów).
  • Czterobajtowej sekwencji kontrolnej, sprawdzającej przez CRC (Cyclical Redundancy Check) poprawność przesłanych danych.
  • Jednobajtowej sekwencji końcowej.
  • Jednobajtowego znacznika statusu ramki - wyglądającego w następujący sposób: AcrrACrr, gdzie:
    - A (ang. Address recognized) - początkowo równe jest 0, gdy stacja rozpozna adres docelowy, zmienia go na 1;
    - C (ang. frame Copied) - początkowo równe 0, gdy stacji w pierścieniu uda się skopiować ramkę do stacji docelowej;
    - r - zarezerwowane, zawsze równe 0. Sekwencja AC umieszczona jest w tym znaczniku dwukrotnie, gdyż nie jest on objęty kontrolą poprawności CRC. Dzięki temu znacznikowi nadawca jest w stanie stwierdzić, że adresat został znaleziony oraz odebrał dane (1100'1100 ), czy może został znaleziony, ale nie udało się przekazać mu danych (1000'1000 ), czy też że adresat nie został znaleziony (0000'0000 ).

W związku z tym, że w wypadku Token Ringu mamy do czynienia z możliwością zagubienia czy próbą kradzieży tokena, istnieją mechanizmy mające na celu wykrywanie oraz rozwiązywanie tego typu problemów. W każdym pierścieniu istnieje dokładnie jedna stacja, będąca monitorem aktywnym (ang. active monitor). Do jej zadań należy:

  • "prowadzenie" głównego zegara dla pierścienia, do którego synchronizują się inne stacje;
  • zapewnienie prawidłowej cyrkulacji tokena przez wstawianie 24-bitowego opóźnienia (czyli o długości tokena), aby uniknąć sytuacji, gdy stacja nadająca token jednocześnie go odbiera po pełnym okrążeniu;
  • zapewnienie detekcji zagubienia tokena przez prowadzenie zegara, z maksymalnym ustawionym czasem większym niż przesłanie przez cały pierścień najdłuższej dozwolonej ramki;
  • rozpoznanie ramki, która okrąża pierścień po raz kolejny, i usunięcie jej.

Inną, aczkolwiek nie rozbieżną funkcję, pełni monitor podtrzymujący (ang. standby monitor), który zajmuje się także detekcją zagubienia tokena oraz istnienia i aktywnej pracy monitora aktywnego.

W ramach jednego pierścienia może pracować do 260 stacji, jednakże to górne ograniczenie może być niższe w zależności od czynników, takich jak przepływność, rodzaj medium transmisyjnego, a także użycie repeaterów, konwerterów, koncentratorów.

W pierwotnej wersji Token Ring został fizycznie zaimplementowany za pomocą 150-omowej ekranowanej skrętki (STP), później jednak przystosowano go do konwencjonalnej 100-omowej nieekranowanej skrętki, co w sposób znaczący wpłynęło na jego rozpowszech-
nienie.

Maciej Korzeniowski

 

Konkurs "System Informatyczny Roku 2002"
SIR-2002
Wydawnictwo LUPUS

TELENETforum
ul.Stępińska 22/30
00-739 Warszawa

tel: (0-22) 841-51-21
fax: (0-22) 841-03-74

koperta
[email protected]
[email protected]

Czasopismo * Katalog WWW * Poradniki * Archiwum * Reklama * Prenumerata * Kioski * Redakcja * Biuro reklamy * Cennik reklam * Konkurs SIR
Wszelkie prawa zastrzeżone © 2001, Lupus Sp. z o.o.
[email protected]