Co to jest poziom łącza?

Poziom łącza jest jednym z najniższych, najbardziej podstawowych poziomów koncepcyjnych w komunikacji cyfrowej. Zasadniczo jest to miejsce, w którym znajduje się cała logika obsługi łącza danych. Działa w czymś w rodzaju hierarchii, działając jako interfejs, w tym przypadku, między najniższym poziomem, poziomem fizycznym, który przesyła nieprzetworzony strumień jedynek i zer, a warstwami wyższymi. W wielu przypadkach termin ten jest używany zamiennie z „warstwą łącza”, co zwykle oznacza drugą warstwę modelu połączeń systemów otwartych (OSI), warstwę łącza danych, używaną w sieciach komputerowych. Istnieje wiele protokołów komunikacyjnych, które działają na poziomie łącza, ale ich podstawowymi funkcjami są przygotowanie pakietów danych przeznaczonych do transportu oraz interpretacja wszelkich przychodzących przez łącze danych.

Istnieją trzy rodzaje łączy danych, z którymi ma do czynienia na poziomie łącza: simpleks, half-duplex i full duplex. Dzięki łączu simpleks dane są przesyłane w jednym kierunku, na przykład w sieci rozgłoszeniowej, w której istnieje dedykowany nadawca i odbiorca, a odbiorca nie musi niczego odsyłać do nadawcy. W trybie half-duplex dane mogą być przesyłane w obie strony, ale nie w tym samym czasie. Komunikacja w trybie pełnego dupleksu umożliwia jednoczesne przesyłanie danych w obu kierunkach, co wymaga większego wysiłku ze strony poziomu łącza w celu uporządkowania komunikacji przychodzącej i wychodzącej.

Aby wykonać większość swojej pracy, poziom łącza wykorzystuje technikę znaną jako ramkowanie. Wiąże się to z dołączaniem dodatkowego identyfikatora, który wskazuje, gdzie zaczyna się lub kończy ramka w strumieniu bitów. Chociaż istnieją inne metody ramek, w większości przypadków jest to po prostu dodatkowy bit dodawany do strumienia podczas określonych przyrostów. Po stronie odbiorczej warstwa łącza synchronizuje bity ramek w strumieniu, aby pomóc oddzielić ramki, wyciągnąć oryginalne pakiety i przekazać je innym warstwom w razie potrzeby. Synchronizacja między końcem wysyłającym i odbierającym jest ważna, ponieważ jeśli warstwa łącza odbierającego zdarzy się odebrać strumień między ramkami, może po prostu poczekać, aż rozpocznie się następna ramka, odrzucając wszelkie nieużyteczne bity, które nie należą do ramki.

Warstwa łącza danych modelu OSI dodatkowo postrzega dwie podwarstwy warstwy łącza. Jedna jest określana jako kontrola łącza logicznego (LLC), a druga to kontrola dostępu do nośnika (MAC). Górna warstwa podrzędna LLC zajmuje się takimi kwestiami, jak kontrola przepływu i naprawa błędów w transmisji. W zależności od rodzaju komunikacji, niektóre metody korekcji błędów mogą nie być stosowane. Na przykład w przypadku sieci bezprzewodowych, poziom łącza ma możliwość żądania ponownego wysłania błędnych pakietów, co jest znacznie rzadsze w komunikacji przewodowej, gdzie warstwa łącza zajmuje się tylko wykrywaniem błędów i anulowaniem błędnych pakietów.

Niższa podwarstwa MAC jest wówczas odpowiedzialna za identyfikację fizycznego adresu urządzenia, potocznie zwanego adresem MAC. Jest również w stanie utrzymać dowolne kolejkowanie pakietów danych, a także zaplanować ich dostarczenie oraz zapewnić jakość transmisji. W tym miejscu odbywa się również synchronizacja ramek, a także protokoły, które zapobiegają kolizji strumieni.