Sieci komputerowe 7

background image

Intersieci – stos protokołów,

protokoły warstwy

transportowej

TCP/IP - cd.

Ryszard Wiatr

Przedmiot: Sieci komputerowe

Wykład 7

background image

Zawodność sprzętu

Przeciążenie sieci

Gubienie i przychodzenie pakietów z opóźnieniem

Uszkodzenie danych

Powielanie danych i błędy w kolejności ich napływania

Powody istnienia stosu protokołów, zamiast jednego (ogromna ilość
problemów podczas komunikowania się komputerów poprzez sieć)”

background image

Warstwa 1

Warstwa 2

....

Warstwa n

Warstwa 1

Warstwa 2

....

Warstwa n

Sieć

Nadawca

Odbiorca

Model warstwowy oprogramowania protokołów

background image

Warstwa protokołów

wysokiego poziomu

Warstwa interfejsów

sieciowych

Protokół 1

Moduł IP

Warstwa
Internet Protocol

Protokół 2

Protokół 3

Interfejs 1

Interfejs 2

Interfejs 3

Podział koncepcyjny

Organizacja oprogramowania

Porównanie modelu warstwowego i obrazu organizacji wielu interfejsów
sieciowych pod IP i wielu protokołów nad nim

background image

inne...

Warstwa IP

Interfejs

Nadawca

Odbiorca

inne...

Warstwa IP

Warstwa IP

Warstwa IP

Interfejs

Interfejs

Interfejs

Sieć 1

Sieć 2

Sieć 3

Ścieżka wiadomości w Internecie od nadawcy do odbiorcy
Komputery pośrednie przesyłają datagram tylko do warstwy oprogramowania IP

background image

Programy użytkowe

Reprezentacja danych

Sesja

Transport

Sieć

Łącze

(interfejs sprzętowy)

Połączenie przy pomocy

fizycznego sprzętu

7

6

5

4

3

2

1

Warstwa

Działanie

Zależności oprogramowania protokołów. 7 -wartwowy model ISO

background image

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Sprzęt

Warstwy koncepcyjne

Obiekty przesyłane
między warstwami

Komunikaty lub strumienie

Pakiety protokołów transportu

Datagramy IP

Ramka sieci fizycznej

Cztery koncepcyjne warstwy oprogramowania TCP/IP i format obiektów przesyłanych między nimi

background image

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Węzeł A

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Węzeł B

Sieć fizyczna

Identyczny
komunikat

Identyczny

pakiet

Identyczny

datagram

Identyczna

ramka

n-ta warstwa w węźle B odbiera dokładnie te same obiekty, które wysłała n-ta warstwa węźle A

Zasada podziału na warstwy

background image

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Węzeł A

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Węzeł B

Sieć fizyczna 1

Identyczny
komunikat

Identyczny

pakiet

Intersieć

Intersieć

Sieć fizyczna 2

Ruter

Ident. datagram

Ident. datagram

Ident. ramka

Ident. ramka

background image

Transport

Interfejs sieciowy

Protokół 1

Moduł IP

Intersieć

Protokół 2

Protokół 3

Interfejs 1

Interfejs 2

Interfejs 3

Podział koncepcyjny

Organizacja oprogramowania

Połączenia

wewnątrzsieciowe

Połączenie

międzypunktowe

(sieć

wewnętrzna

)

Umiejscowienie protokołu bezpośrednich połączeń międzypunktowych, gdy
IP traktuje ich zestaw jako pojedynczą sieć IP

background image

Programy

użytkowe

Transport

Intersieć

Interfejs sieciowy

Sprzęt

Warstwa koncepcyjna

Granica

Oprogramowanie poza systemem operacyjnym

Oprogramowanie wewnątrz systemu operacyjnego

Tylko adresy IP

Adresy fizyczne

Związek pomiędzy koncepcyjnym podziałem na warstwy a granicami dla systemu operacyjnego
i adresami protokołów wysokiego poziomu

background image

Moduł IP

Moduł ARP

Moduł RARP

Demultipleksowanie

na podstawie typu ramki

Przybycie ramki

Demultipleksowanie przychodzących ramek na podstawie pola typu
znajdującego się w nagłówku ramki

background image

Protokół ICMP

Protokół UDP

Protokół TCP

Moduł IP

Przybycie datagramu

Demultipleksowanie w warstwie Internetu. Oprogramowanie IP wybiera
odpowiednią procedurę obsługi na podstawie znajdującego się w nagłówku
datagramu pola typu protokołu

Protokół EGP

background image

Protokół UDP (User Datagram Protocol)

Warstwa aplikacji

Warstwa dostępu

do sieci

Warstwa transportowa

Warstwa sieciowa

(Internetu)

Telnet

FTP

HTTP

SMTP

POP

DNS

NFS

SNMP

RIP

TCP

UDP

IP

ICMP

ARP

CSMA/CD

Ethernet

SLIP

PPP

Token Ring

FDDI

inne…

UDP zapewnie podstawowy mechanizm wykorzystywany przez programy użytkowe
przy przesyłaniu datagramów do innych programów użytkowych (portów)

Port

- abstrakcyjny punkt docelowy identyfikowany za pomocą dodatniej liczby całkowitej

background image

0 16 31

Dane

............

Długość komunikatu UDP

Suma kontrolna UDP

Port UDP nadawcy

Port UDP odbiorcy

Format komunikatów UDP

background image

0 8 16 31

Adres IP nadawcy

Adres IP odbiorcy

Długość UDP

Zero

Proto

Dwanaście oktetów pseudonagłówka używanego przy wyliczaniu sumy kontrolnej UDP

background image

Program użytkowy

Datagram użytkownika (UDP)

Intersieć (IP)

Interfejs sieci

Podział logiczny

Logiczny podział UDP na warstwy między programem użytkowym i IP

background image

nagłówek ramki

obszar danych ramki

nagłówek IP

obszar danych IP

nagłówek UDP

obszar danych UDP

Kapsułkowanie datagramu UDP w datagramie IP przed wysłaniem przez intersieć.
Kapsułkowanie w ramce - dla każdej pojedynczej sieci

background image

Port 1

Port 2

Port 3

UDP: demultipleksowanie

w zależności od portu

Warstwa IP

Nadchodzący datagram UDP

Demultipleksowanie w warstwie bezpośrednio powyżej IP.
UDP wybiera odpowiedni port odbiorcy na podstawie numeru portu odbiorcy
znajdującego się w nadchodzącym datagramie

background image

Numer Nazwa Nazwa w Unix

Opis

0
7
9
11
13
15
17
19
37
42
43
53
67
68
69
111
123
-
-
-
-
-
-

-
ECHO
DISCARD
USERS
DAYTIME
-
QUOTE
CHARGEN
TIME
NAMESERVER
NICNAME
DOMAIN
BOOTPS
BOOTPC
TFTP
SUNRPC
NTP
-
-
-
-
-
-

-
echo
discard
systat
daytime
netstat
qotd
chargen
time
name
whois
nameserver
bootps
bootpc
tftp
sunrpc
ntp
snmp
snmp-trap
bif
who
syslog
timed

zarezerwowane
echo
porzucanie
aktywni użytkownicy
pora dnia
kto pracuje lub netstat
cytat dnia
generator znaków
czas
serwer nazw maszyn
kto jest
serwer nazw
serwer ładowania systemu
klient ładowania systemu
trivial file transfer
RPC firmy Sun Microsystems
Network Time Protocol
monitor sieci SNMP
pułapki snmp
Unix comsat
demon rwho systemu Unix
kronika systemu
demon czasu

Przykład przyporządkowania portów usługom

background image

Warstwa transportowa

modelu ma zapewnić:

usługę niezawodnego dostarczania

kontrolę przepływu

Niezawodne dostarczanie zapewnia program komunikacyjny (protokół)
warstwy transportowej poprzez:

przesyłanie strumieniami

łączenie w obwód wirtualny

przesyłanie z użyciem buforów

brak strukturalizacji strumienia

połączenie w pełni dwukierunkowe

background image

Komunikaty sieciowe

Wydarzenia
po stronie nadawcy

Wydarzenia
po stronie odbiorcy

Wysłanie pakietu 1

Odebranie ACK 1
Wysłanie pakietu 2

Odebranie ACK 2

Odebranie pakietu 1
Wysłanie ACK 1

Odebranie pakietu 2
Wysłanie ACK 2

Protokół stosujący pozytywne potwierdzanie z retransmisją.
Nadawca czeka na potwierdzenie dla każdego wysłanego pakietu

Pozytywne potwierdzanie z retransmisją

background image

Komunikaty sieciowe

Wydarzenia
po stronie nadawcy

Wydarzenia
po stronie odbiorcy

Wysłanie pakietu 1
Uruchomienie zegara

Przekroczenie
limitu czasowego

Odebranie ACK 1
Skasowanie zegara

Spodziewane
przybycie pakietu
Powinno zostać
wysłane ACK

Odebranie pakietu 1
Wysłanie ACK 1

Przekroczenie limitów czasu i retransmisja pojawiające się przy utracie pakietu

W tym momencie normalnie
przybyłby komunikat ACK

Retransmisja pakietu 1
Uruchomienie zegara

background image

1

2

3

4

5

6

7

8

9

10

.....

1

2

3

4

5

6

7

8

9

10

.....

Okno początkowe

Przesuwanie się okna

Protokół z przesuwającym się oknem z 8 pakietami wewnątrz okna

Okno przesuwa się tak, że pakiet 9 może zostać wysłany, gdy przyszło potwierdzenie
dotyczące pakietu 1

Pakiety, dla których nie było potwierdzenia są retransmitowane

background image

Komunikaty sieciowe

Wydarzenia
po stronie nadawcy

Wydarzenia
po stronie odbiorcy

Wysłanie pakietu 1

Odebranie ACK 1

Odebranie ACK 3

Odebranie pakietu 1
Wysłanie ACK 1

Odebranie pakietu 2
Wysłanie ACK 2

Przesuwanie 3 pakietów przy pomocy protokołu z przesuwającym się oknem.

Nadawca może przesłać wszystkie pakiety z okna bez oczekiwania na potwierdzenie

Wysłanie pakietu 2

Wysłanie pakietu 3

Odebranie ACK 2

Odebranie pakietu 3
Wysłanie ACK 3

background image

Program użytkowy

Niezawodne strumienie (TCP)

Datagramy użytkownika (UDP)

Internet (IP)

Interfejs sieciowy

Model podziału na warstwy z uwidocznionym miejscem na UDP i TCP.
TCP - usługa przesyłania niezawdonymi strumieniami
UDP - usługa zawodnego dostarczania datagramów

background image

Specyfikuje format danych przesyłanych między komputerami

Specyfikuje format potwierdzeń wymienianych między komputerami
w celu uzyskania niezawodnego przesyłania

Opisuje procedury stosowane w celu upewnienia się, że dane dotarły do celu

Wyznacza sposób, w jaki oprogramowanie TCP rozróżnia odbiorców na danej maszynie

Wyznacza sposób, w jaki komunikające się maszyny radzą sobie z błędami, takimi jak
utrata pakietu lub jego zduplikowanie

Wyznacza sposób, w jaki dwa komputery inicjują przesyłanie za pomocą strumienia TCP
i sposób zgadzania się na jego zakończenie

Protokół TCP:

background image

Podstawowym pojęciem protokołu TCP jest

połączenie

Połączenie jest identyfikowane przez parę punktów końcowych

Np. (18.26.0.36:1069) oraz (128.10.2.3:25)

Punkt końcowy

to para (adres IP : port).

Np. (18.26.0.36:1069)

background image

Programy użytkowe na obu końcach połączenia dokonują:

na jednym końcu

funkcję pasywnego otwacia

- informacja dla

systemu operacyjnego, że akceptuje się połączenie, które ma nastąpić.
System operacyjny przypisuje połaczeniu numer portu

na drugim końcu

funkcję aktywnego otwarcia

- informacją dla systemu

operacyjnego inicjująca skontaktowanie się obydwu modułów TCP.

background image

1 2 3 4 5 6 7 8 9 10 11 ....

Przykład przesuwającego się okna TCP.
Oktety 1 i 2 wysłane i potwierdzone
Oktety 3 - 6 wysłane ale nie potwierdzone
Oktety 7 - 9 nie wysłane ale będą wysłane niezwłocznie
Oktety od 10 nie mogą być wysłane przed przesunięciem okna

background image

Port nadawcy

Port odbiorcy

0 4 10 16 24 32

Numer porządkowy

Numer potwierdzenia

Okno

Dł. nag

Bity kodu

zarezerwowane

Suma kontrolna

Wskaźnik pilnych danych

Opcje (jeżeli jakieś)

Uzupełnienie

Dane

..............

Format segmentu TCP z nagłówkiem
Segmenty używane do ustanawiania połączenia, przenoszenia danych i potwierdzeń

Porty identyfikują programy użytkowe na końcach połączenia
Numer porządkowy wyznacza pozycję danych segmentu w strumienia bajtów nadawcy
Numer potwierdzenia wyznacza numer oktetu, który nad. spodziewa się otrzymać w następnej kolejności
Dł. nagłówka określa długość nagłówka segmentu mierzoną w wielokrotnościach 32 bitów
Okno to propozycja TCP, ile danych może przyjąć - rozmiar bufora, liczba 16-bitowa

background image

Bity pola KOD z nagłówka TCP

Bity (od lewej do prawej)

Znaczenie, gdy bit jest ustawiony

URG

ACK
PSH

RST

SYN

FIN

Wskaźnik pilności jest istotny

Pole potwierdzenia jest istotne

Ten segment stanowi prośbę o wypchnięcie

Skasuj połączenie

Zsynchronizuj numery początkowe

Koniec strumienia bajtów u nadawcy

background image

0 8 16 24 31

Adres IP nadawcy

Adres IP odbiorcy

Zero

Protokół

Długość TCP

Format pseudonagłówka używanego do obliczania sumy kontrolnej TCP
Po stronie odbiorcy odpowiednie informacje są wyciągane z datagramu IP,
który przenosił segment

background image

Komunikaty sieciowe

Wydarzenia w węźle 1

Wydarzenia w węźle 2

Wysłanie SYN nr = x

Odebranie segmentu
z SYN+ACK

Wysłanie ACK y + 1

Odebranie segmentu SYN
Wysłanie SYN nr = y, ACK x + 1

Odebranie segmentu ACK

3-etapowa wymiana komunikatów przy ustanawianiu połączenia.
Segmenty z SYN przenoszą informacje o początkowym numerze porządkowym

Ustanowienie połączenia TCP

background image

Zamykanie połączenia TCP

Komunikaty sieciowe

Wydarzenia w węźle 1

Wydarzenia w węźle 2

(Program użytkowy
zamyka połączenie)
Wysłanie FIN nr=x

Odebranie segmentu ACK

Wysłanie ACK y + 1

Odebranie segmentu FIN
Wysłanie ACK x + 1
(poinformowanie programu
użytkowego)

Odebranie segmentu ACK

Odebranie segmentu
z SYN + ACK

(program użytkowy zamyka
połączenie)
Wysłanie FIN nr=y, ACK x+1

Trójstopniowa wymiana komuniakató przy zamykaniu połączenia.
Węzeł, który odbiera pierwszy segment FIN, potwierdza go natychmiast, a następnie czeka
do momentu wysłania przez siebie drugiego segmentu FIN

background image

ZAMKNIĘTE

NASŁUCHIWANIE

SYN ODEBRANY

SYN WYSŁANY

USTANOWIONE

CZEKANIE NA ZAMKNĘCIE

OSTATNIE ACK

ZAMYKANIE

FIN -

1. OCZEKIWANIE

FIN -

2. OCZEKIWANIE

CZEKANIE NA

SPÓŹNIONYCH

Cokolwiek / kasowanie

początek

Pasywne otwarcie

zamknięcie

Aktywne otwarcie / syn

syn / syn + ack

kasowanie

send / syn

syn / syn + ack

ack

Zamknij / fin

Zamknij / fin

syn / syn + ack

fin / ack

Zamknij / fin

ack /

ack /

ack /

fin / ack

fin - ack / ack

fin - ack / ack

Zamknij /
przekroczenie czasu
/ reset

Przekroczenie czasu po upłynięciu
2 czasów życia segmentu

Automat skończony dla TCP

Każdy punkt końcowy zaczyna w stanie Zamknięte. Etykiety przejść pokazują wartość na wejściu
powodującą przejście, po której następuje wartość wysyłana na wyjście, jeżeli jakaś jest wysyłana

background image

Dziesiętnie słowo kluczowe słowo kl. w Unix Opis

0
1
5
7
9
11
13
15
17
19
20
21
23
25
37
42
43
53
77
79
93
95
101

-
TCPMUX
RJE
ECHO
DISCARD
USERS
DAYTIME
-
QUOTE
CHARGEN
FTP-DATA
FTP
TELNET
SMTP
TIME
NAMESERVER
NICNAME
DOMAIN
-
FINGER
DCP
SUBDUP
HOSTNAME

-
-
-
echo
discard
systat
daytime
netstat
qotd
chargen
ftp-data
ftp
telnet
smtp
time
name
whois
nameserver
rje
finger
dcp
subdup
hostnames

zarezerwowane
wielokrotne XOR dla TCP
pozycja dla zadania z odległej maszyny
echo
usuń
aktywni użytkownicy
godzina
program podający stan sieci
cytat dnia
generator znaków
File Transfer Protocol (dane)
File Transfer Protocol
połączenie terminalowe
Simple Mail Transport Protocol
czas
serwer nazw węzłów
kto jest
Domain Name Server
dowolna prywatna usługa RJE
finger
Device Control Protocol
protokół SUPDUP
serwer nazw węzłów NIC

Przykłady obecnie przypisanych numerów portów TCP

background image

background image

background image

background image


Document Outline


Wyszukiwarka

Podobne podstrony:
9 Sieci komputerowe II
sieci komputerowe 2
TS Rozlegle sieci komputerowe
Sieci komputerowe fizyka informatyka
Sieci komputerowe 1
2 Sieci komputerowe 09 03 2013 [tryb zgodności]
SK-cw2 4h MODEMY opis przebiegu zaj dla studenta, Sieci Komputerowe
Podsumowanie, 01 Wprowadzenie do sieci komputerowych
egzamin 2, Sieci Komputerowe
Lokalne i globalne sieci komputerowe, Sieci komputerowe administracja
format[1], Szkoła, Systemy Operacyjnie i sieci komputerowe, systemy, semestr I
System plików, zOthers, Systemy operacyjne i sieci komputerowe
SK-cw3 2h Konfigurowanie sieci WLAN, Sieci Komputerowe

więcej podobnych podstron