Protokoły sieciowe Aby komputery połączone w sieć mogły się ze sobą komunikować, muszą korzystać ze wspólnego języka, czyli tak zwanego protokołu. Protokół stanowi zestaw zasad i standardów, które umożliwiają komunikację pomiędzy komputerami w sieci. Obecnie stosowanych jest wiele typów protokołów, różniących się między sobą właściwościami i możliwościami. Nie każdy protokół jednak jest kompatybilny z każdym typem komputera lub systemem operacyjnym. Protokoły w swojej istocie stanowią element oprogramowania i jako takie muszą zostać zainstalowane w składnikach sieci, które mają z nich korzystać. Komputery mogą komunikować się ze sobą tylko pod warunkiem, że korzystają z tego samego protokołu. Jeśli protokół, wykorzystywany w sieci przez jeden komputer, nie jest kompatybilny z protokołem, wykorzystywanym przez drugi komputer, to komputery te nie mogą wymienić między sobą informacjami. Aby zrozumieć poszczególne funkcje różnych protokołów, konieczne jest poznanie standardowego modelu przeznaczonego dla sieci modelu OSI (Open Systems Interconnection). Model ten składa się z zestawu siedmiu warstw protokołów, z których każda odpowiada ze realizację pewnych funkcji, umożliwiających transmisję danych w obrębie sieci. Zgodnie z modelem OSI, aby możliwa była prawidłowa transmisja danych w sieci, kilka protokołów musi pracować razem. W rzeczywistości efekt ten uzyskuje się poprzez zastosowanie stosu protokołów. Stos protokołów stanowi zestaw protokołów, które pracują razem, umożliwiając transmisję danych poprzez sieć komputerową. Typy protokołów Stosowane obecnie protokoły mogą należeć do jednej z dwóch grup protokołów: Otwartych Charakterystycznych dla danego producenta Protokoły otwarte stanowią grupę protokołów, napisanych w oparciu o powszechnie znane standardy przemysłowe. Protokół, który został stworzony zgodnie z tymi standardami, jest kompatybilny ze wszystkimi innymi protokołami, napisanymi w oparciu o te same standardy. Protokoły otwarte nie są protokołami własnościowymi nie stanowią niczyjej własności. Typowym przykładem protokołu należącego do tej grupy jest protokół TCP/IP (Transmission Coltrol Protocol/Internet Protocol), który jest podstawowym protokołem transmisji w sieci Internet. Grupa protokołów charakterystycznych dla producenta obejmuje protokoły własnościowe, opracowane przez różnych producentów i przeznaczone do pracy w specyficznym środowiskach. Na przykład firma Novell stworzyła zestaw protokołów IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange), mając na uwadze specyfikację architektury NetWare.
Model OSI (Open Systems Interconnection) Zapotrzebowanie na międzynarodowe standardy technologiczne zaowocowało powstaniem organizacji ISO (International Organization for Standardization). Organizacja ISO miała doprowadzić do standaryzacji metod, za pomocą których komputery na całym świecie mogą się ze sobą komunikować. Aby to zrobić, organizacja ISO stworzyła model komunikacji sieciowej, zwany modelem OSI. W modelu OSI proces komunikowani się w sieci został podzielony na siedem warstw. Podczas przesyłania danych w sieci każda warstwa pełni inną funkcję. Dane, przed przekazaniem przez poszczególne warstwy modelu OSI, są dzielone na pakiety. Pakiet stanowi jednostkę informacji, która jest przesyłana w całości przez sieć z jednego komputera na drugi. Pakiet przekazywany jest w sieci pomiędzy warstwami, przy czym na każdej warstwie dodawane są do niego pewne dodatkowe informacje. To, na jakiej warstwie pracuje dany protokół, determinuje jego funkcję. Niektóre protokoły pracują tylko na poszczególnych warstwach protokołu OSI.
Warstwa OSI Funkcja Warstwa aplikacji Warstwa prezentacji Określa, w jaki sposób aplikacje współdziałają ze sobą Dodaje podstawowe formatowanie do prezentacji danych Warstwa sesji Tworzy kanały komunikacyjne i zarządza nimi Warstwa transportu Sprawdza poprawność przesłanych danych Warstwa sieci Warstwa łącza danych Adresuje wiadomości wewnątrz i pomiędzy sieciami Określa sposób uzyskiwania dostępu do fizycznego medium, takiego jak przewód sieciowy Warstwa fizyczna Przesyła dane przez fizyczne medium Każdej warstwie stosu protokołów przyporządkowany jest jeden protokół, odpowiedzialny za wykonanie zadania należącego do tej warstwy. Jednak ogólnie rzecz biorąc, odpowiedzialność za wykonanie poszczególnych zadań, zapewniających prawidłową komunikację, spoczywa na trzech typach protokołów: Protokoły aplikacji protokoły aplikacji zapewniają wymianę danych pomiędzy aplikacjami pracującym w sieci. Przykładem często stosowanego protokołu aplikacji jest FTP (File Transfer Protocol) oraz SMTP (Simple Mail Transfer Protocol) Protokoły transportu protokoły transportu odpowiadają za prowadzenie sesji komunikacyjnych pomiędzy komputerami oraz zapewniają, że dane są poprawnie przekazywane pomiędzy komputerami. Często stosowanym protokołem transportu jest protokół TCP (Transport Control Protocol) Protokoły sieci protokoły sieci zapewniają tzw. usługi połączeniowe. Protokoły te określają reguły komunikowania się w poszczególnych środowiskach sieciowych. Często stosowanym protokołem, odpowiedzialnym za usługi sieciowe, jest protokół IP (Internet Protocol)
Protokoły rutowalne i nierutowalne W dużych sieciach trudno jest efektywnie zarządzać procesem komunikacji z powodu zbyt dużego natężenia ruchu sieci. Administratorzy sieci mogą rozwiązać ten problem, dzieląc dużą sieć na kilka segmentów sieci (segmenty to mniejsze sieci, które po połączeniu tworzą dużą sieć). Dane w sieci mogą być przesyłane z jednego segmentu sieci do drugiego wzdłuż dowolnej z istniejących ścieżek. Przesłanie danych między segmentami sieci nosi nazwę rutingu. Jednak nie każdy protokół obsługuje ruting. Protokoły można podzielić na dwie kategorie, w zależności od tego, czy są w stanie obsługiwać ruting czy też nie.
Dzięki temu, że część protokołów jest w stanie obsługiwać ruting, możliwa jest transmisja danych pomiędzy komputerami znajdującymi się w różnych segmentach sieci. Istnieją różne typy transmisji danych. Ponieważ nie wszystkie komputery w sieci muszą odbierać wszystkie wysłane informacje, kontrolując typ transmisji można do pewnego stopnia określić, które komputery mogą otrzymać i przetwarzać dane. W zależności od tego, czy określone protokoły są rutowalne czy też nierutowalne, mogą zostać podzielone na dwie kategorie. Protokoły rutowalne umożliwiają komunikację pomiędzy sieciami LAN lub segmentami sieci. Przykładowymi rutowalnymi protokołami są protokoły TCP/IP oraz IPX/SPX Protokoły nierutowalne nie zapewniają transmisji danych z jednego segmentu sieci do innego. Komputery korzystające z protokołów nierutowalnych mogą komunikować się tylko z komputerami znajdującymi się w tym samym segmencie. Protokoły NetBEUI oraz DLC (Data Link Control) są przykładami protokołów nierutowalnych Typy transmisji danych Protokoły rutowalne umożliwiają transmisję danych pomiędzy komputerami, znajdującymi się w różnych segmentach sieci. Jednak z powodu dużego natężenia ruchu w sieci, wywołanego na przykład wprowadzeniem aplikacji multimedialnych, następuje obniżenie ogólnej efektywności pracy sieci, gdyż zmniejsza się prędkość transmisji danych. Natężenie ruchu w sieci różni się w zależności od przyjętego typu transmisji. Wyróżnia się następujące typy transmisji: Unicast w transmisji tej jest jeden nadawca i jeden odbiorca Broadcast w trakcie transmisji danych broadcast, pojedyncza kopia danych jest przesyłana do wszystkich klientów, znajdujących się w tym samym segmencie sieci, co komputer wysyłający; transmisja typu broadcast nie jest jednak zbyt efektywna, jeśli dane mają zostać wysłane tylko do części komputerów w segmencie, ponieważ przy tym typie transmisji dane się wysyłane do całego segmentu - powoduje to niepotrzebne obniżenie wydajności sieci, ponieważ każdy klient musi przetwarzać w ten sposób dane Multicast w przypadku transmisji typu multicast, pojedyncza kopia jest przesyłana tylko do klientów, którzy ich żądali w efekcie sieć nie jest niepotrzebnie obciążona
Podstawowe protokoły TCP/IP Stos protokołów TCP/IP obsługuje ruting i pozwala komunikować się komputerom leżącym w różnych segmentach sieci. Dzięki tej funkcji, stos protokołów TCP/IP jest standardowym protokołem komunikacji w sieci Internet.
Stos protokołów TCP/IP musi jednak zostać skonfigurowany na każdym komputerze, na którym ma być wykorzystywany jako protokół komunikacyjny. Zalety stosu protokołów TCP/IP: Należy do grupy protokołów otwartych Jest protokołem rutowalnym Zawiera zestaw narzędzi, pozwalających łączyć różne systemy operacyjne Wady stosu protokołów TCP/IP: Musi być skonfigurowany na każdym komputerze Podstawowe protokoły IPX/SPX Stos protokołów IPX/SPX (Internetwork Packet Exchange/Sequenced Packet Exchange) został stworzony specjalnie dla architektury NetWare. Na stos protokołów IPX/SPX składa się protokół IPX oraz protokół SPX. Protokół IPX określa schemat adresowania, wykorzystany w sieci NetWare, natomiast protokół SPX zapewnia bezpieczeństwo i niezawodność pracy protokółu IPX. Protokół IPX jest protokołem obsługującym warstwę sieci i pełni tą samą funkcję, co protokół IP w stosie TCP/IP. Właściwości stosu protokołów IPX/SPX: Zwykle jest stosowany w sieciach, w których pracują serwery NeTWare Należy do protokołów rutowalnych
Podstawowe protokoły NetBEUI Protokół NetBEUI (NetBIOS Enhanced User Interface) był jednym z pierwszych protokołów przeznaczonych dla sieci składających się z komputerów osobistych. Protokół ten został zaprojektowany w oparciu o interfejs NetBIOS (Network Basic Input/Output System), dzięki czemu jest niewielkim, efektywnym protokołem, nadającym się do pracy w sieci LAN, obejmujących od 20 do 200 komputerów, które nie muszą przesyłać danych do innych podsieci. Obecnie protokół NetBEUI jest wykorzystywany wyłącznie w niewielkich, niewymagających rutingu sieciach, zawierających komputery pracujące w różnych systemach operacyjnych. Główną wadą tego protokołu jest brak obsługi rutingu. Zalety protokołu NetBEUi: Niewielki rozmiar stosu Brak konieczności przeprowadzania konfiguracji Duża prędkość przesyłania danych w sieci Kompatybilność z wszystkimi systemami operacyjnymi firmy Microsoft Podstawowe protokoły AppleTalk Stos protokołu AppleTalk jest własnością firmy Apple Komputer i został zaprojektowany, aby zapewnić komputerom Apple Macintosh możliwość współdzielenia plików oraz drukarek w środowisku sieciowym. Niektóre właściwości stosu protokołów AppletTalk:
Pozwala komputerom klienckim firmy Macintosh uzyskać dostęp do serwera pracującego w systemie Windows 2000 Obsługuje ruting Pozwala uzyskiwać dostęp do usługi wydruku na serwerze pracującym w systemie Windows 2000, jeśli na serwerze została zainstalowana usługa Print Server for Macintosh Protokół ATM (Asynchronous Transfer Mode) Protokół ATM pozwala na przesyłanie z dużą prędkością różnych rodzajów danych w sieci. Technologia ATM została opracowana na bazie międzynarodowych standardów równoległej transmisji danych, dźwięku oraz obrazu wideo z dużą prędkością. Komunikację w sieci z wykorzystaniem protokołu ATM umożliwiają urządzenia zwane przełącznikami ATM. Komputery klienckie komunikują się ze sobą za pomocą przełączników ATM. Niektóre właściwości protokołu ATM: Pozwala jednocześnie przesyłać dźwięk, klipy wideo oraz dane przez pojedyncze połączenie sieciowe; protokół ten umożliwia równolegle przesyłać dane, pochodzące z różnych źródeł komunikacji elektronicznej, takich jak rozmowy telefoniczne, filmy, wiadomości poczty elektronicznej oraz pliki znajdujące się na serwerze sieci Web Zapewnia dużą prędkość komunikacji
Gwarantuje, że żadem z poszczególnych typów danych nie zajmie w całości linii efektywnie przydziela przepustowość Protokół IrDA (Infrared Data Association) Stos protokołów IrDA stanowi grupę protokołów, umożliwiających dwukierunkową, bezprzewodową transmisję o dużej prędkości w podczerwieni na niewielkiej odległości. Stos protokołów IrDA pozwala komputerom pracującym w systemie Windows łączyć się z urządzeniami peryferyjnymi lub innym komputerami, bez używania przewodów. Protokół ten umożliwia użytkownikom przesyłanie informacji i współdzielenie zasobów, takich jak drukarki, kamery, komputery przenośne, komputery stacjonarne oraz urządzenia PDA (Personal Digital Assistant). Właściwości bezprzewodowej komunikacji IrDA: Międzynarodowy standard dla połączeń bezprzewodowych Łatwa implementacja i wykorzystywanie Brak zagrożeń ze strony promieniowania podczerwonego Nie wytwarza zakłóceń elektromagnetycznych Małą podatność na zakłócenia sygnału ze strony komunikacji przewodowej
Protokoły zdalnego dostępu dial-up System Windows oobsługuje protokoły zdalnego dostępu dial-up, między innymi takie jak SLIP oraz PPP, pozwalając klientom łączyć się z różnymi serwerami zdalnego dostępu. Protokół SLIP Protokół SLIP (Serial Line Internet Protocol) umożliwia klientom zdalnego dostępu łączyć się z serwerami zdalnego dostępu poprzez modem. Protokół ten stanowi przemysłowy standard protokołu, który adresuje połączenia TCP/IP realizowane przez łącze szeregowe. Protokół SLIP jest obsługiwany przez usługę Routing and Remote Access i daje klientom dostęp do usług sieciowych. Ograniczenia protokołu: Obsługuje tylko protokół TCP/IP Wymaga statycznego adresu IP Wymaga tekstowych sesji uwierzytelniania logowania oraz systemu obsługi skryptów Wysyła hasła uwierzytelniania jawnym tekstem
Protokół PPP Jest rozszerzeniem oryginalnej specyfikacji SLIP, obsługuje szyfrowany proces uwierzytelniania i stanowi standardową metodę wysłania danych w sieci poprzez połączenia punkt-punkt. Architektura stosu protokołów PPP pozwala klientom korzystać z dowolnej kombinacji protokołów transportowych, takich jak NetBEUI, TCP/IP oraz IPX/SPX. Protokoły zdalnego dostępu VPN Mechanizm wirtualnych sieci prywatnych VPN pozwala realizować połączenia zdalnego dostępu, bez konieczności korzystania ze specjalnego sprzętu realizującego połączenia telefoniczne, takie jak modemy. Sieci VPN korzystają z dodatkowych protokołów, które pozwalają użytkownikom połączyć się z sieciami LAN poprzez ich dotychczasowe połączenie z Internetem lub połączenie dial-up. Połączenia takie mogą być bezpieczne, nawet jeśli odbywają się za pośrednictwem sprzętu, stanowiącego element Internetu. Protokoły VPN hermetyzują pakiety danych protokołów TCP/IP, IPC/SPX lub NetBEUI wewnątrz pakietów protokołu PPP. W sieciach VPN połączenia nawiązuje się za pomocą protokołu PPTP albo protokołu L2TP. Protokół PPTP (Point-to-Point Tunneling Protocol) Protokół PPTP umożliwia bezpieczne przesyłania hermetyzowanych danych od klienta PPTP do serwer PPTP poprzez sieć TCP/IP. Na czas transmisji przez sieć TCP/IP, protokół PPTP hermetyzuje ramki PPP w pakietach TCP/IP. Dzięki hermetyzacji możliwe staje się wykorzystanie wszystkich funkcji PPP. Do szyfrowania wykorzystuje się mechanizm MPPE (Microsoft Point-to- Point). Protokół L2TP (Layer Two Tunneling Protocol) Protokół L2TP jest przemysłowym standardem protokołu tunelowego. Podobnie jak protokół PPTP, protokół L2TP wykorzystuje uwierzytelnienie i mechanizm kompresji protokołu PPP. Do szyfrowania wykorzystuje IPSec (Internet Protocol Security zapewnia dodatkową warstwę bezpieczeństwa)