Wykład13 Sieć teleinformatyczna z protokołem TCP IP

background image
background image

Przeznaczenie i charakterystyka

Umożliwia niezawodny transfer wiadomości pomiędzy parą
węzłów w sieci

TCP:

Charakterystyka:

Transfer danych strumieniowych (TCP dzieli je na segmenty
i niezawodnie przekazuje)
Niezawodność (wymagane potwierdzenie)
Sterowanie przepływem (dostosowanie szybkości do
możliwości odbioru)
Multipleksowanie (korzystanie z różnych portów)
Połączenia logiczne (możliwe kilka sesji <połączeń TCP> o
różnych parametrach)
Pełny dupleks

Przeznaczenie:

background image

TCP

jest protokołem niezawodnym, połączeniowym,

działającym na strumieniach bajtów.
Niezawodność TCP jest zapewniana za pomocą mechanizmu
pozytywnego potwierdzania z retransmisją (

Positive

Acknowledgment with Retransmission - PAR

). Stacja nadająca

wysyła dane w postaci elementarnych jednostek -
segmentów, posiadających sumę kontrolną, wykorzystywaną
do
stwierdzenia, czy dane zostały odebrane poprawnie. Jeśli
stacja odbierająca
stwierdzi, że dane są poprawne wysyła potwierdzenie. Brak
potwierdzenia
interpretowany jest przez stację nadającą jako żądanie
retransmisji utraconego
segmentu.

Połączeniowość protokołu TCP oznacza konieczność
nawiązania połączenia
logicznego pomiędzy wymieniającymi informację stacjami.
Odbywa się to w drodze wymiany informacji kontrolnych,
ustanawiających dialog -

handshake

. Stosowany jest

trzystanowy handshake, co oznacza, że stacje nawiązujące
połączenie wymieniają trzy komunikaty: SYN, SYN ACK i
ACK.

Protokoły warstwy transportowej -

Protokoły warstwy transportowej -

host-to-host

host-to-host

background image

Budowa segmentu TCP

Budowa segmentu TCP

background image

PAR -

PAR -

Positive

Positive

Acknowledgment

Acknowledgment

with

with

Retransmission

Retransmission

HANDSHAKE

HANDSHAKE

background image

Protokół UDP jest niepewnym, bezpołączeniowym protokołem przekazywania
datagramów.

Niepewność protokołu oznacza, że nie jest on wyposażony

w mechanizmy kontroli poprawności dostarczania danych do miejsca
przeznaczenia.

Bezpołączeniowość oznacza, że nie występuje faza nawiązywania

połączenia. Protokół UDP zorientowany jest na przekazywanie przez sieć
komunikatów.

DANE

suma

kontrolna

długość

port docelowy

port źródłowy

4 bajty

Protokoły warstwy transportowej -

Protokoły warstwy transportowej -

host-to-host

host-to-host

background image

Protokoły TCP/IP posiadają szereg cech, ułatwiających wymianę danych:

-

są protokołami otwartymi, swobodnie dostępnymi, opracowywanymi niezależnie

od specyfiki sprzętu komputerowego i systemu operacyjnego,

- są niezależne od fizycznych właściwości sieci, co pozwala na integrację wielu różnych
rodzajów sieci (Ethernet, Token Ring, po łączach telefonicznych, sieciach X25
i wielu innych fizycznych mediach transmisyjnych,

- wspólny schemat adresacji pozwala dowolnemu urządzeniu korzystającemu
z protokołów TCP/IP na jednoznacznie zaadresowanie innego urządzenia, nawet w sieci
tak rozległej jak Internet,

- standaryzowane zestawy protokołów wyższych warstw zapewniają zgodność szeroko
dostępnych usług użytkowych.

- wspólny schemat adresacji pozwala dowolnemu urządzeniu korzystającemu z protokołów
TCP/IP na jednoznacznie zaadresowanie innego urządzenia, nawet w sieci tak rozległej
jak Internet,

- standaryzowane zestawy protokołów wyższych warstw zapewniają zgodność szeroko
dostępnych
usług użytkowych.

Protokoły Internetu

Protokoły Internetu

background image

Protokoły Internetu

Protokoły Internetu

Otwarta natura protokołów TCP/IP wymaga ogólnie dostępnych dokumentów
standaryzujących. Wszystkie protokoły wchodzące w skład stosu TCP/IP są zdefiniowane
w jednej z trzech podstawowych publikacji:

Ø Standardy Wojskowe (MIL STD),
Ø Internet Engineering Notes (IEN),

Ø Request for Commnents (RFC).

Stos protokołów TCP/IP zawiera cztery warstwy funkcjonalne, stosunkowo luźno powiązane
z siedmioma warstwami modelu odniesienia OSI. Są to warstwy:

Ø procesu/aplikacji,
Ø transportu (hosta z hostem),
Ø internetu,
Ø dostępu do sieci.

background image

Warstwowy model odniesienia OSI jest modelem bardzo sformalizowanym i
sztywnym.

Na potrzeby Internetu zdefiniowano bardziej elastyczny model odniesienia
tzw. stos protokołów TCP/IP

Protokoły Internetu

Protokoły Internetu

background image

POWIĄZANIA PROTOKOŁÓW PRZY WSPÓŁPRACY MIĘDZYSIECIOWEJ

background image

F Funkcje realizowane przez protokół TCP:

   kontrola błędów, wykrywająca dane przekłamane, utracone,

zduplikowane i błędnie uszeregowane;

  sterowanie przepływem, dostosowujące tempo nadawania do

możliwości przetwarzania danych przez proces odbiorczy;

 sterowanie połączeniami, obejmujące działania związane z ich

nawiązywaniem, przerywaniem oraz rozłączaniem.

TCP zapewnia niezawodność przekazu za pomocą tzw. pozytywnych
potwierdzeń

z

retransmisją

(Positive

Acknowledgment

with

Retransmission - PAR), co oznacza ponawianie przekazu do chwili
potwierdzenia jego poprawnego odbioru. Jeśli odbiorca stwierdza, że w
otrzymanych danych występują błędy, to anuluje przekaz i oczekuje na
retransmisję

TCP/IP

background image

PROTOKOŁY WARSTWY APLIKACJI

SMTP

(Simple Mail Transfer Protocol) - służy do elektronicznego przekazywania

komunikatów. Protokół ten gwarantuje jedynie przekazanie wiadomości bez
ingerowania w jej zawartość, która wymaga dalszego przetwarzania, w celu
wydobycia odpowiednich informacji i zaprezentowania ich we właściwej formie.
Szczegółowy opis SMTP zawiera RFC 821.

TELNET

(Network Terminal Protocol) - zawiera definicje mechanizmów emulacji

wirtualnych terminali umożliwiających logowanie się poprzez sieć do oddalonych
hostów, dzięki czemu możliwa jest praca, jak przy korzystaniu z lokalnego
terminala. Specyfikację protokołu TELNET zawiera RFC 854.

FTP

(File Transfer Protocol) - definiuje sposób, w jaki użytkownicy mogą pobierać

pliki ze zdalnych hostów. niezależnie od ich realizacji sprzętowej i systemu
operacyjnego. FTP zapewnia obsługę przesyłania plików tekstowych i binarnych, z
możliwością ograniczania dostępu do zasobów przy użyciu haseł. Formalna
specyfikacja FTP zawarta jest w RFC 959.

SNMP

(Simple Network Management Protocol) - służy do zarządzania zdalnymi

urządzeniami komunikacji międzysieciowej przy wykorzystaniu datagramowego
protokołu UDP. Jego zadania to zapewnianie komunikacji między zarządzającą
stacją roboczą i modułem (agentem) zarządzania siecią, zawartym w zarządzanym
elemencie (urządzeniu bądź programie). SNMP w wersji 1 definiuje dokument RFC
1157, natomiast specyfikację wersji 2, która obejmuje m.in. funkcje ochrony. (RFC
od 1441 do 1452).

INNE PROTOKOŁY:

DNS

(Domain Name Service) - zwany także serwerem nazw, dokonujący

translowania adresów IP na mnemoniczne nazwy nadane urządzeniom sieciowym.

RIP

(Routing Information Protocol) - używany do wymiany informacji dotyczących

marszrutowania danych.

NFS

(Network File System) - sieciowy system plików pozwalający na współdzielenie

plików przez wiele komputerów sieciowych.

TCP/IP

background image

Komunikacja TCP

Komunikacja TCP

background image

Koncepcja okna w protokole transportowym

Najprostszy protokół transportowy:

Host A

Host B

Pakiet danych

Potwierdzenie

Pakiet danych

Potwierdzenie

Pakiet danych

Potwierdzenia po każdym pakiecie

Koncepcja okna:

1 2 3 4 5 6

..

Pakiety

Okno

7 8 9

1
0

1
1

1
2

Źródło wysyła x pakietów zanim
otrzyma potwierdzenie

Odbiornik musi potwierdzić otrzymanie
każdego pakietu wskazując w odpowiedzi na
ostatni poprawnie odebrany pakiet

Źródło po każdym otrzymanym
potwierdzeniu przesuwa okno

1

2

1

2

3

3

Pakiet danych

1

2

3

4

5

Potwierdzenie dla pakietu 1  przesunięcie okna o jeden pakiet

Potwierdzenie

4

Możliwe przesłanie
jeszcze jednego
pakietu

6

1

1

1

1

Ti

m

e

o

u

t

2

Przykład:

5

Pakiet 2 w końcu dotarł

Potwierdzenie wszystkich 5 pakietów  przesunięcie okna o 4

5

Nadal brakuje pakietu kolejnego (2), potwierdzenie dla
1

Błąd

background image

Okno w TCP

W protokole TCP wykorzystano koncepcję okna z następującymi modyfikacjami:

Numery sekwencyjne nie są przyporządkowane do przesyłanych
pakietów ale do bajtów  potwierdzana jest więc ilość danych w

bajtach

Rozmiar okna podawany jest w bajtach

Rozmiar okna definiowane jest przez odbiornik podczas
nawiązywania połączenia i zmienia się dynamicznie w czasie
trwania połączenia

1 2 3 4 5 6 7 8 9

1
0

1
1

1
2

1
3

1
4

1
5

1
6

1
7

1
8

..

Okno (w bajtach)

A

B

C

D

A – bajty, które zostały wysłane i zostały potwierdzone
B – bajty, które zostały wysłane, ale jeszcze niepotwierdzone
C – bajty, które mogą jeszcze być wysłane
D – bajty, które jeszcze nie mogą być przesłane

bajty

background image

Numery portów TCP i UDP

Numery

portów

Warstwa

Transportowa

Warstwa

Aplikacji

Identyfikato
r protokołu

F
T
P

T
E
L
N
E
T

D
N
S

S
N
M
P

S
M
T
P

R
I
P

IP

Warstwa

Sieciowa

TCP

21

21

23

23

25

25

UDP

53

53

69

69

161

161

520

520

H
T
T
P

80

80

T
F
T
P

6

6

17

17

Uwaga: Istnieją tzw. porty dobrze znane oraz porty

tymczasowe

• dobrze znane: od 1 do 1023

(przykład powyżej)

• tymczasowe: od 1024

(określane zwykle przez klienta, np. w architekturze

klient <stacja>  serwer <serwer www>)

background image

Format nagłówka TCP, UDP

Bit 1

Port źródłowy (16)

Port docelowy (16)

Numer sekwencji (32)

Dł. nagł. w

4B słowach

(4)

Numer potwierdzenia (32)

Zarezerwow

ane - zera

(6)

Flagi (6)

Rozmiar okna (16)

Suma kontrolna (16)

Wskaźnik ważności (16)

Opcje (zmienna długość) - opcjonalnie

Dane (zmienna długość: max 64kB)

20

Bajtów

Bit 16

Bit 17

Bit 32

TCP:

...... Dopełnienie

background image

TCP: Format nagłówka

Numer sekwencji

(16 bitów)

Kolejny numer pierwszego bajtu segmentu TCP

(Liczba ta wskazuje na kolejne bajty, a nie kolejne pakiety, np.
jeśli dwa kolejne pakiety przenoszą po 1460 bajtów strumienia
danych <za nagłówkiem TCP>, to w pierwszym pakiecie numer
sekwencji ustawiony jest np. na x a w drugim – na x+1460) 

Uwaga: Gdy ustawiony jest bit SYN w polu tym ustawiana jest
sekwencja inicjacyjna

Długość nagłówka

(4 bity)

Długość nagłówka w 32 bitowych słowach – wskazuje
miejsce rozpoczęcia danych aplikacji

(standardowo 0x05

= 20B)

Flagi

(6 bitów)

URG

(1)

PSH

(1)

RST

(1)

SYN

(1)

FIN

(1)

URG

(1)

Flaga wskazująca, że należy odczytać pole wskaźnika
ważności

(Urgent)

ACK

(1)

Numer potwierdzenia

(16 bitów)

Numer potwierdzenia

(Zawiera sekwencyjny numer segmentu, którego nadawca
spodziewa się odebrać od węzła przeznaczenia  jeśli bit ACK

jest ustawiony, to numer ten jest spodziewanym numerem
potwierdzenia)

Flaga wskazująca, że należy odczytać pole numeru
potwierdzenia

(Acknowledgment)

ACK

(1)

background image

TCP: Format nagłówka

Flagi

(6 bitów)

URG

(1)

ACK

(1)

PSH

(1)

RST

(1)

SYN

(1)

FIN

(1)

PSH

(1)

Ustawienie tego bitu oznacza, że odbiorca musi powiadomić
niezwłocznie aplikację o danych, które nadeszły i które mają
nadejść

(Push – natychmiastowe przepchnięcie danych)

RST

(1)

Znacznik resetowania połączenia

(np. w przypadku nieosiągalności

portu – zamiast wysyłania wiadomości ICMP: Uwaga: w przypadku UDP trzeba
wysłać ICMP)

SYN

(1)

FIN

(1)

Znacznik inicjalizacji połączenia i synchronizacji numerów
sekwencyjnych

Znacznik oznaczający, że wysyłający kończy wysyłanie danych
 kończy połączenie TCP

(połączenie zostanie zakończone, gdy obie

strony wyślą znaczniki FIN)

Rozmiar okna

(16 bitów)

Liczba bajtów, które węzeł nadający może przyjąć
bez potwierdzenia od węzła docelowego

(określa

wielkość buforu wydzielonego dla danego połączenia TCP) 

Uwaga: liczba ta dotyczy danych + nagłówek TCP (nie dotyczy
nagłówków IP i łącza danych
)

background image

TCP: Format nagłówka

Suma kontrolna

(16 bitów)

Suma kontrolna obliczana z pól pseudonagłówka IP
nagłówka TCP oraz danych

(pola sumy kontrolnej w

nagłówku TCP są wtedy zerowane)

Adres źródłowy IP

(32)

Adres źródłowy IP

(32)

Zera

(4)

Nr prot.

transp.

(4)

Długość segmentu TCP

(8)

Pseudonagłówek

Długość TCP dotyczy długości
nagłówka TCP + dane
(określana w bajtach)
Uwaga: Nie jest to wartość
przepisana z żadnego innego
pola innych nagłówków, lecz
obliczona <bo nie ma takiego
pola>

Wskaźnik ważności

(16 bitów)

Wskaźnik ten dodawany jest do numeru sekwencji segmentu TCP i

wskazuje na ostatni ważny bajt w tym segmencie

.

Rozpatrywany jest gdy ustawiona jest flaga URG
Przykład: W Telnecie flaga i wskaźnik ważności ustawiany jest w
segmencie, gdy użytkownik naciśnie klawisz przerwania

background image

TCP: Format nagłówka

Opcje

(zmienna długość)

Opcja „Maximum Segment Size”

Typ

(8 bitów)

Długość opcji

(8 bitów)

Dane opcji

Typ

Długość

Opis

0

-

End of option list

1

-

No-operation

2

4

Maximum Segment Size
(MSS)

3

3

Window Scale

4

2

Sack-Permitted

(selective

acknowledgment permited)

5

x

Sack

(selective

acknowledgment)

8

10

Time Stamps

2

(8 bitów)

4

(8 bitów)

(8 bitów)

(8 bitów)

MSS

4 oktety

Wykorzystywane w czasie
ustanawiania połączenie 

flaga SYN = 1  do negocjacji

maksymalnej długości
segmentu TCP

3

(8 bitów)

3

(8 bitów)

(8 bitów)

Window scale

Opcja „Window Scale”

Przykład:

Opcja wykorzystywana do poszerzenia
pola definicji okna  zatem również i

samego okna

background image

TCP – Ustanowienie połączenia – „Three Way Handshake”

Host A

Host B

SYN

- numer portu do którego chcę się przyłączyć

- początkowy numer sekwencji (ISN) hosta A

- maksymalny możliwy rozmiar segmentu wys

yłanego z Hosta A

- początkowy numer

sekwencji (ISN) ho

sta B

- sekwencja potwier

dzająca (ISN hosta

A +1)

- maksymalny rozm

iar segmentu prze

syłanego przez ho

st B

SYN, ACK

ACK

- kolejny numer sekwencji hosta A (ISN A+

1)

- sekwencja potwierdzająca (ISN hosta B +

1)

Przykład: ISN =100, SYN=1, MSS = 1640

Przykład: sekw =101, potw =301, ACK =

1,

ISN B. = 300, sek

w. potw. = 101,

SYN=1, ACK=1,

MSS=1640

Internet

background image

TCP – „Three Way Handshake” – handshake 1 - przykład

SYN

ISN stacji A: 3931661217

IP: 10.2.7.103

IP: 62.44.10.4

Uwaga: Pole „Acknowledgment number = 0x00

Port źródłowy (tymczasowy)

Port docelowy (dobrze znany=80 <HTTP>)

Flaga SYN

Rozmiar okna oferowany

A

B

MSS

background image

TCP – „Three Way Handshake” – handshake 1 - przykład

SYN, ACK

IP: 10.2.7.103

IP: 62.44.10.4

A

B

Port źródłowy (dobrze znany=80 <HTTP>)

Port docelowy (z SYN)

ISN stacji B

Numer potwierdzenia:
ISN stacji A +1 =3931661217 +1

Flagi SYN i ACK

MSS

Rozmiar okna dla stacji B

background image

TCP – „Three Way Handshake” – handshake 1 - przykład

ACK

IP: 10.2.7.103

IP: 62.44.10.4

A

B

Numer sekwencji

(dokładnie numer

potwierdzenia z SYN, ACK)

:

ISN stacji A +1 =3931661217 +1

Numer potwierdzenia:
ISN stacji B +1 =3039176547 +1

Uwaga:

Teraz połączenie między hostem A i B zostało ustanowione.

Host A wie że: rozmiar początkowy okna = 65535 bajtów, może spodziewać się MSS
= 1460 B,
może transmitować dane z kolejnym numerem sekwencyjnym =

3931661217

+1+1
Podobne dane posiada host B.

background image

TCP – okna - szczegóły

Przykład:
Wielkość segmentu TCP: 500 bajtów
Rozmiar okna 1500 bajtów

segment 1, sekw=1000

Źródło

Przeznaczenia

segment 5, sekw=3000

segment 2, sekw=1500

Potwierdzenie ACK 1500 (ACK=sekw+1500)

segment 3, sekw=2000

Otrzymano
potwierdzenie.
Przesunięcie
okna o 500
bajtów

segment 4, sekw=2500

Potwierdzenie ACK 1500 (wciąż to samo)

Timeout2 = b sek

Timeout1 = a sek

Timeout3 = c sek

ACK 1500
ACK 1500

Ostatni
segment w
oknie
przesuniętym

Wciąż nie
otrzymano
potwierdzenia
ostatniego
segmentu okna

Mija timeout
dla segmentu 2

Uwaga: w TCP numery sekwencji
dotyczą pierwszego bajtu w
segmencie; również potwierdzenie
dotyczą ilości przesłanych bajtów, a
nie pakietów

segment 2, sekw=1500

segment 3, sekw=2000
segment 4, sekw=2500
segment 5, sekw=3000

Zasięg okna
początkowego:
1000 - 2500

background image

Przeznaczenie i charakterystyka

Umożliwia transfer wiadomości pomiędzy parą węzłów w
sieci. Pracuje jak multiplekser/demultiplekser przesyłając
dane z/do portów.

UDP:

Charakterystyka:

Transfer danych strumieniowych (UDP dzieli je na
segmenty podczas nadawania i łączy w węźle docelowym)
Szybkość przesyłania wiadomości
Multipleksowanie (korzystanie z różnych portów)
Pełny dupleks
Nie gwarantuje niezawodnej transmisji danych

Przeznaczenie:

background image

UDP – format nagłówka

Port źródłowy (16)

Port docelowy (16)

Długość (nagłówek TCP + dane) (16)

Dane (zmienna długość)

Bit 0

Bit 15

Bit 16

Bit 31

Suma kontrolna (16)

8

Bajtów

UDP:

background image

TCP/IP

PRZEPŁYW DANYCH PRZEZ HOSTY I ROUTERY

background image

TCP/IP

RUTOWANIE TABLICOWE

background image

W warstwie tej definiuje się protokoły zdalnego dostępu i współdzielenia zasobów.

Najważniejsze

z tych protokołów to Telnet, FTP, SMTP, NFS, HTTP. Poprawne działanie tych

protokołów

jest uzależnione od funkcjonowania niższych warstw. Protokoły te związane są

bezpośrednio z aplikacjami użytkowników

WARSTWA PROCESU / APLIKACJI

WARSTWA TRANSPORTOWA (HOST-TO-HOST)

Protokoły Internetu

Protokoły Internetu

Warstwa ta luźno nawiązuje do warstw sesji i transportu modelu OSI. Zdefiniowano w niej
dwa protokoły: protokół sterowania transmisją (TCP - Transmission Control Protocol)
i protokół datagramów użytkownika (UDP - User Datagram Protocol). Obecnie w celu
dostosowania do zorientowanego na transakcje charakteru Internetu definiuje się trzeci protokół
sterowania transakcją i transmisją (T/TCP - Transaction and Transmission Control Protocol).

background image

WARSTWA INTERNETU

Protokoły Internetu

Protokoły Internetu

Protokół Internetu (IP) jest sercem TCP/IP i najważniejszym protokołem tej warstwy.
IP umożliwia dostarczanie pakietów na bazie których zbudowane są sieci TCP/IP. Wszystkie
protokoły warstw powyżej i poniżej IP używają dla dostarczania danych protokołu IP.

Funkcje IP zawierają:
Ø definiowanie datagramów IP, będących w Internecie podstawowymi jednostkami
informacyjnymi,
Ø definiowanie schematu adresowania używanego w Internecie,
Ø przekazywanie danych między warstwą dostępu do sieci i warstwą transportową
host-to-host,
Ø kierowanie datagramów do komputerów oddalonych,
Ø dokonywanie fragmentacji i ponownego składania datagramów.

Protokół IP jest niepewnym protokołem bezpołączeniowym. Można zakładać, że IP
dostarczy wiernie

dane do sieci nie sprawdzi jednak czy dane te zostały poprawnie

odebrane. Kontrola poprawności dostarczania danych spoczywa na protokołach wyższych
warstw

background image

WARSTWA INTERNETU

Protokoły Internetu

Protokoły Internetu

Protokół Internetu (IP) jest sercem TCP/IP i najważniejszym protokołem tej warstwy.
IP umożliwia dostarczanie pakietów na bazie których zbudowane są sieci TCP/IP. Wszystkie
protokoły warstw powyżej i poniżej IP używają dla dostarczania danych protokołu IP.

Funkcje IP zawierają:
Ø definiowanie datagramów IP, będących w Internecie podstawowymi jednostkami
informacyjnymi,
Ø definiowanie schematu adresowania używanego w Internecie,
Ø przekazywanie danych między warstwą dostępu do sieci i warstwą transportową
host-to-host,
Ø kierowanie datagramów do komputerów oddalonych,
Ø dokonywanie fragmentacji i ponownego składania datagramów.

Protokół IP jest niepewnym protokołem bezpołączeniowym. Można zakładać, że IP
dostarczy wiernie

dane do sieci nie sprawdzi jednak czy dane te zostały poprawnie

odebrane. Kontrola poprawności dostarczania danych spoczywa na protokołach wyższych
warstw

background image

Budowa datagramu IP

Budowa datagramu IP

background image
background image
background image
background image
background image

Protokół ARP

Protokół ARP

background image

ARP (Address Resolution Protocol) – RFC 826

Przeznaczenie:

Zadaniem ARP jest konwersja adresów warstw
wyższych (IP) na adresy warstwy fizycznej

Hub Ethernet

MAC 1

MAC 2

MAC 3

MAC 0

IP 0

IP 1

IP 2

IP 3

Pakiet IP:
IP źródła: IP x
IP docelowy: IP 3

ARP request
Ramka Ethernet:
MAC źródła: MAC 0
MAC docelowy: rozsiewczy
IP źródła: IP 0
IP docelowy: IP 3

1

1

1

1

IP

MAC

IP 3

MAC 3

....

....

Tablica ARP
(ARP Cache)

2

ARP reply
Ramka Ethernet:
MAC źródła: MAC 3
MAC docelowy: MAC 0
IP źródła: IP 3
IP docelowy: IP 0

2

Kto ma adres IP 3
niech się odezwie ?

Ja mam taki adres.
Oto mój adres MAC.

3

5

0

5

Ramka Ethernet z pakietem IP:
MAC źródła: MAC 0
MAC docelowy: MAC 3

Uwaga: ARP nie działa w

sieciach, w których nie można

przesyłać ramek

rozgłoszeniowych (np. X.25)

Sprawdzenie tablicy

IP

MAC

IP 0

MAC 0

....

....

IP

MAC

IP 0

MAC 0

....

....

IP

MAC

IP 0

MAC 0

....

....

Przy okazji

otrzymania

pakietu ARP stacje

uaktualniają

tablice ARP

background image

ARP – Komunikacja w sieci lokalnej poprzez IP

Przyporządkuj: IP MAC

Zapisz tablice ARP

172.16.3.1

IP: 172.16.3.2
Ethernet: 0800.0020.1111

IP: 172.16.3.2
Ethernet: 0800.0020.1111

172.16.3.2

IP: 172.16.3.2 = ???

IP: 172.16.3.2 = ???

Odczytałem ramkę
rozgłoszeniową.
Znalazłem tam swój
adres IP.
Odpowiadam i
załączam mój adres
Ethernetowy

Chcę wysłać
pakiet.
Muszę znać
adr. stacji o IP:
176.16.3.2.

IP: 172.16.3.2 = ???

IP: 172.16.3.2 = ???

1

2

2

3

4

5

background image

ARP – Format pakietu

ARP request, reply

Typ protokołu warstwy fizycznej

(16 bitów)

Nagłówek warstwy fizycznej

(x bajtów)

1

8

16 bitów

Typ protokołu warstwy sieciowej - z pola Type nagłówka warstwy fizycznej (IP = 0x0800)

(16 bitów)

Długość adresu MAC w bajtach

(8 bitów)

Długość adresu sieciowego w bajtach

(8 bitów)

Kod działania – Request = 1, Reply = 2

(16 bitów)

Adres MAC źródłowy

(n bitów) –> dla Ethernetu (48 bitów)

Adres IP źródłowy

(32 bity – IPv4)

Adres MAC docelowy

(n bitów) –> dla Ethernetu (48 bitów)

Adres IP docelowy

(32 bity – IPv4)

background image

ARP – Przykład z analizatora protokołów

Adres MAC rozgłoszeniowy

Na początku wstawiane same zera

Pola pakietu ARP

background image

Protokół RARP

Protokół RARP

background image

RARP (Reverse Address Resolution Protocol) – RFC 903

Przeznaczenie:

Zadaniem RARP jest powiadomienie stacji, która
przesyła swój adres MAC o jej adresie IP.

Ethernet: 0800.0020.1111

IP: 172.16.3.25

Ethernet: 0800.0020.1111

IP: 172.16.3.25

Ethernet: 0800.0020.1111 IP = ???

Ethernet: 0800.0020.1111 IP = ???

Jaki
mam
adres
IP?

Odczytałe
m ramkę
rozgłoszen
iową. Oto
twój adres
IP
172.16.3.2
5.

Przyporządkuj: MAC IP

Uwaga:

Format pakietu RARP jest identyczny jak ARP,

Przypisano następujące kody działania:
RARP request = 3
RARP reply = 4

background image

Historia

background image

0

Numer

sieci

Numer komputera

0

1-----------7

8---------------------------------------------------------31

Adres klasy A

10

Numer sieci

Numer komputera

0-1

2-------------------------15

16------------------------------------31

Adres klasy B

110

Numer sieci

Numer

komputera

0--2

3-------------------------------------------------23

24-----------31

Adres klasy C

1110

Adres grupowy (multicast)

0------3

4------------------------------------------------------------------31

Adres klasy D

1111

Zarezerwowany dla

Network Information

Center

0-------3

4-----------------------------------------------------------------31

Adres klasy E

Adresacja w sieci TCP/IP

background image

TCP/IP

WYKORZYSTANIE SYSTEMU DNS

background image

Podsieci w Sieci Internet

Ethernet

Ethernet

PC

PC

Router

Global network

144.84.11.50

144.84.10.50

Podsieć B

144.84.11.

Podsieć A

144.84.10.

144.84.11.10

144.84.10.10

Osiem bitów podsieci. Maska Podsieci 255.255.255.0

10

Numer sieci

Bity

podsieci

Numer

komputera

0-1

2-------------------------15

16-----23

24------------------31

Adres klasy B z maską podsieci.
Osiem bitów podsieci.

Maska podsieci.

10

Numer sieci

Bity

pod-

siec

i

Numer

komputera

0-1

2-------------------------15

16---19

20--------------------31

Adres klasy B z maską podsieci.
Cztery bity podsieci.

Maska podsieci.

TCP/IP

background image

Struktura drzewa DNS

root

kor

edv

kor

kor

kor

kor

kor

AA

KK

BB

mek

com

gov

TCP/IP

background image

Format pakietu IPv4 - RFC791

Wersja

(4 bity)

Długość

nagłówka

w 4-

bajtowych

słowach

1

8

16

24

32 bity

Typ usługi

(TOS – 8 bitów)

Długość pakietu (nagłówek + dane)

(16 bitów)

Identyfikacja (0  2^16)

(16 bitów)

4

8

12

16

20

bajty

24

Przesunięcie fragmentacji

(13 bitów)

Flagi

(3 bity)

Czas życia (0  256)

(TTL - 8 bitów)

Protokół warstwy wyższej

(8 bitów)

Suma kontrolna nagłówka

(16 bitów)

Adres IP źródłowy

(32 bity)

Adres IP docelowy

(32 bity)

Opcje (Opcjonalnie)

Dane

20

bajtó

w

max 60

bajtów

max

64KB

Wypełnienie

do pełnych 32 bitów

background image

Format pakietu IPv4

Długość

nagłówka w

4-bajtowych

słowach

Standardowo: 0x05 (czyli 20 bajtów)

Typ usługi

(TOS – 8 bitów)

Pierwszeństwo

(3)

D

(1)

T

(1)

R

(1)

C

(1)

0

8

1

Bity 1-3: Pierwszeństwo – Określa priorytet pakietu
D - Opóźnienie: 0 = Opóźnienie normalne, 1 = Opóźnienie małe
T - Przepustowość: 0 = Przepustowość normalna, 1 = Przepustowość wysoka
R – Niezawodność: 0 = Niezawodność normalna, 1 = Niezawodność wysoka.
C – Koszt (w jedn. monetarnych): 0 = Koszt normalny 1 = Koszt minimalizowany
Bit 8: Do przyszłego wykorzystania

Ustawienie standardowe TOS: 000 0000 0

Przykładowe ustawienia bitów pierwszeństwa:

- 010: Natychmiastowo

- 001: Priorytetowo

- 000: Standardowo

Inne zalecane ustawienie bitów DTRC: zależne od protokołów warstw
wyższych RFC1060 (Assigned Numbers) :
- TELNET, TFTP: 1000
- FTP, SMNP: sterowanie: 1000, dane: 0100
- ICMP <standardowo>: 0000

(RFC791,
RFC1349)

7

6

5

4

3

2

background image

Format pakietu IPv4

Długość pakietu (nagłówek + dane)

(16 bitów)

Długość pakietu mierzona w liczbie oktetów (max do 65 535 oktetów, tzn.
64kB,
2^16)

Dla max pola danych

Ethernetu: 0x5dc [H]

1500B

Identyfikacja (0  2^16)

(16 bitów)

Pomaga składać pakiety w

odpowiedniej kolejności

Przesunięcie fragmentacji

(13 bitów)

Flagi

(3 bity)

0

DF

(1)

MF
(1)

3

2

1

Przesunięcie fragmentacji
mierzone w jednostkach
8-oktetowych
w

pierwszym pakiecie = 0x00

DF =0: Zezwolenie na
fragmentacje
DF =1: Brak zezwolenia na fragm.
MF =0: Ostatni fragment
MF =1: Więcej fragmentów

Wskazuje przesunięcie przenoszonych
przez pakiet danych
(pofragmentowanych) względem
początku tych danych (początku
datagramu)
datagram może być

przenoszony w kilku pakietach

background image

Format pakietu IPv4

Protokół warstwy wyższej

(8 bitów)

Wartość

Nazwa

Rozwinięcie

1

ICMP

Internet Control Message Protocol

2

IGMP

Internet Group Management Protocol

3

GGP

Gateway-to-Gatewey Protocol

4

IP

Enkapsulacja

6

TCP

Transmission Control Protocol

8

EGP

Exterior Gateway Protocol

41

IPv6

IPv6

17

UDP

User Datagram Protocol

Czas życia (0  256)

(TTL - 8 bitów)

Czas życia w sekundach
Uwaga: Gdy router przetwarza pakiet mniej niż
sekundę to odejmuje całą sekundę.
0x00 – oznacza że należy zniszczyć pakiet

RFC1060 (Assigned Numbers)

Suma kontrolna nagłówka

(16 bitów)

Suma kontrolna – zabezpiecza jedynie
nagłówek (do obliczeń sumy kontr.
przyjmuje się że pole samej sumy =0)

background image

Format pakietu IPv4

Dwa typy opcji:

- opcje jednobajtowe (a)

- opcje wielobajtowe (b)

Opcje (Opcjonalnie)

Format opcji:

(a)

Typ opcji

(8 bitów)

Typ opcji

(8 bitów)

(b)

Długość opcji (B)

(8 bitów)

Dane opcji

(16 bitów)

Typ opcji

(8 bitów)

Format typu opcji:

8

1

7

6

5

4

3

2

Klasa

(2 bity )

FC

(1)

Wskaźnik typu opcji

(5 bitów)

FC (Flaga kopiowania opcji podczas fragmentacji): 0 – NIE, 1 – TAK
Klasa: 0 – sterowanie; 1,3 – zarezerwowane; 2 – debugowanie i
pomiary
Wskaźnik typu:
0 – koniec listy opcji; 2 – opcja bezpieczeństwa;
inne wskaźniki: zdefiniowane w RFC 791

background image

Format pakietu IPv4

10000010

(8 bitów)

(b)

00001011

(8 bitów)

Dane opcji

(88 bitów)

Przykład opcji bezpieczeństwa

Typ opcji: 130

1 - kopiować
00 - sterowanie
00010 = 2 -
bezpieczeństwo

Długość: 11
bajtów

Poziom

bezpieczeństw

a

16 bitów

Dane

bezpieczeństw

a

72 bity

Poziom bezpieczeństwa:

00000000 00000000 - Unclassified
11110001 00110101 - Confidential
10101111 00010011 - Restricted
11010111 10001000 - Secret
01101011 11000101 - Top Secret

background image

Format pakietu IPv6 – RFC 2460

Wersja

(4 bity)

1

8

16

24

32 bity

Klasa ruchu

(8 bitów)

Etykieta przepływu

(20 bitów)

Długość pakietu (bez nagłówka)

(16 bitów)

4

8

28

40

bajty

Liczba skoków

(8 bitów)

Następny nagłówek

(8 bitów)

Adres IP źródłowy

(128 bitów)

Adres IP docelowy

(128 bitów)

40

bajtó

w

background image

Porównanie nagłówków IPv4 i IPv6

background image

IPv6 – Nagłówki

Nagłówek IPv6 (IPv6 header);
Nagłówek opcji Hop-by-Hop (Hop-by-hop Options header);
Nagłówek opcji docelowych (Destination Options header)*;
Nagłówek routingu (Routing header);
Nagłówek fragmentu (Fragment header);
Nagłówek uwierzytelniania (Authentication header)**;
Nagłówek enkapsulacji wiadomości bezpieczeństwa
(Encapsulating Security Payload header);
Nagłówek opcji docelowych (Destination Options header)***;
Nagłówek warstwy wyższej (Upper layer header).

. - nagłowki przenoszące opcje

(*) - nagłówek jest interpretowany przez pierwszego z odbiorców wymienionych

w polu IPv6 Destination Address oraz w polu docelowym wymienionym w
nagłówku routingu (Routing header);

(**) - dodatkowe zalecenia dotyczące porządku występowania wiadomości

uwierzytelniania i enkapsulacji wiadomości bezpieczeństwa są zawarte w
zaleceniu;

(***)- nagłówek jest przetwarzany tylko przez ostatniego z odbiorców pakietu.

background image

IPv6 – Nagłówki rozszerzone

IPv6 Header

Next = TCP

TCP Header

IPv6 Header

Next = Routing

TCP Header

Routing Hdr

Next = TCP

IPv6 Header

Next = Security

TCP Header

Security Hdr

Next = Frag

Application Data

Application Data

Fragment Hdr

Next = TCP

Data
Frag

Opcje w IPv6 przesunięto do tzw. nagłówków rozszerzonych
(Extension Headers)

Extension Headers stanowią łańcuch nagłówków

background image

IPv6 – Przenoszenie opcji w nagłówkach opcji

T

L

V

T

L

V

T

L

V

T - Typ opcji nasennej (Option Type), 8 bitowy identyfikator
typu opcji;

L – Długość Wiadomości Opcji (Option Data Length), 8
bitowa liczba całkowita bez znaku (unsigned integer).
Długość wyrażona jest w oktetach.

V – Wiadomość Opcji (Option Data, Variable-length), pole o
zmiennej długości, zależnej od typu opcji.

W nagłówkach opcji przenoszonych może być jednocześnie wiele

opcji

Zasada upakowania opcji:

background image

IPv6 – Pole typu opcji

PP:

00 – opuść przetwarzaną opcję i kontynuuj przetwarzanie
nagłówka.

01 – odrzuć pakiet.

10 – odrzuć pakiet i, bez względu czy adres jest adresem
multicastowym czy nie, prześlij wiadomość „ICMP Parameter
Problem, Code 2
” pod adres nadawcy (Source Address),
wskazując nierozpoznany typ opcji.

11 – odrzuć pakiet i jeśli adres docelowy nie był adresem
multicastowym, prześlij wiadomość „ICMP Parameter Problem,
Code 2
” pod adres nadawcy (Source Address), wskazując
nierozpoznany typ opcji.

P

(1)

P

(1)

R

(1)

3

2

1

(5 bitów)

8

R:

0 – Wiadomość Opcji (Option Data) nie może zmienić
wyznaczonej drogi dostarczenia pakietu.

1 – Wiadomość Opcji (Option Data) może zmienić wyznaczoną
drogę dostarczenia pakietu.

Mimo, że trzy pierwsze bity
wskazują

węzłom

sposób

postępowania z opcją, to nazwa
opcji

jest

określana

przez

wszystkie 8 bitów

background image

IPv6 – przykład opcji - Destination option

Next Header – 8 bitowe pole selektora typu następnego nagłówka.
Hdr Ext Len – 8 bitowa liczba całkowita bez znaku (unsigned

integer). Długość Opcji Docelowych jest mierzona w 8
oktetowych jednostkach, bez włączania pierwszej ósemki
oktetów.

Options – Pole o zmiennej długości, długość kompletnego nagłówka

Opcji Docelowych jest liczbą całkowitą 8 oktetowych jednostek.

Next header w poprzednim nagłówku = 60

Jeśli brak jest następnego nagłówka, to Next header = 59

background image

IPv6 - zalety

Stały rozmiar nagłówka

40 bajtów

Mniej pól w nagłówka w porównaniu z IPv4

szybsze przetwarzanie pakietów w węzłach

Efektywne przetwarzanie opcji

Przetwarzane są tylko wtedy, gdy są dołączane

Większość opcji przetwarzanych w węźle końcowym

Zrezygnowano z sumy kontrolnej

Lepsze kanały transmisyjne

Obecnie warstwy wyższe muszą mieć
zaimplementowaną możliwość korekcji błędów

Ograniczona fragmentacja w sieci

Routery w większości umożliwiają przesyłanie różnych
długości pakietów

Łatwiejsza implementacja oraz routing

background image

IPv6 a warstwy niższe

background image

IPv6 – dostosowanie wielkości pakietu do MTU

background image

IPv6 – mechanizm odkrywania sąsiadów

background image

IPv6 – odnajdowanie adresu sąsiada

background image

IPv6 – Wiadomości rozgłoszeniowe routerów

background image

IPv6 – Zgłoszenie się stacji do routera

background image

IPv6 – Autokonfiguracja stacji roboczej

background image

Sterowanie przepływem

- umożliwia chwilowe zatrzymywanie

strumienia danych przez odbiorcę poprzez wygenerowanie do
nadawcy komunikatu Source Quench,
oznaczającego żądanie
chwilowego wstrzymania nadawania.

Informowanie o nieosiągalności miejsc przeznaczenia

- system

wykrywając nieosiągalność miejsca przeznaczenia, wysyła do źródła
datagramów

komunikat

Destination

Unreachable

Jeśli

nieosiągalnym adresatem jest sieć lub komputer, komunikat ten jest
wysyłany przez routery pośrednie, natomiast jeśli nieosiągalnym
zasobem jest port, zawiadomienie generuje host docelowy.

Przekierunkowanie marszrut

- otrzymanie przez element systemu

komunikatu Redirect oznacza, że należy użyć innego routera, gdyż
jest on prawdopodobnie lepszym pośrednikiem. Komunikat taki
może być wysłany tylko wtedy, gdy obydwa routery znajdują się w tej
samej sieci, co host źródłowy.

Sprawdzanie połączeń z komputerami oddalonymi

- w celu

sprawdzenia czy jakiś system oddalony pracuje i jest dostępny,
można wygenerować komunikat Echo,
który zostanie zwrócony do
nadawcy. Mechanizm ten jest wykorzystywany bezpośrednio przez
polecenie „ping”
systemu UNIX.

TCP/IP

FUNKCJE ICMP

background image

ICMP (Internet Control Message Protocol) – RFC792,

RFC950

Charakterystyka ogólna ICMPv4

ICMP jest integralną częścią IP choć wykorzystuje go tak, jak protokoły
warstw wyższych (w polu „protokół warstwy wyższej” w IPv4 oraz
„następny nagłówek” w IPv6 wstawiany jest kod ICMP = 1)
Wykorzystywany jest do informowaniu o błędach – nie zapewnia
niezawodnej transmisji pakietów IP (do tego służą protokoły warstwy
transportowej)
ICMP pozwala informować o błędach dot. pakietów IP, ale nie tych które
przenoszą wiad. ICMP
W przypadku fragmentowanych pakietów IP wiadomość o błędzie dotyczy
tylko fragmentu 0
Wiadomości ICMP nie są przesyłane w odpowiedzi na pakiety o adresach
docelowych broadcastowych lub multicastowych oraz adresach źródłowych
innych niż unikastowych
Wiadomości ICMP nie są przesyłane w odpowiedzi na wiadomości ICMP
informujące o błędach – mogą być przesyłane w odpowiedzi na tzw.
zapytania ICMP (np.. echo request)
Wiadomości ICMP o błędach mogą być generowane przez urządzenia
sieciowe, ale nie muszą (wg. RFC792).

ICMP jest protokołem określającym zbiór wiadomości służących do
powiadamianiu o błędach w przetwarzaniu pakietów IP w sieci oraz
pełniących funkcje pomocnicze w identyfikacji stanu elementów sieci
(ping).

Przeznaczenie:

background image

ICMP – RFC792 – ogólny format wiadomości ICMP

Typ

(8 bitów)

Kod

(8 bitów)

Suma kontrolna

(16 bitów)

4

8

1

8

16

24

32 bity

Dane ICMP (w zależności od typu wiadomości)

Typ Kod

Opis

0

0

echo reply

3

destination
unreachable

0

network unreachable

1

host unreachable

2

protocol unreachable

3

port unreachable

4

0

source quenche

5

redirect

0

redirect for network

Najczęściej używane typy wiadomości ICMP

Typ Kod

Opis

8

0

echo request

9

0

router advertisement

10

0

router solicitation

11

0

time exceeded

12

parameter problem

0

IP header bed

1

required option
missing

13

0

time stamp request

14

0

time stamp reply

Application

Transpor

t

Internet

Data Link

Physical

Destination
Unreachable
Echo (Ping)
Inne

ICMP

1

background image

ICMP – Format „Echo request” i „Echo replay”

8

(8 bitów)

0

(8 bitów)

Suma kontrolna

(16 bitów)

Identyfikator (02^16)

(16 bitów)

4

8

1

8

16

24

32 bity

Echo request (ping)

Numer sekwencji (02^16)

(16 bitów)

Dane

(32 bajty):

a b s c d e f g h i j k l m n o p r s t u v w a b c d e f g h i

RFC 792 nie definiuje
zawartości pola danych.
Najczęściej (dla
komendy „ping”)
zawiera ono sekwencję
32 kolejnych liter
alfabetu zakodowaną na
32 bajtach w kodzie
ASCI (1 litera – 1 bajt)

0

(8 bitów)

0

(8 bitów)

Suma kontrolna

(16 bitów)

Identyfikator (02^16)

(16 bitów)

4

8

1

8

16

24

32 bity

Echo reply

Numer sekwencji (02^16)

(16 bitów)

Dane

(32 bajty):

a b s c d e f g h i j k l m n o p r s t u v w a b c d e f g h i

Kopiowane

background image

ICMP – Format „Time exceeded”

11

(8 bitów)

Kod

(8 bitów)

Suma kontrolna

(16 bitów)

Nieużywane – same zera

(32 bity)

4

8

1

8

16

24

32 bity

Time exceeded – Przekroczony czas

Nagłówek pakietu IP, na który wiadomość odpowiada + 64 bity danych oryginału

(28 bajty dla nagłówka IPv4 bez opcji)

Kod = 0 – przekroczony
czas transmisji pakietu
Kod = 1 – Przekroczony
czas dzielenia pakietu
(fragmentacji)

Przykład:

Nagłówek IP (20B)

Nagłówek TCP (20B)

Dane TCP (65B)

dostęp do strony www

Nagłówek IP (20B)

Nagłówek IP (20B)

adr docelowy: y

x

y

adr docelowy: x

64 bity nagłówka TCP

Nagłówek ICMP

(8B)

Typ: 11; Kod 0

Wiadomość
ICMP

Czas życia

pakietu

minął:

TTL = 0

TTL=128

background image

ICMP – Format „Destination unreachable”

3

(8 bitów)

Kod

(8 bitów)

Suma kontrolna

(16 bitów)

Nieużywane – same zera

(32 bity)

4

8

1

8

16

24

32 bity

Destination unreachable – brak dostępu do sieci (węzła)

Nagłówek pakietu IP, na który wiadomość odpowiada + 64 bity danych oryginału

(28 bajty dla nagłówka IPv4 bez opcji)

Kod – liczba zależna od
przyczyny braku
dostępu

Przykład:

Nagłówek IP (20B)

Nagłówek TCP (20B)

Dane TCP (65B)

dostęp do strony www

Stacja
robocza – nie
serwer www
(brak
wymaganego
portu)

Nagłówek IP (20B)

Nagłówek IP (20B)

adr docelowy: y

x

y

adr docelowy: x

64 bity nagłówka TCP

Zły port

Nagłówek ICMP

(8B)

Typ: 3; Kod 3

Wiadomość
ICMP

background image

ICMP – Przykład zastosowania „Echo request” i „Time

exceeded”

Aplikacja „Traceroute”:

206.152.221.254

232.172.211.254

212.155.221.254

202.112.211.254

206.152.221.78

232.172.211.113

Ping (Echo req)
IP:
TTL: 1
Source: 206.152.221.78
Dest: 232.172.211.113

1

1

2

2

ICMP: Time exc.
IP:
TTL: 128
Source:

206.152.221.254

Dest: 206.152.221.78

3

4

Ping (Echo req)
IP:
TTL: 2
Source: 206.152.221.78
Dest: 232.172.211.113

3

4

ICMP: Time exc.
IP:
TTL: 128
Source:

202.112.211.254

Dest: 206.152.221.78

5

6

Ping (Echo req)
IP:
TTL: 3
Source: 206.152.221.78
Dest: 232.172.211.113

5

6

ICMP: Time exc.
IP:
TTL: 128
Source:

232.172.211.254

Dest: 206.152.221.78

7

8

7

8

Ping (Echo req)
IP:
TTL: 3
Source: 206.152.221.78
Dest: 232.172.211.113

Echo repl

Trasa:

206.152.221.254
202.112.211.254
232.172.211.254

background image

ICMP - Przykład z analizatora protokołów

Pola pakietu ICMP

Pod tym adresem nie

ma udostępnionego

żądanego portu

Typ: Destination unreachable

background image

IGMP (Internet Group Management Protocol) – RFC1112,

RFC2236

Przeznaczenie:

Protokół IGMP wykorzystywany jest przez stacje, które dołączone są
do grupy stanowiącej zbiór stacji multicastowych.

Router

multicasto

wy

Stacja

robocza

Stacja

robocza

Stacja

robocza

Aby otrzymywać
pakiety
multicastowe stacja
musi dołączyć się do
określonej grupy

Transmisja
multicastowa polega
na jednoczesnym
przesyłaniu
pakietów do wielu
stacji na tzw. adres
multicastowy

Grupa multicastowa

Router

multicasto

wy

Już jest w
grupie
multicastowej

1

1

1

1

Membership report

2

2

2

2

2

Membership query

1

2

Dołącza
m się

2

Od czasu do czasu
router sprawdza kto jest
w grupie

1

background image

IGMP – Format pakietu

Application

Transpor

t

Internet

Data Link

Physical

Membership
Query
Membership
Report

IGMP

2

Wersja

(4 bitów)

Typ

(4 bitów)

Suma kontrolna

(16 bitów)

4

8

1

8

16

24

32 bity

Adres IP klasy D

(32 bity)

Nieużywane (zera)

(8 bitów)

bajtów

Typ:
1 = Host Membership Query
2 = Host Membership Report
Adres:
- zera gdy Typ 1
- grupowy adres multikastowy

Uwaga:
1.

Stacja po otrzymaniu „Membership query” odpowiada z losowym
opóźnieniem. Przyczyna: nie ma nagłego wzrostu ruchu.

2.

Stacja odpowiada na grupowy adres multikastowy z ustawionym
TTL = 1. Zatem inne stacje nie nie odbierają tego pakietu gdyż
usunięty on zostanie w routerze

background image

IGMP – Przykład z analizatora protokołów

Membership query

Membership report

Same zera

Adres multicastowy

TTL = 1

TTL = 1

background image

Temat

Adresacja w sieci IPv4 i IPv6.

Marszrutyzacja w sieciach IP

background image

Format adresu IPv4

Klasa A:

Klasa B:

Klasa C:

Klasa D: Multicast

Klasa E: Zarezerwowana

Sieć

Sieć

Host

Host

Host

Host

Host

Host

Sieć

Sieć

Sieć

Sieć

Host

Host

Host

Host

Sieć

Sieć

Sieć

Sieć

Sieć

Sieć

Host

Host

8 bitów 8 bitów 8 bitów 8 bitów

Klasy adresów IPv4:

background image

Klasy adresów IPv4

1

Klasa A:

0NNNNNNN

0

NNNNNNN

Host

Host

Host

Host

Host

Host

8 9

16 17

24 25

32

Zakres (1-126)

1

Klasa B:

10NNNNNN

10

NNNNNN

Sieć

Sieć

Host

Host

Host

Host

8 9

16 17

24 25

32

Zakres (128-191)

1

Klasa C:

110NNNNN

110

NNNNN

Sieć

Sieć

Sieć

Sieć

Host

Host

8 9

16 17

24 25

32

Zakres (192-223)

1

Klasa D:

1110MMMM

1110

MMMM

Grupa multicast.

Grupa multicast.

Grupa multicast.

Grupa multicast.

Grupa multicast.

Grupa multicast.

8 9

16 17

24 25

32

Zakres (224-239)

1

Adres

Klasa

Sieć

Host

10.2.1.1

128.63.2.10

0

201.222.5.64
192.6.141.2

130.113.64.1

6

256.241.201.1

0

A

B

C
C

B

Brak

10.0.0.0

128.63.0.

0

201.222.5.0
192.6.141.0

130.113.0.0

0.2.1.1

0.0.2.100

0.0.0.64
0.0.0.2

0.0.64.16

Przykład:

background image

Adresy hostów IPv4

Liczba dostępnych adresów hostów IPv4

background image

Podsieci – maski IPv4

Przykład zapisu

background image

Podsieci IPv4

background image

Adresy bradcastowe IPv4

172.16.1.0

172.16.2.0

172.16.3.0

172.16.4.0

172.16.3.255

(Directed broadcast)

255.255.255.255

(Local network broadcast)

X

X

172.16.255.255

(All subnets broadcast)

background image

Podsumowanie - Przykład adresowania IPv4

10101100

11111111

10101100

00010000

11111111

00010000

11111111

00000010

10100000

11000000

10000000

00000010

10101100 000100000000001010111111

10101100 000100000000001010000001

10101100 000100000000001010111110

Host

Maska

Podsieć

Broadcast

Ostatni

Pierwszy

172.16.2.160

255.255.255.192

172.16.2.128

172.16.2.191

172.16.2.129

172.16.2.190

1

2

3

4

5

6

7

16

172

2

160

background image

Adresowanie w IPv6 – reprezentacja adresu

background image

IPv6 – reprezentacja adresu – rodzaje i zakres adresów

background image

IPv6 – Adresy indywidualne (unicast)

background image

IPv6 – Adresy indywidualne (unicast)

background image

IPv6 – Adresy rozgłoszeniowe (multicast)

background image

IPv6 – Adresy rozgłoszeniowe (multicast)

background image

Temat

Routing IP

background image

Protokoły routingu – co to jest routing?

Aby kierować pakiety router musi:

Znać adres docelowy

Znać możliwe drogi

Znać lub określić najlepszą drogę

Utrzymywać i aktualizować tablice routingu

172.16.1.0

10.120.2.0

background image

Co to jest routing?

Sieć docelowa

Interfejs znany

Wyuczony

10.120.2.0

172.16.1.0

Interfejs

wyjściowy

E0

S0

Routery muszą wiedzieć do którego

portu skierować pakiety

172.16.1.0

10.120.2.0

E0

S0

background image

Metody routingu

Routing

statyczny

Wykorzystuje
zdefiniowane przez
administratora drogi
kierowania pakietów

Routing

dynamiczny

Wykorzystuje
automatycznie
skonfigurowane drogi
kierowania pakietów.
Korzysta z protokołów
routingu

background image

Protokoły routingu

Protokoły Routingu

wykorzystywane
pomiędzy routerami
do określania dróg w
sieci i utrzymywania
tabel routingu.

Po ustaleniu drogi
router może routować
protokół

rutowalny

.

Networ

k

Protoc

ol

Destinati

on

Network

Connected

RIP

IGRP

10.120.2.

0

172.16.2.

0

172.17.3.

0

Exit

Interface

E0

S0

S1

Protokół rutowalny: IP

Protokół routingu: RIP, IGRP

172.17.3.0

172.16.1.0

10.120.2.0

E0

S0

background image

Interior or Exterior Routing Protocols

Autonomous System 100 Autonomous System 200

IGP: RIP, IGRP

EGP: BGP

– System (sieć) autonomiczna jest zbiorem podsieci zebranych pod jedną domeną

administracyjną

– IGPs wewnątrz systemu autonomicznego
– EGPs pomiędzy systemami autonomicznymi

background image

Klasy protokołów routingu

Distance Vector

Distance Vector

Hybrid Routing

Hybrid Routing

Link State

Link State

C

C

B

B

A

A

D

D

C

C

D

D

B

B

A

A

background image

Protokoły „Distance vector”

C

C

D

D

B

B

A

A

C

C

B

B

A

A

D

D

Routing

Table

Routing

Table

Routing

Table

Routing

Table

Routing

Table

Routing

Table

Routing

Table

Routing

Table

Distance—How far

Vector—In which direction

Distance—How far

Vector—In which direction

background image

Protokoły „Distance vector” – sposób nauki dróg

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

Routing Table

Routing Table

10.2.0.0

10.2.0.0

10.3.0.0

10.3.0.0


0

0

0

0

S0
S1

Routing Table

Routing Table

10.3.0.0

10.3.0.0 S0

0

0

10.4.0.0

10.4.0.0 E0

0

0

Routing Table

Routing Table

10.1.0.0

10.1.0.0

10.2.0.0

10.2.0.0

E0

S0

0

0

Routery odczytują najlepszą trasę od wiadomości

przesyłanych przez routery sąsiednie

background image

Protokoły „Distance vector” – sposób nauki dróg

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

Routing Table

Routing Table

10.1.0.0

10.1.0.0

10.2.0.0

10.2.0.0

10.3.0.0

10.3.0.0

Routing Table

Routing Table

10.2.0.0

10.2.0.0

10.3.0.0

10.3.0.0

10.4.0.0

10.4.0.0

10.1.0.0

10.1.0.0

0

0

0

0

1

1

1

1

S0
S1

S1
S0

Routing Table

Routing Table

10.3.0.0

10.3.0.0 S0

0

0

10.4.0.0

10.4.0.0 E0

0

0

10.2.0.0

10.2.0.0 S0

1

1

E0

S0

S0

1

1

0

0

Routery odczytują najlepszą trasę od wiadomości

przesyłanych przez routery sąsiednie

background image

Protokoły „Distance vector” – sposób nauki dróg

Routery odczytują najlepszą trasę od wiadomości

przesyłanych przez routery sąsiednie

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

Routing Table

Routing Table

10.1.0.0

10.1.0.0

10.2.0.0

10.2.0.0

10.3.0.0

10.3.0.0

10.4.0.0

10.4.0.0

Routing Table

Routing Table

10.2.0.0

10.2.0.0

10.3.0.0

10.3.0.0

10.4.0.0

10.4.0.0

10.1.0.0

10.1.0.0

0

0

0

0

1

1

1

1

S0
S1
S1
S0

Routing Table

Routing Table

10.3.0.0

10.3.0.0 S0

0

0

10.4.0.0

10.4.0.0 E0

0

0

10.2.0.0

10.2.0.0 S0

10.1.0.0

10.1.0.0 S0

1

1

2

2

E0
S0
S0

S0

1

1

2

2

0

0

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

Uaktualnienie realizowane jest krok po kroku

od routera do routera

A

A

B

B

Przetwarzan

ie

informacji,

aktualizacja

tabeli

routingu

Przetwarzan

ie

informacji,

aktualizacja

tabeli

routingu

Przetwarzan

ie

informacji,

aktualizacja

tabeli

routingu

Przetwarzan

ie

informacji,

aktualizacja

tabeli

routingu

Zmiana

topologi

sieci

Router A

przesyła

zaktualizowaną

tablicę w

następnym

zdefiniowanym

momencie

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- problem

Istnieje możliwość wolnej zbieżności

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0.0

S0

E0

S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

Down

Routing Table

Routing Table

10.1.0.0

E0
S0
S0
S0

1

1

2

2

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

10.2.0.0

S0
S1
S1
S0

1

1

1

1

10.1.0.0

10.4.0.0

10.3.0.0

0

0

Każdy węzeł utrzymuje informacje o odległości do

każdej możliwej sieci docelowej

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- problem

Router C wnioskuje, że najlepszą drogą do

sieci 10.4.0.0 jest droga przez Router B

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

2

Routing Table

Routing Table

10.1.0.0

E0
S0
S0
S0

1

1

2

2

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

10.2.0.0

S0
S1
S1
S1

1

1

1

1

10.1.0.0

10.4.0.0

10.3.0.0

0

0

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- problem

Router A uaktualnia swoją tabelę

uwzględniając nową liczbę skoków (złą)

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

S0
S0
S0
S0

1

1

2

2

10.3.0.0

10.1.0.0

10.2.0.0

10.4.0.0

0

2

Routing Table

Routing Table

E0
S0
S0
S0

1

1

4

4

10.1.0.0

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

S0
S1
S1
S0

3

3

1

1

10.2.0.0

10.1.0.0

10.4.0.0

10.3.0.0

0

0

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- problem

Pakiety routingu dot. sieci 10.4.0.0 krążą między sieciami A,
B, and C

Licznik skoków do sieci 10.4.0.0 zdąża do nieskończoności

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

4

Routing Table

Routing Table

E0
S0
S0
S0

1

1

6

6

10.1.0.0

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

S0
S1
S1
S0

5

5

1

1

10.2.0.0

10.1.0.0

10.4.0.0

10.3.0.0

0

0

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- rozwiązanie

Określenie limitu liczby skoków co zapobiega

pętli nieskończonej

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0
.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

16

Routing Table

Routing Table

E0
S0
S0
S0

1

1

16

16

10.1.0.0

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

S0
S1
S1
S0

16

16

1

1

10.2.0.0

10.1.0.0

10.4.0.0

10.3.0.0

0

0

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- rozwiązanie

Routery ustawiają odległość do uszkodzonych sieci

jako nieskończoność

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0
.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

Infinity

Routing Table

Routing Table

10.1.0.0

E0
S0
S0
S0

1

1

2

2

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

10.2.0.0

S0
S1
S1
E1

1

1

2

2

10.1.0.0

10.4.0.0

10.3.0.0

0

0

Definicja maximum

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- rozwiązanie

Nie potrzeba przesyłania wstecz informacji o

uszkodzeniu

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

X

X

X

X

Routing Table

Routing Table

10.3.0.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

0

Routing Table

Routing Table

E0
S0
S0
S0

1

1

2

2

10.1.0.0

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

S0
S1
S1
E1

1

1

2

2

10.2.0.0

10.1.0.0

10.4.0.0

10.3.0.0

0

0

Split horizon

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- rozwiązanie

Poison Reverse unieważnia split horizon

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Routing Table

Routing Table

10.3.0
.0

S0
S0
S0
S0

1

1

2

2

10.1.0.0

10.2.0.0

10.4.0.0

0

Infinity

Routing Table

Routing Table

10.1.0.0

E0
S0
S0
S0

1

1

2

2

10.4.0.0

10.3.0.0

10.2.0.0

0

0

Routing Table

Routing Table

10.2.0.0

S0
S1
S1
E1

Possibly

Down

Possibly

Down

2

2

10.1.0.0

10.4.0.0

10.3.0.0

0

0

Poison

Reverse

Poison Reverse

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

– rozwiązanie

Routery utrzymują wpis w tablicach routingu o trasie

do sieci, która być może jest niedostępna, dzięki
czemu dają czas innym routerom do rekonfiguracji

Uaktualnij po

hold-down Time

Uaktualnij po

hold-down Time

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

A

A

B

B

C

C

10.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Uaktualnij po

hold-down Time

Uaktualnij po

hold-down Time

Hold-down Timers

background image

Protokoły „Distance vector” – Zmiana informacji o drogach

- rozwiązanie

Routery przesyłają uaktualnienia gdy nastąpią

zmiany w ich tabelach routingu

A

A

B

B

C

C

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S1

S0

E0

X

X

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

Network 10.4.0.0

is unreachable

10.1.0.0

Triggered Updates

background image

RIP (Routing Information Protocol) - RFC1058 –

protokół distance-

vector

Pole komendy

(8 bitów)

Format pakietu RIPv1

Numer wersji

(8 bitów)

Zarezerwowane (zera)

(16 bitów)

AFI (=2 dla IP)

(16 bitów)

Zarezerwowane (zera)

(16 bitów)

Adres IP (sieci)

(32 bity)

Zarezerwowane (zera)

(64 bity)

Metryka (116)

(32 bity)

AFI – Address Family Identifier (dla IP = 2)

Pole komendy

(8 bitów)

Pole komendy:
Request = 1
Response = 2

Numer wersji

(8 bitów)

Numer wersji:
1 dla IPv4
2 dla IPv6

Pola

mogą być

powtórzone w

zależności od

wielkości tablic

routingu (max 25

razy)

Pola zerowe – dla wstecznej
kompatybilności oraz przyszłego
wykorzystania

Maksy-

malnie

504

oktety

W przypadku większych tablic routingu
(powyżej 25 wpisów) musi być
przesłanych kilka pakietów RIP

Uwaga:

Pakiet RIP wykorzystuje UDP

background image

RIP - funkcjonowanie

W routerach są trzy zegary:

- uaktualnień (dla całego węzła)

- route-timeout (dla każdego wpisu w tablicy routingu)

- route-flush (dla każdego wpisu w tablicy routingu)

Bramka

R1

R2

R3

Co

ok. 30

sekund

każdy router
przesyła do sąsiadów
pakiet RIP zgodnie z
zegarem uaktualnień
(inny dla każdego
routera)

1

Zegar route-timeout ustawiany jest zazwyczaj na

180 sek

. – gdy router nie

otrzyma w tym czasie uaktualnienia trasy uznaje, że nie ma dostępu do sieci
wskazanej tą trasą.

Akcja inicjalizacja zegara route-flush (

zazwyczaj 90 sek

.), ustawienie

metryki routingu trasy = 16, ustawienie flagi zmiany trasy, rozesłanie
informacji o niedostępności sąsiadom, trasa jeszcze jakiś czas nie jest
usuwana

2

3
Jeśli po czasie 180s + 90s = 270s trasa jest wciąż nieważna usuwana jest z
tablicy

RIP przesyła kopie tablic routingu

background image

RIP – routing do bramy i między bramami

brama

172.31.253.5

Sieć

172.31.253

172.31.12.123

192.168.125.10

Sieć

192.168.125

Sieć

172.31.1

Wysyłany pakiet

IP docelowe:

192.168.125.10

Routery nie muszą mieć w

tablicach routingu drogi do

hostów ani routerów

wewnątrzsieciowych, ale tylko

do routerów brzegowych

(bram)

Router na podstawie adresu

określa sieć: 192.168.125 ->

sprawdza tabelę routingu,

Przesyła pakiet określonym

portem

Router bramowy sieci

192.168.125 wie dokąd

dalej przesłać pakiet

Uwaga:

Trasy do podsieci nie są

rozgłaszane na zewnątrz sieci
zawierającej tę podsieć. Brama traktuje
każdą podsieć jako indywidualną sieć.
Uaktualnienia RIP dokonywane są
pomiędzy najbliższymi sąsiadami w
obrębie każdej podsieci. Brama
rozgłasza pojedynczy numer sieci do
sąsiadujących z nią bram

1

2

3

0

Informacje o

innych bramach:

np. 192.168.125

0

Informacje

o bramie:

172.31.1

0

0

brama

Sieć

172.31.252

Router zakłada, że router

docelowy (brama) sobie poradzi

Adres 0.0.0.0 w tabeli określa drogę domyślną

Sieć autonomiczna

172.31

background image

RIP – zmiana topologii - zbieżność

172.31.1

192.68.253

192.168.130

192.168.125

A

B

D

C

192.168.130.2

192.168.125.9

192.68.253.20

Koszt =1

Koszt =1 Koszt =1

Koszt =1

Koszt =10

172.31.1

192.68.253

192.168.130

192.168.125

A

B

D

C

192.168.130.2

192.168.125.9

192.68.253.20

Koszt =1

Koszt =1 Koszt =1

Koszt =1

Koszt =10

Timeout D < Timeout C

Uszkodzenie linii

Uszkodzenie węzła

Trasy routingu przed uszkodzeniem

Trasy routingu po uszkodzeniu

RIP:
unieważnienie
trasy
(metryka
=16)

Zbieżność Jeśli wszystkie routery zgadzają się że

do 172.31 można dostać się przez B czas

zbieżności zależy od topologii sieci

Po timeoucie

roter C

stwierdza,

że

uszkodziło

się łącze

Efekt nieskończoności

background image

RIPv2 – RFC 1723

Rodzina adresów

w pierwszej części 0xffff oznacza,

że pakiet zawiera elementy

uwierzytelniania

background image

RIPng

background image

Tablica routingu, Format pakietu RIP - przykłady

Przykład tablicy routingu w routerze:

RIPv1: Command = Request

AFI

Metryka = 16

Adres multicastowy

background image

Format pakietu RIP - przykład

RIP działa na UDP

Porty UDP dla RIP = 520

Pola adresów sieci i metryk

Adres podsieci

Metryka - Odległość

RIPv1: Command = Response

Adres multicastowy

background image

Temat

Protokoły warstwy

transportu typu host-host:

TCP, UDP

Transmission Control

Protocol (TCP)

User Datagram

Protocol (UDP)

Transmission Control

Protocol (TCP)

User Datagram

Protocol (UDP)

Application

Transport

Internet

Data Link

Physical

Connection-
Oriented

Connectionless


Document Outline


Wyszukiwarka

Podobne podstrony:
Protokół TCP IP, R03 5
Protokol TCP IP R08 5 id 834124 Nieznany
Protokół TCP IP, R12 5
Protokół TCP IP, R11 5
Bezpieczeństwo protokołów TCP IP oraz IPSec
Protokół TCP IP, R13 5
Protokół TCP IP, R09 5
Protokół TCP IP nagłówki
SIECI KOMPUTEROWE Stos protokołów TCP IP
Bezpieczeństwo protokołów TCP IP oraz IPSec (2)
Protokół TCP IP Protokóły internet-u, edukacja i nauka, Informatyka
Protokół TCP IP
protokół tcp ip P5XCBJNJZYVPWLAHE2LUZNY6WE75MVPFAUP3ENY
Protokół TCP IP
Konfiguracja protokolu TCP IP, Dokumenty(1)
Protokoły TCP IP, Edukacja
,sieci komputerowe,Zestaw protokołów TCP IP (2)

więcej podobnych podstron