Badanie protokolu HDLC

Transkrypt

Badanie protokolu HDLC
Politechnika Warszawska
Wydział Elektroniki I Technik Informacyjnych
Instytut Telekomunikacji
Podstawy Telekomunikacji
laboratorium
Ćwiczenie 2
BADANIE PROTOKOŁU HDLC
semestr letni 2007/8
BADANIE PROTOKOŁU HDLC
1. Systemy ARQ (Automatic Repeat Request)
Z punktu widzenia użytkownika systemu transmisji danych, najważniejsze są jego dwa
parametry: szybkość transmisji i wierność odbieranych danych. Z pomocą w rozwiązaniu
tego problemu przychodzi kodowanie nadmiarowe czyli dopisywanie do bitów
informacyjnych, w pewien kontrolowany sposób (zależny od rodzaju kodu) dodatkowych
(nadmiarowych) bitów. W odbiorniku, bity nadmiarowe mogą zostać wykorzystane do
detekcji błędów albo do korekcji błędów (system FEC - Forward Error Correction). Ponieważ
systemy kodowanie korekcyjne nie gwarantuje uzykanie zerowej liczby błędów na wyjściu
odbiornika, w systemach przeznaczonych do przesyłania danych stosuje się wykrywanie
błędów połączone z retransmisją błędnych bloków czyli system ARQ. Wykrywanie błędów
polega na sprawdzeniu, czy została zachowana reguła, według której dopisano w nadajniku
nadmiarowe bity (na podstawie odebranych bitów informacyjnych ponownie wylicza się bity
nadmiarowe, a następnie porównuje je z odebranymi).
Istnieją trzy warianty systemu ARQ: stop-and-wait (SAW), go-back-N (GBN) oraz selective
repeat (SR).
W najprostszej metodzie SAW (czasami nazywanej również unnumbered ARQ), po wysłaniu
bloku, nadajnik czeka na odpowiedź od odbiornika. W przypadku odebrania potwierdzenia
(ACK) przesyłany jest kolejny blok, jeżeli zostanie odebrane negatywne potwierdzenie
(NACK) - był błąd, blok jest ponownie transmitowany. Jest to metoda nadająca się dla
systemów pracujących w pół-dupleksie. W metodzie GBN nadajnik wysyła ponumerowane
bloki w sposób ciągły, a kanałem zwrotnym odbiera potwierdzenia. Nadajnik powtarza blok
błędny oraz wszystkie wysłane po nim bloki. W ostatniej metodzie SR, opartej również na
transmisji ciągłej, powiadomienie nadajnika o błędnym bloku oznacza powtórzenie
wyłącznie tego bloku.
We wszystkich stosowanych w praktyce systemach ARQ, jako kod nadmiarowy,
wykorzystuje się blokowe kody cykliczne. Reguła kodowania polega tu na dzieleniu bloku
danych przez pewien wielomian charakterystyczny dla danego kodu (tzw. wielomian
generacyjny kodu) i dopisywanie jako bitów nadmiarowych - reszty uzyskanej z tej operacji.
Istnieje wiele kodów cyklicznych, będących międzynarodowymi standardami, na przykład:
CRC-16 (ITU-T)
g(x) = x16 + x12 + x5 + 1
16
15
2
CRC-16 (ANSI)
g(x) = x + x + x + 1
2. Krótki opis protokołu HDLC
Większość protokołów stosowanych w telekomunikacji to wersje protokołu HDLC (HighLevel Data-Link Control). Ramka w protokole HDLC składa się z pól: flaga początkowa (F),
adres (A), kontrola (C), pole z bitami informacyjnymi (I), bity nadmiarowe (FCS) oraz flaga
końcowa (F). Flagi początkowa i końcowa to 8-bitowy ciąg 01111110 ograniczający całą
ramkę. Aby zapobiec przesłaniu takiego ciągu wewnątrz ramki, nadajnik po każdym ciągu
pięciu 1 dostawia dodatkowe 0, które jest usuwane w odbiorniku. Pola adresowe i kontrolne
mają z reguły po 8 bitów, chociaż istnieje możliwość rozszerzenia każdego z nich o kolejny
bajt. Pole kontrolne służy do numeracji kolejnych ramek, a także zawiera informacje
dotyczące potwierdzania odebranych bloków. Pole infoermacyjne może zawierać dowolną
liczbę bitów (niekoniecznie podzielną przez 8). Pole FCS tworzy reszta z dzielenia bloku:
pole adresowe, kontrolne i informacyjne przez wielomian CRC-16 (ITU-T) i ma długość 16
bitów.
W protokole HDLC rozróżniamy trzy rodzaje ramek: informacyjne - zawierające pole
informacyjne i służące do przesyłania danych, zarządzające (nadzorcze) - wykorzystywane
do kontroli transmisji oraz nienumerowane - służące do nawiązania połączenia, ustalenia
parametrów protokołu oraz rozłączenia transmisji.
Istnieją cztery ramki nadzorcze: Receive ready (RR), Receive not ready (RNR), Reject (REJ) i
Selective reject (SREJ). Para ramek RR i RNR steruje przepływem danych - odbiornik, który
nie może odbierać więcej bloków informuje nadajnik ramką RNR, natomiast możliwość
wznowienia transmisji jest sygnalizowana ramką RR. Natomiast ramki REJ i SREJ
umożliwiają zorganizowanie protokołu ARQ, realizację odpowiednio metody go-back-N i
Selective repeat.
3. Efektywność systemu ARQ
Z punktu widzenia użytkownika, jakość systemu ARQ charakteryzuje parametr zwany
efektywnością lub sprawnością systemu. Liczony jest on, jako stosunek liczby odebranych
bitów informacyjnych do liczby wszystkich możliwych do przesłąnia bitów czyli jako
stosunek szybkości efektywnej (szybkości transmisji z punktu widzenia użytkownika
końcowego) do fizycznej szybkości w kanale. Przykładowo, efektywność wynosząca 0.5
oznacza, że jeżeli w kanale przesyłamy dane z szybkością 64 kbit/s, to dla użytkownik
system widziany jest jakby pracował jedynie z połową szybkości czyli 32 kbit/s.
Efektywność systemu ARQ zależy od jakości kanału, długości pojedynczego bloku oraz od
wybranej metody ARQ.
4. Przebieg laboratorium
1. Dla kilku długości ramki informacyjnej ( na przykład 100, 500, 800, 1000, 2000, 5000 i
8000) zmierz i narysuj charakterystyki obrazujące zależność efektywności metod:
a. SAW
b. GBN
c. SR
od jakości kanału.
2. Pokaż na wykresach maksymalne uzyskane efektywności w zależności od jakości kanału
(dla wszystkich metod).
3. Dla każdego Pe znajdź optymalne długości bloków pozwalające uzyskać największą
efektywność systemu. Otrzymane wyniki skomentuj.
4. Zaproponuj najlepszy system dla transmisji kablowej oraz radiowej (metoda ARQ oraz
długość ramki).