Sieci komputerowe.
Sieci komputerowe.
Warstwa sieciowa - każdy pakiet w sieci z przełączaniem pakietów zawiera zarówno adres przeznaczenia, jak i adres źródłowy, potrzebne mu do wyboru trasy. Warstwa sieciowa określa trasę, którą podążą pakiet do miejsca docelowego. Warstwa sieciowa zajmuje się ruchem w sieci, przeciążeniami sieci oraz szybkościami transmisji. Do zarządzania przepływem danych w sieci warstwa sieciowa wykorzystuje mosty i routery. Zarówno protokół IP, jak i protokół IPX systemu NetWare firmy Novell funkcjonują w obszarze tej warstwy.
Warstwa transportowa - ma zapewniać niezawodne przesyłanie danych pomiędzy poszczególnymi komputerami w sieci.
Warstwa sesji - warstwa sesji stanowi najogólniej interfejs między użytkownikiem a siecią. Z reguły przed skorzystaniem z usługi sieciowej należy się zalogować. Każda taka operacja rozpoczyna tzw. sesję sieciową. Przy każdym logowaniu się warstwa sesji negocjuje i ustala warunki połączenia między procesami bądź aplikacjami, a różnymi węzłami. Ponadto warstwa sesji przeprowadza identyfikacje obu końców takiego połączenia. Oba te końce muszą przeprowadzić procedurę autoryzacji, aby móc skorzystać z określonego połączenia lub sesji. Podsumowując, warswta sesji ustala połączenia pomiędzy użytkownikami a aplikacjami sieciowymi oraz zarządza nimi.
Warstwa prezentacji - warstwa prezentacji udostępnia funkcje używane wielokrotnie przez sieć podczas komunikacji w sieci. dO funkcji tych należy współpraca z drukarkami, monitorami oraz formatami plików. Sieci internetowe nie zawierają typowej warstwy prezentacji, a więc większość funkcji tej warstwy jest wykonywanych przez aplikacje.
Internet Protocol IP - zasadniczo sieć TCP/IP udostępnia trzy zbiory usług: usługi programów użytkowych; usługi niezawodnego przesyłania; usługi bezpołączeniowego przesyłania pakietów. Najbardziej podstawowa usługa - przenoszenie palietów bez użycia połączenia nosi nazwę Internet Protocol, a zwykle oznacza się skrótem IP. Usługa ta jest zdefiniowana jako zawodny system przenoszenia pakietów bez użycia połączenia, tzn. nie ma gwarancji, że przenoszenie zakończy się sukcesem. Każdy pakiet obsługiwany jest niezależnie od innych. Pakiety z jednego ciągu, wysyłanego z danego komputera do drugiego, mogą podróżować różnymi ścieżkami, niektóre z nich mogą zostać zgubione, inne natomiast dotrą bez problemów. Pakiet może zostać zgubiony, zduplikowany, zatrzymany, lub dostarczony z błędem, a system nie sprawdzi, że coś takiego zaszło, a także nie powiadomi o tym ani nadawcy, ani odbiorcy. Protokół IP zawiera trzy definicje: definicję podstawowej jednostki przesyłanych danych, używanej w sieciach TCP/IP. Określa ona dokładny format wszystkich danych przesyłanych przez sieć; definicję operacji trasowania, wykonywanej przez oprogramowanie IP, polegającej na wybieraniu trasy, którą będą przesyłane dan; zawiera zbiór reguł, które służą do realizacji zawodnego przenoszenia pakietów. Reguły te opisują, w jaki sposób węzły i routery powinny przetwarzać pakiety, jak i kiedy powinny być generowane komunikaty o błędach oraz kiedy pakiety mogą być porzucane.
Protokół TCP - jest protokołem warstwy transportowej. Aplikacje używają tego protokołu do przesyłania danych do warswty sieciowej. Aby zapewnić niezawodną transmisję danych, warstwa transportowa dzieli dane odbierane z warswty sesji na mniejsze fragmenty wymagane przez warstwę sieciową. Po stronie odbiorcy warswta transportowa musi z powrotem połączyć podzielone dane. Wynika z tego, że struktura warswty transportowej ma duży wpływ na wielkość pakietów przesyłanych przez sieć. Protokół sterowania transmisją jest protokołem obsługi połączeniowej procesu użytkownika, umożliwiającym niezawodne i równoczesne przesyłanie strumienia bajtów. W większości internetowych programów użytkowych stosuje się protokół TCP. TCP korzysta z protokołu IP. Protokół TCP umożliwia ustalenie połączenia pomiędzy systemami końcowymi - w celu niezawodnego dostarczenia wiadomości i danych. Protokół ten charakteryzuje się cechami trybu połączeniowego, czyli możliwością sterowania przepływem, potwierdzenia odbioru, zachowania kolejności, kontroli błędów i ponownej transmisji. W celu zestawienia połączenia stacja inicjująca wysyła komunikat do drugie stacji. Ta potwierdza stacji inicjującej swoją gotowość do ustalenia sesji komunikacyjnej. W odpowiedzi pierwsza stacja potwierdza połączenie i wysyła pakiet inicjujący - w celu ustalenia parametrów transmisji. Ponieważ wszystkie usługi mogą wymieniać informacje w tym samym czasie, potrzebny jest mechanizm pozwalający określić nie tylko, które komputery ze sobą rozmawiają, ale też które usługi są wykorzystywane. Dlatego wprowadzono numery portów. Komputer chcący zrealizować jakąś usługę na innej maszynie może albo od razu próbować komunikować się z określonym portem, albo poprosić o informację, której udziela program o nazwie "portmap". "Portmap" może odmówić podania numeru portów, które nie są dostępne dla wszystkich. Także TCP wykorzystuje swój nagłówek dla usprawnienia transmisji poprzez identyfikację wybranych usług i zarządzanie nimi. Nagłówek informuje skąd i dokąd przesyłane są dane oraz jakie jest miejsce każdego pakietu w całkowitym strumieniu danych.
Protokół UDP - w zestawie protokołów TCP/IP protokół datagramów użytkownika UDP zapewnia porty protokołów używane do rozróżnienia programów wykonywanych na pojedynczej maszynie. Oprócz wysyłanych danych, każdy komunikat zawiera numer portu odbiorcy i numer portu nadawcy, dzięki czemu oprogramowanie UDP odbiorcy może dostarczyć komunikat do właściwego adresata. Do przesyłania komunikatów między maszynami UDP używa podstawowego protokołu IP i ma tę samą niepewną, bezpołączeniową semantykę dostarczania datagramów co IP - nie używa potwierdzeń w celu upewnienia się, o dotarciu komunikatów i nie zapewnia kontroli szybkości przesyłania danych między maszynami. Z tego powodu komunikaty UDP mogą być gubione, duplikowane lub przychodzić w innej kolejności niż były wysłane, ponadto pakiety mogą przychodzić szybciej niż odbiorca może je przetworzyć. Program użytkowy korzystający z UDP musi na siebie wziąć odpowiedzialność za rozwiązanie problemów niezawodności. Ponieważ sieci lokalne dają dużą niezawodność i małe opóźnienia wiele programów opartych na UDP dobrze pracuje w sieciach lokalnych, ale może zawodzić w większych intersieciach TCP/IP. Komunikat UDP nazywa się datagramem użytkownika. Nagłówek datagramu użytkownika składa się z czterech 16-bitowych pól: pola Port Nadawcy i Port Odbiorcy zawierają 16-bitowe numery portów UDP używane do odnajdywania procesów oczekujących na dany datagram. Pole Port Nadawcy jest opcjonalne; pole Długość zawiera wartość odpowiadającą liczbie bajtów datagramu UDP wliczając nagłówek i dane. Minimalna więc wartość tego pola wynosi więc 8, czyli jest długością samego nagłówka; pole Suma Kontrolna jest opcjonalne. Ponieważ jednak IP nie wylicza sum kontrolnych dla danych, suma kontrolna UDP jest jedyną gwarancją, że dane nie zostały uszkodzone. Datagram UDP jest przed wysłąniem w sieć, w znany nam już sposób, kapsułkowany w datagram IP. Nagłówek IP identyfikuje maszynę źródłową i docelową, UDP - identyfikuje porty nadawcy i odbiorcy. U odbiorcy pakiet dociera do najniższej warswty oprogramowania sieciowego i wędruje ku coraz wyższym warstwom. Każda z nich usuwa jeden nagłówek, oczekujący proces otrzymuje więc komunikat bez nagłówków.