Protokoły Aloha



Pobieranie 32.48 Kb.
Data02.05.2016
Rozmiar32.48 Kb.
Protokoły Aloha
N
ajstarszym i najszerzej znanym protokołem dostępu do łącza dla sieci bezprzewo­dowej jest protokół stosowany w sieci Aloha. Sieć ta składa się z komputera dużej mocy, wyposażonego w stację centralną, oraz dużej liczby terminali, do których dołą­czone są stacje lokalne. Transmisja ze stacji lokalnej może rozpocząć się kiedykol­wiek, niezależnie od stanu łącza, jeżeli tylko dana stacja ma skompletowaną ramkę do wysłania. W związku z tym w sieci następuje wiele kolizji między ramkami, wysyła­nymi przez różne stacje. Ponieważ w sieci Aloha stacja centralna wysyła potwierdze­nia poprawnego odebrania ramki, brak takiego potwierdzenia w określonym czasie może świadczyć o kolizji ramek; ramka niepotwierdzona jest wówczas nadawana po­nownie po upływie losowo dobranego czasu według tych samych zasad. Zasadę działania protokołu Aloha ilustruje rysunek 1.

O
dmianą protokołu Aloha jest tzw. Aloha szczelinowa (ang. Slotted Aloha). W proto­kole tym czas podzielony jest na tzw. szczeliny czasowe (ang. time slot). Każda stacja po skompletowaniu ramki musi wstrzymać się z nadawaniem do momentu rozpoczę­cia najbliższej szczeliny. Jeżeli więcej niż jedna stacja rozpoczęła nadawanie, oczy­wiście wystąpi kolizja; jeżeli jednak daną szczelinę wybrała tylko jedna stacja, to ramka ta nie zostanie zniekształcona przez jakąkolwiek inną ramkę. Mechanizm ten podnosi dwukrotnie przepustowość łącza. Zasadę działania tego protokołu ilustruje rysunek 2.



Protokół CSMA/CA

Protokół CSMA/CA (ang. Carrier Sense Mullipie Access with Collision Avoidance) jest wykorzystywany m.in. w amatorskiej sieci Packet Radio. Po skompletowaniu ramki stacja nadawcza sprawdza stan łącza. Jeśli jest ono wolne, stacja rozpoczyna nadawanie, a jeśli zajęte - transmisja jest wstrzymywana do czasu zwolnienia łącza. W celu wykrycia kolizji lub innych błędów transmisji, stacja odbierająca musi wysłać potwierdzenie (pozytywne lub negatywne) odebrania ramki. Ramki przekłamane są nadawane ponownie.

W protokole tym istnieje możliwość kolizji, jeżeli dwie stacje zaczną nadawać rów­nocześnie lub prawie równocześnie po okresie zajętości łącza. Inną możliwą przyczy­ną kolizji jest opóźnienie propagacyjne, które powoduje błąd oceny stanu łącza (stacja rozpoczyna nadawanie, ponieważ nie odbiera ona jeszcze sygnałów od innej stacji).

Wśród protokołów CSMA wyróżniamy protokoły:



  • bez wymuszania transmisji, czyli nietrwałe (ang. nonpersistent), w których stacja, po stwierdzeniu zajętości kanału, losowo dobiera moment następnej próby dostępu;

  • z wymuszaniem transmisji z prawdopodobieństwem p, czyli trwale (ang. p-persistent), w których stacja czeka do chwili zwolnienia kanału, po czym dzieli czas na szczeliny i dokonuje prób transmisji z prawdopodobieństwem p w kolejnych szczelinach; długość szczeliny jest równa podwojonemu mak­symalnemu czasowi propagacji w danym kanale.

N
iezależnie od wariantu, wysłanie ramki musi być zawsze poprzedzone badaniem stanu kanału. Zasadę działania protokołów CSMA/CA pokazano na rysunku 3.


Protokół CSMA/CA z potwierdzaniem odbioru wykorzystywany jest również w nie­których bezprzewodowych sieciach lokalnych. Nie zapobiega on jednak kolizjom wy­nikłym z faktu wystąpienia zjawiska ukrytej stacji.



Protokół BTMA
Protokół BTMA (ang. Busy Tone Mu/tip/e Access) jest jedną z prób rozwiązania pro­blemu ukrytych stacji. Przyjmuje się, że kanał transmisyjny jest rozbity na dwa podkanały:

  • podkanał komunikatów (ang. message channe/), w którym przesyłane są dane,

  • podkanał zajętości (ang. busy-tone channe/).

Każda stacja, odbierająca informacje z podkanału komunikatów, wysyła sygnał zaję­tości (falę sinusoidalną) do podkanału zajętości.

Każda stacja, mająca ramkę do wysłania, sprawdza najpierw przez pewien czas stan podkanału zajętości. Jeżeli sygnał zajętości jest nieobecny, dane są wysyłane; w prze­ciwnym razie jest odkładana do późniejszego wysłania. Przed ponowną próbą wysła­nia stacja musi także sprawdzić stan kanału.

Wadą tego protokołu jest konieczność zmniejszenia szerokości kanału transmisyjne­go, a więc zmniejszenia maksymalnej prędkości transmisji. Ponadto można łatwo za­blokować działanie całej sieci przez stałe wysyłanie sygnału zajętości. Inny problem może wystąpić wskutek różnic w propagacji sygnału w kanale zajętości i kanale da­nych, ponieważ kanały te wykorzystują różne częstotliwości nośne. Efektywność pro­tokołu jest jednak wysoka (około 70 %).


Protokół SRMA
Protokół SRMA (ang. Slot Reservalion Mulliple Access) wykorzystuje mechanizm dy­namicznej rezerwacji przedziałów czasowych, w których dana stacja może nadawać. Przyjmuje się, że, podobnie jak w protokole BTMA, kanał podzielony jest na podka­nał komunikatów i podkanał sterujący. Ponadto konieczne jest wprowadzenie do sieci stacji sterującej, której zadaniem jest przydział przedziałów czasowych dla poszcze­gólnych stacji. Kanał sterujący może pracować według wielu reguł. Jako przykładowe można podać wersje SRMA-RAM i SRMA-RM, opisane poniżej.

SRMA-RAM

W tej odmianie protokołu SRMA informacje sterujące, tj. żądania i odpowiedzi, prze­syłane są w osobnych kanałach. W kanale żądań obowiązuje rywalizacyjny protokół dostępu, np. Aloha lub CSMA.

Jeżeli stacja ma dane do przesłania, wysyła żądanie do stacji sterującej. O ile żądanie dotarło bezbłędnie do stacji sterującej, wyznacza ona czas, w którym stacja zgłaszają­ca żądanie może rozpocząć transmisję. Informacja ta jest przekazywana ze stacji ste­rującej w kanale odpowiedzi, jak pokazano na rysunku 4.


S
RMA-RM

W tej odmianie kanał sterujący nie jest dzielony na podkanały, niemniej jednak obo­wiązuje w nim także rywalizacyjny protokół dostępu.

J
eżeli stacja ma dane do przesłania, wysyła żądanie do stacji sterującej. Jeśli dotarło ono bezbłędnie, jest dołączane do kolejki żądań. Kolejka ta może być obsługiwana według dowolnego algorytmu. Gdy kanał komunikatów może zostać udostępniony, stacja sterująca przesyła tym kanałem zezwolenie na nadawanie (rysunek 5). Jeżeli stacja zgłaszająca żądanie nie doczeka się odpowiedzi w określonym czasie, ponawia przesłanie żądania do stacji sterującej.
Protokoły MSAP i BRAM
Protokoły MSAP (ang. MiniSlotted Alternating Priorities) i BRAM (ang. Broadcast Recognizing Access Method) należą do grupy protokołów z dynamiczną rezerwacją, wykorzystują one jednak mechanizmy wykrywania nośnej. Wymagają one bezpo­średniej łączności pomiędzy wszystkimi stacjami - w przeciwnym przypadku działają nieprawidłowo.

W protokole MSAP czas podzielony jest na miniszczeliny (ang. minislot) o długości równej maksymalnemu czasowi propagacji w sieci. Dostęp do łącza oparty jest na za­sadzie kolejno zmiennych priorytetów. Oznacza to, że stacja i, która uzyskała dostęp do łącza, może nadać całą informację, jaką ma do wysłania. Następnie pozostałe sta­cje wykrywają koniec tej transmisji przy pomocy mechanizmu wykrywania nośnej. W tym momencie nadawanie może rozpocząć stacja Ci mod N) + l, o ile ma ona dane do wysłania. W przeciwnym przypadku transmisję rozpoczyna kolejna stacja. Ideę działania p
rotokołu przedstawiono na rysunku 6.


W protokole MSAP przyjmuje się, że kolejne stacje nie są jawnie wywoływane, ponieważ nie występuje tu centralna stacja sterująca. Każda stacja musi więc liczyć miniszczeliny po każdej transmisji, tak więc protokół jest czuły na błędy wykrywania nośnej.

Protokół BRAM jest w pewnym sensie uogólnieniem protokołu MSAP - wersja prio­rytetowa (ang. prioritized BRAM) jest tożsama z MSAP, czyli umożliwia każdej stacji wysłanie całej informacji w jednym cyklu dostępu do łącza. Przeciwieństwem jej jest wersja sprawiedliwa (ang.fair BRAM), w której każda stacja może wysłać co najwy­żej jedną ramkę danych w jednym cyklu dostępu.

Dla niskich obciążeń sieci zawierającej dużo stacji protokół BRAM ma niedużą efek­tywność, ponieważ liczba miniszczelin poprzedzających "znalezienie" stacji gotowej do transmisji jest równa liczbie stacji. Dlatego też korzystne może być podzielenie sieci na grupy stacji. Poszczególne miniszczeliny odpowiadają wówczas grupom, a nie stacjom. W każdej grupie obowiązuje rywalizacja przy dostępie do łącza. Po­nieważ liczba grup jest parametrem sieci, protokół ten nosi nazwę parametryzowane­go BRAM (ang. parametric BRAM); również tu wyróżnia się wersję priorytetową i sprawiedliwą.

Protokoły MACA i MACAW

Analiza zachowania sieci bezprzewodowej zawierającej stacje ukryte bądź odkryte pozwala stwierdzić, że zastosowanie protokołu dostępu do łącza wykorzystującego jedynie śledzenie nośnej jest nieefektywne. W ten sposób powstała propozycja proto­kołu MACA (ang. _Multiple Access with Collision Avoidance).

W protokole tym w ogóle nie prowadzi się wykrywania fali nośnej. Transmisja da­nych poprzedzona jest jednak wymianą informacji sterującej - nadajnik wysyła ramkę RTS, a odbiornik - CTS. Mechanizm ten zapobiega występowaniu zjawiska ukrytych i odkrytych stacji. Stacja ukryta odbiera bowiem ramkę CTS odbiornika, stacja od­kryta natomiast - ramkę RTS nadajnika. Czas trwania transmisji można łatwo określić, o ile w ramkach sterujących zawarta jest informacja o długości przesyłanej informa­cji. Zasadę działania protokołu MACA pokazano na rysunku 7.


Protokół MACA nie zapobiega jednak wszystkim kolizjom. Istnieje bowiem ryzyko kolizji między ramkami sterującymi. Aby im zapobiec, każda stacja losowo wybiera czas, który musi upłynąć, zanim rozpocznie się transmisja ramki.

Efektywność protokołu w obecności stacji ukrytych i odkrytych przewyższa efektyw­ność protokołu CSMA/CA, pod warunkiem że długość ramek sterujących (RTS i CTS) jest znacznie mniejsza od długości ramek zawierających dane.

Protokół MACA W jest w zasadzie rozwinięciem protokołu MACA zawierającym sze­reg uściśleń. Wprowadzono tu m.in. dodatkowe ramki sterujące:



  • DS (ang. Data Sending), oznaczająca rozpoczęcie nadawania danych; ramka ta informuje pozostałe stacje o pomyślnym zakończeniu negocjacji RTS-CTS;

  • Ack (ang. Acknowledge), oznaczająca poprawny odbiór ramki danych;

  • RRTS (ang. Requestfor RTS), wykorzystywana wówczas, gdy stacja nie może odpowiedzieć na ramkę RTS z powodu wstrzymywania transmisji; po zakoń­czeniu okresu wstrzymywania wysyła ona ramkę RRTS do nadawcy ramki RTS, co umożliwia przeprowadzenie negocjacji RTS-CTS.

Z
asadę wymiany ramek w protokole MACA W ilustruje rysunek 8.

Protokoły FAMA
FAMA (ang. Floor Acquisition Multiple Access) określa grupę protokołów, które sto­sują wykrywanie nośnej i znany z protokołów MACA i MACAW mechanizm wy­miany ramek sterujących, poprzedzający transmisję danych.

Istotą protokołu FAMA jest dynamiczne zezwalanie poszczególnym stacjom na ste­rowanie kanałem. Podobne mechanizmy wykorzystywane są w protokołach z dyna­miczną rezerwacją (np. SRMA, MSAP czy BRAM), jednak FAMA nie wykorzystuje osobnego kanału sterującego. Przed rozpoczęciem transmisji stacja musi uzyskać kontrolę nad kanałem. Mechanizm przekazywania sterowania odbywa się na zasadzie wymiany informacji sterującej, która jest przesyłana w jednym kanale z danymi w ta­ki sposób, że mimo iż mogą nastąpić kolizje pomiędzy ramkami sterującymi, dane przesyłane są zawsze bez kolizji. Jest to możliwe, jeżeli przestrzegane są określone zależności czasowe, m.in. czas transmisji ramek sterujących nie może być krótszy niż podwojony maksymalny czas propagacji w kanale.

W sieciach bezprzewodowych korzystne jest przekazywanie sterowania oparte na za­sadzie wymiany ramek sterujących RTS i CTS, ze względu na eliminację zjawiska ukrytych stacji. Możliwa jest wymiana informacji sterującej bądź bez wykrywania nośnej, bądź też z wykrywaniem nośnej, np. bez wymuszania transmisji (ang. nonper­sistent).

FAMA bez wykrywania nośnej odpowiada protokołowi MACA. Wadą tego protokołu jest możliwość wystąpienia kolizji między danymi a informacją sterującą, spowodo­wana różnicami w czasie propagacji. Cecha ta nie występuje, jeżeli przed nadaniem ramki sterującej stacja bada stan łącza i wstrzymuje transmisję do czasu jego zwol­nienia. Mechanizm ten stosowany jest w protokole FAMA-NTR (ang. Non-persistent Transmit Request).


Protokół BAPU
Opisane powyżej protokoły z unikaniem kolizji, w których transmisję danych poprze­dza wymiana informacji sterującej, rozwiązują jedynie problem ukrytego i odkrytego nadajnika. Uniknięcie zjawiska ukrytego i odkrytego odbiornika wymaga podjęcia na­stępujących działań:

  • ukryty odbiornik powinien wysłać informację, że wstrzymuje transmisję; in­ formacja ta musi zostać przesłana w dodatkowym kanale;

  • odkryty odbiornik powinien móc odebrać informację sterującą nawet wtedy, gdy w kanale przebiega inna transmisja danych; warunek ten wymaga rozbi­cia kanału na kanał danych i kanał sterujący;

  • stacje zakłócające powinny być poinformowane o fakcie prowadzenia trans­misji; warunek ten można spełnić, zwiększając zasięg informacji sterującej.

Dlatego też w protokole BAPU (ang. Basic Access Protocol solUtions) proponuje się wyróżnienie kanału danych i kanału sterującego, przy czym drugi z wymienionych charakteryzuje się większym zasięgiem transmisji. Dzięki takiemu rozwiązaniu stacje, mogące interferować w kanale danych, stają się stacjami ukrytymi bądź odkrytymi w kanale sterującym. W protokole używa się pięciu typów ramek sterujących:

  • RTS (ang. Request To Send), czyli zgłoszenie gotowości do nadawania,

  • CTS (ang. elear To Send), czyli zgłoszenie gotowości do odbioru,

  • DS (ang. Data Sending), czyli sygnalizacja rozpoczęcia transmisji danych,

  • NCTS (ang. Not Cle ar To Send), czyli brak gotowości do odbioru, np., jeżeli stacja jest w zasięgu innej transmisji danych,

  • ACK (ang. Acknowledge), czyli potwierdzenie porcji danych.

W kanale danych przesyłane są dane i potwierdzenia (ramki ACK), pozostałe ramki są natomiast przesyłane kanałem sterującym. Ideę protokołu wyjaśnia rysunek 9.
R
ys. 9.
Zasada działania protokołu BAPU




©absta.pl 2019
wyślij wiadomość

    Strona główna