wyklad 6
Transkrypt
wyklad 6
Sieci komputerowe wykład 6 Protokół IP (Internet Protocol) rok ak. 2004/2005 Agata Półrola Katedra Informatyki Stosowanej UŁ [email protected] http://www.math.uni.lodz.pl/~polrola rysunki na niektórych slajdach w tym wykładzie pochodz ze strony http://www.man.rzeszow.pl/docs/ip/index.html Usługi w sieciach TCP/IP Usługa przenoszenia pakietów Sie TCP/IP udost pnia zasadniczo trzy zbiory usług: Usługa ta zdefiniowana jest jako: bezpoł czeniowa (connectionless) (ka dy pakiet jest obsługiwany niezale nie) nie daj ca gwarancji (unreliable) (brak mechanizmów kontroluj cych czy pakiet dotarł do adresata) wykorzystuj ca dost pne mo liwo ci (besteffort) Najbardziej podstawowa usługa intersieci to system przenoszenia pakietów Protokół IP (brak gwarancji dostarczenia wynika z czynników zewn trznych) Protokół IP – c.d. Powy szy mechanizm (zawodne bezpoł czeniowe dostarczanie pakietów) jest definiowany w protokole intersieci (IP – Internet Protocol) Protokół IP definiuje: podstawow jednostk przesyłania danych u ywan w sieciach TCP/IP operacj trasowania (routingu), wykonywan przez oprogramowanie IP, polegaj c na wyborze trasy przesyłania danych zbiór reguł słu cych do realizacji bezpoł czeniowego dostarczania (sposób przetwarzania pakietów przez hosty i routery, komunikaty o bł dach, warunki likwidowania pakietów) Jednostka przesyłania danych Podstawow jednostk przesyłania danych jest datagram IP. Datagram składa si z nagłówka i cz ci z danymi, podobnie jak ramka sieci fizycznej Format datagramu IP typ obsługi długo całkowita znaczniki przesuni cie fragmentu identyfikacja czas ycia protokół suma kontrolna nagłówka adres IP nadawcy adres IP odbiorcy opcje IP (je li potrzebne) uzupełnienie dane wersja dł. nagłówka Datagramy s przetwarzane przez programy (ramki – przez sprz t), zatem ich format nie jest uwarunkowany sprz towo Pola datagramu IP Pole „typ obsługi” wersja – 4 bity – wersja protokołu IP u yta do utworzenia datagramu długo nagłówka – w 32-bitowych słowach pola opcje i wypełnienie cz sto nie s u ywane (datagram bez opcji) ; pole długo nagłówka zawiera wówczas liczb 5 długo całkowita - mierzona w oktetach; obejmuje nagłówek i dane typ obsługi – pole 8-bitowe, opisuj ce w jaki sposób nale y obsłu y datagram Pierwsze stwo – 3 bity; okre la stopie wa no ci (0 – normalny, 7-sterowanie sieci ) O – pro ba o krótki czas oczekiwania S – pro ba o przesyłanie szybkimi ł czami P – pro ba o du gwarancj przesłania ci g dalszy pól nast pi... Przesyłanie datagramów w sieci fizycznej Rozmiar datagramów IP Ramki sieci fizycznej s obsługiwane przez sprz t, datagramy przez oprogramowanie. Teoretycznie mog wi c mie dowolna długo wybran przez projektanta W obecnym formacie datagramu jego maksymalna długo to 65 535 oktetów (wynika to z rozmiaru pola długo ci całkowitej – 16 bitów) Datagramy przesyłane s w ramkach sieci fizycznej w cz ci przeznaczonej na dane (kapsułkowanie) datagram IP nagłówek ramki Fragmentacja datagramów W idealnej sytuacji ka dy datagram mie ci si w jednej ramce sieci fizycznej Nie zawsze jest to mo liwe: Datagram przemieszcza si przez ró ne sieci fizyczne Ka da sie ma ustalon górn granic rozmiaru ramki – tzw. MTU (maximum transfer unit) – np. 1500 oktetów w Ethernecie, 4470 oktetów w FDDI Fragmentacja datagramu – c.d. Ograniczenie rozmiary datagramów tak, by pasowały do ka dego MTU, byłoby nieefektywne Oprogramowanie TCP/IP nadawcy dobiera optymalny rozmiar datagramu Je eli datagram nie mie ci si w ramce sieci fizycznej przez któr ma przej , to jest dzielony na mniejsze cz ci – fragmenty; proces ten nazywa si fragmentacj CRC Fragmentacja datagramów - c.d. dane Fragmentacja datagramu – c.d. Rozmiar fragmentów dobierany jest tak, aby ka dy fragment mógł by przeniesiony sieci w pojedynczej ramce Rozmiar fragmentów musi by wielokrotno ci o miu (wyja ni si pó niej) Ka dy z fragmentów ma format pierwotnego datagramu: zawiera nagłówek, w którym jest powielona wi kszo pól poprzedniego nagłówka zawiera dane – cz danych oryginalnego datagramu Fragmentacja datagramu – c.d. Fragmentacja datagramu – c.d. Poszczególne fragmenty datagramu składane s w cało dopiero u ostatecznego odbiorcy składanie przez routery po rednicz ce prowadziłoby do nieefektywno ci Je eli pewne fragmenty zostan zgubione, to datagram nie mo e zosta scalony po przyj ciu pocz tkowych fragmentów odbiorca uruchamia zegar, je li wszystkie fragmenty nie przyjd w wymaganym czasie, to likwiduje to co otrzymał dotychczas Pola datagramu kontroluj ce fragmentacj Kontrola fragmentacji – c.d. identyfikacja – pole o unikalnej warto ci; kopiowane do fragmentów przesuni cie fragmentu – przesuni cie pocz tku danych datagramu wzgl dem pocz tku danych datagramu wyj ciowego, mierzone w ósemkach oktetów; ustawiane przy fragmentowaniu znaczniki – trzybitowe pole, w tym dwa bity zwi zane z fragmentacj : Zło enie fragmentów w cało jest mo liwe dzi ki nast puj cym polom nagłówka: identyfikacja przesuni cie fragmentu znaczniki bit „nie fragmentuj” bit „wi cej fragmentów” (ustawiany przy fragmentacji) Czas ycia datagramu Czas ycia datagramu – c.d. ! Pole czas ycia (TTL – time to live) okre la, jak długo datagram mo e pozostawa w sieci W przypadku TTL=0 router likwiduje datagram i wysyła komunikat do nadawcy Zabezpieczenie przed niesko czonym kr eniem datagramu po sieci Urz dzenie wprowadzaj ce datagram do sieci nadaje polu „czas ycia” pewn warto Routery i w zły przetwarzaj ce datagram zmniejszaj warto tego pola Standardowo – zmniejszenie o 1 Obsługa przeci e routerów: router rejestruje czas ycia datagramu i zmiejsza pole TTL o liczb sekund, jak datagram oczekiwał na obsług # " Je li pole „czas ycia” osi gnie 0, to router likwiduje datagram Opcje datagramów Opcje datagramów – c.d. Pole „opcje IP” wyst puje tylko w niektórych datagramach Obsługa opcji jest integraln cz ci IP Długo pola – zmienna w zale no ci od rodzaju opcji W ka dym przypadku pole zawiera jeden oktet kodu opcji; po nim mo e pojawi si oktet długo ci i oktety danych Oktet kodu opcji jest podzielony na trzy pola: kopiuj Klasa opcji Numer opcji 0 1-2 3-7 Znacznik kopiuj okre la jak dana opcja ma by traktowana przy fragmentacji Klasa opcji i numer opcji w tej klasie okre laj rodzaj opcji Np. klasa 0 – kontrola datagramów lub sieci Klasa 2 – poprawianie bł dów i pomiary Przykład opcji: opcja zapisywania trasy (RR ) Przykład opcji: opcja trasowania wg nadawcy record route Kod (7) % Nadawca tworzy pust list adresów Ka dy router obsługuj cy datagram umieszcza swój adres IP na li cie Kod (17) wska nik długo Pierwszy adres IP Drugi adres IP ....................................... Kolejne adresy wyznaczaj dokładn tras & ' Przetwarzanie opcji przy fragmentacji przy fragmentacji opcje przetwarzane s zgodnie z warto ci bitu kopiuj w polu kod Niektóre opcje kopiowane s do wszystkich fragmentów, niektóre umieszczane tylko w jednym (np. RR) Trasowanie swobodne & ' Pomi dzy kolejnymi adresami z listy moga wyst powa równie inne routery Pole wska nik wskazuje pierwsze wolne miejsce w li cie opcji Trasowanie rygorystyczne $ Source route % wska nik długo Pierwszy adres IP Drugi adres IP ....................................... ) ' (