08 (476)








Warstwa liniowa w LSK




Warstwa
liniowa w LSK
 
Usługi udostępnione przez warstwę fizyczną umożliwiają
transmisję pojedynczych bitów oraz symboli specjalnych od stacji nadającej do
wszystkich stacji bezpośrednio z nią sprzężonych. Warstwa liniowa
wykorzystuje usługi warstwy fizycznej w celu umożliwienia przesyłania większych
porcji informacji - pakietów do wybranych stacji (adresatów). Realizacje
warstwy liniowej muszą więc uwzględniać specyfikę dostępnych usług
warstwy fizycznej. W przypadku LSK są to następujące cechy:
a)          
łącze fizyczne sprzęga zazwyczaj wiele stacji; stwarza to problem dostępu
do medium transmisyjnego, gdyż może wystąpić kolizja;
b)         
czas nadawania krótkich pakietów jest na ogół porównywalny z czasem
propagacji;
c)          
liczba błędów występujących podczas transmisji jest bardzo mała;
Biorąc pod uwagę te cechy, w architekturze logicznej LSK wyróżnia
się w warstwie liniowej dwie podwarstwy: podwarstwę dostępu (Medium
Access Sublayer) i podwarstwÄ™
Å‚Ä…cza logicznego (Logical Link
Sublayer), o specyficznie dla tej klasy sieci ustalonym zakresie usług oraz
specjalizowanych protokołach komunikacyjnych.
 


Do transmisji pakietu między źródłowym a docelowymi
punktami udostępniania usług warstwy liniowej, tworzy ona jednostki danych
protokołu (ramki), które są nadawane (odbierane) przy użyciu usług warstwy
fizycznej.
 


Funkcje warstwy liniowej zwiÄ…zane z formatowaniem ramki i z
przekazywaniem jej warstwie fizycznej.


a)          
serializacja i deserializacja informacji - warstwa fizyczna może
przyjmować dane do nadania bit po bicie z szybkością dostosowaną do szybkości
transmisji w łączu oraz przekazywać bit po bicie z identyczną szybkością
dane odebrane z łącza. Nie ma możliwości buforowania informacji w warstwie
fizycznej. W ramach każdej stacji najmniejszą adresowalną i jednorazowo dostępną
jednostką danych jest bajt lub dłuższe słowo. Zamiana postaci danych na
bitowo-szeregowÄ… (serializacja) przy nadawaniu i odwrotna operacja
(deserializacja) przy odbiorze wymagają jawnego określenia który bit bajtu (słowa)
będzie najbardziej znaczący. Istotne jest również dostosowanie sprzętowe do
odbioru danych z właściwą szybkością;
b)         
nadawanie preambuły - w celu uzyskania synchronizacji bitowej
warstwa fizyczna wymaga wstępnego przesłania pewnej liczby bitów, czyli
preambuły. Zadaniem warstwy liniowej jest poprzedzenie rozpoczęcia nadawania
ramki preambułą o długości dostosowanej do wymagań konkretnego rozwiązania
warstwy fizycznej;
c)          
synchronizacja blokowa - warstwa liniowa musi mieć zdolność
wyróżniania początku i końca poszczególnych ramek w ciągu bitów
nadawanych i odbieranych przez warstwę fizyczną. Inaczej nie byłoby wiadomo
które bity należą do jednej ramki, a które do następnej. Początek ramki można
określić w prosty sposób: po zakończeniu poprzedniej ramki na łączu nie ma
sygnału, albo jest nadawana (stale lub chwilowo) jakaś wybrana sekwencja bitów
w celu utrzymania synchronizacji bitowej komunikujÄ…cych siÄ™ stacji. PoczÄ…tek
ramki można więc określić przez nadanie dowolnej innej kombinacji bitów.
Trudniej jest z określeniem końca ramki, gdyż oznaczenie go przez wybraną
sekwencję bitów mogłoby spowodować, że przy przesyłaniu takiej samej
sekwencji wewnątrz ramki (dane) zostałoby to źle zinterpretowane - jest to
tzw. problem przezroczystości danych. W starszych rozwiązaniach stosowano tzw.
protokoły
znakowe, w których dane przesyłane były w postaci znaków (8 bitów).
Występowały tutaj znaki alfanumeryczne oraz specjalne znaki sterujące (np.
początek ramki, koniec ramki, preambuła, itd.). Jednak rozwiązanie to nie miało
zastosowania w transmisjach binarnych - można było np. każdy bajt danych
zapisywać za pomocą dwóch znaków, ale mogło to w skrajnym przypadku zwiększyć
dwukrotnie liczbę przesyłanych danych. Nowsze rozwiązania opierają się na protokołach
bitowych. Protokoły te nie zakładają żadnego specjalnego znaczenia
poszczególnych kombinacji bitów z wyjątkiem jednego wyróżnionego symbolu
(flagi), która może być np. ciągiem 01111110. Flaga jest znacznikiem początku
i końca każdej ramki. Może tutaj również wystąpić problem przezroczystości
danych. W celu jego wyeliminowania można zastosować wcześniej opisaną
technikÄ™ faszerowania zerami. Åšrednio zero jest wstawiane raz na 63 bity. Mamy
więc zwiększenie długości ciągu bitów średnio o 1/63. Takie rozwiązanie
stosowane jest powszechnie w rozległych sieciach komputerowych (np. protokół
HDLC). Algorytm faszerowania zerami jest realizowany na poziomie układów
scalonych. Istnieje jednak możliwość nieprawidłowego zinterpretowania flagi
w przypadku wystąpienia przekłamania podczas transmisji danych. W LSK dominuje
jeszcze inne rozwiÄ…zanie zadania synchronizacji blokowej, polegajÄ…ce na
analizie aktualnego stanu łącza - bezczynności lub emisji symboli
specjalnych. W szczególności można przyjąć, że koniec ramki sygnalizowany
jest ciszą na łączu, trwającą określony czas, nadawanie natomiast
rozpoczyna się od wysłania preambuły, która umożliwia synchronizację bitową
i która kończy się dowolnie ustaloną sekwencją bitów. Alternatywnie można
określić początek i koniec ramki za pomocą dowolnie ustalonych grup zer,
jedynek i symboli specjalnych. Tego rodzaju rozwiÄ…zania sÄ… Å‚atwe w
realizacji, nie wprowadzają żadnego narzutu i są odporne na błędy
transmisji;
d)         
adresowanie - warstwa fizyczna umożliwia odbiór nadanej przez
dowolną stację informacji wszystkim stacjom włączonym do tej samej lokalnej
sieci komputerowej. Odpowiada to adresowaniu w trybie rozgłaszania. Fakt ten
stanowi specyficzną właściwość LSK. W praktyce częściej stosuje się
adresowanie indywidualne lub grupowe, więc poszczególne stacje muszą być
zdolne do "odfiltrowania" informacji dla nich przeznaczonych. W tym celu w
każdej ramce musi znaleźć się precyzyjne określenie adresata i nadawcy
informacji. Każda stacja (obiekt warstwy liniowej) musi więc rozpocząć
odbieranie każdej ramki i później po zidentyfikowaniu adresata albo ją
odrzucić, albo przyjąć;
e)          
format ramki - dla wszystkich nadawców i odbiorców musi być
ustalony format ramki. W szczególności muszą zostać określone: adres
nadawcy, odbiorcy, długość ramki. Najczęściej pola te mają w ramce stałą
długość i początek ustalony względem znacznika początku ramki. Ponieważ
każda stacja musi być zdolna do odbioru co najmniej adresu przeznaczenia
ramki, ta właśnie informacja jest zwykle umieszczana na początku ramki;
 


Funkcje warstwy liniowej związane z kontrolą poprawności transmisji.


Najczęściej używanym wskaźnikiem charakteryzującym częstość
występowania błędów jest tzw. bitowa
stopa błędów (BER - Bit Error
Rate), definiowana jako udział bitów błędnie przetransmitowanych w długim,
testowym ciÄ…gu bitów. W LSK typowa stop bÅ‚Ä™dów wynosi 10­­-9.
Bardziej szczegółowe badania pozwoliły stwierdzić, że w rzeczywistości
rzadko występują błędy pojedyncze, tj. sporadyczne przekłamania wartości
pojedynczego bitu, a znacznie częściej obserwuje się tzw. błędy seryjne,
czyli przekłamania niektórych lub wszystkich bitów z pewnej ich grupy. Wynika
to stąd, że błędy transmisji pojawiają się zwykle w wyniku zaistnienia
jakiegoś silnego zewnętrznego zakłócenia.
a)          
wykrywanie błędów - jeśli transmitowany jest ciąg bitów o
długości m bitów to możliwe jest 2m.
ich kombinacji. Zazwyczaj nadawca wydłuża nadawany ciąg bitów o r
bitów nadmiarowych, które razem z nadawanym ciągiem bitów tworzą tzw. słowo
kodowe o długości m+r bitów. Wartości
bitów nadmiarowych są dobierane tak, że dopuszczalna jest tylko część spośród
możliwych 2m.+r kombinacji
bitów. Jeśli nastąpi przekłamanie jednego lub większej liczby bitów to
istnieje duże prawdopodobieństwo, że odebrane słowo kodowe nie będzie należało
do zbioru kombinacji dopuszczalnych. Odbiorca, znajÄ…cy kryterium zaliczania
odbieranych słów kodowych do tego zbioru ma wówczas możliwość wykrycia błędu.
Liczbę bitów nadmiarowych oraz słowo kodowe należy dobrać tak, aby
prawdopodobieństwo wykrycia błędu było duże oraz realizacja wybranej zasady
odwzorowywania była prosta. W normach międzynarodowych oraz w praktyce najczęściej
mamy do czynienia z cyklicznÄ… sumÄ… kontrolnÄ… (CRC - Cyclic Redundancy Check). W metodzie tej elementy transmitowanego ciÄ…gu
traktuje się jako współczynniki kolejnych wyrazów wielomianu W(x)
stopnia m-1. Na słowo kodowe składa się ciąg wejściowy oraz r
bitów nadmiarowych, stanowiących współczynniki wielomianu będącego resztą
z dzielenia modulo 2 wielomianu W(x)
przez tzw. wielomian generacyjny G(x)
stopnia r. Odbiorca dokonuje dzielenia odebranego słowa kodowego przez ten
sam wielomian generacyjny, a kryterium poprawności transmisji jest reszta z
dzielenia równa 0. Ciąg r bitów
nadmiarowych nazywa się wartością CRC. Skuteczność tej metody zależy w
decydującej mierze od doboru stopnia i postaci wielomianu generacyjnego. Prawidłowo
dobrany wielomian G(x) zapewnia
wykrycie wszystkich występujących w słowie kodowym błędów: pojedynczych,
podwójnych (dwóch izolowanych błędów pojedynczych), błędów polegających
na przekłamaniu nieparzystej liczby bitów oraz wszystkich błędów seryjnych
o długości serii mniejszej lub równej r. Dodatkowo prawdopodobieństwo nie wykrycia błędu seryjnego o długości
serii większej od r jest bardzo małe,
rzędu 2-r. W sieciach lokalnych stosuje się wielomiany stopnia 16:



dla których nie wykrytych pozostaje
tylko około 2*10-5 błędów seryjnych o długości serii większych
niż 16 bitów. Dla sieci lokalnych przyjęto w normach międzynarodowych
jednolitą postać wielomianu generacyjnego stopnia 32:



dla którego pozostaje nie wykrytych
jedynie około 2*10-10 błędów seryjnych o długości serii większych
niż 32.
Implementacja sprzętowa tych kodów
jest też bardzo prosta, okazuje się bowiem, że dzielenie przez wielomian
generacyjny można łatwo zrealizować przy użyciu rejestru przesuwającego o r
stopniach i odpowiednio do postaci wielomianu dobranych sprzężeniach
zwrotnych. W praktyce, aby m.in. uchronić się przed uzyskaniem zerowego wyniku
dzielenia niepoprawnego ciągu bitów przez wielomian generacyjny na skutek
przypadkowego wyzerowania rejestru, modyfikuje się wysyłany ciąg bitów w
ustalony sposób. Wynik dzielenia tego zmodyfikowanego ciągu przez wielomian
generacyjny, przy poprawnej transmisji, jest pewną ustaloną, różną od zera
sekwencją bitów;
b)         
reakcja na wystąpienie błędów - ramka, w której odbiorca
wykrył błąd musi być odrzucona (zgubiona). Przy użyciu kodu CRC nie można
stwierdzić, która część ramki uległa zniekształceniu, a więc żaden
fragment ramki nie może być traktowany jako wiarygodny. W szczególności
zniekształceniu może ulec adres nadawcy lub odbiorcy. Na rysunku zilustrowano
zmiany szybkości transmisji V w zależności
od bitowej stopy błędów e oraz długości
ramki N.



Stosowanie zbyt krótkich ramek powoduje straty wynikające z
występowania pól organizacyjnych oraz oczekiwania na potwierdzenie, długie
ramki są natomiast bardziej narażone na wystąpienie błędu;






Wyszukiwarka

Podobne podstrony:
476 08
TI 99 08 19 B M pl(1)
ei 05 08 s029
Wyklad 2 PNOP 08 9 zaoczne
Egzamin 08 zbior zadan i pytan
niezbednik wychowawcy, pedagoga i psychologa 08 4 (1)
Kallysten Po wyjęciu z pudełka 08

więcej podobnych podstron