2.1 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.
2.2 Topologie sieci komputerowych [1] . Topologia 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 [1]. Zalety i wady topologii fizycznych zostaną przedstawione w rozdziale dotyczącym rodzajów nośników stosowanych w Ethernecie. 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.
Rys 2.1. Topologia magistrali. 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.
Rys. 2.2. Topologia gwiazdy. Topologia pierścieniowa jest 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.
Rys. 2.3. Topologia pierścienia.
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 gwiaździstej 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:
2.3 Model ISO/OSI[1][2]. 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.
Rys 2.4 Transmisja danych pomiędzy kolejnymi warstwami ISO/OSI [2i].
1. 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. 2. 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). 3. 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). 4. 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ń. 5. 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. 6. 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. 7. 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.
2.4 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.
Rys 2.6. Porównanie modelu ISO/OSI i modelu TCP/IP [2i].
Podobnie jak w modelu OSI kolejne warstwy dołączają (bądź 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.
Rys. 2.7. Proces enkapsulacji danych [2]. Każda warstwa ma swoją terminologię określającą dane aktualnie przez nią obrabiane. Ponieważ 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
Tab. 2.1. Nazwy jednostek danych dla kolejnych warstw modelu TCP/IP [2]. W następnych rozdziałach pracy omówię kolejno warstwy modelu protokołu TCP/IP, ich zadania oraz technologie przez nie stosowane. HOME