=Sieci komputerowe[pl]=


Sieci komputerowe
Karol Krysiak
Sieci komputerowe
Autor: Karol Krysiak
Wstęp
Publikowaliśmy już, na łamach naszego serwisu, artykuł poświęcony domowym, osiedlowym sieciom
komputerowym. Tym razem postanowiliśmy opublikować rzecz, która traktuje temat bardziej
profesjonalnie  pod kątem klientów korporacyjnych.
Podział sieci komputerowych w zależności od rozmiaru
Najbardziej ogólny podział sieci komputerowych odbywa się na podstawie rozmiaru sieci:
" LAN (Local Area Network) - sieć lokalna, najczęściej obejmuje jedno przedsiębiorstwo i łączy
użytkowników zgromadzonych na niewielkim obszarze (kilka budynków), wykonana w jednej
technologii (np.: Ethernet)
" MAN (Metropolitan Area Network) - sieć miejska, łączy oddzielne sieci LAN na przestrzeni
jednego miasta. Przykładowo sieć Lodman.
" WAN (Wide Area Network) - sieć rozległa łącząca ze sobą sieci MAN na terenie jednego kraju.
Przykładowo sieć Pol34.
Internet - tzw. "sieć sieci", łączy ze sobą wszystkie rodzaje sieci.
Topologie sieci komputerowych
Topologia sieci to zbiór reguł fizycznego łączenia i reguł komunikacji poprzez dany nośnik sieci (medium
transmisyjne)[1]. W zależności od wybranej topologii sieci istnieją konkretne specyfikacje dotyczące
kabli, złączy i standardów komunikacji komputerów ze sobą.
Topologia fizyczna
Termin topologia fizyczna odnosi się do sposobu okablowania sieci. Przedstawia sposób łączenia
hostów (komputerów) z medium transmisyjnym. Zalety i wady topologii fizycznych zostaną
przedstawione w rozdziale dotyczącym rodzajów nośników stosowanych w Ethernecie.
Topologia magistrali
Topologia magistrali jest stosowana przy łączeniu komputerów za pomocą przewodu koncentrycznego.
Hosty dołączane są do jednej wspólnej magistrali, za pomocą  odczepów w przebiegu przewodu.
1
Sieci komputerowe
Karol Krysiak
Topologia magistrali
Topologia gwiazdy
Topologia gwiazdy jest stosowana przy łączeniu komputerów za pomocą kabla dwużyłowego
skręcanego. Hosty (komputery) podłączane są najczęściej do koncentratora (rzadziej przełącznika).
Cechą odróżniającą od topologii magistrali jest łączenie za pomocą jednego przewodu tylko dwóch
urządzeń sieciowych.
Topologia gwiazdy
Topologia pierścieniowa
Topologia pierścieniowa est stosowana przy łączeniu komputerów ze sobą za pomocą kabla
światłowodowego. Najczęściej stosuje się obwód dublujący, ponieważ w przypadku przerwania
pierwszego pierścienia komputery tracą ze sobą kontakt i zadania komunikacji przejmuje pierścień
dublujący. Topologia ta jest stosowana w sieciach Token Ring.
Topologia pierścienia
2
Sieci komputerowe
Karol Krysiak
Topologia logiczna
Topologia logiczna opisuje reguły komunikacji, z których powinna korzystać każda stacja przy
komunikowaniu się w sieci. Poza połączeniem fizycznym hostów i ustaleniem standardu komunikacji,
topologia fizyczna zapewnienia bezbłędną transmisję danych.
Topologia fizyczna jest ściśle powiązana z topologią logiczną. Przykładowo, specyfikacja Ethernet
umożliwia wykorzystanie topologii fizycznej gwiazdzistej lub magistrali, ale nie umożliwia zbudowania
sieci w oparciu o topologię pierścieniową.
Topologie logiczne definiowane są przez IEEE (Institute of Electrical and Eletronic Engineers).
Najczęściej spotykane specyfikacje sieci komputerowej to:
" IEEE 802.3 10Mb Ethernet
" IEEE 802.3u 100Mb Ethernet
" IEEE 802.3x Full Duplex Ethernet
" IEEE 802.3z 1Gb Ethernet
" IEEE 802.5 Token Ring
" IEEE 802.11 Wireless LANs
" IEEE 802.12 100VG-AnyLAN
" IEEE 802.14 Cable Modem
Model ISO/OSI
W 1977 roku  Międzynarodowa Organizacja Normalizacyjna (International Standard Organization)
opracowała wzorcowy  Model łączenia systemów otwartych (Open System Interconnection). Ideą
przyświecającą tym działaniom, było umożliwienie współdziałania ze sobą produktów pochodzących od
różnych producentów. Proces komunikacji został podzielony na 7 etapów, zwanych warstwami, ze
względu na sposób przechodzenia pomiędzy nimi informacji. Często struktura tworzona przez warstwy
OSI nazywana jest stosem protokołów wymiany danych.
W złożonym zagadnieniu komunikacji wyodrębnia się pewne niezależne zadania, które mogą być
rozwiązywane przez wydzielone układy sprzętowe lub pakiety oprogramowania zwane obiektami. Klasę
obiektów rozwiązujących dane zagadnienie nazywa się warstwą. Pojęcie warstwy nie jest jednoznaczne
z pojęciem protokołu  funkcje danej warstwy mogą być wykonywane przez kilka różnych protokołów.
Każdy protokół komunikuje się ze swoim odpowiednikiem, będącym implementacją tego samego
protokołu w równorzędnej warstwie komunikacyjnej systemu odległego. Warstwy (a dokładnie konkretne
protokoły zawarte w tej warstwie) komunikują się bezpośrednio z odpowiadającymi im warstwami w
odległym hoście. Należy więc też zapewnić reguły przekazywania informacji w dół do kolejnych warstw
pracujących na danym komputerze. Dane przekazywane są od wierzchołka stosu, poprzez kolejne
warstwy, aż do warstwy fizycznej, która przesyła je poprzez sieć do odległego hosta. Na szczycie stosu
znajdują się usługi świadczone bezpośrednio użytkownikowi przez aplikacje sieciowe, na spodzie 
sprzęt realizujący transmisję sygnałów niosących informacje.
Każda kolejna warstwa musi jedynie znać format danych wymagany do komunikacji poprzez warstwę
niższą zwany protokołem wymiany danych. Przy przechodzeniu do warstwy niższej dana warstwa
dokleja do otrzymanych przez siebie danych nagłówek z informacjami dla swojego odpowiednika na
odległym hoście. W ten sposób kolejne warstwy nie ingerują w dane otrzymane z warstwy poprzedniej.
Przy odbieraniu danych z warstwy niższej, dana warstwa interpretuje ten nagłówek  doklejony poprzez
swojego odpowiednika i jeśli zachodzi potrzeba przekazania danych do warstwy wyższej, usuwa swój
nagłówek i przekazuje dane dalej.
3
Sieci komputerowe
Karol Krysiak
Transmisja danych pomiędzy kolejnymi warstwami ISO/OSI
Warstwa fizyczna (physical layer)
Zapewnia transmisję danych pomiędzy węzłami sieci. Definiuje interfejsy sieciowe i medium transmisji.
Określa m.in. sposób połączenia mechanicznego (wtyczki, złącza), elektrycznego (poziomy napięć,
prądów), standard fizycznej transmisji danych. W skład jej obiektów wchodzą min.: przewody, karty
sieciowe, modemy, wzmacniaki, koncentratory.
Warstwa łącza danych (data link layer)
Zapewnia niezawodność łącza danych. Definiuje mechanizmy kontroli błędów w przesyłanych ramkach
lub pakietach - CRC (Cyclic Redundancy Check). Jest ona ściśle powiązana z warstwą fizyczną, która
narzuca topologię. Warstwa ta często zajmuje się również kompresją danych. W skład jej obiektów
wchodzą sterowniki urządzeń sieciowych, np.: sterowniki (drivery) kart sieciowych oraz mosty (bridge) i
przełączniki (switche).
Warstwa sieciowa (network layer)
Zapewnia metody ustanawiania, utrzymywania i rozłączania połączenia sieciowego. Obsługuje błędy
komunikacji. Ponadto jest odpowiedzialna za trasowanie (routing) pakietów w sieci, czyli wyznaczenie
optymalnej trasy dla połączenia. W niektórych warunkach dopuszczalne jest gubienie pakietów przez tę
warstwę. W skład jej obiektów wchodzą min.: rutery (routery).
Warstwa transportowa (transport layer)
Zapewnia przezroczysty transfer danych typu point-to-point. Dba o kolejność pakietów otrzymywanych
przez odbiorcę. Sprawdza poprawność (CRC) przesyłanych pakietów i w przypadku ich uszkodzenia lub
zaginięcia, zapewnia ich retransmisję. Powyżej tej warstwy dane mogą być traktowane jako strumień.
Warstwa sesji (session layer)
Zapewnia aplikacjom na odległych komputerach realizację wymiany danych pomiędzy nimi. Kontroluje
nawiązywanie i zrywanie połączenia przez aplikację. Jest odpowiedzialna za poprawną realizację
zapytania o daną usługę. Do warstwy tej można zaliczyć funkcje API udostępniane programiście przez
bibliotekę realizującą dostęp do sieci na poziomie powyżej warstwy transportowej takie jak np. biblioteka
strumieni i gniazdek BSD.
Warstwa prezentacji (presentation layer)
Zapewnia tłumaczenie danych, definiowanie ich formatu oraz odpowiednią składnię. Umożliwia
przekształcenie danych na postać standardową, niezależną od aplikacji. Rozwiązuje takie problemy jak
niezgodność reprezentacji liczb, znaków końca wiersza, liter narodowych itp. Odpowiada także za
kompresję i szyfrowanie.
4
Sieci komputerowe
Karol Krysiak
Warstwa aplikacji (application layer)
Zapewnia aplikacjom metody dostępu do środowiska OSI. Warstwa ta świadczy usługi końcowe dla
aplikacji, min.: udostępnianie zasobów (plików, drukarek). Na tym poziomie rezydują procesy sieciowe
dostępne bezpośrednio dla użytkownika.
Model protokołu TCP/IP
Protokół tworzący Internet - TCP/IP - również możemy opisać za pomocą siedmio-warstwowego modelu
ISO/OSI. Lepiej jednak oddaje funkcje i właściwości protokołu TCP/IP uproszczony model cztero-
warstwowy. W modelu tym najważniejsze są warstwy sieciowa i transportowa, pozostałe są połączone i
tworzą dwie warstwy zwane warstwą dostępu do sieci oraz warstwą aplikacji. Funkcje tych warstw
pokrywają się z zadaniami odpowiadających im warstw w modelu ISO/OSI.
Porównanie modelu ISO/OSI i modelu TCP/IP
Podobnie jak w modelu OSI kolejne warstwy dołączają (bądz usuwają, w zależności w którą stronę
przesuwają się dane na stosie protokołów) własne nagłówki. Taki proces nazywa się enkapsulacją
danych. Jednak model czterowarstwowy, poprzez zintegrowanie funkcjonalne niektórych warstw, o wiele
lepiej obrazuje ten proces dla protokołu TCP/IP.
Proces enkapsulacji (hermetyzacji) danych
Każda warstwa ma swoją terminologię określającą dane aktualnie przez nią obrabiane. Ponieważ
5
Sieci komputerowe
Karol Krysiak
protokół TCP/IP składa się z dwóch głównych protokołów warstwy transportowej TCP i UDP, więc
również w nazewnictwie wprowadzony został podział.
Warstwa TCP UDP
Aplikacji Strumień Wiadomość
Transportowa Segment Pakiet
Internetu Datagram
Dostępu do sieci Ramka
Warstwa dostępu do sieci  Ethernet
Historia
Początki Ethernetu pochodzą sprzed 1970 roku, kiedy to na uniwersytecie na Hawajach powstała sieć
radiowa o nazwie ALOHANET. Sieć ta oparta była na falach radiowych i służyła do komunikacji
pomiędzy wyspami.
W oparciu o ten pomysł w 1970 roku Robert Metcalfe i David Boggs z Xerox Palo Alto Research Center
opracowali sieciową technologię Ethernet posługującą się kablem koncentrycznym. W 1976 r.
opublikowana przez nich została praca  Ethernet: Distributed Packet Switching for Local Computers
Networks w Communications of the Association for Computing Machinery (CAM).
Formalna specyfikacja Ethernetu została opracowana przez konsorcjum trzech firm: Xerox, Intel i Digital
Equipment (DEC) i opublikowana w 1980 roku. Ethernet został zaadaptowany przez Institute of Electrical
and Electronics Engineers, który w roku 1985 ustanowił standard IEEE 802.3. Od tego roku całość
wyposażenia Ethernetowego jest tworzona według standardu IEEE 802.3, jednak nadal określa się ją
mianem Ethernet.
Działanie protokołu
Protokół stosowany w sieciach Ethernet powstawał poprzez ewolucję kolejnych metod transmisji danych.
ALOHA
Jest to najstarsza z metod. Stosowana jest w rozległych sieciach radiowych. Nadawca rozpoczyna
nadawanie w dowolnym momencie, a po wysłaniu całej ramki, oczekuje od odbiorcy na potwierdzenie
dotarcia informacji. W przypadku większego ruchu protokół bardzo szybko doprowadza do hhghghwania
łącza przez kolejne kolizje (równoczesne nadawanie sygnału, powodujące zniekształcenie danych).
CSMA (carrier sense multiple access)
W tym protokole nadawca przed wysłaniem ramki nasłuchuje czy łącze jest wolne. Funkcję tę
nazywamy: funkcją rozpoznawania stanu kanału transmisyjnego (carrier sense). W tym przypadku,
kolizje następują jedynie, gdy dwóch nadawców rozpocznie równocześnie nadawanie, upewniwszy się
przedtem o wolnym łączu. Sygnał jest transportowany pomiędzy nimi w skończonym odcinku czasu t.
Przykładowo, jeżeli obaj zaczną nadawanie równocześnie, to dla każdego z nich łącze będzie wolne. O
wystąpieniu kolizji zorientują się dopiero po czasie t. W przypadku wykrywania kolizji poprzez ciągły
nasłuch stanu łącza danych, nie ma już potrzeby wysyłania potwierdzenia, ponieważ każda stacja wie,
czy jej dane doszły poprawnie, czy tez zostały zniekształcone i należy je powtórzyć.
CSMA/CD (carrier sense, multiple access with collision detection)
W tej metodzie po wykryciu kolizji (w przypadku jak poprzednio), nadajnik uznaje, że transmisje należy
powtórzyć  ponieważ dane w łączu są już zniekształcone przez sygnał drugiego nadawcy. Jednak nie
przerywa natychmiast transmisji, aby zwolnić łącze. Nadaje jeszcze przez jakiś czas, aby zwiększyć
prawdopodobieństwo wykrycia kolizji przez innych użytkowników.
6
Sieci komputerowe
Karol Krysiak
Norma IEEE 802.3
Standard Ethernet, jest pewną odmianą ostatniej z metod i obejmuje następujące założenia (protokół
802.3):
1. Wszystkie stacje prowadzą ciągły nasłuch stanu łącza i sprawdzają czy łącze jest wolne,
zajęte czy też trwa strefa buforowa. Strefa buforowa jest odcinkiem czasu po ustaniu stanu
zajętości łącza. Wynika ona z maksymalnej odległości pomiędzy skrajnymi hostami i czasu
propagacji sygnału w danym medium.
2. Komputery mogą nadawać jedynie, gdy łącze jest wolne. W przypadku zajętości kanału,
muszą odczekać do końca transmisji i dodatkowo przeczekać strefę buforową.
3. Jeżeli podczas nadawania stacja wykryje kolizję, nadaje jeszcze przez czas wymuszenia kolizji
(równy 3,2ms) . Następnie dobiera długość odcinka czasu Ti, przez który nie będzie
podejmowała prób nadawania.
4. Dla Ti, liczba i jest numerem podejmowanej próby. Możliwe jest maksymalnie 16 prób, po
których karta sieciowa zwraca błąd.
Czas Ti wyznaczany jest ze wzoru:
Ti = Ri S (Wz. 3.1)
S - szerokość szczeliny czasowej,
Ri - liczba losowa z przedziału <0, 2n-1>, przy czym n = min( i,10 ).
Czas Ti wzrasta wraz z ilością podjętych prób nadawania. Czas ten musi być liczbą
losową (wyznaczaną wg pewnego algorytmu z adresu karty sieciowej), ponieważ inaczej
stacje nadające ponawiałyby próby w tych samych czasach, co powodowałoby kolejne
kolizje. Proces ten określany jest w literaturze angielskojęzycznej mianem backoff.
5. Szczelina czasowa S (slot time) [5i] jest czasem transmisji 512 bitów dla sieci Ethernet 10 i
100Mb/s oraz 4096 bitów dla sieci 1Gb/s. Aby każdy z nadawców wykrył kolizje, długość ramki
musi być przynajmniej taka jak S oraz czas potrzebny do rozprzestrzenienia się kolizji do
wszystkich stacji w sieci musi być mniejszy niż S. Wynika z tego, że stacje nie mogą zakończyć
transmisji ramki zanim kolizja nie zostanie zidentyfikowana przez wszystkie stacje w sieci.
Sygnały transmitowane przez stacje napotykają opóznienia podczas przechodzenia poprzez sieć.
Opóznienia te składają się z opóznień transmisji sygnału przez medium oraz z opóznień logicznych
wprowadzanych przez urządzenia elektroniczne, przez które sygnał musi przejść  karty sieciowe,
koncentratory, przełączniki itp. Czas potrzebny do przejścia pomiędzy dwiema najdalej oddalonymi
stacjami w sieci nazywamy czasem propagacji (propagation delay).
Aby stacja wykryła, że aktualnie transmitowana ramka napotkała kolizję, jej sygnał musi przejść przez
sieć do innej stacji. Druga stacja po wykryciu kolizji nadaje sekwencję blokady (jam sequence), która
musi być przetransmitowana z powrotem poprzez sieć zanim zostanie wykryta poprzez nadal nadającą
stację. Suma maksymalnych sieciowych opóznień i czasu wymaganego na transmisję sekwencji blokady
składa się na szczelinę czasową.
Szczelina czasowa jest ważnym parametrem. Długość 512 bitów szczeliny czasowej wyznacza
najmniejszy rozmiar ramki Ethernetowej na 64 bajty. Wszystkie ramki mniejsze niż 64B są uznawane za
fragmenty kolizji (collision fragment) lub tzw. słabą ramkę (runt frame) i są automatycznie odrzucane
przez stacje odbiorcze.
Parametr S ustala również maksymalną rozpiętość sieci. Jeśli rozmiar sieci jest zbyt duży może wystąpić
zjawisko zwane pózną kolizją (late collision). Oznacza to że tego typu kolizja nie zostanie automatycznie
wykryta przez mechanizmy kontrolne Ethernetu i jej wystąpienie zostanie zauważone dopiero przez
warstwy wyższe modelu ISO/OSI. Dopiero one będą musiały zarządzić ponowną transmisję
uszkodzonej ramki.
7
Sieci komputerowe
Karol Krysiak
Szczelina czasowa zapewnia, że jeśli nastąpi kolizja to zostanie ona wykryta w ciągu transmisji
pierwszych 512 bitów ramki (dla sieci 10/100Mbit). Dla sieci 1Gb/s szczelina czasowa została ustalona
na 4096 bitów; ponieważ dla szczeliny 512 bitów sygnał zdążyłby przebyć jedynie ok. 20 metrów, co
uniemożliwiałoby przemysłowe zastosowania tej sieci. Poprzez zwiększenie rozmiaru szczeliny
czasowej do 4096 bitów, maksymalny rozmiar sieci zwiększył się do 200 m.
Strefa buforowa 9,6 ms
Szerokość szczeliny czasowej 51,2 ms
Czas wymuszania kolizji 3,2 ms
Maksymalna długość ramki 1518 B
Minimalna długość ramki 64 B
Dane techniczne dla szybkości 10 Mb/s (standard 802.3)
Wersja IEEE 802.3x standardu definiuje jeszcze jeden tryb transmisji dla Ethernetu, nazywany full-
duplex, który omija protokół CSMA/CD. Protokół CSMA/CD definiuje tzw. half-duplex, co oznacza, że
stacje nie mogą transmitować danych w tym samym czasie. Full-duplex umożliwia dwóm stacjom
równoczesną wymianę danych poprzez łącze typu punkt-do-punktu (point-to-point). Stacja o prędkości
10Mbit w trybie full-duplex uzyskuje szerokość pasma równą 20Mbit.
W transmisji full-duplex nie ma możliwości wykrywania kolizji, co w niektórych przypadkach może
stwarzać problemy. W przypadku gdy jeden komputer w sieci ma ustawioną transmisję typu full-duplex i
zostanie podłączony do koncentratora, wystąpi zjawisko wielokrotnych kolizji, ponieważ przy takim
połączeniu komputer ten uznaje, że ma dostępną całą szerokość pasma i nie sprawdza czy może
nadawać.
Budowa pakietu IEEE 802.3
Pakiet Ethernetowy składa się z ramki, która jest poprzedzona preambułą i bajtem zwanym znacznikiem
początku ramki (SFD). Minimalna długość ramki wynosi 64 oktety, preambuła składa się z 56 bitów, a
SFD z 8 bitów.
Długości pól w bajtach
7 1 6 6 2 46 - 1500 4
Adres
Preambuła SFD Adres zródłowy Długość Dane FCS
docelowy
Format pakietu Ethernetowego (IEEE 802.3)
" Preambuła  naprzemienny ciąg bitów 1 i 0, informujący o nadchodzącej ramce. Najczęściej nie
jest on włączany do wielkości ramki. Uznawany jest za część procesu komunikacji.
" SFD  (Start of Frame Delimiter)  bajt kończący preambułę o postaci: '10101011' (standard
802.3, strona 24), zawsze jest zakończony dwoma bitami 1. W standardzie Ethernet bajt ten nie
występuje, zastąpiony jest kolejnym bajtem preambuły (ostatni bit równy 0).
" Adresy  są to liczby 6 bajtowe, będące adresami sprzętowymi komunikujących się interfejsów
sieciowych.
" Długość  określa w bajtach ilość danych, które nastąpią po tym polu  nie może być więcej niż
1500. W standardzie Ethernet wartość w tym polu jest zawsze większa od 1500 (dziesiętnie) i
określa numer protokołu warstwy wyższej, który odbierze dane po zakończeniu obróbki przez
standard Ethernet.
8
Sieci komputerowe
Karol Krysiak
" Dane  jeśli ilość danych jest mniejsza od 46, wprowadzane jest tzw. uzupełnienie PAD
(padding) i dane są dopełniane jedynkami.
" FCS  Frame Check Sequence  zawiera 4 bajty kontrolne (cyclic redundancy check - CRC)
wygenerowane przez interfejs nadający i sprawdzane przez odbierający. Określają one czy dane
nie zostały uszkodzone.
Widać tutaj, że ramka  z pominięciem preambuły i SOF  może mieć od 64 (6+6+2+46+4) do 1518
bajtów (6+6+2+1500+4).
Każde urządzenie sieciowe ma nadawany przez producenta niepowtarzalny numer odróżniający dany
egzemplarz od innych. Numery te noszą nazwę MAC (Media Access Control) i są przyznawane przez
IEEE. Organizacja ta przypisuje poszczególnym producentom odpowiedni kod i zakres liczbowy. Dzięki
temu nie powinno być na świecie dwóch kart sieciowych o takim samym numerze. Pierwsze trzy bajty
identyfikują producenta karty, pozostałe są numerem kolejnym egzemplarza.
Adres zródłowy jest zawsze adresem pojedynczej karty sieciowej. Adres docelowy może być adresem
pojedynczym (unicast), grupowym (multicast) jak i rozgłoszeniowym  dla wszystkich użytkowników 
(broadcast). Adres rozgłoszeniowy składa się z samych bitów o wartości 1. Jeśli host nasłuchując
otrzyma ramkę z takim adresem w polu docelowym, odczytuje ją uznając, że jest przeznaczona również
dla niego.
Zasady tworzenia sieci Ethernet
Wstępnie zdefiniuję kilka pojęć wprowadzonych w normie IEEE 802.3. Niektóre z tych definicji zostaną w
pózniejszych rozdziałach rozszerzone i omówione dokładniej.
" Urządzenie nadawczo-odbiorcze (transceiver)  urządzenie, które umożliwia stacji transmisje
 do i  z któregoś ze standartowych mediów normy IEEE 802.3. Dodatkowo transceiver
Ethernetowy zapewnia izolację elektryczną pomiędzy stacjami oraz wykrywa i reaguje na kolizje.
" MAU (Medium Access Unit) jest jednym z określeń IEEE na transceiver.
" AUI (Attachment Unit Interface) - połączenie pomiędzy kontrolerem i transceiverem.
" Segment  część okablowania sieci ograniczona przez mosty, rutery, wzmacniaki lub
terminatory.
" Wzmacniak (repeater)  stanowi połączenie elektryczne między dwoma segmentami sieci. Jego
zadaniem jest wzmocnienie i odnowienie sygnału w celu zwiększenia rozległości sieci. W żaden
sposób nie ingeruje w zawartość logiczną ramki.
" Koncentrator (hub, concentrator)  umożliwia podłączenie (w topologii gwiazdy) wielu urządzeń
sieciowych w jeden segment. W rozważaniach można go traktować jak połączenie wielu
wzmacniaków.
" Wypełniony segment  kabel składający się z podłączonych stacji roboczych i serwerów.
" Segment pusty  odcinek kabla, który składa się jedynie z dwóch wzmacniaków.
Wykorzystywane przy połączeniu segmentów wypełnionych oddzielonych geograficznie.
Podczas tworzenia struktury sieci Ethernet musimy podporządkować się następującym ograniczeniom
rozpiętości sieci wynikającym z normy IEEE 802.3 (tzw.  zasada 5-4-3 ):
" nie może być więcej niż 5 połączonych segmentów,
" pomiędzy dwiema stacjami nie może być więcej niż 4 wzmacniaki,
" równocześnie na każde 5 kolejnych segmentów, tylko 3 mogą być wypełnione, pozostałe dwa
muszą być puste.
9
Sieci komputerowe
Karol Krysiak
Nie należy tego interpretować, że w sieci LAN nie może być więcej niż cztery wzmacniaki. Jedynie
pomiędzy dwoma komunikującymi się ze sobą komputerami może ich być najwyżej cztery. Zasady te
wynikają z zależności czasowych w sieci Ethernet.
Ważnym pojęciem podczas budowy sieci Ethernet jest segment, czasem określany jako domena kolizji.
Domena kolizji jest formalnie definiowana jako pojedyncza sieć CSMA/CD, w której może nastąpić
kolizja, jeśli dwa komputery podłączonymi do tej sieci będą nadawać jednocześnie.
Przy połączeniu komputerów za pomocą urządzeń pracujących w warstwie 1 modelu ISO/OSI
(wzmacniaków, koncentratorów) tworzymy pojedynczą domenę kolizji. W przypadku zastosowania
urządzeń pracujących również w warstwie 2 (i wyższych) modelu ISO/OSI (mosty, przełączniki, rutery)
dzielimy sieć na osobne domeny kolizji (segmenty).
Rodzaje nośników
W sieciach typu Ethernet można stosować różnorodne rodzaje mediów transmisyjnych. Ich wybór opiera
się o kilka cech, które należy rozważyć projektując sieć:
" wymagania szerokości pasma aplikacji i użytkownika
" perspektywy rozwoju sieci
" odległości między systemami komputerów
" środowisko geograficzne (kabel, transmisja radiowa lub satelitarna)
" wymagana tolerancja błędu  zdolność sieci do funkcjonowania pomimo poważnej awarii,
najczęściej jest funkcją topologii sieci
" środowisko  rodzaj i moc zakłóceń generowanych przez otoczenie
" cena
10
Sieci komputerowe
Karol Krysiak
Maks.
długość
Norma 
segmentu w
Standard rok Szybkość Topologia Rodzaj medium transmisyjnego
m.
ogłoszenia
Half- Full-
Duplex Duplex
DIX-1980, pojedynczy 50W przewód koncentryczny
10Base5 10Mb/s Magistrala 500 n/a
802.3-1983 (gruby Ethernet) o średnicy 10mm
802.3a- pojedynczy 50W przewód koncentryczny
10Base2 10Mb/s Magistrala 185 n/a
1985 (cienki Ethernet RG58) o średnicy 5mm
802.3b-
10Broad36 10Mb/s Magistrala pojedynczy 75 przewód szerokopasmowy 1800 n/a
1985
802.3d-
FOIRL 10Mb/s Gwiazda dwa włókna optyczne 1000 >1000
1987
802.3e- dwie skręcone pary przewodów
1Base5 1Mb/s Gwiazda 250 n/a
1987 telefonicznych
802.3i-
10Base-T 10Mb/s Gwiazda dwie pary kategorii Cat-3 UTP 100 100
1990
802.3j-
10Base-FL 10Mb/s Gwiazda dwa włókna optyczne 2000 >2000
1993
10Base- 802.3j-
10Mb/s Gwiazda dwa włókna optyczne 2000 n/a
FB 1993
10Base- 802.3j-
10Mb/s Gwiazda dwa włókna optyczne 1000 n/a
FP 1993
100Base- 802.3u-
100Mb/s Gwiazda dwie pary kategorii Cat-5 UTP 100 100
TX 1995
100Base- 802.3u-
100Mb/s Gwiazda dwa włókna optyczne 412 2000
FX 1995
100Base- 802.3u-
100Mb/s Gwiazda cztery pary kategorii Cat-3 UTP 100 n/a
T4 1995
100Base- 802.3y-
100Mb/s Gwiazda cztery pary kategorii Cat-3 UTP 100 100
T2 1997
laser długofalowy (1300nm) przez:
1000Base- 802.3z- - 62.5um wielomodowe włókno 316 550
1Gb/s Gwiazda
LX 1998 - 50um wielomodowe włókno 316 550
- 10um jednomodowe włókno 316 5000
laser krótkofalowy (850nm) przez:
1000Base- 802.3z-
1Gb/s Gwiazda - 62.5um wielomodowe włókno 275 275
SX 1998
- 50um wielomodowe włókno 316 550
1000Base- 802.3z-
1Gb/s Gwiazda ekranowany kabel miedziany 25 25
CX 1998
1000Base- 802.3ab-
1Gb/s Gwiazda cztery pary kategorii Cat-5 UTP 100 100
T 1999
Tabela norm IEEE dotyczących sieci Ethernet
11
Sieci komputerowe
Karol Krysiak
W specyfikacji IEEE 802.3 przedstawionych zostało wiele różnych standardów, spośród których
najważniejszymi dla nas są:
" 10Base-2 - (Thin Ethernet) kabel koncentryczny cienki.
" 10Base-5 - (Thick Ethernet) kabel koncentryczny gruby.
" 10Base-T - (UTP - Unshielded twisted-pair cable) skrętka 10Mbit.
" 100Base-T - skrętka 100Mbit.
" 10Base-FL - (Fiber Optic Cable) światłowód.
W naszej sieci zastosowano głównie skrętkę i światłowód (w niewielkim fragmencie koncentryk, który w
trakcie pisania pracy wyszedł z użycia), jednak ze względu na znaczenie historyczne i jego ciągłe
stosowanie omówię również przewód koncentryczny.
Przewód koncentryczny
Technologia oparta na kablu koncentrycznym przechodzi do historii. Obarczona jest ona wieloma
wadami (omówię je w dalszej części rozdziału), które powodują rezygnowanie z jej stosowania.
Wyróżnia się dwa rodzaje kabla koncentrycznego:
" Ethernet gruby  10Base-5 (Thick Ethernet) oznaczenie kabla RG-8 i RG-11, o impedancji
falowej 50 omów i grubości 1/2", praktycznie wyszedł z użycia, czasem stosowany jako rdzeń
sieci (max. odległość między stacjami do 500m).
" Ethernet cienki  10Base-2 (Thin Ethernet) oznaczenie kabla RG-58, o impedancji falowej 50
omów i grubości 1/4", powszechnie stosowany w małych sieciach lokalnych (max. odległość
między stacjami 185m). Czasem jeszcze spotyka się tą technologię w praktycznych
zastosowaniach.
Zalety kabla koncentrycznego:
" ze względu na posiadaną ekranizację, jest mało wrażliwy na zakłócenia i szumy
" jest tańszy niż ekranowany kabel skręcany
" posiada twardą osłonę, dzięki czemu jest bardziej odporny na uszkodzenia fizyczne
Wady kabla koncentrycznego:
" ograniczenie szybkości do 10Mbit
" niewygodny sposób instalacji (duże łącza, terminatory, łączki T, duża grubość i niewielka
elastyczność kabla)
" słaba skalowalność (problemy z dołączeniem nowego komputera)
" niska odporność na poważne awarie (przerwanie kabla unieruchamia najczęściej dużą część
sieci)
" trudności przy lokalizowaniu usterki
12
Sieci komputerowe
Karol Krysiak
yródło transmisji Elektryczne
Współpracujące topologie 10Mb Ethernet
Maksymalna długość segmentu 185 m
Minimalna długość kabla 0,5 m
Maksymalna liczba stacji 30 na jeden segment kabla
Maksymalna liczba segmentów 5 powtórzonych segmentów, z których tylko 3 są
wypełnione
Maksymalna całkowita długość sieci 925 m
Parametry kabla Thinnet
W technologii 10Base-2 kolejne odcinki kabla łączymy w topologii magistrali za pomocą końcówek BNC.
Końcówka BNC
Podczas instalacji końcówki BNC wykorzystuje się specjalne narzędzie do przycięcia poszczególnych
części kabla na odpowiednie długości.
Budowa kabla koncentrycznego
Następnie za pomocą szczypiec zaciskowych wykonuje się połączenie mechaniczne i elektryczne
końcówki BNC.
13
Sieci komputerowe
Karol Krysiak
Budowa złącza BNC
Kable koncentryczne powinny być zakończone terminatorami (specjalne końcówki o rezystancji 50 W
dostosowanej do impedancji falowej kabla), z czego jeden z nich powinien być uziemiony (podłączony
krótkim łańcuszkiem do obudowy komputera).
Terminator BNC z uziemieniem, łącznik T
14
Sieci komputerowe
Karol Krysiak
Schemat fizycznego łączenia komputerów w technologii 10Base-2
W takim połączeniu potrzebne są różne dodatkowe elementy: terminatory, łączniki T, łącza BNC.
Zastosowania sieci 10Base-2
Chociaż sieć 10Base-2 jest technologią wychodzącą z użytku, nadal może się okazać przydatna w
niektórych zastosowaniach. Przykładowo przy instalacji małej sieci domowej - do 5 komputerów - koszt
(tanie używane karty sieciowe, brak dodatkowych urządzeń sieciowych  koncentratora) takiej instalacji
jest o wiele niższy od instalacji z wykorzystaniem skrętki. Ponadto przy niewielkiej liczbie komputerów
problemy z diagnozowaniem uszkodzeń fizycznych sieci nie są zbyt duże.
Ciekawym zastosowaniem tej technologii, stają się ostatnio sieci osiedlowe. W przypadku odległości
pomiędzy blokami powyżej 100 m, często wykorzystuje się przewód koncentryczny. Dodatkowo, kabel
ten jest mocniejszy mechanicznie i bardziej odporny na warunki zewnętrzne, co ułatwia jego instalację
na zewnątrz budynków.
Ponadto w środowiskach o dużych szumach elektromagnetycznych, również objawiają się zalety kabla
koncentrycznego.
Skrętka UTP
Aktualnie najpopularniejszym środkiem transmisji stał się nie ekranowany dwuparowy kabel skręcany
(UTP - Unshielded Twisted-Pair cable)  10Base-T.
Opierając się na standardzie ANSI/EIA 586 (American National Standarts Institute/Electronic Industries
Asociation) i pracach grupy 2840, ISO/IEC zdefiniował nowy standard: ISO IS11801, przyjęty do
stosowania w 1994 roku.
Kategorie nie ekranowanego kabla skręcanego dla aplikacji klasy C:
" CAT 1 & 2 - głos i dane małej jakości (np.: modem)
" CAT 3 - transmisja do 10 Mbps (max. dł. 100 m)
" CAT 4 - transmisja do 16 Mbps (max. dł. 150 m)
" CAT 5 - transmisja do 100 Mbps (max. dł. 160 m)
Aplikacje klasy C są to aplikacje dotyczące danych o dużej częstotliwości do 16MHz
15
Sieci komputerowe
Karol Krysiak
Zalety skrętki:
" jest najtańszym medium transmisji (jeśli chodzi o cenę metra, bez uwzględniania dodatkowych
urządzeń)
" wysoka prędkość transmisji (do 1000Gb/s)
" łatwe diagnozowanie uszkodzeń
" łatwa instalacja
" odporność na poważne awarie (przerwanie kabla unieruchamia najczęściej tylko jeden komputer)
" jest akceptowana przez wiele rodzajów sieci
Wady skrętki:
" niższa długość odcinka kabla niż w innych mediach stosowanych w Ethernecie
" mała odporność na zakłócenia (skrętki nie ekranowanej)
" niska odporność na uszkodzenia mechaniczne  konieczne jest instalowanie specjalnych listew
naściennych itp.
yródło transmisji Elektryczne
Współpracujące topologie 10Mb, 100Mb i 1Gb Ethernet, FDDI, ATM
Maksymalna długość kabla 100 m
Minimalna długość kabla Brak
Minimalna liczba stacji 2 na kabel
Maksymalna liczba stacji 1024 na segment
Maksymalna liczba Dla 10Mb: 5 powtórzonych segmentów, z których tylko 3 są
segmentów wypełnione
Dla 100Tx i 1Gb: 2 powtórzone segmenty
Maksymalna średnica sieci Dla 100Mb  205 m.
Dla 10Mb  ok. 2000 m.
Maksymalna całkowita 100 m
długość segmentu
Parametry kabla skręcanego
Dla szybkości 100Mb/s istnieją dwa różne media:
" 100Base-TX - skrętka kategorii 5, wykorzystane 2 pary (tak jak w 10Base-T)
" 100Base-T4 - skrętka kategorii 5, wykorzystane 4 pary
Ponadto w 1999 roku został ostatecznie zdefiniowany standard 1000Base-T przez normę IEEE 802.3ab.
Umożliwia on transmisję o szybkości 1000Mb/s przez skrętkę Cat-5 o długości 100 m. Zdefiniowana
została również transmisja typu full-duplex (przy wykorzystaniu 4 par) umożliwiająca osiągnięcie
przepustowości 2000Mb/s.
W przypadku wykorzystania skrętki w środowiskach o dużych szumach elektromagnetycznych, stosuje
się ekranowany kabel skręcany (STP). Zbudowany jest on z czterech skręcanych ze sobą par
przewodów miedzianych, otoczonych ekranującą siatką lub folią i umieszczonych w izolacyjnej osłonie.
W zastosowaniach skrętki można napotkać dwa typy końcówek:
" RJ-11 - sześciopozycyjny łącznik modularny (łącze telefoniczne)
" RJ-45 - ośmiopozycyjny łącznik modularny (sieć Ethernet)
16
Sieci komputerowe
Karol Krysiak
Wygląd wtyczki i gniazdka RJ-45, numery wyprowadzeń
Wyróżniamy 3 rodzaje połączeń końcówek kabla UTP:
" odwrotny - końcówka 1 do 8, końcówka 7 do 2, itd.  zastosowany w kablu telefonicznym
" zgodny - końcówka 1 do 1, końcówka 2 do 2, itd.  np.: połączenie Ethernet pomiędzy
koncentratorem i kartą sieciową komputera
" krzyżowy - (cross-over) odwraca tylko niektóre połączenia, często spotykane przy połączeniach
pomiędzy koncentratorami
W większości koncentratorów jednak istnieje możliwość dokonania zamiany kolejności przewodów
wewnątrz urządzenia i wykorzystania kabla zgodnego. Metoda ta nazywana jest wewnętrznym
krzyżowaniem; gniazdka (lub przełączniki) realizujące takie połączenie oznaczane są symbolem X.
Wtyczka i gniazdo RJ-45. Z dokumentacji firmy 3Com
Przeznaczenie Nr Kolor Nr Przeznaczenie
Odbiór + 1 Biało/Pomarańczowy 1 Transmisja +
Odbiór - 2 Pomarańczowy 2 Transmisja -
Transmisja + 3 Biało/Zielony 3 Odbiór +
(nie używane) 4 Niebieski 4 (nie używane)
(nie używane) 5 Biało/Niebieski 5 (nie używane)
Transmisja - 6 Zielony 6 Odbiór -
(nie używane) 7 Biało/Brązowy 7 (nie używane)
(nie używane) 8 Brązowy 8 (nie używane)
Połączenie zgodne UTP
Przeznaczenie Nr Kolor Nr Przeznaczenie
Transmisja + 3 Biało/Zielony 1 Odbiór +
Transmisja - 6 Zielony 2 Odbiór -
17
Sieci komputerowe
Karol Krysiak
Odbiór + 1 Biało/Pomarańczowy 3 Transmisja +
(nie używane) 7 Biało/Brązowy 4 (nie używane)
(nie używane) 8 Brązowy 5 (nie używane)
Odbiór - 2 Pomarańczowy 6 Transmisja -
(nie używane) 4 Niebieski 7 (nie używane)
(nie używane) 5 Biało/Niebieski 8 (nie używane)
Połączenie krzyżowe UTP
Przeznaczenie Nr Kolor Nr Przeznaczenie
Odbiór + 1 Biało/Pomarańczowy 3 Transmisja +
Odbiór - 2 Pomarańczowy 6 Transmisja -
Transmisja + 3 Biało/Zielony 1 Odbiór +
Dwukierunkowe 4 Niebieski 5 Dwukierunkowe
BD4+ BD4
Dwukierunkowe 5 Biało/Niebieski 4 Dwukierunkowe
BD4 BD4+
Transmisja - 6 Zielony 2 Odbiór -
Dwukierunkowe 7 Biało/Brązowy 4 Dwukierunkowe
BD3+ BD3
Dwukierunkowe 8 Brązowy 5 Dwukierunkowe
BD3 BD3+
Połączenie proste UTP dla technologii 100Base-T4
Pary numeruje się tak:
" para 1 - przewód niebieski - styki 4, 5
" para 2 - zielony - styki 6, 3
" para 3 - pomarańczowy - styki 2, 1
" para 4 - brązowy - styki 8, 7
Połączenie zgodne i krzyżowe kabla UTP
18
Sieci komputerowe
Karol Krysiak
Światłowód
Obecnie najnowocześniejszym medium transmisyjnym jest światłowód (Fiber Optic Cable). Zasada jego
działania opiera się na transmisji impulsów świetlnych między nadajnikiem (Optical Transmitter)
przekształcającym sygnały elektryczne na świetlne, a odbiornikiem (Optical Receiver) przekształcającym
sygnały świetlne odebrane ze światłowodu w sygnały elektryczne. Sieci oparte na światłowodach zwane
są FDDI (Fiber Distributed Data Interface).
Budowa światłowodu
1. włókno optyczne, złożone z dwóch rodzajów szkła o różnych współczynnikach załamania
(Refraction Index)
2. cześć środkowa - rdzeń (Core), najczęściej o średnicy 62,5 mm (rzadziej 50 mm)
3. część zewnętrzną  płaszcz zewnętrzny (Cladding), o średnicy 125 mm
4. warstwa akrylowa
5. tuba  izolacja o średnicy 900 mm
6. oplot kewlarowy
7. izolacja zewnętrzna
Zasada działania światłowodu
Promień światła wędrując w rdzeniu światłowodu (o współczynniku załamania n1), natyka się na
środowisko o innym współczynniku załamania (n2)  płaszcz. Gdy promień pada od strony rdzenia na
płaszcz pod kątem a, to pewna część światła zostaje odbita i wraca do rdzenia. W zależności od kąta
padania i współczynników załamania materiałów rdzenia i płaszcza, zmienia się ilość odbitego światła.
Powyżej pewnego kąta zachodzi zjawisko całkowitego odbicia wewnętrznego i światło padające zostaje
odbite bez strat.
Apertura numeryczna światłowodu (Numerical Aperture) jest miarą maksymalnego dopuszczalnego kąta
a między wchodzącym promieniem światła, a osią światłowodu. Największy możliwy kąt a nazywany jest
akceptowanym kątem włókna światłowodowego.
Płaszcz
Apertura numeryczna światłowodu
Światłowód wielomodowy z indeksem kroku (Step Index Multimode Fiber)
Światłowód wielomodowy charakteryzuje się tym, że promień światła może być wprowadzony do niego
pod różnymi kątami - modami.
Indeks kroku jest długością światłowodu, jaką przebywa promień bez odbić wewnętrznych.
Najważniejszym problemem w przypadku tego rodzaju światłowodów jest zjawisko dyspersji, polegające
19
Sieci komputerowe
Karol Krysiak
na  poszerzaniu się promienia świetlnego wraz z drogą przebytą wewnątrz światłowodu. Ponieważ
dyspersja powiększa się wraz z drogą promienia świetlnego, więc kable wielomodowe stosowane są
maksymalnie na długościach do 5 km.
Występują dwa rodzaje dyspersji:
" dyspersja modalna  wynikające z różnic w kątach (modach) wprowadzenia światła do rdzenia.
W zależności od kąta, światło przebywa różną drogę wewnątrz rdzenia, co zmienia czas
przejścia światła przez światłowód i powoduje poszerzenie sygnału
" dyspersja chromatyczna  wynika z tego, że promień świetlny nie jest monochromatyczny
(zródłem światła są diody LED), a światło o różnej długości fali przebiega światłowód z różnymi
szybkościami
Światłowód jednomodowy
W światłowodzie jednomodowym rdzeń złożony jest z wielu warstw o różnych współczynnikach
załamania. Dodatkową różnicą jest zmniejszenie średnicy rdzenia do 9mm. Dzięki temu w światłowodzie
propagowany jest tylko jeden mod. Nie istnieje zjawisko całkowitego odbicia wewnętrznego na granicy
rdzenia i płaszcza. Dzięki temu zjawisko dyspersji zostało zredukowane do minimum, co umożliwia
wykorzystanie tego medium przy odległościach rzędu 60km. Zwiększona została również częstotliwość
pracy takiego włókna, co poszerza pasmo pracy sieci. Niestety koszt takiego światłowodu jest znacznie
wyższy niż światłowodu wielomodowego, a dodatkowo instalacja wymaga o wiele większej precyzji przy
wprowadzaniu promienia świetlnego (diody laserowe) do rdzenia. Tego typu światłowody stosowane są
w sieciach WAN.
Aączniki światłowodowe
Zasady stosowania kabli światłowodowych zawarte są w normach: ISO/IEC 11801 i EN 50173 oraz
TIA/EIA 568A. Według ISO/IEC 11801 i EN 50173 preferowane są kable wielomodowe 62,5/125mm, a w
nowych instalacjach należy stosować złącza duplex-SC. Starsze złącza ST nie zapewniają tak dobrych
parametrów połączenia jak SC (poprawna polaryzacja, stabilność mechaniczna łącza), jednak w
sieciach Ethernet są nadal stosowane.
Złącza światłowodowe ST i SC
Standardy transmisji światłowodowych
Najważniejszymi dla technologii światłowodowej, z naszego punktu widzenia, są:
" 10Base-FL  transmisja 10 Mb/s
" 100Base-FX  transmisja 100 Mb/s
" 1000Base-LX  transmisja 1000 Mb/s, laser długofalowy  ok. 1300 nm
" 1000Base-SX  transmisja 1000 Mb/s, laser krótkofalowy  ok. 850 nm
Transmisja za pomocą światłowodu wymaga najczęściej, przynajmniej dwóch kabli. Jeden do transmisji
a drugi do odbierania danych. Do standardowej karty sieciowej podłącza się je poprzez konwerter
20
Sieci komputerowe
Karol Krysiak
nośników, do którego z jednej strony dochodzą oba połączenia światłowodu, a do drugiej gniazdo RJ-45
(dawniej częściej spotykane AUI  wtedy to urządzenie nazywa się transceiver).
Najczęściej w tej technologii używa się kabla wielomodowego MMF (multi-mode fiber). Możliwa jest
transmisja typu full-duplex, w trybie tym możliwe są połączenia dłuższe niż 2000 m, ponieważ nie grają
w tym momencie roli ograniczenia standardu CSMA/CD związane ze szczeliną czasową. Przy
zastosowanych dobrej jakości światłowodach i transceiverach możliwe jest nawet osiągnięcie 5 km.
Standard 10Base-FL jest idealny do połączeń pomiędzy oddalonymi od siebie budynkami danej firmy.
Połączenia takie są zupełnie odporne na zakłócenia elektromagnetyczne.
10Base-FL 100Base-FX 1000Base-LX 1000Base-SX
Szybkość 10 Mb/s 100 Mb/s 1000 Mb/s
transmisji 20Mb/s full-duplex 200 Mb/s full- 2000 Mb/s full-duplex
duplex
Rodzaj kabla MMF 62.5/125; MMF 62.5/125; MMF 62.5/125 lub MMF 62.5/125;
długość światła długość światła 50/125; długość światła od
850nm. 1300nm. SMF 10mm; 770 do 860nm.
długość światła od
1270 do 1355 nm.
Maksymalna 2000 m. H-D: 412 m. H-D H-D
długość segmentu F-D: 2000 m. MMF i SMF: 316 62.5/125: 275 m
m 50/125: 316 m
F-D F-D
MMF: 550 m 62.5/125: 275 m
SMF: 5000 m 50/125: 550 m
Maksymalna ilość 2 2 2 2
transceiverów na
segment
Rodzaj łączy ST podwójny SC, podwójny SC podwójny SC
dopuszczalny
również ST oraz
FDDI MIC
Rodzaj kodowania Manchester 4B/5B 8B/10B 8B/10B
encoding
Porównanie parametrów technologii światłowodowych
Użyte skróty:
" MMF (multi-mode optical fibers)  dwa wielomodowe kable światłowodowe
" SMF (two single mode optical fibers)  dwa jednomodowe kable światłowodowe
" 62,5/125 - 62.5mm rdzeń i 125mm płaszcz
" 50/125 - 50mm rdzeń i 125mm płaszcz
" H-D  half-duplex
" F-D  full-duplex
Protokół ARP  Protokół Określania Adresów
ARP (Address Resolution Protokol) jest protokołem umożliwiającym przekształcanie adresów protokołów
sieciowych (w naszym przypadku adresów IP) na 48 bitowe adresy Ethernetowe (MAC). W momencie
21
Sieci komputerowe
Karol Krysiak
gdy protokół warstwy Internetu chce przekazać datagram do warstwy dostępu do sieci, warstwa ta (a
dokładniej warstwa łącza danych modelu ISO/OSI) musi określić adres docelowy, komputera do którego
ma przekazać datagram. Jeśli jeszcze go nie zna, rozsyła zapytanie rozgłoszeniowe (broadcast - z
docelowym adresem MAC równym FFFFFFFFFFFF) do wszystkich komputerów w danej sieci lokalnej.
Następnie odpowiedni komputer  cel  (jeśli istnieje w sieci lokalnej) rozpoznaje zawarty ramce
Ethernetowej adres protokołu sieciowego IP, odpowiada i podaje swój adres MAC. W tym momencie
protokół ARP na komputerze zródłowym uzupełnia swoją tablicę danych o adres docelowego
komputera. Następnym razem, w przypadku ponowienia transmisji do tej właśnie stacji, już
bezpośrednio zaadresuje datagram i skieruje go do danej karty sieciowej (pamiętajmy, że adres
Ethernetowy jest równocześnie niepowtarzalnym adresem określonego urządzenia sieciowego - karty
sieciowej).
System ten działa inaczej, gdy zródło i cel transmisji znajdują się w oddzielnych sieciach LAN
połączonych ruterem. yródło rozsyła broadcastowe zapytanie o adres MAC karty sieciowej komputera
mającego odebrać transmisję. Ramki rozgłoszeniowe są odbierane przez wszystkie urządzenia w sieci
LAN, jednak żadne nie odpowiada na zapytanie. yródło uznaje, że w sieci lokalnej nie ma urządzenia o
takim adresie MAC i przesyła dane do domyślnej bramki, czyli rutera.
W przypadku tzw. proxy-arp (np.: połaczenie modemowe) ruter, który jest urządzeniem pośredniczącym
dla stacji docelowej (np.: przy połączeniu modemowym stacji docelowej z ruterem), odbiera to zapytanie.
Ruter stwierdza że poszukiwany adres IP pasuje do jednego z wpisów w jego tablicy rutingu. Odpowiada
na zapytanie udając, że dany adres sieciowy jest jego własnym adresem. Urządzenie nadające
przyporządkowuje w swojej tablicy ARP adres sieciowy celu (np.: adres IP) do adresu MAC rutera i
transmituje datagramy do rutera. Ruter przekazuje dalej pakiety dla systemu docelowego, które
przychodzą na jego adres MAC.
Aktualną tablicę ARP najczęściej możemy podejrzeć za pomocą polecenia arp (Linux, Unix, Windows
NT). Przykładową tablicę ARP podaję poniżej.
Address HWtype HWaddress Flags Mask Iface
212.51.207.221 ether 00:60:83:7C:A2:38 C eth1
212.51.219.1 ether 00:A0:24:56:13:C9 C eth0
212.51.219.38 ether 00:A0:24:56:12:82 C eth0
212.51.219.2 ether 00:A0:C9:83:48:6A C eth0
212.51.219.4 ether 08:00:20:1F:37:F7 C eth0
Protokół ARP może być wykorzystywany w celu uniknięcia nadania dwóch takich samych adresów IP w
jednej sieci lokalnej. W momencie inicjacji systemu komputer wysyła ramkę ARP z zapytaniem o adres
IP, który aktualnie został mu przydzielony. Jeśli inny komputer w sieci zgłosi się, że posiada już taki
adres, zablokowana zostaje transmisja IP i w sieci nie pojawia się drugi taki sam adres IP.
Urządzenia sieciowe działające w warstwie dostępu do sieci
Ponieważ na polu sprzętu stosowanego do konstrukcji sieci komputerowych panuje ogromna
różnorodność, ograniczę się do opisania ogólnego podziału tych urządzeń na przykładzie
zastosowanych w naszej sieci LAN.
Karta sieciowa
Czasem określana jest mianem NIC (Network Interface Card). Jest to urządzenie łączące komputer z
siecią komputerową zawierające dwa interfejsy:
22
Sieci komputerowe
Karol Krysiak
" jeden - do połączenia z siecią:
o skrętka (skrótowo oznaczany: UTP)
o kabel koncentryczny(skrótowo oznaczany: BNC)
" drugi interfejs - do połączenia z komputerem:
o ISA (EISA)
o PCI
o PCIM/CIA
o USB
Obecnie produkowane karty sieciowe mają wbudowany własny procesor, co umożliwia przetwarzanie
niektórych danych bez angażowania głównego procesora oraz własną pamięć RAM, która pełni rolę
bufora w przypadku, gdy karta nie jest w stanie przetworzyć napływających z dużą szybkością danych.
Niektóre współcześnie produkowane karty posiadają także możliwość podłączenia programowalnej
pamięci Remote Boot PROM, pozwalającej na załadowanie systemu operacyjnego z sieciowego
serwera. Karta oznaczona przydomkiem Combo posiada oba interfejsy wyjściowe: UTP i BNC (nigdy nie
mogą one działać równocześnie). Rozróżnia się również karty 10 i 100Mb; te drugie są to z oczywistych
względów karty UTP.
Karty sieciowe
Pojęcia związane z działaniem kart sieciowych
Bezpośredni dostęp do pamięci (DMA)
Dane przesyłane są do pamięci za pomocą kontrolera DMA (zainstalowanego na płycie głównej
komputera) i nie obciążają procesora.
Bus mastering
Ulepszona forma DMA; karta przejmuje kontrolę nad szyną danych komputera i wpisuje dane
bezpośrednio do pamięci (karta wykorzystuje w tym momencie własny kontroler DMA) nie obciążając
przy tym procesora. Jest to obecnie najszybsze rozwiązanie.
Współdzielona pamięć karty
Dane umieszczane są w pamięci karty, którą to pamięć procesor uznaje za część pamięci operacyjnej
systemu.
23
Sieci komputerowe
Karol Krysiak
Współdzielona pamięć komputera
Dane umieszczane są w wydzielonej części pamięci operacyjnej komputera, którą także wykorzystuje
procesor karty sieciowej.
Modem
Jest to urządzenie służące do połączenia komputerów najczęściej poprzez sieć telefoniczną. Modemy
dzielimy na zewnętrzne (podłączane do portu szeregowego RS-232) i wewnętrzne (podłączane do złącz
komputera m.in.: ISA, PCI, PCMCIA).
Transceiver
Urządzenie nadawczo-odbiorcze  urządzenie to łączy port sieciowy AUI z wykorzystywanym przez nas
typem okablowania. Realizuje następujące funkcje:
" przesyła i odbiera dane
" wykrywa jednoczesne pojawienie się pakietów danych sygnalizując to jako kolizję
" nie dopuszcza do przesyłania zbyt długich pakietów danych > 20 ms (Jabber Function)
" wykrywa przerwę w linii światłowodowej
" wykonuje test SQE (Signal Quality Error) "Heartbeat"
Transceiver AUI-światłowód
Konwerter nośników
Urządzenie umożliwiające łączenie różnych mediów transmisyjnych ze sobą, przykładowo światłowód i
skrętka.
Wzmacniak (repeater)
Wzmacniak jest to urządzenie aktywne do wzmacniania sygnałów w sieci. Nie wprowadza żadnych
zmian w przesyłane sygnały, poza wzmocnieniu sygnału dochodzącego do jego wejścia  wraz z
szumami tła. Działa na poziomie warstwy fizycznej, a co za tym idzie jego możliwości są niewielkie: nie
izoluje segmentów, uszkodzeń ani pakietów, łączy ze sobą sieci o takiej samej architekturze, używające
tych samych protokołów i technik transmisji. Może łączyć segmenty sieci o różnych mediach
transmisyjnych.
Koncentrator (hub)
Jest urządzeniem posiadającym wiele portów do przyłączania stacji roboczych przede wszystkim w
topologii gwiazdy. Można je traktować jak wieloportowe wzmacniaki, z tym że nowoczesne koncentratory
posiadają obwody regenerujące przesyłane ramki Ethernetowe.
Zaletą takiego rozwiązania jest, to że przerwanie komunikacji pomiędzy hubem a jedną ze stacji
roboczych nie powoduje zatrzymania ruchu w całej sieci (każda stacja ma oddzielne połączenie z
koncentratorem), należy jednak pamiętać, że awaria koncentratora unieruchomi komunikacje ze
24
Sieci komputerowe
Karol Krysiak
wszystkimi podłączonymi do niego urządzeniami. Huby wymagają zasilania i wzmacniają sygnały ze
stacji roboczych, co pozwala na wydłużenie połączenia.
Przykładowo hub ponad zwykłe wzmacnianie sygnału na każdym łączu dodatkowo:
" regeneruje kształt sygnału (stosunki amplitud i czasy) przed retransmitowaniem go dalej
" sprawdza ramki w poszukiwaniu wadliwych, które po wystąpieniu w zbyt dużej ilości są
blokowane i nie rozprzestrzeniają się po sieci
" zabezpiecza sieć przed zbyt długimi transmisjami generowanymi przez uszkodzone stacje
" zapobiega rozprzestrzenianiu się transmisji pochodzących od uszkodzonych segmentów
Do łączenia koncentratora z komputerem najczęściej wykorzystywane są przewody 10Base-T, jednak
koncentratory potrafią dokonywać konwersji sygnału pochodzącego z różnych mediów transmisyjnych
(np. kabla koncentrycznego). Koncentrator posiada najcześciej port uplink umożliwiający podłączenie do
niego drugiego koncentratora. Wewnątrz taki port zapewnia połączenie krzyżowe, co umożliwia nam
wykorzystanie kabla o zgodnym połączeniu przewodów. Istnieją również huby umożliwiające
podłączenie urzadzeń o różnych szybkościach transmisji 10Mb/s i 100Mb/s. Jednak ich konstrukcja jest
odmienna od standardowego koncentratora, w celu połączenia urządzeń pracujących z różnymi
szybkościami posiadają wewnątrz układy zapewniające buforowanie przepływającej informacji. Dzięki
mechanizmowi autonegocjacji urządzenie rozpoznaje szybkość transmisji w podłączonym do niego
medium.
Most (bridge)
Most jest urządzeniem najczęściej o dwóch portach mającym za zadanie łączenie ze sobą segmentów
sieci. Ponieważ dzieli sieć lokalną na segmenty, umożliwia to zwiększenie rozpiętości tejże sieci. Działa
w warstwie fizycznej i warstwie łącza danych modelu ISO/OSI. Most operuje tylko na adresach
sprzętowych, decydując do którego segmentu sieci należy przesłać nadchodzący pakiet. Nie jest jednak
w stanie zatrzymywać pakietów uszkodzonych ani zapobiegać zatorom w przypadku transmisji
broadcastowej z kilku stacji równocześnie. Mosty są urządzeniami prostymi w instalacji i nie
wymagającymi konfigurowania. Należy pamiętać, że ponieważ most musi reagować na adresy MAC
pakietów, to wprowadza opóznienie w transmisji. W przypadku, gdy dana grupa komputerów (niewielka)
korzysta z jednego serwera, nie należy danego serwera umieszczać za mostem.
Przełącznik (switch)
Przełącznik nazywane są również przełącznikami lub hubami przełączającymi. Podobnie jak huby,
stosowane są przede wszystkim w topologii gwiazdy, w sieciach opartych na skrętce. Zwykle posiadają
kilkanaście portów, które mogą być wykorzystywane do podłączenia stacji roboczych, innych
przełączników lub koncentratorów. Pracują w drugiej warstwie modelu ISO/OSI. Przełącznik podłączony
do sieci nasłuchuje na swoich portach adresów MAC podłączonych tam komputerów. Tworzy sobie
tablicę przyporządkowującą do danego adresu, numer portu, do którego podłączony jest dany komputer.
Teraz, w przypadku pojawienia się transmisji do danego komputera, cały ruch kierowany jest do
odpowiedniego portu i nie przedostaje się na pozostałe porty przełącznika. Dzięki temu, przełączniki
dzielą sieć lokalną na segmenty. Nadal jednak należy pamiętać  podobnie jak przy mostach - o
opóznieniu wprowadzanym przez przełącznik.
25
Sieci komputerowe
Karol Krysiak
3Com OfficeConnect Switch 280
Inteligentne switche posiadają tryby przełączania: fast forward oraz store and forward. W pierwszym
trybie odebrane ramki są wysyłane natychmiast na port docelowy, niezależnie od tego, czy są to ramki
zawierające błędy, czy też biorące udział w kolizji, natomiast drugi tryb sprawdza ramki eliminując
błędne oraz te, które biorą udział w kolizji. Drugi tryb powoduje jednak duże opóznienia w transmisji.
Switche potrafią jednak dokonywać inteligentnego przełączania polegającego na tym, że standardowym
trybem pracy jest fast forward, natomiast gdy liczba błędów zaczyna przekraczać kilkanaście na
sekundę automatycznie przełączają się na tryb store and forward. Gdy liczba błędów spada poniżej tego
poziomu przełącznik automatycznie wraca do poprzedniego trybu pracy. W przypadku łączenia mediów
o różnych szybkościach transmisji, przełącznik zawsze pracuje w trybie store and forward, ponieważ
musi zapamiętac całą ramkę, aby móc ją nadać z większą szybkością.
Ponadto przełączniki umożliwiają transmisje full-duplex pomiędzy dowolnymi swoimi portami (nie ma
takiej możliwości dla koncentratorów).
Warstwa internetu
Protokół IP
Najważniejszą częścią warstwy Internetu jest protokół IP (Internet Protocol), jest to protokół transportowy
sieci Internet.
Zadania protokołu IP:
" definiowanie datagramu
" definiowanie schematu adresowania używanego w całym Internecie
" trasowanie (rutowanie) datagramów skierowanych do odległych hostów
" dokonywanie fragmentacji i ponownej defragmentacji datagramów
Cechy protokołu IP
" IP jest protokołem bezpołączeniowym, tzn. nie ustanawia w żaden sposób połączenia i nie
sprawdza gotowości odległego komputera do odebrania przesyłanych danych.
" IP jest protokołem niepewnym, tzn. nie zapewnia korekcji i wykrywania błędów transmisji.
Obie te funkcje musza być wykonane poprzez protokoły innych warstw.
26
Sieci komputerowe
Karol Krysiak
Budowa datagramu IP
bity
słowa 0 4 8 12 16 20 24 28 31
1 Wersja IHL Typ usługi Długość całkowita
Identyfikator Flagi Przesunięcie
2
fragmentacji
3 Czas życia Protokół Suma kontrolna Nagłówek
4 Adres zródła
5 Adres przeznaczenia
6 Opcje Uzupełnienie
7 DANE ...
Budowa datagramu IP
" Wersja - [4 bity]  numer wersji protokołu IP. Opisana została wersja nr 4.
" IHL  [4 bity]  (Internet Header Length) jest długością nagłówka w słowach. Minimalna wartość
to 5.
" Typ usługi  [8 bitów]  opisuje jakość wymaganej usługi. Kolejne bity oznaczają:
o 0-2 pierwszeństwo:
111  sterowanie siecią
110  sterowanie siecią wewnętrzną
101  CRITIC/ECP
100  natychmiastowe zastąpienie
011  zastąpienie
010  natychmiastowe
001  priorytet
000  program standardowy
o 3 opóznienie: 0  normalne, 1- małe
o 4 wydajność: 0  normalna, 1  wysoka
o 5 niezawodność: 0  normalna, 1  wysoka
o 6-7 zarezerwowane do użycia w przyszłości
" Długość całkowita  [16 bitów]  jest długością pakietu IP w bajtach (zawierającego nagłówek i
dane).
" Identyfikator  [16 bitów]  wartość identyfikacyjna przypisana nadawanemu pakietowi przed
fragmentacją (jeżeli miałaby ona miejsce). W przypadku fragmentacji określa ona przynależność
fragmentu do datagramu.
" Flagi - [3 bity]  flagi sterujące:
o bit nr 0: - zarezerwowany, musi mieć wartość zero
o bit nr 1: DF - 0  można fragmentować, 1- nie wolno fragmentować
o bit nr 2: MF - 0  ostatnia fragmentacja, 1 - więcej fragmentacji
" Przesunięcie fragmentacji  [13 bity]  pole to wskazuje, do którego miejsca pakietu danych
należy ten fragment. Przesunięcie fragmentu jest mierzone w jednostkach 8 bajtów (64 bitów).
Pierwszy fragment ma przesunięcie równe zeru.
" Czas życia  [8 bitów]  pole to wskazuje maksymalny czas przebywania pakietu w Internecie
(Time-to-Live).
" Protokół  [8 bitów]  pole to wskazuje numer protokołu warstwy wyższej, do którego zostaną
przekazane dane z tego pakietu.
" Suma kontrolna  [16 bitów]  suma kontrolna nagłówka. Ponieważ nagłówek ulega ciągłym
zmianom (np. czas życia) jest ona obliczana i sprawdzana za każdym razem, gdy dany nagłówek
jest przetwarzany.
27
Sieci komputerowe
Karol Krysiak
" Adres zródła  [32 bity]  adres IP zródła danych.
" Adres przeznaczenia  [32 bity]  adres IP komputera docelowego.
" Opcje  [długość pola jest zmienna]  mogą zajmować przestrzeń na końcu nagłówka IP.
" Uzupełnienie  [długość pola jest zmienna]  jeśli pole opcji nie zajmuje pełnego słowa to zostaje
uzupełnione do 32 bitów.
Protokół IP jest na tyle uniwersalny, że zapewnia transport danych przez różnorodne strukturalnie sieci
(np. Token Ring, X.25). Każdy rodzaj sieci ma określony maksymalny rozmiar pakietu MTU (Maximum
Transmission Unit). W trakcie przekazywania danych, może się okazać, że MTU właściwy dla jednej z
sieci, jest zbyt duży dla następnej. Zachodzi wtedy zjawisko fragmentacji pakietu. W tym momencie rolę
zaczynają odgrywać pola identyfikator, przesunięcie fragmentacji oraz pole flagi w nagłówku datagramu.
Numer protokołu
Pole protokół w nagłówku datagramu jest numerem protokołu, do którego mają zostać dostarczone dane
z tego datagramu. Z numeru tego korzystają warstwy wyższe w celu identyfikacji protokołu, który
zapewni dalszą obróbkę danych. W systemach Unixowych numery protokołów zapisane są w pliku
/etc/protocols. Plik ten może wyglądać w podany poniżej sposób.
ip 0 IP # internet protocol, pseudo protocol number
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # internet group multicast protocol
ggp 3 GGP # gateway-gateway protocol
tcp 6 TCP # transmission control protocol
pup 12 PUP # PARC universal packet protocol
udp 17 UDP # user datagram protocol
idp 22 IDP # Internet Datagram Protocol
raw 255 RAW # RAW IP interface
Plik /etc/protocols
Druga kolumna zawiera numer protokołu. Najciekawsze dla nas są protokoły warstwy transportowej TCP
i UDP, które zostaną omówione w następnym rozdziale pracy. Ponadto z IP korzysta również wiele
innych protokołów, m.in. ICMP (zostanie omówiony w tym rozdziale).
Adresowanie IP
Adresy wszystkich komputerów w Internecie są wyznaczane przez właściwości protokołu IP. Z rysunku
4.1 widzimy, że pola  Adres zródła i  Adres przeznaczenia składają się z czterech bajtów (oktetów)
każde. Z tego wynika konstrukcja adresu Internetowego, który składa się z czterech liczb dziesiętnych z
zakresu 0-255 przedzielonych kropkami. Można go również zapisać jako jeden ciąg 32 bitów lub też
cztery ciągi po osiem bitów każdy, przedzielone kropkami.
Każdy taki adres można podzielić na dwie części:
" część identyfikującą daną sieć w Internecie
" część identyfikującą konkretny komputer w tej sieci
Podział ten wynika z faktu, że każde przedsiębiorstwo, które otrzymuje adresy Internetowe do własnego
wykorzystania, otrzymuje tylko jakiś wydzielony zakres tych adresów, określany mianem: przestrzeń
adresowa.
28
Sieci komputerowe
Karol Krysiak
Klasy adresów w TCP/IP
Pierwotnie bity określające sieć i bity określające komputer były rozróżniane za pomocą tzw. klas
adresów IP. Klasy były definiowane za pomocą kilku pierwszych bitów adresu. Na podstawie ich
wartości oprogramowanie określało klasę adresu, a tym samym które bity odpowiadają za adres
podsieci, a które za adres hosta.
0nnnnnnn.hhhhhhhh.hhhhhhhh.hhhhhhhh - klasa A
10nnnnnn.nnnnnnnn.hhhhhhhh.hhhhhhhh - klasa B
110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh - klasa C
1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx - multicast
1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx - adresy zarezerwowane
Klasy adresów IP w Internecie
n  bit należący do adresu sieci
h  bit należący do adresu hosta
W ten sposób, na podstawie wartości N pierwszego bajtu adresu IP możemy zdefiniować do jakiej klasy
należy dany adres:
N < 128  klasa A
128 < N < 191  klasa B
192 < N < 223  klasa C
224 < N < 239  multicast
N > 239  adresy zarezerwowane
Adresy multicast są adresami transmisji grupowej, wykorzystywanymi przy np.: wideo-konferencjach.
Maska sieci, adres rozgłoszeniowy (broadcast)
W pewnym momencie rozwoju Internetu okazało się, że ten sposób przydzielania adresów sieci jest
bardzo nieekonomiczny. Dostępne klasy adresów zaczęły się bardzo szybko kurczyć. Wprowadzono
system zwany: bezklasowym rutowaniem międzydomenowym CIDR (Classless Inter-Domain Routing).
Pojawiło się pojęcie maski sieci. Maska sieci składa się podobnie jak adres IP z 4 bajtów, używana jest
do wydzielenia części adresu odpowiadającej za identyfikację sieci i części odpowiadającej za
identyfikację komputera z adresu IP. Poniżej zamieszczam ilustrację tej metody.
Adres IP: 212.51.219.50
Maska sieci: 255.255.255.192
Adres IP: 11010100.00110011.11011011.00110010
Maska: 11111111.11111111.11111111.11000000
Adres sieci: 11010100.00110011.11011011.00000000
Broadcast: 11010100.00110011.11011011.00111111
Adres sieci: 212.51.219.0
Broadcast: 212.51.219.63
Wyznaczanie adresu sieci i adresu rozgłoszeniowego
Adres sieci tworzymy przepisując niezmienione wszystkie bity adresu IP, dla których odpowiednie bity
maski mają wartość jeden. Resztę uzupełniamy zerami. Adres broadcast jest adresem rozgłoszeniowym
sieci. Używa się go do jednoczesnego zaadresowania wszystkich komputerów w danej sieci (jest
przetwarzany przez wszystkie komputery w sieci). Tworzymy go podobnie do adresu sieci, jednak
dopełniamy jedynkami zamiast zerami.
Mając adres sieci i adres broadcast możemy łatwo wyznaczyć możliwy zakres numerów IP komputerów
w danej sieci. Dla podanych powyżej adresów sieci i broadcast, komputerów w sieci mogą przyjmować
adresy IP od numeru: 212.51.219.1 do 212.51.219.62.
Adres 212.51.219.50 z maską 255.255.255.192 możemy w skrócie zapisać 212.51.219.50/26. W tym
przypadku ostatnia liczba oznacza ilość bitów o wartości jeden w masce.
29
Sieci komputerowe
Karol Krysiak
Adresy specjalne, klasy nierutowalne.
Istnieją pewne adresy, których nie można wykorzystać do normalnych zastosowań (przydzielić ich
komputerom). Dla danej sieci (przestrzeni adresowej) takim adresem jest adres sieci. W omawianym
przykładzie tym adresem jest 212.51.219.0; adres ten symbolizuje całą sieć. Drugim takim adresem jest
wyznaczony powyżej broadcast, czyli adres rozgłoszeniowy. Każdy datagram IP o tym adresie zostanie
odczytany i przetworzony przez wszystkie komputery danej sieci. Adres sieci i broadcast zmieniają się w
zależności od aktualnej przestrzeni adresowej.
Ponadto adresem specjalnego przeznaczenia jest adres: 0.0.0.0. oznacza on wszystkie komputery w
Internecie. Często podczas odczytywania tablicy rutingu zastępowany jest on słowem:  default .
Następnym adresem specjalnym jest 127.0.0.1, jest to adres pętli (loop-back address). Adres ten służy
do komunikacji z wykorzystaniem protokołu IP z lokalnym komputerem (localhost). Jest to adres zawsze
przypisany komputerowi, na którym właśnie pracujemy, ponieważ pakiety z takimi adresami nie powinny
wydostawać się na zewnątrz komputera, nie powoduje to żadnych konfliktów.
Należy również pamiętać o adresach klasach adresów multicast i zarezerwowanych przedstawionych w
Tab. 4.1, których też nie możemy wykorzystać do normalnych zastosowań.
Pewna grupa adresów została zarezerwowana do powszechnego wykorzystania. Można z
wykorzystaniem tych adresów budować lokalne intranety (sieci IP świadczące takie same usługi jak
Internet, ale dla pojedynczego przedsiębiorstwa). Adresy te czasem nazywane są adresami
nierutowalnymi. Nazwa ta powstała, ponieważ pakiety z takich sieci nie powinny być przekazywane
przez rutery. Wynika stąd, że możemy założyć sobie sieć przestrzenią adresową z takiego zakresu i sieć
ta nie będzie widziana na zewnątrz w Internecie.
A 255.0.0.0 10. 0.0.0 - 10.255.255.255
B 255.255.0.0 172. 16.0.0 - 172. 31.255.255
C 255.255.255.0 192.168.0.0 - 192.168.255.255
Zarezerwowane zakresy adresów IP
Rutowanie datagramów IP
Gdy host musi przesłać coś za pomocą protokołu IP, podejmuje decyzję o sposobie przekazania pakietu
do warstwy niższej. Na podstawie adresu przeznaczenia pakietu (wykorzystując technologię omówioną
powyżej) stwierdza, czy komputer docelowy należy do tej samej sieci. Jeżeli tak, to wysyła pakiet do
sieci lokalnej. Znalezieniem adresu Ethernetowego (protokół ARP) i dostarczeniem pakietu do
odpowiedniej stacji (protokół IEEE 802.3) zajmują się już protokoły warstwy niższej (warstwy dostępu do
sieci). Jeżeli adres IP przeznaczenia nie należy do tej samej sieci, komputer zródłowy przesyła pakiet na
adres lokalnej bramki.
Bramka (gateway) - wymiennie stosowane jest określenie ruter (router) - jest to urządzenie
zapewniające łączność pomiędzy sieciami lokalnymi. Urządzenie to (najczęściej komputer) jest
podłączone do przynajmniej dwóch różnych sieci i otrzymując pakiety z jednej z nich podejmuje decyzję,
czy przesłać je do kolejnej (w przypadku większej ilości sieci  do której).
Tablica rutingu
W obu przypadkach (komputer lokalny, bramka) decyzja o losie datagramu IP podejmowana jest na
podstawie tablicy rutowania. Tablica ta jest tworzona przez administaratora systemu lub przez protokoły
rutujące. Adres każdego wysyłanego datagramu zostaje porównany z wpisami destination i genmask, a
następnie na podstawie pozostałych wpisów zostaje podjęta decyzja co do dalszego losu datagramu IP.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
212.51.219.0 0.0.0.0 255.255.255.192 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 212.51.219.3 0.0.0.0 UG 1 0 0 eth0
Tablica rutingu
30
Sieci komputerowe
Karol Krysiak
Przykładowo, jeśli mamy wysłać dane do komputera o adresie IP 212.51.219.4 okazuje się, że adres ten
pasuje do pierwszego wpisu. Adres przeznaczenia znajduje się w sieci 212.51.219.0 o masce
255.255.255.192. Wpis ten dotyczy w tym przypadku sieci lokalnej i okazuje się, że komputer docelowy
jest w tej samej sieci. Następnie wyszukiwane jest pole Iface (interface), które mówi z jakiego interfejsu
sieciowego (karty sieciowej) należy skorzystać, aby wysłać te dane. Jeżeli pole gateway ma wartość
0.0.0.0, to datagram jest bez żadnych zmian wysyłany przez podaną kartę sieciową. Jednak, gdy pole to
ma wpisaną jakąś wartość, w ramce Ethernetowej adres przeznaczenia zamieniany jest na adres MAC
bramki (routera). W momencie, gdy otrzyma on pakiet Ethernetowy z innym niż jego własny adresem IP,
to w analogiczny do omówionego sposób przesyła datagram dalej.
Wpis postaci 0.0.0.0 oznacza wszystkie adresy IP. Znajduje się on najczęściej na końcu tablicy routingu,
jeżeli poszukiwany adres nie pasował do żadnej z wcześniejszych sieci (wpisów w tablicy), to zostaje
wysłany do domyślnej (default) bramki zapewniającej dostęp do sieci Internet dla danego komputera.
W polu flagi wpisy oznaczają:
- U  dana trasa istnieje i do tej chwili nie było z nią żadnych kłopotów.
- G  dany wpis dotyczy bramki,
- H  wpis dotyczy pojedynczego komputera,
- D  wpis został zmieniony przez protokół kontrolny ICMP.
Protokół ICMP
Protokół ICMP (Internet Control Message Protocol) jest częścią warstwy Internetu, do swojego
transportu wykorzystuje datagramy IP.
Pełni on następujące funkcje:
1. Sterowanie przepływem danych  w przypadku, gdy komputer docelowy transmisji IP nie nadąża za
obróbką przychodzących datagramów IP, ICMP wysyła komunikat Source Quench, po którym nadawca
czasowo wstrzymuje transmisję.
2. Wykrywanie nieosiągalnych miejsc przeznaczenia  jeśli komputer docelowy nie odpowiada system,
który wykrył problem wysyła do nadawcy komunikat Destination Unreachable. Jeśli komunikat ten jest
wysyłany przez ruter, oznacza, że ruter nie może wysyłać pakietów do danego komputera. Może to
nastąpić w dwóch przypadkach:
adres docelowy IP nie istnieje (np.: komputer docelowy jest wyłączony, ma odłączoną sieć, zle
ustawioną maskę), występuje wtedy typ komunikatu Host-unreachable,
ruter nie może dostarczyć datagramu do tej sieci, występuje wtedy typ Network-unreachable.
W momencie, gdy komunikat ten jest wysyłany przez host, może to oznaczać, że:
dany komputer nie posiada wsparcia dla któregoś z protokołów warstw wyższych, występuje wtedy typ
Protocol-unreachable,
port protokołu TCP jest nieosiągalny, występuje wtedy typ Port-unreachable.
3. Przekierowywanie ścieżek  jeśli komputer, do którego dotarł datagram IP uzna, że właściwszą
bramką będzie inny komputer z tej samej sieci, wysyła komunikat Redirect wskazujący na ten właśnie
komputer (musi znajdować się w tej samej sieci). Po otrzymaniu takiego komunikatu nadawca
aktualizuje swoją tablicę rutingu.
4. Sprawdzanie zdalnego hosta  odbywa się podczas wywołania komendy ping. Wysyłany jest
komunikat Echo Message, po otrzymaniu którego komputer docelowy musi odpowiedzieć. Jeśli tego nie
zrobi, uznawany jest za nieosiągalny.
5. Jeśli jakiś datagram, podczas przechodzenia przez ruter osiągnie zerowy limit  czasu życia (Time-to-
Live) jest usuwany. Do komputera zródłowego danego datagramu wysyłany jest komunikat ICMP Time-
exceeded.
Protokół ten jest bardzo ważnym protokołem kontrolnym w Internecie. Obsługuje on większość sytuacji
awaryjnych i informuje o nich zainteresowane hosty. Bardzo często wykorzystywany jest przy
rozwiązywaniu wszelakich typów problemów przez używanie popularnych komend ping i traceroute (w
systemach Windows komenda tracert) zaimplementowanych w większości sieciowych systemów
operacyjnych.
31
Sieci komputerowe
Karol Krysiak
Urządzenia pracujące w warstwie Internetu
Ruter
Ruter (router) nazywany również bramką (gateway) jest urządzeniem sprzęgającym sieci,
funkcjonującym w warstwach fizycznej, łącza danych i sieciowej modelu ISO/OSI. Ruter jest
zaawansowanym urządzeniem do łączenia ze sobą poszczególnych segmentów sieci i zwiększania jej
rozmiarów. Jest urządzeniem konfigurowalnym, pozwala na sterowanie przepustowością sieci oraz na
pełną izolację segmentów sieci. Potrafi przekazywać dane pomiędzy sieciami opartymi na różnych
technologiach. W sieciach rozległych dane przekazywane są pomiędzy konkretnymi węzłami, po drodze
przechodzą przez wiele węzłów pośrednich i mogą podróżować różnymi trasami. Router jest jednym z
takich węzłów, ma za zadanie przesyłania danych jak najlepszą i najszybszą drogą.
Pracuje w warstwie sieciowej modelu referencyjnego OSI co oznacza, że potrafi odczytywać adresy z
poszczególnych pakietów tak, aby znać ich miejsce przeznaczenia. Procedura dostarczania pakietów
bliżej ich miejsca przeznaczenia nosi nazwę przekierowywania (rutowania) pakietów. Do kierowania
danych używana jest tzw. tabela (lub tablica) routingu, która zawiera informacje o sąsiadujących
routerach, sieciach lokalnych oraz ich stanie. Na podstawie tych danych wyszukiwana jest optymalna
droga dla danego pakietu. Tablica routingu może być statyczna  aktualizowana ręcznie przez
administratora sieci, lub dynamiczna  aktualizowana automatycznie przez oprogramowanie sieciowe.
Zaletą drugiego rozwiązania jest to, że w razie dużego ruchu oprogramowanie może zmienić tablice
routingu tak, aby pakiety omijały powstały zator.
Routery mogą być także wykorzystywane jako  zapora ogniowa , zabezpieczając sieć przed
nieautoryzowanym dostępem. Przy odpowiedniej konfiguracji wszyscy użytkownicy sieci lokalnej
korzystają z Internetu, natomiast pozostali użytkownicy Internetu maja ograniczony dostęp do sieci
lokalnej.
Ponadto ruter można wykorzystać jako urządzenie tłumaczące adresy sieciowe (Network Address
Translation - NAT), którego funkcje zostały częściowo zaimplementowane np. w systemie operacyjnym
Linux jako IP-masquerading (maskarada, maskowanie adresów IP). Działanie NAT polega na
umożliwieniu przedostawania się pakietów z sieci lokalnej o adresach z zakresu nierutowalnego (lub
innych) do Internetu. Każdy z pakietów z sieci lokalnej ma zamieniany adres zródłowy na adres rutera
wykonującego funkcję NAT. W ten sposób komputery w sieci lokalnej są niewidoczne z Internetu. Można
powiedzieć, że cała sieć jest reprezentowana przez ruter.
Warstwa transportowa
W warstwie transportowej znajdują się dwa protokoły zapewniające transport danych pomiędzy
protokołem IP a aplikacjami. Ponieważ dane wędrują przez sieć w datagramach IP, a aplikacje
najczęściej wykorzystują inny format i rozmiar informacji, to protokoły warstwy transportowej muszą
zapewniać dostarczenie danych w pożądanej kolejności i umieć poskładać je w odpowiednie struktury.
Ponadto protokół IP zapewnia jedynie dostarczenie danych do komputera, a przecież na każdym
komputerze może pracować wiele procesów (programów) i usług sieciowych korzystających
jednocześnie z transmisji IP.
Porty, gniazda
Zadaniem protokołów warstwy transportowej jest rozdzielenie nadchodzących informacji z warstwy
Internetu i dostarczenie ich do odpowiednich procesów pracujących w warstwie aplikacji. Identyfikacja
przynależności danej transmisji do konkretnego procesu odbywa się na podstawie numeru portu. Numer
portu jest liczbą 16 bitową związaną z procesem komunikującym się w sieci. Proces chcąc transmitować
lub odbierać dane poprzez IP rezerwuje sobie taką liczbę i w ten sposób uzyskuje dostęp do sieci.
Każda transmisja w sieci Internet jest identyfikowana za pomocą kilku liczb. Po pierwsze jest to adres IP
komputera wysyłającego dane, czyli np.: 212.51.219.50 oraz numer portu na tym komputerze, z którego
nadaje proces transmitujący. Może to być np.: 23. W tym momencie mamy już liczby identyfikujące
transmisję z jednej strony: 212.51.219.3.23. Połączenie numeru IP komputera i portu na którym odbywa
się komunikacja nazywamy gniazdem (socket). Podobnie komputer odbierający dane ma swój numer IP:
32
Sieci komputerowe
Karol Krysiak
212.51.219.4 oraz port, na którym proces z nim skojarzony odbiera dane np.: 60000. I w tym momencie
mamy już dwa gniazda jednoznacznie definiujące w danej chwili tę transmisję w całym Internecie,
można to zapisać w ten sposób:
212.51.219.50.23 : 212.51.219.4.6000
Istnieje kilka zasad przyznawania numerów portów w systemach sieciowych. Jak już napisałem, numer
portu jest liczbą 16 bitową, czyli może przyjmować wartości od 0 do 65535. Jednak zakres od 0 do 1024
jest zarezerwowany dla tzw. dobrze znanych portów (dobrze znanych usług). W tym zakresie rezydują
takie usługi warstwy aplikacji jak: WWW, FTP, telnet i inne. Lista dobrze znanych portów znajduje się w
systemach Unixowych w pliku /etc/services. Wygląda ona mniej więcej tak jak poniższa  pozostawiłem
najważniejsze usługi.
ftp-data 20/tcp # File Transfer [Default Data]
ftp-data 20/udp # File Transfer [Default Data]
ftp 21/tcp # File Transfer [Control]
ftp 21/udp # File Transfer [Control]
ssh 22/tcp # Secure Shell Login
ssh 22/udp # Secure Shell Login
telnet 23/tcp
telnet 23/udp
smtp 25/tcp mail
domain 53/tcp nameserver # name-domain server
domain 53/udp nameserver
tftp 69/udp
finger 79/tcp
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol
pop3 110/tcp # POP version 3
pop3 110/udp
nntp 119/tcp #USENET News Transfer Protocol
ntp 123/tcp
ntp 123/udp # Network Time Protocol
netbios-ns 137/tcp # NETBIOS Name Service
netbios-ns 137/udp
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
snmp 161/udp # Simple Net Mgmt Proto
snmp-trap 162/udp snmptrap # Traps for SNMP
irc 194/tcp # Internet Relay Chat
irc 194/udp
# UNIX specific services
login 513/tcp
who 513/udp whod
syslog 514/udp
printer 515/tcp spooler # line printer spooler
talk 517/udp
route 520/udp router routed # RIP
Plik /etc/services  numery usług (portów) sieciowych
Numer portu występuje razem z protokołem transportowym ze względu na możliwość wykorzystania
tego samego portu przez kilka różnych protokołów. Powyżej numeru 256 występują usługi
charakterystyczne dla systemów Unixowych. Przy nawiązywaniu połączenia proces na komputerze
33
Sieci komputerowe
Karol Krysiak
lokalnym musi zarezerwować sobie port o numerze powyżej 1024, ze względu na opisaną wcześniej
rezerwację tego zakresu.
Protokół UDP
Protokół pakietów użytkownika UDP (User Datagram Protocol) wykonuje usługę bezpołączeniowego
dostarczania datagramów, tzn. nie ustanawia w żaden sposób połączenia i nie sprawdza gotowości
odległego komputera do odebrania przesyłanych danych. W zamian za to zmniejszona została ilość
informacji kontrolnych, co zwiększa efektywność tego protokołu przy przesyłaniu danych. Daje on
aplikacjom bezpośredni dostęp do usług rozsyłania datagramów, przy wykorzystaniu minimalnego
nakładu środków.
Bity
0 16 31
Port zródłowy Port przeznaczenia
Długość Suma kontrolna
DANE ...
Budowa pakietu UDP
Pierwsze dwa bajty nagłówka zawierają adres portu zródłowego, następne adres portu docelowego
pakietu UDP. Protokół UDP jest dobrym rozwiązaniem, jeżeli ilość przesyłanych danych jest niewielka.
W tym przypadku obciążenie wynikające z dodania informacji dotyczących kontroli poprawności
połączenia mogłoby stać się porównywalne z ilością przesyłanych informacji. Ponadto niektóre aplikacje
same dbają o kontrolę poprawności transmisji i wykorzystywanie do ich transmisji protokołu
połączeniowego byłoby dublowaniem tych samych funkcji.
Protokół TCP
Protokół kontroli transmisji TCP (Transmission Control Protocol) jest protokołem niezawodnym,
połączeniowym działającym na strumieniach bajtów. Oznacza to, że sprawdza on czy dane zostały
dostarczone przez sieć poprawnie i w określonej kolejności. Dane dostarczane przez ten protokół mogą
być traktowane jak strumień.
bity
słowa 0 4 8 12 16 20 24 28 31
1 Port zródłowy Port przeznaczenia
2 Numer kolejny
3 Numer potwierdzenia
Nagłówek
4 Przesunięcie Zarezerwowane Flagi Okno
5 Suma kontrolna Priorytet
6 Opcje Uzupełnienie
7 DANE ...
Budowa segmentu TCP
34
Sieci komputerowe
Karol Krysiak
Numer kolejny  numer kolejny pierwszego bajtu przesyłanych danych w tym segmencie. Jeśli flaga
SYN jest ustawiona, to numer kolejny jest pierwszym numerem kolejnym (ISN - Initial Sequence
Number), a pierwszy bajt danych to ISN+1.
Numer potwierdzenia  jeśli jest ustawiona flaga ACK, pole to zawiera wartość następnego numeru
kolejnego, który nadawca spodziewa się otrzymać. Gdy połączenie już zostanie ustalone to wartość ta
jest zawsze wysyłana.
Przesunięcie [4 bity]  przesunięcie danych  liczba 32-bitowych słów w nagłówku TCP. Wskazuje
początek danych.
Zarezerwowane [6 bitów]  zarezerwowane do przyszłego wykorzystania, musi mieć wartość zero.
Flagi [6 bitów]  kolejne bity oznaczają:
URG  oznaczenia pola pilnego wskaznika,
ACK  oznaczenia pola potwierdzenia,
PSH  funkcja przepychania,
RST  zresetuj połączenie,
SYN  zsynchronizuj kolejne numery,
FIN  nie pobieraj więcej danych od nadawcy.
Okno [16 bitów]  liczba bajtów danych, które nadawca zgodzi się przyjąć. Pole to służy do sterowania
przepływem danych. Okno o wartości zero, informuje nadawcę, że powinien wstrzymać transmisję,
dopóki nie otrzyma segmentu z inną wartością w tym polu.
Protokół TCP w celu zapewnienia niezawodności wykorzystuje mechanizm potwierdzenia z retransmisją
(Positive Acknowledgment with Re-transmission) PAR. Dane są przesyłane dopóty, dopóki system
wysyłający nie otrzyma potwierdzenia, że dane przeszły bezbłędnie. Każdy segment TCP zawiera sumę
kontrolną wykorzystywaną przez odbiorcę do sprawdzenie poprawności przesłanych danych. Jeżeli
segment danych został odebrany bezbłędnie, wysyłane jest potwierdzenie odebrania danych. Jeżeli
segment jest uszkodzony, odbiorca nie wysyła potwierdzenia. Po pewnym czasie nadawca retransmituje
segment, dla którego nie doszło do niego potwierdzenie.
Połączenie jest nawiązywane poprzez przesłania komunikatów kontrolnych, tzw. handshake. O tym, czy
dany segment jest kontrolny świadczy ustawienie bitu SYN w polu flagi. TCP stosuje potwierdzenie
trójpoziomowe:
1. Host A nawiązujący połączenie wysyła do hosta B segment z ustawionym bitem SYN. W segmencie
tym podany jest początkowy numer sekwencji danych, które zostaną przesłane przez host A.
2. Host B odpowiada segmentem z ustawionymi bitami ACK (potwierdzenia) i SYN (synchronizacja),
potwierdzając odebranie poprzedniego segmentu. W polu numer kolejny podaje jaki będzie numer
początkowy sekwencji przesłanych przez niego danych.
3. Host A wysyła segment potwierdzający odbiór segmentu od B (ustawiony bit ACK) i zawierający
pierwsze przesyłane dane.
Po zakończeniu transmisji danych hosty wymieniają trzy segmenty potwierdzenia z ustawionym bitem
FIN (koniec danych), co powoduje zerwanie połączenia między nimi.
Ponieważ dane dostarczane przez TCP są traktowane jako strumień, musi on dbać o ich kolejność. Nie
jest istotne od jakiej liczby systemy zaczną numerację danych, może być ona dowolna i dla tego
wartości te są wymieniane podczas nawiązywania połączenia (przy ustawionych bitach SYN) w polach
numer kolejny. Liczby te określa się mianem początkowy numer sekwencji (Initial Sequence Numbe)
ISN. Bajtom danych nadawane są numery począwszy od ISN+1.
Segmenty z ustawionym bitem potwierdzenia ACK pełnią dwie funkcje: potwierdzają otrzymanie danych
i sterują ich przepływem. Standard TCP nie wymaga potwierdzania każdego segmentu danych.
35
Sieci komputerowe
Karol Krysiak
Segment z ustawionym bitem ACK potwierdza odebranie wszystkich danych od początku transmisji.
Wartość w polu numer potwierdzenia jest równa ilości prawidłowo odebranych danych w bajtach.
Warstwa aplikacji
Na szczycie modelu warstwowego znajduje się warstwa aplikacji, zajmuje się ona świadczeniem usług
dla użytkownika. Zawiera w sobie różnorodne procesy (usługi) wykorzystywane za pośrednictwem
odpowiednich aplikacji przez człowieka. Często określa się je mianem protokołów, ponieważ są pewnymi
standardami wymiany informacji. Poniżej przedstawię pokrótce najważniejsze usługi i ich zadania.
Należy również wyjaśnić, że większość omówionych poniżej usług działa w architekturze klient-serwer.
Oznacza to, że na odległym serwerze musi być uruchomiony serwer danej usługi (program świadczący
dana usługę). Na komputerze komunikującym się z nim musi zostać uruchomiony klient tej usługi, który
dopiero nawiąże połączenie z odległym serwerem i umożliwi wykorzystanie danego protokołu.
DNS
Jest jedną z najważniejszych usług warstwy aplikacji, często nieświadomie wykorzystywaną przez
użytkowników Internetu. Zapewnia odwzorowywanie nazw hostów na adresy IP. Przykładowo, to dzięki
systemowi DNS i najbliższemu serwerowi tej usługi, po wpisaniu w naszej przeglądarce WWW:
www.dmcs.p.lodz.pl zostaniemy skierowani na adres IP 212.51.219.1 i zostanie nam wyświetlona strona
Katedry Mikroelektroniki i Technik Informatycznych Politechniki Aódzkiej.
Przestrzeń nazw w Internecie została zbudowana na modelu domenowym. Nazwa danego hosta
tworzona jest od prawej do lewej. Najpierw są nazwy domen górnego poziomu, następnie pod-domeny i
w końcu nazwa hosta, poprzedzielane kropkami.
Domeny głównego poziomu dzielą się na domeny organizacyjne i geograficzne. Domeny geograficzne
są to dwuliterowe nazwy domen przyznane poszczególnym krajom, przykładowo:
pl  Polska,
us  Stany Zjednoczone,
uk  Wielka Brytania,
tw  Taiwan,
eu  Europa.
Domeny organizacyjne są przyznawane w zależności od prowadzonej działalności:
com  firmy komercyjne,
edu  instytucje naukowe,
gov  agencje rządowe,
mil  organizacje wojskowe,
net  organizacje związane z siecią Internet,
int  międzynarodowe organizacje rządowe i pozarządowe,
org  pozostałe organizacje nie mieszczące się w tych ramach.
Jeżeli stacja wysyła do swojego serwera zapytanie o nazwę hosta spoza jej własnej domeny, to pyta on
właściwy serwer zajmujący się obsługą domeny, w której znajduje się poszukiwany host. Następnie
odległy serwer DNS odpowiada naszemu serwerowi, który podaje nam adres IP komputera, o który
pytaliśmy.
36
Sieci komputerowe
Karol Krysiak
Najważniejsze usługi Internetowe
Telnet
Telnet (Network Terminal Protocol) jest protokołem terminala sieciowego, służy do zalogowania się i
zdalnej pracy na odległym komputerze z wykorzystaniem konsoli tekstowej.
FTP
FTP (File Transfer Protocol) jest protokołem transmisji plików, umożliwia transmisję i odbiór plików z
odległego systemu. Ponadto jest oczywiście możliwość wylistowania zawartości katalogów.
SMTP
SMTP (Simple Mail Transfer Protocol) jest podstawowym protokołem transmisji poczty. Umożliwia
wysyłanie poczty elektronicznej e-mail.
POP
POP (postoffice) jest protokołem pocztowym, za jego pomocą możemy odbierać naszą pocztę z
serwera.
HTTP
HTTP (Hypertext Transfer Protocol) jest protokołem odpowiedzialnym za przesyłanie w Internecie stron
WWW.
SSH
SSH (Secure Shell Login) jest bezpiecznym protokołem terminala sieciowego udostępniającym usługi
szyfrowania połączenia. Zalecany do stosowania zamiast telnetu.
Finger
Finger jest usługą dostarczania informacji o użytkowniku, umożliwia zapytywanie odległego serwera o
dane osobiste interesującego nas użytkownika. Ze względów bezpieczeństwa wychodzi z użycia.
NNTP
NNTP (USENET News Transfer Protocol) protokół transmisji USENET-owej. Służy do transmisji listów
na grupę dyskusyjną i odczytywania listów z grup dyskusyjnych.
SNMP
SNMP (Simple Network Management Protocol) prosty protokół zarządzania siecią. Służy do konfiguracji
urządzeń sieciowych (tych udostępniających tę usługę) oraz do zbierania informacji o ich działaniu.
IRC
IRC (Internet Relay Chat) protokół służący do prowadzenia rozmów za pomocą konsoli tekstowej.
Urządzenia sieciowe pracujące w warstwie aplikacji.
Komputer
Komputer (host) jest urządzeniem pracującym we wszystkich siedmiu warstwach modelu ISO/OSI. Jest
to klient, tzn. że nie świadczy żadnych usług w sieci, a jedynie z nich korzysta.
37
Sieci komputerowe
Karol Krysiak
Serwer
Jest to komputer, który w sieci świadczy jakieś usługi. Może to być zwykły komputer, ale jeśli zostały
uruchomione na nim jakieś serwery usług, to automatycznie zostaje serwerem. Najczęściej są to
maszyny nastawione na szybką i bezawaryjną pracę, w związku z czym czasem część z ich
podzespołów (np. dyski twarde) jest zdublowana; w razie awarii jednego, drugi może kontynuować
pracę.
Zagadnienia bezpieczeństwa sieci LAN
Co dzień przybywa komputerów podłączonych do sieci Internet, tym samym rośnie
prawdopodobieństwo, że któryś z użytkowników Internetu postanowi włamać się do naszej sieci lokalnej.
Bezpieczeństwo sieci komputerowych jest zagadnieniem ogromnym i nie widzę możliwości wyczerpania
tutaj tego tematu. Zwłaszcza, że co dzień odkrywane są nowe sposoby włamania lub zakłócenia pracy
systemów komputerowych. W tym rozdziale zajmę się sposobami kompleksowego zabezpieczenia sieci
komputerowej za pomocą techniki filtrowania datagramów (firewalling) oraz tłumaczenia adresów
sieciowych (NAT - masquerading). Pierwszym krokiem podczas rozpatrywania zagadnień
bezpieczeństwa jest określenie potencjalnych  wrogów i zorientowanie w metodach ich pracy.
Cele ataków włamywaczy
Poniżej pokrótce omówię najczęściej stosowane sposoby ingerencji w pracę systemów sieciowych.
Istnieją dwa cele ataków crackerów (włamywaczy komputerowych):
1. Uzyskanie dostępu do systemu.
2. Zdestabilizowanie pracy systemu komputerowego.
Pierwszy cel osiągany jest poprzez zdobycie nazwy użytkownika w systemie (login) i używanego przez
niego hasła. Czasem odbywa się to poprzez wykorzystanie błędu w oprogramowaniu danej usługi
sieciowej i zdobycie dostępu do systemu na prawach przyznanych tej usłudze. Zdobycie loginu nie jest
trudne, najczęściej wystarczy zdobyć adres poczty elektronicznej (E-mail) danego użytkownika (czasem
jest to tzw. alias, co utrudnia zadanie włamywaczowi).
Statystyki podają, że najczęściej użytkownicy sieci komputerowych stosują hasła łatwe do złamania za
pomocą metody słownikowej (korzystając ze słownika zawierającego odpowiednią liczbę słów).
Dekodowanie haseł metodą brute-force jest bardziej czasochłonne (statystycznie) i dzięki temu
łatwiejsze do wykrycia. Polega ono na sprawdzaniu wszystkich możliwych kombinacji znaków mogących
znalezć się w haśle danego systemu operacyjnego. Dlatego należy dbać, aby hasła użytkowników były
jak najbardziej skomplikowane, powinny zawierać przynajmniej duże i małe litery oraz cyfry.
38
Sieci komputerowe
Karol Krysiak
Drugi cel ataków, osiągany jest przez crackerów dzięki wykorzystaniu błędów (bug) w oprogramowaniu
serwerów usług Internetowych, czasem stosu TCP/IP. Tego typu działaniem jest ostatnio popularna
metoda unieruchamianiu serwisów WWW. Polega ona na wysyłaniu olbrzymiej liczby zapytań do
serwera WWW, który próbując je wszystkie obsłużyć zostaje zablokowany. Główną metodą
zabezpieczeń przed tego typu  problemami jest ciągła aktualizacja oprogramowania sieciowego oraz
śledzenie stron zawierających gotowe oprogramowanie służące do takich działań. Jest to zadanie
administratora sieci komputerowej i w zakresie jego obowiązków musi być czas przeznaczony na tego
typu działania.
Metody włamań.
Starą metodą jest podstawienie programu, udającego program logujący do systemu. W ten sposób
użytkownik podaje swoje hasło, a program włamywacza posiada hasło w postaci niezakodowanej. W
przypadku systemu Windows 95 (98) zainstalowanie takiego programu, udającego przykładowo system
potwierdzania hasła poczty elektronicznej, nie stanowi zbytniego problemu.
Następną metodą jest nasłuchiwanie (sniffing), polega ona na podłączeniu do sieci komputera z
uruchomionym oprogramowaniem do ściągania wszystkich ramek Ethernetowych w danym segmencie
sieci. W tym momencie cracker uzyskuje dostęp do wszystkich haseł, które transmitowane są otwartym
tekstem po sieci (np. odczytywanie poczty za pomocą protokołu POP, transmisja plików protokołem
FTP). Pod nazwą sniffing zaszeregowane są również metody podsłuchu transmisji w kablach sieciowych
lub też transmisji w kablach monitorowych. Przykładowo: istnieją urządzenia umożliwiające oglądanie
(oczywiście zaszumionego) obrazu wyświetlanego na monitorze znajdującym się kilkanaście metrów od
nas, za kilkoma ścianami.
Znanym problemem są usługi umożliwiające zdalną pracę: rlogin, rsh, rcp, których system zabezpieczeń
jest zupełnie niewystarczający. Aktualnie są coraz rzadziej stosowane i najczęściej nie wykorzystywane.
Zastąpione zostały usługą bezpiecznego połączenia ssh (Secure Shell).
Niebezpieczna może być również usługa ftp. Niewłaściwie skonfigurowany serwer ftp, może umożliwić
włamywaczowi uzyskanie ważnych informacji, przykładowo pliku zawierającego hasła.
Jedną z kategorii zagrożeń stanowią tzw. furtki (backdoors) lub włazy (trapdors) będące
nieudokumentowanymi funkcjami aplikacji, pozostawionymi przez programistów. W systemie Linux,
dzięki pełnej dostępności zródeł programów, bardzo szybko są wykrywane i usuwane tego typu
problemy.
Ponadto usługa smtp w implementacji wczesnych wersji programu sendmail okazała się niedostatecznie
bezpieczna. Przykładowo przy odpowiednim przerobieniu przesyłki, interpretowana jest ona jako
program wykonywalny i uruchamiana przez sendmaila.
Jednym z problemów może być wykorzystywanie przez administratorów serwerów WWW, skryptów CGI
pochodzących z nieznanych zródeł. Dodatkowo korzystanie z usług WWW wymaga wiele ostrożności,
ponieważ pojawia się bardzo dużo nowych technologii, których systemy zabezpieczeń nie są dobrze
znane. Typowym przykładem jest technologia ActiveX wprowadzona przez firmę Microsoft, chociaż
implementacja języka Java też nie jest wolna od błędów. Jednak znany jest fakt, że zastosowana w
przeglądarce Netscape Communicator technologia Sand Box jest o wiele bezpieczniejsza od
implementacji zabezpieczeń w Internet Explorerze.
Jedną z najgłośniejszych technik włamań było  podszywanie się (spoofing). Polega ono na wysyłaniu
datagramów IP z nieprawdziwym adresem zródłowym, przez co komputer je odbierający błędnie
identyfikuje ich nadawcę. Zabezpieczenie przed ta metodą zostało wkompilowane w jądro rutera i jest
uruchamiane zawsze przy starcie systemu.
Systemy Linuxowe są odporne na atak Ping of Death polegający na wysyłaniu dużych pakietów ICMP i
przepełnianiu stosu TCP. Aatwo rozpoznać takie pakiety ICMP po fragmentacji, która została dokonana
ze względu na rozmiar przekraczający MTU.
Teardrop i Bonk są metodami ataków (niebezpieczne głównie dla Windows NT) używającymi
nachodzących na siebie fragmentów pakietów. Ruter Linuxowy dokonuje defragmentacji i uniemożliwia
takie ataki.
Niektóre z mniej stabilnych stosów TCP są wrażliwe na datagramy z dużą liczbą fragmentów i mogą nie
odebrać ich wszystkich. Linux jest pozbawiony tego problemu. Można filtrować takie fragmenty lub
skompilować jądro rutera z opcją `IP: always defragment' ustawioną na `Y' (tylko gdy dany ruter jest
39
Sieci komputerowe
Karol Krysiak
jedyną możliwa drogą dotarcia takich pakietów).
Istnieje na pewno wiele innych metod i ciągle pojawiają się nowe. Jedynym sposobem zabezpieczenia
jest nieustanne śledzenie grup dyskusyjnych zajmujących się zagadnieniami bezpieczeństwa i
natychmiastowe reagowanie na każde nowe zagrożenie. Jest to zadanie każdego administratora sieci.
Ponadto podstawą tworzenia polityki zabezpieczeń dla danej firmy jest prawidłowe skonfigurowanie
firewalla, będącego aktualnie niezbędnym składnikiem systemu bezpieczeństwa.
Podczas projektowania bezpiecznej sieci komputerowej możemy wyróżnić trzy poziomy (strefy) dostępu
z Internetu:
I. Poziom zewnętrzny  sieć znajdująca się za firewallem z komputerami o adresach widocznych z
Internetu. W tej sieci powinny znajdować się jedynie serwery świadczące usługi Internetowe.
II. Poziom wewnętrzny  podsieć z adresów nierutowalnych, mająca połączenie z Internetem za pomocą
rutera z funkcjami firewalla i NAT (najczęściej masquerading). Tutaj powinny się znajdować komputery
pracowników firmy.
III. Poziom izolowany  sieć bez rutingu do Internetu, tutaj powinny się znajdować serwery baz danych
strategicznych dla firmy (kadry, płace, dane techniczne produkcji, biura projektowe itp.) i komputery
pracowników korzystających z tych zasobów.
Rzadko istnieje możliwość wprowadzenia takiej modelowej struktury.
Pomimo istnienia aż tylu różnych metod włamania się do systemów informatycznych, najczęściej
powodem problemów jest po prostu błąd człowieka. Głośne są przypadki pozostawiania haseł dostępu
do systemu przyklejonych pod klawiaturą, a czasem karteczką do monitora. Dla tego bardzo ważny jest
poziom zrozumienia zasad bezpieczeństwa przez użytkowników systemu i ich przestrzeganie. Ustalenie
takich zasad, przyjęcie metod ich egzekwowania, ustalenie i sztywne przestrzeganie poziomów dostępu
do systemu oraz odpowiednie jego skonfigurowanie (konstrukcja sieci, firewall) tworzy politykę
bezpieczeństwa firmy.
Firewall
Firewall   ściana ogniowa termin wzięty z konstrukcji samochodu, jest to element konstrukcji
uniemożliwiający rozprzestrzenianie się ognia w czasie pożaru na kabinę pasażerów. W sieci
komputerowej jego zadaniem jest zapewnienie bezpieczeństwa sieci w przypadku prób włamania.
Można wyróżnić dwa ogólne typy firewalli.
Firewalle filtrujące IP  na podstawie adresów IP oraz numerów portów podejmują decyzje o
zakwalifikowaniu danego datagramu jako bezpieczny. Firewalle filtrujące działają na poziomie pakietów
IP. Są zaprojektowane do kontroli przepływu bazując na adresie zródłowym, docelowym, porcie i typie
pakietu (zawartych w każdym z pakietów). Ten typ firewalli jest bardzo bezpieczny, ale nie daje kontroli
nad użytkownikami. Można udostępnić usługę, ale nie da się otrzymać informacji identyfikujących
konkretnego użytkownika z niej korzystającego, poza adresem IP komputera z którego przyszła
transmisja.
Serwery połączeniowe (proxy) - wykonują połączenie sieciowe w zamian za komputer z sieci lokalnej.
Serwery proxy pozwalają na niebezpośredni dostęp do Internetu. Dobrym przykładem jest serwer proxy
usługi WWW. Gdy łączymy się z proxy-serwerem za pomocą oprogramowania klienckiego uruchamia on
swojego klienta i dostarcza danych których zarządaliśmy. Ponieważ serwery proxy podwajają każde
połączenie, możliwe jest zapisywanie (logowanie) każdego z nich. Serwery proxy są w pełni bezpieczne,
gdyż nie dokonują bezpośredniego rutingu. Jedyną ich wadą są ogromne wymagania sprzętowe oraz
pewien brak elastyczności. W momencie pojawienia się nowej usługi, z której użytkownicy sieci chcą
skorzystać, musimy zainstalować dodatkowy program na serwerze zapewniający daną usługę.
Poniżej przedstawię dokładniejszy podział firewalli i ich cechy.
40
Sieci komputerowe
Karol Krysiak
Tradycyjne proxy (Traditional proxies)
Pakiety z sieci prywatnej nigdy nie wychodzą do Internetu i vice versa. Adresy IP w sieci prywatnej
powinny być z klas nierutowalnych. Jedyną drogą połączenia się z Internetem, jest wywołanie firewalla,
ponieważ jest on jedyną maszyną mogącą łączyć się równocześnie z obiema sieciami. Uruchamiamy
jest na nim program zwany proxy, który tego dokonuje. Dla każdej usługi która ma być dostępna z
Internetu, na firewallu musi być uruchomiony osobny program pośredniczący w jej świadczeniu.
Komputery w sieci wewnętrznej muszą być specjalnie skonfigurowane do uzyskania dostępu do
wybranych usług. Przykładowo, aby ściągnąć stronę WWW, muszą połączyć się z firewallem na port
8080 i zażądać potrzebnej strony. W tym momencie uruchamia się odpowiedni program pośredniczący,
ściąga potrzebne dane i przekazuje do odpowiedniego komputera w sieci lokalnej.
Przezroczyste proxy (Transparent proxies).
Pakiety z sieci prywatnej nigdy nie wychodzą do Internetu i vice versa. Adresy IP w sieci prywatnej
powinny być z klas nierutowalnych. Jedyną drogą połączenia się z Internetem, jest wywołanie firewalla,
ponieważ jest on jedyną maszyną mogącą łączyć się równocześnie z obiema sieciami. Uruchamiamy na
nim program zwany transparent proxy, który tego dokonuje. Jądro Linuksa kieruje pakiety do tego
programu, zamiast wysłać je bezpośrednio do Internetu. Dla każdej usługi która ma być dostępna z
Internetu, na firewallu musi być uruchomiony osobny program pośredniczący w świadczeniu takiej
usługi.
Przezroczyste proxy oznacza, że klient nie musi wiedzieć o użyciu oprogramowania typu proxy i nie
musi być specjalnie konfigurowany. Przykładowo: firewall jest skonfigurowany do przekierowywania (za
pomocą komendy ipchains) wszystkich połączeń do portu 80 na port 8080 na którym pracuje tranparent
proxy. Przy próbie pobrania dowolnej strony WWW, transmisja przekierowywana jest na port 8080, a
następnie wszystko odbywa się jak w poprzednim przykładzie.
Tłumaczenie adresów IP (NAT lub Masquerading)
Pakiety z sieci prywatnej nigdy nie wychodzą do Internetu bez specjalnej obróbki i vice versa. Adresy IP
w sieci prywatnej powinny być z klas nierutowalnych. W tym przypadku używamy specjalnych funkcji
jądra Linuksa nazywanych opisanych we wcześniejszych rozdziałach. Masquerading ma wydzielone
moduły do radzenia sobie ze skomplikowanymi protokołami jak FTP, RealAudio, Quake, itp.
Sieć publiczna
W tym przypadku, nasza sieć jest częścią Internetu, pakiety mogą poruszać się bez zmian poprzez obie
sieci. Filtrowanie pakietów jest użyte aby ograniczyć dostęp z Internetu tylko do naszych wewnętrznych
serwerów i uniemożliwić dostęp do komputerów użytkowników. Ten typ firewalla ma najmniejsze
możliwości kontroli i autoryzacji dostępu, ale jest równocześnie najbardziej elastyczny i wprowadza
najmniej ograniczeń dla użytkowników z sieci wewnętrznej.
Obsługa filtrowania pakietów przez jądro Linuksa
Komenda ipchains jest linuksową komendą używaną do konfiguracji reguł firewalla i tłumaczenia
adresów IP (NAT). Zastąpiła ona starszą ipfwadm. Aby móc wykorzystać komputer z systemem
operacyjnym Linux do filtrowania pakietów należy skompilować jądro systemu z opcjami (dla jądra z serii
2.1 lub 2.2):
CONFIG_FIREWALL = y
CONFIG_IP_FIREWALL = y
W nowszych jądrach mogą to być inne parametry konfiguracyjne. Aby stwierdzić czy jądro ma
prawidłowo wkompilowaną obsługę filtrowania datagramów, należy sprawdzić czy w katalogu /proc/net/
istnieje plik ip_fwchains, zawierający konfigurację reguł ipchains.
Przy konfigurowaniu firewalla za pomocą komendy ipchains, podstawowym pojęciem jest łańcuch
(chain). Aańcuch jest to zbiór reguł filtrujących. Istnieją trzy standardowe łańcuchy: input, forward i
output, ponadto użytkownik może tworzyć własne łańcuchy.
41
Sieci komputerowe
Karol Krysiak
Algorytm podejmowania decyzji o losie datagramu.
Algorytm przechodzenia pakietów przez system
Droga datagramów IP poprzez firewall jest bardzo skomplikowana. Najważniejsze etapy zostały
zaznaczone pogrubioną czcionką na powyższym schemacie.
Najpierw sprawdzana jest suma kontrolna datagramów (checksum), następnie testowane są one pod
kątem deformacji (sanity). Pózniej pakiety przechodzą przez łańcuch wejściowy (input chain) i jeśli
trzeba podlegają procesowi NAT (demasquerade), czyli adres rutera usuwany jest z pola  adres
docelowy i zastępowany adresem IP komputera w sieci prywatnej. Dalej na podstawie tablicy rutingu
(routing decision) lub protokołu rutującego podejmowana jest decyzja o dalszym losie pakietu. Procesy
lokalne (local process) mogą odbierać pakiety po etapie rutowania i wysyłać pakiety poprzez etap
rutowania i łańcuch wyjściowy (output chain). Jeśli pakiety nie są utworzone przez procesy lokalne, są
sprawdzane w łańcuchu przejściowym (forward chain). Jeśli pakiety od procesów lokalnych są
przekazywane do lokalnego komputera (localhosta) przechodzą przez łańcuch wyjściowy (output chains)
do interfejsu lo (lo interface - loopback). Wszystkie pakiety wydostające się z komputera muszą przejść
przez łańcuch wyjściowy (output chain).
Składnia polecenia ipchains
Pokrótce przedstawię podstawową składnię polecenia ipchains. Skupię się na opcjach użytych w plikach
konfiguracyjnych na ruterze. Dokładny opis pozostałych opcji znajduje się w publikacji
Ipchains_HOWTO
Po poleceniu ipchains następuje opcja określająca działanie całej komendy.
-F (Flush)  usuwa wpisy z wymienionego pózniej łańcucha.
-A (Append) dodaje nową regułę do łańcucha.
-I (Insert) wstawia nową regułę do łańcucha na podane miejsce.
-D (Delete) usuwa regułę z łańcucha.
Następnie występują wpisy określające zródło i cel transmisji
-s (source) zródło.
-d (destination) cel.
Adresy mogą być podawane jako nr IP lub nazwa oraz jako zakresy, np.:
199.95.207.0/24
199.95.207.0/255.255.255.0
Większość opcji umożliwia operację negacji logicznej np.:  -s ! localhost oznacza wszystkie hosty poza
lokalnym.
Protokół może być podawany jako numer lub nazwa (tcp, udp, icmp), nie jest ważne czy małe czy też
42
Sieci komputerowe
Karol Krysiak
duże litery.
-p udp
Można również podawać numer portu dla którego układamy regułę:
-p TCP -s 0.0.0.0/0 1023
Zakres portów:
-p TCP -s 0.0.0.0/0 1010:1023
-p TCP -s 0.0.0.0/0 :1023 - wszystkie porty poniżej 1023
Równie dobrze możemy podać nazwę portu:
-p TCP -s 0.0.0.0/0 www
Określamy interfejs sieciowy, którego dotyczy reguła.
-i eth0
-i eth+ oznacza wszystkie interfejsy zaczynające się na eth.
Logowanie pakietów, flaga -l .
Flaga -j specyfikuje co wykonać z pakietem pasującym do reguły. Jeśli nie ma tej flagi, to reguła jest
używana do prostego zliczania pakietów ją spełniających. Działaniami które możemy zlecić są:
ACCEPT - pozwala przejść pakietom przez firewalla.
DENY - likwiduje pakiety, tak jakby nigdy nie doszły do firewalla.
REJECT - likwiduje pakiety, (jeśli nie są to pakiety ICMP) wysyłając komunikat ICMP o nieosiągalności
celu.
MASQ - stosuje NAT (jądro musi być skompilowane z IP Masquerading enabled). Prawidłowe jedynie
dla łańcucha forward.
REDIRECT - przesyła pakiet na lokalny port, zamiast podanego w nagłówku. Używane tylko dla
protokołów TCP i UDP. Numer portu może być podany po REDIRECT co przesyła pakiety na konkretny
port. To działanie jest prawidłowe tyko dla łańcucha input (wejściowego).
RETURN - jest identyczny z natychmiastowym osiągnięciem końca łańcucha.
Ustalamy politykę dla łańcucha. Polityka określa co należy zrobić z pakietem nie pasującym do żadnej z
reguł.
ipchains -P input DENY
43


Wyszukiwarka

Podobne podstrony:
Po prostu sieci komputerowe w Windows Vista PL
Sciaga pl Sieci Komputerowe
plikus pl sieci komputerowe kompendium
Sieci komputerowe wyklady dr Furtak
4 Sieci komputerowe 04 11 05 2013 [tryb zgodności]
Sieci komputerowe cw 1
Sieci komputerowe
ABC sieci komputerowych
Sieci komputerowe I ACL NAT v2
,sieci komputerowe,Zestaw protokołów TCP IP (2)
głowacki,lokalne sieci komputerowe, pytania i odp egzamin
Diagnostyka Sieci Komputerowe

więcej podobnych podstron