Cel modelu warstwowego
Projektowanie kompletnego systemu komunikacyjnego wymaga uwzględnienia sygnałów elektrycznych, adresowania, sprawdzania błędów, formatowania danych, interfejsów aplikacji i wielu innych funkcji. Jednoczesne opisanie wszystkich tych funkcji utrudnia projektowanie. Model OSI porządkuje je w warstwy.
Model OSI (Open Systems Interconnection) to abstrakcyjny model odniesienia, który porządkuje funkcje systemu telekomunikacyjnego lub komputerowego w siedmiu logicznych warstwach. Nie jest specyfikacją implementacji. Jego głównym celem jest ułatwienie tego, by systemy różnych producentów mogły ze sobą, dzięki wspólnemu punktowi odniesienia do projektowania protokołów sieciowych.
Zasady komunikacji warstwowej
Komunikacja w modelu warstwowym opiera się na kilku zasadach:
- Abstrakcja: Każda warstwa realizuje określony, dobrze zdefiniowany zestaw funkcji. Jej działanie nie wymaga znajomości szczegółów warstw powyżej ani poniżej.
- Komunikacja równorzędna (peer-to-peer): W modelu warstwa N na maszynie wysyłającej komunikuje się logicznie z warstwą N na maszynie odbierającej. Warstwy równorzędne korzystają z tego samego protokołu.
- Usługi i interfejsy: W implementacji dane przechodzą pionowo. Każda warstwa świadczy usługi warstwie znajdującej się bezpośrednio nad nią i korzysta z usług warstwy bezpośrednio pod nią przez dobrze zdefiniowany interfejs.
Proces: Enkapsulacja i Dekapsulacja
Gdy dane przemieszczają się w dół stosu na urządzeniu wysyłającym, warstwa może dołączyć informacje kontrolne w nagłówku lub stopce. Ten proces nazywa się enkapsulacją. Przypomina to wkładanie listu do koperty, a następnie koperty do większej torby kurierskiej. Jednostka danych na każdej warstwie ma swoją specyficzną nazwę, znaną jako .
Odbiornik wykonuje proces odwrotny, dekapsulację, usuwając informacje dodane podczas enkapsulacji, gdy dane przemieszczają się w górę w kierunku aplikacji.
Jednostki Danych Protokołu (PDU) wg Warstw
- Warstwy 7, 6, 5 (Aplikacji, Prezentacji, Sesji): PDU jest ogólnie nazywane Danymi.
- Warstwa 4 (Transportowa): PDU to Segment (dla TCP) lub Datagram (dla UDP).
- Warstwa 3 (Sieciowa): PDU to Pakiet.
- Warstwa 2 (Łącza Danych): PDU to Ramka.
- Warstwa 1 (Fizyczna): PDU stanowią Bity. W określonych technikach transmisji bity są reprezentowane przez Symbole.
Analogia: Wysyłanie Notatki Służbowej
Role poszczególnych warstw można przedstawić na przykładzie wiadomości wysyłanej przez kierownika projektu Eryka do kierownika Ludwika pracującego w innym biurowcu.
- (Warstwa 7) Aplikacji - Eryk, Kierownik Projektu: Tworzy oryginalną wiadomość lub żądanie (np. "Proszę o dane sprzedażowe za IV kwartał").
- (Warstwa 6) Prezentacji - Tłumacz: Tłumaczy wiadomość na standardowy format i język firmowy, zrozumiały dla biura Ludwika. Może ją zaszyfrować dla poufności.
- (Warstwa 5) Sesji - Szyfrant/Urzędnik Sesji: Ustanawia i zarządza formalną „sesją” komunikacyjną z biurem Ludwika, upewniając się, że obie strony są gotowe do komunikacji.
- (Warstwa 4) Transportowa - Sekretarka: Bierze długą wiadomość i dzieli ją na ponumerowane strony, aby można było złożyć ją w odpowiedniej kolejności. W tym przykładzie opisuje niezawodny transport i obsługuje potwierdzenia.
- (Warstwa 3) Sieciowa - Postmaster: Wkłada strony do koperty z pełnym adresem pocztowym Ludwika (ulica, miasto, kod pocztowy). Wybiera ogólną trasę dla furgonetki pocztowej.
- (Warstwa 2) Łącza Danych - Pracownik Sortowni: Bierze kopertę od postmastera i umieszcza ją w odpowiednim worku kurierskim na następny przystanek (np. worek jadący do centralnej sortowni w śródmieściu). Dodaje lokalną etykietę dostawy.
- (Warstwa 1) Fizyczna - Kurier (Samochód, Samolot): Fizyczny środek transportu. Kurier odpowiada za fizyczne przemieszczenie przesyłki z punktu A do punktu B.
Siedem Warstw Modelu OSI
Siedem warstw modelu OSI pełni następujące funkcje, od góry do dołu.
Warstwa 7: Aplikacji
Warstwa aplikacji jest najbliższa użytkownikowi końcowemu. Zapewnia interfejs, przez który aplikacje uzyskują dostęp do usług sieciowych. Zakres tej warstwy obejmuje protokoły używane przez aplikacje, bez samych programów, takich jak przeglądarka internetowa.
- Funkcje: Wirtualny terminal sieciowy, transfer plików, dostęp i zarządzanie (FTAM), usługi pocztowe, usługi katalogowe.
- Przykłady: HTTP, FTP, SMTP, DNS.
Warstwa 6: Prezentacji
Warstwa prezentacji określa format danych zrozumiały dla aplikacji odbiorczej. Może obsługiwać formatowanie danych, konwersję zestawu znaków, kompresję i szyfrowanie.
- Funkcje: Tłumaczenie kodów znaków (np. ASCII na EBCDIC), kompresja danych, szyfrowanie i deszyfrowanie.
- Przykłady: SSL/TLS (mechanizm szyfrowania działający nad transportem), JPEG, MPEG (formaty obrazu i wideo).
Warstwa 5: Sesji
Warstwa sesji może ustanawiać, zarządzać i kończyć sesje komunikacyjne między aplikacjami. Obsługuje kontrolę dialogu oraz synchronizację przez umieszczanie punktów kontrolnych w strumieniu danych.
- Funkcje: Ustanawianie, utrzymywanie i kończenie sesji; kontrola dialogu; synchronizacja.
- Przykłady: Protokoły lub funkcje kojarzone z tą warstwą: usługa sesji NetBIOS oraz punkty synchronizacji.
Warstwa 4: Transportowa
Warstwa transportowa zapewnia usługi komunikacji końcowej między hostami. W zależności od protokołu obejmuje segmentację danych z warstw wyższych, kontrolę przepływu, wykrywanie błędów oraz mechanizmy niezawodności.
- PDU: Segment (TCP), Datagram (UDP).
- Funkcje: Segmentacja i ponowne składanie, kontrola połączenia, kontrola przepływu, kontrola błędów.
- Protokoły: TCP (niezawodny, połączeniowy), UDP (bezpołączeniowy, bez gwarancji dostarczenia).
Warstwa 3: Sieciowa
Warstwa sieciowa odpowiada za adresowanie logiczne i przekazywanie pakietów przez wiele sieci. Mechanizmy routingu uczestniczą w wyborze trasy od źródła do celu.
- PDU: Pakiet.
- Funkcje: Adresowanie logiczne (adresy IP), routing.
- Urządzenia: Routery.
- Protokoły: IP (IPv4, IPv6), ICMP, OSPF.
Warstwa 2: Łącza Danych
Warstwa łącza danych zapewnia transfer między sąsiednimi węzłami. W zależności od protokołu obejmuje adresowanie łącza, ramkowanie danych, kontrolę przepływu i wykrywanie błędów na łączu fizycznym.
- PDU: Ramka.
- Funkcje: Ramkowanie, adresowanie łącza (np. MAC), kontrola przepływu, wykrywanie błędów (np. CRC).
- Urządzenia: Przełączniki, mosty.
- Protokoły: Ethernet, HDLC, PPP.
Warstwa 1: Fizyczna
Warstwa fizyczna definiuje elektryczne, mechaniczne i funkcjonalne właściwości połączenia. Odpowiada za przesyłanie sygnałów reprezentujących bity przez medium fizyczne.
- PDU: Bity.
- Funkcje: Definiuje poziomy napięć, wyprowadzenia pinów, typy kabli, złącza (np. RJ-45) i taktowanie sygnału.
- Urządzenia: Koncentratory, regeneratory, kable; karty sieciowe (NIC) łączą funkcje warstwy fizycznej i łącza danych.