TCP/IP

Transkrypt

TCP/IP
Programowanie
sieciowe
Wykład 3: TCP/IP
mgr Marcin Raniszewski
mgr inŜ. Paweł Kośla
Łódź, 2009
1
Plan wykładu
Wprowadzenie
Cechy TCP/IP
Model DoD
Enkapsulacja/dekapsulacja danych
WaŜniejsze protokoły TCP/IP
Adresy IP
Protokoły, porty i gniazda
Typy przesyłania komunikatów
2
Literatura dodatkowa
„TCP/IP – administracja sieci” Craig Hunt,
wyd. Read Me (RM), 2003 (wydanie 3)
„TCP/IP. Biblia” Rob Scrimger, Paul LaSalle,
Clay Leitzke, Mridula Parihar, Meeta Gupta,
wyd. Helion, 2002
3
Wprowadzenie – protokół
Protokół - sformalizowane zasady postępowania.
Przykład:
W relacjach międzynarodowych protokoły dyplomatyczne pozwalają
na minimalizację problemów, które mogłyby wystąpić na skutek róŜnic
kulturowych. Protokół umoŜliwia więc uniknięcie nieporozumień niezaleŜnie od zwyczajów poszczególnych narodów, kaŜdy wie jak się
zachować i jak zinterpretować zachowanie innych ludzi.
Kiedy porozumiewają się dwa systemy naleŜy zdefiniować zestaw
reguł rządzących wymianą informacji między nimi.
4
Wprowadzenie - RFC
Większość informacji o TCP/IP publikowana jest w formie
dokumentów RFC (Request For Comments).
W RFC moŜna znaleźć ostatnie wersje specyfikacji wszystkich
standardowych protokołów TCP/IP.
KaŜdy administrator sieci powinien zapoznać się z dokumentami
RFC.
Niektóre z nich zawierają łatwe do zrozumienia praktyczne rady i
wskazówki.
Niektóre jednak zawierają specyfikację implementacji protokołu i
napisane są hermetycznym językiem, charakterystycznym dla
protokołu wymiany danych.
5
Wprowadzenie - TCP/IP
Nazwa TCP/IP odnosi się do całego zestawu protokołów
komunikacyjnych. Zestaw wziął swoją nazwę od dwóch z nich:
protokołu kontroli transmisji (Transmission Control Protocol, TCP)
protokołu internetowego (Internet Protocol, IP)
Choć w zestawie znajduje się więcej protokołów te dwa powyŜsze są
najwaŜniejsze.
TCP/IP udostępnia metody transmisji informacji pomiędzy
poszczególnymi hostami w sieci, obsługując pojawiające się błędy oraz
tworząc wymagane do transmisji informacje dodatkowe.
6
Cechy TCP/IP
Otwarty standard protokołu, dostępny bezpłatnie i stworzony
niezaleŜnie od platformy sprzętowej czy programowej. Idealny standard
do łączenia wielu róŜnych komputerów i systemów operacyjnych,
NiezaleŜność od fizycznej, sprzętowej warstwy sieci, słuŜy do integracji
róŜnych sieci,
Jednolity system adresowania, pozwalający w identyczny sposób,
zaadresować kaŜde urządzenie w sieci, nawet tak duŜej jak
ogólnoświatowy Internet,
Standaryzowany protokół wysokiego poziomu, implementujący wspólne
i ogólnodostępne usługi sieciowe.
7
Model DoD a model OSI
8
Model DoD - enkapsulacja
Dane wysyłane przez aplikację do sieci zaczynają wędrować w dół stosu
protokołów.
Protokół kaŜdej warstwy zostawia po sobie ślad w wędrującej wzdłuŜ stosu
paczce przesyłanych danych. Te informacje kontrolne, nazywane
nagłówkami (poniewaŜ dodawane są na początku danych), zapewniają
poprawność dostarczenia paczki.
KaŜda warstwa traktuje jako dane wszystkie informacje otrzymane z
warstwy wyŜszej i umieszcza na ich początku swój nagłówek.
Takie dodawanie nagłówków przez kolejne warstwy nazywa się
enkapsulacją, czyli opakowywaniem.
9
Model DoD - dekapsulacja
Po odebraniu danych przez host docelowy, odbywają one drogę w
górę stosu.
KaŜda z warstw odcina swój nagłówek zanim przekaŜe paczkę do
warstwy wyŜszej.
Informacja wędrująca do góry stosu, odebrana z niŜszej warstwy
traktowana jest jako nagłówek i dane.
Takie usuwanie nagłówków przez kolejne warstwy nazywa się
dekapsulacją, czyli rozpakowywaniem.
10
Podstawowe rodziny protokołów
WyróŜniamy trzy podstawowe rodziny protokołów sieciowych:
• NetBEUI – opracowany w 1985 r. przez firmę IBM. UŜywany w
małych, odizolowanych sieciach LAN typu peer-to-peer.
• IPX/SPX – opracowany w latach 70-tych przez firmę Novell. Jest
protokołem routowalnym, dlatego moŜe być wykorzystywany do
budowy złoŜonych sieci.
• TCP/IP – najczęściej stosowany zestaw protokołów sieciowych.
Łączą komputery pracujące na róŜnych platformach sprzętowosystemowych.
11
Podstawowe rodziny protokołów
TCP/IP
aplikacji
FTP
IPX/SPX
Telnet
POP3
HTTP
SMTP
TFTP
NCP
NetBEUI
SAP
SMB
NetBIOS
transportowa
TCP
sieciowa
IPX
NetBEUI
NDIS/NIC
NDIS/NIC
IGMP
IP
ICMP
dostępu do sieci
Ethernet
SPX
UDP
ARP
RARP
PPP - Point to Point Protocol
(R)ARP – (Reverse) address resolution protocol
ICMP - Internet control message protocol
IGMP - Internet Group Management Protocol
SMPT - Simple Mail Transfer Protocol
POP3 - Post Office Protocol
TFTP - Trivial File Transfer Protocol
NetBIOS - Network Basic Input/Output
DHCP
PPP
NetBEUI - NetBIOS Extended User Interface
NCP - NetWare Core Protocol
SAP - Service Advertising Protocol
SPX - Sequenced Packet Exchange
IPX - Internetwork Packet Exchange
SMB - Server Message Block
12
Struktury danych w modelu DoD
13
Warstwa dostępu do sieci
NajniŜsza warstwa,
Protokoły umoŜliwiają systemowi przekazanie danych innym urządzeniom
dołączonym do sieci komputerowej,
Definiują sposób uŜycia sieci w celu wysłania lub odebrania
datagramu IP,
Znają cechy sieci fizycznej, do której dołączony jest system
(struktura ramek, sposób adresowania),
Odpowiednik warstw: łącza danych i fizycznej z modeli OSI,
Opakowanie datagramów IP w ramki akceptowane przez sieć oraz
przekształcanie adresów IP na fizyczne adresy urządzeń w sieci,
RFC 826, RFC 894.
14
Warstwa sieciowa (Internetu)
Definiuje format datagramu,
Definiuje schemat adresowania w Internecie,
Przesyła dane pomiędzy warstwą dostępu do sieci a warstwą
transportową,
Routuje datagramy,
Dokonuje fragmentacji i ponownej defragmentacji datagramów.
15
Protokół IP
NajwaŜniejszym protokołem komunikacyjnym warstwy sieciowej jest
protokół IP (RFC 791)
Cechy:
Protokół bezpołączeniowy (nie wysyła i nie przyjmuje Ŝadnych informacji
kontrolnych, które przed wysłaniem danych ustanawiałyby połączenie
między odbiorcą a nadawcą),
Brak korekcji błędów,
Nie sprawdza czy dane zostały prawidłowo odebrane,
Zajmuje się adresowaniem datagramu,
Niezawodność transmisji danych jest zapewniania przez protokoły
warstw wyŜszych, znajdujących się w hierarchii powyŜej warstwy
sieciowej.
16
Format datagramu IP
Wersja – wersja protokołu IP (IPv4)
IHL (Internet Header Length) - długość nagłówka w 32-bitowych słowach (min. 5)
Typ usługi - nadawanie priorytetów datagramom (rzadko uŜywane)
Długość całkowita - długość datagramu (nagłówek + dane) w oktetach (max. 65535 oktetów)
Identyfikator - do numerowania datagramów
Czas Ŝycia (TTL) - jeśli osiągnie 0 to datagram nie jest przekazywany (router zmniejsza wartość tego pola o 1)
Protokół - określa protokół wyŜszej warstwy
17
Warstwa transportowa
Udostępnienie interfejsu pomiędzy warstwami niŜszymi (sieciową i
dostępu do sieci) a warstwą aplikacji,
Dostarczenie danych od nadawcy do odbiorcy,
Ma moŜliwość zapewnienia wiarygodnych usług połączeniowych,
Podział duŜych komunikatów warstwy aplikacji na segmenty lub paczki
(fragmentacja).
Dwa waŜne protokoły:
- protokół kontroli transmisji (Transmission Control Protocol, TCP)
- protokół pakietów uŜytkownika (User Datagram Protocol, UDP).
18
Protokół TCP
Protokół połączeniowy,
Niezawodne i wiarygodne przesyłanie danych
(mechanizm potwierdzenia z retransmisją, wysyłanie danych dopóki nie
zostanie otrzymana wiadomość, Ŝe dane przeszły bezbłędnie),
Wiarygodny przesył danych to taki, w którym segmenty są dostarczone do miejsca
przeznaczenia w kolejności, w jakiej zostały wysłane, bez uszkodzeń i strat.
Kontrola przepływu, korekcja błędów,
Skierowany na strumieniową (jednolitą) transmisję danych
(przesył duŜych ilości ciągłych informacji – np. pliki)
RFC 793.
19
Format protokołu TCP
Przesunięcie - długość nagłówka liczona w 32-bitowych słowach
Numer sekwencji - numer porządkowy segmentu przydzielony podczas podziału komunikatu
na segmenty.
Numer potwierdzenia - numer następnego segmentu, który powinien dotrzeć do odbiorcy
Flagi: URG, ACK, PSH, RST, SYN, FIN
Okno - wielkość okna - ilość oktetów danych jakie nadawca jest zdolny przyjąć
20
“three-way handshake”
Ustanawianie połączenie w TCP jest trójetapowe (three-way
handshake):
1. Nawiązujący połączenie host A wysyła do hosta B segment z
ustawionym bitem SYN (synchronizacji). Segment ten informuje
host B o tym, Ŝe host A chce nawiązać połączenie oraz informuje
jaki będzie początkowy numer sekwencji przesyłania danych.
host A
host B
21
“three-way handshake”
2. Host B odpowiada hostowi A segmentem z ustawionymi bitami
ACK (potwierdzenie) i SYN, potwierdzając odbiór segmentu od A
(pole numer potwierdzenia) i informując go, od jakiego numeru
sekwencyjnego będzie odliczał wysyłane przez siebie dane.
host A
host B
22
“three-way handshake”
3. Na koniec host A wysyła segment potwierdzający odbiór pakietu od
B, zawierający pierwsze przesyłane dane.
host A
host B
23
Transmisja danych w TCP
TCP interpretuje wysyłane dane jako ciągły strumień bajtów, a nie
jako niezaleŜne pakiety. Z tego powodu istotne jest zachowanie
kolejności (pola numer sekwencyjny i numer potwierdzenia).
Segmentom nadawane są kolejne numery sekwencyjne.
Nadawca czeka na potwierdzenie otrzymania przez odbiorcę
segmentów. Jeśli nie otrzyma potwierdzenia, wysyła je ponownie.
Odbiorca informuje nadawcę o otrzymaniu segmentu poprzez
wysłanie segmentu z ustawionym bitem ACK i odpowiednim
numerem sekwencji segmentu na polu potwierdzenia. W polu
„okno” wysyła teŜ liczbę segmentów, które jeszcze moŜe przyjąć.
Standard nie nakazuje potwierdzania kaŜdego segmentu. Jeśli
odbiorca wyśle potwierdzenie N, oznacza to, Ŝe otrzymał
wszystkie segmenty do N-1 włącznie.
Nadawca moŜe wysyłać segmenty tak długo, dopóki sumaryczna
wartość wysłanych danych nie przekroczy rozmiaru okna.
24
Transmisja danych w TCP
Rozmiar okna = “3”
25
Transmisja danych w TCP
26
Przesuwne okno
Mechanizm okna zapewnia:
• niezawodną transmisję,
• lepsze wykorzystanie dostępnego pasma sieci,
• kontrolę przepływu
odbiorca moŜe opóźnić wysłanie potwierdzenia znając pojemność swych
buforów i wielkość okna transmisyjnego.
Wysyłanie danych:
- segmenty wysłane
1
1
- segmenty nie wysłane
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
ACK nr_seq=6
ACK nr_seq=8
27
Przesuwne okno
Odbieranie danych:
1
- segmenty odebrane
1
- segmenty jeszcze nie odebrane
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
Nadawca wysłał 6 kolejnych segmentów
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
Nie wszystkie jednak dotarły
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
ACK nr_seq=8
Nadawca zaczyna retransmisję od 8 segmentu.
Mimo odebrania segmentu 9 i 11 dotrą one po raz
drugi. Jednak dzięki oknu nie będą zdublowane.
28
Kończenie połączenia
Po zakończeniu transmisji hosty wymieniają cztery segmenty:
1. Host A wysyła segment z ustawionym bitem FIN (koniec danych)
2. Host B wysyła potwierdzenie odebrania tego segmentu
3. Host B wysyła segment z ustawionym bitem FIN
4. Host A wysyła potwierdzenie odebrania tego segmentu
Sygnały 2 i 3 mogą być wysłane jednym segmentem.
29
Protokół UDP
Protokół bezpołączeniowy,
Skierowany na przesyłanie wiadomości, gdzie pojedynczy pakiet stanowi
integralną informację.
Nie ma narzutu na nawiązywanie połączenia i śledzenie sesji (w
przeciwieństwie do TCP),
Nie ma teŜ mechanizmów kontroli przepływu i retransmisji - zawodny
Korzyścią płynącą z takiego uproszczenia budowy jest większa szybkość
transmisji danych i brak dodatkowych zadań, którymi musi zajmować się
host posługujący się tym protokołem,
Często uŜywany w takich zastosowaniach jak wideokonferencje,
strumienie dźwięku w Internecie i gry sieciowe, gdzie dane muszą być
przesyłane moŜliwie szybko, a poprawianiem błędów zajmują się inne
warstwy modelu OSI,
RFC 768.
Porównanie do poczty: listy mogą nie dojść do adresata,
lub dotrzeć w innej kolejności niŜ zostały wysłane.
30
Format UDP
Długość – wielkość pakietu (nagłówek + dane) w oktetach
31
Warstwa aplikacji
NajwyŜszy poziom, w którym pracują uŜyteczne dla człowieka
aplikacje takie jak, np. serwer WWW czy przeglądarka internetowa,
Obejmuje ona zestaw gotowych protokołów, które aplikacje
wykorzystują do przesyłania róŜnego typu informacji w sieci.
Najbardziej znane i najczęściej implementowane protokoły aplikacji to:
telnet - protokół terminala sieciowego, umoŜliwiający zdalne
zalogowanie się i pracę w odległym systemie,
FTP - protokół transferu plików, który umoŜliwia zapisanie w
odległym systemie lub odczytanie z niego wskazanych plików,
SMTP - podstawowy protokół przesyłania poczty odpowiedzialny za
dystrybucję poczty elektronicznej,
HTTP - odpowiedzialny za przesyłanie w sieci stron WWW.
32
Kiedy TCP a kiedy UDP?
Protokołu TCP uŜywamy, gdy zaleŜy nam na pewnym dostarczaniu
wiadomości. TakŜe tam, gdzie kolejność dostarczaniu segmentów
ma kluczowe znaczenie – duŜe pliki dzielone na mniejsze
segmenty.
Protokołu UDP uŜywamy, jeśli bardziej zaleŜy nam na szybkości niŜ
niezawodności, a zagubienie pojedynczego pakietu nie wpłynie na
krytyczny błąd naszej aplikacji.
33
Adresowanie
Do komunikacji potrzebna jest moŜliwość zidentyfikowania i
odnalezienia siebie nawzajem.
KaŜdemu komputerowi w sieci TCP/IP trzeba przypisać unikatowy
identyfikator, czyli adres IP. Adres ten naleŜy do warstwy 3 modelu
OSI i pozwala jednemu komputerowi w sieci zlokalizować inny.
192.168.5.45, 10.0.15.158, 212.178.45.4
Wszystkie komputery mają takŜe unikatowy adres fizyczny zwany
adresem MAC. Adresy te są nadawane przez producentów kart
sieciowych i naleŜą do warstwy 2 modelu OSI.
00-50-56-C0-0A-01, 00-50-56-C4-00-01
34
Adres IPv4
Adres IP jest 32-bitową sekwencją zer i jedynek.
W celu ułatwienia korzystania z adresów IP zwykle zapisuje się je
w postaci czterech liczb dziesiętnych oddzielonych kropkami. Ten
sposób zapisywania adresów jest nazywany notacją dziesiętną
kropkową.
KaŜdy adres IP składa się z dwóch części. Jedna część identyfikuje
sieć, do której komputer jest przyłączony, a druga identyfikuje ten
komputer w sieci docelowej.
sieć
192.168.15.20
host
35
Klasy adresów
Adresy IP są podzielone na klasy, które definiują wielkie, średnie i
małe sieci.
Adresy klasy A są przypisywane sieciom wielkim.
sieć
01010100.00001010.10111111.00000010
84
.
10
. 191
.
2
host
Adresy klasy B są przeznaczone dla sieci średnich.
sieć
10011100.11101010.11110101.11010000
156
. 234
. 245
. 208
host
Adresy klasy C są przeznaczone dla sieci małych.
sieć
11000011.01110101.11010111.00000101
195
. 117
. 215
.
5
host
Podział ten jest nazywany adresowaniem klasowym.
Bit lub zestaw bitów na początku kaŜdego adresu określa jego klasę.
36
Klasy adresów
Klasa adresu IP:
Zakres adresu IP:
37
Klasa D
Klasa D została utworzona w celu umoŜliwienia rozsyłania
grupowego (multicast) przy uŜyciu adresów IP.
Adres rozsyłania grupowego jest unikatowym adresem sieciowym,
który kieruje pakiety o tym adresie docelowym do zdefiniowanej
wcześniej grupy adresów IP.
Dzięki temu pojedynczy komputer moŜe przesyłać jeden strumień
danych równocześnie do wielu odbiorców.
Wartość pierwszego oktetu naleŜy do zakresu od 11100000 do
11101111, czyli od 224 do 239 dziesiętnie.
38
Adres rozgłoszeniowy
Adres rozgłoszeniowy słuŜy do wysyłania danych do wszystkich
urządzeń w danej sieci.
Adresy rozgłoszeniowe mają część identyfikującą hosta wypełnioną
jedynkami (przy zapisie adresu w systemie dwójkowym).
Przykład:
sieć 176.10.0.0 - ostatnie 16 bitów stanowi pole hosta, czyli część
identyfikującą go. Pakiet rozgłoszeniowy wysyłany do wszystkich urządzeń
w tej sieci zawierałby adres docelowy 176.10.255.255
sieć
10110000.00001010.11111111.11111111
176
.
10
. 255
. 255
host
39
Protokoły
Dane, które zostały juŜ przesłane przez sieć i odebrane przez
określony system, muszą jeszcze zostać dostarczone do
właściwego uŜytkownika lub procesu.
System musi potrafić z danych pochodzących z wielu aplikacji
stworzyć struktury odpowiadające kilku protokołom transportowym
a następnie przekształcić je na struktury właściwe dla warstwy IP.
Przekształcanie danych z wielu źródeł na pojedynczy strumień
danych nazywa się multipleksowaniem.
Dane otrzymane z sieci muszą zostać zdemultipleksowane,
podzielone i dostarczone do wielu procesów.
OE
TC
Bat
eMule
CuteFTP
GG
FTP
TFTP
SMTP
TCP
UDP
IP
40
Protokoły i porty
Do identyfikacji protokołów warstwy transportowej (TCP czy UDP?)
IP uŜywa numerów protokołów.
Protokoły transportowe do określania aplikacji wykorzystują numery
portów.
Niektóre numery protokołów i portów są zarezerwowane dla tzw.
dobrze znanych usług. Mianem tym określa się standardowe,
powszechnie uŜywane protokoły sieciowe, takie jak FTP czy telnet.
Numery protokołów i portów przyporządkowane dobrze znanym
usługom zdefiniowane są w RFC 1700.
41
Numer protokołu – datagram IP
Numer protokołu to jednobajtowa liczba w trzecim słowie nagłówka
datagramu. Jej wartość wskazuje protokół w warstwie powyŜej IP, do
którego dane powinny zostać przekazane.
42
Numery portów
Warstwa transportowa przekazuje dane otrzymane od IP do
odpowiednich procesów aplikacji.
Procesy te (zwane teŜ usługami sieciowymi) identyfikowane są według
16-bitowych numerów portów.
Port jest adresem wewnętrznym, zapewnia interfejs pomiędzy aplikacja
a protokołem transportowym
Numer portu źródłowego, odpowiadający procesowi, który wysłał dane
oraz numer portu docelowego, odpowiadający procesowi, który ma
dane otrzymać, są zawarte w pierwszym słowie nagłówka kaŜdego
segmentu TCP i pakietu UDP.
Numery portów mają przydzielone następujące zakresy:
numery poniŜej 1024 są uwaŜane za dobrze znane numery portów,
1024 – 49151 zarejestrowane porty. Mogą z nich korzystać programy i
procesy zwykłych uŜytkowników,
49152 – 65535 porty dynamiczne i/lub prywatne
zarejestrowane numery portów to takie, które zostały zarejestrowane dla
określonych aplikacji producenta;
Host źródłowy dynamicznie przydziela numery portów źródła
43
rozpoczynającego transmisję. Numery te są zawsze większe od 1023.
Numery portów
44
Numery portów – segment TCP
45
Numery portów – pakiet UDP
46
Gniazda
Gniazdo (socket) jest mechanizmem komunikacji miedzy procesami,
słuŜącym jako punkt końcowy połączenia,
Stanowi kombinację adresu IP oraz numeru portu,
Gniazdo jednoznacznie określa kaŜdy proces sieciowy w Internecie.
Czasem terminy gniazdo i numer portu uŜywane są zamiennie.
TakŜe dobrze znane usługi sieciowe określane są mianem dobrze
znanych gniazd.
RozróŜniamy:
Gniazda potokowe (TCP)
Gniazda datagramowe (UDP)
TCP
UDP
IP
47
Dwukierunkowa łączność na
gniazdach
Gdy klient wysyła w sieci TCP/IP Ŝądanie połączenia z innym węzłem,
wysyła równieŜ numer gniazda. Jeśli węzeł odbiorcy moŜe nawiązać
połączenie, zwraca numer gniazda (nowo tworzonego) zawierający adres
IP odbiorcy i numer portu usługi, która będzie obsługiwać zadanie.
Analogia do łączności telefonicznej.
Gdy połączymy dwa gniazda, pozwoli
to przesyłać dane pomiędzy dwoma
procesami, które mogą działać w
róŜnych węzłach (komputerach).
48
Gniazda TCP cd.
Zanim dane zostaną przesłane przez Internet z jednego hosta na drugi
uŜywając TCP/IP, są one dzielone na pakiety o zmiennym, lecz
skończonym rozmiarze, nazywanych datagramami (datagrams).
Retransmisja, kontrola przepływu.
Wszystko to jest schowane przed programistą Javy.
Programista Javy ma dostęp do wyŜszego poziomu abstrakcji
nazywanego gniazdem (socket). Socket reprezentuje rzetelne
połączenie do transmisji danych pomiędzy dwoma hostami. Izoluje on
programistę od szczegółów związanych z kodowaniem pakietów,
problemem zagubienia pakietów i ich retransmisją lub złego
uszeregowania pakietów.
Na gniazdach wykonywane są podstawowe polecenia:
- nawiązanie połączenia
- wysłanie danych
- odebranie danych
- zakończenie połączenia
49
Typy przesyłania komunikatów
Indywidualna wymiana danych
1-1
Unicast
50
Typy przesyłania komunikatów
Rozgłaszanie kierunkowe (grupowe)
1-n
Multicast
51
Typy przesyłania komunikatów
Rozgłaszanie
1-a
Broadcast
DuŜe obciąŜenie sieci i komputerów, które muszą sprawdzać
dostarczoną wiadomość – często nie są nią zainteresowane.
52
Podsumowanie
Najbardziej popularnymi protokołami sieciowymi są protokoły rodziny
TCP/IP – niezaleŜne od systemu i sprzętu.
Wśród tych protokołów najwaŜniejsze to protokoły warstwy
transportowej:
TCP – połączeniowy, niezawodny, strumieniowy
UDP – bezpołączeniowy, niepewny, pakietowy
Do próby nawiązania połączenia lub/i wysłania danych do aplikacji
uruchomionej na odległym komputerze konieczne jest wskazanie
adresu IP danego hosta oraz numer portu, na którym uruchomiona jest
dana usługa. (IP + port = gniazdo)
KaŜdy pakiet przychodzący do komputera nie jest anonimowy!
Nagłówek IP zawiera adres nadawcy. Jednak istnieje moŜliwość
programowej modyfikacji takiego nagłówka.
53

Podobne dokumenty