Model OSI - Instytut Matematyki i Informatyki UO

advertisement
Sieci komputerowe
Model Referencyjny dla Systemów Otwartych
Reference Model for Open Systems Interconnection
dr Zbigniew Lipiński
Instytut Matematyki i Informatyki
ul. Oleska 48
50-204 Opole
[email protected]
Model Referencyjny dla OSI, ISO/IEC 7498
Model Referencyjny dla OSI jest standardem ISO, zatwierdzonym w 1978.
Dokumentacja Modelu Referencyjnego dla OSI:
Information technology - Open Systems Interconnection - Basic Reference Model.
ISO/IEC 7498-1, The Basic Model.
ISO/IEC 7498-2, Security Architecture.
ISO/IEC 7498-3, Naming and addressing.
ISO/IEC 7498-4, Management framework.
ISO/IEC 7498-5, Multipeer communication architecture.
http://www.iso.org/iso/home/store/catalogue_ics/catalogue_ics_browse.htm?ICS1=35&ICS2=100
http://www.ecma-international.org/activities/Communications/TG11/s020269e.pdf
2
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
3
Model Referencyjny dla OSI, ISO/IEC 7498
4
Model Referencyjny dla OSI, ISO/IEC 7498
5
Model Referencyjny dla OSI, ISO/IEC 7498
6
Model Referencyjny dla OSI, ISO/IEC 7498
Model Referencyjny Współpracy Systemów Otwartych (Reference Model Of Open Systems Interconnection) został
opracowany w celu skoordynowania procesów tworzenia, rozwijania, adoptowania istniejących standardów komunikacji
(wymiany informacji) między systemami otwartymi.
Termin Interconnection oznacza, nie tylko wymianę informacji między systemami otwartymi, ale również współpracę
systemów otwartych w celu wykonania określonego, rozproszonego zadania.
Współpraca Systemów Otwartych (Open Systems Interconnection) określa standardy wymiany informacji między systemami,
które są na siebie ‘otwarte’ dzięki zastosowaniu jednakowych standardów komunikacji.
System jest otwarty, jeżeli potrafi skomunikować się z innym systemem i spełnia standardy modelu referencyjnego, tzn. został
zbudowany według standardów modelu referencyjnego.
7
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
Model Referencyjny OSI służy do określania zgodności standardów dotyczących wymiany informacji między systemami
otwartymi (współpracy systemów otwartych).
Standardy OSI, standardy współpracy rzeczywistych systemów otwartych, są tworzone w celu umożliwienia komunikacji
między systemami otwartymi.
Dla ułatwienia rozwoju i określania zgodności standardów dla OSI model referencyjny został podzielony na 7 warstw
(7 layers of the Reference Model for OSI).
System współpracujących z innymi systemami zgodnie ze standardami OSI jest rzeczywistym systemem otwartym.
Celem modelu OSI jest określenie standardów umożliwiających współpracę rzeczywistych systemów otwartych.
Basic Reference Model – jest zbiorem metod służących do definiowania usług i protokołów wykorzystywanych przez
systemy otwarte w obrębie Modelu Referencyjnego.
8
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
System rzeczywisty (ang. real system) – zbiór komputerów, wyposażonych w odpowiednie oprogramowanie, i urządzeń
peryferyjnych stanowiących autonomiczną całość, zdolną do przetwarzania i/lub transmisji danych.
Otwarty system rzeczywisty (ang. real open system) – system rzeczywisty spełniający standardy komunikacji otwartej
(OSI standards) z innymi systemami rzeczywistymi.
System otwarty (ang. open system) – reprezentacja, w obrębie Modelu Referencyjnego, tych aspektów otwartego
systemu rzeczywistego które dotyczą OSI.
(N)-system – element hierarchicznej struktury systemu otwartego, który oddziaływuje tylko z (N-1) lub (N+1) elementami
systemu.
N-ta warstwa (ang. N-layer) – części architektury systemu otwartego (OSI architecture) złożoną z podsystemów tego
samego rzędu (N).
9
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
Z pojęciem (N)-warstwy wiąże się szereg pojęć określających elementy modelu związanych z daną warstwą, np. (N)protocol, (N)-service, (N)-function, … .
Każdy system otwarty jest widziany jako uporządkowany zbiór (N)-podsystemów.
Podsystemy tego samego rzędu tworzą (N)-warstwę Modelu Referencyjnego.
Istnieje tylko jeden (N)-podsystem dla danej warstwy.
(N)-encja ((N)-entity) jest aktywnym elementem (N)-warstwy.
Każdy (N)-podsystem składa się z jednej lub kilku (N)-encji (zwanych peer-(N)-entity).
W (N)-warstwie (N)-encje generują (N)-usługi.
Współpraca między (N)-encjami odbywa się zgodnie z (N)-protokołami.
System Końcowy OSI (OSI End System) – system który jest źródłem lub odbiorcą danych w komunikacji.
OSI (N)-system – system otwarty który, bierze udział w komunikacji między Systemami Końcowymi OSI.
10
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
Współpraca między systemami otwartymi jest określona przez następujące aktywności:
• komunikację między procesami (np. wymiana informacji, synchronizacja),
• reprezentację danych (tworzenie, opisywanie, formatowanie danych wymienianych przez procesy)
• przechowywanie danych,
• zarządzanie procesami i zasobami,
• integralność i bezpieczeństwo wymienianych informacji,
• utrzymanie/serwisowanie programów wykonywanych przez rzeczywiste systemy otwarte (definiowanie, kompilowanie,
testowanie).
11
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny dla OSI, ISO/IEC 7498
Podstawowe elementy Modelu Referencyjnego:
• system otwarty
• aplikacje które działają w obrębie środowiska OSI (OSI Environment)
• relacje które umożliwiają wymianę danych między aplikacjami w środowisku OSI
• medium fizyczne systemu otwartego (urządzenia fizyczne przez które komunikują się systemy otwarte)
Środowisko OSI (OSI Environment) – abstrakcyjna reprezentacja pojęć, funkcji, usług, protokołów zdefiniowanych
przez Model Referencyjny OSI i standardy pochodne, które zastosowane umożliwiają komunikację między systemami
otwartymi.
12
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Warstwy modelu Referencyjnego
Model określa zasady współpracy między warstwami.
W modelu współpracują miedzy sobą tylko warstwy sąsiednie.
Model OSI nie określa zasad budowy sieci i sposobu implementacji standardów w poszczególnych warstwach.
Podziału procesu komunikacji na warstwy ułatwia:
•
zrozumienie i uporządkowanie skomplikowanego procesu wymiany danych w sieci
•
projektowanie i niezależny rozwój poszczególnych elementów funkcjonalnych sieci
•
opracowywanie standardów protokołów komunikacyjnych (każda warstwa ma swój zbiór protokołów)
•
opracowywanie standardów urządzeń sieciowych i współpracy między nimi.
13
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Warstwy modelu Referencyjnego
Zasady tworzenia warstw:
•
każda warstwa powinna standaryzować konkretne funkcje komunikacyjne,
•
funkcje w danej warstwie powinny być tak określone aby zminimalizować przepływ danych między warstwami,
•
przepływ danych może odbywać się tylko między warstwami sąsiednimi,
•
w każdej warstwie powinien być zdefiniowany zbiór uniwersalnych interfejsów do komunikacji między warstwami,
•
standardy i technologie w każdej warstwie powinny tworzyć niezależną całość (aby można było je rozwijać
niezależnie od technologii stosowanych w innych warstwach).
14
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Warstwy modelu Referencyjnego
Proces wymiany danych między aplikacjami sieciowymi jest podzielony na 7 etapów.
Na każdym etapie komunikacji:
•
wykonywane są specyficzne zadania (funkcje, usługi),
•
wykorzystywane są specyficzne aplikacje i urządzenia,
•
wykorzystywane są specyficzne protokoły komunikacyjne.
15
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Warstwy modelu Referencyjnego
Model OSI składa się z 7 warstw:
7. warstwa qplikacji
6. warstwa prezentacji
5. warstwa sesji
4. warstwa transportowa
3. warstwa sieci
2. warstwa łącza danych
1. warstwa fizyczna.
16
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Model Referencyjny OSI - Proces wymiany danych
17
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Proces wymiany danych klient-serwer WWW
18
Warstwy Modelu Referencyjnego
7. warstwa aplikacji
6. warstwa prezentacji
5. warstwa sesji
4. warstwa transportowa
3. warstwa sieci
2. warstwa łącza danych
1. warstwa fizyczna
19
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
7. warstwa aplikacji
Warstwa aplikacji zawiera instancje aplikacji które współpracują w środowisku OSI.
Standardy i usługi warstwy aplikacji dotyczą zasad komunikowania się procesów aplikacji w OSIE.
W przypadku stosowania przez aplikacje połączeniowego typu komunikacji w warstwie aplikacji następuje:
•
identyfikacja odbiorcy/odbiorców (nazwa, adres)
•
identyfikacja zasobów hosta potrzebnych do nawiązania połączenia, sprawdzenie dostępności zasobów niezbędnych
do nawiązania połączenia (sprawdzenie parametrów quality of service),
•
synchronizacja nadawcy z odbiorcą,
•
uzgodnienie zasad usuwania błędów,
•
uzgodnienie zasad bezpieczeństwa transmisji danych (zasad kontroli dostępu, integralności danych),
•
wybór trybu komunikacji – połączeniowy, bezpołączeniowy,
•
identyfikacja abstrakcyjnej składni dla wymiany danych.
20
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
7. warstwa aplikacji
W przypadku stosowania przez aplikacje bezpołączeniowego typu komunikacji w warstwie aplikacji następuje:
•
identyfikacja grupy odbiorców,
•
autoryzacja uczestników wymiany danych,
•
określenie parametrów quality of service,
•
identyfikacja abstrakcyjnej składni wymiany danych.
składnia abstrakcyjna (abstract syntax) – specyfikacja protokołów aplikacji (nagłówków i danych czyli Protocol Data Unit)
za pomocą notacji niezależnej od technik kodowania w celu ich reprezentacji.
składnia transmisji danych (transfer syntax) – abstrakcyjna i konkretna składnia wykorzystywana przez systemy otwarte
do transmisji danych.
21
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
7. warstwa aplikacji
Protokoły warstwy aplikacji - protokoły wykorzystywane przez aplikacje i usługi sieciowe.
Przykłady aplikacji i protokołów warstwy Aplikacji Modelu Referencyjnego:
•
aplikacja telnet korzysta z protokołu TELNET, (Network Terminal Protocol) ,
•
aplikacja ftp korzysta z protokołu FTP, (File Transfer Protocol),
•
przeglądarka WWW (klient serwera WWW) i serwer WWW korzystają z protokołu Hypertext Transfer Protocol
(HTTP),
•
usługa DHCP korzysta z protokołu Dynamic Host Configuration Protocol (DHCP),
•
usługa DNS korzysta z protokołu Domain Name System (DNS),
•
klient pocztowy (np. MS Outlook), serwer pocztowy (np. MS Exchange) wykorzystują protokoły
- Post Office Protocol (POP ver.3),
- Internet Message Access Protocol (np. IMAP4),
- Simple Mail Transfer Protocol (SMTP).
22
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
6. warstwa prezentacji
Warstwa prezentacji określa standardy obsługi rożnych formatów danych i ich konwersje na formaty uniwersalne.
W warstwie prezentacji następuje zastosowanie składni i formatów wymienianych danych uzgodnionych między
Systemami Końcowymi
Usługi warstwy prezentacji:
•
identyfikacja zbioru możliwych składni transferu danych,
•
wybór składni,
•
dostęp do usług warstwy Sesji.
Funkcje warstwy prezentacji:
•
uzgodnienie składni transmisji danych,
•
reprezentacja składni abstrakcyjnej w składni transmisji danych,
•
powrót do wcześniej uzgodnionych składni w przypadku zaistnienia określonych zdarzeń
•
wykorzystanie usług warstwy sesji.
Przykłady:
•
obsługa stron kodowych, tzn. kodowanie/dekodowanie znaków, wybór algorytmów które będą użyte do kodowania,
•
kompresja/dekompresja przesyłanych danych,
•
szyfrowanie/deszyfrowanie danych.
W warstwie prezentacji określane są standardy transmisji dla różnych formatów danych:
ASCI, jpeg, gif, flash, midi, mpeg, wav, mp3, avi, asf.
Jeżeli dane są wymieniane miedzy hostami w komunikacji szeregowej, warstwa Prezentacji używa do konwersji danych
sztandaru ASN.1, (ang.) Abstract Syntax Notation 1.
Przykład:
23
Standard ASN.1 jest częścią standardu X.400 i określa zasady formatowania i kodowania wiadomości e-mail.
5. warstwa sesji
Warstwa sesji określa standardy i funkcje:
•
zarządzania sesją, buduje i zamyka połączenie (w przypadku komunikacji połączeniowej)
•
przesyłania danych,
•
zarządzania wyjątkami (obsługa wyjątków),
•
zarządzania prawami dostępu do usług warstwy sesji (token management).
W warstwie sesji określane są parametry transmisji między komunikującymi się aplikacjami.
Określany jest np. tryb wymiany danych: simplex, half-duplex, full duplex.
Przykłady protokołów i standardów warstwy sesji:
•
Network File System (NFS)
•
Remote Procedure Call (RPC)
•
X Window System
•
AppleTalk Session Protocol (ASP)
•
DNA Session Control Protocol, (DIGITAL Network Architecture - DNA).
24
4. warstwa transportowa
Warstwa transportowa określa standardy obsługi danych przyjmowanych z warstwy sesji i warstwy sieci.
W warstwie transportowej następuje:
•
przyporządkowanie adresu warstwy Transportowej (portu) do adresu warstwy Sieci (adresu IP),
•
łączenie sesji (multiplexing) w jedną sesję warstwy Sieci,
•
budowa i zamknięcie połączenia (w przypadku komunikacji połączeniowej),
•
kontrola kolejności transmisji segmentów danych,
•
wykrywanie błędów transmisji,
•
usuwanie błędów transmisji, np. żądanie ponownego przesłania zagubionych pakietów,
•
zarządzanie połączeniem (np. wstrzymywanie transmisji, kontrola przepływu danych).
Protokoły warstwy transportowej:
•
protokół TCP, (ang.) Transmission Control Protocol,
•
protokół UDP, (ang.) User Datagram Protocol,
•
protokół SPX Novell'a, (ang.) Sequenced Packet Exchange.
25
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
3. warstwa sieci
Warstwa sieci określa zasady:
•
komunikowania się między hostami za pomocą adresów IP,
•
przesłanie datagramów IP między sieciami,
•
wyznaczania tras routingu i budowy tablic routingu,
•
informowania ‘systemy końcowe’ o błędach w transmisji IP (protokół ICMP),
•
określania parametrów quality of service (np. maksymalną wielkość datagramów).
Funkcje warstwy sieci:
•
wyznaczenie trasy przesyłania pakietów (routing),
•
segmentacja i łączenie pakietów,
•
budowa połączenia na podstawie adresów IP,
•
wykrywanie i usuwanie błędów,
•
mapowanie adresów IP na adresy warstwy łącza danych (adresy MAC),
26
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
3. warstwa sieci
Protokoły warstwy sieci:
•
protokół IP, (ang.) Internet Protocol
•
protokół ICMP, (ang.) Internet Control Message Protocol
•
ARP, RARP, (ang.) Address Resolution Protocol, (ang.) Reverse ARP,
•
protokoły routingu,
•
protokół IPX Novell’a, (ang.) Internetwork Packet Exchange.
Rodzaje datagramów w warstwie sieci:
•
datagramy z danymi (obsługiwane przez protokoły IP, IPX)
•
datagramy służące do obsługi błędów (protokół ICMP)
•
pakiety/datagramy zawierające informacje o trasach, służące do uaktualniania tabel routingu (obsługiwane przez
protokoły RIP, EIGRP, OSPF).
27
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
2. warstwa łącza danych
Warstwa łącza danych określa standardy:
•
komunikacji między węzłami na podstawie adresów fizycznych (adresów MAC),
•
zasad transmisji danych między węzłami sieci (np. kontrola wielkości ramek, synchronizacja nadawcy z odbiorcą),
•
usuwania błędów transmisji które zaszły w warstwie Fizycznej.
Funkcje warstwy łącza danych:
•
kapsułkowanie datagramów w ramki,
•
odbiór i konwersje strumienia bitów przychodzących z warstwy Fizycznej,
•
kontrola poprawności przesyłanych ramek,
•
wykrywanie i usuwanie błędów transmisji.
Warstwa łącza danych składa się z dwóch podwarstw:
•
warstwy LLC, (ang.) Logical Link Control
•
warstwy MAC, (ang.) Media Access Control.
Warstwa LLC jest interfejsem miedzy warstwa sieci (warstwa 3) a podwarstwa MAC.
Warstwa MAC buduje ramki ze strumienia bitów przychodzącego z warstwy Fizycznej.
28
2. warstwa łącza danych
Przykłady protokołów warstwy łącza danych:
•
MAC, (ang.) Media Access Control Protocol,
•
Ethernet,
•
Token Ring,
•
HDLC, (ang.) High-level Data Link Control,
•
PPP, (ang.) Point-to-Point Protocol,
•
ATM, (ang.) Asynchronous Transfer Mode.
29
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
1. warstwa fizyczna
Warstwa fizyczna określa zasady transmisji sygnałów w sieci, przesyłanie strumienia bitów w formie sygnałów elektrycznych.
Przychodzące ramki z warstwy Łącza Danych w warstwie fizycznej są:
•
zamieniane na strumień bitów,
•
następnie zamieniane na sygnał elektryczny i przesyłane do odbiorcy.
W warstwie fizycznej określone są :
•
parametry amplitudowe i czasowe przesyłanego sygnału,
•
sposób nawiązania i rozłączenia połączenia.
•
standardy okablowania sieci,
•
standardy złącz,
•
parametry pracy urządzeń transmisyjnych.
30
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
1. warstwa fizyczna
Przykłady standardów w warstwie fizycznej:
•
standardy kabli i złącz (np. RS-232, 10BaseT, 100BaseTX, światłowody),
•
standard transmisji asynchronicznej,
•
standard transmisji synchronicznej, np. V.35,
•
standardy kodowania sygnałów, rozpraszania widma (sieci WLAN).
31
Z. Lipiński, Instytut Matematyki i Informatyki, Uniwersytet Opolski, Sieci Komputerowe
Download