Wykład 2
Systemy Teleinformatyczne
w Transporcie Morskim
Joanna Szłapczyńska
Katedra Nawigacji, ZD Podstaw Informatyki i Sieci Komputerowych
Wykład 2
Model TCP/IP a ISO/OSI
Schemat adresowania w TCP/IP
Protokoły TCP/IP
" IP (v.4 i v.6)
" ICMP
" ARP
" TCP
" UDP
Page 2 Systemy Teleinformatyczne w Transporcie Morskim
Model ISO/OSI a TCP/IP
Page 3 Systemy Teleinformatyczne w Transporcie Morskim
Encapsulacja w TCP/IP
Page 4 Systemy Teleinformatyczne w Transporcie Morskim
TCP/IP warstwa sieci / internetu
Warstwa sieci / internetu jest 3-cią warstwą ISO/OSI w modelu
TCP/IP oferującą
" usługi bezpołączeniowe każdy datagram jest obsługiwany
niezależnie
" usługi typu best-effort brak gwarancji, że datagram wysłany za
pośrednictwem protokołu IP dotrze do celu (dbają o to warstwy
wyższe!)
" usługi routingu datagramów
" protokoły: IPv4, IPv6, ICMP
Page 5 Systemy Teleinformatyczne w Transporcie Morskim
Format datagramu IP v.4
Długość nagłówka datagramu IP + danych
Teraz to zróżnicowane usługi
wykorzystywane w monitorowaniu QoS
ID protokołu transportowego w
sekcji danych (np. 0x06 dla TCP)
Monitoruje czas życia datagramu
(przeskoki między routerami)
Maksymalny rozmiar enkapsulowanych danych to 65
535 bajtów 20/24 bajtów (nagłówek)
Page 6 Systemy Teleinformatyczne w Transporcie Morskim
nagłówek
adresy preambuła
opcje
dane
Kolejność bitów
W sieciach TCP/IP wykorzystywany jest schemat Big Endian
Page 7 Systemy Teleinformatyczne w Transporcie Morskim
Adresowanie w sieciach TCP/IP
Request For Comments (RFC) to memorandum opracowane przez
Internet Engineering Task Force (IETF) na temat systemów i standardów
w Internecie
IP Internet Protocol
IP v.4 address jest 32-bitową liczbą (4 oktety) zdefiniowaną w RFC 791
Adres IP v.4 (notacja dziesiętna)
Jeden bajt = osiem bitów = jeden oktet
32 bity (4 * 8 bitów) lub 4 bajty lub 4 oktety
Page 8 Systemy Teleinformatyczne w Transporcie Morskim
Adresy IP oraz MAC
MAC to adres wykorzystywany przez warstwę łącza danych
(2-ga warstwa OSI) przypisany fizycznemu urządzeniu
sieciowemu
np. 00-16-76-C8-63-C1
IP to adres wykorzystywany w warstwie sieci (3-cia warstwa
OSI) przypisany logicznemu urządzeniu sieciowemu
np. 192.168.1.15
Jeden interfejs sieciowy (np. karta sieciowa) może mieć
przypisane
" dokładnie jeden adres fizyczny MAC
" jeden lub więcej adresów IP (np. w sieci LAN z dostępem do Internetu)
Page 9 Systemy Teleinformatyczne w Transporcie Morskim
Klasy adresów IP (IP v.4)
Page 10 Systemy Teleinformatyczne w Transporcie Morskim
Podsieci IP
Adres IP (klasy A lub B) dzielony jest na wiele drobniejszych
podsieci (jeden adres IP może obsłużyć większą liczbę sieci ale o
mniejszej liczbie stacji/hostów w każdej w nich)
Maska podsieci to adres IP zdefiniowany następująco
" 1 oznaczają (maskują) sieciową (network prefix) część adresu
" 0 oznaczają część adresu z numerem stacji/hosta (host number)
255.255.255.240 => 11111111.11111111.11111111.11110000
Adres sieci + podsieci
Host
Page 11 Systemy Teleinformatyczne w Transporcie Morskim
CIDR
Classless Inter-Domain Routing (CIDR) jest sposobem tworzenia
wyższego adresu IP z ciągłej grupy adresów niższych
CIDR jest notacją prefiksową, w której slash (/) oddziela bazowy adres IP
od liczby bitów części sieciowej, np. 156.17.4.32/28
W dostępnej puli adresów hostów adresy: pierwszy (sieć) i ostatni
(rozgłoszeniowy) są z góry zarezerwowane
" dla notacji: xx.xx.xx.xx / k mamy faktycznie dostępne 2(32 k) -2 adresów hostów
Przykład: adres w notacji CIDR: 156.17.4.32/28
maska: 225.225.225.240
32 dec = 100000 bin
adres sieci: 156.17.4.32
32 -> 00100000
47 -> 00101111
adres rozgłoszeniowy: 156.17.4.47
dostępne adresy hostów: 156.17.4.33 156.17.4.46 (14 adresów)
Page 12 Systemy Teleinformatyczne w Transporcie Morskim
Adresy prywatne IP i pętla sprzężenia zwrotnego
Adresy prywatne wykorzystywane są w sieciach LAN pakiety
z tymi adresami nigdy nie będą transferowane do sieci
publicznej
" 10.0.0.0/8 (klasa A)
" 172.16.0.0/12 (klasa B)
" 192.168.0.0/16 (klasa C)
Pętla sprzężenia zwrotnego (127.0.0.1 = localhost)
specjalny adres IP zdefiniowany jako adres wskazujący na
samego siebie (ten sam interfejs sieciowy)
Page 13 Systemy Teleinformatyczne w Transporcie Morskim
IP v.6
IP v.6 posiada rozszerzoną przestrzeń adresową (adres 128-bitowy
zamiast 32-bitowego w IP v.4), notacja szesnastkowa:
1234:5678:9ABC:DEF0:0000:0000:0000:0123
1 bajt = 8 bitów
notacja uproszczona:
1234:5678:9ABC:DEF0:0:0:0:123
1234:5678:9ABC:DEF0::123
IP v.6 podstawowe nowe właściwości
" bezstanowa autokonfiguracja adresu ułatwia przypisywanie adresów na
podstawie unikatowych numerów MAC
" standaryzowany rozmiar maski - 64 bitów
" wbudowane mechanizmy zapewniające bezpieczeństwo (obowiązkowy
IPsec)
Page 14 Systemy Teleinformatyczne w Transporcie Morskim
ICMP
Internet Control Message Protocol (ICMP) jest jednym z
podstawowych protokołów sygnalizacyjnych warstwy sieci,
transportowanych przez pakiety IP
ICMP jest protokołem monitorowania sieci wykorzystywanym
zazwyczaj do sprawdzania obecności danego adresu IP w sieci
Nagłówek ICMP rozpoczyna się zaraz po nagłówku IP
np. ECHO Request
lub ECHO Reply
Page 15 Systemy Teleinformatyczne w Transporcie Morskim
ARP / RARP
Address Resolution Protocol (ARP) protokół TCP/IP służący do
konwersji adresów IP na adresy fizyczne MAC
Kody operacji:
1 żądanie MAC
2 odpowiedz MAC
3 żądanie IP (RARP)
4 odpowiedz IP (RARP)
IP v.4: 153.19.114.89 => MAC: 00-16-76-C8-63-C1
Page 16 Systemy Teleinformatyczne w Transporcie Morskim
ARP / RARP
Reverse Address Resolution Protocol (RARP) protokół TCP/IP
odwrotny do ARP, konwertuje adresy MAC na adresy IP
MAC: 00-16-76-C8-63-C1 => IP v.4: 153.19.114.89
RARP korzysta z tych samych pakietów do ARP z kodami operacji 3 i 4
Każdy węzeł lokalny (host, router, itd.) utrzymuje swoją tablicę ARP z
mappingiem IP<-> MAC aby zminimalizować komunikację ARP / RARP
ARP oraz RARP są protokołami umieszczonymi na pograniczu warstw
łącza danych oraz sieci
Page 17 Systemy Teleinformatyczne w Transporcie Morskim
TCP/IP warstwa transportowa
W sieciach TCP/IP warstwa transportowa oferuje dwie usługi typu
end-to-end w ramach protokołów
" Transport Communication Protocol (TCP) zorientowany połączeniowo &
niezawodny
" User Datagram Protocol (UDP) bezpołączeniowy & zawodny (typu best-
effort )
W warstwie transportowej logiczna komunikacja pomiędzy
procesami aplikacji wykorzystywana jest przez najwyższą warstwę
(aplikacji)
Gniazdo sieciowe jest elementem wprowadzającym multipleksację /
demultipleksację statystyczną do procesu komunikacji (za
pośrednictwem portów)
Page 18 Systemy Teleinformatyczne w Transporcie Morskim
Multipleksacja / demultipleksacja statystyczna
Page 19 Systemy Teleinformatyczne w Transporcie Morskim
Gniazdo sieciowe
Gniazdo sieciowe definiuje połączenie transportowe i zawiera
" typ protokołu transportowego (TCP lub UDP)
" lokalny (zródłowy) adres IP oraz numer portu
" zdalny (docelowy) adres IP oraz numer portu
Port
" identyfikator procesu lub aplikacji służący jako punkt odniesienia w
procesie komunikacji sieciowej
" 16-bitowa liczba całkowita (0 65 535)
Numery portów w zakresie od 0 do 1023 są przypisane na stałe
do pewnych znanych typów aplikacji i stanowią tzw. ogólnie
znane porty (well-known ports)
Page 20 Systemy Teleinformatyczne w Transporcie Morskim
Ogólnie znane porty (well-known ports)
Zazwyczaj procesy nasłuchują na ogólnie znanych portach, a kiedy
aplikacja kliencka przysyła żądanie połączenia, jest ono ustanawiane z
wykorzystaniem innego, prywatnego (>1024) numeru portu (aby umożliwić
innym klientom na połączenie z danym ogólnie znanym portem)
Page 21 Systemy Teleinformatyczne w Transporcie Morskim
Protokół TCP (Transport Communication Protocol)
Protokół TCP (Transport Communication Protocol) zapewnia niezawodną
i uporządkowaną transmisję strumienia danych pomiędzy końcowymi
procesami aplikacji
Obecnie większość transmisji w sieci Internet oraz sieciach LAN
wykorzystuje protokół TCP
Proces transmisji TCP dzieli się na fazy
" ustanawianie połączenia - inicjalizacja połączenia przez powitanie 3-etapowe
" transfer danych właściwy transfer danych
" zamknięcie połączenia rozłączanie (zamykanie połączenia) i zwolnienie
zaalokowanych wcześniej zasobów
Wymiana danych w protokole TCP polega na wysyłaniu i odbieraniu
potwierdzeń (ACK) -> dane odebrano i są prawidłowe
Page 22 Systemy Teleinformatyczne w Transporcie Morskim
Ustanawianie połączenia TCP: powitanie 3-etapowe
SN=100 flaga SYN
SN=300 AN=101
flagi SYN ACK
SN=101 AN=301
flaga ACK
Page 23 Systemy Teleinformatyczne w Transporcie Morskim
Ustanawiane połączenia TCP: przykład 1
Drogi Panie Klient,
Drogi Panie Serwer,
Drogi Panie Serwer,
Serwer
Klient
194.11.13.123
193.12.33.23
Dziękuję za list i ofertę połączenia,
Cieszę się, że chce Pan podjąć
Chciałbym ustanowić połączenie z Panem
którą akceptuję z przyjemnością.
współpracę. Oczekuję od Pana
aby przesłać Panu pewne dane do dalszego
Biorąc pod uwagę ten w istocie
danych numerowanych począwszy
przetwarzania na porcie nr 25. Moje dane
od 10 012. Zamierzam transferować
dziwny system numeracji
będą numerowane począwszy od 55 367
dane bez dalszych opóznień.
rozpocznę transfer od 10 011. Na
przykro mi z powodu tej dziwnej
podstawie Pańskiego listu
numeracji, szkoda, że nie mogę zacząć po
Z poważaniem
wnioskuję, że Pan będzie
prostu od 1!
Jan Klient
numerował swoje dalsze przesyłki
W oczekiwaniu na Pan odpowiedz,
począwszy od 55 368.
Jan Klient
Z poważaniem
Paweł Serwer
Page 24 Systemy Teleinformatyczne w Transporcie Morskim
Pakiet (segment) TCP
ISS1 lub SN
ISS2 lub AN
Flagi:
CWR (Congestion Window Reduced) flaga potwierdzająca odebranie powiadomienia przez
nadawcę, umożliwia odbiorcy zaprzestanie wysyłania echa.
ECE (ECN-Echo) flaga ustawiana przez odbiorcę w momencie otrzymania pakietu z ustawioną
flagą CE
URG informuje o istotności pola "Priorytet"
ACK informuje o istotności pola "Numer potwierdzenia"
PSH wymusza przesłanie pakietu
RST resetuje połączenie (wymagane ponowne uzgodnienie sekwencji)
SYN synchronizuje kolejne numery sekwencyjne
FIN oznacza zakończenie przekazu danych
Page 25 Systemy Teleinformatyczne w Transporcie Morskim
Ustanawiane połączenia TCP: przykład 2
Serwer:
Klient: inicjalizacja
SN=ISNY (np. 1545088)
połączenia
SN=ISNX (np. 6545666)
SNX= 6545666,
SYN(SNX)=1,
ACK(?)=0
SNY= 1545088,
ANY= 6545667,
SYN(SNY) =1, ACK(ANY)=1
ANX= 1545089
ACK(ANX) =1
Page 26 Systemy Teleinformatyczne w Transporcie Morskim
Transfer danych w TCP
Uporządkowany transfer danych- host docelowy porządkuje
przychodzące pakiety zgodnie z numerem sekwencyjnym
Retransmisja zagubionych pakietów każdy skumulowany oraz
niepotwierdzony strumień danych jest retransmitowany
Transfer bez przekłamań zapewniany jest przez sumy kontrolne CRC
Kontrola przepływu ograniczanie prędkości nadawania danych w
celu zagwarantowania niezawodnego dostarczenia danych. Odbiorca
musi na bieżąco informować nadawcę jak dużo danych może jeszcze
odebrać (sterowanie ze pomocą przesuwnego okna). Kiedy bufory
odbiorcze są przepełnione, najbliższe potwierdzenie zawiera rozmiar
okna = 0 aby zatrzymać dalszy transfer na czas przetwarzania danych z
bufora.
Kontrola przeciążeń za pomocą sterowania rozmiarem okna
przesuwnego
Page 27 Systemy Teleinformatyczne w Transporcie Morskim
Mechanizm przesuwnego okna w TCP (1)
Mechanizm przesuwnego okna w TCP jest implementacją protokołu
Go-Back-N Automatic Repeat reQuest (GBK-N ARQ)
W protokole GBK-N ARQ proces wysyłania trwa tak długo dopóki
wysłana zostanie bez oczekiwania na natychmiastowe
potwierdzenie liczba pakietów o wielkości zgodnej z rozmiarem
okna N (podanego w bajtach)
Proces odbiorczy śledzi numery sekwencyjne nadchodzących
pakietów. Po nadejściu pakietu którego się spodziewa odbiorca
wysyła potwierdzenie (ACK) wraz z tym numerem
Page 28 Systemy Teleinformatyczne w Transporcie Morskim
Mechanizm przesuwnego okna w TCP (2)
Odbiorca ignoruje pakiety przychodzące z innym numerem
sekwencyjnym niż też oczekiwany (o 1 większy od ostatnio odebranego)
niezależnie czy jest to
" stary pakiet już dawno potwierdzony który dopiero dotarł
" przyszły pakiet wobec pakietu oczekiwanego
Kiedy nadawca wyśle wszystkie pakiety ze swojego okna ustala które z
wysłanych pakietów zostały już potwierdzone i ustawia nowy początek
okna na pakiecie następującym po tym ostatnio potwierdzonym.
Nadawca kontynuuje wysyłanie dalszych pakietów w ramach okna i
powtarza cały proces po ponownym wypełnieniu się okna
Page 29 Systemy Teleinformatyczne w Transporcie Morskim
Faza połączenia TCP : ustawianie rozmiaru okna
Szanowny Panie Kliencie,
Szanowny Panie Serwerze,
Szanowny Panie Serwerze,
Serwer
Klient
Niestety ostatnio nie czuję się zbyt 194.11.13.123
193.12.33.23
Chciałbym Pana poinformować, że
Chciałbym ustanowić połączenie z Panem
dobrze, dlatego bez potwierdzenia
śmiało może mi Pan przesyłać aż
& .
mogę przyjąć od Pana jedynie
do 20 000 bajtów danych bez
2 000 bajtów. Poinformuję Pana jeśli
W oczekiwaniu na Pan odpowiedz,
potwierdzenia. W kolejnych listach
Jan Klient
coś w tej kwestii ulegnie zmianie,
będę Pana informował o zmianach.
jednakże proszę nie oczekiwać ode
Z poważaniem
mnie więcej niż zadeklarowałem.
Paweł Serwer
Z poważaniem
Jan Klient
Page 30 Systemy Teleinformatyczne w Transporcie Morskim
Zmiana rozmiaru okna
Rozmiar okna N odzwierciedla zdolności odbiorcze oraz rozmiary buforów
odbiorczych
W momencie gdy rozmiar N jest zadeklarowany nadawca może z dowolną
prędkością nadać pakiety nie przekraczające rozmiaru okna
Przeciążenie następuje wtedy gdy połączenie lub węzeł muszą przenieść
tak wiele danych, że powoduje to obniżenie jakości świadczonych przez
nie usług. W związku z tym wprowadzono dodatkowy rozmiar okna dla
przeciążeń C (okno przeciążenia)
Liczba wysłanych bajtow Liczba potwier. bajtów <= min {N, C}
Rozmiar okna C powinien oddawać obecną sytuację w sieci i być
resetowany w przypadku wystąpienia przeciążenia
" w przypadku przeciążenia gdy gubione są pakiety (a wysyłane są pakiety
zadławienia choke packets) rozmiar okna powinien być zmniejszony o połowę
a opóznienie retransmisji znacząco wydłużone
Page 31 Systemy Teleinformatyczne w Transporcie Morskim
Kontrola przeciążeń
W celu unikania przeciążeń w TCP wykorzystywane są następujące
mechanizmy
" zmiana rozmiaru przesuwnego okna (okno przeciążenia C)
" pakiety zadławienia (choke packets) wysyłane przez routery, informujące
nadawców o występującym przeciążeniu dla danego kierunku transmisji
" mechanizm powolnego startu rozmiar okna przeciążenia C jest początkowo
ustawiany na małą wartość a pózniej w szybkim tempie zwiększany aż do
osiągnięcia pożądanej wartości docelowej oraz umożliwienia przyspieszenia
transmisji
Page 32 Systemy Teleinformatyczne w Transporcie Morskim
Przesuwne okno i powolny start - symulacja
http://www.osischool.com/protocol/Tcp/slidingWindow/index.php
Page 33 Systemy Teleinformatyczne w Transporcie Morskim
Odrzucenie połączenia TCP (1)
Szanowny Panie Kliencie,
Szanowny Panie Serwerze,
Serwer
Klient
194.11.13.123
193.12.33.23
Dziękuję za list oraz ofertę
Chciałbym ustanowić połączenie z Panem
połączenia, lecz niestety nie mogę
aby przesłać Panu pewne dane do dalszego
jej przyjąć. Nasz pracownik
przetwarzania na porcie nr 25. Moje dane
pracujący w pokoju nr 25 (port 25)
będą numerowane począwszy od 55 367
ma w tej chwili wolne. W związku w
przykro mi z powodu tej dziwnej
tym proszę spróbować pózniej.
numeracji, szkoda, że nie mogę zacząć po
prostu od 1!
Z wyrazami szacunku
Paweł Serwer
W oczekiwaniu na Pan odpowiedz,
Jan Klient
Page 34 Systemy Teleinformatyczne w Transporcie Morskim
Odrzucenie połączenia TCP (2)
Klient Serwer
193.12.33.23 194.11.13.123
SYN(ISNX)=1,
X ACK(?)=0 Y
RST=1
X Y
Page 35 Systemy Teleinformatyczne w Transporcie Morskim
Zamknięcie połączenia TCP
Page 36 Systemy Teleinformatyczne w Transporcie Morskim
UDP
User Datagram Protocol (UDP) jest bezpołączeniowym typu best
effort protokołem transportowym w sieciach TCP/IP
Żadne dodatkowe pola ani flagi nie są wymagane dla porządkowania
pakietów oraz zapewnienia niezawodności transmisji -> stąd krótszy
nagłówek niż w TCP
Brak ścisłego nadzoru nad procedurami transmisji czynią ten protokół
bardzo szybkim, lecz dostarczającym usługi które mogą być zawodne
UDP jest wykorzystywany przez np.
" Domain Name System (DNS)
" aplikacje strumieniowego dostępu do mediów (IPTV)
" VoIP
" gry online
Page 37 Systemy Teleinformatyczne w Transporcie Morskim
Pakiet UDP
Page 38 Systemy Teleinformatyczne w Transporcie Morskim
Wyszukiwarka
Podobne podstrony:
WSM 03 02 pl(1)notatek pl wyklad 3 model krazenia odpadow wyklad04 PL wykladnotatek pl wyklad 5 planowanie przestrzenne wyklad562 pl wyklady z dnia lutego 11Excel 02 PL Ksiega eksperta ex22keTI 01 04 02 B pl(2)notatek pl wyklad 7 odpady torfowe weglowe wykladWSM 01 02 pl(1)TI 98 07 02 T pl(1)więcej podobnych podstron