Mode OSI

Opisów modelu OSI w sieci nie brakuje. Niniejszy wpis ma bardziej formę notatki zawierającej najważniejsze informację niż dokładnej analizy tego zagadnienia. Zapraszam do lektury. 


Model OSI (Open Systems Interconnection) jest modelem warstwowym w którym system sieciowy podzielony jest na 7 warstw. Podział na warstwy ułatwia określenie reguł i zasad komunikacji – protokołów komunikacyjnych. Umożliwia to współdziałanie urządzeń i oprogramowania różnych producentów oraz przede wszystkim ułatwia zarządzanie procesem komunikacji. Model dzieli komunikację na mniejsze łatwiejsze do zarządzania etapy oraz określa zadania jakie muszą być realizowane w poszczególnych warstwach. Model OSI umiejscawia określony protokół w odpowiedniej warstwie abstrakcji.


Rysunek poniżej przedstawia warstwy modelu OSI ISO oraz najważniejsze protokoły pracujące w danej warstwie.

Rola poszczególnych warstw:

Warstwa fizyczna: 

  • definiuje parametry elektryczne nośnika danych (poziomy napięć, długość fali, modulacja) 
  • transmisja surowych danych za pomocą medium fizycznego
  • jednostka danych – bit

Warstwa łącza danych:

  • obsługa medium transmisyjnego
  • kodowanie (niezalecane jest wysyłanie długich sekwencji samych zer lub jedynek)
  • synchronizacja odbiornika do nadajnika
  • jednostka danych – ramka

Warstwa sieciowa:

  • adresowania
  • trasowanie czyli routing – znajdowanie drogi do odbiorcy
  • jednostka danych – pakiet

Warstwa transportowa:

  • zapewnienie jak najwyższej niezawodności i odporności na błędy
  • sposób w jaki sposób dane przesyłane są przez sieć, podstawowe protokoły to TCP, UDP
  • nie musi znać topologi sieci, gdzie znajduje się odbiorca
  • jednostka danych – segment (TCP), datagram (UDP)

Warstwa sesji:

  • utrzymanie połączenia pomiędzy wysokopoziomowymi stronami
  • multipleksowanie danych różnych aplikacji
  • może odbywać się szyfrowanie 
  • jednostka danych – dane

Warstwa prezentacji:

  • ustalenie jednolitego formatu danych
  • porządek bajtów little/big-endian
  • kodowanie liczb np. uzupełnienie do 2
  • kodowanie napisów np. ASCII, UTF-8
  • szyfrowanie(SSH, TLS/SSL), kompresja przesyłanych danych
  • jednostka danych – dane

Warstwa aplikacji:

  • pozwala korzystać z sieci jej użytkownikom
  • jednostka danych – dane

Dane wysłane przez nadawce przechodzą przez poszczególne warstwy od najwyższej do najniższej (w dół stosu). Są one dzielone na odpowiednie fragmenty oraz dodawane są informacje sterujące. Proces ten nazywamy enkapsulacją.  Odbiorca w celu otrzymania poprawnych danych przeprowadza proces odwrotny – dekapsulację. Przepływ danych występuje w górę stosu.

Ethernet

Warstwa fizyczna – PHY, odpowiada za współpracę z właściwym medium transmisyjnym. Natomiast MAC (Media Access Control) za obsługę protokołu Ethernet.MAC z PHY połączone są za pomocą MII, RMII, GMII


Rysunek poniżej przedstawia budowę rakmi ethernet

Aby istniała możliwość detekcji zajętości łącza, to pierwszy bit wysyłanj ramki musi dotrzeć do najdalszego zakątka sieci zanim zostanie wysłany ostatni bit ramki. Stąd minimalna długość pola danych.

Protokół IPv4

Działa w warstwie trzeciej i wprowadza:

  • adresacje IP – 32-bitowe adresy, które zazwyczaj zapisane są w postaci 1-bajtowych wartości oddzielonych kropkami
  • routing, czyli przekazywanie pakietów pomiędzy sieciami

Adres IP składa się z prefiksu i sufiksu, te dwie części wyróżnione są za pomocą maski.Prefiks wraz z maską wyznaczają pulę adresów do której należą wszystkie adresy mające ten sam prefiks.192.168.51.0/24 oznacza przedział 192.168.51.0 do 192.168.51.255

Pule adresów prywatnych:

10.0.0.0 do 10.255.255.255
172.16.0.0 do 172.31.255.255
192.168.0.0 do 192.168.255.255

Podsieci łączy się za pomocą routerów (ma wile interfejsów sieciowych).Rysunek poniżej przedstawia budowę datagramu IP

Jako pierwszy przesyłany jest najbardziej znaczący oktet – big-endian. Jest to tzw. porządek sieciowy oktetów.

ARP – tłumaczenie adresów sieciowych na adresy sprzętowe.

ARP – Address Resolution Protocol

Ethernet używa adresów MAC (sprzętowych). Komunikat ARP podróżuje w danych ramki ethernetowej, która w polu typ ma wartość – 0x0806. Ramka zawiera m.in. pola: adres sieciowy odbiorcy, adres sieciowy nadawcy, adres sprzętowy odbiorcy, adres sprzętowy nadawcy, pole operacja. Węzeł chcący wysłać datagram IP do odbiorcy którego adresy ethernetowego nie zna, rozgłasza do wszystkich węzłów (na adres ff:ff:ff:ff:ff:ff) w swojej podsieci zapytanie ARP (wartość – 1 w polu operacja). Nadawca pole – adres sprzętowy nadawcy oraz adres sieciowy nadawcy uzupełnia swoimi adresami. Natomiast w polu – adres sieciowy odbiorcy umieszcza IP węzła, którego adres ethernetowy chce otrzymać.
Węzeł który ma poszukiwany adres IP odpowiada bezpośrednio pytającemu, gdyż zna jego adres sprzętowy (otrzymał go w zapytaniu). W odpowiedzi pole operacja ma wartość – 2. W odpowiedzi nadawca pola –  adres sieciowy nadawcy i adres ethernetowy nadawcy uzupełnia swoimi adresami.Aby poprawić efektywność komunikacji węzły utrzymują w pamięci podręcznej (cache) tablice ARP, która zawiera poznane dotychczas przyporządkowania adresu ethernetowego do IP. Adresy są aktualizowane przez wysłanie zapytania oraz gdy zapytania otrzymują nawet jeśli nie były one do danego węzła bezpośrednio kierowane.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *