Komunikacja w sieciach komputerowych - podstawy
Autorzy: Marcin Kloc, Daniel Foryś, Piotr Kowal IVFZS
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
1
STRESZCZENIE
Tematem projektu jest podstawowa komunikacja w sieciach komputerowych. W niniej-
szym dokumencie znajdują się podstawowe informacje dotyczące modelu warstwowego
ISO/OSI, przełączania w sieciach IP, protokołu IP Multicast, routowaniu w sieciach IP, a w
nim podstawowe informacje o protokołach RIP1, RIP2, OSPF, EGP, BGP oraz IGRP.
Projekt ten opisuje również protokoły IEEE 802.1q, 802.1p, jak również standardy stosowane
w sieci VLAN od strony teoretycznej jak i praktycznej.
Opisuje również coraz powszechniejszą technologię VoIP, jak również standardy jej odpowia-
dające, jak chociażby H.323 oraz standard jakości QoS.
Ostatnia część projektu poświęcona jest zastosowaniu technologii NAT i PAT oraz praktyczne
korzyści wynikające z jej implementacji.
Mamy nadzieję, że ten dokument będzie bardzo pomocny studentom, którzy stawiają
dopiero pierwsze kroki w jakże skomplikowanym świecie sieci komputerowych
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
2
SPIS TREŚCI
Streszczenie ..............................................................................................................................1
1. MODEL ISO/OSI .................................................................................................................4
1.1 Warstwy modelu OSI ......................................................................................................4
1.2 Opis poszczególnych warstw ...........................................................................................5
1.2.1 Warstwa fizyczna .....................................................................................................5
1.2.2 Warstwa łącza danych ..............................................................................................5
1.2.3 Warstwa sieci ...........................................................................................................6
1.2.4 Warstwa transportowa ..............................................................................................6
1.2.5 Warstwa sesji ...........................................................................................................6
1.2.6 Warstwa prezentacji .................................................................................................6
1.2.7 Warstwa aplikacji .....................................................................................................7
2. PROCES WYMIANY INFORMACJI W MODELU OSI .....................................................7
3. PRZEŁĄCZANIE W SIECIACH IP .....................................................................................8
3.1 Pojęcie przełącznika ........................................................................................................8
3.2 Przełącznik a model OSI .................................................................................................9
3.3.1 Standardy i protokoły stosowane w technologii IP Switching ................................. 10
3.3.2 Technologia Tag Switching .................................................................................... 11
3.3.3 Technologia FastIP ................................................................................................. 12
3.3.4 Przełączniki webowe .............................................................................................. 13
5.1 Pojęcie routera .............................................................................................................. 24
5.2 Ogólne wiadomości na temat routingu........................................................................... 24
5.3 Routing statyczny a routing dynamiczny ....................................................................... 25
5.4 Protokoły routingu ........................................................................................................ 26
5.4.1 Protokół RIP........................................................................................................... 26
5.4.2 Protokół BGP ......................................................................................................... 28
5.4.3 Protokół OSPF ....................................................................................................... 30
5.4.4 Protokół IGRP ........................................................................................................ 32
5.4.5 Protokół EGP ......................................................................................................... 32
6.1 DEFINICJA I PODSTAWOWE WŁASNOŚCI SIECI VLAN ...................................... 33
6.2 Zarządzanie siecią uzyskane dzięki zastosowaniu VLAN .............................................. 34
6.3 Metody tworzenia VLAN .............................................................................................. 35
6.3.1 Grupowanie portów ................................................................................................ 35
6.3.2 Grupowanie adresów MAC .................................................................................... 36
6.3.3 Grupowanie adresów warstwy sieciowej ................................................................ 36
6.4.1 Standard IEEE 802.1P ............................................................................................ 36
6.4.2 Standard IEEE 802.1Q ........................................................................................... 37
7.1 Wstęp ............................................................................................................................ 40
7.2 Architektura sieci. Standard H.323 ................................................................................ 41
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
3
8. Quality of Service ............................................................................................................... 48
9. NAT, PAT .......................................................................................................................... 49
9.1 Podstawowe pojęcia ...................................................................................................... 49
9.2 Funkcje NAT ................................................................................................................ 50
9.3 Skutki uboczne i dodatkowe korzyści............................................................................ 52
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
4
1. MODEL ISO/OSI
Ponieważ
dobrze jest mieć pewną strukturę, do której można przypisać skróty
i terminy, na początek zostanie wprowadzone pojęcie modelu OSI opracowanego przez ISO. Międzyna-
rodowa Organizacja Normalizacyjna (International Standards Organization – ISO) z siedzibą w Gene-
wie zajmuje się tworzeniem standardów, między innymi na potrzeby międzynarodowej i narodowej
transmisji danych. Amerykańskim przedstawicielem ISO jest Instytut ANSI (American National Stan-
dards Institute). Na początku lat siedemdziesiątych organizacja ISO opracowała standardowy model
systemów komunikacji danych i nazwała go modelem Współdziałania systemów otwartych (Open
Systems Interconnection – OSI).[1]
Model OSI składa się z siedmiu warstw, opisujących procesy zachodzące podczas połączenia ter-
minala z komputerem lub komputera z innym komputerem. Model ten został opracowany z myślą o uła-
twieniu budowy systemów, w których mogłyby ze sobą współpracować urządzenia pochodzące od róż-
nych producentów.
Praktyczna rada dotycząca modelu OSI
Siedmiowarstwowy model OSI nie wyznacza początku ani końca sieci komputerowych. Obecnie model
ten jest raczej strukturą skostniałą. Dzisiejsze produkty nagminnie łamią podziały pomiędzy poszcze-
gólnymi warstwami. Jednak mówi się o przełącznikach warstwy drugiej i trzeciej, zaporach firewall
warstwy szóstej i siódmej oraz w inny sposób odnosi się do tego modelu. Ciągle też używa się go do
opisu sposobu działania różnych produktów i przebiegu niektórych procesów. Zrozumienie tego modelu
jest wciąż niezbędne do swobodnego poruszania się w świecie sieci komputerowych. [1]
1.1 Warstwy modelu OSI
Aplikacji
Prezentacji
Sesji
Transportowa
Sieciowa
Łącza danych
Fizyczna
Rys.1 Graficzne przedstawienie modelu ISO/OSI
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
5
7) Warstwa aplikacji. Na tym poziomie oprogramowanie jest zgodne z obowiązującymi standardami
stylu obsługi.
6) Warstwa prezentacji. W tej warstwie dane są formatowane do wyświetlania oraz na potrzeby okre-
ślonego sprzętu.
5) Warstwa sesji. Warstwa ta określa standardowe metody przesyłania danych pomiędzy aplikacjami.
4) Warstwa transportowa. Oprogramowanie tej warstwy jest szczególnie ważne w sieciach lokal-
nych. Odpowiada ono za niezawodny transfer pakietów pomiędzy stacjami.
3) Warstwa sieci. Oprogramowanie działające w tej warstwie udostępnia interfejs pomiędzy warstwą
fizyczną i warstwą łącza danych a oprogramowaniem wyższych warstw, które odpowiada za nawią-
zanie i utrzymanie połączenia.
2) Warstwa łącza danych. Ta warstwa odpowiada za skuteczny transport informacji w warstwie fi-
zycznej. Jej zadaniem jest synchronizacja bloków danych, rozpoznawanie błędów i sterowanie
przepływem danych.
1) Warstwa fizyczna. Najbardziej podstawowa warstwa zaangażowana w transmisję strumienia da-
nych poprzez fizyczne przewody. Sprzęt i oprogramowanie działające na tym poziomie obsługuje
różne typy złączy, sygnalizację i schematy współużytkowania nośnika transmisyjnego.
Warstwy 1 do 4 są to tzw. warstwy niższe (transport danych) zaś warstwy 5 do 7 to warstwy wyższe
(aplikacje).
Model OSI nie odnosi się do jakiegokolwiek sprzętu lub oprogramowania. Zapewnia po prostu
strukturę i terminologię potrzebną do omawiania różnych właściwości sieci. (ze skryptu sieci).
1.2 Opis poszczególnych warstw
1.2.1 Warstwa fizyczna
Warstwa fizyczna zapewnia połączenia elektryczne i sygnalizację. Wyższe warstwy komunikują
się poprzez tę warstwę. Skrętka, włókna światłowodowe i kable koncentryczne należą do warstwy fi-
zycznej.
1.2.2 Warstwa łącza danych
Po zestawieniu połączeń fizycznych i elektrycznych należy się zająć sterowaniem strumieniem
danych przepływającym pomiędzy systemami po obu stronach łącza. Warstwa łącza danych modelu
OSI pracuje podobnie jak nadzorca węzła kolejowego, który zestawia wagony w pociąg. Na tym po-
ziomie funkcjonalnym znaki są łączone w komunikat i sprawdzane przed wysłaniem w drogę. Tu rów-
nież odbierane są sygnały – „przesyłka dotarła w całości”, wysyłane przez „nadzorcę” jeśli zdarzy się
katastrofa, dokonuje się rekonstrukcji komunikatu. („Kierowanie pociągów” od stacji do stacji to zada-
nie warstwy sieciowej).[1]
Warstwa łącza danych może używać wielu protokołów, w tym HDLC (High-Level Data Link Control),
komunikacji bisynchronicznej i ADCCP (Advanced Data Communications Control Procedures). Nie
trzeba znać szczegółów żadnego z tych protokołów; wystarczy sobie wyobrazić, że kierują one „pociągi
danych” na właściwe tory i kontrolują, czy bezpiecznie dotarły do celu. W systemach komunikacyjnych
opartych na komputerach PC funkcje warstwy łącza danych realizują zwykle specjalne układy scalone
na kartach sieciowych (zamiast odrębnego oprogramowania). Niektóre programy w komunikacji PC-
tów działają podobnie do protokołów warstwy łącza danych. Jeśli podczas przesyłania plików do detek-
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
6
cji błędów i retransmisji używany jest protokół FTP, Xmodem lub DART firmy Crosstalk, protokoły
warstwy łącza danych są realizowane przez programy użytkowe.[1]
1.2.3 Warstwa sieci
W sieciach rozległych jest zwykle wiele różnych dróg, którymi można przesłać łańcuch znaków
(utworzony przez warstwę łącza danych) z jednego punktu geograficznego do drugiego. Trzecia war-
stwa modelu OSI – warstwa sieci – w oparciu o stan sieci, priorytety usług i inne czynniki decyduje,
którą fizyczną ścieżkę powinny wybrać dane.
Oprogramowanie warstwy sieci znajduje się zwykle w przełącznikach, gdzieś w sieci. Karta sieciowa w
komputerze musi jedynie zestawić blok danych w taki sposób, aby oprogramowanie sieciowe mogło go
rozpoznać i odpowiednio skierować.[1]
1.2.4 Warstwa transportowa
Warstwa transportowa to czwarta warstwa modelu OSI, która pełni wiele funkcji zbieżnych do
warstwy sieciowej, z tą jednak różnicą, że pełni je lokalnie. Zadania warstwy transportowej realizowane
są przez sterowniki oprogramowania sieciowego. Ta warstwa pełni rolę dyspozytora węzła kolejowego,
który przejmuje kierowanie, gdy zdarzy się katastrofa. W przypadku awarii sieci oprogramowanie war-
stwy transportowej wyszukuje alternatywne trasy i ponownie wysyła pakiety danych, aż transmisja się
powiedzie lub próbuje osiągnąć predefiniowany limit czasu. Oprogramowanie to obsługuje również
kontrolę jakości, sprawdzając, czy odebrane dane są w prawidłowym formacie i w odpowiedniej kolej-
ności.[1]
Te możliwości formatowania i porządkowania stają się ważne, kiedy programy warstwy transportowej
implementują połączenia pomiędzy różnymi typami komputerów. Podczas gdy warstwa łącza danych
liczy elementy „pociągu danych”, warstwa transportowa otwiera je i sprawdza, czy ich zawartość jest w
porządku Sieci komputerów różnych typów mogą używać kilku protokołów warstwy transportowej.
Najbardziej popularnym z nich jest Transmission Control Protocol (TCP), opracowany przez Departa-
ment Obrony (Depertment of Defense – DoD) Stanów Zjednoczonych, a obecnie sprzedawany przez
wielu producentów jako część pakietu protokołów TCP/IP. Trzy powszechnie używane protokoły, które
realizują funkcje warstwy transportowej w sieciach komputerów PC, to NetBIOS, TCP i Internet Packet
Exchange (IPX) firmy Novell. W każdej stacji sieciowej znajduje się przynajmniej jeden moduł pro-
gramowy warstwy transportowej, który przekazuje do sieci wywołania pomiędzy programami użytko-
wymi.[1]
1.2.5 Warstwa sesji
Warstwa piąta, czyli warstwa sesji, jest często bardzo istotna w sieciach komputerów PC. Funkcje
tej warstwy umożliwiają bowiem dwóm aplikacjom (lub dwóm częściom tej samej aplikacji) porozu-
miewanie się ze sobą poprzez sieć, w celu realizacji procedur bezpieczeństwa, rozpoznawania nazw, lo-
gowania, procedur administracyjnych i innych.
Moduły programowe, takie jak NetBIOS lub nazwane potoki (named pipes), często odchodzą od mode-
lu ISO i realizują jednocześnie funkcje warstwy transportowej i warstwy sesji, stąd trudno wymienić ja-
kikolwiek popularny program, który byłyby charakterystyczny wyłącznie dla tej warstwy.[1]
1.2.6 Warstwa prezentacji
Warstwa prezentacji jest odpowiedzialna za to, co widać na ekranie. Ponadto może ona obsługi-
wać szyfrowanie i niektóre specjalne formaty plików. Jej zadaniem jest formatowanie ekranów i plików,
aby wyglądały tak, jak tego chciał programista.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
7
Warstwa prezentacji to dziedzina kodów sterujących, specjalnych znaków graficznych i zestawów zna-
ków. Doskonałym przykładem protokołu warstwy prezentacji jest protokół HTTP (Hypertext Transfer
Protocol), używany do formatowania informacji, które składają się na strony WWW. Oprogramowanie
warstwy prezentacji steruje również drukarkami, ploterami i innymi urządzeniami peryferyjnymi. Wiele
funkcji warstwy prezentacji realizuje system Microsoft Windows.[1]
1.2.7 Warstwa aplikacji
Leżąca na samym wierzchu warstwa aplikacji obsługuje użytkownika. Znajduje się ona tam,
gdzie rezyduje sieciowy system operacyjny i programy użytkowe, a jej zadaniem jest niemal wszystko;
współużytkowanie plików, buforowanie zadań wydruków, poczta elektroniczna, zarządzanie bazą da-
nych i wiele innych czynności. Standardy obowiązujące w tej górnej warstwie są nowe, na przykład
SAA (Systems Application Architecture) IBM i obsługa komunikatów X.400 dla poczty elektronicznej.
W pewien sposób ta warstwa jest najważniejsza, ponieważ jest bezpośrednio kontrolowana przez użyt-
kownika.[1]
Niektóre funkcje, takie jak protokoły transmisji plików, działają z poziomu warstwy aplikacji, ale wy-
konują zadania właściwe dla niższych warstw.
2. PROCES WYMIANY INFORMACJI W MODELU OSI
Warstwy modelu OSI używają różnych form informacji sterujących służących do komunikowania
się równorzędnych warstw różnych stacji sieciowych. Wspomniane informacje sterujące zawierają żą-
dania i instrukcje wymieniane między równorzędnymi warstwami modelu OSI
Ogólnie mówiąc, dana warstwa komunikuje się z trzema innymi warstwami modelu
OSI
:
z warstwą bezpośrednio poniżej
z warstwą bezpośrednio powyżej
z warstwą równorzędną, ale w innej stacji sieciowej.
Rys. 2 Proces wymiany informacji w modelu OSI
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
8
Informacje sterujące mogą mieć jedną z dwóch form:
nagłówka
końcówki
Nagłówek jest przedrostkiem dodawanym do informacji przesyłanej „w dół”, począwszy od naj-
wyższej warstwy. Końcówka zaś jest uzupełnieniem informacji przesyłanej „w dół”, począwszy od war-
stwy najwyższej.
Nagłówki, końcówki i dane są pojęciami zależnymi od warstwy, w której analizowana jest jednost-
ka informacji. Na przykład w warstwie sieciowej jednostka informacji składa się z nagłówka warstwy 3
i danych. W warstwie łącza danych cała informacja przesyłana w dół przez warstwę sieciową (nagłó-
wek warstwy sieciowej i dane) jest traktowana jako dane. Inaczej mówiąc, porcja danych jednostki in-
formacyjnej w konkretnej warstwie modelu OSI może zawierać nagłówki, końcówki i dane pochodzące
ze wszystkich wyższych warstw. Jest to znane pod nazwa kapsułkowania.[2]
3. PRZEŁĄCZANIE W SIECIACH IP
3.1 Pojęcie przełącznika
Przełączniki (switches) są inteligentnie pracującymi węzłami sieci, nazywanymi hubami przełącza-
jącymi ramki. Takiej nazwy (hub przełączający) używano z chwilą wprowadzenia tego rodzaju sprzętu
na rynek. Przełączniki odbierają pakiety z jednego portu, poddają je filtrowaniu i wysyłają do drugiego
portu. Klasyczne przełączniki odczytują adresy zawarte w warstwie MAC, dlatego mogą obsługiwać
pakiety generowane przez dowolny protokół operujący w warstwie sieciowej modelu OSI. Słowo kla-
syczne jest tu użyte celowo, ponieważ przełączniki pracujące w trybie Layer3 Switching (zwane też
przełącznikami trasującymi) mają już dostęp do adresów sieciowych stacji docelowych (czyli w sieciach
Internet do adresów IP). Lokalne sieci komputerowe oparte na przełącznikach nazywamy przełączanymi
sieciami LAN. W przypadku sieci Ethernet używa się określenia przełączany Ethernet.[3]
Przełączniki muszą dysponować wydajnie pracującym układem przełączania ramek, który poradzi sobie
z natłokiem pakietów. Możemy podzielić sieć za pomocą przełączników na wiele domen kolizji, ale
Rys. 3
Kapsułkowanie w procesie wymiany informacji
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
9
nadal wszystkie będą pracować w ramach tej samej domeny rozgłoszeniowej. Każdy pakiet broadcast
musi dotrzeć do wszystkich bez wyjątku stacji. Jedynym rozwiązaniem jest wtedy zastosowanie routera
lub przełącznika pracującego w trybie Layer 3 Switching, który poradzi sobie z pakietami broadcast,
stosując odpowiednie mechanizmy filtrowania.
3.2 Przełącznik a model OSI
Przełączniki LAN dzieli się również w zależności od warstwy modelu OSI, na której realizują swo-
je podstawowe funkcje, to znaczy filtrują, transportują lub przełączają ramki. Wyróżnia się trzy katego-
rie przełączników: działające w warstwie 2, w warstwach 2 i 3 oraz wielowarstwowe.
3.2.1 Przełącznik warstwy 2
Pod względem zasady działania jest podobny do wieloportowego mostu, mając jednak znacznie
większą przepustowość i wiele dodatkowych cech, takich jak na przykład pełny dupleks. Przełącznik
LAN warstwy 2 realizuje przełączanie i filtrację przy użyciu adresu MAC. Podobnie jak w przypadku
mostów przełącznik LAN warstwy 2 jest całkowicie przezroczysty dla protokołów sieciowych i pro-
gramów użytkowych.
3.2.2 Przełącznik warstw 2 i 3
Może podejmować decyzje o przełączaniu na podstawie większej liczby informacji niż przełącz-
nik LAN warstwy 2. Taki przełącznik może mieć wbudowane pewne funkcje sterujące ruchem, charak-
terystyczne dla warstwy 3, takie jak: zarządzanie broadcastami i multicastami, fragmentacja IP, bezpie-
czeństwo (przez listę dostępu).
3.2.3 Przełącznik wielowarstwowy
Podejmuje decyzje o przełączaniu i filtrowaniu na podstawie adresów warstw 2 i 3 modelu OSI.
Przełącznik ten dynamicznie decyduje o tym, czy przełączać (warstwa 2), czy trasować (warstwa 3) na-
pływający ruch ramek. Przełącznik wielowarstwowy przełącza wewnątrz grupy roboczej, a trasuje mię-
dzy różnymi grupami.
3.2.4 Przełącznik trasujący (routing switches)
Przełącznik trasujący (routing switch) to taki, który potrafi wyznaczać pakietom marszrutę, czyli
operować nie tylko w drugiej, ale też w trzeciej warstwie modelu OSI. Urządzenia takie zachowują się
więc podobnie jak routery. Ponieważ routing w tego rodzaju węzłach sieci jest najczęściej implemento-
wany przy użyciu sprzętu (układy ASIC), to przełączniki trasujące mają większą wydajność niż kla-
syczne routery oparte na oprogramowaniu. Klasyczne routery mają za to tę przewagę, że można je ela-
stycznie konfigurować. Z racji tego, że przełączniki tej klasy operują w trzeciej warstwie OSI (Siecio-
wa), nazywane są "Layer-3 Switches". Przełączniki Layer 3 pierwszej generacji opierały się (tak jak ro-
utery) na silnych procesorach. Dlatego ich wydajność pozostawiała dużo do życzenia (przełączały lub
trasowały poniżej 100 tyś. pakietów na sekundę).[3]
Przełączniki drugiej generacji dysponowały wydajniej pracującą warstwą sprzętową i miały dużo więk-
szą przepustowość. Przełączniki Layer 3 trzeciej generacji to już prawdziwe demony szybkości, które
potrafią obsługiwać od 5 do 30 min pakietów na sekundę i wspierają całą gamę sieci LAN - od 10Base-
T, przez 100Base-T, FDDI i Gigabit Ethernet do ATM.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
10
3.3 Technologia IP Switching
IP Switching to najnowsza technologia trasowania pakietów IP (mamy tu do czynienia z wieloma
technikami, ponieważ koncepcja jest jedna, ale rozwiązań firmowych wiele), zaprezentowana po raz
pierwszy przez firmę Ipsilon. Inaczej niż klasyczne routery (gdzie węzeł sieci musi zawsze odczytać ad-
res IP każdego pakietu, poddać go analizie i dopiero wtedy wyekspediować do właściwego portu). IP
Switching oparto na wyrafinowanych rozwiązaniach sprzętowych (w tym na przełącznikach ATM) i
specjalnym oprogramowaniu, dzięki czemu pakiety IP są przełączane (a nie trasowane) bardzo szyb-
ko.[2]
W przypadku technologii IP Switching każdy producent stara się udowodnić, że zaproponowane przez
niego rozwiązanie nosi cechy standardu otwartego. Nie jest to prawda. Każda technologia IP Switching
to zawsze rozwiązanie firmowe, decydując się więc na sprzęt oparty na takiej technologii, należy się li-
czyć z tym, że chcąc nie chcąc skazujemy się na jednego producenta.
Pierwszą technologią IP Switching, która zyska być może szersze wsparcie, jest MPOA(Multiprotocol
over ATM). MPOA nie jest właściwie technologią IP Switching, lecz X Switching, gdyż może obsłużyć
pliki generowane przez dowolny protokół komunikacyjny X, operujący w trzeciej warstwie OSI (IP,
IPX itd.). MPOA jest wspierane przez potentatów, takich jak:
Newbridge
Cisco
Bay Networks.
Największą popularnością cieszą się obecnie technologie IP Switching opracowane przez firmy:
Cisco, 3Com i Ipsilon, chociaż na rynku można też spotkać inne firmowe rozwiązania, których autorami
są: Bay Networks (Switch Node & ATM - zastosowanie: grupy robocze, sieci korporacyjne), Cabletron
(SecureFast - dla grup roboczych, sieci korporacyjnych) oraz Cascade (IPNavigator- dla sieci
WAN/ISP).
3.3.1 Standardy i protokoły stosowane w technologii IP Switching
802.1q - opisuje pracę wirtualnych sieci LAN (VLAN) budowanych w środowisku transportującym
ramki. Jest to idealny mechanizm do budowania szybko pracujących łączy sprzęgających sieci VLAN,
eksploatowany w systemach sieciowych składających się z przełączników. 802.1q udostępnia mechani-
zmy, dzięki którym operując w warstwie Data Link - można prezentować sieć jako dwie niezależne, ale
powiązane ze sobą struktury: fizyczną i logiczną.[4]
802.1p - protokół współpracujący ściśle z 802.1q, pozwalający konfigurować sieci VLAN i kontrolo-
wać ruch pakietów wymienianych między różnymi sieciami VLAN. Protokół ten nadaje się dobrze np.
do obsługi ruchu pakietów multicast i aplikacji time-critical, definiując dokładnie, przez które sieci
VLAN 8021.q mają być transportowane pakiety.[4]
NHRP (Next-Hop Routing Protocol) - protokół ten został pierwotnie opracowany z myślą o stosowa-
niu w dużych sieciach komputerowych, w których nie stosuje się technologii broadcast. Mówiąc najpro-
ściej, protokół pozwala wyszukiwać kolejną stację next-route hop (wyznaczanie marszruty), nie ekspe-
diując w sieć pakietów rozgłoszeniowych. 3Com używa tego protokołu w technologii IP Switching (no-
szącej nazwę FastIP) w dość nietypowy sposób, ponieważ FastIP można stosować w sieciach używają-
cych pakietów rozgłoszeniowych.
[4]
MPLS (Multiprotocol Label Switching) - grupa robocza pracująca w ramach organizacji Internet En-
gineering Task Force, pracująca nad zagadnieniem implementowania technologii tag switching (przełą-
czanie z zastosowaniem specjalnych znaczników dołączanych do pakietów i tabel przełączania) w bar-
dzo dużych sieciach komputerowych.[4]
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
11
3.3.2 Technologia Tag Switching
Cisco ma nadzieję, że zaproponowana przez nią technologia Tag Switching zostanie zaakcepto-
wana (jako standardowe rozwiązanie) przez grupę Multiprotocol Label Switching (MPLS) wchodzącą
w skład IETF. Cisco twierdzi, że Tag Switching może obsłużyć każdy protokół (w tym sieci ATM) i
najlepiej nadaje się do stosowania w dużych sieciach komputerowych i telekomunikacyjnych, a więc
powinna zainteresować firmy świadczące usługi dostępu do sieci Internet.
Zaletą technologii Tag Switching jest to, że upraszcza ona proces routingu pakietów. Znawcy twierdzą,
że Tag Switching jest mieszanką technologii IP Switching opracowanych przez firmy Cascade i Ipsilon.
Rozwiązanie proponowane przez Cisco sprawuje się najlepiej w sieciach ATM i Frame Relay, czyli w
tych środowiskach, w których można budować połączenia wirtualne. Można je też z powodzeniem sto-
sować w sieciach przesyłających pakiety, o ile tylko wspierają standardy VLAN, takie jak np. 802.1p i
802.1q.[2]
Technologia Tag Switching dołącza specjalne znaczniki do wieloprotokołowych ramek, dzięki
czemu mogą one być transportowane przez sieci oparte na komórkach lub pakietach. Podstawowymi
elementami technologii Tag Switching są:
Edge router (routery brzegowe). Są to urządzenia instalowane na obrzeżach sieci. Routery
brzegowe operują w warstwie sieciowej i to właśnie one dodają do standardowych ramek spe-
cjalne znaczniki Tag Switching.
TagSwitch (przełączniki Tag). Przełączają one pakiety (lub komórki) zgodnie z poleceniami
umieszczonymi w znacznikach Tag Switching. Przeliczniki te mogą obsługiwać pełny routing
(realizowany w warstwie 3 modelu OSI) oraz przełączać pakiety (warstwa 2).
Protokół dystrybucyjny TPD(Tag Distribution Protocot}. We współpracy ze standardowymi
protokołami routingu realizowanymi w warstwie 3 modelu OSI TPD przekazuje zadanie dys-
trybucji informacji o znacznikach Fag Switching, rozsyłając je do poszczególnych urządzeń
wspierających technologię Tag Switching.[2]
Komórka ATM
GFC
VPI
VCI
PTI
CLP
HEC
Dane
TAG
IPv6 (Flow Label Field)
Ver
Prio
Flow Label
*****
TAG
Nagłówek PPP
PPP Header
TAG
Layer 3 Header
TAG
Rys. 4
Sposoby zagnieżdżania znacznika Tag Switching w komórkach ATM i
pakietach (Ipv6 i PPP)
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
12
3.3.3 Technologia FastIP
Technologia FastIP firmy 3Com oferuje wydajność osiąganą wyłącznie przy przełączaniu, reali-
zując jednocześnie funkcje routingu. Obecność w nazwie technologii FastIP wskazuje, że można ją sto-
sować wyłącznie w sieciach używających tego protokołu. Przełączanie pakietów IP jest możliwe dzięki
zastosowaniu specjalnych sterowników zarządzających kartami sieciowymi produkowanymi przez
3Com. 3Com pracuje już nad sterownikami, które będą mogły obsługiwać interfejsy sieciowe produko-
wane przez inne firmy. FastIP opiera się na standardzie NHRP i informacjach żądanie/odpowiedź wy-
mienianych między komunikującymi się ze sobą stacjami końcowymi.[2]
Po wdrożeniu technologii FastIP stacje pracujące w różnych podsieciach mogą wymieniać między sobą
pakiety, korzystając z mechanizmów operujących w warstwie 2, pomijając tak charakterystyczne dla
klasycznego routera operacje router hops. Fast IP może pracować e tych środowiskach, w których jest
realizowany równolegle klasyczny routing. Technologie tę można łatwo implementować w sieciach, w
których pracują przełączniki Layer 2 i routery Layer 3. Technologię można stosować zarówno w sie-
ciach przesyłających pakiety, jak i komórki.
Kiedy stacja chce wyekspediować pakiet do innej podsieci, generuje żądanie NHRP. Dzieje się to w
momencie transmitowania danych do routera. Żądanie NHRP jest wysyłane dopiero wtedy, gdy stacja
wyekspediowała już określoną liczbę pakietów do docelowej, innej podsieci. Żądanie NHRP ma stan-
dardowy format - razem z adresami MAC i IP. Do pola frame type jest wstawiany znacznik NHRP. Ad-
res MAC stacji wysyłającej pakiet jest wstawiany do pola z danymi. To właśnie ten adres zostanie póź-
niej wykorzystany przez stację docelową do zwrotnej transmisji danych (oczywiście, jeżeli stacja ta
wspiera też standard FastIP). Łatwo się domyślić, że pakiet zawierający adres MAC może być szybko
obsługiwany przez przełączniki (jeśli takie znajdują się po drodze) i bardzo szybko dociera do celu.
Rys. 5 Technologia Fast IP firmy 3Com
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
13
3.3.4 Przełączniki webowe
W lokalnych sieciach komputerowych przedsiębiorstw gra toczy się o to, aby pakiety wysłane z
punktu A dostały się jak najszybciej do punktu B. Do zwiększenia przepustowości sieci przyczyniły się
znacznie przełączniki, które operują w dwóch warstwach modelu OSI (warstwy 3 i 4), transmitując pa-
kiety z dużą szybkością z jednego portu (wejściowego) do drugiego (wyjściowego). Najnowsze aplika-
cje biznesowe (handel elektroniczny, witryny WWW oraz inne usługi świadczone przez sieć Internet,
intranety i ekstranety) wykorzystują w dużym stopniu zasoby przechowywane w sieci Web i muszą
dysponować pracującymi bardzo wydajnie i niezawodnie łączami komputerowymi.
Właśnie, dlatego wymyślono nowy rodzaj węzłów sieci - przełączniki webowe - w optymalny
sposób obsługujących aplikacje uruchamiane w tym środowisku pracy. Przełączniki webowe przechwy-
tują wszystkie pakiety kierowane do określonej witryny. W ten sposób śledzą na bieżąco ruch pakietów
wymienianych między klientem (przeglądarką) i serwerem Web, zapobiegając przeciążeniom określo-
nych odcinków sieci komputerowej, zanim sytuacja stanie się krytyczna i szybkość komunikowania się
klienta z serwerem spadnie do niebezpiecznie niskiego poziomu.[5]
Używane do tej pory serwery i inne urządzenia sieciowe, włączając w to przełączniki warstwy 4,
zawiadują odbieranymi pakietami, biorąc pod uwagę takie parametry, jak: adres przeznaczenia IP, iden-
tyfikator protokołu (ID) i numer portu użytego do transmitowania pakietu. Tego rodzaju metody anali-
zowania pakietów nie zdają egzaminu w sieci Web. Urządzenia operujące w warstwie 4 modelu OSI
postrzegają aplikacje Web jako te, które wykorzystują port TCP oznaczony numerem 80 (typowy port
TCP obsługujący protokół HTTP). Dlatego ruchu generowanego przez aplikacje Web nie można w ten
sposób odróżnić od ruchu HTTP.
Numery portów odgrywają bardzo ważną rolę w komunikacji TCP/IP. Ponieważ na jednym kom-
puterze może pracować jednocześnie kilka programów, to wykorzystujący ten sam interfejs sieciowy
protokół TCP musi na bieżąco śledzić ruch pakietów i wiedzieć, które dane należą do jednego progra-
mu, a które do innych programów. Jest to realizowane w ten sposób, że każdemu połączeniu TCP pro-
tokół przypisuje określony numer portu. Każda sesja TCP zawiera numer portu przeznaczenia, umiesz-
czony w nagłówku TCP. Kiedy router TCP odbiera kolejny segment danych TCP, to wie, do którego
portu taki segment należy skierować, analizując zawartość nagłówka TCP (w którym znajduje numer
portu). A oto standardowe numery portów używane w tych środowiskach: Telnet - port 23; SMTP - port
25; POP 3 - port 110. Jeśli węzeł sieci zawiaduje pakietami stosując technologię przełączania warstwy
4, to żądania Common Gareway Interface nie dadzą się odróżnić od żądań generowanych przez aplika-
cje webowe SAP czy też przez aplikacje generujące strumienie pakietów zawierających dźwięk (pliki
audio), chociaż każda z tych aplikacji ma zupełnie odmienne wymagania co do jakości usług świadczo-
nych przez sieć - QoS (Quality of Service).[5]
W odróżnieniu od tego przełączniki webowe zawiadują odbieranymi pakietami TCP czy też data-
gramami UDP(User Datagram Protocof) i kierują je do miejsc przeznaczenia (najczęściej do serwerów
sieci Web), używając odwołań URL. Analizując zawartość pakietów HTTP, biorąc pod uwagę zarówno
URL, jak i np. dane obsługujące usługę "cookie", przełącznik webowy wie, do jakiego rodzaju zasobów
chce uzyskać dostęp klient. Dysponując taką wiedzą, przełącznik może kreować adekwatne do sytuacji
zasady pracy (jakie usługi QoS należy udostępnić poszczególnym aplikacjom, które zasoby należy
chronić, jakie mechanizmy bezpieczeństwa zastosować itp.) i w odpowiedni sposób zarządzać poszcze-
gólnymi strumieniami pakietów krążących w sieci Web. Skalowalna i wieloprocesorowa architektura
przełączników webowych powoduje, że obsługują one usługi "cookie" i mogą potwierdzać tożsamości
użytkowników, ustalając reguły pracy w odniesieniu do każdej sesji łączności nawiązywanej między
klientem i siecią Web. Gdy tylko taka reguła zostanie zdefiniowana, wszystkie kolejne pakiety wcho-
dzące w skład określonego strumienia danych są błyskawicznie przesyłane z jednego portu do drugiego.
Pakiety są transmitowane bardzo szybko, ponieważ są wtedy obsługiwane przez specjalizowane układy
ASIC.[5]
Przełączanie w sieciach Web jest technologią zaprojektowaną z myślą o wymaganiach stawia-
nych przez aplikacje uruchamiane w tym środowisku. Inteligentne przełączniki webowe zarządzają Ru-
chem pakietów przesyłanych przez tę sieć i usprawniają przepustowość łączy, używając mechanizmó,
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
14
takich jak: Network Address Translation; osadzonych w urządzeniu i pracujących inteligentnie modu-
łów Domain Name System oraz systemów wykorzystujących analizę zawartości odwołań URL.[5]
Uzbrojone w takie mechanizmy, jak: NAT, DNS i możliwość sterowania ruchem pakietów na
podstawie analizy odwołań URL, przełączniki webowe stosują odpowiednią politykę zawiadywania pa-
kietami, zwiększając znacznie przepustowość łączy obsługujących sieć Web. Jest to możliwe ponieważ
przełączniki webowe podejmują decyzję o tym, w jaki sposób przełączać pakiety z jednego portu do
drugiego, poddając analizie nie tylko adresy IP, ale też odwołania URL. A odwołania te zawierają in-
formacje o tym, który z zasobów sieci Web interesuje w danym momencie klienta.[5]
4. TECHNOLOGIA IP MULTICAST
Dzisiejszy stan techniki IP multicast jest podobny do wczesnej technologii telefonii komórkowej -
jest użyteczna i osiągalna, lecz nie wszechobecna.
Mimo że ma wyraźne zalety lepszego wykorzystania pasma niż inne typy transmisji, technika IP multi-
cast nie spełniła oczekiwań, jakie z nią wiązano, gdy po raz pierwszy przedstawiono jej ideę.
Techniki multicast można użyć do przesyłania danych z jednego źródła do wielu odbiorców jedno-
cześnie lub z wielu źródeł do wielu źródeł dla komunikacji serwer-klient lub aplikacja-aplikacja. Przy-
kładem takich danych są strumienie medialne, notowania giełdowe lub uaktualnienia stanów magazy-
nowych. W odróżnieniu od częściej stosowanej techniki unicast, która wymaga oddzielnych połączeń
dla każdego użytkownika, technika multicast zadowala się jednym połączeniem dla wszystkich użyt-
kowników.[2]
Rys. 6
Działanie przełączników webowych
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
15
Eliminując zbędny dostęp do tych samych danych, technika ta redukuje ruch w sieciach korporacyj-
nych. Zmniejsza również obciążenie serwerów. Pomimo tych zalet istnieje wiele przeszkód na drodze
stosowania techniki IP multicast jako dominującego środka dostarczania danych. Warunkiem wprowa-
dzenia tej techniki jest to, aby routery i przełączniki zainstalowane pomiędzy źródłem (najczęściej ser-
werem) a miejscem przeznaczenia (najczęściej komputerem PC użytkownika) były przystosowane do
trybu multicast. Jest to problem dla przedsiębiorstw posiadających przestarzały sprzęt, stosujących jesz-
cze huby, a nie przełączniki.[2]
Jeśli przedsiębiorstwo ma sieć wyposażoną w sprzęt umożliwiający transmisje multicast, to napotyka na
przeszkodę wynikającą z braku narzędzi zarządzających, które są w stanie zapewnić prawidłowe jej
działanie.
Poważniejszy problem stanowi stosowanie techniki IP multicast przez Internet, gdzie brak jest pojedyn-
czych jednostek sterujących całą infrastrukturą. W USA dostawcy usług sieci szkieletowych, tacy jak
UUNET, Qwest i Sprint, oferują w swoich sieciach multicast, ale już mniejsi dostawcy są opóźnieni w
implementacji tej techniki.
Część problemów ma charakter techniczny. Protokoły, takie jak MBGP (Multicast Border Gateway Pro-
tocol), który został opracowany, by ułatwić transmisję ruchu pomiędzy sieciami dwu dostawców usług
internetowych, są jeszcze w takcie doskonalenia.
W celu nadania większego tempa rozwojowi techniki multicast Cisco wspomaga prace nad standardem
PIM (Protocol Independent Multicast), który obecnie ma status Internet Draft organizacji IETF. Pod-
stawowymi zaletami standardu PIM jest to, że działanie jego nie zależy od żadnego protokołu routingu i
że jest idealny dla dużych i małych sieci korporacyjnych. Inne protokoły IP multicast zależą od niektó-
rych protokołów routingu, takich jak RIP (Routing Information Protocol) lub OSPF (Open Shortest Path
First).
Implementacja protokołu PIM może się różnić w zależności od producenta. Stąd nie ma pewności, że
urządzenia pochodzące od różnych producentów będą współdziałać. Nie ma też pewności, że imple-
Rys. 7 Unicast kontra multicast
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
16
mentacje już istniejące nawiążą kontakt z innymi wersjami implementacji. Implementację komplikuje
również to, że IP multicast został zaprojektowany jako niezależny model.
Obecnie brak jest rzeczywistych zabezpieczeń ruchu multicast. Problem tkwi w tym, jak zapewnić do-
wolnemu nadawcy pozwolenie wysłania do danej grupy. Jest to szczególnie skomplikowane dla użyt-
kownika zlokalizowanego u jednego dostawcy usług internetowych, który chce rozesłać informację do
grupy zlokalizowanej u innego dostawcy, poprzez trzeciego dostawcę, który znajduje się pośrodku. Po-
nieważ IP multicast jest rozgłaszany z użyciem adresów IP klasy D obawy budzi jego skalowalność. Do
określenia swojej ścieżki poprzez sieć multicast używa "drzew routingu" (routing trees). Ponieważ licz-
ba adresów klasy D jest ograniczona, to można się spodziewać, że z ogromnym wzrostem popularności
techniki multicast zabraknie tych adresów.
4.1 Protokół IP multicast
Protokół IP multicast, zamiast wysyłać indywidualnie pakiety do poszczególnych miejsc przezna-
czenia, wysyła tylko jeden pakiet do wszystkich odbiorców w grupie multicast (multicast group), która
jest identyfikowana jednym adresem IP grupy (miejsca przeznaczenia). Routing IP typu multicast (ro-
uting IP multicast) powstał, ponieważ techniki unicast i broadcast okazały się niezdolne do zapewnienia
odpowiedniej wydajności nowo powstających aplikacji. Adresacja multicast ma zastosowanie, gdy za-
chodzi potrzeba przekazania jednego datagramu IP do wielu hostów w warunkach dużego natężenia ru-
chu. Ma to miejsce na przykład w sytuacji rozpowszechniania obrazów wideo z jednego źródła do wielu
odbiorców (miejsc przeznaczenia).[2]
Protokół IP multicast (Internet Protocol multicast) jest techniką routingu, która pozwala kie-
rować ruch IP z jednego lub wielu źródeł do wielu miejsc przeznaczenia.
Podstawowym komponentem multicastu IP jest. Protokół IGMP (Internet Group-Membership Pro-
tocol). Do tworzenia grup multicast protokół IGMP wykorzystuje adresy IP klasy D. Protokół IGMP
został opisany w dokumencie RFC 1112. Host identyfikuje przynależność do grupy wysyłając komuni-
katy IGMP. Routery pod dyktando protokołu IGMP nadsłuchują komunikatów IGMP i regularnie wysy-
łają zapytania w celu rozróżnienia, które grupy w poszczególnych sieciach LAN są aktywne, a które
nie.[2]
4.1.1 Protokoły routingu multicast
Do identyfikacji grup multicast i zestawianie tras do nich można użyć jednego z wielu protoko-
łów routingu. Może to być:
IGMP (Internet Group Management Protocol),
DVMRP (Distance-Vector Multicast Routing Protocol)
IMPS (Distance-Vector Multicast Routing Protocol)
IMPR (Distance-Vector Multicast Routing Protocol)
PIM (Protocol-Independent Multicast),
MOSPF (Multicast Open Shortest Path Protocol).
4.1.1.1 Protokół IGMP
Protokół IGMP (Internet Group Management Protocol) jest podstawowym komponentem multi-
castu IP. Do tworzenia grup multicast protokół IGMP wykorzystuje adresy IP klasy D. Protokół IGMP
został opisany w dokumencie RFC 1112. Host identyfikuje przynależność do grupy wysyłając komuni-
katy IGMP. Routery pod dyktando protokołu IGMP nadsłuchują komunikatów IGMP i regularnie wysy-
łają zapytania w celu rozróżnienia, które grupy w poszczególnych sieciach LAN są aktywne, a które nie.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
17
dzięki czemu informacje są wysyłane tylko na te porty, do których podpięte są komputery należące do
konkretnej grupy multicastowej.[3]
Rys. 8
Zasada działania protokołu IGMP
Protokół IGMP używany jest przez hosty do przyłączania się i odłączania od grup adresowych.
Grupa adresowa (multicast group) powstaje w wyniku wydzielenia pewnych komputerów, które mogą
odbierać pakiety przesyłane do grupy przez określone serwery. Pakiety takie (multicast packets) zawie-
rają adresy IP klasy D. Host może mieć własny adres klasy A, B lub C i równocześnie jeden lub wiele
adresów klasy D. Adresy klasy D wskazują, że należą on do grupy adresowej. [19]
Dołączanie i opuszczanie do grup przez klienta
Aby zasygnalizować chęć odbierania multiemisji, klienci mogą dołączyć do grupy, do której jest
kierowana multiemisja. To zadanie obsługuje protokół IGMP (Internet Group Management Protocol).
Grupy multiemisji oferują kilka korzyści. Grupy są dynamiczne: klienci mogą dołączyć do grupy
lub ją opuścić w dowolnej chwili. Do tworzenia i usuwania grup nie są wymagane złożone schematy.
Jeśli grupa nie posiada członków, przestaje istnieć w sieci. Grupy są też w prosty sposób skalowalne w
górę, ponieważ w miarę dołączania większej liczby klientów do multiemisji bardziej prawdopodobne
jest, że multiemisja jest już kierowana do bezpośredniego otoczenia tych klientów.
Gdy klient dołącza do grupy, inicjuje dwa procesy: po pierwsze wysyłany jest komunikat IGMP
do lokalnego routera klienta w celu poinformowania routera o tym, że klient chce odbierać dane wysy-
łane do grupy. Po drugie klient ustawia swój proces IP i kartę sieciową, tak aby odbierały multiemisję
na adresie i porcie grupy. Adresy multiemisji są adresami IP klasy D z zakresu od 224.0.0.0 do
239.255.255.255. Adresy IP klasy D są automatycznie mapowane na adresy multiemisji Ethernet IEEE-
802, co upraszcza implementację multiemisji w protokole IP w sieciach Ethernet. Jeśli klient opuszcza
grupę i jest jedynym klientem odbierającym multiemisję w danej podsieci, router przestaje wysyłać da-
ne do podsieci klienta, zwalniając tym samym przepustowość w tej części sieci.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
18
4.1.1.2 Protokół DVMRP
DVMRP (Distance-Vector Multicast Routing Protocol) wykorzystuje technikę RPF i jest używany
jako podstawowy protokół dla internetowego szkieletu multicast MBONE (multicast backbone).
Protokół DVMRP został zdefiniowany w dokumencie RFT 1075 i ma pewne wady. Protokół DVRMP
ma złą opinię zwłaszcza z powodu kiepskiej skalowalności sieci, wynikającej z refloodingu, szczególnie
w wersjach, w których nie zaimplementowano oczyszczania. Taki płaski mechanizm routingu unicast
protokołu DVMRP wpływa na jego zdolności skalowania.[2]
Ruch multisesji między domenami rozgłoszeniowymi aż do:
-
osiągnięcia wszystkich możliwych ścieżek
-
najkrótszych ścieżek
-
najlepszych ścieżek
Ruch od
korzenia
Rys. 9
Zasada działania protokołu DVMRP
Działanie RPF polega na tym, że router w momencie otrzymania pakietu wysyła jego kopie do
wszystkich ścieżek z wyjątkiem zwrotnej do źródła. Jeśli do routera jest przyłączona sieć LAN, która
nie chce przyjąć określonej grupy multicast, to router w celu zatrzymania strumienia danych wysyła do
źródła komunikat czyszczący.
Ruch multisesji do korzenia w celu:
- czyszczenia strumienia
-
minimalnych ścieżek dostępu
-
najlepszych ścieżek
Ruch do
korzenia
Rys. 10
Wybór najlepszej ścieżki oraz zmiana topologii wraz z opuszczaniem grup multicasto-
wych przez klientów
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
19
Distance Vector Multicast Routing Protocol jest protokołem routingu typu distance-vector, który po-
zwala realizować transmisję multicastową pomiędzy routerami w sieci. Protokół DVMRP używa tune-
lowania w przypadku kiedy na drodze pomiędzy dwoma routerami wykorzystującymi DVMRP znajdują
się routery lub bramy (gateway), nie obsługujące tego standardu. Celem działania protokołu DVMRP
jest budowanie struktur drzewa rozpinającego, które zaczynają się w punktach, w których znajdują się
stacje wysyłające informacje do grup multicastowych a kończą się na stacjach, które odbierają ruch
multicastowy. Topologia drzewa zmienia się wówczas kiedy nowe stacje robocze przyłączają się do
grupy lub ja opuszczają.[19]
W operacjach RPF protokołu DVMRP są używane techniki refloodingu i adresacji unicast.
Podczas refloodingu routery DVMRP okresowo zalewają przyłączoną sieć w celu osiągnięcia nowego
hosta. Mechanizm floodingu używa algorytmu, który bierze pod uwagę częstotliwość floodingu i wy-
magany czas dla nowej grupy multicast do przyjęcia strumienia danych. Technika unicast DVMRP jest
używana do określenia, który interfejs prowadzi z powrotem do źródła strumienia danych. Choć techni-
ka ta nie występuje poza protokołem DVMRP, to podobna jest do użytej w protokole RIP, opartej na
zliczaniu skoków. Środowisko unicast DVMRP pozwala na użycie innych ścieżek niż używanych w ru-
chu multicast.[2]
4.1.1.3 IPMS
Technologia IP Multicast Switching została zaprojektowana w celu usprawnienia oraz rozdzielenia
ruchu multicastowego tak aby jak najbardziej uskutecznić ruch w sieci. Na początku ruch mulicastowy
wysyłany jest do wszystkich grup multicastowych, obciążając w ten sposób sieć. Aby tego uniknąć
MAC adres klienta (a dokładniej MAC adres routera do którego podpięty jest klient) zostaje skojarzony
z adresem żądanej grupy (adres klasy D). Dzieje się to za sprawą protokołu routingu grupowego np.
PIM, który to dokonuje odpowiedniej poprawki w swojej tablicy routingu., klient otrzymuje każdy pa-
kiet przynależny do grupy. [19]
Jeżeli na drodze pakietu pojawi się switch sprawdza on czy MAC adres przesyłki jest przechowy-
wany w tablicy przełączania switcha. Jeśli go nie ma urządzenie wysyła pakiet na każdy swój interfejs.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
20
Natomiast jeżeli switch w tablicy „skojarzył” numer portu z określoną grupą multicast, ruch multi-
castowy jest separowany, a następnie przepuszczany na określone urządzenia z tej grupy.
4.1.1.4 IPMR
Technologia IP Multicast Routing przeznaczona jest do filtracji oraz routingu ruchu grupowego.
Stosuje ona protokół IGMP Snooping (Internet Group Management Protocol) do filtracji pakietów mul-
ticast. IGMP Snooping umożliwia efektywne zarządzanie przepływem pakietów multicast, tak aby pa-
kiety te trafiały tylko do właściwej lokalizacji.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
21
W przypadku konstruowania trasy w ruchu unicastowym dla danej pary komputerów istnieje jedno-
znaczna ścieżka określająca trasę pakietów podczas transmisji. W transmisji ruchu grupowego trasie
odpowiada całe drzewo wskazujące drogę transmisji i punkty replikacji pakietu. Podobnie jak w przy-
padku routingu pakietów pojedynczych tworzona jest tablica routingu, która to przechowuje po jednej
strukturze drzewiastej dla każdej grupy multicastowej. Głównym celem podczas konstrukcji grupowej
tablicy routingu jest zadbanie o to, aby każda gałąź sieci w której istnieje choćby jeden odbiorca danej
grupy otrzymała jedną kopię pakietu. Dla sieci IP IE poleca kilka metod routingu: Distance Vector Mul-
ticast Routing Protocol (DVMRP), Multicast extensions to OSPF (MOSPF), Protocol Independent Mul-
ticast (PIM). Protokoły routingu grupowego budują sobie grupową tablicę routingu poprzez sprawdza-
nie w jaki sposób routowana jest przesyłka unicastowa w klasycznej tablicy routingu. Niektóre protoko-
ły pracują używają unicastowej tablicy (PIM). Inne tworzą swoją własną (DVMRP i MOSPF).
Routing grupowy możemy podzielić na dwie kategorie: Dence-mode (tryb gęsty) oraz Sparse-
Mode (tryb rzadki). Protokoły typu DM zakładają, że każdy użytkownik odbiera daną transmisję gru-
pową i wtedy pierwsza przesyłka takiej transmisji wysyłana jest w każde miejsce w sieci, a dopiero po-
tem usuwane są z tablicy routingu grupowego gałęzie sieci w których nie ma ani jednego odbiorcy danej
grupy. Protokoły typu SM zakładają w sieci znajduje się stosunkowo niewielu odbiorców, czyli że słu-
chacze są rozproszeni. Taka sytuacja ma miejsce w przypadku np. transmisji grupowej w internecie.
Protokoły te w momencie inicjalizacji transmisji tworzą pustą tablicę routingu grupowego, a następnie
dołączają odbiorców do danej grupy jedynie na ich wezwanie, czyli wysłanie komendy join protokołu
IGMP. Protokoły typu DM tj. MOSPF, DVMRP, PIM-DM pracują bardziej efektywnie w sieciach lo-
kalnych.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
22
4.1.1.5
Protokół PIM – SM
W zależności od rodzaju ruchu protokół PIM pracuje w dwu trybach, dense (skupionym) i spar-
se (rzadkim).
Tryb dense używa algorytmu RPF (Reverse Path Flooding), który jest podobny do protokołu
DVMRP. Istnieją jednak różnice, na przykład protokół PIM pracujący w trybie dense, w odróżnieniu od
protokołu DVMRP, nie wymaga specjalnego protokołu unicast, może pracować z dowolnym protoko-
łem tego typu używanym w sieci. Tryb sparse jest przeznaczony dla intersieci ze stosunkowo niewielką
liczbą sieci LAN, ale wieloma strumieniami danych. Definiuje punkty spotkań, które później są używa-
ne jako punkty rejestracji w celu zapewnienia właściwego routingu pakietów.[2]
Pakiety IP multicast nie są przesyłane na dany interfejs, dopóki ruter nie otrzyma komunikatu Join o
przyłączeniu do grupy z określonej lokalizacji. PIM-SM buduje dzielone drzewa nadawców i odbiorców
IP multicast ST (Shared Trees) z punktem centralnym RP (Rendezvous Point – miejsce spotkań). Każda
grupa IP multicast musi mieć jeden taki punkt w obrębie sieci. PIM-SM używa drzew dzielonych, za-
wierających punkt centralny - RP, do którego wędrują pakiety od nadawców najkrótszą drogą. Następ-
nie RP rozsyła te pakiety do odbiorców również najkrótszymi ścieżkami.
Jeśli nadawca chce przesłać dane, to pierwszy router, licząc od źródła, wysyła dane do punktu spotka-
nia. Gdy odbiorca chce odebrać dane, ostatni router od strony odbiorcy rejestruje się w punkcie spotka-
nia. Po wykonaniu tych czynności strumień danych może przepłynąć od nadawcy do punktu spotkania i
do odbiorcy. Routery uczestniczące w połączeniu optymalizują ścieżkę i automatycznie eliminują nie-
potrzebne skoki, nawet w punkcie spotkania.
4.1.1.6
Protokół MOSPF
MOSPF (Multicast Open Shortest Path First) jest rozszerzeniem protokołu OSPF. Wykorzystu-
je protokół routingu unicast, który wymaga zdobycia przez każdy router w sieci informacji o wszystkich
dostępnych łączach.[2]
Router protokołu MOSPF wylicza trasy ze źródła do wszystkich możliwych członków grupy dla okre-
ślonej grupy multicast. Informacja o nich jest przechowywana w tablicach stanu łącz protokołu OSPF.
Tak ustalone trasy dla każdej pary źródło-grupa multicast przechowuje do czasu wystąpienia zmian w
topologii sieci.
MOSPF może pracować tylko w sieciach, które używają protokołu OSPF. Na podstawie analizy jego
licznych implementacji można stwierdzić, że:
najlepiej się sprawdza w środowisku, w którym jest stosunkowo mało aktywnych par źródło-
grupa,
może obsłużyć znaczące pasmo pomiędzy routerem a hostem w środowisku, które jest niesta-
bilne lub ma wiele aktywnych par źródło-grupa.
Podstawy technologii multicast
Transmisja typu multicast może odbywać się zarówno w warstwie łącza danych (warstwa 2
modelu ISO/OSI) jak i w warstwie sieciowej (warstwa 3). Dla przykładu sieci Ethernet, FDDI, SMDS
wykorzystują transmisję typu unicast, multicast oraz broadcast i używają do tego celu puli adresowej
dedykowanej dla każdego rodzaju transmisji. Tak więc komputer działający w tych sieciach odbiera
ramki zaadresowane bezpośrednio do niego, ramki z adresami grup do których należy dany komputer
oraz ramki broadcastowe.
Kiedy aplikacje multicastowe działają tylko w obrębie jednej fizycznej bądź logicznej LAN transmisja
grupowa w warstwie drugiej jest wystarczająca. Jednak większość aplikacji grupowych jest użyteczna
głównie wtedy, kiedy można je wykorzystać na dużym obszarze tj. w sieci kampusowej lub rozległej. W
takim środowisku wysoce pożądana jest możliwość pracy tych aplikacji w heterogenicznym środowisku
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
23
sieciowym (Ethernet ,FDDI, Token Ring, Frame Relay, ATM itp.). Dla systemów rozległych tego typu
potrzebna jest implementacja ruchu grupowego również w warstwie trzeciej. Transmisja multicastowa
warstwy 3 wymaga od twórców protokołów spełnienia kilku warunków specjalnych.
Adresacja - Istnieje potrzeba wydzielenia adresów warstwy 3 używanych do komunikacji z grupą użyt-
kowników. Dodatkowo musi istnieć ściśle zdefiniowany sposób przypisania tych adresów grupowych
odpowiadającym im adresom grupowym warstwy 2 (mapowanie adresów). W sieciach IP istnieje klasa
adresów D zarezerwowana na adresy grupowe. Binarnie każdy taki adres klasy D zaczyna się od se-
kwencji 1110 (najbardziej znaczące bity), po której następuje ciąg 23 mniej znaczących bitów o nie-
określonej strukturze. Te mniej znaczące bity są wklejane w multicastowy adres Ethernetowy. Stosując
ten schemat mapowania ze względu na różnice długości obu adresów jednemu adresowi Ethernetowemu
odpowiadają 32 adresy IP. Znaczy to, że nasłuchujący komputer musi odfiltrować pakiety innych grup
mających ten sam MAC adres.
Dynamiczna rejestracja - Przy stosowaniu transmisji multicastowej pożądane jest wprowadzenie me-
chanizmu, który może informować sieć o tym, że komputer jest członkiem jakiejś grupy. Bez tego me-
chanizmu dokładnie cała sieć musiałaby być "zalewana" transmisją multicastową. Nie jest to wprawdzie
przypadek tak złośliwy jak zwielokrotnienie pakietu w pojedynczej gałęzi, ale również niepożądany, a
już na pewno niedopuszczalny w sieciach rozległych. Dla sieci IP do tego celu istnieje specjalizowany
protokół IGMP (Internet Group Management Protocol), który służy do zarządzania i nadzoru dyna-
micznych list użytkowników wykorzystujących transmisję grupową (protokół ten jest implementowany
w komputerach i routerach). Jeżeli komputer ma zamiar odbierać pakiety którejkolwiek z istniejących
grup transmisyjnych, wysyła komendę IGMP - "join" i staje się wtedy członkiem grupy. Aby pozosta-
wać w grupie musi wysyłać odpowiedzi na zapytania routera. Jeśli chce się wypisać z grupy po prostu
nie odpowiada lub (w wersji 2 IGMP) wysyła wiadomość o opuszczeniu grupy.
Transmisja multicastowa - Większość aplikacji multicastowych IP opata jest na protokole UDP. Jak
wiadomo pakiety UDP przepadają podczas przepełnień znacznie częściej niż pakiety TCP. W przypad-
ku transmisji typu audio/video sytuacja taka jest dopuszczalna, a wymuszanie retransmisji jest nieprak-
tyczne i powoduje urwanie się dźwięku bądź obrazu. Zanim w technologiach sieciowych mechanizmy
gwarancji jakości (QoS) zadomowią się na dobre jedynym sposobem zapobiegania przepadania pakie-
tów jest zapewnienie odpowiedniego pasma transmisji. Poprawa jakości transmisji multicastowych czę-
ściowo następuje przy używaniu przez aplikacje takich protokołów jak ReSerVation Protocol (RSVP),
the Real-Time Transport Protocol (RTP) i 802.1p oraz mechanizmów gwarancji jakości w warstwie 2.
Routing ruchu grupowego - W przypadku konstruowania trasy w ruchu unicastowym dla danej pary
komputerów istnieje jednoznaczna ścieżka określająca trasę pakietów podczas transmisji. W transmisji
ruchu grupowego trasie odpowiada całe drzewo wskazujące drogę transmisji i punkty replikacji pakietu.
Podobnie jak w przypadku routingu pakietów pojedynczych tworzona jest tablica routingu, która to
przechowuje po jednej strukturze drzewiastej dla każdej grupy multicastowej. Głównym celem podczas
konstrukcji grupowej tablicy routingu jest zadbanie o to, aby każda gałąź sieci w której istnieje choćby
jeden odbiorca danej grupy otrzymała jedną kopię pakietu. Dla sieci IP IETF poleca kilka metod rout-
ingu: Distance Vector Multicast Routing Protocol (DVMRP), Multicast extensions to OSPF (MOSPF),
Protocol Independent Multicast (PIM), Core-Based Trees (CBT). Protokoły routingu grupowego budują
sobie grupową tablicę routingu poprzez sprawdzanie w jaki sposób routowana jest przesyłka unicastowa
w klasycznej tablicy routingu. Niektóre protokoły pracują używają unicastowej tablicy (PIM i CBT).
Inne tworzą swoją własną (DVMRP i MOSPF).
Routing grupowy możemy podzielić na dwie kategorie: Dence-mode (tryb gęsty) oraz Sparse-Mode
(tryb rzadki). Protokoły typu DM zakładają, że każdy użytkownik odbiera daną transmisję grupową i
wtedy pierwsza przesyłka takiej transmisji wysyłana jest w każde miejsce w sieci, a dopiero potem
usuwane są z tablicy routingu grupowego gałęzie sieci w których nie ma ani jednego odbiorcy danej
grupy. Protokoły typu SM zakładają w sieci znajduje się stosunkowo niewielu odbiorców, czyli że słu-
chacze są rozproszeni. Taka sytuacja ma miejsce w przypadku np. transmisji grupowej w internecie.
Protokoły te w momencie inicjalizacji transmisji tworzą pustą tablicę routingu grupowego, a następnie
dołączają odbiorców do danej grupy jedynie na ich wezwanie, czyli wysłanie komendy join protokołu
IGMP. Protokoły typu DM tj. MOSPF, DVMRP, PIM-DM pracują bardziej efektywnie w sieciach lo-
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
24
kalnych (gęsto upakowani odbiorcy oraz duże pasmo). Natomiast protokoły typu SM tj. CBT oraz PIM-
SM są odpowiedniejsze dla sieci WAN.
Nawiązywanie połączenia, transmisja i opuszczenie grupy
Klient wysyła komendę join (protokół IGMP) do routera odpowiedzialnego za obsługę ru-
chu grupowego.
MAC adres klienta (a dokładniej MAC adres routera do którego podpięty jest klient) zostaje
skojarzony z adresem żądanej grupy (adres klasy D). Dzieje się to za sprawą protokołu ro-
utingu grupowego np. PIM , który to dokonuje odpowiedniej poprawki w swojej tablicy ro-
utingu.
Klient otrzymuje każdy pakiet przynależny do grupy.
Jeżeli na drodze pakietu pojawi się switch sprawdza on czy MAC adres przesyłki jest prze-
chowywany w tablicy przełączania switcha. Jeśli go nie ma urządzenie wysyła pakiet na
każdy swój interfejs.
Klient wysyła komendę leave (protokół IGMP) do routera odpowiedzialnego za obsługę ru-
chu grupowego.
Aby wdrożyć IP multicast w swojej sieci należy:
Posiadać komputery wyposażone w oprogramowanie obsługujące protokół TCP/IP używające
technik grupowych zgodne z RFC 1112.
Serwer i klienci muszą używać aplikacji korzystających z IP multicastu.
Każdy komputer musi być wyposażony w kartę sieciową umożliwiającą odbiór adresów typu
multicast (oprócz odczytywanych przez wszystkie karty adresów unicast i broadcast).
Posiadać sieć o wystarczającej przepustowości (najlepiej z dedykowanym pasmem dla każdej
stacji).
5. ROUTOWANIE W SIECIACH IP
5.1 Pojęcie routera
Router to urządzenie, które kieruje ruchem pakietów w sieci na podstawie informacji warstwy trze-
ciej modeli ISO/OSI. Posługując się w tym celu protokołami tras, buduje tablice określające trasę, którą
powinien przebyć pakiet, aby dotrzeć do celu.
Mosty lub przełączniki łączą dwie lub więcej fizycznych sieci w jedną sieć logiczną, podczas gdy router
łączy sieci logiczne i wyznacza trasę między nimi, wykorzystując informacje zgromadzone przez proto-
koły tras w tablicy routingu
.
[6]
5.2 Ogólne wiadomości na temat routingu
Jedną z podstawowych funkcji protokołu IP jest rutowanie. Umożliwia ono przesyłanie datagra-
mów poprzez wiele sieci do miejsca przeznaczenia. Rutowanie polega więc na ustaleniu ścieżki połą-
czeń między kolejnymi routerami, do miejsca przeznaczenia pakietu.[7]
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
25
Jeśli urządzenie sieciowe ma wysłać pakiet do innego urządzenia sieciowego, wówczas mogą zajść na-
stępujące przypadki:
Węzeł sieci, do którego skierowany jest pakiet albo bezpośrednio połączony z urządzeniem sie-
ciowym mającym wysłać ten pakiet, albo znajduje się w tej samej sieci co wspomniane urzą-
dzenie sieciowe. W obu tych sytuacjach pakiet może być bezpośrednio przesłany do węzła sie-
ciowego.
Węzeł sieci, do którego skierowany jest pakiet, nie znajduje się w tej samej sieci/podsieci co
urządzenie sieciowe mające wysłać pakiety. W tej sytuacji urządzenie powinno podjąć decyzję
o wyborze adresu urządzenia sieciowego, które przejmie odpowiedzialność za dalsze przesłanie
pakietu.
Jeśli urządzeniem sieciowym wysyłającym pakiet jest np. komputer, to w sytuacji drugiej pakiet
wysyłany jest do najbliższego routera, którego adres określony jest w konfiguracji interfejsu sieciowego
tego komputera jako gateway. Jeśli natomiast urządzeniem tym jest router, to musi on podjąć decyzję o
dalszej drodze pakietu na podstawie posiadanych przez siebie informacji. Informacje te w routerze za-
warte są w tablicy rutowania.[7]
5.3 Routing statyczny a routing dynamiczny
W przypadku routingu statycznego informacja o trasach zapisywana jest przez administratora w ta-
blicy routingu. Routing statyczny jest prostym nie obciążającym dodatkowo sieci sposobem konfigura-
cji routerów.
Router skonfigurowany statycznie jest pasywny – nie komunikuje się z innymi routerami w celu uzy-
skania informacji o dostępnych odległych sieciach lub bieżącym stanie już znanych mu tras. Wpisywa-
nie tras ręcznie jest uciążliwe przy dużych rozmiarach sieci. Routery statyczne nie komunikują się w
przypadku awarii łącza. Wszelkie zmiany w topologii sieci administrator musi nanieść ręcznie. W przy-
padku routingu statycznego zawsze znana jest droga jaką pakiet podąża do celu. Routing statyczny nie
umożliwia wykorzystania połączeń zapasowych.[8]
Routing dynamiczny, polega na zbieraniu informacji dotyczących sieci i budowaniu tablic routingu
przez same routery. Wymieniają one między sobą tablice routingu i każdy z routerów aktualizuje swoje
zapisy w tablicy (koszty związane ze ścieżkami, liczba skoków). Po pewnym czasie tablice routingu w
każdym routerze zawierają w przybliżeniu te same informacje routingu. [8]
Protokoły trasowania dynamicznego są wykorzystywane przez routery do pełnienia trzech podsta-
wowych funkcji:
Wyszukiwanie nowych tras,
Przekazywanie do innych routerów informacji o znalezionych trasach,
Przesyłanie pakietów za pomocą routerów.
Algorytmy trasowania dynamicznego podzielone są na trzy kategorie:
Wektora odległości,
Stanu złącza,
Hybrydowe.
Podstawową różnicą między wymienionymi kategoriami algorytmów jest sposób wyszukiwania no-
wych tras oraz sposób przekazywania informacji o nich [2].
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
26
5.4 Protokoły routingu
Zadaniem protokołów routingu jest dostarczenie informacji potrzebnych do zestawienia optymal-
nych ścieżek, bazując na informacjach wymienianych między routerami.
Do podstawowych protokołów routingu należą:
RIP,
BGP,
OSPF,
IGRP,
EGP
5.4.1 Protokół RIP
RIP (Routing Information Protocol) jest wewnętrznym protokołem routingu, stosującym al-
gorytm „distcince-vector”. Stosowany jest w sieciach jako podstawowa metoda wymiany informacji o
routingu pomiędzy routerami.
Format pakietu RIP:
A
1
B
1
C
1
D
2
E
2
F
4
G
4
H
4
I
4
A. Pole dyrektywy (
zgłoszenie/odpowiedź)
B.
Wersja protokołu (1 lub 2)
C. Obszar zerowy
D. Identyfikacja rodziny adresu
E. Znacznik pola routingu
F. Adres IP
G. Maska podsieci
H.
Następna wartość skoku
I. Pole metryki (numer skoku)
Długość pola w bajtach
W celu zapewnienia sobie aktualnej informacji o połączeniach w sieci, routery opierając się na protoko-
le RIP podejmują następujące działania:
1. Żądają aktualnych informacji o routingu od innych routerów i na ich podstawie aktualizują ta-
blice routingu,
2. Odpowiadają na podobne żądania innych routerów,
3. W określonych odstępach czasu rozsyłają informacje o swojej obecności, informując inne route-
ry o aktualnej konfiguracji połączeń,
4. Rozsyłają informacje o zmianach konfiguracji.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
27
Protokół RIP wysyła komunikaty uaktualniające w stałych odstępach czasu, lub w przypadku
zmiany topologii sieci. Po przyjęciu komunikatu tablica jest natychmiast aktualizowana. Routery RIP
utrzymują tylko najlepsze ścieżki, o najmniejszej liczbie skoków, do miejsca przeznaczenia. Router po
uaktualnieniu swojej tablicy routingu wysyła niezwłocznie informacje o zmianie do innych routerów.
Informacja o zmianach wysyłana jest niezależnie od uaktualnień, które wysyłane są regularnie.
Miarą stosowaną przez RIP do określania odległości pomiędzy źródłem a miejscem przeznacze-
nia jest liczba skoków. Każdy skok ma przypisaną wartość 1. Protokół RIP przyjmuje ograniczenie do-
tyczące liczby skoków między źródłem a miejscem przeznaczenia, dzięki czemu eliminowane jest prze-
syłanie informacji w pętli. Maksymalna liczba skoków na ścieżce wynosi 15.
W celu dostosowania się do szybkich zmian topologii sieci protokół RIP wyposażono w mecha-
nizmy stabilizujące. Aby zapobiec skutkom błędnej informacji o routingu, w protokole RIP zaimple-
mentowano mechanizmy split-horizon i hold-down.
Protokół RIP wyposażono w kilka czasomierzy (timers). Wśród nich są:
Czasomierz uaktualnienia routingu (routing-update timer) – wyznacza przedziały czasu
pomiędzy kolejnymi okresami uaktualniania. Jest to stały przedział nie przekraczający 30 s,
Limitu czasu trasy (route timeout timer) – przypisany do każdego wejścia do tablicy ro-
utingu. W przypadku jego wyczerpania trasa zostaje oznaczona jako nieważna. Mimo tego
jest nadal utrzymywana w tablicy routingu aż do momentu, gdy zostanie wyczerpany czaso-
mierz czyszczenia trasy,
Czyszczenia trasy (route-flush timer) [2].
Rys.11
Typowe zastosowanie protokołu RIP
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
28
Protokół RIP w wersji 2
Protokół ten opisany jest w dokumencie RFC 1723, w porównaniu z wersją pierwszą wprowadzono
w nim szereg modyfikacji. Główną zmianą jest ogłaszanie maski podsieci razem z adresem sieci. W ten
sposób w wersji drugiej protokół RIP nadal jest protokołem wektora odległości, ale bezklasowym. Nie
występuje już problem sieci nieciągłych, można także wyłączyć automatyczne łączenie tras na granicy
sieci głównych. Dzięki rozsyłaniu maski podsieci protokół RIP w wersji drugiej obsługuje sieci VLSM
(Variable Length Subnet Masking), czyli te, w których stosuje się różnej długości maskę dla podsieci tej
samej sieci głównej.
Zoptymalizowano także sposób komunikacji z routerami sąsiednimi. W wersji drugiej nadal wyko-
rzystywany jest port 520 protokołu UDP, ale transmisja realizowana jest w drodze multiemisji z wyko-
rzystaniem specjalnej grupy o adresie 224.0.0.9. Dzięki temu ruch związany z protokołem RIP nie ob-
ciąża wszystkich urządzeń w danym segmencie, a jedynie routery należące do grupy 224.0.0.9.
Wprowadzono także możliwość wzajemnego uwierzytelniania routerów wymieniających informa-
cje. Pozwala to wyeliminować z sieci routery nieautoryzowane, od których nie będą akceptowane ogło-
szenia. Dla zapewnienia pełnej współpracy ze starszymi urządzeniami, które posługują się tylko wersją
pierwszą RIP, dodano komendy pozwalające włączyć pełną zgodność z wersją pierwszą.
5.4.2 Protokół BGP
Protokół BGP (Border Gateway Protocol) jest zewnętrznym protokołem routingu między dome-
nami. Do wymiany informacji między routerami korzysta z protokołu TCP. TCP gwarantuje popraw-
ność i integralność przesyłanych danych, pozwala zmniejszyć obciążenie sieci, poprzez przesyłanie tyl-
ko informacji o zmianie tras.
Rys.12
Typowe zastosowanie protokołu RIP2
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
29
Format pakietu BGP:
1 Znacznik
2
Długość 3 Typ
4 Dane
Długość pola w bajtach
16
2
1
Wartość zmienna
1. Pole znacznika
2.
Długość znacznika
3. Tpy znacznika (
jedna z następujących wiadomości):
- otwarty
- uaktualniony
-
ogłoszenie
-
utrzymujący się przy „życiu”
4. Pole danych
Protokół BGP może być używany:
Wewnątrz systemów autonomicznych – między dwoma lub większą liczbą routerów BGP zlokali-
zowanych w jednym systemie autonomicznym,
Na zewnątrz systemów autonomicznych – między dwoma lub większą liczbą routerów w różnych
systemach autonomicznych,
Przez systemy autonomiczne – między dwoma lub większą liczbą routerów BGP, które wymieniają
ruch przez system autonomiczny, nie obsługujący protokołu BGP.
Dwa komunikujące się ze sobą routery nazywane są sąsiadami. Definiowani są przy tym sąsiedzi ze-
wnętrzni, należący do różnych systemów autonomicznych oraz sąsiedzi wewnętrzni, należący do tego
samego systemu autonomicznego. Sąsiedzi wewnętrzni komunikują się między sobą w celu ustalenia
Rys. 13
Ruch pomiędzy systemami autonomicznymi, kierowany przez BGP.
RR
– router rdzeniowy, RB – router brzegowy, R – router, SK – system końcowy
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
30
jednolitej oceny stanu systemu autonomicznego oraz określenia routera, służącego do połączenia z po-
szczególnymi systemami autonomicznymi.
Informacje o trasach, przesyłane przez BGP, zawierają pary liczb (adres sieci i ścieżka systemu au-
tonomicznego), gdzie ścieżka systemu jest łańcuchem systemów autonomicznych, przez które trzeba
przejść, aby dotrzeć do określonej sieci. Początkowo między routerami przesyłane są całe tablice ro-
utingu, później przesyłane są jedynie informacje o zmianach w tablicy routingu. Protokół BGP prze-
chowuje tablice routingu wraz ze wszystkimi możliwymi ścieżkami, jednak innym routerom rozgłasza
tylko ścieżki optymalne.
Każdy komunikat BGP ma określony standardowy nagłówek i dodatkowe pola zależne od typu
komunikatu.[9]
Zdefiniowane są cztery typy komunikatów:
Komunikat otwierający (open message) – otwiera sesję komunikacyjną protokołu BGP
pomiędzy równorzędnymi routerami i jest pierwszym komunikatem, wysyłanym przez
obie strony po ustaleniu połączenia na poziomie protokołu transportowego. Komunikat
otwierający jest potwierdzany komunikatem podtrzymującym wysyłanym przez równo-
rzędny router. Natychmiast po potwierdzeniu komunikatu otwierającego mogą być
wymieniane komunikaty uaktualniające, zgłoszeniowe i podtrzymujące,
Komunikat uaktualniający (update message) – zapewnia uaktualnianie routingu w in-
nych systemach BGP, pozwala routerom odtworzyć u siebie obraz topologii sieci. W
celu zapewnienia niezawodnego dostarczania uaktualnień do ich przesyłania używa się
protokołu TCP. Komunikaty otwierające mogą wycofywać z tablicy routingu jedną lub
więcej niewykonalnych tras i podczas ich wycofywania zgłaszać nowe,
Komunikat zgłoszeniowy (notification message) – jest wysyłany w przypadku wykry-
cia błędu. Zgłoszenia są używane do zamykania i otwierania sesji i informowania
wszystkich przyłączonych routerów o przyczynie zamknięcia sesji,
Komunikat podtrzymujący (keep-alive message) – powiadamia równorzędne routery
BGP o tym, że router jest aktywny. Częstotliwość wysyłania komunikatu jest dobrana
tak, aby zapobiec wygaszeniu sesji.
5.4.3 Protokół OSPF
Protokół OSPF (Open Shortest Path First) został zaprojektowany w celu zwiększenia efektyw-
ności przetwarzania w sieciach pracujących z protokołem IP. Jest udoskonaleniem protokołu RIP, po-
nieważ pozwala na wybór ścieżki na podstawie wieloparametrowego kryterium kosztu określanego jako
routing najniższego kosztu. Wybór trasy odbywa się na podstawie wielu czynników, takich jak szyb-
kość i opóźnienie wprowadzane przez łącze, potrzeba ominięcia określonych obszarów lub różnorodne
priorytety. Decyzję o wyborze trasy podejmuje się na podstawie algorytmu SPF, który uwzględnia:
Liczbę skoków do miejsca przeznaczenia,
Szybkość transmisji linii, łączących poszczególne systemy autonomiczne,
Opóźnienia spowodowane przeciążeniem sieci. Router może skierować pakiety trasą
omijającą przeciążone fragmenty sieci,
Koszt trasy, którego miara jest określana przez administratora sieci, najczęściej oparta
na rodzaju użytego medium transmisyjnego.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
31
Format pakietu OSPF
1 2
3
4
5
6
7
8
9
Długość pola w bajtach
1 1
2
4
4
2
2
8
Wartość zmienna
1. Numer wersji
2. Typ pola (
”hello” lub opis bazy danych)
3.
Długość pakietu
4. Identyfikator routera
5. Identyfikator obszaru
6. Suma kontrolna
7. Identyfikacja typu
8. Identyfikacja pola
9. Pole danych
Protokół wysyła zgłoszenia LSA (Link-state advertisement) do wszystkich routerów znajdujących się w
danym obszarze hierarchicznym. W zgłoszeniach LSA są zawarte między innymi informacje o przyłą-
czonych interfejsach i użytych miarach.
Po zgromadzeniu informacji o łączach routery, stosując algorytm SPF, wyznaczają najkrótszą ścieżkę
do każdego węzła. Protokół OSPF może działać w układzie hierarchicznym. Największą jednostką w
hierarchii jest system autonomiczny AS, który jest zbiorem sieci pod wspólną administracją, a które ma-
ją wspólną strategię routingu. Protokół OSPF może przyjmować i wysyłać trasy do innych systemów
AS. System AS można podzielić na pewną liczbę obszarów (areas), które są grupami sąsiednich sieci i
przyłączonych hostów. Poszczególne obszary sprzęgają routery graniczne obszaru (area border routers)
[2].
Rys.14
Typowe zastosowanie protokołu OSPF
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
32
5.4.4 Protokół IGRP
Protokół IGRP (Interior Gateway Routing Protocol) został opracowany przez Cisco System w
celu wyeliminowania niektórych ograniczeń protokołu RIP. Jedną z najważniejszych zmian jest znacz-
nie większy dopuszczalny rozmiar sieci. W protokole IGRP największa ścieżka może przyjmować war-
tość do 255 (domyślnie limit ustawiony jest na 100 skoków). Jest to protokół wektora odległości. Zasa-
da pracy polega na tym, że poszczególne sieci ogłaszane są do sąsiadów przez wszystkie włączone in-
terfejsy z wykorzystaniem komunikacji rozgłoszeniowej. IGRP przesyła i monitoruje liczbę skoków, ale
tylko w celu sprawdzania, czy trasa nie jest zbyt długa (255 skoków maksymalnie). Liczba skoków nie
jest w ogóle brana pod uwagę przy wyliczaniu metryki. Protokół IGRP wykorzystuje kombinacje czte-
rech następujących parametrów:
Opóźnienie w sieci,
Pasmo (1200 b/s – 10 Gb/s),
Niezawodność (1 – 255),
Obciążenie (1 - 255).
Administratorzy sieci mogą zmieniać ustawienia dla wszystkich tych metryk. IGRP korzysta z
ustawień wprowadzonych przez administratora bądź używa ustawień domyślnych, automatycznie wyli-
czając najlepsze trasy.
Protokół IGRP korzysta z różnego rodzaju informacji dostarczanych przez metryki. Dla każdej
ścieżki wiodącej przez system autonomiczny IGRP zapisuje informacje o segmencie z najwęższym pa-
smem, sumarycznym opóźnieniu, najmniejszej maksymalnej wielkości pakietu oraz niezawodności i
obciążeniu.
Router korzystający z IGRP rozgłasza uaktualnienia IGRP co 90 sekund. Oznacza trasę jako nie-
dostępną, jeżeli w ciągu trzech uaktualnień nie otrzyma informacji od pierwszego routera na trasie. Po
okresie pięciu uaktualnień router usuwa trasę z tablicy routingu. W celu przyspieszenia osiągnięcia
zbieżności przez protokół routingu stosowane są uaktualnienia błyskowe (wykonane wcześniej niż tra-
dycyjne, wysyłane co pewien ustalony czas uaktualnienia, informujące inne routery o zmianie metryki) i
uaktualnienia niepoprawnej odpowiedzi (chronią przed większymi pętlami routingu, powstającymi na
skutek zwiększania się wartości metryk) [10].
5.4.5 Protokół EGP
Protokół EGP (Exterior Gateway Protocol) umożliwia wymianę komunikatów między parą są-
siednich routerów zewnętrznych. Router zewnętrzny to taki sam router, który z jednej strony ma możli-
wość komunikowania się z innymi routerami wewnątrz systemu autonomicznego, a z drugiej z routera-
mi zewnętrznymi innych systemów autonomicznych. System autonomiczny może posiadać jeden lub
wiele routerów zewnętrznych.
Każdy router zewnętrzny wymienia informacje związane z wewnętrzną reguła doboru tras z routerami
wewnętrznymi systemu autonomicznego korzystają z protokołu wewnętrznej reguły doboru tras. Po-
zwala to routerowi zewnętrznemu na uzyskanie informacji o adresach komputerów (użytkowników
końcowych) znajdujących się w systemie autonomicznym. Ponadto każdy router zewnętrzny wymienia
informacje związane z zewnętrzną regułą doboru tras z sąsiednimi routerami zewnętrznymi innych sys-
temów autonomicznych.
Podstawowe procedury wykonywane przez router zewnętrzny pracujący według protokołu EGP to :
poznanie sąsiada poprzez wymianę specjalnych komunikatów między sąsiednimi routerami ze-
wnętrznymi
okresowa wymiana informacji związanej z kierowaniem ruchem datagramów między dwoma
sąsiednimi routerami zewnętrznymi
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
33
monitorowanie dostępności sąsiednich routerów zewnętrznych realizowane przez wysyłanie
odpowiedniego komunikatu i oczekiwanie na odpowiedź. Jeśli po trzykrotnym wysłaniu komu-
nikatu ciągle brak odpowiedzi, to zakłada się, że sąsiedni router zewnętrzny przestał działać i
wówczas usuwa się z tablicy kierunków wszystkie prowadzące przez niego trasy
Router zewnętrzny zwykle utrzymuje dwie tablice kierunków. Jedną dotyczącą kierowania ruchem da-
tagramów wewnątrz systemu autonomicznego i drugą z trasami do innych routerów zewnętrznych. Ta-
blica związana z ruchem datagramów wewnątrz sytemu autonomicznego jest wyznaczana (aktualizowa-
na) z użyciem protokołów wewnętrznych reguł doboru tras, a tablica kierunków dotyczących wymiany
datagramów między systemami autonomicznymi jest wyznaczana z użyciem procedur nie definiowa-
nych przez protokół EGP.
6 VLAN
6.1 Definicja i podstawowe własności sieci VLAN
Jako definicję sieci VLAN można spotkać wiele różnych pojęć. Jedną z najtrafniejszych wydaje się
być określenie sieci VLAN przez miesięcznik Networld :
„Wirtualne sieci LAN – VLAN (Virtual Local Area Networks) – umożliwiają wirtualne grupowa-
nie stanowisk pracy, niezależnie od tego, gdzie fizycznie znajdują się w sieci. Administrator sieci może
fizycznie podzielić całą sieć na elementy logiczne, nie zważając na to, w jakim segmencie sieci są zlo-
kalizowane różne stanowiska pracy. Technologia sieci VLAN jest pomocna przy wprowadzaniu różne-
go rodzaju zmian, takich jak definiowanie nowych stanowisk pracy, usuwanie ich z sieci, kontrolowanie
pakietów rozgłoszeniowych, itp. Bardzo istotną zaletą tych sieci jest to, że administrator może grupo-
wać serwery w jednym miejscu. Ułatwia to znakomicie zadanie zarządzania tymi serwerami, świadczą-
cymi swe usługi wielu grupom roboczym, z których każda reprezentuje wirtualną sieć LAN.” [11]
Wirtualne sieci lokalne umożliwiają łatwe logiczne pogrupowanie zasobów, urządzeń i stacji
końcowych zgodnie z wymogami organizacyjnymi właściciela sieci a nie według ich fizycznego poło-
żenia.
LAN 1 – Kadry
LAN 2 – Projekty
Rys. 15 Przykładowa sieć LAN przed reorganizacją
LAN 3 - Sprzedaż
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
34
Sieci VLAN tworzy się w oparciu o jeden lub wiele przełączników umożliwiających tworzenie
wirtualnych sieci lokalnych. Każda z sieci VLAN ma własną instancję protokołu drzewa rozpinającego
(Spanning Tree).
6.2 Zarządzanie siecią uzyskane dzięki zastosowaniu VLAN
Podstawową zaletą VLAN a właściwie przełączników posiadających możliwość tworzenia sieci
VLAN jest możliwość częstych zmian w organizacji sieci ( np. przydział do określonych grup robo-
czych) bez zmiany fizycznego umiejscowienia poszczególnych stacji końcowych. Administrator może
szybko dostosować sieć LAN do nowej struktury organizacyjnej jedynie poprzez konfigurację, ewentu-
alnie konfigurację i użycie dodatkowych przełączników. Ma to znaczenie zwłaszcza w przypadku roz-
budowanych sieci LAN (kilkadziesiąt stacji na kilku piętrach), których właściciele dokonują częstych
zmian organizacyjnych( np. dołączanie nowych pracowników przenoszenie ich z działu do działu itd.).
Wyjaśniają to rysunki 15 i 16.
Drugą z zalet VLAN to ograniczanie obszarów rozgłaszania. Każda sieć VLAN stanowi oddzielny
obszar rozgłaszania. Dzięki temu komunikaty typu broadcast z urządzenia z jednej z sieci VLAN trafia-
ją jedynie do urządzeń będących w tej samej sieci VLAN i nie będą transmitowane do innych stacji,
Rys.16 Sieć z Rys.15 po reorganizacji z sieciami VLAN
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
35
nawet przyłączonych do tego samego przełącznika., np. na rysunku 16 komunikat typu broadcast ze
stacji K1 trafi jedynie do stacji K4 i K7. Dzięki temu cała sieć działa znacznie wydajniej.
Kolejną zaletą sieci VLAN to zwiększone bezpieczeństwo każdej z sieci VLAN, gdyż każda z nich
jeśli jest poprawnie skonfigurowana jest „niewidoczna” dla użytkowników z zewnątrz, także dla użyt-
kowników innych sieci wirtualnych, nawet dołączonych do tego samego przełącznika. Aby połączyć ze
sobą dwie sieci wirtualne należy użyć routera i odpowiednio go skonfigurować (rys. 17). Rozwiązanie
to możliwe jest do zastosowania jedynie w przypadku VLAN-ów zbudowanych w oparciu o grupowa-
nie adresów warstwy sieciowej, w których każda z sieci VLAN jest określona jako grupa portów two-
rząca jedną podsieć. Wtedy najczęściej wykorzystuje się router zintegrowany z przełącznikiem. Prze-
łączniki takie nazywane są przełącznikami routującymi (routing switch). [12][13]
6.3 Metody tworzenia VLAN
Przełączniki umożliwiają tworzenie sieci VLAN poprzez: grupowanie portów, grupowanie adre-
sów MAC i grupowanie adresów warstwy sieciowej np. IP.
6.3.1 Grupowanie portów
W metodzie tej określa się na sztywno przynależność konkretnego portu do jednej sieci VLAN.
Dołączanie kolejnych stacji do portu przełącznika powoduje dołączenie tej stacji do sieci VLAN do któ-
rej należy port. Wadą tej metody jest to, że przeniesienie stacji z jednego portu do drugiego nie należą-
cego do VLAN powoduje usunięcie stacji z sieci VLAN. Dlatego też ten sposób grupowania nie nadaje
się do sieci w której przewidywane są częste zmiany umiejscowienia stacji końcowych (np. kilka stacji
jest notebookami). Inną wadą tego typu grupowania jest to , że w przypadku dołączenia do portu kilku
użytkowników przy pomocy koncentratora wszyscy jego użytkownicy automatycznie są użytkownikami
tworzonej sieci VLAN. Jest to obecnie najbardziej rozpowszechniona metoda tworzenia sieci VLAN.
[12][14]
Switch
P1 P2 P3
P4 P5 P6
K1
K2
Router
K3
K4
VLAN2
VLAN1
Rys. 17 Sposób zapewnienia komunikacji pomiędzy dwoma sieciami VLAN
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
36
6.3.2 Grupowanie adresów MAC
W tej metodzie dodajemy stacje do sieci VLAN podając adres MAC karty sieciowej stacji. Po-
czątkowa konfiguracja sieci jest w tej metodzie czasochłonna ale późniejsze przenoszenie stacji z jed-
nego portu do drugiego nie zmusza administratora do podjęcia żadnych działań związanych z rekonfigu-
racją sieci. Wadą tej metody jest brak odporności na stosowanie stacji typu docking station. Są to stacje
które mają zintegrowany interfejs sieciowy, a dostęp do sieci uzyskuje się poprzez fizyczne włożenia
komputera do takiej stacji co oznacza identyfikację stacji z adresem MAC stacji logowania a nie kom-
putera w niej umieszczonego. Rozwiązanie to jest często spotykane w obecnie dostępnych na rynku
przełącznikach.[12][14]
6.3.3 Grupowanie adresów warstwy sieciowej
W tej metodzie dodajemy stacje do sieci VLAN podając unikalny adres warstwy sieciowej stacji.
Obecne przełączniki wspierają takie protokoły jak IP, IPX, DECnet i AppleTalk. Sieci VLAN tworzone
w ten sposób są pozbawione wad sieci VLAN tworzonych w oparciu o grupowanie portów i grupowa-
nie adresów MAC ale czas przełączania w tego typu sieciach jest dłuższy niż w wyżej wymienionych
metodach. Rozwiązanie to można spotkać w niewielkiej liczbie przełączników. [12][14]
6.4 Standardy stosowane w sieciach LAN
Technologia VLAN opiera się na standardzie IEEE 802.Q . Opisuje on formaty ramek używanych
przez sieci VLAN, procedury stosowane przy ich zarządzaniu metody budowania grup logicznych.
Najważniejszą częścią tego standardu jest rekomendacja IEE802.1Q. Umożliwia ona przełącznikom
przesyłanie ramek pochodzących z różnych sieci wirtualnych. Numery tych obwodów są zawarte w 12-
bitowym polu Identyfikatora VLAN 802.1P/802.1Q. Wymianę informacji między przełącznikami o
ustalonych sieciach wirtualnych zapewnia protokół GVRP (GARP VLAN Registration Protocol) –
dzięki temu ramki rozgłoszeniowe nie przedostaną się poza obręb określonej sieci.[11]
6.4.1 Standard IEEE 802.1P
Standard 802.1p., opracowany przez komitet IEEE, i standard definiujący usługi ToS (Type of
Service) protokołu IP, opracowany przez IETF, stanowią silne narzędzia dla zarządzających sieciami,
którzy ustalają priorytety CoS (Class of Service).
802.1p - protokół współpracujący ściśle z 802.1q, pozwalający konfigurować sieci VLAN i kon-
trolować ruch pakietów wymienianych między różnymi sieciami VLAN. Protokół ten nadaje się dobrze
np. do obsługi ruchu pakietów multicast i aplikacji time-critical, definiując dokładnie, przez które sieci
VLAN 802.1q mają być transportowane pakiety.[4]
Specyfikacja 802.1p definiuje trzy bity w nagłówku ramki Ethernetu. Bity te ustalają jeden z
ośmiu priorytetów i są interpretowane przez przełączniki sieci LAN w warstwie 2.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
37
DA
SA
Ethertype, Priority, Tag
„Nowy MAC 802.3"
802.1p (3 bity)
VLAN ID (12
bitów)
4 Bajty
Nagłówek MAC 802.3
4-Bajtowe pole a w nim:
- Ethertype
- 802.1p
- Identyfikator sieci VLAN
Wartość znacznika = VLAN ID
Specyfikacja usługi ToS protokołu IP pracuje podobnie, ale jest zaimplementowana w warstwie
3. Ustawia także trzy bity w polu zlokalizowanym w nagłówku IP. W odróżnieniu od 802.1p, do rozpo-
znania przez urządzenia sieciowe wymaga inteligencji warstwy 3. Różni się również tym, że jej priory-
tety mogą być zachowane podczas przesyłania przez sieci WAN. Na szczęście, w celu zachowania prio-
rytetów CoS poza siecią LAN, większość obecnie oferowanych przełączników może odwzorowywać
802.1p na usługi ToS protokołu IP
Technologie 802.1p i ToS mogą jedynie ustalać priorytety względne, ponieważ bezpołączeniowa
natura pakietów sieci LAN wyklucza do pewnego stopnia gwarancję uzyskania prawdziwego obwodu
end-to-end. Jednak po stronie ATM taka gwarancja jest możliwa ze względu na połączeniową naturę
ATM
6.4.2 Standard IEEE 802.1Q
Standard IEEE 802.1q opisuje sposób utworzenia oddzielnych sieci LAN w obrębie tej samej fi-
zycznej sieci Ethernet. Przesyłane pakiety zawierają identyfikator sieci wirtualnej. Przełączniki (swi-
tche) obsługujące VLANy można skonfigurować tak, żeby przesyłały pakiety na wybrane porty w za-
leżności od VLANu, do którego należą. W ten sposób wirtualne sieci mogą być całkowicie odseparo-
wane, a ich konfiguracja może być modyfikowana programowo, bez zmian w okablowaniu.
Routery obsługujące VLANy pozwalają utworzyć oprócz standardowych interfejsów np. eth0,
dodatkowe interfejsy VLANowe, np. eth0.5, eth0.8, itp. W ten sposób można skierować ruch do wybra-
nej sieci wirtualnej
802.1q - opisuje pracę wirtualnych sieci LAN (VLAN) budowanych w środowisku transportują-
cym ramki. Jest to idealny mechanizm do budowania szybko pracujących łączy sprzęgających sieci
VLAN, eksploatowany w systemach sieciowych składających się z przełączników. 802.1q udostępnia
mechanizmy, dzięki którym operując w warstwie Data Link - można prezentować sieć jako dwie nieza-
leżne, ale powiązane ze sobą struktury: fizyczną i logiczną.[4]
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
38
Standard IEEE 802.1Q Tag-based VLAN VLAN korzysta z dodatkowego specjalnego znacznika w na-
główku adresu MAC do identyfikacji członków sieci VLAN z ramek przechodzących przez mosty. Ten
znacznik jest używany dla VLAN i QoS (jakość obsługi) jako priorytetowa identyfikacja. VLAN-y mo-
gą być tworzone statycznie ręcznie albo dynamicznie przez GVRP. Identyfikator VLAN ID wiąże ram-
kę z konkretnym VLAN i dostarcza informacji których przełączniki potrzebują aby przetworzyć ramkę
przez sieć. Ramka ze znacznikiem jest o 4 bajty dłuższa niż ramka bez znacznika, i zawiera 2 bajty
TPID (znacznik identyfikacji protokołu) oraz 2 bajty TCI (znacznik kontroli informacji), które są umiej-
scowione po 6 bajtowym źródle typowej ramki Ethernet.[18]
Standard frame – standardowa ramka Ethernet
Tagged frame – ramka Ethernet wraz z znacznikiem
Destination (6 bytes) – sześciobajtowe przeznaczenie ramki
Source (6 bytes) – sześciobajtowe źródło ramki
Length/Type – długość, typ
Data – zmienne pole danych ramki
1. TPID: TPID ma określoną szesnastkową wartość 8100. Gdy ramka jest typu EtherType zawiera w
sobie znacznik IEEE 802.1Q / 802.1P.
2. Priority: pierwsze trzy bity z TCI definiują priorytet użytkownika
3. CFI: Canonical Format Indicator jest 1 bitową flagą, używany dla kompatybilności między siecią Et-
hernet a siecią Token Ring.
4. VID: jest 12 bitowym identyfikatorem VLAN. Pozwala na identyfikację 4096 (2
12
) VLANs. Z 4096.
Jak działa 802.1Q VLAN
Według informacji VID w znaczniku, przełączniki przesyłają i filtrują ramki między portami. Porty
które posiadają ten sam VID mogą komunikować się ze sobą. IEEE 802.1Q rozróżnia 3 główne funkcje:
Ingress Process (proces wchodzenia)
Forwarding Process (proces przesyłający)
Egress Process (proces wyjścia)
Dest.
Src.
Length/Type
Data
Standrd frame
Dest.
Src.
TPID
TCI
L/T
Data
Tagged frame
6 bytes
6 bytes
2 bytes
variable
Priority CFI
VID
2 bytes
3 bits
12 bits
1 bit
Rys.18 Ramka standardowa, oraz ramka standardu IEEE 802.1Q
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
39
Filtering Database – dane poddawane są filtracji
Forwarding Process – proces przesyłania
Ingress Rule – reguła wejścia
Egress Rule – reguła wyjścia
Packet Receive – pakiet przyjęty
Packet Transmit – pakiet transmitowany
1. Ingress Process:
Każdy port jest zdolny przepuścić ramki ze znacznikiem lub tez bez niego. Ingress Process służy do
identyfikacji przychodzących ramek. Jeśli ramka zawiera znacznik, klasyfikuje te ramki jako należące
do VLAN. Każdy z portów ma swoją własną zasadę wejścia (Ingress Rule). Jeśli Ingress Rule akceptuje
ramki tylko ze znacznikiem, to port przełącznika nie przepuści ramki nie posiadającej znacznika.
Jeśli Ingress Rule akceptuje wszystkie typy ramek, wtedy port przełącznika przepuszcza ramki za-
równo te wraz z znacznikiem jak i te bez znacznika:
a) Kiedy ramka wraz z znacznikiem jest dostarczona na port, to nosi ze sobą nagłówek, który
ma jawny VID. W tym momencie Ingress Process bezpośrednio przekazuje ramkę ze znacz-
nikiem do Forwarding Process.
b) Kiedy ramka bez znacznika nie zawiera w sobie żadnego VID, jest ona dostarczana do In-
gress Process, która wstawia znacznik zawierający PVID (Port VID – znacznik identyfikacji
VLAN przez port), ponieważ każdy fizyczny port ma swoją domyślną wartość VID zwaną
PVID. [18]
Po procesie wejścia, wszystkie ramki mają, 4 bajtowy znacznik informujący o VID i mogą iść do
procesu przesyłania.
Filtering
Database
Packet
Transmit
Packet
Receive
Ingress Rule
Egress Rule
Forwarding
Process
Rys.19 Zasada działania IEEE 802.1Q VLAN
VID
Ingress Rule
Tagged frame
Untagged frame
VID
Tagged frame
PVID
Tagged frame
Rys.20 Proces nadawania znacznika
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
40
2. Forwarding Process:
Proces przesyłania decyduje o dalszym losie dostarczonych ramek według Filtering Database. Jeśli
ramki ze znacznikiem mają być przepuszczone do pewnego portu, ten port musi być portem wyjścia te-
go VID. Port wyjścia jest otwartym portem dla określonego VLAN, który przepuszcza ramki z wy-
szczególnionym VID. Filtering Database przechowuje, organizuje i rejestruje informacje o VLAN przy-
datne dla przełączania ramek do i z portów przełącznika. To składa się z nie ulegających zmianom reje-
stracyjnych zapisów (Static VLAN albo tablicy SVLAN) i dynamiczne rejestracyjne zapisy (Dynamic
VLAN albo tablica DVLAN). Tablica SVLAN ręcznie jest dodawana i utrzymywana przez administra-
tora. Tablica DVLAN automatycznie wypełniana przez protokół GVRP,do której administrator nie ma
dostępu.[18]
3. Egress Process:
Proces wyjścia decyduje o losie ramek wyjściowych, odnosi się do rozkazu sterującego znacznika wyj-
ścia w Filtering Database.
7. VOIP
7.1 Wstęp
Co zatem kryje się pod nazwą VoIP? Najprościej można to określić jako wykorzystanie łącza cy-
frowego do rozmowy telefonicznej. Różnicę najłatwiej pokazać, gdy porównamy VoIP z klasyczną tele-
fonią stacjonarną. W tradycyjnej telefonii ruch jest komutowany, tzn. na potrzeby danej rozmowy, przez
centralę, zestawiane jest połączenie typu punkt–punkt. Czyli mówiąc prościej: kiedy Jan Kowalski
dzwoni do Adama Nowaka to na potrzeby tej jednej konkretnej rozmowy telefonicznej zestawiane jest
łącze od jednego abonenta do drugiego. Zestawienie takiego łącza następuje przez wykorzystanie cen-
tral telefonicznych, które są niezbędnym elementem tej całej układanki.
Natomiast w telefonii IP głos zamieniany jest na postać cyfrową i dzielony na pakiety, które prze-
syłane są później przez Sieć. Przy takim sposobie przekazywania dźwięku jesteśmy w stanie uniknąć
większości opłat związanych z korzystaniem z usług danego operatora telekomunikacyjnego – poru-
szamy się bowiem w sferze protokołów internetowych. Koszty takiej operacji zawierają się w opłacie,
jaką firma płaci swojemu providerowi usług internetowych.
Głównym założeniem VoIP jest integracja ruchu telefonicznego z transmisją danych i stworzenie
jednej uniwersalnej sieci mogącej przenosić każdy rodzaj ruchu. Technologią VoIP zajmuje się wiele
firm produkujących sprzęt i oprogramowanie dla telekomunikacji, a także większość operatorów tele-
komunikacyjnych. Powstało już wiele produktów wspierających technologię VoIP i wydaje się, że ma
ona przed sobą dużą przyszłość.[15]
Wadą systemów VoIP jest brak całościowej standaryzacji. Istnieje kilka różnych standardów im-
plementowanych przez producentów co powoduje, że systemy VoIP nie są ze sobą kompatybilne i udo-
stępniają zwykle tylko najprostszą usługę punkt-punkt.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
41
Aby systemy VoIP mogły być zastosowane do profesjonalnych usług telefonicznych i adaptacji w
istniejącej infrastrukturze niezbędne jest spełnienie następujących warunków:
wysoka efektywność przetwarzania zgłoszeń wewnątrz sieci i pomiędzy publicznymi i prywatnymi
sieciami pakietowymi
efektywne przenoszenie w czasie rzeczywistym rozmów pomiędzy sieciami IP i sieciami z komuta-
cją łączy
skalowalność pod względem technologicznym i ekonomicznym
szeroka akceptacja i implementacja standardów przez producentów
Istnieją dwa liczące się standardy protokołów sygnalizacyjnych dla telefonii IP:
Seria ITU H.32x
IETF Session Initiation Protocol (SIP)
7.2 Architektura sieci. Standard H.323
Rysunek nr 21 ilustruje architekturę sieci telefonicznej IP opartej na standardzie H.323. Składa się
ona z czterech podstawowych elementów: terminali, strażników (gatekeepers), bramek (gateways) oraz
MCU (Multipoint Control Units).
Rys.21 Przykładowa architektura sieci według standardu H.323
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
42
Podstawowa konfiguracja to przynajmniej dwa terminale przyłączone do sieci lokalnej. W aplika-
cjach praktycznych niezbędne jest jednak dodanie kilku innych elementów pozwalających na stworze-
nie wydajnego systemu komunikacyjnego z możliwością połączenia "ze światem zewnętrznym". Poni-
żej opisano przeznaczenie i funkcjonalność poszczególnych elementów sieci:
Terminale, to klienci, którzy mają możliwość inicjacji i odbierania zgłoszeń. Służą one również do wy-
syłania i odbierania dwukierunkowego strumienia danych. Terminal może być zarówno oprogramowa-
niem pracującym na komputerze PC jak i specjalnym dedykowanym do tego celu urządzeniem.
Wszystkie terminale powinny umożliwiać przeprowadzenie rozmowy telefonicznej, podczas gdy usługa
danych czy wideo jest opcjonalna.
Gatekeeper zarządzają tzw. strefą (ang. zone) która jest zbiorem terminali, bramek i MCU. Standard
H.323 dzieli sieć na takie właśnie strefy. Zgłoszenia wewnątrz strefy są zarządzane przez gatekeeper'a.
Zgłoszenia międzystrefowe mogą angażować kilku "strażników".
Gatekeeper, jeśli jest obecny w sieci nadzoruje przebieg wszystkich rozmów przeprowadzanych w stre-
fie. Terminale mają obowiązek z niego korzystać. Jego podstawowymi zadaniami są: kontrola dostęp-
nego pasma, rutowanie zgłoszeń, przyjmowanie, odrzucanie zgłoszeń w strefie i autoryzacja użytkow-
ników. Gatekeeper stanowi także interfejs do innych sieci H.323.
[16]
"Strażnik" to opcjonalny element sieci ale jeśli jest obecny w danej podsieci to terminale są zobowiąza-
ne go używać.
Bramka (gateway) jest odpowiedzialna za połączenie telefonicznej sieci IP do innych typów sieci.
Przykładowo bramka może łączyć sieć H.323 z siecią SIP, PSTN (Public Switched Telephone Network)
czy ISDN. Bramka musi zapewnić interfejs czasu rzeczywistego pomiędzy różnymi formatami transmi-
sji i procedur komunikacyjnych. Dodatkowo jest odpowiedzialna za ustanawianie i rozłączanie połączeń
w obydwu łączonych sieciach.
MCU (Multipoint Control Unit) jest niezbędny jedynie jeśli w sieci używa się scentralizowanych lub
hybrydowych telekonferencji. Służy on do rozdzielania strumieni i przekazywania ich do odpowiednich
terminali. MCU składa się z dwóch podstawowych elementów: Multipoint Controller (MC) i opcjonal-
nie kilku Multipoint Processors (MP). MC odpowiada za wymianę informacji, natomiast MP zajmują
się obsługą strumieni danych. Terminale w sieci wysyłają swoje strumienie z zakodowanym głosem do
MCU, który przeprowadza mieszanie ich i rozprowadza z powrotem do pozostałych uczestników tele-
konferencji.
Często możliwa jest integracja różnych elementów sieci w jednym fizycznym urządzeniu. Przykładowo
funkcjonalność gatekeeper'a może być połączona z funkcjonalnością bramki i MCU lub MCU może być
wbudowane w terminal aby umożliwić połączenia konferencyjne, bez dodatkowych urządzeń.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
43
Architektura protokołu
Seria standardów H.32x opisuje różne typy protokołów dla różnych typów sieci i tak:
H.320 - wąskopasmowe sieci cyfrowe ISDN
H.321 - szerokopasmowe cyfrowe sieci ISDN i ATM
H.322 - sieci pakietowe z gwarantowanym pasmem
H.323 - sieci pakietowe z nie gwarantowanym pasmem
H.324 - sieci analogowe POTS
Wszystkie powyższe protokoły wspierają zestaw kodeków audio i video, zależnie od szerokości pasma
udostępnianego w sieci i daty akceptacji standardu.
Standard H.323 bazuje zarówno na transmisji zapewniającej, że każdy pakiet dotrze do klienta, jak i na
transmisji nie zapewniającej dostarczenia wszystkich pakietów, dlatego obydwa te protokoły muszą być
obecne w sieci. Pierwszy protokół to oczywiście TCP, który jest używany do sygnalizacji i przesyłania
danych kontrolnych. Drugi protokół transportowy to UDP, używany do transmisji audio, video oraz
RAS. Standard H.323 jest niezależny od topologii sieci.
Na H.323 składa się z kilka standardów ITU co pokazano na Rys.22. Definiuje on system, procedury
kontrolne, opis medium, i sygnalizację zgłoszeń.
Urządzenia I/O
Video
Urządzenia I/O
Audio
Aplikacje
użytkownika
T.120 itp.
Interfejs
użytkownika do
kontroli i
zarządzania
Kodek Video
H.261, H263
Kodek Audio
G.711, G.722
G.723, G.728
G.729
RTP
Zarządzanie
H.245
Kontrola RAS
Sygnalizacja
Q.931
Warstwa
H.255.0
In
te
rf
e
js
L
A
N
Rekomendacja H.323
Rys. 22 Architektura protokołu H323
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
44
H.323 v2
Wersja 2 tego standardu posiada mechanizmy do zapewnienia autoryzacji, integralności, prywatności i
rejestracji przeprowadzanych rozmów. Dodatkowo strumienie danych użytkownika, sygnalizacji, zarzą-
dzania i RAS są szyfrowane. Cztery podstawowe aspekty bezpieczeństwa odnoszą się do telefonii IP:
Uwierzytelnienie - proces stwierdzający, że użytkownicy są rzeczywiście tymi za których się
podają;
Integralność - proces zapewniający, że dane nie zostały zmienione podczas transmisji;
Prywatność - użycie algorytmów numerycznych do przeciwdziałania podsłuchowi zawartości
pakietów;
Gromadzenie informacji o połączeniach - proces, dzięki któremu nie można wyprzeć się,
przeprowadzonych rozmów.
Są dwa sposoby zabezpieczenia prywatności zgłoszeń w telefonii IP:
za bezpieczeństwo odpowiada oprogramowanie
użycie bezpiecznych protokołów transportowych jak TLS (Transport Layer Security) i IPSec
(IP Security)
Ochrona prywatności odnosi się do wszystkich typów strumieni związanych z telefonią IP. Typowo
używa się kodowania transmitowanych strumieni, ochrony przed manipulacjami pakietami i uwierzy-
telniania użytkowników na zakończeniach sieciowych.
7.3 Architektura sieci. Standard SIP (Session Initiation Protocol)
SIP to standard stworzony przez Multiparty Multimedia Session Control (MMUSIC) pracujący
pod egidą IETF. SIP został zbudowany w oparciu o HTML i oryginalnie zaprojektowano go do obsługi
internetowych konferencji multimedialnych. Architekturę protokołu SIP tworzą dodatkowo jeszcze dwa
inne protokoły sygnalizacyjne: Session Description Protocol (SDP) i Session Announcement Proto-
col (SAP).[16]
SIP składa się z trzech podstawowych elementów sieci: terminali (user agent servers), serwerów
proxy (proxy servers) i serwerów przekierowań (redirect servers). Funkcjonalność terminala SIP jest
podobna do terminala H.323 a minimalna konfiguracja wymagana do komunikacji protokołem SIP to
dwa takie terminale.[16]
Serwer SIP posiada część funkcjonalności "strażnika" (gatekeeper) z H.323 jednak nie odgrywa aż tak
istotnej roli w systemie. Zgłoszenie nie musi przechodzić przez serwer i nie istnieje w tej architekturze
koncepcja strefy. Serwery są używane głównie do routowania i przekierowywania zgłoszeń. Mogą także
wykonywać proste funkcje uwierzytelniające ale najlepiej jest takie funkcje implementować w termina-
lach albo firewall'ach. Serwer SIP może działać w trybie proxy lub przekierowania (redirect). Serwer
typu redirect informuje klienta aby skontaktował się bezpośrednio z innym serwerem natomiast serwer
proxy przekazuje zgłoszenie do następnego serwera. Serwer proxy musi monitorować stan zgłoszenia,
podczas gdy serwer redirect może zapomnieć o nim zaraz po jego przetworzeniu. Terminal nie musi
wiedzieć czy komunikuje się z serwerem czy innym terminalem. Jest zalecane aby serwery mogły pra-
cować w obydwu trybach (proxy i redirect).
SIP nie wprowadza dodatkowych elementów sieci takich jak bramki H.323. Funkcjonalność bramki
H.323 jest wbudowana w terminal, odbierający i nawiązujący połączenia oraz dekodujący strumienie i
informacje kontrolne.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
45
Architektura protokołu
Architektura SIP została przedstawiona na rys. 23. SIP jest niezależny od topologii sieci i może współ-
działać z kilkoma protokołami transportowymi. Każdy protokół pakietowy lub strumieniowy mogący
dostarczyć żądanie lub odpowiedź SIP może zostać wykorzystany. Przykładowo można użyć UDP,
TCP, X.25, ATM AAL5, CLNP, TP4, IPX, lub PPP.[16]
SIP nie wymaga niezawodnego protokołu transportowego, można więc tworzyć prostych klientów w
oparciu o protokół UDP. Serwery powinny jednak wspierać zarówno TCP jak i UDP. Połączenie TCP
zostaje otwarte wtedy, gdy połączenie UDP nie może być zrealizowane.
SIP używa protokołu SDP (Session Description Protocol) do opisu możliwości i typu przesyłanych me-
dii zaimplementowanych w terminalu. SDP jest tworzony przez organizację IETF a wiadomości przesy-
łane przy jego pomocy są wiadomościami tekstowymi tak jak w SIP. Wiadomości SDP specyfikują ja-
kie możliwości muszą posiadać zakończenia sieciowe.
Za pomocą Session Announcement Protocol można poinformować większą liczbę użytkowników o
otwieranej sesji. SAP jest głównie używane do informowania o dużych publicznych konferencjach lub
usługach rozsiewczych jak internetowa telewizja czy radio. Można również tego dokonać za pomocą
samego protokołu SIP, który posiada opcję sygnalizacji multicast. Do transmisji w czasie rzeczywistym
protokół ten używa podobnie jak H.323 standardu RTP.
Architektura SIP zawiera także Realtime Streaming Protocol (RTSP), który kontroluje inicjację i
przesyłanie strumienia multimedialnego z serwerów multimedialnych, działa on trochę na zasadzie in-
ternetowego magnetowidu. RTSP sam nie dostarcza usługi (np. danych video) ale używa do tego celu
RTP.
H.323
SIP
Sygnalizacja
TCP
RSVP
RTSP
Quality of service
RTCP
medium
RTP
UDP
IPv4, IPv6
PPP
AAL 3/4
AAL 5
PPP
V.34
Ethernet
ATM
Sonet
SDH
transport
Rys.23 Architektura pro
tokołu SIP
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
46
Bezpieczeństwo SIP
Ze względu na podobieństwo tego protokołu do HTTP, posiada on zabezpieczenia zbliżone do tego pro-
tokołu. Uwierzytelnianie użytkownika wywołującego i wywoływanego jest realizowane przez mechani-
zmy HTTP, włączając w to podstawową (hasło tekstowe) i skróconą (wywołanie-odpowiedź) autoryza-
cję. Klucze do kodowania i dekodowania medii (np. audio/video) są wymieniane przy pomocy Session
Description Protocol (SDP).
Podstawowy szkic protokołu SIP nie zawiera żadnych rozważań o bezpieczeństwie, a kwestie zabezpie-
czeń opiera na niższych warstwach np. Secure Socket Layer (SSL). Możliwe jest także użycie TLS
(Transport Layer Security), jednak nie ma ono zastosowania w przypadku używania UDP. Modularność
SIP pozwala na użycie jakiejkolwiek warstwy transportowej czy mechanizmów bezpieczeństwa HTTP
(Secure Shell -SSH czy Secure-HTTP).
Wersja SIP 2.1 wprowadza lepsze mechanizmy bezpieczeństwa. Definiuje autoryzację end-to-end za
pomocą PGP (obowiązkowo) lub S/MIME (opcjonalnie). Metody te używane są do kodowania i podpi-
sywania wiadomości.
Rys.24 Archi
tektura sieci oparta o protokół SIP
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
47
7.4
Urządzenia wspomagające VoIP
7.4.1 Selsius-PhoneTM Family
Telefony, Selsius-Phone można podłączyć bezpośrednio do sieci lokalnej opartej na stadardzie 10BaseT
(skrętka miedziana). Posiadają one dużą funkcjonalność bardzo podobną do terminali ISDN obsługują-
cych centralki PBX. Zapewniają identyczną jakość rozmów jak tradycyjne aparaty POTS i nie wymaga-
ją podłączenia do PC. Adresy IP dla tych terminali mogą być przydzielane poprzez serwer usługi DHCP
(Dynamic Host Configuration Protocol). Jeśli więc w sieci zostanie taki serwer zainstalowany instalacja
telefonu polega jedynie na podłączeniu go do odpowiedniego gniazda w koncentratorze oraz podłącze-
niu zasilania, adres IP zostanie przydzielony dynamicznie, bez konieczności jego ręcznej konfiguracji..
Do wyboru mamy modele 12 i 30 przyciskowe. Większość klawiszy jest programowalna. Telefony po-
siadają także zestaw głośnomówiący i wyświetlacz. Wersje 12 klawiszowe posiadają dodatkowo wbu-
dowany wewnętrzny Ethernet repeater (wzmacniacz), dzięki czemu do jednego gniazda w koncentrato-
rze można podłączyć telefon i PC. Eliminuje to liczbę kabli wokół miejsca pracy. Telefony są kompaty-
bilne z oprogramowaniem Microsoft NetMeeting dzięki czemu wykorzystując PC i kamerę można pro-
wadzić wideokonferencję. Niektóre opcje takie jak głośność dzwonka, czy jego rodzaj można ustawiać
również za pomocą przeglądarki WWW. Dostępny jest także software dla PC emulujący telefon rodziny
Selsius-Phone.
7.4.2
Urządzenia VoIP firmy Cisco
W tym rozdziale przedstawione zostanie kilka urządzeń firmy Cisco, które zapewniają transmisję
głosu przez VoIP oraz urządzenia wspomagające ten dość skomplikowany proces.
Rys.25 Urządzenie VoIP firmy Cisco
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
48
Przedstawione na powyższym rysunku urządzenie VoIP firmy Cisco pozwala na korzystanie z dobro-
dziejstw technologii VoIP poprzez przyłączony do niego telefon.
Podsumowanie
Technologia VoIP jest na pewno technologią przyszłościową. Zanim jednak będzie powszechnie uży-
wana należy rozwiązać wiele problemów związanych z kompatybilnością i standaryzacją. Pewnym za-
grożeniem dla niej może być możliwość odejścia od protokołu IP jako niezbyt optymalnego i wygodne-
go dla ostatnio szybko rozwijających się sieci ATM. Jeśli jednak IPv6 stanie się powszechnie obowią-
zującym standardem telefonia IP będzie miała doskonałe warunki rozwoju.[16]
8. QUALITY OF SERVICE
Zagadnienie jakości w telefonii IP, jak również wszędzie tam gdzie wymaga się działania w czasie
rzeczywistym jest bardzo skomplikowane i stanowi nie lada wyzwanie. Termin Quality of Service moż-
na określić jako zespół czynników wpływających na jakość usługi ocenianych na podstawie stopnia za-
dowolenia użytkownika z tej usługi. ETSI specyfikuje kilka różnych parametrów QoS, które uwzględ-
niają potrzeby i różne punkty widzenia grup uczestniczących w procesie komunikacji:
QoS wymagane przez użytkownika
QoS oferowane przez dostawce usługi
QoS osiągane przez dostawcę usługi
QoS odbierane (postrzegane) przez użytkownika
QoS wymagane przez providerów Internetu
W telefonii IP QoS postrzegane przez użytkownika, jest zależne od dwóch rzeczy: jakości odbieranego
głosu i opóźnienia w dwustronnej konwersacji. Te dwa parametry są blisko ze sobą powiązane, gdyż
lepsza jakość głosu wymaga większego strumienia bitów, a większy strumień bitów wprowadza więk-
sze opóźnienie.
Rys.26 Telefon do połączeń VoIP
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
49
Prace prowadzone w tej dziedzinie można podzielić na dwa obszary:
tworzenie sprzętu dla użytkownika końcowego z lepszymi kodekami do cyfryzacji głosu o lep-
szej jakości i mniejszej liczbie bitów
polepszanie transmisji poprzez sieć dla zapewnienia odpowiedniego end-to-end QoS
Dzisiejsze sieci IP oferują bardzo ograniczone możliwości zapewnienia odpowiedniego QoS, a w
szczególności odnosi się to do sieci Internet. Istnieją jednak techniki umożliwiające pokonanie tych
trudności. Pierwszą z nich jest sieć, która na niższych warstwach umożliwia zarządzanie QoS. Przykła-
dem może tu być ATM. Drugi sposób to zaawansowane protokoły routingu mające możliwość rezer-
wowania zasobów lub priorytetowania ruchu. Te usprawnienia mogą polepszyć QoS głównie w sieciach
prywatnych, gdzie jest możliwy nadzór nad całością sieci lub chociaż całością połączenia VoIP. Prze-
widuje się jednak, że w późniejszym okresie również Internet będzie oferował lepsze QoS, zależnie od
tego jak szybko nowe techniki, takie jak Resource Reservation Protocol (RSVP), Multiprotocol over
ATM (MPOA) i IPv6 będą dostępne w sieci.
Jak widać istnieje kilka możliwości zapewnienia odpowiedniego QoS. Należy jednak pamiętać, że
im lepsze QoS tym większe są związane z nim koszty. Użytkownicy zwykle są w stanie pogodzić się z
niezbyt dobrą jakością połączenia na rzecz mniejszych opłat. Poniżej przedstawione zostały przykłado-
wo zdefiniowane przez ETSI poziomy jakości obsługi dla VoIP mogące być wykorzystane do określa-
nia opłat za telefonię IP:
jakość najlepsza z możliwych (best effort)
jakość GSM
wysoka jakość
jakość CD
9. NAT, PAT
9.1 Podstawowe pojęcia
NAT (Network Address Translation) jest to zamienianie jednego adresu na inny w nagłówku pakie-
tu IP. W praktyce NAT jest używany, aby pozwolić prywatnie zadresowanym hostom używać sieci In-
ternet.[17]
Najprościej mówiąc, NAT jest procesem zamiany nagłówka IP, więc adres przeznaczenia, zródłowy lub
oba adresy są zastępowane w nagłówku na inne. Proces zamiany jest tworzony w tak zwanym NAT
box, ponieważ może to być router Cisco, system Unix, Win XP serwer lub inny system tego rodzaju.
Maskowanie IP (ang. IP masquerading) to nazwa nadana jednej z odmian translacji adresów sie-
ciowych, która pozwala hostom z adresem sieci prywatnej przedstawić się w internecie pod jednym pu-
blicznym adresem IP.[17]
Adresy wewnętrzne – zestaw sieci, które są tematem translacji. Zazwyczaj adresy RFC 1918, powinny
być adresami ważnymi.
Adresy zewnętrzne – inne adresy. Zazwyczaj te są adresy ważne umiejscowione w Internecie.
Adres wewnętrzny lokalny – skonfigurowany adres IP przypisany do hosta w środku sieci. Adres mo-
że być globalnie unikalny przydzielony z przestrzeni adresów prywatnych zdefiniowany w RFC 1918,
lub może być oficjalnie przydzielony do innej organizacji.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
50
Adres wewnętrzny globalny – adres IP wewnętrznego hosta jako adres IP zewnętrznej sieci. Adres
globalny wewnętrzny to adres ztranslatowany. Te adresy są zazwyczaj przypisane z globalnej przestrze-
ni unikalnej dostarczone przez ISP (Internet Service Provider) (jeśli przedsiębiorstwo jest podłączone do
Internetu).
Adres zewnętrzny lokalny – adres IP zewnętrznego hosta jako adres IP wewnętrznej sieci. Adresy te
mogą być przypisane z RFC 1918 jeśli pożądane.
Adres zewnętrzny globalny – skonfigurowany adres IP przypisany do hosta zewnętrznej sieci.
Dynamiczny NAT
Z dynamicznym NATem, translacja nie wystąpi w tablicy translacji NAT zanim ruter nie otrzy-
ma ruchu, który wymaga translacji (np. ruch zdefiniowany przez administratora). Dynamiczne
translacje są czasowe i ewentualnie będą zakończone. Administrator określa pule z której będą
przypisywane adresy globalne wewnętrzne. Dopasowanie adresu nie jest ciągłe; po pewnym
czasie skonfigurowanym zostają usunięte z tablicy NAT.
Statyczny NAT
NAT statyczny nie oszczędza adresów IP z tego powodu, że adres lokalny wewnętrzny i
adres globalny zewnętrzny są przypisywane jeden do jeden. Dlatego wykorzystuje się
go w przypadku sieci zazębiającej się (Obsługa sieci nakładanych).
9.2 Funkcje NAT
1. Translacja wewnętrznego adresu lokalnego
2. Przeciążenie adresu wewnętrznego globalnego
3. Dystrybucja obciążenia TCP
4.
Obsługa sieci nakładanych
Translacja wewnętrznego adresu lokalnego.
Funkcja ta ustala przypisywanie (mapowanie) pomiędzy lokalnymi a globalnymi adresami.
Przeciążenie adresu wewnętrznego globalnego.
Można oszczędzić adresy w puli adresów wewnętrznych globalnych poprzez pozwolenie na
translacje źródłowych portów w połączeniach TCP lub UDP. Kiedy różne wewnętrzne lokalne
adresy mapują do tego samego wewnętrznego adresu globalnego, numer portu TCP lub UDP
każdego wewnętrznego hosta są użyte do rozróżnienia pomiędzy nimi.
Dystrybucja obciążenia TCP.
Dynamiczna forma translacji adresu przeznaczenia, może być skonfigurowana dla pewnego ru-
chu zewnętrznego do wewnętrznego. Kiedy schemat mapowania jest ustalony, adres przezna-
czenia, który pasuje w liście dostępowej (access list) są zastępowane adresami z puli. Alokacja
jest wykonywana na zasadzie round-robin; jest robiona tylko wtedy, gdy nowe połączenie jest
otwarte z wewnątrz do zewnątrz. Cały ruch nie TCP jest przenoszony nie translatując (aż do
momentu wystąpienia innej translacji).
Obsługa sieci nakładanych.
NAT może być użyty do rozwiązywania problemów z numerami adresów, które pojawiły się
kiedy wewnętrzne adresy zachodzą się z adresami w zewnętrznej sieci. Może to wystąpić pod-
czas połączenia dwóch firm, obie z duplikującymi się adresami w sieciach. Mozę to wystąpić
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
51
także jeśli zmieniasz dostawce Internetu i były adres przypisany przez danego ISP jest ponownie
przypisany do innego klienta.
Przeciążenie adresu wewnętrznego globalnego (PAT)
Jedna z najmocniejszych cech ruterów NAT jest ich zdolność do używania portów (Port Address Trans-
lation), który pozwala wielu wewnętrznym adresom mapować ten sam globalny adres. Czasami nazy-
wany jest NAT wiele do jeden lub przeciążenie adresu. Można więc dosłownie setkom prywatnych ad-
resów umożliwić dostęp do Internetu używając pojedynczego adresu globalnego. Ruter NAT trzyma
ścieżkę różnych konwersacji przez mapowanie numeru portu TCP lub UDP w tablicy translacji.
Maskowanie IP daje możliwość używania adresu IP z sieci prywatnej (zarezerwowanego) w sieci LAN,
a router oparty np. na Linuksie wykonuje w czasie rzeczywistym pewne inteligentne tłumaczenie adre-
sów IP i portów. Gdy router odbierze datagram od komputera z sieci LAN, sprawdza, czy jest to data-
gram typu „TCP”, „UDP”, „ICMP” itp. i modyfikuje go tak, że wygląda on jakby był wygenerowany
przez sam ruter (router pamięta, że to zrobił). Następnie router wysyła datagram do Internetu, nadając
mu jeden adres IP. Gdy host docelowy odbierze datagram, uwierzy, że przyszedł on z routera i wyśle w
odpowiedzi datagramy na jego adres. Gdy ruter np. linuksowy z włączonym maskowaniem odbierze da-
tagram przez swoje połączenie sieciowe, zajrzy do swojej tablicy aktywnych, maskowanych połączeń,
by zobaczyć, czy datagram rzeczywiście należy do komputera w sieci LAN. Jeżeli tak, odwróci doko-
naną przez siebie wcześniej modyfikację oraz wyśle datagram temu komputerowi.[17]
Prosty przykład takiego działania pokazano na rysunku poniżej:
Mamy małą sieć Ethernet wykorzystującą jeden z zarezerwowanych adresów sieci. W sieci jest
linuksowy router z funkcją maskowania, dający dostęp do Internetu. Jedna ze stacji roboczych w sieci
(192.168.1.3) chce połączyć się z hostem zdalnym o adresie 209.1.106.178 na porcie 8888. Stacja robo-
Rys.27
Typowy przykład zastosowania technologii NAT, PAT
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
52
cza kieruje swój datagram do routera, który stwierdza, że żądanie połączenia wymaga maskowania.
Przyjmuje datagram i alokuje port (1035), zastępuje adres i port hosta swoimi własnymi i przesyła data-
gram do hosta docelowego. Docelowy host myśli, że otrzymał żądanie połączenia od rutera linuksowe-
go z włączonym maskowaniem i generuje datagram z odpowiedzią. Otrzymawszy datagram, router
znajduje powiązanie w tablicy maskowania
i odwraca operacje wykonane na wychodzącym datagramie. Następnie przesyła odpowiedź do hosta, od
którego pierwotnie wyszedł datagram. Lokalny host myśli, że komunikuje się bezpośrednio z hostem
zdalnym. Zdalny host nic nie wie o hoście lokalnym, a myśli, że połączenie nawiązuje z routerem. Ro-
uter z maskowaniem wie, że te dwa hosty komunikują się ze sobą, jakich portów używają i dokonuje
translacji adresów i portów wymaganej do uzyskania takiej komunikacji.[17]
9.3 Skutki uboczne i dodatkowe korzyści
Funkcji maskowania IP towarzyszą pewne skutki uboczne, z których niektóre są użyteczne, a inne
mogą przeszkadzać.
Po pierwsze, żaden z hostów sieci, która jest obsługiwana przez router maskujący, nie jest widziany
bezpośrednio, dzięki czemu potrzebujemy tylko jednego poprawnego i rutowalnego adresu IP, aby
wszystkie hosty mogły łączyć się z Internetem. Ma to taką wadę, że żaden z hostów nie jest widoczny z
Internetu i nie można się do niego podłączyć bezpośrednio. Jedynym widocznym hostem w maskowa-
nej sieci jest sama maszyna maskująca. Jest to istotne, gdy rozważamy usługi, takie jak poczta czy FTP.
Po drugie, ponieważ żaden z maskowanych hostów nie jest widoczny, są one w pewnym
sensie zabezpieczone przed atakami z zewnątrz. Zapewne upraszcza to konfigurowanie firewal-
la na hoście maskującym.
Politechnika Rzeszowska im. Ignacego Łukasiewicza
Zakład Systemów Rozproszonych
Rzeszów 2005
53
LITERATURA:
[1]
Frank J. Defler „Sieci komputerowe dla każdego”.
[2]
Praca zbiorowa „Vademecum Teleinformatyka”
[3]
[4]
www.idg.pl/artykuly/32465.html
[5]
www.networld.pl/artykuly/5406.html
[6]
A. Leinwand, B. Pinsky, M. Culpepper „Konfiguracja routerów Cisco“
[7]
Materiały do laboratorium sieci komputerowe semestr 7
[8]
[9]
Woźniak J., Nowicki K., Sieci LAN, MAN, WAN: protokoły komunikacyjne
[10] Sheldon T., Wielka Księga Sieci Komputerowych
[11]
[12]
www.alcatel.pl/technology/vlan.html
[13] Zieliński Krzysztof „Ćwiczenia do Laboratorium Sieci Komputerowych”
[14] Nowicki Krzysztof , Woźniak Józef „Sieci LAN MAN WAN protokoły komunikacyjne”
[15]
[16]
www.fkn.pl/artykuly/artykul/ida_156
[17] Olaf Kirch, Terry Dawson „Linux – Podręcznik administratora sieci”
[18]
www.zyxel.com/support/supportnote/ves1012/app/801q.htm
[19]
http://eservice.ind.alcatel.com/wbt2001/