r01 05 (30)


Część I
Wprowadzenie do transmisji TCP/IP

W tej części:

W części I zajmiemy się podstawami transmisji TCP/IP. Omówimy stos protokołu TCP/IP oraz współpracę jego warstw podczas przesyłania danych pomiędzy dwoma hostami.

Rozdział 1. omawia podstawy sieci komputerowych i pokrótce opisuje model OSI. Model ten zostanie porównany z uproszczonym modelem TCP/IP w rozdziale 2., w którym zdefiniujemy warstwy i omówimy przeznaczenie każdej z nich. W rozdziałach od 3. do 7. każda z warstw zostanie omówiona szczegółowo.

Bieżąca część zawiera podstawowe wiadomości o TCP/IP — protokole niezbędnym w projektowaniu, wdrażaniu i rozwiązywaniu problemów z niemal wszystkimi współczesnymi sieciami komputerowymi.

Rozdział 1.
Podstawy działania sieci komputerowych


W tym rozdziale:

Wprowadzenie do TCP/IP Komputery mają wpływ na niemal każdy aspekt naszego życia. Niniejsza książka ma za zadanie umożliwić Czytelnikowi lepsze zrozumienie sposobów komunikowania się komputerów za pomocą protokołów Transmission Control Protocol i Internet Protocol (TCP/IP).

W ciągu ostatniej dekady nasze społeczeństwo zostało uznane za „pokolenie Internetu”. Nasze życie codzienne ulega wciąż nowym wpływom ze strony rozwijającego się Internetu. Możemy już za pomocą Sieci opłacać rachunki, szukać pracy, dokonywać rezerwacji przed podróżą i robić ponad milion innych rzeczy. Lecz zanim będziemy mogli zagłębić się w tajniki TCP/IP, musimy poznać podstawy działania sieci komputerowych.

W tym rozdziale zostały pokrótce omówione elementy składowe, umożliwiające łączność sieciową. Obejmuje on podstawy sieci komputerowych, w tym model OSI, topologie oraz adresowanie TCP/IP.

Co to jest sieć komputerowa?

W najbardziej podstawowym znaczeniu sieć oznacza dwa lub więcej komputerów korzystających ze wspólnych informacji. Sieci mogą być jednak bardzo różnorodne, mogą mieć rozmiary kilku klientów i milionów klientów. Klient jest tożsamością żądającą usługi lub danych w sieci — komputerem ubiegającym się o przesył danych przez sieć. Jedną z funkcji klienta może być na przykład sprawdzanie poczty elektronicznej. Klient żąda informacji od serwera pocztowego, który z kolei żąda informacji od klienta — przez co sam serwer pocztowy również staje się klientem.

W szkole podstawowej uczono nas, że wszystkie rekiny są rybami, lecz nie wszystkie ryby są rekinami. Ta sama zasada stosuje się do klientów i węzłów. Wszystkie klienty są węzłami, lecz nie każdy węzeł jest klientem. Mimo to pojęcia klient i węzeł są często używane zamiennie. Węzeł (ang. node) oznacza dowolne urządzenie w sieci, zawierające kartę sieciową aktywną w tejże sieci. Aktywny węzeł generuje ruch w sieci w postaci żądań i odpowiedzi. Niektóre urządzenia, jak np. drukarki, rutery i przełączniki, zazwyczaj nie wysyłają żądań w sieci. Urządzenia te odpowiadają na żądania innych klientów w sytuacjach, gdy coś jest potrzebne — na przykład połączenie lub plik. Takie urządzenia, jak rutery i przełączniki zazwyczaj nie mają o co pytać klientów. Nie znaczy to, iż nie inicjalizują ruchu sieciowego; jedynie nie żądają usług od innych klientów.

Pierwszym wymogiem w sieci jest używanie przez wszystkie klienty (węzły) tego samego języka, czyli protokołu. Na potrzeby łączności sieciowej dostępnych jest mnóstwo protokołów; niniejsza książka koncentruje się jednakże na TCP/IP.

Elementy składowe sieci

Każdy sposób komunikacji — ustna, pisemna czy też elektroniczna — wymaga jakiegoś mechanizmu. Łączność sieciowa nie jest tu wyjątkiem. W podstawowej sieci jedynym wymaganym mechanizmem jest karta interfejsu sieciowego (NIC — Network Interface Card). Sieć może składać się z dwóch klientów połączonych przewodem skrzyżowanym. Skrzyżowane kable pozwalają klientom nadawać i odbierać informacje pomiędzy sobą bez pośrednictwa innych urządzeń łączących — koncentratorów, przełączników czy ruterów. Dostępne są karty sieciowe dla wszelkich typów sieci.

W podstawowym znaczeniu topologia sieci to rozkład przewodów sieciowych. W dalszej części rozdziału omówimy różne typy topologii sieciowych i typy kart sieciowych, których można w nich używać.

Rodzaje konfiguracji sieci

Istnieją dwie podstawowe konfiguracje sieci: równorzędna („każdy z każdym”) oraz klient-serwer. Można jednak dyskutować, czy środowiska sieciowe w pełni równorzędne czy całkowicie typu klient-serwer tak naprawdę istnieją. Wobec tego wprowadzone zostały pojęcia sieci scentralizowanej i zdecentralizowanej.

Sieci zdecentralizowane

Sieci równorzędne (zdecentralizowane) zostały kiedyś zdefiniowane jako sieci nie zawierające serwerów, a jedynie klienty. Inaczej mówiąc, każdy klient w sieci był w stanie żądać i dostarczać informacji. Nie istniał żaden centralny serwer, od którego wszystkie klienty żądałyby informacji. Z biegiem czasu pojawiły się tendencje do gromadzenia w pojedynczym kliencie sieci wszystkich plików dla pozostałych klientów. W wyniku tego klient przechowujący informacje zaczął być uważany za serwer. Sytuacja w wielu małych środowiskach biurowych nadal wygląda podobnie.

Wraz ze zmianami potrzeb w środowiskach sieciowych i wzrostem rozmiarów programów z pojedynczych megabajtów do setek megabajtów, zaczęły się upowszechniać serwery specjalistyczne (komputery sieciowe, pełniące funkcję jedynie serwerów). Specjalizowany serwer stał się centralnym magazynem danych. Klienty zaczęły żądać informacji od serwerów zamiast od siebie nawzajem; jednakże zarządzanie siecią nadal było zadaniem żmudnym. Żaden serwer nie zawierał wszystkich kont użytkowników — zamiast tego konta użytkowników były utrzymywane w każdym kliencie.

Gdy użytkownik loguje się w sieci, podaje nazwę użytkownika i hasło. Jeśli konta i hasła są składowane w różnych miejscach sieci, mamy do czynienia z siecią typu zdecentralizowanego (równorzędną).

Zdecentralizowana sieć posiada wiele dostępnych zasobów: serwery pocztowe, serwery baz danych, składnice plików, drukarki, czy też programy graficzne, lecz obecność tych zasobów nie oznacza, iż sieć jest scentralizowana; nie oznacza to również konfiguracji klient-serwer. Sieci zdecentralizowane zazwyczaj posiadają następujące właściwości:

Rysunek 1.1 przedstawia zdecentralizowane środowisko sieciowe. Ten typ nosi również nazwy sieć równorzędna (peer-to-peer — dosłownie „każdy z każdym”) lub grupa robocza.

Rysunek 1.1.

Sieć zdecentralizowana

0x01 graphic

Sieci scentralizowane

Sieć scentralizowana (typu klient-serwer) jest siecią, w której przynajmniej jeden komputer jest wyznaczony do roli serwera. Serwer ten świadczy usługi dla klientów, na przykład obsługę poczty elektronicznej lub składowanie plików, a ponadto dostarcza informacji żądanych przez klienty.

W sieciach scentralizowanych serwer, lub grupa serwerów, zawiera wszystkie informacje o kontach użytkowników. Microsoft oferuje Windows NT i Windows 2000 Server, zaś Novell — NetWare eDirectory Services (NDS). Gdy konta użytkowników sieci przechowywane są w pojedynczej bazie danych, taka sieć nazywana jest scentralizowaną. Domeny Windows NT i 2000 oraz Novell Networks składują konta użytkowników w centralnej bazie danych. Nakłady pracy administracyjnej włożone w zarządzanie siecią scentralizowaną są niższe niż w przypadku sieci zdecentralizowanej, ponieważ w tym drugim przypadku administrator musi udać się do każdego klienta, aby wykonać czynności związane z zarządzaniem. W sieci scentralizowanej zarządzanie może odbywać się z dowolnego klienta. Sieci takie zwykle charakteryzują się następującymi właściwościami:

Część sieci scentralizowanych posiada mniej niż dziesięć klientów, zaś niektóre — na przykład sieć U.S. Postal Service — mają ponad milion klientów. Rysunek 1.2 przedsta­wia sieć scentralizowaną. Serwery mogą służyć do składowania zasobów i kont użytkowników na potrzeby wszystkich klientów.

Rysunek 1.2.

Sieć scentralizowana

0x01 graphic

Żaden standard nie definiuje terminologii dla różnych typów sieci — równorzędnych lub scentralizowanych, lecz istnieją standardy określające, w jaki sposób odbywa się komunikacja w sieci.

Model odniesienia OSI

Ruch sieciowy generowany jest przy wysłaniu żądania przez sieć. Żądanie musi zostać przekształcone z postaci, jaką widzi użytkownik, do formatu nadającego się do użycia w sieci. Transformacja ta jest możliwa dzięki modelowi OSI (Open Systems Interconnection), opracowanemu przez ISO — International Organization for Standardization.

Dane przesyłane są w sieci w postaci pakietów danych. Pakiet danych to dane użytkownika przekształcone na postać zrozumiałą dla sieci. Każde przekształcenie jest pochodną siedmiowarstwowego modelu OSI, który służy twórcom oprogramowania sieciowego za wytyczne. Chociaż wielu producentów manipuluje tym modelem, jest on nadal podstawą prac rozwojowych.

Siedem warstw modelu OSI, przedstawionego na rysunku 1.3, pełni funkcję elementów konstrukcyjnych pakietu danych. Każda warstwa dodaje do pakietu danych informacje, lecz sam pakiet danych pozostaje niezmieniony. Informacje dodane do pakietu noszą nazwę nagłówka. Nagłówek każdej warstwy jest po prostu informacją, opisującą formatowanie pakietu danych. Nagłówek jest odbierany w odpowiedniej warstwie u klienta odbierającego dane i służy do rozpoznania formatu pakietu. Każda warstwa komunikuje się z warstwami sąsiednimi, znajdującymi się powyżej i poniżej. Rysunek 1.3 przedstawia siedmiowarstwowy model OSI.

Rysunek 1.3.

Model OSI

0x01 graphic

Komunikacja poprzez siedmiowarstwowy model OSI nie przebiega według ostatecznie ustalonej ścieżki, lecz zawsze odbywa się w kierunku pionowym. Pakiety danych nie muszą być wysyłane z warstwy 7, która jest warstwą najwyższą — aplikacji. Łączność może rozpocząć się, na przykład, w warstwie 3, lecz warstwy 2 i 1 muszą zostać użyte, aby dodać nagłówki.

Załóżmy, że Komputer A używa narzędzia, które zaczyna działanie w warstwie 3. Warstwa 3. dodaje nagłówek i przekazuje całość do warstwy 2., która również dodaje nagłówek i przekazuje pakiet do warstwy 1. Ta dodaje nagłówek i umieszcza pakiet w sieci. Komputer B odbiera pakiet i przetwarza, zaczynając od warstwy 1. Warstwa 1. usuwa nagłówek dodany przez warstwę 1. Komputera A i przekazuje pozostałe informacje do warstwy 2. Ta następnie usuwa nagłówek dodany przez warstwę 2. Komputera A i przekazuje pozostałe informacje do warstwy 3. Warstwa 3. usuwa nagłówek dodany przez warstwę 3. Komputera A i przetwarza żądanie.

Wszystkie siedem warstw jest w użytku jedynie wtedy, gdy żądanie pochodzi od użytkownika. Niezależnie od tego, która warstwa rozpoczyna komunikację, nagłówki dodawane są na każdym poziomie i usuwane na odpowiadającym mu poziomie u klienta odbierającego pakiet, jak na rysunku 1.4. Pakiet danych jest przesyłany od nadawcy po lewej stronie do odbiorcy po prawej. Podczas przekazywania pakietu w dół z warstwy 7. do 1., każda z nich dodaje nagłówek. Gdy pakiet dociera do odbiorcy, każdy nagłówek jest usuwany, zaś dane przekazywane są do następnej, wyższej warstwy.

Rysunek 1.4.

Przepływ danych
od nadawcy
do odbiorcy
w modelu OSI

0x01 graphic

Warstwa aplikacji

Najwyższą, siódmą warstwą w modelu OSI jest warstwa aplikacji. Jest ona odpowiedzialna za interakcję z aplikacją użytkownika; przyjmuje dane od programu i świadczy usługę aplikacji sieciowej, odpowiedzialnej za żądanie użytkownika. Kilka przykładów przekształcania danych w warstwie aplikacji:

W warstwie aplikacji istotnie znajdują się aplikacje, lecz są one niewidoczne dla użytkownika. Warstwa ta jest jedyną warstwą, która bezpośrednio komunikuje się z oprogramowaniem użytkownika.

Warstwa prezentacji

Szóstą warstwą modelu OSI jest warstwa prezentacji, która przyjmuje dane od warstwy aplikacji. Podstawowym jej zadaniem jest konwersja języka. Jak pamiętamy, językiem używanym w sieci jest protokół. Jeśli dwa klienty nie używają tego samego protokołu, niezbędna jest konwersja protokołu, za którą odpowiada warstwa prezentacji.

Warstwa prezentacji jest również odpowiedzialna za zarządzanie danymi: udostępnia konwersję zestawów znaków, szyfrowanie danych i kompresję danych. Warstwa prezentacji odpowiada za przekierowywanie żądań wejścia i wyjścia.

Przekierowywanie danych to zadanie sieciowego programu przeadresowującego (net­work redirector), który funkcjonuje w warstwie prezentacji. Chociaż pojęcie brzmi groź­nie, jest łatwe do zrozumienia. Warstwa prezentacji przyjmuje pakiet danych z warstwy aplikacji i musi wybrać poprawne urządzenie sieciowe. Jeśli klient żąda informacji, uży­ta zostaje usługa stacji roboczej. Jeśli klient dostarcza informacji, użyta zostaje usługa serwera. Jeśli żądanie adresowane jest do innego typu klienta, użyty zostaje translator protokołu sieciowego. Na przykład, gdy używamy klienta Microsoftu, aby uzyskać dostęp do informacji w komputerze uniksowym, rolę translatora protokołu odegra SAMBA. SAMBA przekształca żądania klientów Microsoftu tak, by ich format był zrozumiały dla systemu Unix.

Zarówno warstwa aplikacji, jak i prezentacji świadczą usługi sieciowe, lecz każda z nich świadczy inny typ usługi, przez co pojęcie usługi sieciowe może być niejasne. Aby roz­wiać wątpliwości, proszę pamiętać, że:

Po wybraniu odpowiedniej usługi sieciowej należy ustanowić sesję.

Warstwa sesji

Piątą warstwą modelu OSI jest warstwa sesji — chociaż lepszą nazwą byłaby chyba „warstwa połączenia aplikacji”. Warstwa sesji pozwala na łączność pomiędzy identycznymi aplikacjami działającymi w dwóch różnych klientach. Osiąga się ją przez ustanowienie wirtualnego połączenia, opartego na nazwie użytkownika, nazwie komputera lub poświadczeniach sieciowych klienta.

Warstwa sesji zarządza tym wirtualnym połączeniem, ustawiając punkty kontrolne w odbieranych danych. Punkt kontrolny (checkpoint) informuje aplikację, które dane zostały odebrane. W przypadku zerwania połączenia warstwa sesji analizuje punkty kontrolne i rozpoczyna transfer od ostatniego punktu kontrolnego. Załóżmy na przykład, że Komputer 1 odbiera 10 MB danych od Komputera 2, przy czym połączenie zostaje przerwane przy 8 MB. Zamiast ponownej transmisji wszystkich danych, warstwa sesji szuka ostatniego punktu kontrolnego i zaczyna retransmisję od niego (w naszym przypadku — 8 MB). Ponieważ warstwa sesji zarządza łącznością, transfer danych jest kontynuowany, a nie ponawiany.

Z uwagi na to, iż połączenie używane w warstwie sesji jest połączeniem wirtualnym, nie daje pewności dostarczenia pakietu.

Warstwa transportowa

Czwarta warstwa — transportowa — jest odpowiedzialna za sprawdzanie poprawności i kontrolę przepływu danych. Na poziomie tej warstwy do transmisji danych używane są dwa protokoły: TCP (Transmission Control Protocol) oraz UDP (User Datagram Protocol).

W tej warstwie, jeśli w roli protokołu transportowego występuje TCP, dostępny jest dodatkowy poziom połączenia, który wynika z trójkierunkowego potwierdzenia (three-way handshake) i zapewnia dostarczenie pakietu wykorzystując pakiety potwierdzające. Trójkierunkowe potwierdzenie jest zestawem komunikatów powitalnych, służących do ustalenia, czy nadawca i odbiorca są gotowi do transferu danych.

Kontrola przepływu realizowana przez warstwę transportową korzysta z rozmiaru okna TCP/IP. Rozmiar okna określa, ile danych nadawca wyśle do odbiorcy bez odbierania pakietu potwierdzającego. Typowym rozmiarem okna jest 4096 bajtów. Warstwa transportowa jest odpowiedzialna za podział dużych pakietów danych na mniejsze, zwykle wielkości 1500 bajtów, lecz wartość ta może zostać zmieniona. Przy typowym rozmiarze okna wynoszącym 4096 bajtów oznacza to w sumie cztery nie potwierdzone pakiety w sieci. Generalnie, po otrzymaniu przez odbiorcę pakietu, do nadawcy zostaje wysłany pakiet potwierdzający. Po otrzymaniu tego pakietu przez nadawcę kolejne pakiety danych mogą być wysłane do odbiorcy. W przypadku braku potwierdzenia pakietu może nastąpić retransmisja, lecz to zależy od używanego protokołu. Podstawową różnicą pomiędzy dwoma protokołami warstwy transportowej — TCP i UDP — jest występowanie pakietu potwierdzającego.

TCP

TCP dostarcza pakiety w sposób niezawodny dzięki pakietom potwierdzającym, lecz jest wolniejszy od UDP. Przykładem aplikacji korzystającej z TCP jest usługa FTP.

UDP

UDP nie gwarantuje dostarczenia pakietu, lecz oferuje kontrolę integralności pakietu. Zarówno TCP, jak i UDP sprawdzają poprawność odebranych pakietów. Pakiety zawierające błędy są odrzucane. UDP jest zazwyczaj szybszy od TCP, ponieważ przy transmisji danych wymaga transferu mniejszej liczby dodatkowych informacji. Przykładem aplikacji używającej UDP jest usługa TFTP.

Gdy nadawca ustali już, jak dane mają zostać opakowane, musi jeszcze wiedzieć, dokąd wysłać dane.

Warstwa sieciowa

Trzecią warstwą modelu OSI jest warstwa sieciowa, odpowiedzialna za adresowanie i trasowanie w sieci. Do adresowania pakietów służy IP (Internet Protocol), który podaje dla pakietów danych adresy: źródłowy (nadawcy) i docelowy (odbiorcy). Podawany jest unikatowy adres 32-bitowy, znany pod nazwą adresu IP. Adresy IP zostaną omówione w dalszej części rozdziału.

Internet Protocol dokonuje ponadto fragmentacji pakietów i nadaje każdemu unikatowy identyfikator. Po odebraniu pakietu, Internet Protocol w warstwie sieciowej odbiorcy ponownie składa razem podzielony pakiet i przesyła dane do warstwy transportowej.

Aby ustalić najlepszą drogę do miejsca przeznaczenia, w warstwie sieciowej dokonywany jest wybór trasy (routing). Do powszechnie stosowanych protokołów trasowania funkcjonujących na poziomie warstwy sieciowej należą Routing Information Protocol (RIP), Open Shortest Path First (OSPF) oraz Border Gateway Protocol (BGP).

Można sobie wyobrazić warstwę sieciową jako policjanta kierującego ruchem w sieci. Warstwa sieciowa określa adresy IP nadawcy i odbiorcy oraz ustala najlepszą trasę do celu. Gdy posiadamy adresy IP, trzeba ustalić adres fizyczny.

Warstwa łącza danych

Drugą warstwą modelu OSI jest warstwa łącza danych. Jest ona podzielona na dwie podwarstwy: kontroli łącza logicznego (Logical Link Control) i kontroli dostępu do nośnika (MAC — Media Access Control).

Podwarstwa kontroli łącza logicznego jest odpowiedzialna za dołączenie nagłówka i stopki. Wszystkie warstwy dodają do pakietu danych informacje nagłówka, lecz warstwa łącza danych (w podwarstwie kontroli łącza logicznego) dodaje do pakietu danych również stopkę. Zawiera ona dane cyklicznej kontroli nadmiarowej (CRC — cyclical redundancy check), która oblicza parzystość pakietu danych i umieszcza wynik w stopce. Po odebraniu pakietu danych przez klienta wykonywana jest operacja CRC, a jej wynik zostaje porównany z CRC nadawcy. Jeśli wyniki są zgodne, dane zostają uznane za poprawne i przekazane do następnej warstwy. Jeśli wyniki nie zgadzają się, dane, uznane za niepoprawne, są odrzucone.

Podwarstwa kontroli dostępu do nośnika (MAC) umieszcza adres fizyczny karty interfejsu sieciowego w nagłówku, który zostaje dodany do pakietu danych. Adres MAC jest unikatową, 12-pozycyjną liczbą szesnastkową, zapisaną w każdej karcie interfejsu sieciowego. Przykładowy adres MAC może wyglądać następująco: 00-80-C7-4D-B8-26.

0x01 graphic

Warstwa łącza danych powołuje się na model projektu 802. Model ten został opracowany przez IEEE (Institute of Electrical and Electronic Engineers) w celu ustalenia sposobu fizycznego przesyłania danych przez sieć. Projekt 802 definiuje topologie sieciowe omówione w dalszej części tego rozdziału.

Po zdefiniowaniu CRC, MAC i topologii, dane należy przetworzyć i umieścić w sieci.

Warstwa fizyczna

Pierwszą warstwą modelu OSI jest warstwa fizyczna, która odpowiada przede wszystkim za umieszczenie danych surowych w sieci. Dane surowe (nie przetworzone) reprezentowane są w formacie dwójkowym, czyli zbiorze jedynek i zer.

Warstwa fizyczna, inaczej zwana warstwą sprzętową, nawiązuje i utrzymuje połączenia pomiędzy nadawcą i odbiorcą. Ponieważ dane mogą istnieć w różnych postaciach (na przykład impulsów elektrycznych, fal radiowych, czy też pulsów świetlnych), warstwa fizyczna określa czas trwania każdego impulsu.

Krótko mówiąc, warstwa fizyczna definiuje sposób przyłączenia przewodu sieciowego do karty interfejsu oraz sposób sformatowania danych do transmisji.

Podział sieci według zasięgu

Sieci przyjmują różnorodne kształty i rozmiary, lecz zazwyczaj przynależą do jednej z dwóch kategorii: sieci lokalnych (LAN — local area network) lub sieci rozległych (WAN — wide area network). Pochodnymi tych dwóch typów są sieci osobiste (PAN — personal area network), miejskie (MAN — metropolitan area network) oraz obejmujące ośrodki typu miasteczko akademickie (CAN — campus area network).

Sieci lokalne

Dowolnym zadaniem podzielonym na mniejsze części często łatwiej jest zarządzać. Jeśli wobec tego podzielimy na kawałki dużą sieć, administratorzy sieci będą mieli łatwiejsze zadanie. Sieć podzielona jest na segmenty. LAN może składać się z wielu segmentów, połączonych razem za pomocą urządzenia sieciowego nazwanego ruterem. Ruter jest odpowiedzialny za łączenie segmentów sieci; zostanie omówiony bardziej szczegółowo w dalszej części książki.

Gdy połączymy ze sobą segmenty sieci za pomocą trwałego łącza fizycznego, otrzymamy sieć lokalną. LAN nie zawiera połączeń korzystających z linii telefonicznych lub dzierżawionych. Wszystkie przewody sieci lokalnej należą do niej i nie przesyłają sygnałów nie pochodzących od ruterów lub klientów tej sieci. Możemy wyobrazić sobie sieć jako dziesięciopiętrowy budynek, w którym każde piętro odpowiada segmentowi sieci. Pomiędzy każdą parą sąsiednich pięter znajdują się rutery zapewniające łączność pomiędzy piętrami. Rutery połączone są przewodami należącymi do sieci, nie do zewnętrznej firmy zajmującej się łącznością. Aby się komunikować między sobą nie potrzebują korzystać z łącza dedykowanego lub dzierżawionego, ponieważ wszelka łączność odbywa się wewnątrz budynku. Sieć nie zawiera linii dzierżawionych, więc uznawana jest za sieć lokalną. Gdy łączność pomiędzy dwoma obszarami sieci jest zależna od linii dzierżawionych, wówczas połączenie takie nazywane jest łączem sieci rozległej.

Sieci rozległe

Sieci rozległe (WAN) istnieją w prawie każdym środowisku sieciowym. Niemal wszystkie połączenia internetowe odbywają się poprzez łącza WAN. Łącze WAN jest nośnikiem nie należącym do sieci lokalnej, co oznacza, iż łączność wymaga usług zewnętrznych dostawców. Często jest to łącze szeregowe uzyskane od lokalnego operatora sieci telefonicznej.

Dostępnych jest wiele typów łączy WAN — na przykład, przedsiębiorstwo może zdecydować się na zakup łącza o małej przepustowości. Przepustowość (bandwidth) oznacza objętość danych, jaką można przesłać przez łącze w jednostce czasu. Przepustowość można porównać z wodociągiem. W określonej jednostce czasu wodociągiem może przepłynąć skończona objętość wody, a jeśli potrzebujemy większego przepływu, potrzebna jest rura o większej średnicy. Podobnie jest z przepustowością łącza. Typowa wartość przepustowości łącza WAN jest wielokrotnością 64 kb/s (kilobity na sekundę), przy czym najczęściej spotykane łącza WAN mają przepustowość 128 kb/s, 256 kb/s, 512 kb/s oraz T1 — 1,544 Mb/s (megabity na sekundę).

Czynnikiem, który odróżnia nośniki sieci lokalnych od rozległych jest fakt, iż łącza WAN nie są trwałe. Jeśli lokalny operator przez pomyłkę naciśnie niewłaściwy przycisk, łącze WAN przestanie istnieć i komunikacja zostanie ograniczona do łączności lokalnej. Z drugiej strony, jedynym sposobem na utratę łączności w sieci lokalnej jest uszkodzenie przewodu lub przerwa w dostawie prądu.

Załóżmy, że przedsiębiorstwo (Firma B) chce nabyć łącze WAN. Lokalny Operator B dzierżawi Firmie B łącze T1 za 900 dolarów miesięcznie. Firma B posiada dwie lokalizacje funkcjonujące niezależnie od siebie, lecz zdolne do udostępniania nawzajem danych poprzez łącze WAN. Jeśli Firma B zapomni zapłacić lokalnemu Operatorowi B za usługę, łącze WAN przestanie funkcjonować i Firmie B pozostanie łączność lokalna w dwóch odrębnych lokalizacjach.

Sieci lokalne nie są zależne od lokalnego operatora i z ich używaniem nie wiążą się opłaty na rzecz firm zewnętrznych za łącza komunikacyjne. Sieci rozległe są zazwyczaj łączami komunikacyjnymi opłacanymi comiesięcznie i zależą od lokalnych operatorów.

Model z projektu IEEE 802

Organizacja IEEE (Institute of Electrical and Electronic Engineers) opracowała standardy łączności sieciowej, które rozbudowują warstwę łącza danych i warstwę fizyczną modelu OSI. W wyniku warstwa łącza danych została podzielona na dwie podwarstwy, zaś podział skoncentrował się na karcie interfejsu sieciowego (NIC) i sposobie sformatowania danych do transmisji przez sieć. Wspomnieliśmy wcześniej, iż klienty muszą używać tego samego protokołu, jeśli chcą nawiązać łączność. Nie jest to jednak jedyny wymóg. Klienty muszą również używać takiego samego formatu danych, zdefiniowanego przez model z projektu IEEE 802.

Model z projektu IEEE 802 jest podzielony na kategorie, które definiują transfer danych do poszczególnych warstw modelu OSI. Najważniejsze kategorie to:

Oprócz kategorii, należy również zdefiniować topologię sieci.

Topologie sieci

Projekt sieci określa jej topologię, czyli trasy przesyłania danych w sieci. Którą drogą zostaną przesłane dane od Klienta 1 do Klienta 2? Trudno jest znaleźć topologię nadającą się do wszystkich sieci; w poniższych punktach omówione zostaną podstawowe typy topologii.

Topologia magistrali

W topologii magistrali (ang. bus topology), przedstawionej na rysunku 1.5, wszystkie klienty przyłączone są do pojedynczego przewodu, zwykle kabla koncentrycznego, który pełni funkcję łącza. Jakiś czas temu topologia magistrali była najczęściej spotykaną topologią sieci. Jest łatwa do zainstalowania i można w niej szybko wykryć usterki — to jej dwie decydujące zalety; jednakże ograniczone są w niej dopuszczalne odległości i liczba klientów. Dominacja topologii magistrali trwała krótko.

Rysunek 1.5.

Liniowa topologia magistrali

0x01 graphic

Topologia magistrali zazwyczaj korzysta z kabla koncentrycznego — podobnego do stosowanych w domu — któremu IEEE nadała kategorię 802.3 10b2 (10 base 2). Sieci 10b2 zwykle przesyłają dane z przepustowością 4 Mb/s na odległości nie przekraczające 185 metrów. Wszystkie klienty przyłączone są do jednego kabla przesyłającego dane — stąd wzięło się pojęcie „magistrali”. Sieć magistralowa posiada punkt początkowy i końcowy, zakończone opornikami o wartości 50 Ω.

Magistrala może również posłużyć jako szkielet dla ruchu sieciowego. Sieć szkieletowa jest klasyfikowana przez IEEE jako 802.3 10b5 (10 base 5). Szybkość transmisji zwiększona jest do 10 Mb/s, a maksymalna odległość do 500 metrów. Podstawową różnicą pomiędzy 10b2 i 10b5 jest średnica używanego kabla koncentrycznego.

Do cech topologii magistrali należą: