Czym są warstwy sieciowe - wstęp
W roku 1978 przez Międzynarodową Organizację Normalizacji ISO (International Standards Organization) opracowany został Wzorcowy Model Połączeń w Systemach Otwartych OSI (Open Systems Interconnection Reference Model). W modelu tym zostały wyodrębnione podstawowe warstwy sieci, którym nadano standardowe nazwy oraz określono zakres ich działania. Opisywany model posiada siedem warstw. Dzięki zastosowaniu warstw w sieciach komputerowych możliwa jest standaryzacja przesyłania informacji pomiędzy sieciami lub też elementami sieci realizowanymi w różnorakich technologiach. Mamy więc gwarancję wzajemnego współdziałania różnego rodzaju oprogramowania sieciowego i sprzętu, a ponadto możliwe jest bardzo łatwe zrozumienie działania całej sieci. Komunikacja sieciowa może zostać podzielona na prostsze części, z którymi łatwo się współpracuje. Kolejną zaletą opisywanego modelu jest możliwość dokonywania zmian w obrębie tylko jednej warstwy bez niepotrzebnego naruszania struktury innych warstw.
Charakterystyka poszczególnych warstw wchodzących w skład modelu OSI
Wszystkie siedem warstw podzielono na dwie główne sekcje. Trzy najwyższe sekcje są nazywane warstwami aplikacji. Są one bardzo blisko związane z aplikacjami, które wykonał użytkownik połączenia sieciowego i które generują przesyłane dane. Cztery najniższe warstwy są nazywane warstwami przepływu. Określają one w jednoznaczny sposób przesyłania danych przy użyciu przez urządzenie sieciowe mediów sieciowych, aż do komputera odbiorcy. Każda z warstw źródła danych powinna porozumiewać się jedynie z warstwą równorzędną w miejscu w tym celu przeznaczonym.
Warstwa siódma - aplikacji
Warstwa aplikacji stanowi najbliższą użytkownikowi warstwę wyodrębnioną w tym modelu. Zapewnia ona aplikacjom użytkownika dostęp do rozmaitych usług komunikacyjnych, takich jak zasoby innych użytkowników sieci. W odróżnieniu od innych warstw świadczących usługi wyżej położonym warstwom, jako warstwa najwyżej położona dostarcza ona jedynie usługi aplikacjom spoza modelu wzorcowego. W skład tej warstwy wchodzą protokoły takich typowych dla użytkowników komputerów działań, jak przesyłanie plików, czy obsługa poczty elektronicznej.
Warstwa szósta - prezentacji
Warstwa prezentacji odpowiada za translację formatów danych jakie są przesyłane pomiędzy różnymi typami systemów. U nadawcy jest wykorzystywana do przekształcania danych z reprezentacji wykorzystywanej w komputerach do standardowej reprezentacji w sieci oraz ze standardowej reprezentacji w sieci do reprezentacji, która jest wykorzystywana w komputerze odbiorcy. Warstwa szósta odpowiada również za kompresję danych oraz ich szyfrowanie i deszyfrowanie.
Warstwa piąta - sesji
Dzięki istnieniu warstwy sesji, możliwe jest dostarczanie użytecznych w komunikacji pomiędzy warstwami prezentacji usług, takich jak synchronizacja komunikacji. Warstwa sesji odpowiada za ustanawianie, sterowanie oraz zamykanie sesji pomiędzy komunikującymi się ze sobą komputerami.
Warstwa czwarta - transportu
Dzięki warstwie transportu możliwe jest zagwarantowanie bezbłędnej transmisji danych pomiędzy użytkownikami końcowymi. Związane jest z tym wykrywanie błędów oraz ewentualna retransmisja przekłamanych danych. Dane, które przesyłane są z warstwy sesji dzielone są w warstwie transportu na małe segmenty, które są następnie zaopatrywane w numery porządkowe. Zadaniem tej warstwy jest gromadzenie po stronie odbiorcy każdego ze składających się na daną wiadomość segmentów oraz odpowiednie poukładanie tych segmentów w kolejności jaką posiadały w czasie nadawania.
Warstwa trzecia - sieciowa
Segmenty danych w warstwie sieciowej wzbogacane są o nagłówek sieci, który zawiera adres IP zarówno źródła jak i celu. Tym sposobem tworzone są pakiety danych. Do podstawowych zadań tej warstwy należy wybieranie możliwie najlepszej drogi dla pakietów wędrujących od nadawcy do odbiorcy.
Warstwa druga - łącza danych
Mechanizm korygowania i wykrywania błędów, na jakie jest narażona komunikacja w sieci, są głównymi zadaniami tej warstwy. Jej funkcją jest podział każdego pakietu na ramki, które odpowiadają architekturze sieci oraz na uzupełnianie ramek w informacje umożliwiające wykrywanie błędów w transmisji danych. Kolejnym istotnym zadaniem, które pełni ta warstwa to sterowanie dostępem do medium transmisyjnego, a także fizyczna adresacja przesyłek przy wykorzystaniu adresów MAC, w które wyposażone są karty sieciowe. Poprawność jest kontrolowana dzięki umieszczeniu odpowiedniego szablonu bitów na początku oraz na końcu każdej z ramek, a następnie na obliczaniu sumy kontrolnej, która dołączana jest do danej ramki. Po stronie odbiorcy następuje sprawdzenie czy suma kontrolna obliczona przez niego zgadza się z tą, która została odebrana razem z ramką. Suma kontrolna ma na celu sprawdzenie, czy nie doszło do przekłamania w czasie przesyłania ramek.
Warstwa pierwsza - fizyczna
Warstwa fizyczna odpowiada za fizyczny transport mediami sieciowymi komunikatu pod postacią ciągu bitowego. W warstwie tej określone są wymagania techniczne, które dotyczą medium transmisyjnego. Protokoły tej warstwy służą do określenia parametrów interfejsów mechanicznych, elektrycznych oraz sygnalizacyjnych w taki sposób, aby zapewnione było poprawne przesyłanie danych bit po bicie.