Ramka warstwy łącza danych i komunikacja

Damian Stelmach | 25-02-2017

Istnieje wiele rozwiązań i wiele standardów sieciowych realizujących funkcje warstwy drugiej. Mamy standard Ethernet, mamy sieci bezprzewodowe, mamy w końcu wiele protokołów sieciowych działających w sieciach WAN, takich jak, chociażby protokół Frame Relay. Dlatego też nie istnieje coś takiego jak uniwersalna ramka. Każdy standard sieciowy dysponuje swoją ramką, która specyficzna jest dla jednego, konkretnego rozwiązania. Uogólniając temat, możemy przyjąć, że typowa ramka warstwy drugiej składa się z 3 głównych części:

Ramka warstwy drugiej

Prześledźmy teraz proces komunikacji pomiędzy urządzeniami, skupiając się na funkcjach warstwy łącza danych. Przyjmijmy, że nasz komputer, wysyła zapytanie do serwera WWW znajdującego się w odległej sieci.

Proces komunikacji etap 1

Dane wysyłające takie zapytanie, wcześniej zostały już w procesie enkapsulacji, wyposażone w numery portów aplikacji, a także w adresy logiczne, czyli adresy IP komputera oraz serwera, no i stały się pakietem.

Proces komunikacji etap 2

Zanim pakiet trafi do medium transmisyjnego, warstwa łącza danych musi utworzyć ramkę z odpowiednimi adresami MAC nadawcy i odbiorcy ramki. W przypadku adresu MAC nadawcy sprawa jest oczywista, będzie to po prostu adres MAC komputera, ale co z adresem hosta docelowego? Komputer, jeśli nie jest w tej samej sieci, co serwer WWW nie jest w stanie dowiedzieć się jaki adres MAC ma jego karta sieciowa, nie ma takiej możliwości, jest to technicznie niewykonalne. Dlaczego? Ponieważ adresy MAC służą do komunikacji tylko w obrębie jednej, danej sieci i nie wychodzą poza jej obszar. W związku w polu ramki zawierającej docelowy adres MAC zapisany zostanie adres MAC interfejsu rutera, do którego podłączony jest nasz komputer.

Proces komunikacji etap 3

Ramka zostaje wysłana poprzez medium transmisyjne właśnie do pierwszego rutera. Ten następnie, po otrzymaniu ramki dokona jej dekapsulacji, po to, aby móc odczytać adres IP urządzenia, do którego ma trafić pakiet. Adresu IP nie może odczytać bezpośrednio z ramki warstwy drugiej, stąd ta dekapsulacja. Po odczytaniu adresu IP z pakietu (po dekapsulacji ramki, dane znowu stają się pakietem), porówna go ze swoimi wpisami w tablicy rutingu i odnajdzie wpis informujący, że do sieci, w której pracuje serwer, prowadzi trasa, przez ten drugi ruter.

Proces komunikacji etap 4

Wówczas utworzy nową ramkę, w której adresem źródłowym będzie już adres MAC jego interfejsu, poprzez który łączy się z drugim ruterem, a docelowym, adres MAC tego właśnie rutera.

Proces komunikacji etap 5

Ramka następnie trafia poprzez medium do drugiego rutera, który ponowienie dokonuje dekapsulacji ramki, aby odczytać adres IP z pakietu. Stwierdza, że adresatem danych, jest urządzenie, które pracuje w sieci, bezpośrednio do niego podłączonej, tak więc ponownie następuje proces enkapsulacji, realizowany przez drugi ruter, tym razem w polach adresów MAC umieszcza on adres MAC swojego drugiego interfejsu jako adres źródłowy, oraz adres MAC serwera jako adres docelowy.

Proces komunikacji etap 6

Ramka w ten sposób przygotowana przesyłana jest do serwera, który również dokonuje jej dekapsulacji. Tym razem jednak jest to urządzenie, do którego są kierowane dane, tak więc dokonuje pełnej ich dekapsulacji, czyli odczytuje dodatkowo numery portów aplikacji, tak aby wysłać danej do właściwej, konkretnej aplikacji, w tym przypadku do usługi WWW.

Proces komunikacji etap 7

Usługa WWW przygotowuje następnie dane odpowiedzi. Dane trafiają najpierw do warstwy transportowej, gdzie nadawane są numery portów aplikacji, następnie do warstwy sieciowej, gdzie tworzone są pakiety z odpowiednimi adresami IP, a na koniec do warstwy łącza danych, która przygotowuje z pakietów ramki, oznaczone adresami MAC serwera i rutera, do którego serwer jest podłączony.

Proces komunikacji etap 8

Odpowiedź następnie przekazywana jest do nośnika i następuje proces przesyłania jej do klienta. Po drodze, przechodzi przez dwa rutery, które wykonują procesy dekapsulacji i ponownej enkapsulacji, no bo muszą odczytywać adresy IP, dzięki, którym mogą przesyłać odpowiedź dalej. Na koniec odpowiedź trafia do klienta. Ten dokonuje dekapsulacji danych, co w konsekwencji pozwala za pomocą przeglądarki wyświetlić stronę WWW.

Proces komunikacji etap 9