48
ISO/OSI TCP/IP SIECI KOMPUTEROWE

ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

  • Upload
    others

  • View
    4

  • Download
    1

Embed Size (px)

Citation preview

Page 1: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

ISO/OSI

TCP/IP

SIECI KOMPUTEROWE

Page 2: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Model referencyjny ISO/OSI

• Aplikacji

• Prezentacji

• Sesji

• Transportu

• Sieci

• Łącza danych

• Fizyczna

Każda warstwa odpowiada konkretnemu

fragmentowi procesu komunikacji, który

sam w sobie stanowi zamkniętą całość.

Dla każdej warstwy zdefiniowano

interfejsy do warstw sąsiednich. Przy

użyciu tego modelu można wyjaśnić, w

jaki sposób pakiet przechodzi przez

różne warstwy do innego urządzenia w

sieci, nawet jeśli nadawca i odbiorca

dysponują różnymi typami medium

sieciowego. Dzięki takiemu podejściu

uporządkowano reguły konstrukcji i

jednocześnie uproszczono proces

projektowania sieci, który w pewnym

sensie także uległ rozbiciu na „warstwy”.

Page 3: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Zalety modelu ISO/OSI

Do najważniejszych zalet modelu ISO/OSI należy zaliczyć:

podział procesu komunikacji sieciowej na mniejsze, łatwiejsze do

zarządzania elementy składowe;

utworzenie standardów składników sieci, dzięki czemu składniki te

mogą być rozwijane i obsługiwane przez różnych producentów;

umożliwienie wzajemnej komunikacji sprzętu i oprogramowania

sieciowego różnych producentów;

wyeliminowanie wpływu zmian wprowadzonych w jednej warstwie

na inne warstwy;

podział procesu komunikacji sieciowej na mniejsze składowe, co

pozwala na łatwiejsze jego zrozumienie.

Page 4: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji
Page 5: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji
Page 6: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

ISO/OSI vs. TCP/IP

Page 7: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji
Page 8: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Warstwy TCP/IP

aplikacji - dostarcza protokoły zdalnego dostępu i współdzielenia zasobów.

Aplikacje: FTP, SMTP, HTTP i wiele innych znajdują się i działają w

warstwie aplikacji.

"host-z-hostem„ - obejmuje dwa protokoły: protokół

sterowania transmisją (TCP – Transmission

Control Protocol) i protokół datagramów

użytkownika (UDP – User Datagram

Protocol).

internetu – definiuje pakiety, definiuje schemat adresowania

IP, kieruje pakietami, dokonuje fragmentacji i

ponownego składania przesyłanych danych.

Page 9: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji
Page 10: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji
Page 11: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Warstwa Fizyczna

Warstwa fizyczna określa wszystkie składniki niezbędne do obsługi

elektrycznego i/lub optycznego wysyłania i odbierania sygnałów.

Warstwa fizyczna składa się z czterech obszarów funkcjonalnych:

• mechanicznego,

• elektrycznego,

• funkcjonalnego,

• proceduralnego.

Funkcje warstwy fizycznej:

• zamiana danych znajdujących się w ramkach na strumienie binarne,

• wykonywanie takiej metody dostępu do nośnika, jakiej żąda warstwa

łącza danych,

• przesyłanie ramki danych szeregowo (bit po bicie) w postaci

strumieni binarnych.

Page 12: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Odległość pomiędzy punktami

Tłumienie sygnału

Zniekształcenie sygnału

Page 13: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Warstwa łącza danych

Warstwa łącza danych odpowiada za zadania związane z

wysyłaniem i odbieraniem danych.

Odpowiada za spakowanie danych do postaci ramek.

RAMAKA JEST STRUKTURĄ ZAWIERAJĄCĄ TAKĄ ILOŚĆ

INFORMACJI, KTÓRA WYSTARCZA DO PRZESŁANIA

DANYCH ZA POMOCĄ SIECI (LAN lub WAN) DO MIEJSCA

ICH PRZEZNACZENIA.

Page 14: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

RAMKI

Składniki typowej ramki:

Ogranicznik początku ramki (flaga; preambuła),

Adres źródłowy,

Adres docelowy,

Dane,

Sekwencja kontrolna ramki.

Page 15: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

CSMA/CD CSMA – wielodostęp do łącza sieci z badaniem stanu kanału

CD – funkcja wykrywania kolizji

Page 16: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

IEEE 802.x

802.1 – określa przegląd i architekturę niezbędną dla współdziałania

pomiędzy sieciami LAN i MAN. Stanowi podstawę pozostałych

inicjatyw Projektu 802. Określa standardy sterowania sieciami oraz

mostkowania sieci zgodnych z Projektem 802

802.2 – określa standard warstwy łącza danych (warstwy 2) dla

telekomunikacji i wymiany informacji między systemami LAN i WAN.

Specyfikacja 802.2 zapewnia kompatybilność wstecz niezbędną do

łączenia niestandardowych wersji Ethernetu z wersją 802.3

802.3 – nowy standard sieci LAN umożliwiający wielodostęp do łącza sieci

z badaniem stanu kanału i wykrywaniem kolizji (CSMA/CD).

Właściwą nazwą tego rodzaju sieci LAN jest: CSMA/CD, ale

powszechnie używana jest nazwa Ethernet

802.4 – określa standard warstwy fizycznej dla topologii magistrali sieci

LAN o metodzie dostępu do sieci na zasadzie przesyłania tokenu.

Taki rodzaj sieci nazywany jest Token Bus.

802.5 – ustanawia standardy dla metody dostępu Token Ring.

Page 17: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Sterowanie łączem logicznym w standardzie IEEE 802.2

Model OSI Warstwa OSI Model 802 IEEE

Aplikacji 7

Punkty dostępu do usług

protokołów warstw

wyższych

Prezentacji 6

Sesji 5

Transportu 4 Sterowanie łączem

logicznym

(warstwa LCC) Sieci 3

Łącza danych 2 Sterowanie dostępem do

nośnika (warstwa MAC) Fizyczna 1

Fizyczna

Page 18: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Ramka podstawowa Ethernet IEEE 802.3

7-oktetowa

Preambuła

1-oktetowy

Ogranicznik

początku

ramki

6-oktetowy

Adres

odbiorcy

6-oktetowy

Adres

nadawcy

2-oktetowe

pole

Długość

Pole Dane o

zmiennej

długości

>46 i <1500

4-oktetowa

Sekwencja

kontrolna

ramki

Page 19: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Umieszczenie TCP/IP w ramce ethernet

Adres

odbiorcy

Adres

nadawcy Protokół Dane

Suma

kontrolna

Długość Protokół Suma

kontrolna

IP

nadawcy

IP

odbiorcy Dane

Adres

TCP

nadawcy

Adres TCP

odbiorcy SEQ ACK Dane

Pakiet warstwy IP

Pakiet warstwy TCP

Page 20: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Format pakietu TCP

Page 21: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Port źródłowy – informuje odbiorcę, na którym porcie nadawca prowadzi wymianę informacji,

Port docelowy – numer portu odbiorcy, na podstawie którego podejmuje on decyzję o przesłaniu pakietu do

odpowiedniego zadania,

Numer sekwencyjny – pozycja, jaką zajmuje w przesyłanym strumieniu danych pierwszy bajt danych tego

pakietu; pozwala stwierdzić, czy nie nastąpiło zagubienie lub zduplikowanie pakietu –

powinien on wskazywać na pozycję następnego bajtu po ostatnio odebranym,

Numer potwierdzanego bajtu – numer o jeden większy od numeru sekwencyjnego ostatnio odebranego

bajtu; ważny tylko jeżeli znacznik ACK jest ustawiony (patrz pole Znaczniki),

Długość nagłówka – ilość 32-bitowych słów stanowiących opisywany tu nagłówek,

Zarezerwowane – bity o wartości stałej równej zeru; przewidziane do wykorzystania w przyszłości,

Znaczniki – sześć bitów służących do oznaczania specjalnych funkcji pakietu:

URG – oznacza, że pakiet zawiera tzw. pilne dane,

ACK – potwierdzenie,

PSH – funkcja Push,

RST – oznacza natychmiastowe przerwanie połączenia,

SYN – używany przy nawiązywaniu połączenia, oznaczający jednocześnie synchronizację

numerów sekwencyjnych nadawcy i odbiorcy,

FIN – zakończenie połączenia,

Rozmiar okna – podaje odbiorcy danego pakietu, ile bajtów może on wysłać nie oczekując na potwierdzenie;

ważne tylko gdy ustawiony znacznik ACK,

Suma kontrolna – 16-bitowa, dotyczy całego segmentu, służy do sprawdzania poprawności transmisji,

Wskaźnik do pilnych danych – wskazuje na pierwszy oktet następujący po bloku danych pilnych; ważny

jedynie gdy ustawiony znacznik URG,

Opcje – ciąg danych zmiennej długości mogący zawierać informacje o różnych dodatkowych funkcjach,

Wypełnienie – zawartość nieistotna; dopełnia nagłówek do całkowitej wielokrotności 32 bitów.

Nagłówek pakietu TCP ma długość co najmniej 20 oktetów

Page 22: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Nawiązywanie połączenia TCP

Moment nawiązania połączenia TCP jest nazywany

three-way handshake. Host inicjujący połączenie

wysyła pakiet zawierający segment TCP z

ustawioną flagą SYN (synchronize). Host

odbierający połączenie, jeśli zechce je obsłużyć,

odsyła pakiet z ustawionymi flagami SYN i ACK

(acknowledge – potwierdzenie). Inicjujący host

powinien teraz wysłać pierwszą porcję danych,

ustawiając już tylko flagę ACK (i gasząc SYN). Jeśli

host odbierający połączenie nie chce lub nie może

odebrać połączenia, powinien odpowiedzieć

pakietem z ustawioną flagą RST (reset).

Page 23: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Transmisja danych

i zakończenie połączenia

Transmisja danych

W celu weryfikacji wysyłki i odbioru TCP wykorzystuje sumy kontrolne i numery sekwencyjne

pakietów. Odbiorca potwierdza otrzymanie pakietów o określonych numerach sekwencyjnych

ustawiając flagę ACK. Brakujące pakiety są retransmitowane. Host odbierający pakiety TCP

defragmentuje je i porządkuje je według numerów sekwencyjnych tak, by przekazać

wyższym warstwom modelu OSI pełen złożony segment.

Zakończenie połączenia

Prawidłowe zakończenie połączenia może być zainicjowane przez dowolną stronę. Polega

ono na wysłaniu pakietu z ustawioną flagą FIN (finished). Pakiet taki wymaga potwierdzenia

flagą ACK. Najczęściej po otrzymaniu pakietu z flagą FIN, druga strona również kończy

komunikację wysyłając pakiet z flagami FIN i ACK. Pakiet taki również wymaga

potwierdzenia przez przesłanie ACK.

Dopuszcza się również awaryjne przerwanie połączenia poprzez przesłanie pakietu z flagą

RST (reset). Pakiet taki nie wymaga potwierdzenia.

Page 24: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Stany połączenia

Połączenie TCP może znajdować się w jednym z następujących stanów:

LISTEN

Gotowość do przyjęcia połączenia na określonym porcie przez serwer.

SYN-SENT

Pierwsza faza nawiązywania połączenia przez klienta. Wysłano pakiet z flagą SYN. Oczekiwanie na pakiet SYN+ACK.

SYN-RECEIVED

Otrzymano pakiet SYN, wysłano SYN+ACK. Trwa oczekiwanie na ACK. Połączenie jest w połowie otwarte (ang. half-

open).

ESTABLISHED

Połączenie zostało prawidłowo nawiązane. Prawdopodobnie trwa transmisja.

FIN-WAIT-1

Wysłano pakiet FIN. Dane wciąż mogą być odbierane ale wysyłanie jest już niemożliwe.

FIN-WAIT-2

Otrzymano potwierdzenie własnego pakietu FIN. Oczekuje na przesłanie FIN od serwera.

CLOSE-WAIT

Otrzymano pakiet FIN, wysłano ACK. Oczekiwanie na przesłanie własnego pakietu FIN (gdy aplikacja skończy nadawanie).

CLOSING

Połączenie jest zamykane.

LAST-ACK

Otrzymano i wysłano FIN. Trwa oczekiwanie na ostatni pakiet ACK.

TIME-WAIT

Oczekiwanie w celu upewnienia się, że druga strona otrzymała potwierdzenie rozłączenia. Zgodnie z RFC 793 połączenie

może być w stanie TIME-WAIT najdłużej przez 4 minuty.

CLOSED

Połączenie jest zamknięte.

Page 25: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Efekt polecenia netstat –a –p tcp -n

Page 26: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Koncepcja portów (gniazd) Ponieważ komputery obecnej doby pracują w systemach

wielozadaniowych, często zachodzi potrzeba, aby kilka zadań na

danym komputerze niezależnie od siebie komunikowało się przez sieć

opartą na protokołach TCP/IP. W związku z tym musi istnieć możliwość

rozróżnienia do którego zadania kierowane są przychodzące pakiety. W

tym celu protokół obsługuje tzw. porty.

W każdym pakiecie TCP informacja o źródłowym i docelowym adresie

IP uzupełniona jest o numer źródłowego i docelowego portu, będący

liczbą 16-bitową, co daje zakres 0-65535. Numery portu nie wpływają

na to, do którego urządzenia pakiet zostanie dostarczony, ale są

analizowane przez to urządzenie i na tej podstawie przekazywane do

zadania, które oczekuje informacji na danym porcie. Na każdym

wykorzystywanym porcie ustanawiane jest niezależne połączenie.

Rozwiązanie takie pozwala na multipleksację, czyli wykorzystanie

jednego kanału transmisyjnego do przesyłania wielu niezależnych

strumieni danych.

Page 27: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Format pakietu UDP

Page 28: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Protokół UDP

Protokół UDP jest, podobnie jak TCP, protokołem 4 warstwy, którego

wiadomości przesyłane są w datagramach protokołu IP. Jednak w

odróżnieniu od niego jest on bezpołączeniowy. Oznacza to, że nie

występuje tu procedura nawiązywania połączenia, a każdy datagram

traktowany jest jako odrębna całość. W związku z tym trasa każdego

datagramu wyznaczana jest niezależnie.

Protokół ten nie zapewnia niezawodności transmisji ani sterowania

natężeniem przepływu, jakie zapewniał TCP. Stosowany jest w

sytuacjach, gdzie za obsługę stanów awaryjnych odpowiadają wyższe

warstwy. Typowe przykłady jego wykorzystania to NFS (sieciowy system

plików) czy DNS (usługa podawania adresów IP na podstawie nazwy

przypisanej do urządzenia w sieci).

Page 29: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Zestawienie TCP i UDP

Główną różnicą funkcjonalną pomiędzy TCP a UDP jest niezawodność.

Protokół TCP charakteryzuje się wysoką niezawodnością, natomiast

UDP jest prostym mechanizmem dostarczania datagramów. Ta różnica

skutkuje ogromnym zróżnicowaniem zastosowań tych dwóch

protokołów warstwy host-z-hostem.

Page 30: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Format pakietu IP

Page 31: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Wersja – numer wersji protokołu; obecnie powszechnie stosowana jest wersja 4,

Długość – długość przedstawionego tu nagłówka w słowach 32-bitowych,

Typ – informacja o wymaganiach na jakość obsługi datagramu; zawiera poziom ważności pakietu oraz może

zawierać wymagania:

minimalizacji opóźnienia,

maksymalizacji przepustowości,

maksymalizacji niezawodności,

minimalizacji kosztu;

wymagania określone w polu typu obsługi są zazwyczaj ignorowane,

Długość całkowita– długość całego datagramu (nagłówka i danych razem) w bajtach,

Nr identyfikacyjny – numer nadawany pakietom w celu poprawnego złożenia ich po fragmentacji; każdy

fragment danego pakietu ma ten sam numer identyfikacyjny,

Znacznik– znaczniki bitowe, mogące oznaczać, że danego datagramu nie należy fragmentować lub że jest to

ostatni fragment,

Przesunięcie fragmentu – w przypadku fragmentacji podaje położenie danego fragmentu względem

początku pakietu przed fragmentacją w 64-bitowych jednostkach; w przypadku braku

fragmentacji równe zeru,

Czas życia (ang. Time To Live, TTL) – licznik, który jest zmniejszany o 1 za każdym przejściem datagramu

przez router, a gdy osiągnie zero, datagram jest usuwany; ma na celu zapobieganie

niekończącemu się przesyłaniu datagramów, które uległy zapętleniu; licznik powinien być tak

ustawiony, aby przy prawidłowej pracy sieci nie zdążył osiągnąć zera przed dostarczeniem

datagramu do celu,

Protokół – kod oznaczający protokół wyższej warstwy, którego dane zawarte są w polu danych tego

datagramu; mogą być to protokoły TCP, UDP, ICMP i inne,

Suma kontrolna nagłówka – potwierdza nienaruszenie danych zawartych w omawianym tu nagłówku; gdy

nie odpowiada zawartości nagłówka, datagram jest w całości odrzucany,

Adres źródłowy IP – 32-bitowy adres węzła nadającego dany datagram,

Adres docelowy IP – adres węzła, do którego skierowany jest dany datagram,

Opcje – pole o zmiennej długości, mogące zawierać opcje dotyczące sposobu wyznaczania trasy,

bezpieczeństwa, znakowania czasu przybycia datagramu do routerów i inne,

Wypełnienie – dopełnia długość nagłówka do najbliższej wielokrotności 32 bitów; wielkość tego pola zależy

od wielkości pola opcji.

Page 32: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Zmiana wartości TTL w zależności

od „odległości” serwera od hosta

Page 33: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Wartości pola protokół dla pakietu IPv4

ICMP - (ang. Internet Control Message Protocol) - protokół

komunikacyjny sterowania siecią Internet

IGMP - (ang. Internet Group Message Protocol) - protokół

zarządzania grupami Internetowymi

TCP - (ang. Transmission Control Protocol) - protokół

sterujący transmisją

EGP - (ang. Exterior Gateway Protocol) - zewnętrzny

protokół bramowy

UDP - (ang. User Datagram Protocol) - protokół

datagramów użytkownika

ARP - (ang. Address Resolution Protocol) – protokół

rozróżniania adresów

Page 34: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Protokół ARP

ARP (ang. Address Resolution Protocol) - w sieciach

komputerowych jest to metoda znajdowania adresu

sprzętowego hosta, gdy dany jest adres warstwy sieciowej.

Zdefiniowany został w RFC 826

Jest wykorzystywany przy różnych typach sieci, zarówno w znaczeniu warstwy

sieciowej, jak i niższych warstw modelu OSI. Oznacza to, iż ARP nie ogranicza

się jedynie do sieci typu Ethernet przy wykorzystaniu protokołu IPv4, gdzie na

podstawie adresu IP odnajduje sprzętowy adres MAC. ARP jest wykorzystywane

w takich technologiach LAN jak Token Ring, FDDI, 802.11 oraz w technologiach

sieci rozległych, jak IP over ATM.

W przypadku sieci wykorzystujących adresację MAC oraz protokół IP w

wersji 4 ARP przyporządkowuje 32-bitowe adresy IP fizycznym, 48-bitowym

adresom MAC (przypisanym m.in. do kart sieciowych).

Page 35: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Działanie ARP:

Utworzenie pakietu z szukanym adresem sieciowym.

Wysłanie pakietu w obrębie danej sieci.

Wysłany pakiet odbierają wszystkie hosty podłączone

do sieci. Jako jedyny odpowiada host o szukanym

adresie sieciowym - przesyła pakiet z odpowiedzią zawierającą adres sprzętowy.

Host szukający po odebraniu pakietu z szukanym adresem sprzętowym zapisuje go w

tablicy ARP, dzięki czemu nie musi później szukać jeszcze raz tego samego adresu.

Często po podłączeniu do sieci host rozsyła zapytanie ARP o własny adres. Odpowiedzi

nie będzie (gdyż nie mogą być w danej sieci dwa komputery o tym samym adresie

warstwy sieciowej), ale każdy inny host może zapisać w pamięci podręcznej dane o

nowym hoście przyłączonym do sieci.

Page 36: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

+ Bity 0 - 7 8 - 15 16 - 31

0 Typ warstwy fizycznej (HTYPE) Typ protokołu wyższej warstwy

(PTYPE)

32

Długość

adresu

sprzętowego

(HLEN)

Długość

protokołu

wyższej

warstwy

(PLEN)

Operacja (OPER)

64 Adres sprzętowy źródła (SHA)

? Adres protokołu wyższej warstwy źródła (SPA)

? Adres sprzętowy przeznaczenia (THA)

? Adres protokołu wyższej warstwy przeznaczenia (TPA)

Format komunikatu ARP

Page 37: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Zatruwanie tablicy ARP przez człowieka w środku

(ang. the ARP poisoning man in the middle attack)

1. Karta sieciowa w komputerze źródłowym wysyła zapytanie ARP: Kto ma adres IP

192.168.1.34?

2. Karta sieciowa w komputerze crackera o adresie MAC 00:C0:DF:01:AE:43 wysyła

odpowiedź: Hej to ja!

3. W komputerze nadawcy do dynamicznej tablicy ARP trafia wpis: IP 192.168.1.34 ->

MAC 00:C0:DF:01:AE:43.

4. Wszystkie pakiety z docelowym adresem IP 192.168.1.34 są przez warstwę łącza

danych tłumaczone na pakiety z docelowym adresem MAC 00:C0:DF:01:AE:43 i trafiają

do komputera crackera.

5. Karta sieciowa w komputerze crackera wysyła pytanie: Kto ma adres IP 192.168.1.34,

żeby wiedzieć kto naprawdę powinien dostać przechwycone pakiety.

6. Karta sieciowa w komputerze docelowym o adresie MAC 00:07:95:03:1A:7E wysyła

odpowiedź: Hej to ja!

7. Wszystkie pakiety z docelowym adresem IP 192.168.1.34 cracker wysyła do ich

prawdziwego odbiorcy z adresem MAC 00:07:95:03:1A:7E.

W sytuacji, gdy atakowana maszyna posiada już poprawny adres warstwy łącza danych dla

celu, atakujący może podmienić go, wysyłając odpowiednio spreparowaną "odpowiedź",

mimo iż atakowana maszyna nie wysłała zapytania. Spreparowana odpowiedź zostanie

zaakceptowana, a wpis w tablicy ARP atakowanej maszyny - zmieniony.

Page 38: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Format komunikatu ICMP

Najczęstsze wartości pola Typ

Destination unreachable – oznaczający, że dostarczenie wiadomości do celu było

niemożliwe; przyczyną tej sytuacji może być nieprawidłowy adres docelowy lub brak trasy

prowadzącej do celu,

Echo request/Echo reply – ta para wiadomości stosowana jest przy wykonywaniu

procedury ping, polegającej na wysłaniu żądania (Echo request) do urządzenia w sieci i

oczekiwaniu na jego odpowiedź (Echo reply), co pozwala sprawdzić dostępność urządzenia

oraz czas transmisji pakietów do niego i z powrotem,

Redirect – jest to polecenie zmiany trasy – w pakiecie Redirect wskazany jest adres routera,

przez który ma być kierowany ruch na dany adres,

Time exceeded – pakiet tego typu jest wysyłany, gdy pole czasu życia (TTL) pakietu IP

osiągnęło zero, w wyniku czego został on odrzucony.

Page 39: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Protokół ICMP

Komunikaty ICMP wysyłają zwykle bramy lub hosty.

Najczęstsze powody wysyłania tych komunikatów to: zbytnie

obciążenie routera lub hosta - wysyłany jest komunikat ICMP,

że należy zwolnić prędkość przesyłania komunikatów, bo

host nie nadąża je przetwarzać

Protokół ICMP (ang. Internet Control Message Protocol)

jest protokołem warstwy sieci. Służy on do kontroli

poprawności przesyłania pakietów protokołem IP.

Mimo że jest to protokół tej samej warstwy co IP, jego

wiadomości są umieszczane w pakietach IP.

Page 40: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Przy przesyłaniu komunikaty ICMP są poddawane

enkapsulacji do postaci pakietów IP, a następnie do postaci

ramki warstwy drugiej. Pod tym względem stanowią one

integralną część danych pakietu IP. Komunikat ICMP składa

się z nagłówka ICMP oraz danych ICMP. Ze względu na

zawodny charakter protokołu IP w momencie zaginięcia

datagramu przenoszącego komunikat ICMP nie zostanie to

zdiagnozowane. Wysyłanie komunikatów o błędach

powodowałoby występowanie znacznego ruchu w sieci.

Struktura datagramu ICMP jest odmienna od struktury

datagramu IP. Wspólny jest tylko sposób adresacji.

Page 41: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

W zależności od przyczyny błędu w polu „Kod" pojawiają się wartości

liczbowe powiązane z następującymi usterkami:

0 - sieć niedostępna

1 - host niedostępny

2 - protokół niedostępny

3 - port niedostępny

4 - niezbędna fragmentacja, ustawiona wartość DF (także w przypadku

niemożliwości podzielenia pakietu)

5 - nie powiodło się określenie trasy przez nadawcę (ang. source route)

6 - nieznana sieć docelowa

7 - nieznany host docelowy

8 - host źródłowy odizolowany

9 - komunikacja z siecią docelową zablokowana przez administratora

10 - komunikacja z hostem docelowym zablokowana przez administratora

11 - sieć niedostępna dla tego typu usługi

12 - host niedostępny dla tego typu usługi

Page 42: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Komunikaty sterujące ICMP

zmiana trasowania (przekierowanie),

synchronizacja zegarów oszacowanie czasu

tranzytu,

żądanie przesłania informacji,

wykrywanie routera,

wywołanie routera

Page 43: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Jeśli router nie może dostarczyć pakietu IP do odbiorcy

zgłasza problem w postaci komunikatu ICMP do nadawcy.

Page 44: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Jeśli adresat odbierze żądanie echa ICMP, utworzy odpowiedź (echo reply) w

celu wysłania jej z powrotem do nadawcy. Jeśli nadawca odbierze odpowiedź

(echo reply), to uzyska potwierdzenie, że odbiorca jest dostępny. Proces ten

inicjuje się poleceniem ping.

Page 45: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Tłumienie źródła

Page 46: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Zmiana trasowania (przekierowanie)

Page 47: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Protokół IGMP

Page 48: ISO/OSI TCP/IP - IT WIPit.wip.pw.edu.pl/data/uploads/sieko/sieko_model_sieci.pdf · ISO/OSI TCP/IP SIECI KOMPUTEROWE . Model referencyjny ISO/OSI •Aplikacji •Prezentacji •Sesji

Multicast to sposób dystrybucji informacji, dla którego liczba odbiorców może

być dowolna. Odbiorcy są widziani dla nadawcy jako pojedynczy grupowy

odbiorca (host group) dostępny pod jednym adresem dla danej grupy

multikastowej. Multicast różni się od unicastu zasadą działania i wynikającą stąd

efektywnością. W transmisji multicastowej po każdym łączu sieciowym

dystrybuowana informacja jest przekazywana jednokrotnie, podczas gdy w

unicastowej dystrybucji informacji do n odbiorców po niektórych łączach

biorących udział w transmisji komunikat może być w najgorszym razie

przesyłany nawet n razy. Wynika to z tego, że w transmisji unicastowej każdy

komunikat ma przypisany dokładnie jeden adres docelowy, który identyfikuje

jednoznacznie jeden węzeł sieci. Tak więc nawet jeśli dany komunikat po

drodze do dwóch różnych węzłów sieci wykorzystuje to samo łącze, wysłane

muszą zostać dwa niezależne komunikaty (o tej samej treści i innym adresie

docelowym). W transmisji multicastowej unika się wielokrotnego wysyłania tego

samego komunikatu do wielu odbiorców (na przykład dzięki adresowaniu

grupowemu, tzn. posługiwaniu się adresami, które nie identyfikują pojedynczych

węzłów sieci, lecz ich grupy).