Model TCP/IP Wykład 6
Model TCP/IP Teoretyczny model warstwowej struktury komunikacji sieciowej, który został stworzony przez Agencję Zaawansowanych Projektów Badawczych Departamentu Obrony Stanów Zjednoczonych (DARPA) w latach 70. Składa się z 4 warstw współpracujących ze sobą w określony sposób.
Warstwy modelu TCP/IP
Porównanie modeli ISO/OSI i TCP/IP
Zadania warstwy aplikacji zapewnienie dostępu do sieci aplikacjom użytkownika reprezentacja danych kodowanie i konwersja danych kompresja i szyfrowanie danych obsługa formatów graficznych zapewnienie aplikacjom komunikacji między różnymi systemami
Protokoły warstwy aplikacji HTTP – pobieranie stron www (protokół pracuje standardowo na porcie 80 – bez SSL i 443 – z SSL) FTP – przesyłanie plików (21 – dla poleceń oraz 20 – przesyłanie danych w trybie aktywnym i powyżej 1024 – transmisja danych w trybie pasywnym) SMTP – wysyłanie poczty elektronicznej (25) POP3 – odbiór poczty elektronicznej (komunikacja jednokierunkowa, 110 – bez SSL, 995 – z SSL) IMAP – odbiór poczty elektronicznej (komunikacja dwukierunkowa, 143 – bez SSL, 993 – z SSL)
Protokoły warstwy aplikacji DHCP – dynamiczne przydzielanie adresów IP (67 – port źródłowy i 68 – port docelowy serwera, dla klienta porty są odwrotne) DNS – tłumaczenie adresów domenowych na adresy IP (53) NTP – synchronizacja czasu (123) NNTP – obsługa grup dyskusyjnych (119 – bez SSL, 563 – z SSL) Telnet – zdalna obsługa odległego terminala (23)
Protokoły warstwy aplikacji SPDY – transmisja treści web (ulepszenie HTTP) SSL – szyfrowanie danych i zabezpieczanie innych protokołów TLS – ulepszenie SSL
Zadania warstwy transportowej zarządzanie sesjami transmisyjnymi przez nawiązywanie i zrywanie połączeń między aplikacjami podział danych na części (segmenty), które są indeksowane kontrola poprawności przesyłanych danych zapewnienie całościowego połączenia między stacją źródłową i docelową
Protokoły warstwy transportowej TCP – przesyłanie danych (połączeniowy, niezawodny, gwarantuje dostarczenia informacji) UDP – przesyłanie danych (bezpołączeniowy, zawodny, nie gwarantuje dostarczenia informacji) SCTP – przesyłanie danych (ulepszenie TCP, pakiety mają ukształtowane wiadomości) SPX – przesyłanie danych (poprzednik TCP stosowany w sieciowym systemie operacyjnym Netware)
Zadania warstwy internetowej zapewnienie metod łączności obsługa routingu (wyznaczanie optymalnej trasy i wysłanie nią pakietu) adresowanie danych w oparciu o adresy logiczne odbiór segmentów z warstwy transportowej i ich podział na pakiety
Protokoły warstwy internetowej IP – przesyłanie danych (bezpołączeniowy, zawodny, nie gwarantuje dostarczenia informacji, określa drogę dla pakietów) ICMP – diagnostyka sieci (sprawdzanie czy dwa hosty komunikują się ze sobą – ping) i trasowanie (kontrola transmisji danych – traceroute) IPsec – implementacja bezpiecznych połączeń i wymiany kluczy szyfrowania pomiędzy komputerami oraz tworzenie VPN (wirtualnych sieci prywatnych) IPX – przesyłanie danych (poprzednik IP stosowany w sieciowym systemie operacyjnym Netware)
Protokoły warstwy internetowej AppleTalk – zestaw protokołów sieciowych firmy Apple stosowany w sieciach opartych o system operacyjny MacOS (połączeniowe i bezpołączeniowe przesyłanie danych, testowanie połączeń między urządzeniami w sieci, obsługa routingu) ARP – konwersja adresów (IP na MAC) RARP – konwersja adresów (MAC na IP) RIP, IGRP, EIGRP, OSPF, BGP – obsługa routingu (protokoły routingu)
Format pakietu IP
Format pakietu IP Wersja – wersja protokołu (4 bity) Długość nagłówka – długość nagłówka pakietu IP (4 bity) Typ (klasa) usługi – priorytet danych przesyłanych w pakiecie (1 bajt) Całkowita długość – długość całego pakietu IP (2 bajty, maksymalna długość wynosi 65535 bajtów) Identyfikator – identyfikacja pofragmentowanych datagramów (2 bajty) Flagi – flagi (0, DF, MF) używane przy fragmentacji pakietów (3 bity) Przesunięcie fragmentu – przesunięcie określonego fragmentu względem oryginalnego datagramu (13 bitów)
Format pakietu IP TTL – czas „życia” datagramu (1 bajt) Protokół – informacja o protokole warstwy wyższej, który jest przenoszony w polu danych datagramu (1 bajt) Suma kontrolna nagłówka – suma kontrolna stwierdzająca czy pakiet został poprawnie wysłany (2 bajty) Adres nadawcy – adres hosta wysyłającego (4 bajty) Adres odbiorcy – adres hosta odbierającego (4 bajty) Opcje – pole opisujące dodatkowe zachowanie pakietów (4 bajty, gdy długość nagłówka jest większa niż 5) Dane – właściwe dane
Zadania warstwy dostępu do sieci zapewnienie interfejsu z siecią fizyczną i przekazywanie danych przez fizyczne połączenia między urządzeniami sieciowymi sprawdzanie błędów przesyłu danych za pomocą sumy kontrolnej ramki adresowanie danych w oparciu o adresy fizyczne odbiór pakietów IP i formatowanie danych do transmisji w postaci ramek
Technologie warstwy dostępu do sieci Ethernet – szybka transmisja danych, komunikacja między użytkownikami sieci, współużytkowanie zasobów sieciowych i programów (używana głównie w sieciach lokalnych LAN) Frame Relay – przesyłanie głosu, obrazów wideo i danych (używana w sieciach rozległych MAN i WAN) ATM – przesyłanie głosu, obrazów wideo i danych (używana w sieciach rozległych MAN i WAN)
Protokoły warstwy dostępu do sieci PPP – zapewnienie połączenia bezpośredniego między dwoma węzłami sieci oraz kontrola błędów transmisji (zastosowanie w sieciach WAN) HDLC – zapewnienie połączeń dwupunktowych i wielopunktowych oraz kontrola błędów transmisji (zastosowanie w sieciach WAN) ADCCP – ulepszony i bazujący na HDLC (zastosowanie w sieciach WAN)
Format ramki Ethernet Preambuła – pozwala na szybką synchronizację odbiorników (7 bajtów, AAAAAAAAAAAAAAh) SFD – początkowy znacznik ramki (1 bajt, 10101011 czyli ABh) Adres docelowy MAC – adres MAC urządzenia do którego wysyłana jest ramka (6 bajtów, np. 000AE63EFDE1h)
Format ramki Ethernet Adres źródłowy MAC – adres MAC urządzenia z którego wysyłana jest ramka (6 bajtów) Typ ramki – jeśli wartość jest większa lub równa 1536 pole określa typ używanego protokołu, jeśli mniejsza lub równa 1500 – długość danych w ramce (2 bajty) Dane – właściwe dane (46 – 1500 bajtów, jeśli dane są mniejsze niż 46 bajtów to uzupełniane są zerami) Suma kontrolna – wykrywa błędy transmisji (4 bajty)
Ważniejsze standardy Ethernet