WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN
Aktualności - WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN Pliki - WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN Artykuły - WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN Forum - WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN Kontakt - WANLAN - Kompendium wiedzy o sieciach, Sieci komputerowe , Ethernet , Fast Ethernet , Giga Ethernet , Token Ring , FDDI , WLAN , LAN , WAN

Autoryzacja

Użytkownik , Gość


 
Nie masz konta? Rejestracja
Sprawdz , co daje rejestracja.


Spis treści

Tematy Teoria:
Artykuły: !
Pliki: !
Linki:
Reklama:
Ksiega gości:
Forum:
Kontakt:

Online
Użytkownicy:
Goście:
Razem: 0

Ostatnio zarejestrowana


FIRMA WINDYKACYJNA
Okna drewniane
Drzwi drewniane
powstanie warszawskie
woodstock 2012
home.pl
Baseny ceny
Hosted by programuj.com

WebHat
Coding4Fun
Unknow Website - hack, teksty, faq, artyku3y, windows, linux
Guide C++
Hacking

Sonda


Jak podoba sie Tobie nowy design Wanlan i czy jest lepszy ni? poprzedni ?


Zdecydowanie tak
Zdecydowanie nie


zobacz wyniki
Liczba glosów:
297.
Strona główna \ Sieć komputerowa - Protokoły sieciowe - Poniedziałek, 29 maj 2017 rok. 18:05

Sieć komputerowa - Protokoły sieciowe

Wstęp


Termin "protokoły sieciowe" odnosi się przede wszystkim do protokołów warstwy 3 modelu OSI. Protokoły zapewniają adresowanie, dzięki któremu dane mogą być dostarczane na nieokreślone odległości, poza domenę sieci lokalnej nadawcy. Przeważnie protokoły warstwy 3 wykorzystują do transportu danych strukturę znaną jako pakiet. Choć protokoły warstwy 3 dostarczają mechanizmów niezbędnych do wysyłania pakie­tów, nie są na tyle wyszukane, aby mieć pewność, że pakiety zostały rzeczywiście ode­brane i to we właściwym porządku. Zadania te pozostawiono protokołom transportowym warstwy 4. Protokoły te przyjmują dane z wyższych warstw i osadzająje w segmentach, które przekazują warstwie 3. W tym rozdziale opisane są funkcje i wzajemne oddziaływania między stosami proto­kołów warstwy 3 i 4, a następnie badane są zawiłości niektórych najpopularniejszych protokołów sieciowych.

Stosy protokołów

Stos protokołów to komplet powiązanych protokołów komunikacyjnych, oferujących użyt­kownikowi mechanizmy i usługi potrzebne do komunikacji z innymi maszynami włączonymi do sieci. Z perspektywy użytkownika stos protokołów jest tym. co czyni sieć zdatną do użycia. W poprzednich rozdziałach omówiono pierwszą i drugą warstwę stosu protokołów (tj. warstwę fizyczną i warstwę łącza danych). Są one mocno zintegrowane i powiązane ze sobą. Warstwę fizyczną narzuca wybrana architektura warstwy łącza danych, jak Bther-net, Token Ring itd. W obecnej epoce sieci i systemów otwartych wybór określonej architektury LAN nic ogranicza możliwości wyboru protokołów wyższego poziomu. Stos protokołów powi­nien oferować mechanizmy sprzęgające z istniejącymi, znormalizowanymi środkami do­stępu do sieci dla protokołów warstwy łącza danych. Podobnie jak to było w przypadku warstw pierwszej i drugiej, warstwa 3 modelu refe­rencyjnego OSI jest ściśle powiązana z warstwą 4. Warstwa 3 to warstwa sieci, zaś war­stwa 4 jest warstwą transportu. Razem zapew­niają one mechanizmy umożliwiające przesyłanie informacji między urządzeniami nadawcy i odbiorcy, z wykorzystaniem sieci komunikacyjnej sięgającej poza domenę warstwy 2. Zapewniają też inne funkcje, takie jak zmienianie porządku pakietów otrzymanych w nie­właściwej kolejności lub ponowną transmisję pakietów, które nie dotarły do odbiorcy lub dotarły uszkodzone. Protokoły te, aby faktycznie przesłać dane, muszą wykorzystywać architekturę LAN warstwy l i 2, muszą też mieć pewne środki sprzęgające je z tymi warstwami. Używają do tego techniki opakowywartia. Protokół warstwy 4 umieszcza w segmentach dane otrzy­mane od protokołów wyższej warstwy. Segmenty te są przekazywane do odpowiedniego protokołu warstwy 3. Protokół warstwy 3 bezzwłocznie opakowuje segment strukturą pa­kietu z adresami nadawcy i odbiorcy, po czym przekazuje pakiet protokołowi warstwy 2. Warstwa 2 umieszcza ten pakiet danych warstwy 3 w ramce, opatrując go przy tym adre­sowaniem, przeznaczonym dla urządzeń warstwy 3, takich jak routery i przełączniki IP. Umieszczenie pakietu warstwy 3 (IP) w ramce warstwy 2 (Ethernet) przedstawia rysu­nek 12.2. Strukturę pakietu zalicza się do części pola danych ramki, choć w rzeczywi­stości pakiet to nie dane, tylko struktura innej warstwy. Ramki służą do transportowania i adresowania danych dla miedzysieciowego urządzenia warstwy 3, znajdującego się na krawędzi warstwy 2 (dziedziny ramek). Urządzenie - zwykle jest to router - przyjmuje obramowany pakiet, usuwa ramkę i czyta informację adresową przeznaczoną dla warstwy 3. Informacja ta służy do ustalenia następnego ?skoku" na drodze do miejsca przeznaczenia pakietu. Pakiet jest następnie kierowany do kolejnego punktu. Ostatni router przed miejscem przeznaczenia pakietu musi ponownie umieścić jkiet w strukturze ramki warstwy 2, zgodnej z architekturą sieci LAN w miejscu prze­czenia. Warstwa 3 zapewnia tylko międzysieciowy transport danych. Warstwa 4 (transportu) wzbogaca mechanizmy sieciowe warstwy 3 o gwarancje niezawodności i integralności końcowej (czyli na całej długości połączenia). Warstwa transportu może zagwarantować wolne od błędów dostarczenie pakietów i odpowiednie ich uszeregowanie, jak też za­pewnić odpowiednią jakość usług. Przykładem mechanizmu warstwy 4 jest protokół TCP (ang. Trammission Control Protocol). TCP niemal zawsze występuje razem ze swoim odpowiednikiem z warstwy 3, protokołem internetowym IP, jako ?TCP/IP". Wykorzystywanie przez aplikacje warstw 3 i 4 do przesyłania danych do innych kom­puterów/aplikacji sugeruje, że komputery nadawcy i odbiorcy nie są przyłączone do tej samej sieci lokalnej, niezależnie od tego, jaka odległość je dzieli. Dwie różne sieci muszą być ze sobą połączone, by obsłużyć żądaną transmisję. Dlatego mechanizmy komunika­cyjne warstwy 2 są niewystarczające i muszą być rozszerzone o adresowanie warstwy 3. Choć warstwy 3 i 4 istnieją właśnie w tym celu (tzn. w celu łączenia ze sobą różne sieci), to aplikacje mogą przesyłać do siebie dane, wykorzystując protokoły tych warstw, na­wet jeśli są przyłączone do tej samej sieci i podsieci LAN. Na przykład, jeśli komputery nadawcy i odbiorcy są przyłączone do tej samej sieci lokalnej, mogą się ze sobą komu­nikować, wykorzystując tylko ramki i protokoły warstwy 2. Niektóre aplikacje mogąjednak wymagać wspomagania swojej komunikacji pewnymi właściwościami protokołów wyż­szej warstwy. Istnieją dwa rodzaje protokołów sieciowych działających w warstwie 3: protokoły tra­sowane i protokoły trasujące. Protokoły trasowane to te, które umieszczają dane oraz in­formacje użytkownika w pakietach i są odpowiedzialne za przesłanie pakietów do od­biorcy. Protokoły trasujące stosowane są pomiędzy routerami i określają dostępne trasy, komunikują o nich i przeprowadzają nimi pakiety protokołów trasowanych. Protokoły trasujące są dokładniej omówione w rozdziale 13. pt. ?Sieci WAN", W niniejszym roz­dziale koncentrujemy się na najpopularniejszych protokołach trasowanych.



Protokół Internetu, wersja 4 (Ipv4)



Protokół Internetu (IP)1 został opracowany około 20 lat temu dła Departamentu Obrony USA (ang. Department t>f Defense). Departament Obrony szukał sposobu połączenia różnych rodzajów posiadanych komputerów i sieci je obsługujących w jedną, wspólną sieć. Osiągnięto to za pomocą warstwowego protokołu, który odizolował aplikacje od sprzętu sieciowego. Protokół ten używa modelu nieco różniącego się od modelu refe­rencyjnego OSI. Jest on znany jako model TCP/IP.


Protokół datagramów użytkownika (UDP) jest innym protokołem l P warstwy host-z--hostem (odpowiadającej warstwie transportu modelu OSlJ.Protokół UDP zapewnia proste i mające niewielki narzut transmisje danych, tzw. ?datagramy". Prostota datagramów czyni UDP protokołem nieodpowiednim dla niektórych aplikacji, za to doskonałym dla aplikacji bardziej wyszukanych, które same mogą zapewnić funkcjonalność połączeniową. Protokół UDP może być wykorzystywany przy wymienianiu takich danych, jak nadane nazwy NetBIOS, komunikaty systemowe itd., gdyż wymiany te nie wymagają sterowania strumieniem danych, potwierdzeń, ponownego uporządkowywania ani innych funkcji dostarczanych przez protokół TCP.

Nagłówek protokołu UDP ma następującą strukturę:

* Numer portu źródłowego UDP: Port źródłowy jest numerem połączenia w komputerze źródłowym. Port źródłowy i adres źródłowy IP funkcjonują jako adres zwrotny pakietu.
* Numer portu docelowego UDP: Port docelowy jest numerem połączenia w komputerze docelowym. Port docelowy UDPjest wykorzystywany do przekazywania pakietu odpowiedniej aplikacji, po tym jak pakiet dotrze do komputera docelowego.
* Suma kontrolna UDP: Suma kontrolna jest polem kontroli błędów, którego wartość jest obliczana na podstawie zawartości segmentu. Komputer docelowy wykonuje taką samą funkcję matematyczną jak komputer źródłowy. Niezgodność dwóch obliczonych wartości wskazuje na wystąpienie błędu podczas transmisji pakietu.
* Długość komunikatu UDP: Pole długości komunikatu informuje komputer docelowy o jego rozmiarze. Daje to komputerowi docelowemu kolejny mechanizm, wykorzystywany do sprawdzania poprawności wiadomości.

Główną różnicą funkcjonalną pomiędzy TCP a UDPjest niezawodność. Protokół TCP charakteryzuje się wysoką niezawodnością, natomiast UDPjest prostym mechanizmem dostarczania datagramów. Ta fundamentalna różnica skutkuje ogromnie zróżnicowaniem zastosowań tych dwóch protokołów warstwy host-z-hostem.

Warstwa Internetu
Warstwa Internetu protokołu IPv4 obejmuje wszystkie protokoły i procedury potrzebne do przesyłania danych pomiędzy hostami w wielu sieciach. Pakiety przenoszące dane mu­szą być trasowalne. Odpowiada za to protokół Internetu (IP).

Nagłówek protokołu IP ma następujący rozmiar i strukturę:

* Wersja: Pierwsze cztery bity nagłówka IP identyfikują wersję operacyjną protokołu I P, np. wersję 4.
* Długość Nagłówka Internetu: Następne cztery bity nagłówka zawierają jego długość, wyrażoną w wielokrotnościach liczby 32.
* Rodzaj Usługi: Następne 8 bitów to l -bitowe flagi, które mogą być używane do określania parametrów pierwszeństwa, opóźnienia, przepustowości i niezawodności tego pakietu danych.
* Długość Całkowita: 16-bitowe pole przechowujące całkowitą długość datagramu IP. mierzoną w oktetach. Prawidłowe wartości mogą mieścić się w przedziale od 576 do 65 536 oktetów.
* Identyfikator: Każdemu pakietowi IP nadaje się unikatowy, 16-bitowy identyfikator.
* Flagi: Następne pole zawiera trzy l-bitowe flagi, wskazujące, czy dozwolona jest fragmentacja pakietów i czy jest ona stosowana.
* Przesunięcie Fragmentu: 8-bitowe pole mierzące przesunięcie fragmentowanej zawartości względem początku całego datagramu. Wartość ta jest mierzona za pomocą 64-bitowych przyrostów.
* Czas Życia (ang. TTL - Time to Liw): Pakiet IP nie może ?włóczyć się" w nieskończoność po sieci WAN. Musi mieć ograniczoną liczbę skoków, które może wykonać (patrz niżej). Wartość 8-bitowego pola TTL jest zwiększana o jeden przy każdym skoku, jaki pakiet wykonuje. Gdy osiągnie wartość maksymalną, pakiet jest niszczony.

Pakiety IP są trasowane przez różne sieci za pomocą urządzeń znanych jako routery. Każdy router, przez który przechodzi pakiet, jest liczony jako jeden skok. Ustalenie maksymalnej liczby skoków zapewnia, że pakiety nie będą stale wykonywać pętli w dyna­micznie trasowanej sieci.

* Protokół: 8-bitowe pole identyfikujące protokół, następujący po nagłówku IP, taki jak YINES, TCP, UDP itd. * Suma Kontrolna: 16-bitowe pole kontroli błędów. Komputer docelowy lub jakikolwiek inny węzeł bramy w sieci, może powtórzyć działania matematyczne na zawartości pakietu, przeprowadzone wcześniej przez komputer źródłowy. Jeśli dane po drodze nie uległy zmianie, wyniki obydwu obliczeń są identyczne. Pole sumy kontrolnej informuje również komputer docelowy o ilości przychodzących danych.
* Adres ¬ródłowy IP: jest adresem IP komputera źródłowego.
* Wypełnienie: do tego pola dodawane są zera, tak aby długość nagłówka TCP była zawsze wielokrotnością 32 bitów.

Te pola nagłówka świadcząc tym, że protokół IPv4 warstwy Internetu jest protokołem bezpołączeniowym - urządzenia kierujące pakietem w sieci mogą samodzielnie ustalać idealną ścieżkę przejścia przez sieć dla każdego pakietu. Nie występują również żadne potwierdzenia, sterowanie strumieniem danych czy też funkcje porządkowania kolejności, właściwe protokołom wyższych warstw, takim jak TCP. Protokół IPv4 pozostawia te funkcje protokołom wyższego poziomu. Warstwa Internatu musi także obsługiwać inne funkcje zarządzania trasą oprócz forma­towania pakietów IP. Musi zapewnić mechanizmy tłumaczące adresy warstwy 2 na ad­resy warstwy 3 i odwrotnie. Te funkcje zarządzania trasą są dostarczane przez protokoły równorzędne z IP; protokoły trasujące opisane w rozdziale 1. pt. ?ABC sieci". Są to: wewnętrzny protokół bramowy (ang. IGP - Interior Gateway Protocols), zewnętrzne protokoły bramowe (ang. EGP - Exterior Gateway Protocols), protokół rozróżniania adresów (ang. ARP - Address Resolution Protocot). odwrócony protokół rozróżniania adresów (ang. RARP - Reverse Address Resolution Protocot) i protokół komunikacyj­ny sterowania Internetem (ang. ICMP - Internet Control Message Protocol}.

Typowe działanie działanie protokołu IPv4
Warstwa aplikacji opatruje pakiet danych nagłówkiem, identyfikując docelowy host i port. Protokół warstwy host-z-hostem (TCP lub UDP, w zależności od aplikacji) dzieli ten blok danych na mniejsze, łatwiej dające sobą kierować kawałki. Do każdego kawałka dołą­czony jest nagłówek. Taką strukturę nazywa się ?segmentem TCP". Pola nagłówka segmentu są odpowiednio wypełniane, a segment jest przekazywany do warstwy Internetu. Warstwa Internetu dodaje informacje dotyczące adresowania, rodzaju protokołu (TCP lub UDP) i sumy kontrolnej. Jeśli segment był fragmentowany, warstwa Internetu wypełnia również to pole. Komputer docelowy odwraca właśnie opisane działania. Odbiera pakiety i przekazuje je swojemu protokołowi warstwy host-z-hostem do ponownego złożenia. Jeśli to konieczne, pakiety są ponownie grupowane w segmenty danych, przekazywane odpowiedniej aplikacji.



Schemat adresowania protokołu IP


Protokół IPv4 wykorzystuje 32-bitowy, binarny schemat adresowania, w celu identyfi­kowania sieci, urządzeń sieciowych i komputerów przyłączonych do sieci. Adresy te. znane jako adresy IP, są ściśle regulowane przez internetowe centrum informacji sieciowej (ang. InterNIC - Internet Network Information Center), Choć administrator sieci ma moż­liwość dowolnego wybierania nie zarejestrowanych adresów IP, taka praktyka jest nie­wybaczalna. Komputery mające takie ?podrobione" adresy IP mogą działać prawidłowo tylko w obrębie swej własnej domeny. Próby dostępu do Internetu z pewnością wykażą ograniczenia takiego krótkowzrocznego działania. Skutki mogą być bardzo różne w za­leżności od wielu rozmaitych czynników, ale na pewno będą to skutki niepożądane. Każda z pięciu klas adresów l P jest oznaczona literą alfabetu: klasa A, B, C, D i E. Każdy adres składa się z dwóch części: adresu sieci i adresu hosta. Klasy prezentują odmienne uzgodnienia dotyczące liczby obsługiwanych sieci i hostów. Choć są to adresy binarne. zwykle przedstawia sieje w tzw. formacie dziesiętnym kropkowym (np. 135.65 121 6) aby ułatwić człowiekowi ich używanie. Kropki rozdzielają cztery oktety adresu.

Notacja dziesiętna kropkowa odnosi się do konwersji adresu binarnego na dziesiętny system liczbowy. Kropka (?."} służy do oddzielania numerów węzła i sieci. Na przykład. 100.99 odnosi się do urządzenia 99 w sieci 100.




* Adres IP klasy A: Pierwszy bit adresu klasy A jest zawsze ustawiony na "O". Następne siedem bitów identyfikuje numer sieci. Ostatnie 24 bity (np. trzy liczby dziesiętne oddzielone kropkami) adresu klasy A reprezentują możliwe adresy hostów. Adresy klasy A mogą mieścić się w zakresie od 1.0.0.0 do 126.0.0.0. Każdy adres klasy A może obsłużyć 16777214 (= 224-2) unikatowych adresów hostów.

* Adres IP klasy B: Pierwsze dwa bity adresu klasy B to "10". Następne 14 bitów identyfikuje numer sieci, zaś ostatnie 16 bitów identyfikuje adresy potencjalnych hostów. Adresy klasy B mogą mieścić się w zakresie od 128. l .0.0 do 191.254.0.0. Każdy adres klasy B może obsłużyć 65534 (= 2"'-2) unikatowych adresów hostów.

* Adres IP klasy C: Pierwsze trzy bity adresu klasy C to "l10". Następne 21 bitów identyfikuje numer sieci. Ostatni oktet służy do adresowania hostów. Adresy klasy C mogą mieścić się w zakresie od 192.0.1.0 do 223.255.254.0. Każdy adres klasy C może obsłużyć 254 (~- 28-2) unikatowe adresy hostów.

* Adres IP klasy D: Pierwsze cztery bity adresu klasy D to "ll10". Adresy te są wykorzystywane do multicastingu , ale ich zastosowanie jest ograniczone. Adres nntlticasl jest unikatowym adresem sieci, kierującym pakiety do predefiniowanych grup adresów IP. Adresy klasy D mogą pochodzić z zakresu 224.0.0.0 do 239.255.255.254.

Pewna niejasność definicji klasy D adresu IP przyczynia się do potencjalnej rozbież­ności pomiędzy jej rozumieniem a stanem faktycznym. Choć IETF zdefiniowało klasy C i D jako oddzielne, różniące się pod względem zakresów liczbowych i zamierzonej funkcjonalności, to wcale nie tak rzadko zddrza się, że zakres adresu klasy D jest utożsamiany z zakresem adresu klasy C. Jest to podejście nieprawidłowe - ale najwidoczniej narzucane przez pewne kursy certyfikacyjne.

* Adres IP klasy E: Faktycznie ?- zdefiniowano klasę E adresu IP, ale InterNIC zarezerwował go dla własnych badań. Tak więc żadne adresy klasy E nie zostały dopuszczone do zastosowania w Internecie.

Duże odstępy między tymi klasami adresów marnowały znaczną liczbę potencjalnych adre­sów. Rozważmy dla przykładu średnich rozmiarów przedsiębiorstwo, które potrzebuje 300 adresów IP. Adres klasy C (254 adresy) jest niewystarczający. Wykorzystanie dwóch adresów klasy C dostarczy więcej adresów niż potrzeba, ale w wyniku tego w ramach przedsiębiorstwa powstaną dwie odrębne domeny. Z kolei zastosowanie adresu klasy B zapewni potrzebne adresy w ramach jednej domeny, ale zmarnuje się w ten sposób 65534 - 300 = 65234 adresy. Na szczęście nie będzie to już dłużej stanowić problemu. Został opracowany nowy, mię-dzydomenowy protokół trasujący, znany jako bezklasowe trasowanie międzydomenowe (ang. CIDR - Classless Interdomuin Routing), Umożliwiający wielu mniejszym klasom adresowym działanie w ramach jednej domeny trasowania. Adresowanie IP wymaga, by każdy komputer miał własny, unikalny adres. Maski pod-sieci mogą kompensować ogromne odstępy między klasami adresowymi, dostosowując długość adresów hosta i/lub sieci. Za pomocą tych dwóch adresów można trasować do­wolny datagram IP do miejsca przeznaczenia. Ponieważ TCP/IP jest w stanie obsługiwać wiele sesji z pojedynczego hosta, musi on zapewnić możliwość adresowania specyficznych programów komunikacyjnych, które mogą działać na każdym z hostów. TCP/IP wykorzystuje do tego numery portów. IETF przypisało kilku najbardziej powszechnym aplikacjom ich własne, dobrze znane numery portów. Numery te są stałe dla każdej aplikacji na określonym hościc. Innym aplikacjom przypisuje się po prostu dostępny numer portu.



Wnioski dotyczące IPv4



Protokół IPv4 ma już prawie dwadzieścia lat. Od jego początków Internet przeszedł kilka znaczących zmian, które zmniejszyły efektywność IP jako protokołu uniwersalnej przyłą-czalności. Być może najbardziej znaczącą z tych zmian była komercjalizacja Internetu. Przyniosła ona bezprecedensowy w/,rosl populacji użytkowników Internetu. To z kolei stworzyło zapotrzebowanie na większą liczbę adresów, a także potrzebę obsługi przez warstwę Internetu nowych rodzajów usług. Ograniczenia IPv4 stały się bodźcem dla opra­cowania zupełnie nowej wersji protokołu. Jest ona nazywana IP, wersja 6 (IPv6). ale po­wszechnie używa się również nazwy Nasiona generacja protokołu Internetu (ang. IPng -? next generation of Internet Protocol).



Protokół Internetu, wersja 6 (IPv6)


Protokół IPv6 ma być prostą, kompatybilną ?w przód" nowelizacją istniejącej wersji protokołu IP. Intencją przyświecającą tej nowelizacji jest wyeliminowanie wszystkich słabości ujawniających się obecnie w protokole IPv4. w tym zbyt małej liczby dostęp­nych adresów l P, niemożności obsługiwania ruchu o wysokich wymaganiach czasowych i braku bezpieczeństwa w warstwie sieci.

Protokół IPv6 był pierwotnie określany jako "IP: następna generacja" lub IPng" - co przydawało mu nieco tajemniczości z pogranicza science fiction. Podczas opracowy­wania specyfikacji protokół ten otrzymał oficjalna nazwę ?IP wersja 6" (IPv6).

Dodatkowym bodźcem dla opracowania i rozwoju nowego protokołu IP stało się traso­wanie, które w ramach protokołu IPv4 jest skrępowane jego 32-bitową architekturą ad­resową, dwupoziomową hierarchią adresowania i klasami adresowymi. Dwupoziomowa hierarchia adresowania ?host.domena" po prostu nie pozwala konstruować wydajnych hie­rarchii adresowych, które mogłyby być agregowane w routerach na skalę odpowiadającą dzisiejszym wymaganiom globalnego Internetu. Następna generacja protokołu IP - IPv6 - rozwiązuje wszystkie wymienione problemy. Będzie oferować znacznie rozszerzony schemat adresowania, aby nadążyć za stałą eks­pansją Internetu, a także zwiększoną zdolność agregowania tras na wielką skalę. IPv6 będzie także obsługiwać wiele innych właściwości, takich jak: transmisje audio i/lub wideo w czasie rzeczywistym, mobilność hostów, bezpieczeństwo końcowe (czyli na całej długości połączenia) dzięki mechanizmom warstwy internetu - kodowaniu i identyfi­kacji, a także auto konfiguracja i autorekonfiguracja. Oczekuje się, że usługi te będą od­powiednia zachętą dla migracji, gdy tylko staną się dostępne produkty zgodne z IPv6. Wiele z tych rozwiązań wciąż wymaga dodatkowej standaryzacji, dlatego też przed­wczesne byłoby ich obszerne omawianie. Jedynym jednakże aspektem protokołu IPv6, który wymaga szerszego omówienia, jest adresowanie. 32-bitowa długość adresu w protokole IPv4 teoretycznie umożliwiała za­adresowanie około 4 miliardów (21?-1) urządzeń. Niewydajne podsieciowe techniki ma­skowania i inne rozrzutne praktyki roztrwoniły niestety ów zasób. Protokół IPv6 wykorzystuje adresy 128-bitowe i teoretycznie jest w stanie zwiększyć prze­strzeń adresową protokołu o czynnik 296 - co daje astronomiczną liczbę

340 282 366 920 938 463 463 374 607 431 768 211 456

potencjalnych adresów. Obecnie zajęte jest około 15% tej przestrzeni adresowej jest zarezerwowana dla bliżej nie określonych - - przyszłych zastosowań. W rzeczywistości przypisanie i trasowanie adresów wymaga utworzenia ich hierarchii. Hierarchie mogą zmniejszyć liczbę potencjalnych adresów, ale za to zwiększają wydaj­ność protokołów trasujących zgodnych z IPv6. Jedną z praktycznych implikacji długości adresu l Pv6 jest to, że usługa nazwy domeny (ang. DNS - Domain Name Service), sta­nowiąca w wersji IPv4 jedynie wygodny luksus, ttuaj staje się absolutną koniecznością.

Usługa nazwy domeny jest narzędziem sieciowym, odpowiedzialnym za tłumaczenie (wygodnych dla użytkowników) mnemonicznych nazw hostów na numeryczne adresy IP.

Równie znacząca, jak zwiększona potencjalna przestrzeń adresowa, jest jeszcze większa elastyczność, na jaką pozwalają nowe struktury adresowe IPv6. Protokół ten uwalnia się od adresowania bazującego na klasach. Zamiast tego rozpoznaje on trzy rodzaje adresów typu unicast. adres klasy D zastępuje nowym formatem adresu multicast oraz wprowadza nowy rodzaj adresu; przed przejściem do dalszej części wykładu nieodzowne staje się wy­jaśnienie szczegółów tych koncepcji.



Struktury adresów unicast IPv6


Adresowanie unicast zapewnia przy łącza l no ść od jednego urządzenia końcowego do dru­giego. Protokół IPv6 obsługuje kilka odmian adresów unicast.



Adres dostawcy usług internetowych (ISP)


Podczas gdy protokół IPv4 z góry przyjął grupy użytkowników wymagających przyłą-czalności, IPv6 dostarcza format adresu unicast, specjalnie przeznaczony dla dostawców usług internetowych, w celu przyłączania indywidualnych użytkowników do Inlcrnetu. Te oparte na dostawcach adresy unicast oferują unikatowe adresy dla indywidualnych użytkowników lub małych grup, uzyskujących dostęp do Internetu za pośrednictwem do­stawcy usług internetowych. Architektura adresu zapewnia wydajną agregację tras w środowisku użytkowników indywidualnych. Format adresu unicast ISP jest następujący:

* 3-bitowa flaga adresu unicast ISP, zawsze ustawiana na "010",
* Pole ID rejestru, o długości "n" bitów,
* Pole ID dostawcy, o długości "m" bitów,
* Pole ID abonenta, o długości "o" bitów,
* Pole ID podsieci, o długości "p" hitów,
* Pole ID interfejsu, o długości 128-3- (n+m-t-o+p) bitów.


Litery n.m.o.p oznaczają zmienne długości pól. Długość pola ID interfejsu stanowi różnicę długości adresu (128) i łącznej długości pól poprzedzających, wraz z trójbitową flagą.
Przykładem adresu tego typu może być 010:0:0:0:0:x, gdzie "x" może być dowolna liczbą. Ponieważ większość nowej przestrzeni adresowej dopiero musi zostać przypisana, adresy te będą zawierać mnóstwo zer. Dlatego grupy zer mogą być zapisywane skrótem w postaci podwójnego dwukropka (::) - skróconą formą adresu 010:0:0:0:0:x jest więc 010::x. Inne rodzaje adresów unicast są przeznaczone do użytku lokalnego. Adresy użytku lokal­nego mogą być przypisane do urządzeń sieciowych w samodzielnym Intranecie lub do urzą-dzerii w Intranecie, którym potrzebny jest dostęp do Internetu.



Adres użytku lokalnego dla łącza



Adres użytku lokalnego dla łącza jest przeznaczony dla pojedynczego łącza, do celów takich jak konfiguracja auto-adresu, wykrywanie sąsiadów, a także w przypadku braku routerów. Adresy lokalne dla łącza mają następujący format:

* 10-bitowa flaga adresu lokalnego, zawsze ustawiana na "1111111011",
* Zarezerwowane, nienazwane pole, mające długość "n" bitów, ale ustawiane domyślnie na wartość "O",
* Pole ID interfejsu o długości 118-n bitów,

ID interfejsu może być adresem MAC karty sieciowej Ethernetu. Adresy MAC, będące teoretycznie adresami unikalnymi, mogą być skojarzone z przedrostkami standardowego adresu IP w celu utworzenia unikalnych adresów dla mobilnych lub zastępczych użyt­kowników. Przykładem adresu użytku lokalnego dla łącza z adresem MAC mógłby być-imillOI1:0:adresjnac.



Adres użytku lokalnego dla miejsca


Adresy lokalne dla miejsca są przeznaczone do stosowania w pojedynczym miejscu. Mogą być używane w miejscach lub organizacjach, które nie są przyłączone do globalnego Inter­netu. Nic muszą żądać czy też ?kraść" przedrostka adresu z przestrzeni adresowej glo­balnego Internetu. Zamiast tego mogą używać adresów protokołu IPv6 lokalnych dla miej­sca. Gdy organizacja łączy się z globalnym Internetem, może utworzyć unikatowe adresy globalne, zastępując przedrostek lokalny dla miejsca przedrostkiem abonenta, zawiera­jącym identyfikatory rejestru, dostawcy i abonenta. Adresy lokalne dla miejsca mają następujący format:

* 10-bilowa flaga użytku lokalnego, zawsze ustawiana na "1111111011",
* Zarezerwowane, nienazwane pole, mające długość "n" bitów, ale ustawiane domyślnie na wartość "0",
* Pole ID podsieci o długości "m" bitów,
* Pole ID interfejsu o długości 118-(n+m) bitów,

Przykładem adresu lokalnego dla miejsca jest: 111111101l:podsieć:interfejs.

Struktury zastępczych adresów unicast IPv6


Dwa specjalne adresy unicast protokołu IPv6 zostały określone jako mechanizmy przej­ściowe, umożliwiające hostom i routerom dynamiczne trasowanie pakietów IPvó przez infrastrukturę sieci protokołu IPv4 i na odwrót.



Adres unicast IPv6 zgodny z IPv4


Pierwszy typ adresu unicast nosi nazwę "adres IPv6 zgodny z IPv4". Ten zastępczy adres unicast może być przypisywany węzłom IPv6, a jego ostatnie 32 bity zawierają adres IPv4. Adresy takie mają następujący format:

 80 bitów      16 bitów     32 bity
  00...00       00...000    IPv4



Adres unicast IPv6 wzorowany na IPv4


Drugi, podobny typ adresu IPv6, również zawierający adres IPv4 w ostatnich 32 bitach, jest znany jako "adres IPv6 wzorowany na IPv4". Adres ten jest tworzony przez router o podwójnym protokole i umożliwia węzłom pracującym wyłącznie z protokołem IPv4 tunelowanie przez infrastrukture sieci z protokołem IPv6. Jedyna różnica między adresami unicast IPv6 wzorowanymi na IPv4 a adresami unicast IPv6 zgodnymi z IPv4 jest taka. że adresy wzorowane na IPv4 to adresy tymczasowe. Są one automatycznie tworzone przez routery o podwójnym protokole i nie mogą być przypisane do żadnego węzła. Kormat takiego adresu wygląda następująco:

80 bitów       16 bitów     32 bity
00..000        FF...FF     IPv4
Obydwa adresy unicast, zarówno wzorowany na IPv4, jak i zgodny z IPv4, mają zasad­nicze znaczenie dla tunelowania. Tunelowanie umożliwia przesyłanie pakietów przez nie­dostępny w inny sposób rejon sieci dzięki umieszczaniu pakietów w obramowaniu akcep­towalnym na zewnątrz.



Struktury adresów anycast IPv6


Adres anycast, wprowadzony w protokole IPv6, jest pojedynczą wartością przypisaną do więcej niż jednego interfejsu. Zwykle interfejsy te należą do różnych urządzeń. Pakiet wysiany pod adres anycast jest trasowany tylko do jednego urządzenia. Jest on wysyłany do najbliższego - według zdefiniowanej przez protokoły trasujące miary odległości --interfejsu o tym adresie. Na przykład, strona WWW (World Wide Web) może być po­wielona na kilku serwerach.11 Dzięki przypisaniu tym serwerom adresu anycast żądania połączenia z tą stroną WWW są automatycznie trasowane do tylko jednego serwera najbliższego względem użytkownika.

W środowisku trasowanym "najbliższy" interfejs może nie być tym, który jest najbliżej w sensie fizycznego położenia. Routery wykorzystuję przy obliczaniu tras zaskakująco szeroki zestaw metryk. Określanie najkrótszej trasy jest uzależnione od aktualnie uży­wanego protokołu trasującego oraz od jego metryk. Adresy anycast są tworzone (pobierane) z przestrzeni adresów unicast i mogą przybrać formę dowolnego typu adresu unicast. Tworzy sieje, przypisując po prostu ten sam ad­res unicast więcej niż jednemu interfejsowi.



Struktury adresów multicast IPv6


Protokół IPv4 obsługiwał multicasting, ale wymagało to stosowania niejasnego adreso­wania klasy D. Protokół IPv6 rezygnuje z adresów klasy D na korzyść nowego formatu adresu, udostępniającego tryliony możliwych kodów grup multicast. Każdy kod grupy iden­tyfikuje dwóch lub więcej odbiorców pakietu. Zakres pojedynczego adresu multicast jest elastyczny. Każdy adres może być ograniczony do pojedynczego systemu, do określonego miejsca, powiązany z danym łączem sieciowym lub rozpowszechniany globalnie. Należy zauważyć, że nadawanie adresów IP również zostało wyeliminowane i zastąpio­ne nowym multicastingowym formatem adresu.



Wnioski dotyczące IPv6


Pomimo potencjalnych korzyści związanych z protokołem IPv6, migracja z IPv4 nie jest wolna od ryzyka. Rozszerzenie długości adresu z 32 do 128 bitów automatycznie ogranicza współoperacyjność protokołów IPv4 i IPv6. Węzły ?tylko-IPv4" nie mogą współdziałać r węzłami " tylko-IPv6 ", ponieważ architektury adresowe nie są kompatybilne \v przód. To ryzyko biznesowe, w połączeniu z nieustanną ewolucją protokołu IPv4, może stano­wić przeszkodę dla rynkowej akceptacji protokołu IPv6.



Wymiana IPX/SPX Novell


Zostaw protokołów firmy Novell bierze nazwę od swoich dwóch głównych protokołów: międzysieciowej wymiany pakietów (ang. IPX-lnternet Packet Exchange) i sekwencyjnej wymiany pakietów (ang. SPX-Sequeneed Packet Exchange). Ten firmowy stos proto­kołów został oparty na protokole systemów sieciowych firmy Xerox (ang. XNS - Xerox 'x Network System), wykorzystywanym w pierwszej generacji sieci Ethernet. Wymiana łPX/ SPX zyskała na znaczeniu we wczesnych latach 80. jako integralna część systemu Novell Netware ''. Netware stał się faktycznym standardem sieciowego systemu operacyjnego (ang. NOS - Network Operuting System) dla sieci lokalnych pierwszej generacji, Novell uzupełnił swój system zestawem aplikacji biznesowych i klienckich narzędzi łączności14. Protokół IPX w dużym stopniu przypomina IP. Jest bezpołączeniowym protokołem datagra-mowym, który nie wymaga ani nie zapewnia potwierdzenia każdego transmitowanego pa­kietu. Protokół IPX polega na SPX w taki sam sposób, w jaki protokół IP polega na TCP w zakresie porządkowania kolejności i innych usług połączeniowych warstwy 4. Rysunek 12.4 przedstawia stos protokołów IPX/SPX w porównaniu z modelem referencyjnym OSI. Protokoły IPX i SPX Novclla są funkcjonalnym ekwiwalentem warstw modelu OSI, od­powiednio warstw 3 i 4. Pełny zestaw protokołów IPX/SPX, składający się z czterech warstw, funkcjonalnie odpowiada innym warstwom modelu OSI.

Analiza IPX/SPX
Stos protokołów IPX/SPX obejmuje cztery warstwy funkcjonalne: dostępu do nośnika, łącza danych. InterncUi i aplikacji. Te cztery warstwy luźno nawiązują do siedmiu warstw modelu referencyjnego OSI, nie tracąc nic na funkcjonalności.

Warstwa aplikacji
Warstwa aplikacji Novella obejmuje trzy warstwy - aplikacji, prezentacji i sesji - modelu OSI, choć niektóre z jej protokołów aplikacyjnych rozciągają ten stos w dół, aż do warstwy sieci. Głównym protokołem warstwy aplikacji w tym stosie jest protokół rdzenia NetWare (ang. NCP - NetWare Córę Protocol). Protokół NCP można bezpo­średnio sprzęgać zarówno z protokołem SPX, jak i IPX. Jest wykorzystywany do druko­wania, współdzielenia plików, poczty elektronicznej i dostępu do katalogów. Innymi protokolarni warstwy aplikacji są między innymi: protokół informacyjny traso­wania (ang. R1P - Routing Information Prolocol), firmowy protokół ogłoszeniowy usługi (ang. SAP -- Service Advertimement Protocol i protokół obsługi łącza systemu Netware (ang. NLSP - Netware Link Services Protocol). Protokół R1P jest domyślnym protokołem trasującym systemu NetWare. Jest to protokół trasowania wektora odległości wykorzystujący tylko dwie metryki: kwanty (ang. ticka) i skoki (ang. hops). Auw?? jest miarą czasu, zaś liczba skoków, jak już wyjaśniono wcze­śniej w tym rozdziale, jest licznikiem routerów, które manipulowały trasowanym pa­kietem. Na tych dwóch metrykach opiera się wybór ścieżki trasowania protokołu 1PX. Podstawową metryką są kwanty - skoki rozstrzygają tylko w przypadku, gdy dwie ścieżki (lub więcej) mają taką samą wartość znaków kontrolnych. R! P jest bardzo prostym protokołem trasującym. Oprócz ograniczonej liczby metryk wektora odległości, cechuje się też wysokim poziomem narzutu sieciowego. Narzut len powstaje, ponieważ aktualizacje tabeli trasującej RIP są nadawane co 60 sekund. W wielkich lub mocno obciążonych sieciach taka szybkość aktualizacji może mieć szkodliwe działanie. SAP jest unikatowym protokołem firmowym, który Novell udanie zastosował do polep­szenia związku klienta z serwerem. Serwery wykorzystują protokół SAP do automa­tycznego wysyłania w sieć informacji o udostępnianych przez nie usługach natychmiast po tym, jak uaktywnią się w sieci. Oprócz tego okresowo nadają informacje SAP, aby dostarczać klientom i innym serwerom informacje o swoim statusie i usługach. Transmisje SAP generowane przez serwer informują o statusie i usługach tego serwera. Transmisje zawierają nazwę i typ serwera, jego status operacyjny, a także numery sieci. węzła i gniazda. Routery mogą przechowywać informacje z transmisji SAP i rozprowadzać je do innych segmentów sieci. Klienci także mogą inicjować zgłoszenia SAP gdy potrzebują określonej usługi. Ich żądanie jest rozsyłane po całym segmencie sieci. Hosty mogą wtedy odpowiedzieć i dostarczyć klientowi informacje SAP wystarczające do określe­nia, czy usługa jest dostępna w rozsądnej odległości. Niestety, SAP jest dojrzałym protokołem, który coraz gorzej funkcjonuje we współcze­snych sieciach. Tak jak w przypadku protokołu RIP, ogłoszenia o usługach są nadawane co 60 sekund. Przy dzisiejszych ogromnych, jednorodnych, komutowanych sieciach LAN taka częstość nadawania może być problematyczna. Najnowszym protokołem warstwy aplikacji jest protokół obsługi łącza systemu Netware (NLSP). Jest to protokół trasowania w zależności od stanu łącza, którym Novell zamie­rza zastąpić starzejące się protokoły RIP i SAP. Protokół NLSP aktualizuje trasy tylko wtedy, gdy zaszły jakieś zmiany.

Protokoły warstwy Internetu
Warstwa Internetu wymiany IPX/SPX luźno nawiązuje do warstw sieci i transportu mo­delu referencyjnego OSI. IPX jest w przeważającej części protokołem warstwy 3 (sieci), choć może też być bezpośrednio sprzęgany z warstwą aplikacji. SPX jest wyłącznie protokołem warstwy 4 (transportu) i nie może być bezpośrednio sprzęgnięty z interfejsem ODI warstwy łącza danych. Musi przekazywać dane poprzez protokół IPX sprzęgnięty z ODI. IPX i SPX funkcjonuj ą jako protokoły podwarstw we wspólnej warstwie Internetu. SPX jest protokołem połączeniowym i może być wykorzystywany do przesyłania danych między klientem serwerem, dwoma serwerami czy nawet dwoma klientami. Tak jak w przy­padku protokołu TCP, protokół SPX zapewnia niezawodność transmisjom IPX, zarządzając (administrując) połączeniem i udostępniając sterowanie strumieniem danych, kontrolę błę­dów i porządkowanie kolejności pakietów.

Nagłówek SPX ma następujący rozmiar i strukturę:

* Sterowanie połączeniem: Pierwszy oktet (8 bitów) nagłówka SPX zawiera cztery 2-bitowe flagi, sterujące dwukierunkowym przepływem danych przez połączenie SPX.
* Typ strumienia danych: Następnych osiem bitów nagłówka definiuje typ strumienia danych. * Identyfikacja połączenia źródłowego: 16-bitowe pole identyfikacji połączenia źródłowego identyfikuje proces odpowiedzialny za inicjowanie połączenia.
* Identyfikacja połączenia docelowego: 16-bitowe pole identyfikacji połączenia docelowego służy do identyfikowania procesu, który zaakceptował żądanie (zgłoszenie) połączenia SPX.
* Numer sekwencji: 16-bitowe pole numeru sekwencji dostarcza protokołowi SPX hosta docelowego informację o liczbie wysłanych pakietów. To sekwencyjne numerowanie może być wykorzystywane do zmiany kolejności odebranych pakietów, gdyby przybyły w niewłaściwej kolejności.
* Numer potwierdzenia: 16-bitowe pole numeru potwierdzenia wskazuje następny oczekiwany segment,
* Liczba alokacji: 16-bitowe pole liczby alokacji jest wykorzystywane do śledzenia liczby pakietów wysłanych, ale nie potwierdzonych przez odbiorcę.
* Dane: Ostatnie pole nagłówka SPX zawiera dane. W jednym pakiecie SPX można przesiać do 534 oktetów danych.

Protokołem warstwy sieci dla sieci Novell jest IPX. Protokół ten zapewnia bezpołącze-niowe usługi dostarczania datagramów. Przygotowuje pakiety protokołu SPX (lub pakiety innych protokołów) do dostarczenia przez wiele sieci, dołączając do nich nagłówek 1PX. W ten sposób powstaje struktura zwana datagramem IPX. Nagłówek tego datagramu zawiera wszystkie informacje niezbędne do skierowania pakietów do miejsca pr/ezna-czenia, niezależnie od tego, gdzie mogłoby się ono znajdować.

Długość nagłówka IPX wynosi 11 oktetów. Jego struktura obejmuje następujące pola:

*Suma Kontrolna: Nagłówek 1PX zaczyna się od 16-bitowego pola dziedziczenia, które istnieje tylko po to, aby zapewnić kompatybilność wsteczną z protokołem XNS. Protokół XNS wykorzystywał to pole do kontrolowania błędów, ale IPX domyślnie ustawia to pole na "FFFFH", a wykrywanie (i korekcję) błędów transmisji pozostawia protokołom wyższego poziomu.
*Długość Pakietu: 16-bitowe pole określające długość datagramu IPX, wliczając nagłówek i dane. Pole to jest sprawdzane w celu weryfikacji integralności pakietu.
*Sterowanie Transportem: 8-bitowe pole wykorzystywane przez routery podczas przesyłania datagramu. Przed wysłaniem 1PX ustawia to pole na ?O". Każdy router, który odbiera i przesyła dalej datagram, zwiększa wartość pola o jeden.
*Typ Pakietu: 8-bitowe pole identyfikujące typ pakietu zawartego w datagramie IPX. Pole to umożliwia hostowi docelowemu przekazanie zawartości do następnej, odpowiedniej warstwy protokołów. Typy mogą obejmować RIP, NCP, SPX, błąd itd.
*Numer Sieci Docelowej: 32-bitowe pole określające numer sieci, w której znajduje się węzeł docelowy.
*Węzeł Docelowy: 48-bitowe pole zawierające numer węzła, w którym znajduje się komputer docelowy.
*Numer Gniazda Docelowego: Ponieważ 1PX umożliwia wiele jednoczesnych połączeń z jednym systemem, istotne jest określenie numeru gniazda procesu lub programu odbierającego pakiety. Informacji takiej dostarcza to 16-bitowe pole.
*Numer Sieci ¬ródłowej: 32-bitowe pole określające numer sieci, w której znajduje się węzeł źródłowy.
* Adres Węzła ¬ródłowego: 48-bitowe pole zawierające numer węzła, w którym znajduje się komputer źródłowy.
* Numer Gniazda ¬ródłowego: 16-bitowe pole, określające numer gniazda procesu lub programu wysyłającego pakiety.

Typowe działanie protokołów IPX/SPX
Protokół SPX tworzy i utrzymuje połączeniowy strumień bitów między dwoma przyłą­czonymi do sieci urządzeniami. Protokół przyjmuje duże bloki danych z protokołów wyż­szych warstw i dzieli je na łatwiejsze w kierowaniu kawałki, nie przekraczające długości 534 oktetów. Do danych dołączany jest nagłówek SPX i w ten sposób powstają seg­menty danych SPX. Segmenty przekazywane są protokołowi warstwy Internetu, czyli pro­tokołowi IPX. IPX umieszcza segmenty w polu danych swoich pakietów i wypełnia wszyst­kie pola nagłówka IPX. Pola nagłówka IPX obejmują adresowanie sieci, długość, sumę kontrolną i inne informacje nagłówkowe. Następnie pakiet przekazywany jest warstwie łącza danych. Komputer docelowy odwraca opisane wyżej działania. Odbiera pakiety i przekazuje je własnemu protokołowi SPX do ponownego złożenia. Jeśli to konieczne, pakiety są po­nownie grupowane w segmenty danych, przekazywane odpowiedniej aplikacji.



Warstwy łącza danych i dostępu do nośnika


W systemie Netware odpowiednikami warstw fizycznej i łącza danych OSI są warstwy dostępu do nośnika i łącza danych. Warstwa łącza danych jest bezpośrednio kompaty­bilna ze standardem interfejsu otwartego łącza danych (ODI). Podobnie warstwa dostępu do nośnika jest bezpośrednio kompatybilna ze wszystkimi popularnymi, znormalizowa­nymi protokołami dostępu do nośnika. Ta niskopoziomowa zgodność z przemysłowymi standardami otwartymi sprawia, że system Netware ze stosem protokołów IPX/SPX może być implementowany niemal wszędzie.

Adresowanie IPX

Adresy 1PX mają długość 10 oktetów (80 bitów). Jest to znacznie więcej niż 32 bity adresu !Pv4, ale mniej niż 128 bitów adresu IPv6. Każdy adres składa się z dwóch części składo­wych: numeru sieci o maksymalnej długości 32 bitów oraz 48-bitowego numeru węzła. Nu­mery te są wyrażane w notacji kropkowo-szesnastkowej. Na przykład, Ia2b.0000.3c4d.5e6d mogłoby być prawidłowym adresem IPX, w którym ?Ia2b" reprezentuje numer sieci, a ?0000.3c4d.5e6d" jest numerem węzła. Adresy IPX mogą być tworzone przez administratora sieci. Jednakże tak utworzone nu­mery po znalezieniu się w sieci mogą spowodować występowanie konfliktów adresów. Wymyślanie numerów sieci obciąża admina obowiązkiem ich utrzymywania i administrowania nimi. Lepszym rozwiązaniem jest więc pozyskanie zarejestrowanych numerów sieci IPX od firmy Newell. Jako numer hosta IPX wykorzystuje się zwykle powszechnie przypisywany adres (adres MAC) karty sieciowej (NIC). Ponieważ adresy te są unikatowe, przynajmniej w teorii i w stopniu zależnym od zapewnienia jakości przez producenta, oferują wygodną i uni­katową numerację hostów. Podobnie jak IP, protokół IPX może obsługiwać wiele jednoczesnych sesji. Stwarza to potrzebę identyfikowania określonego procesu lub programu, który bierze udział w danej sesji. Identyfikację osiąga się dzięki stosowaniu 16-bitowego numeru "gniazda" w nagłówku IPX. Numer gniazda jest analogiczny do numeru portu w protokole TCP/IP.

Wnioski dotyczące IPX/SPX

Firma Novell Inc. zaobserwowała, jak pozycja rynkowa będącego jej własnością stosu protokołów IPX/SPX słabnie pod naporem konkurencji. Gdy dostępne stały się stosy protokołów otwartych, takich jak OSI, IP i inne, pozycja IPX/SPX bardzo na tym ucier­piała. Dostępne w handlu pakiety oprogramowania wspomagającego prace biurowe rów­nież wpłynęły na sprzedaż produktów firmy Novell. Będące jej własnością, ściśle połączone ze sobą serie produktów zapewniły początkowy sukces, ale stały się ciężarem w warun­kach rynku ceniącego otwartość i współoperacyjność. Novell zademonstrował swoje zaangażowanie w staraniach o odzyskanie utraconej po­zycji, czyniąc IPv6 domyślnym protokołem przyszłych wersji systemu Netware. Aby po­myślnie wprowadzić tę zmianę strategii, Novell musi zapewnić kompatybilność między protokołami IPv6 i IPX/SPX. By osiągnąć ten cel, Novell blisko współpracował z Grupa Roboczą ds. Technicznych Internctu podczas projektowania IPv6. Dzięki temu wiele usług 1PX stało się integralną częścią Ipv6. Przygotowawszy grunt pod przyszłość, Novell musi teraz umożliwić bezbolesną migrację obecnego stosu protokołów i zestawu aplikacji do nowego środowiska. Co więcej, po­winien także dostarczyć produkty i usługi podnoszące wartość wykorzystywania plat­formy sieci otwartej. Dla firmy Novell wizją na przyszłość jest dostarczenie usługi ka­talogów sieciowych (ang. NDS - Nctwork Direclory Service) i powiązanych produktów dla dwóch grup użytkowników: środowiska Internetu i korporacyjnych intranetów. Usługa NDS oferuje jeden, globalny, logiczny widok na wszystkie usługi i zasoby sie­ciowe. Umożliwia to użytkownikom dostęp do tych usług i zasobów po wykonaniu po­jedynczego logowania, niezależnie od lokalizacji użytkownika czy zasobów.

Pakiet protokołów AppleTalk firmy Apple


Gdy komputery Apple zyskały większą popularność, a ich użytkownicy zaczęli z nich korzystać w sposób coraz bardziej wyszukany, nieunikniona stała się konieczność połączenia ich w sieć. Nie jest niespodzianką, że sieć opracowana przez Apple jest tak przyja­zna użytkownikowi jak komputery tej firmy. Z każdym komputerem Apple sprzedawany Przyłączenie do sieci jest równie proste jak wetknięcie wtyczki do złącza sieciowego i włą­czenie zasilania komputera. AppleTalk jest siecią równoprawną dostarczającą proste funkcje jak wspólne korzystanie z plików i drukarek. Inaczej niż w sieciach klient/serwer, funk­cjonalności sieci równoprawnej nie ograniczają żadne sztywne definicje. Każdy komputer może działać jednocześnie jako serwer i klient. AppleTalk został także przyjęty przez wielu innych producentów systemów operacyjnych. Nierzadko spotyka się możliwość obsługi stosu protokołów AppleTalk na komputerach innych niż Apple. Pozwala to klientom wykorzystywać AppleTalk i komputery Apple do tworzenia lub przyłączania się do istniejących sieci klient/serwer, innych niż sieci Apple.



Analiza AppleTalk


Stos protokołów AppleTalk obejmuje pięć warstw funkcjonalnych: dostępu do sieci, data-gramową, sieci, informacji o strefach i aplikacji. Stos protokołów AppleTalk dość wiernie naśladuje funkcjonalność warstw transportu i sesji modelu referencyjnego OSI. Warstwy fizyczna i łącza danych zostały rozbite na wiele odrębnych warstw, specyficznych ze wzglę­du na ramki. AppleTalk integruje warstwy aplikacji i prezentacji, tworząc pojedynczą warstwę aplikacji. R Stos protokołów AppleTalk odwzorowuje funkcjonalność warstw sieci, transportu i sesji modelu referencyjnego OSI, ale pozostałe cztery warstwy zawiera w dwóch.

Warstwa aplikacji sieci AppleTalk

AppleTalk łączy w pojedynczej warstwie aplikacji funkcjonalność warstw aplikacji i pre­zentacji modelu OSI. Ponieważ AppleTalk jest dosyć prostym stosem protokołów, war­stwę tę zajmuje tylko jeden protokół. Jest to protokół dostępu do plików sieci AppleTalk (ang. AFT - AppleTalk Fiiing Protocof}. Protokół AFP dostarcza usługi plików sieciowych aplikacjom istniejącym oddzielnie od stosu protokołów, takim jak poczta elektroniczna, kolejkowanie wydruków itd. Każda aplikacja uruchamiana na komputerze Apple musi przejść przez protokół AFP, jeśli chce wysłać informacje do sieci lub je z niej odebrać.

Warstwa sesji sieci AppleTalk
Warstwa sesji w sieci AppleTalk obejmuje pięć podstawowych protokołów, dostarcza­jących takie usługi, jak pełnodupleksowa transmisja, logiczne rozróżnianie nazw i adre­sów, dostęp do drukarki, ustalanie kolejności pakietów i inne. Pierwszym protokołem warstwy sesji jest protokół strumienia danych sieci AppleTalk (ang. ADSP - AppleTalk Data Stream Protocof). Protokół ten dostarcza pełnoduplek-sowe usługi połączeniowe w wysoce niezawodny sposób, poprzez ustanawianie logicz­nego połączenia (sesji) pomiędzy dwoma komunikującymi się procesami na komputerach klientów. Protokół ADSP również zarządza tym połączeniem, dostarczając usługi stero­wania strumieniem danych, zarządzania kolejnością i potwierdzania transmitowanych pakietów. Protokół ADSP wykorzystuje adresy gniazd do ustanowienia logicznego połą­czenia procesów. Po ustanowieniu tego połączenia dwa systemy mogą wymieniać dane. Innym protokołem warstwy sesji sieci AppleTalk jest protokół sesji sieci AppleTalk (ang. ASP - AppleTalk Sexsion Protocof). Protokół ten zapewnia niezawodne dostarczanie danych, wykorzystując sekwencyjne zarządzanie sesją, a także usługi transportowe proto­kołu transportu sieci AppleTalk (ang. ATP - Apple Talk Transport Protocol}, który jest protokołem warstwy transportu. Protokół trasowania AppleTalk (ang. AURP - AppleTalk Update-Based Routing Protocof) jest wykorzystywany w większych sieciach AppleTalk. Protokół ten służy przede wszystkim do zarządzania trasą i wymianą informacji pomiędzy urządzeniami trasującymi, zwłaszcza routerami bramek zewnętrznych. Warstwa sesji sieci AppleTalk zawiera także protokół dostępu do drukarki (ang. PAP - Printer Access Protocof}. Choć protokół ten został pierwotnie opracowany dla admini­strowania dostępem do drukarek sieciowych, może być wykorzystywany w rozmaitych wymianach danych. Zapewnia dwukierunkową sesję między dwoma urządzeniami, uzu­pełnioną o sterowanie strumieniem danych i zarządzanie kolejnością. Ostatnim z protokołów warstwy sesji sieci AppleTalk jest protokół informacji o strefach (ang. ZIP - Żonę Information Protocof). Zapewnia on mechanizm logicznego grupowania indywidualnych urządzeń sieciowych z wykorzystaniem nazw przyjaznych dla użyt­kownika. Te grupy logiczne są nazywane strefami, W rozszerzonej sieci komputery mogą być rozrzucone po wielu sieciach, ciągle będąc zgrupowanymi w stretle. Jednak w ma­łych, nie rozszerzonych sieciach, może być zdefiniowana tylko jedna strefa. Protokół ZIP korzysta z protokołu wiązania nazw (ang. NBP - Name Binding Protocof), który jest protokołem warstwy transportu, do tłumaczenia nazw na numery sieci i węzła, a także z protokołu transportu ATP do aktualizowania informacji o strefach. Pięć wymienionych protokołów warstwy sesji zapewnia klientom AppleTalk logiczne po­łączenia i transfery danych między komputerami, niezależnie od tego, jak bardzo są od siebie oddalone.

Warstwa transportu sieci AppleTalk
Warstwa transportu sieci AppleTalk oferuje usługi transportowe wszystkim warstwom wyższych poziomów. W warstwie tej istnieją cztery odrębne protokoły. Najczęściej uży­wanym spośród nich jest protokół transportu AppleTalk (ATP). Protokół ATP zapewnia niezawodny mechanizm dostarczania pakietów między dwoma kom­puterami. ATP korzysta z pól sekwencji i potwierdzenia, znajdujących się w nagłówku pakietu, aby zapewnić, że pakiety nie zaginą na drodze do miejsca przeznaczenia. Kolejnym ważnym protokołem warstwy transportu AppleTalk jest protokół wiązania nazw (NBP). Jak wspominam wcześniej, NBP wykorzystuje protokół ZIP do tłumaczenia nazw przyjaznych dla użytkownika na rzeczywiste adresy. Protokół NBP przeprowadza fak­tyczną translację nazw stref na adresy sieci i węzłów. Protokół ten obejmuje cztery pod­stawowe funkcje:

* Rejestracja nazwy: Funkcja ta rejestruje unikalną nazwę logiczną w bazie rejestrów NBP.
* Przeglądanie nazw: Funkcja ta jest udostępniana komputerowi, który prosi o adres innego komputera. Prośbajest zgłaszana i zaspokajana w sposób jawny. Jeśli w prośbie podawana jest nazwa obiektu, protokół NBP zmienia tę nazwę w adres numeryczny. NBP zawsze przystępuje do zaspokajania takich próśb, przeglądając numery węzłów lokalnych. Jeśli żaden z nich nie pasuje, protokół NBP rozsyła prośbę do innych, połączonych ze sobą sieci AppleTalk. Jeśli wciąż nie można znaleźć pasującego adresu, czas prośby mija i proszące urządzenie otrzymuje komunikat o błędzie.
* Potwierdzenie nazwy: Żądania potwierdzenia są używane do weryfikacji związku obiektu z adresem.
* Usunięcie nazwy: W każdej sieci urządzenia są czasowo wyłączane lub odłączane. Gdy wystąpi taka sytuacja, wysyłane jest żądanie usunięcia nazwy, a tablice "obiekt-nazwa-adresowanie" są uaktualniane automatycznie.

Kolejnym protokołem warstwy transportu jest protokół echa sieci AppteTalk (ang. AEP - AppleTalk Echo Protocol}. Służy on do określania dostępności systemu i obliczania czasu transmisji i potwierdzenia przyjęcia (ang. RTT- Round Trtp Transmit Time}. Ostatnim protokołem warstwy transportu jest protokół utrzymania wyboru trasy (ang. RTMP - Routing Tcihle Maintenance Protocof). Ponieważ AppleTalk stosuje w swojej warstwie sieci protokoły trasowane, musi zapewnić zarządzanie (administrowanie) tablica­mi trasowania. Protokół RTMP dostarcza routerom zawartość dla ich tablic trasowania.

Warstwa datagramowa sieci AppleTalk
Warstwa datagramowa sieci AppleTalk, analogiczna do warstwy 3 (sieci) modelu OSI, zapewnia bezpołączeniowe dostarczanie pakietowanych datagramów. Jest podstawą dla ustanawiania komunikacji i dostarczania danych przez sieć AppleTalk. Warstwa datagra­mowa jest również odpowiedzialna za zapewnianie dynamicznego adresowania węzłów sieciowych jak też za rozróżnianie adresów MAC dla sieci IEEE 802. Podstawowym protokołem tej warstwy jest protokół dostaw datagramów (ang. DDP - Da-(agram Delivery Protocoi). Zapewnia on transmisję danych przez wiele sieci w trybie bezpolączeniowym. Dostosowuje swoje nagłówki w zależności od miejsca przeznaczenia przesyłki. Podstawowe elementy pozostają stałe; dodatkowe pola są dodawane w razie potrzeby. Datagramy, które mają być dostarczone lokalnie (innymi słowy w obrębie tej samej podsieci). wykorzystują tzw. "krótki nagłówek". Datagramy, które wymagają trasowania do innych podsieci, wykorzystują format "rozszerzonego nagłówka". Format rozszerzony zawiera adresy sieci i pole licznika skoków.

Nagłówek DDP składa się z następujących pól:

* Liczba Skoków: Pole to zawiera licznik, zwiększany o jeden po każdym przejściu pakietu przez router. Pole liczby skoków jest wykorzystywane tylko w rozszerzonym nagłówku.
* Długość Datagramu: Pole zawiera długość datagramu i może służyć do sprawdzenia, czy nie został on uszkodzony podczas transmisji.
* Suma Kontrolna DDP: Jest to pole opcjonalne. Kiedy jest używane, zapewnia pewniejszą metodę wykrywania błędów niż proste sprawdzanie długości datagramu. Weryfikacja sumy kontrolnej wykrywa nawet niewielkie zmiany zawartości, niezależnie od tego, czy długość datagramu uległa zmianie.
* Numer Gniazda ¬ródłowego: To pole identyfikuje proces komunikujący w komputerze, który zainicjował połączenie.
* Numer Gniazda Docelowego: To pole identyfikuje proces komunikujący w komputerze, który odpowiedział na żądanie (prośbę) połączenia.
* Adres ¬ródłowy: Pole zawierające numery sieci i węzła komputera źródłowego. Jest używane tylko w rozszerzonym formacie nagłówka i umożliwia routerom przesyłanie datagramów przez wiele podsieci.
* Adres Docelowy: Pole zawierające numery sieci i węzła komputera docelowego, Jest używane tylko w rozszerzonym formacie nagłówka i umożliwia routerom przesyłanie datagramów przez wiele podsieci.
* Typ DDP: Pole identyfikujące zawarty w datagramie protokół wyższej warstwy. Jest wykorzystywane przez warstwę transportu komputera docelowego do identyfikowania odpowiedniego protokołu, do którego powinna być przesłana zawartość.
* Dane: Pole to zawiera przesyłane dane. Jego rozmiar może wynosić od O do 586 oktetów.

Warstwa datagramowa zawiera także protokół używany do przekształcania adresów wę­złów w adresy MAC dla komputerów przyłączonych do sieci IEEE 802. Jest to protokół rozróżniania adresów sieci AppleTalk (ang. AARP - AppleTalk Address Resolution Protocoi). Może być także używany do określania adresu węzła danej stacji. Protokół AARP przechowuje swoje informacje w tablicy odwzorowywania adresów (AMT). Stosownie do dynamicznego przypisywania numerów węzłów, tablica ta jest stale i automatycznie

Warstwa łącza danych sieci AppleTalk
Warstwa łącza danych sieci AppleTalk odwzorowuje funkcjonalność warstw fizycznej i łącza danych modelu OSI. Funkcjonalność ta jest zintegrowana w podwarstwach spe­cyficznych dla ramek. Na przykład, ?EtherTalk" jest protokołem warstwy łącza danych zapewniającym całkowitą funkcjonalność warstw fizycznej i łącza danych modelu OSI w ramach jednej podwarstwy. Podwarstwa ta umożliwia opakowywanie AppleTalk w struk­turze ramki Ethernetu zgodnej z 802.3. Istnieją podobne podwarstwy AppleTalk dla Token Ringu (znane jako ?TokenTalk") i dla FDDI ("FDDITalk"). Protokoły te są nazywane ?protokołami dostępu" ze względu na oferowane przez nie usługi dostępu do sieci fizycznej. EtherTalk używa protokołu dostępu szeregowego, znanego jako ?protokół dostępu do łącza EtherTalk" (ang. ELA P - Ether Talk Link Access Protocoi) do pakowania danych i umieszczania ramek zgodnych z 802.3 w nośniku fizycznym. Taka konwencja nazewnicza i funkcjonalność protokołu dostępu szeregowego dotyczy również pozostałych protokołów dostępu. Na przykład, TokenTalk korzysta z ?protokołu dostępu do łącza TokenTalk" (ang. TLA P - Token Talk Link Access Protocoi). Oprócz protokołów dostępu pasujących do standardów przemysłowych, firma Apple ofe­ruje własny protokół sieci lokalnych, należący do warstwy łącza danych. Jest on znany pod nazwą ?LocalTalk". LocalTalk działa z szybkością 230 Kbps, korzystając ze skrętki dwużyłowej. Wykorzystuje, jak można się spodziewać, protokół dostępu do łącza Lo­calTalk (ang. LLAP - Local Talk Link Access Protocoi) do składania ramek i umiesz­czania ich w sieci. Protokół LLAP zawiera również mechanizmy zarządzania dostępem do nośnika, adresowania na poziomie łącza danych, opakowywania danych oraz repre­zentacji bitowej dla transmisji ramki.



Schemat adresowania sieci AppleTalk


Schemat adresowania sieci AppleTalk składa się z dwóch części: numeru sieci i numeru węzła. Numery sieci mają zwykle długość 16 bitów, choć w przypadku sieci nie rozszerzonych lub rozszerzonych w małym stopniu może być stosowane numerowanie jednoskładnikowe (8 bitów). Numery te muszą być zdefiniowane przez administratora sieci i używane przez AppleTalk do trasowania pakietów między różnymi sieciami. Numer sieci ?O" jest zare­zerwowany przez protokół do wykorzystania przy pierwszym przyłączaniu nowych wę­złów sieci. Numer sieci musi mieć wartość z zakresu od 00000001 do FFFFFFFF. Numery węzłów są liczbami 8-bitowymi - dopuszczalny zakres adresów dla hostów, drukarek, routerów i innych urządzeń wynosi od l do 253; numery O, 254 i 255 są zare­zerwowane przez AppleTalk do wykorzystania w rozszerzonych sieciach. Węzły są nu­merowane dynamicznie przez warstwę łącza danych sieci AppleTalk. Adresy AppleTalk są wyrażane w notacji kropkowo-dziesiętnej. Jak już wyjaśniono wcze­śniej w tym rozdziale, adres binarny jest zamieniany na dziesiętny system liczbowy, a kropka (.) służy do oddzielania numerów węzła i sieci. Na przykład, 100.99 odnosi się do urządzenia 99 w sieci 100. Początkowe zera zostały pominięte.



Wnioski dotyczące AppleTalk


AppleTalk jest firmowym stosem protokołów, przeznaczonym specjalnie dla pracują­cych w sieci komputerów osobistych firmy Apple. Jego przyszłość jest bezpośrednio związana z losami firmy Apple Corporation i kierunkami rozwoju jej technologii. Tak jak w przypadku firmowego stosu protokołów Novella, warstwy fizyczna i łącza danych służą do zapewnienia zgodności z technologiami sieciowymi opartymi na ustanowionych standardach. Jedynym wyjątkiem jest warstwa fizyczna LocalTalk, która może połączyć ze sobą komputery Apple, używając skrętki dwużyłowej przy szybkości do 230 Kbps.



NetBEUI


Ostatnim, zasługującym na omówienie protokołem jest NetBEUI. Ta niewygodna nazwa jest częściowo skrótem, a częściowo akronimem. Oznacza rozszerzony interfejs użytkownika NetBIOS (co z kolei jest skrótem od Podstawowego sieciowego systemu wejścia-wyjś-cia). Interfejs NetBEUI został opracowany przez IBM i wprowadzony na rynek w 1985 roku. Jest stosunkowo małym, ale wydajnym protokołem komunikacyjnym LAN. Wizja firmy IBM dotycząca obliczeń rozproszonych zakładała w tamtych czasach seg-mentację sieci LAN, opartą na potrzebie wspólnej pracy. Poszczególne segmenty obsłu­giwałyby środowisko powiązane procesami pracy. Dane, do których potrzebny był do­stęp, ale znajdujące się poza segmentem, mogły być odnalezione za pomocą pewnego rodzaju bramy aplikacji. Ze względu na takie pochodzenie nie powinno dziwić, że Net­BEUI najlepiej nadaje się do małych sieci LAN. Wizja ta wyjaśnia również, dlaczego protokół NetBEUI nie jest trasowalny.
Protokół ten obejmuje warstwy 3 i 4 modelu referencyjnego OSI. Ostatnio firma Microsoft wypuściła protokół NetBEUI 3.0. Jest to ważne z kilku powodów. Po pierwsze wersja 3.0 jest bardziej tolerancyjna dla wolniejszych srodków transmisji niż wersje wcześniejsze. Posiada też możliwość w pełni automatycznego dostrajania się Najbardziej znaczącą zmianą w NetBEUI 3.0 jest wyeliminowanie samego protokołu NetBEUI. W sieciowych systemach operacyjnych firmy Microsoft został on zastąpiony protokołem ramki NetBIOS (ang. NBF - NetBIOS Frame). Zarówno NetBEUI, jak i NBF są ściśle związane z NetBIOS. Dlatego NetBEUI 3.0 (NBF) jest całkowicie kompatybilny i może współpracować z wcześniejszymi wersjami Microsoft NetBEUI.

NetBEUI, niezależnie od wersji, jest integralną częścią sieciowych systemów operacyj­nych firmy Microsoft. Jeśli podejmiesz próbę uruchomienia systemu Windows NT 3.x (lub wyższego), Windows for Workgroups 3.11 czy nawet LAN Manager 2.x bez zain­stalowanego protokołu NetBEUI, komputer nie będzie mógł się komunikować.



Wnioski dotyczące NetBEUI


NetBEUI jest wyłącznie protokołem transportu sieci LAN dla systemów operacyjnych firmy Microsoft. Me jest trasowalny. Dlatego jego implementacje ograniczają się do domen warstwy 2, w których działają wyłącznie komputery wykorzystujące systemy operacyjne firmy Microsoft. Aczkolwiek staje się to coraz mniejszą przeszkodą, to jednak skutecznie ogranicza dostępne architektury obliczeniowe i aplikacje technologiczne.



Zalety korzystania z protokołu NetBEUI są następujące:



* Komputery korzystające z systemów operacyjnych lub oprogramowania sieciowego firmy Microsoft mogą się komunikować,
* NetBEUI jest w pełni samodostrajającym się protokołem i najlepiej działa w małych segmentach LAN,
* NetBEUI ma minimalne wymagania odnośnie pamięci,
* NetBEUI zapewnia doskonałą ochronę przed błędami transmisji, a także powrót do normalnego stanu w razie ich wystąpienia.

Wadą protokołu NetBEUI jest fakt, że nie może być trasowany i niezbyt dobrze działa w sieciach WAN.



Podsumowanie


Protokoły sieciowe są umiejscowione powyżej warstwy łącza danych. Prawidłowo zaprojektowane i skonstruowane są niezależne od architektur sieci LAN i zapewniają całościowe zarządzanie transmisjami w domenach sieci LAN.

Czas generowania: 0.004 s.