Model OSI (pełna nazwa ISO OSI RM, ang. ISO Open Systems Interconnection Reference Model – model odniesienia łączenia systemów otwartych) lub OSI – standard zdefiniowany przez ISO oraz ITU-T opisujący strukturę komunikacji w sieci komputerowej.
Międzynarodowa Organizacja Normalizacyjna (ang. International Organization for Standardization) na początku lat osiemdziesiątych XX w.
dostrzegła potrzebę stworzenia modelu sieciowego, dzięki któremu producenci mogliby opracowywać współpracujące ze sobą rozwiązania sieciowe.
W taki sposób powstała specyfikacja Open Systems Interconnection Reference Model, która do polskich norm została zaadaptowana w 1995 roku.
Model ISO OSI RM jest traktowany jako model odniesienia (wzorzec) dla większości rodzin protokołów komunikacyjnych.
Podstawowym założeniem modelu jest podział systemów sieciowych na 7 warstw (ang. layers) współpracujących ze sobą w ściśle określony sposób.
Model warstwowy został przyjęty przez ISO w 1984 roku.
Najbardziej istotnym organem jest wspólny komitet powołany przez ISO/IEC, zwany Joint Technical Committee 1- Information Technology (JTC1).
Formalnie dzieli się jeszcze na podkomitety SC.
Dla Internetu sformułowano uproszczony Model TCP/IP, który ma 4 warstwy.
Kapsułkowanie danych
Model OSI opisuje drogę danych od aplikacji w systemie jednej stacji roboczej do aplikacji w systemie drugiej.
Przed wysłaniem dane wraz z przekazywaniem do niższych warstw sieci zmieniają swój format, co nosi nazwę procesu kapsułkowania (enkapsulacji).
Organizacja warstwowa
Model OSI definiuje jakie zadania oraz rodzaje danych mogą być przesyłane między warstwami w całkowitym oderwaniu od ich fizycznej i algorytmicznej realizacji, czyli zakłada istnienie warstw abstrakcji w medium transmisyjnym, sprzęcie oraz oprogramowaniu i wokół tych warstw orientuje specyficzne dla nich protokoły, realizowane przez te protokoły usługi świadczone wyższym warstwom oraz posiadane interfejsy,
umożliwiające dostęp do warstwy przez procesy z innych warstw.
Mimo iż każda z warstw sama nie jest funkcjonalna, to możliwe jest projektowanie warstwy w całkowitym oderwaniu od pozostałych.
Jest to realne, jeżeli wcześniej zdefiniuje się protokoły wymiany danych pomiędzy poszczególnymi warstwami.
Warstwy wyższe
Wyróżniamy trzy warstwy górne, czyli warstwę aplikacji, prezentacji i sesji.
Ich zadaniem jest współpraca z oprogramowaniem realizującym zadania zlecane przez użytkownika systemu komputerowego.
Tworzą one pewien interfejs, który pozwala na komunikację z warstwami niższymi.
Ta sama warstwa realizuje dokładnie odwrotne zadanie w zależności od kierunku przepływu danych.
Przyjmijmy, że dane przepływają w dół Modelu OSI, kiedy płyną od użytkownika do urządzeń sieciowych oraz w górę w przeciwnym wypadku.
Warstwa 7: aplikacji
Warstwa aplikacji jest warstwą najwyższą, zajmuje się specyfikacją interfejsu, który wykorzystują aplikacje do przesyłania danych do sieci (poprzez kolejne warstwy modelu ISO/OSI).
W przypadku sieci komputerowych aplikacje są zwykle procesami uruchomionymi na odległych hostach.
Interfejs udostępniający programistom usługi dostarczane przez warstwę aplikacji opiera się na obiektach nazywanych gniazdami (ang. socket).
Jeżeli użytkownik posługuje się oprogramowaniem działającym w architekturze klient-serwer, zwykle po jego stronie znajduje się klient, a serwer działa na maszynie podłączonej do sieci świadczącej usługi równocześnie wielu klientom.
Zarówno serwer, jak i klient znajdują się w warstwie aplikacji.
Komunikacja nigdy nie odbywa się bezpośrednio między tymi programami.
Kiedy klient chce przesłać żądanie do serwera, przekazuje komunikat w dół do warstw niższych, które fizycznie przesyłają go do odpowiedniej maszyny, gdzie informacje ponownie wędrują w górę i są ostatecznie odbierane przez serwer.
Jednocześnie zapewnia interfejs między aplikacjami, których używamy, a siecią (umożliwia komunikację).
Warstwa 5: sesji
Warstwa sesji otrzymuje od różnych aplikacji dane, które muszą zostać odpowiednio zsynchronizowane.
Synchronizacja występuje między warstwami sesji systemu nadawcy i odbiorcy.
Warstwa sesji „wie”, która aplikacja łączy się z którą, dzięki czemu może zapewnić właściwy kierunek przepływu danych – nadzoruje połączenie.
Wznawia je po przerwaniu.
Warstwy niższe
Najniższe warstwy zajmują się odnajdywaniem odpowiedniej drogi do celu, gdzie ma być przekazana konkretna informacja.
Dzielą również dane na odpowiednie dla urządzeń sieciowych pakiety określane często skrótem PDU (ang. Protocol Data Unit).
Dodatkowo zapewniają weryfikację bezbłędności przesyłanych danych.
Ważną cechą warstw dolnych jest całkowite ignorowanie sensu przesyłanych danych.
Dla warstw dolnych nie istnieją aplikacje, tylko pakiety/ramki danych.
Warstwy dolne to warstwa transportowa, sieciowa, łącza danych oraz fizyczna.
Tekst pisany dużą czcionkąWarstwa 4: transportowa
Warstwa transportowa segmentuje dane oraz składa je w tzw. strumień.
Warstwa ta zapewnia całościowe połączenie między stacjami:
źródłową oraz docelową, które obejmuje całą drogę transmisji.
Następuje tutaj podział danych na części, które są kolejno indeksowane i wysyłane do docelowej stacji.
Na poziomie tej warstwy do transmisji danych wykorzystuje się dwa protokoły TCP (ang. Transmission Control Protocol) oraz UDP (ang. User Datagram Protocol).
W przypadku gdy do transmisji danych wykorzystany jest protokół TCP stacja docelowa po odebraniu segmentu wysyła potwierdzenie odbioru.
W wyniku niedotarcia któregoś z segmentów stacja docelowa ma prawo zlecić ponowną jego wysyłkę (kontrola błędów transportu).
W przeciwieństwie do protokołu TCP w protokole UDP nie stosuje się potwierdzeń.
Protokół UDP z racji konieczności transmisji mniejszej ilości danych zazwyczaj jest szybszy od protokołu TCP, jednakże nie gwarantuje dostarczenia pakietu.
Oba protokoły warstwy transportowej stosują kontrolę integralności pakietów, a pakiety zawierające błędy są odrzucane.
Warstwa 3: sieciowa
Warstwa sieciowa jako jedyna dysponuje wiedzą dotyczącą fizycznej topologii sieci.
Rozpoznaje, jakie drogi łączą poszczególne komputery (trasowanie) i decyduje, ile informacji należy przesłać jednym z połączeń, a ile innym.
Jeżeli danych do przesłania jest zbyt wiele, to warstwa sieciowa po prostu je ignoruje.
Nie musi zapewniać pewności transmisji, więc w razie błędu pomija niepoprawne pakiety danych.
Standardowa paczka danych czasami oznaczana jest jako NPDU (ang. Network Protocol Data Unit).
Nie znajdują się w nim żadne użyteczne dla użytkowników dane.
Jedyne jego zadanie, to zapewnienie sprawnej łączności między bardzo odległymi punktami sieci.
Routery są podstawą budowy rozległych sieci informatycznych takich jak Internet, bo potrafią odnaleźć najlepszą drogę do przekazania informacji.
Warstwa sieciowa podczas ruchu w dół umieszcza dane wewnątrz pakietów zrozumiałych dla warstw niższych (kapsułkowanie).
Jednocześnie warstwa sieci używa czterech procesów (adresowanie, enkapsulacja, routing, dekapsulacja).
Protokoły warstwy sieci to: (IPv4, IPv6, ICMP, NOVELL IPX, APPLE TALK, CLNS/DECN itd.).
Warstwa 2: łącza danych
Osobny artykuł: Warstwa łącza danych.
Warstwa łącza danych jest czasami nazywana warstwą liniową lub kanałową.
Ma ona nadzorować jakość przekazywanych informacji.
Nadzór ten dotyczy wyłącznie warstwy niższej.
Warstwa łącza danych ma możliwość zmiany parametrów pracy warstwy fizycznej, tak aby obniżyć liczbę pojawiających się podczas przekazu błędów.
Zajmuje się pakowaniem danych w ramki i wysyłaniem do warstwy fizycznej.
Rozpoznaje błędy związane z gubieniem pakietów oraz uszkodzeniem ramek i zajmuje się ich naprawą.
Podczas ruchu w dół w warstwie łącza danych zachodzi enkapsulacja pakietów z warstwy sieciowej tak, aby uzyskać ramki zgodne ze standardem.
Czasami są one oznaczane jako LPDU (ang. Link Protocol Data Unit).
Ramka danych przeważnie składa się z:
ID odbiorcy – najczęściej adres MAC stacji docelowej lub bramy domyślnej,
ID nadawcy – najczęściej adres MAC stacji źródłowej,
informacja sterująca – zawiera dane o typie ramki, trasowaniu, segmentacji itp.,
CRC (ang. Cyclic Redundancy Check) – kod kontroli cyklicznej – odpowiada za korekcję błędów i weryfikację poprawności danych otrzymywanych przez stację docelową.
Warstwa łącza danych dzieli się na dwie podwarstwy:
LLC (ang. logical link control) – sterowania łączem danych – kontroluje poprawność transmisji i współpracuje przede wszystkim z warstwą sieciową w obsłudze usług połączeniowych i bezpołączeniowych.
MAC (ang. media access control) – sterowania dostępem do nośnika – zapewnia dostęp do nośnika sieci lokalnej i współpracuje przede wszystkim z warstwą fizyczną.
Urządzenia działające w tej warstwie to: most i przełącznik.
Warstwa 1: fizyczna
Fundamentem, na którym zbudowany jest model referencyjny OSI, jest jego warstwa fizyczna.
Określa ona wszystkie składniki sieci niezbędne do obsługi elektrycznego, optycznego, radiowego wysyłania i odbierania sygnałów.
Warstwa fizyczna składa się z czterech obszarów funkcjonalnych:
mechanicznego,
elektrycznego,
funkcjonalnego,
proceduralnego.
Wspólnie obejmują one wszystkie mechanizmy potrzebne do obsługi transmisji danych, takie jak techniki sygnalizacyjne, napięcie elektryczne powodujące przepływ prądu elektrycznego przenoszącego sygnał, rodzaje nośników i odpowiadające im właściwości impedancji, elektroniczne składniki kart sieciowych, a nawet fizyczny kształt złącza używanego do terminacji nośnika.
Warstwa fizyczna przesyła i odbiera sygnały zaadresowane dla wszystkich protokołów jej stosu oraz aplikacji, które je wykorzystują. Musi ona więc wykonywać kilka istotnych funkcji – w szczególności:
Aby móc nadawać dane, musi ona:
zamieniać dane znajdujące się w ramkach na strumienie binarne,
wykonywać taką metodę dostępu do nośnika, jakiej żąda warstwa łącza danych,
przesyłać ramki danych szeregowo (czyli bit po bicie) w postaci strumieni binarnych.
W celu odbierania danych konieczne jest natomiast:
oczekiwanie na transmisje przychodzące do urządzenia hosta i do niego zaadresowane,
odbiór odpowiednio zaadresowanych strumieni,
przesyłanie binarnych strumieni do warstwy łącza danych w celu złożenia ich z powrotem w ramki.
Lista ta, jak widać, nie obejmuje żadnych sposobów weryfikowania integralności danych.
Warstwa fizyczna nie posiada bowiem mechanizmu służącego rozpoznawaniu znaczenia wysyłanych, jak też otrzymywanych danych.
Służy wyłącznie przesyłaniu logicznych zer i jedynek.
Warstwa fizyczna, w postaci określonej przez Model Referencyjny OSI, składa się ze wszystkich procesów, mechanizmów, elektroniki oraz protokołów, które potrzebne są urządzeniu obliczającemu w celu wysłania i odbierania binarnych strumieni danych.
W specyfikacji warstwy fizycznej technologii LAN zamieszczone są oczekiwania odnośnie do wydajności nośnika łączącego komunikujące się ze sobą urządzenia.
Model jednak nie określa samego rodzaju nośnika.
\
Darmowy hosting zapewnia PRV.PL