Protokołem w sieci komputerowej nazywamy zbiór powiązań i połączeń jej elementów funkcjonalnych. Tylko dzięki nim urządzenia tworzące sieć mogą się porozumiewać. Podstawowym zadaniem protokołu jest identyfikacja procesu, z którym chce się komunikować proces bazowy. Z uwagi na to, że zwykle w sieci pracuje wiele komputerów, konieczne jest podanie sposobu określania właściwego adresata, sposobu rozpoczynania i kończenia transmisji, a także sposobu przesyłania danych. Przesyłana informacja może być porcjowana - protokół musi umieć odtworzyć informację w postaci pierwotnej. Ponadto informacja może z różnych powodów być przesłana niepoprawnie - protokół musi wykrywać i usuwać powstałe w ten sposób błędy. Różnorodność urządzeń pracujących w sieci może być przyczyną niedopasowania szybkości pracy nadawcy i odbiorcy informacji - protokół powinien zapewniać synchronizację przesyłania danych poprzez zrealizowanie sprzężenia zwrotnego pomiędzy urządzeniami biorącymi udział w transmisji. Ponadto z uwagi na możliwość realizacji połączenia między komputerami na różne sposoby, protokół powinien zapewniać wybór optymalnej - z punktu widzenia transmisji - drogi.

Protokoły komunikacyjne definiowane są w kontekście konkretnej warstwowej architektury sieci. Każda z warstw określa tu protokół do obsługi funkcji lub podsystemu procesu komunikacyjnego. Najpopularniejsze protokoły komunikacyjne to: model OSI (Open System Interconnection) zdefiniowany przez ISO, SNA (System Network Architecture) firmy IBM, AppleTalk firmy Apple, DECnet firmy DEC oraz protokoły Internetu np. TCP/IP. Wszystkie te protokoły istnieją na każdym poziomie i spełniają zadania służące zrealizowaniu komunikacji pomiędzy dwoma systemami, przez cały okres kiedy oba systemy wykorzystują podobne protokoły. Zwykle stosy protokołów składają się z około siedmiu warstw które można podzielić na: protokoły aplikacji, transportowe oraz sieciowe.

 

Protokoły aplikacji.

 

Protokoły aplikacji - obejmują warstwy aplikacji, prezentacji i sesji. Służą do wzajemnego oddziaływania aplikacji i wymiany danych. Najpopularniejsze protokoły aplikacji to:

 

  • APPC (Advanced Program-to-program Communication) lub inaczej LU 6.2 firmy IBM;
  • Virtalny Terminal OSI: FTAM (File Transfer Access and Mangement), DTP (Distrubuted Transaction Procesing, X.400 (Message Handling System) oraz X.500 (Directory Services);
  • Internetowe i Unixowe sieciowe systemy plików: SMTP (Simple Mail Transfer Protocol), FTP (File Transfer Protocol), Telnet oraz SNMP (Simple Network Management Protocol);
  • NCP (Novell NetWare Network Core Protocol);
  • Microsoft Server Message Blocks: NetBios;
  • AppleTalk Apple Share: AFP (Apple Talk Filing Protocol), ADSP (Apple Talk Data Stream Protocol), ASP (Apple Talk Session Protocol), PAP (Printer Acess Protocol), oraz ZIP (Zone Information Protocol).

Protokoły transportowe.

 

Protokoły transportowe - służą do przesyłania danych w sieciach, zapewniają wymianę danych pomiędzy systemami końcowymi, w których systemy te utrzymują sesję lub połączenia zapewniając stałą, sekwencyjną wymianę danych. Przykładowe protokoły to:

 

  • APPN (Advanced Peer-to-Peer Networking) firmy IBM;
  • TCP (Transmission Control Protocol), część zestawu protokołów TCP/IP;
  • SPX, część zestawu protokołów SPX/IPX;
  • Interfejsy Microsoft NetBIOS i NetBEUI;
  • OSI COTS (Connection-Oriented Transport Service), CLTS (Connectionless Transport Service);
  • AppleTalk RTMP (Rounting Table Maintenance Protocol), AEP (AppleTalk Echo Protocol), ATP (AppleTalk Transaction Protocol), NBP (Name Binding Protocol).

Protokoły sieciowe.

 

Protokoły sieciowe - zapewniają usługi łączy systemów komunikacyjnych, obsługują adresowanie, informacje routingu, weryfikację błędów oraz żądania retransmisji. Obejmują także procedury dostępu do sieci, określone przez wykorzystywany rodzaj sieci. Najpopularniejsze protokoły sieciowe to:

 

  • IP (Internet Protocol), część zestawu protokołów TCP/IP;
  • APPN (Advanced Peer-to-Peer Networking) firmy IBM;
  • CONS (OSI Connection-Oriented Network Service);
  • CLNS (OSI Connectionless Network Service);
  • IPX, część zestawu protokołów SPX/IPX firmy Novell;
  • Interfejsy Microsoft NetBEUI;
  • AppleTalk DDP (Datagram Delivery Protocol).

Trzy najczęściej używane protokoły w sieciach lokalnych i w internecie to TCP/IP, SPX/IPX i NetBEUI, poniżej opisze je dokładniej.

 

TCP/IP

 

OSI - na początek model OSI, czyli powiązania między protokołami TCP/IP. Chyba najczęściej używany, zarówno dla sieci lokalnych jak i połączenia z internetem. Powiązania te najlepiej przedstawi poniższy rysunek.

[ model OSI ]

Opisze tu w skrócie występujące protokoły w modelu OSI.

 

  • TCP - Protokół sterowania transmisją (ang. Transmission Control Protocol) jest protokołem obsługi połączeniowej procesu użytkownika, umożliwiającym niezawodne i równoczesne (ang. full-duplex) przesyłanie strumienia bajtów. W większości internetowych programów użytkowych stosuje się protokół TCP. TCP korzysta z protokołu IP, więc całą rodzinę protokołów nazywamy TCP/IP.
  • UDP - Protokół datagramów użytkownika (komunikaty przesyłane między systemami jeden niezależnie od drugiego) (ang. User Datagram Protocol) jest protokołem obsługi bezpołączeniowej procesów użytkownika. W odróżnieniu od protokołu TCP, który jest niezawodny, protokół UDP nie daje gwarancji, że datagramy UDP zawsze dotrą do celu.
  • ICMP - Protokół międzysieciowych komunikatów sterujących (ang. Internet Control Message Protocol) obsługuje zawiadomienia o błędach i informacje sterujące między bramami (ang. gateway) a stacjami (ang. host). Chociaż komunikaty ICMP są przesyłane za pomocą datagramów IP, są one zazwyczaj generowane i przetwarzane przez oprogramowanie sieciowe TCP/IP, a nie przez procesy użytkownika.
  • IP - Protokół międzysieciowy (ang. Internet Protocol) obsługuje doręczanie pakietów dla protokołów TCP, UDP oraz ICMP. Procesy użytkownika normalnie nie muszą komunikować się z warstwą IP.
  • ARP - Protokół odwzorowania adresów (ang. Address Resolution Protocol) służy do odwzorowania adresów internetowych na adresy sprzętowe. Ten protokół i protokół RARP nie jest używany we wszystkich sieciach, lecz tylko w niektórych.
  • RARP - Protokół odwrotnego odwzorowywania adresów (ang. Reverse Address Resolution Protocol) służy do odwzorowywania adresów sprzętowych na adresy internetowe.

IPX/SPX

 

IPX/SPX - jest to zestaw protokołów firmy Novell, bierze on nazwę od swoich dwóch głównych protokołów: międzysieciowej wymiany pakietów IPX i sekwencyjnej wymiany pakietów SPX. Ten firmowy stos protokołów został oparty na protokole systemów sieciowych firmy Xerox, wykorzystywanym w pierwszej generacji Ethernet. Wymiana IPX/SPX zyskała na znaczeniu we wczesnych latach 80, jako integralna część systemu Novell Netware. Netware stał się faktycznym standardem sieciowego systemu operacyjnego dla sieci lokalnych pierwszej generacji. Protokół IPX w dużym stopniu przypomina IP. Jest bezpołączeniowym protokołem datagramowym, który nie wymaga ani nie zapewnia potwierdzenia każdego transmitowanego pakietu. Protokół IPX polega na SPX w taki sam sposób, w jaki protokół IP polega na TCP w zakresie porządkowania kolejności i innych usług połączeniowych warstwy 4. Stos protokołów IPX/SPX obejmuje cztery warstwy funkcjonalne: dostępu do nośnika, łącza danych, Internetu i aplikacji. Głównym protokołem warstwy aplikacji jest protokół rdzenia NetWare ( NCP). Protokół NCP można bezpośrednio sprzęgnąć zarówno z protokołem SPX, jak i IPX. Jest wykorzystywany do drukowania, współdzielenia plików, poczty elektronicznej i dostępu do katalogów. Innymi protokołami warstwy aplikacji są: protokół informacyjny trasowania, firmowy protokół ogłoszeniowy usługi i protokół obsługi łącza systemu NetWare. Protokół warstwy Internetu SPX jest protokołem połączeniowym i może być wykorzystywany do przesyłania danych między klientem serwerem, dwoma serwerami czy dwoma klientami. Tak jak w przypadku TCP, protokół SPX zapewnia niezawodność transmisjom IPX, zarządzając połączeniem i udostępniając sterowanie strumieniem danych, kontrolę błędów i porządkowanie kolejnych pakietów.

 

NetBEUI

 

NetBEUI - interfejs NetBEUI został opracowany przez IBM i wprowadzony na rynek w 1985 roku. Jest stosunkowo małym ale wydajnym protokołem komunikacyjnym LAN. NetBEUI jest wyłącznie protokołem transportu sieci LAN dla systemów operacyjnych Microsoft. Nie jest trasowany. Dlatego jego implementacje ograniczają się do warstwy 2, w których działają wyłącznie komputery wykorzystujące systemy operacyjne firmy Microsoft. Aczkolwiek staje się to coraz mniejszą przeszkodą, to jednak ogranicza dostępne architektury obliczeniowe i aplikacje technologiczne. Zalety korzystania z protokołu NetBEUI są następujące: Komputery korzystające z systemów operacyjnych lub oprogramowania sieciowego firmy Microsoft mogą się komunikować. NetBEUI jest w pełni samodostrajającym się protokołem i najlepiej działa w małych segmentach LAN. Ma minimalne wymagania odnośnie pamięci. Zapewnia doskonałą ochronę przed błędami transmisji, a także powrót do normalnego stanu w razie ich wystąpienia. Wadą protokołu NetBEUI jest fakt, że nie może być trasowany i niezbyt dobrze działa w sieciach WAN.