Protokół bitowy HDLC (High level Data Link Control) - standard ISO Protokół warstwy łącza danych zorientowany bitowo służący do transmisji synchronicznej, obsługuje transmisje dupleksową i półdupleksową. Konfiguracje kanału logicznego niezrównoważona zrównoważona symetryczna
Konfiguracja niezrównoważona Stacja główna (nadrzędna) Stacja podległa (podrzędna) komenda odpowiedź kanał logiczny Stacja główna steruje dostępem stacji podległych do kanału. Stacja główna transmituje ramki z komendami sterującymi do stacji podległych dla połączeń typu punkt-punkt lub punkt-wielopunkt. Stacje poległe wysyłają ramki odpowiedzi. Dwa tryby pracy: -NRM (Normal Response Mode) – stacja główna przepytuje stacje podległe -ARM (Asynchronous Response Mode) – stacje mogą transmitować jednocześnie
Konfiguracja zrównoważona Stacja uniwersalna -główna -podrzędna komenda odpowiedź kanał logiczny Stacje współpracują ze sobą na jednakowych prawach przy sterowaniu połączeniem i przekazie danych. Ta konfiguracja dotyczy połączenia typy punkt-punkt. Tryb pracy ABM (Asynchronous Balanced Mode)
Konfiguracja symetryczna Stacja główna podległa kanał logiczny komenda odpowiedź Stacje pracują w połączeniu punkt-punkt, stacje są połączone dwoma połączeniami logicznymi, każde z tych połączeń przedstawia niezrównoważoną konfigurację logiczną. Tryby pracy na każdym łączu logicznym są wybierane przez stacje główne.
Tryby pracy protokołu HDLC przekaz informacji – 3 tryby rozłączanie – 2 tryby inicjowanie pracy – 1 tryb
Tryby przekazu informacji NRM (Normal Response Mode – normalny tryb odpowiedzi) dotyczy połączeń punkt-punkt lub połączeń punkt-wielopunkt dla niezrównoważonej konfiguracji logicznej stacja główna odpowiada za nawiązywanie połączeń, nadzór w trakcie połączenia, wykrywanie błędów i awarii stacje podległe jedynie odpowiadają na komendy odebrane od stacji głównej i mogą przesyłać ramki informacyjne po uprzednim otrzymaniu zaproszenia (zapytania)
ARM (Asynchronous Response Mode – asynchroniczny tryb odpowiedzi) stosowany w połączeniach punkt-punkt lub punkt-wielopunkt (konfiguracja niezrównoważona) stacja główna odpowiada za nawiązywanie połączeń, nadzór w trakcie połączenia, wykrywanie błędów i awarii wszystkie stacje (główna i podległe) w fazie przekazywania danych uzyskują dostęp do kanału na zasadach rywalizacji (bez zaproszeń – inaczej niż w trybie NRM), ze względu na możliwość wystąpienia kolizji dla połączeń punkt-wielopunkt, rozważany tryb stosowany jest w połączeniach punkt-punkt tryb odpowiedni dla łączy dupleksowych przenoszących duży ruch
ABM (Asynchronous Balanced Mode – asynchroniczny zrównoważony tryb pracy) przeznaczony do obsługi stacji równoprawnych (stacji posiadających równocześnie cechy stacji głównej i podległej – stacja uniwersalna) stacja uniwersalna może rozpocząć transmisję bez zezwolenia drugiej stacji obsługa wyłącznie połączeń punkt-punkt dupleksowego
Tryby rozłączania NDM (Normal Disconnected Mode – normalny tryb rozłączania) ADM (Asynchronous Disconnected Mode – asynchroniczny tryb rozłączania) - w trybach tych stacja główna żąda od stacji podległych rozłączenia logicznego używając specjalnych komend - stacje podległe mogą zaakceptować lub odrzucić żądanie w którym są proponowane zasady wymiany informacji (ustalanie trybu pracy) i zasady rozłączania
Tryb inicjowania pracy IM (Initialization Mode – tryb inicjowania połączenia) - wymiana między stacjami parametrów koniecznych do ustanowienia połączenia logicznego
Format ramki HDLC ramka informacyjna (I-ramka) – służy do przesyłania danych użytkownika między dwiema stacjami, może też służyć do potwierdzania otrzymania danych przesłanych ze stacji nadawczej, w ograniczonym stopniu może przesyłać komendy (komenda przepytywania) ramka nadzorcza (S-ramka) – służy do sterowania: potwierdzanie otrzymanych ramek, żądanie retransmisji ramek, żądanie zawieszenia transmisji ramek. Tryb pracy determinuje wykorzystanie ramki. ramka nienumerowana (U-ramka) – służy do sterowania łączem: używana do ustanawiania i rozłączania połączenia
Flaga – ustalona sekwencja bitów 01111110 Adres Pole sterujące Pole danych CRC nagłówek tej części ramki dotyczy stuffing bitowy 8 8 lub 7 + wskaźnik rozszerzenia 8 lub 16 zmienna długość 16 Flaga – ustalona sekwencja bitów Pole adresowe – każda stacja posiada unikalny adres, zawiera adres stacji podległej w konfiguracji niezrównoważonej zarówno w komunikatach jak i odpowiedziach. W konfiguracji równoprawnej ramki z komendami zawierają adres stacji docelowej, a ramki z odpowiedziami zawierają adres stacji nadawczej. Standardowo 8 bitów, może być poszerzone dla połączeń wielopunktowych (duża liczba adresów), możliwe jest ustawienie adresu ogólnego reprezentującego wszystkie stacje w połączeniu wielopunktowym.
1 2 3 4 5 6 7 8 N(s) P/F N(r) 1 P/F N(r) 1 P/F Pole sterujące – zawiera identyfikator ramki (postać bitów tego pola determinuje rodzaj ramki, komendy lub odpowiedzi. Stacja główna wysyła komendy, a podległa odpowiedzi. W każdym trybie pracy ramka informacyjna jest numerowana numerem sekwencyjnym modulo M (od 0 do M-1). Podstawowy sposób numeracji jest określony przez M=8. Istnieje wariant rozszerzony M=128 1 2 3 4 5 6 7 8 N(s) P/F N(r) ramka informacyjna ramka nadzorcza (zarządzająca) 1 rozkaz nadzorczy P/F N(r) ramka nienumerowana 1 rozkaz P/F rozkaz cd. N(s) – numer sekwencyjny ramki wysłanej N(r) – numer sekwencyjny następnej oczekiwanej ramki po stronie odbiorczej
N(s) P/F N(r) 1 0 0 0 0 P/F N(r) wariant rozszerzony M=128 (dwa bajty) N(s) ramka informacyjna P/F N(r) ramka nadzorcza (zarządzająca) 1 rozkaz 0 0 0 0 P/F N(r)
bit P/F – przepytywanie/odpowiedź bit P/F – przepytywanie/odpowiedź. w ramkach z komendami nazywany bitem P, a w ramkach z odpowiedziami bitem F. Wykorzystanie bitu zależy od typu stacji: stacja główna używa bitu P do wymuszenia odpowiedzi od stacji podległej stacja podległa używa bitu F dla oznaczenia ostatniej ramki, wysłanej w wyniku wcześniej otrzymanej komendy nadawania w trybie NRM interpretacja bitu P/F tryb NRM, stacja podrzędna nie może nadawać do czasu otrzymania komendy z bitem P=1, stacja nadrzędna żąda ramki informacyjnej od stacji podległej wysyłając ramkę z bitem P=1 tryb ARM i ABM, ramki informacyjne mogą być nadawane bez konieczności otrzymania komendy z bitem P=1. Bit P=1 jest wykorzystywany w celu wymuszenia jak najwcześniejszej odpowiedzi w której bit F=1. tryb ARM i ABM, komenda z bitem P=1 powoduje zwrotne wysłanie ramki z bitem F=1 w następujących przypadkach: - podczas transmisji dupleksowej stacja podległa po otrzymaniu komendy z bitem P=1 wysyła natychmiast odpowiedź z bitem F=1 -stacja podległa po nadaniu ramki z bitem F=1 może dalej kontynuować transmisję kolejnych ramek. Stacja główna interpretuje bit F jako wskazanie ramki odpowiedzi, a nie jako koniec transmisji ramek przez stację podległą
Pole informacyjne – zawiera dane użytkownika, występuje tylko w ramce informacyjnej. Pole CRC – zabezpiecza wszystkie pola poza flagami, kod cykliczny CRC V41 postaci X16 + X12 + X5 + 1. Używane też dwa inne CRC-12= X12 +X11 + X3 + X2 + X + 1 oraz CRC-16= X16 + X15 + X2 + 1.
ramka bity pola sterującego 1 2 3 4 5 6 7 8 Komendy i odpowiedzi protokołu HDLC ramka bity pola sterującego komendy odpowiedzi 1 2 3 4 5 6 7 8 informacyjna N(s) N(r) I-ramka zarządzająca RR REJ RNR SREJ RR- (receive ready) gotowość odbioru REJ- (reject) odrzucenie RNR- (receive not ready) brak gotowości odbioru SREJ- (selective reject) selektywne odrzucenie
ramka bity pola sterującego 1 2 3 4 5 6 7 8 komendy odpowiedzi nienumerowana UI SNRM DISC RD UP UA TEST SIM RIM FRMR SARM DM RSET SARME SNRME SABM XID SABME
SARM- ustalenie trybu pracy ARM SNRM- ustalenie trybu pracy NRM SABM- ustalenie trybu pracy ABM SARME- ustalenie rozszerzonego trybu pracy ARM SNRME- ustalenie rozszerzonego trybu pracy NRM SABME- ustalenie rozszerzonego trybu pracy ABM DISC- rozłączenie SIM- ustalenie trybu inicjalizacji UP- nienumerowane przepytywanie UI- nienumerowana informacja XID- wymiana identyfikacji RSET- zerowanie UA- nienumerowane powiadomienie FRMR (CMDR)- odrzucenie komendy DM- tryb rozłączania RD- żądanie rozłączenia RIM- żądanie trybu inicjalizacji
Fazy pracy stacji faza bezczynności - żadne sygnały nie są przez stację przesyłane faza aktywności - przesyłane są flagi lub ramki faza zestawiania połączenia – inicjowane jest połączenie w trakcie którego ustalany jest tryb pracy faza przekazu danych – przesył ramek I, S, U faza zerowania połączenia – ponowne zestawienia połączenia faza rozłączania – wysłanie komendy rozłączającej
faza przekazu danych stacja główna przesyła ramki typu I w ramkach przesyłane są numery sekwencyjne, włączany jest licznik upływu czasu, ramka kopiowana jest do bufora w którym pozostaje do momentu gdy zajdzie jeden z przypadków: 1. odebrane zostanie powiadomienie ACK ze stacji podległej 2. odebrana zostanie komenda REJ (SREJ), ramka jest retransmitowana 3. licznik upływu czasu osiągnął limit, ramka jest retransmitowana stacja podległa odbiera ramki typu I sprawdza CRC – jeśli wystąpił błąd ramka jest odrzucana, sprawdzana jest zgodność numerów sekwencyjnych ze spodziewanym (praca zgodnie z algorytmem GBN), ramki, których numer jest niewłaściwy są odrzucane
Przeciążenie – osiągnięcie limitu okna odbiorczego, odrzucane są Przeciążenie – osiągnięcie limitu okna odbiorczego, odrzucane są ramki typu I wysyłana jest komenda RNR, przyjmowane i interpretowane są ramki typu S, stan zajętości jest anulowany wysłaniem jednej z komend RR, REJ, SREJ Bit P/F służy do żądania transmisji od stacji podległych (P=1) lub oznacza zakończenie transmisji ciągu ramek I (F=1)
Procedury kontrolne: -ramki krótsze niż 32 bity są odrzucane -żądanie odrzucenia ciągu bitów począwszy od ostatniej flagi, oznacza pojawienie się bitu 0 i sekwencji kolejnych jedynek w liczbie 7-14 -przejście do stanu bezczynności, oznacza pojawienie się ciągu jedynek w liczbie większej od 14 – niesprawność łącza
komenda odpowiedź Klasyfikacja protokołów HDLC specyfikacje ISO3309, 4335, 7809, 8471, 8885 standard ANSI (nazwa ADCCP) ANSI X3.66 Niezrównoważony normalny (UN) lub asynchroniczny (UA) podstawowy zestaw komend i odpowiedzi: komenda odpowiedź I RR RNR SNRM/SARM CMDR DISC UA DM
komenda odpowiedź Zrównoważony asynchroniczny (BA) I RR RNR SNRM CMDR DISC UA FRMR DM
uzupełnienie lub usuniecie ze schematu podstawowych komend: 1. identyfikacja i żądanie rozłączenia uzupełnić komenda: XID, odpowiedź: XID, RD 2. poprawa jakości w połączeniu dupleksowym uzupełnić komenda: REJ, odpowiedź: REJ 3. retransmisja pojedynczej ramki uzupełnić komenda: SREJ, odpowiedź: SREJ 4. nienumerowane informacje uzupełnić komenda: UI, odpowiedź: UI 5. inicjalizacja pracy stacji uzupełnić komenda: SIM, odpowiedź: RIM 6. nienumerowane przepytywanie uzupełnić komenda: UP 7. rozszerzony format adresów 8. usunąć dla ramek I komendę: I 9. usunąć dla ramek I odpowiedź: I 10. rozszerzony format pola sterującego 11. zerowanie uzupełnić komenda: RSET, 12. dla odpowiedzi dotyczących ramek FRMR usunąć komenda: FRMR
Logical Link Control (LLC) IEEE 802 BA 2, 4 LLC1 – usługi bezpołączeniowe i bez powiadamiania LLC2 – usługi połączeniowe z potwierdzeniami LLC3 – usługi bezpołączeniowe z potwierdzeniami Link Access Procedure (LAP) UA 2, 8 (protokół X.25) Link Access Procedure Balanced (LAPB) BA 2, 8 lub BA 2, 8, 10
Link Access Procedure on D-channel (LAPD) BA 2, 4, 7, 8, 10 kanał D w sieciach ISDN