ISO/OSI TCP/IP SIECI KOMPUTEROWE
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.
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.
ISO/OSI vs. TCP/IP
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.
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.
Odległość pomiędzy punktami Tłumienie sygnału Zniekształcenie sygnału
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.
RAMKI Składniki typowej ramki: Ogranicznik początku ramki (flaga; preambuła), Adres źródłowy, Adres docelowy, Dane, Sekwencja kontrolna ramki.
CSMA/CD CSMA wielodostęp do łącza sieci z badaniem stanu kanału CD funkcja wykrywania kolizji
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.
Sterowanie łączem logicznym w standardzie IEEE 802.2 Model OSI Warstwa OSI Model 802 IEEE Aplikacji 7 Prezentacji 6 Sesji 5 Transportu 4 Sieci 3 Łącza danych 2 Fizyczna 1 Punkty dostępu do usług protokołów warstw wyższych Sterowanie łączem logicznym (warstwa LCC) Sterowanie dostępem do nośnika (warstwa MAC) Fizyczna
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
Umieszczenie TCP/IP w ramce ethernet Pakiet warstwy TCP Adres TCP nadawcy Adres TCP odbiorcy SEQ ACK Dane Pakiet warstwy IP Długość Protokół Suma kontrolna IP nadawcy IP odbiorcy Dane Adres odbiorcy Adres nadawcy Protokół Dane Suma kontrolna
Format pakietu TCP
Nagłówek pakietu TCP ma długość co najmniej 20 oktetów 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.
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).
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.
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. halfopen). 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.
Efekt polecenia netstat a p tcp -n
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.
Format pakietu UDP
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).
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.
Format pakietu IP
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.
Zmiana wartości TTL w zależności od odległości serwera od hosta
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
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).
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.
Format komunikatu ARP + Bity 0-7 8-15 16-31 0 Typ warstwy fizycznej (HTYPE) 32 Długość adresu sprzętowego (HLEN) Długość protokołu wyższej warstwy (PLEN) 64 Adres sprzętowy źródła (SHA) Typ protokołu wyższej warstwy (PTYPE) Operacja (OPER)? Adres protokołu wyższej warstwy źródła (SPA)? Adres sprzętowy przeznaczenia (THA)? Adres protokołu wyższej warstwy przeznaczenia (TPA)
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.
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.
Protokół ICMP 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. 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ć
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.
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
Komunikaty sterujące ICMP zmiana trasowania (przekierowanie), synchronizacja zegarów oszacowanie czasu tranzytu, żądanie przesłania informacji, wykrywanie routera, wywołanie routera
Jeśli router nie może dostarczyć pakietu IP do odbiorcy zgłasza problem w postaci komunikatu ICMP do nadawcy.
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.
Tłumienie źródła
Zmiana trasowania (przekierowanie)
Protokół IGMP
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).