Potrzeba enkapsulacji
Przekazanie wiadomości przez sieć wymaga podziału funkcji między warstwy. Dane są przygotowywane do transmisji, otrzymują informacje sterujące, a odbiornik może wykrywać błędy, kierować dane do właściwego miejsca i interpretować je. Enkapsulacja opisuje dodawanie tych informacji w warstwowej architekturze sieci, takiej jak model OSI lub TCP/IP.
Przykład listu wysyłanego za granicę obrazuje ten podział. Papier trafia do koperty przed przekazaniem przesyłki przewoźnikowi. Nie przekazuje się go bezpośrednio pilotowi. Wiadomość zapisana na kartce trafia do koperty z adresami, następnie do lokalnego worka pocztowego używanego przy sortowaniu, a później do kontenera transportowego przeznaczonego do przewozu międzynarodowego. Każdy etap dodaje opakowanie i instrukcje potrzebne na danym odcinku drogi. Enkapsulacja stosuje analogiczny porządek do danych sieciowych.
Proces wysyłania: przepływ danych w dół stosu
Enkapsulacja zachodzi na urządzeniu wysyłającym, gdy dane przemieszczają się w dół od najwyższej warstwy (Aplikacji) do najniższej (Fizycznej). Każda warstwa dodaje do danych otrzymanych z warstwy wyższej informacje kontrolne, zwane nagłówkiem oraz, w niektórych protokołach, stopką. Jednostka danych na danej warstwie jest nazywana .
- Warstwy Aplikacji, Prezentacji, Sesji (7-5): Aplikacja użytkownika, na przykład przeglądarka lub klient poczty, tworzy początkowe Dane. Są one formatowane, kompresowane lub szyfrowane w razie potrzeby.
- Warstwa Transportowa (4): Dane są dzielone na mniejsze fragmenty. W TCP nagłówek zawiera numery portów identyfikujące aplikację oraz numery sekwencyjne używane przy ponownym składaniu danych. To PDU nazywa się Segmentem w TCP. W UDP jest nazywane Datagramem i zawiera między innymi numery portów.
- Warstwa Sieciowa (3): Segment jest enkapsulowany w nagłówek zawierający adresy logiczne. Powstaje w ten sposób Pakiet.
- określa tutaj źródło i cel pakietu w przestrzeni adresowej sieci.
- Warstwa Łącza Danych (2): Warstwa łącza danych tworzy Ramkę z pakietu. W typowej ramce Ethernet pakiet otrzymuje nagłówek i stopkę.
- Nagłówek zawiera adresy warstwy łącza danych, znane jako , dla następnego skoku w sieci lokalnej.
- Stopka zawiera sekwencję sprawdzającą ramki (FCS), która umożliwia wykrywanie błędów. Wartość FCS jest często wyliczana za pomocą CRC.
- Warstwa Fizyczna (1): Ramka jest kodowana jako strumień Bitów lub symboli i przesyłana przez medium fizyczne, na przykład jako napięcia elektryczne, impulsy świetlne lub fale radiowe.
Proces odbierania: przepływ danych w górę stosu
Urządzenie odbiorcze wykonuje proces odwrotny, znany jako dekapsulacja. Gdy dane przemieszczają się w górę stosu, każda warstwa odczytuje informacje z właściwego nagłówka lub stopki, przetwarza je i usuwa te informacje przed przekazaniem pozostałego PDU do warstwy wyższej.
- Warstwa Fizyczna (1): Odbiera sygnały elektryczne, optyczne lub radiowe i odtwarza z nich bity. Odbiornik warstwy łącza składa te bity w Ramkę.
- Warstwa Łącza Danych (2): Odczytuje adresy MAC źródła i celu. Weryfikuje FCS pod kątem błędów transmisji. Po pomyślnej weryfikacji usuwa nagłówek i stopkę ramki oraz przekazuje Pakiet do Warstwy Sieciowej.
- Warstwa Sieciowa (3): Bada nagłówek IP i sprawdza adres docelowy pakietu. Następnie usuwa nagłówek IP i przekazuje Segment lub Datagram do Warstwy Transportowej.
- Warstwa Transportowa (4): Przetwarza informacje z nagłówka. W TCP używa numerów sekwencyjnych do ponownego złożenia danych w prawidłowej kolejności. Po złożeniu usuwa nagłówek transportowy i dostarcza surowe Dane właściwej aplikacji na podstawie numeru portu.
- Warstwy Aplikacji, Prezentacji, Sesji (7-5): Warstwy wyższe odbierają dane, odwracają zastosowaną kompresję lub szyfrowanie i prezentują je aplikacji końcowej w użytecznym formacie.