Warstwa łącza danych to warstwa protokołu w programie, która obsługuje przenoszenie danych do i z fizycznego łącza w sieci. Warstwa łącza danych jest warstwą 2 w modelu architektury Open Systems Interconnection (OSI) dla zestawu protokołów telekomunikacyjnych. Bity danych są kodowane, dekodowane i organizowane w warstwie łącza danych, zanim zostaną przetransportowane jako ramki pomiędzy dwoma sąsiadującymi węzłami w tej samej sieci LAN lub WAN. Warstwa łącza danych określa również, w jaki sposób urządzenia odzyskują dane z kolizji, które mogą wystąpić, gdy węzły próbują wysyłać ramki w tym samym czasie.
Warstwa łącza danych ma dwie podwarstwy: podwarstwę kontroli łącza logicznego (LLC) i podwarstwę kontroli dostępu do nośnika (MAC).
Jak opisano w specyfikacji IEEE-802 LAN, rolą podwarstwy LLC jest kontrola przepływu danych między różnymi aplikacjami i usługami, a także zapewnienie mechanizmów potwierdzania i powiadamiania o błędach. Podwarstwa LLC może następnie rozmawiać z szeregiem IEEE 802 podwarstw MAC, które kontrolują dostęp do fizycznych mediów dla transportu. Jest ona również odpowiedzialna za fizyczne adresowanie ramek. Dwa popularne typy warstwy MAC obejmują specyfikacje sieci Ethernet i sieci bezprzewodowych 802.11.
Funkcje warstwy łącza danych
Warstwa łącza danych ma trzy główne funkcje:
- Obsługuje problemy, które występują w wyniku błędów transmisji bitów.
- Zapewnia przepływ danych w tempie, które nie przytłacza urządzeń wysyłających i odbierających.
- Pozwala na przesyłanie danych do warstwy 3, warstwy sieciowej, gdzie są one adresowane i routowane.
Warstwa łącza danych i rozwiązywanie błędów
Warstwa łącza danych zapewnia ustanowienie wstępnego połączenia, dzieli dane wyjściowe na ramki danych i obsługuje potwierdzenia od odbiornika, że dane dotarły pomyślnie. Zapewnia również, że dane przychodzące zostały pomyślnie odebrane poprzez analizę wzorów bitów w specjalnych miejscach ramek.
Jeśli wystąpi błąd, warstwa łącza danych powiadamia protokoły wyższego poziomu, że coś stało się z łączem fizycznym. Możliwości sekwencjonowania ramek w warstwie łącza danych pozwalają urządzeniu odbiorczemu na zmianę kolejności ramek, które mogły zostać przesłane poza kolejnością. Warstwa łącza danych weryfikuje, czy pakiet nie został uszkodzony. Warstwa łącza danych zarządza również przepływami, umożliwiając urządzeniom na łączu wykrywanie zatorów. Urządzenia znajdujące się w pobliżu przekazują następnie informacje o przeciążeniu, dzięki czemu ruch może zostać odpowiednio przekierowany.