Komunikacja w sieci oparta jest o warstwowy model OSI, który definiuje jej poszczególne etapy. Składa się on z siedmiu warstw:

REeoOxYHDAITu
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Model OSI w terminologii sieciowej nazywany jest modelem odniesienia. Nazwa ta wynika z faktu, iż oprócz tego, że systematyzuje i porządkuje on proces komunikacji sieciowej, stanowi również wyznacznik, wzornik dla inżynierów tworzących rozwiązania dla sieci komputerowych, a także dla programistów piszących oprogramowanie działające w środowisku sieciowym.

Dzięki temu komunikacja w sieci może być realizowana – pomimo tego, że każdy z nas może korzystać z innego urządzenia końcowego (laptop, smartfon, tablet), innego oprogramowania (Windows, Android, Mac OS) czy z urządzeń sieciowych różnych producentów. Model OSI tworzy swoisty obszar, w ramach którego poruszają się twórcy rozwiązań sieciowych, zarówno sprzętowych, jak i programowanych, zapewniając poprawne działanie tych rozwiązań bez względu na uwarunkowania (sprzęt i oprogramowanie) użytkowników sieci komputerowych.

Czy tylko OSI?

Model OSI jest modelem bardzo szczegółowym, opisującym dokładnie, co dzieje się podczas komunikacji sieciowej. Nie zawsze i nie w każdych warunkach taka szczegółowość jest potrzebna i pożądana, dlatego w ekosystemie sieciowym występuje jeszcze jeden model, bardziej ogólny, opisujący wprost przebieg komunikacji pomiędzy urządzeniami.

Ten model to TCP/IP, nazywany czasami również modelem DoD. Jego nazwa wywodzi się od nazwy dwóch bardzo ważnych protokołów komunikacyjnych, niezbędnych dla właściwego działania sieci komputerowych, a mianowicie TCP (protokół warstwy transportowej) oraz IP (protokół warstwy sieci).

Ważne!

Protokoły TCP oraz IP stanowią szkielet komunikacji w sieci i są najczęściej stosowanymi protokołami komunikacyjnymi.

Model TCP/IP nazwany jest również modelem protokołów. Dokładnie opisuje, jakie protokoły i standardy są wykorzystywane w każdej warstwie podczas procesu komunikacji.

Model TCP/IP w odróżnieniu od modelu OSI definiuje tylko 4 warstwy:

RgCGWvhpk0xNU
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Funkcje poszczególnych warstw są zbliżone do tych z modelu osi. Przypomnijmy zatem:

  1. Warstwa aplikacji umożliwia jej użytkownikom korzystanie z sieci, poprzez oprogramowanie zainstalowane na urządzaniu. W warstwie aplikacji pracują wszystkie programy i aplikacje umożliwiające korzystanie z sieci.

  2. Warstwa transportowa (zwana warstwą transportu) odpowiada za sprawną obsługę komunikacji pomiędzy urządzeniami, podział danych na mniejsze fragmenty, jeśli jest to konieczne, a także nadanie identyfikatora aplikacji danym otrzymanym z warstwy aplikacji.

  3. Warstwa sieciowa odpowiada za adresowanie danych z wykorzystaniem logicznych adresów IP, a w przypadku ruterów również za wybór najlepszej trasy przesłania danych w sieci Internet. Analogicznie działają nowoczesne samochodowe nawigacje GPS.

  4. Warstwa dostępu do sieci odpowiedzialna jest za kontrolę dostępu do medium transmisyjnego, a także adresowanie danych z wykorzystaniem adresów fizycznych, czyli adresów MAC kart sieciowych urządzeń pracujących w sieciach komputerowych (komputerów, telefonów, laptopów). Na podstawie tych adresów przełączniki sieciowe przesyłają dane do odpowiednich urządzeń w sieci. Warstwa ta definiuje również rodzaj okablowania (mediów transmisyjnych) zastosowanego w danej sieci.

Stos protokołów

Jak już wiemy, model TCP/IP nazywany jest modelem protokołów (niekiedy również stosem protokołów). Skąd taka nazwa? W każdej warstwie występuje jeden lub więcej protokołów komunikacyjnych, które odpowiadają za poszczególne zadania warstwy, w jakiej pracują.

Kiedy na przykład chcemy wyświetlić jakąś stronę internetową, to komunikacja klienta (przeglądarki internetowej) z serwerem WWW realizowana jest nie za pomocą jednego protokołu, ale kilku (czasami nawet kilkunastu) protokołów.

Na początku warstwa aplikacji korzysta z protokołu HTTP (odpowiadającego za przesłanie strony od serwera do klienta). Następnie warstwa transportowa stosuje protokoły w niej działające, czyli TCP lub UDP. Dalej w procesie komunikacji, w warstwie internetowej stosuje się protokół IP, a w warstwie dostępu do sieci, np. standard Ethernet. Komunikacja opiera się na całym zestawie protokołów, ułożonych w stos, jeden pod drugim:

RoBkMQOrZQaSb
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Jednostki PDU

W procesie enkapsulacji informacje, które chcemy przesłać przez sieć, przekazywane są zgodnie z modelami z warstw górnych do dolnych. Wiemy już, że w tym procesie dane opatrywane są na poszczególnych warstwach dodatkowymi informacjami, które niezbędne są do poprawnej komunikacji (numery portów aplikacji, adresy IP, adresy MAC). Dodawanie tych dodatkowych danych powoduje, że zmienia się trochę ich struktura. Jest to logiczne, skoro dokładamy do informacji jakieś dodatki, których wcześniej tam nie było. W związku z tym zmienia się również nazewnictwo zbioru danych.

Ogólnie dane przesyłane przez sieć nazywane są jednostkami PDUjednostka PDUjednostkami PDU (ang. Protocol Data Unit), natomiast podczas przechodzenia przez poszczególne warstwy ich nazwy się zmieniają:

  1. W warstwie aplikacji jednostkę PDU będziemy nazywać danymi.

  2. W warstwie transportowej jednostkę PDU nazywać będziemy segmentem lub datagramem, w zależności od zastosowanego protokołu tej warstwy (TCP – segmenty, UDP – datagramy).

  3. W warstwie internetowej jednostka PDU to już pakiet.

  4. W warstwie dostępu do sieci mamy ramkę.

Ważne!

Takie samo nazewnictwo będziemy stosować podczas analizy komunikacji z wykorzystaniem modelu ISO/OSI.

R30E9UMpmPRCm
Źródło: Contentplus.pl Sp. z o.o., licencja: CC BY-SA 3.0.

Słownik

jednostka PDU
jednostka PDU

pojęcie odnoszące się do jednej „porcji” danych przesyłanych przez sieć komputerową