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
.......................................
)
'
(