Podstawowe protokoły występujące w TCP/IP

Model TCPI/IP (RFC 1180) podobnie jak ISO-OSI składa się kilku warstw, z których każda reprezentuje swoją funkcję. Oczywiście jest to tylko model, swego rodzaju układanka sieciowa, umożliwiająca producentom urządzeń sieciowych skoncentrowanie się na określonym fragmencie, np. routerach . Przeciętnemu użytkownikowi umożliwia to lepsze zrozumienie działania poszczególnych warstw.
Model TCP/IP został opracowany dla Departamentu Obrony Stanów Zjednoczonych w latach 80. Obecnie składa się z czterech warstw, z których każdą można powiązać z modelem ISO-OSI.

Do podstawowych protokołów występujących w TCP/IP zaliczamy:

Wszystkie występujące w TCP/IP aplikacje (7.Warstwa aplikacji) działają dzięki wykorzystaniu odpowiednich protokołów.
  1. FTP(ang. File Transfer Protocol) ( RFC959) - umożliwia przesyłanie oraz odbieranie plików ze zdalnych komputerów, na których została zainstalowana usługa FTP. FTP używa portów o numerach 20 oraz 21 . Typowym zastosowaniem może być sytuacja, w której Twój znajomy może na swojej stacji roboczej uruchomić usługę FTP i udostępnić w jej ramach np. film. Łącząc się z serwerem FTP znajomego poprzez klienta zainstalowanego na swoim komputerze, możesz z dowolnego miejsca w sieci pobrać udostępniony przez niego plik.
  2. HTTP(ang. Hyper Text Transfer Protocol) (RFC2616) - działa na porcie 80 i dzięki współpracy z siecią WWW (ang. World Wide Web) umożliwia przeglądanie stron internetowych . Odpowiednie strony internetowe są umieszczane na serwerach WWW i udostępniane. Klient wyposażony w przeglądarkę internetową może połączyć się z takim serwerem i przeglądać zawartość strony m.in. poprzez wykorzystanie protokołu HTTP.
  3. DHCP(ang. Dynamie Host Configuration Protoeol) (RFC2131) - służy do automatycznego przydzielania adresów IP komputerom pracującym w sieci. Działa na zasadzie klient-serwer, gdzie serwer działający na porcie 67 przydziela automatycznie adres IP klientowi działającemu na porcie 68.
  4. SMTP (ang. Simple Mail Transport Protocol) (RFC2821) - służy do przesyłania poczty elektronicznej wyłącznie w postaci tekstowej. Najczęściej działa razem z protokołem POP3. Do komunikacji wykorzystuje port 25.
  5. POP3 (ang. Post Office Protocol) (RFC 1939) - używa portu 110 i jest odpowiedzialny za odbieranie poczty elektronicznej.
  6. SSL (ang. Seeure Soekets Layer) - umożliwia korzystanie z szyfrowanej komunikacji i pomiędzy klientem a serwerem. Wykorzystuje port 443.
  7. DNS (ang. Domain Name System) (RFC 1034) - umożliwia odwzorowywanie nazwy na adres IP. Odwzorowanie realizowane jest za pomocą serwerów DNS. W przypadku, gdy klient chce się połączyć z daną stroną WWW, występuje do serwera DNS o przekształcenie nazwy hosta na adres IP. Serwer dostarcza adres IP, na który mogą już być wysłane pakiety danych. Serwery DNS są dużym ułatwieniem dla przeciętnego użytkownika, ponieważ nie musi on znać adresów IP poszczególnych witryn internetowych, lecz zapamiętuje ich nazwy, które są znacznie prostsze do zapamiętania. Na przykład : gdyby nie protokół DNS, to aby połączyć się ze stroną wydawnictwa Helion, trzeba by było wpisać adres IP:213.186.88.113. Protokół DNS sprawia, że użytkownik w przeglądarce wpisuje po prostu helion.pl.
Jak zauważyłeś, w nazwie występuje również kropka oraz znaki, np. com. Znaki po kropce to tzw. domena najwyższego poziomu. Służy m.in. do identyfikowania, z jakim rodzajem strony mamy do czynienia lub w jakim kraju jest umiejscowiona. Na przykład w naszym kraju domeną najwyższego poziomu jest pl. W poniższej tabeli znajdują się przykładowe domeny najwyższego poziomu.

Przykłady domen najwyższego poziomu.

DOMENA OPIS DOMENY
.pl Polska
.gov organizacja rządowa np. w Polsce (gov.pl)
.no Norwegia
.ar Argetyna
.au Australia

Warstwa transportowa dostarcza dane z komputera źródłowego do docelowego, wykorzystując dwa protokoły: TCP (ang. Transmission control Protocol) (RFC793) oraz UDP (ang. User Datagram Protocol) (RFC768). Określenie "dostarcza dane do komputera" jest czysto teoretyczne. W praktyce dane docierają nie do komputera, lecz do procesu aplikacji, który jest na nim uruchomiony.
Wyróżniamy dwie podstawowe różnice między protokołami TCP oraz UDP. Pierwsza związana jest z wiarygodnością dostarczanych danych, druga z typem usługi połączeniowej.

Protokół TCP

Protokół TCP jest protokołem wiarygodnym, zapewniającym dostarczenie danych do celu. Oczywiście nie oznacza to, że dane dotrą do komputera docelowego zawsze, bez względu na wszystko. Wiarygodność tego protokołu polega na tym, że dane, które dotarły do celu, są natychmiast potwierdzane. Komputer źródłowy nie prześle następnych danych bez otrzymania potwierdzenia wcześniejszych. W przypadku gdy dane dotrą uszkodzone lub niepełne, TCP może rozpocząć proces retransmisji. TCP jest protokołem połączeniowym; oznacza to otwieranie połączenia za każdym razem, kiedy przesyłane są dane. Połączenie utrzymywane jest do momentu zakończenia transmisji.
Ponadto protokół TCP umożliwia odbiorcy sterowanie szybkością wysyłania danych przez nadawcę. Funkcję tę nazywa się kontrolą przepływu (ang. flow control). Jest przydatna w sytuacji, gdy nadawca chce wysłać bardzo dużą ilość danych do odbiorcy, ale od biorca nie nadąża ich przetwarzać. Wówczas odbiorca może żądać od nadawcy spowolnienia transmisji danych, aby nie doszło do przepełnienia pamięci.
Kontrola przepływy może być realizowana na dwa podstawowe sposoby jako:
  • Kontrola przepływu za pomocą dynamicznie dostosowanych okien.
  • Kontrola przepływu za pomocą wstrzymywania potwierdzeń.
Druga forma polega na wstrzymaniu potwierdzenia przez hosta odbierającego aż do czasu, kiedy wszystkie dane zostaną przetworzone. Jeśli host wysyłający nie otrzyma potwierdzenia, me może wysłać dalszych danych. Chroni tym samym hosta odbierającego przed zalaniem danymi i zapełnieniem jego pamięci.

Protokół UDP

Protokół UDP jest protokołem niewiarygodnym. Oznacza to, że wysłane dane nie są potwierdzane. Dlatego podczas korzystania z protokołu UDP nie ma pewności, że dane zostały dostarczone. UDP nie posiada mechanizmu odpowiedzialnego za sekwencjonowanie danych, dlatego dane mogą docierać do celu w różnej kolejności.
Można by pomyśleć, że protokół UDP jest gorszy od TCP, jednak nic bardziej mylnego. To, co wydaje się wadą w UDP, tak naprawdę czyni z niego potężne narządzie. Dzieje się tak dlatego, że UDP nie wymaga ciągłych czynności otwierania i zamykania połączenia. Z tego powodu UDP w niektórych zastosowaniach (np. streaming video) jest protokołem znacznie szybszym i wydajniejszym niż TCP.

Działanie portów w protokołach TCP i UDP

Działanie tych dwóch protokołów opiera się na wykorzystaniu numerów portów do ustalania, do jakiej aplikacji przesłać otrzymane pakiety. Każda aplikacja używa odrębnego numeru portu lokalnego. Porty zostały podzielone na odpowiednie typy wykorzystywane do różnych celów.

Tak więc wyróżniamy:
  • Porty dobrze znane, zawierające się w zakresie od 0 do 1023.
  • Porty dynamiczne, zawierające się w zakresie od 1024 do 65535.
Wśród portów dynamicznych możemy wyróżnić jeszcze grupę tzw. portów zarejestrowanych, które zawierają się w zakresie od 1024 do 49151.
Porty dobrze znane (ang. well-known port) służą do komunikacji np. pomiędzy klientem a serwerem. Dzieje się tak, ponieważ klient wykorzystujący zasoby serwera musi wcześniej znać port, którego ma użyć w celu przesłania danych poprzez określoną usługę. Na serwerze może być uruchomionych kilkadziesiąt usług TCP, dlatego klient musi znać port, aby dane zostały poprawnie przesłane oraz zinterpretowane. Porty dobrze znane z reguły wykorzystywane są przez takie usługi jak WWW, FTP lub poczta elektroniczna.

Tabela z listą najczęściej używanych portów dobrze znanych.

PORT PROTOKÓŁ TRANSPORTU PROTOKÓŁ APLIKACJI
20 TCP FTP
21 TCP FTP
23 TCP TELNET
25 TCP SMPT
53 TCP/UDP DNS
69 UDP TFTP
80 TCP HTTP
110 TCP POP3
161 UDP SNMP

Porty dynamiczne ( ang. dynamie port) to porty, które są dynamicznie przydzielane przez stację roboczą. Jeżeli dany port nie jest używany, zostaje przydzielony do obsługi danego procesu aplikacji.
Porty zarejestrowane (ang. registered port) wykorzystywane są głównie przez użytkownika końcowego. Dlatego znane są również jako nieuprzywilejowane i wykorzystywane w komunikatorach lub aplikacjach głosowych.
Aby przejrzeć numery aktualnie wykorzystywanych portów w systemach Microsoft :
  1. Kliknij menu Start i wybierz Uruchom.
  2. W oknie Uruchamianie wpisz cmd / k netstat - an.
  3. Pojawi się lista aktualnie wykorzystywanych portów.

2016-01-17 2016-01-17-1
Warstwa internetowa służy do identyfikowania urządzeń sieciowych na podstawie ich adresów fizycznych. W przypadku gdy dane muszą zostać przesłane do innych sieci, identyfikowane są na podstawie adresów IP.
W warstwie internetowej mamy do czynienia z routerami, które mają za zadanie znajdowanie najlepszych tras dla pakietów danych.
W warstwie internetowej występują takie protokoły jak : IP, ARP, TCMP oraz RARP. Przy czym ten ostatni w dzisiejszych sieciach komputerowych nie jest już używany.
Protokół IP (ang. Internet Protocol) (RFC791) - to protokół komunikacyj ny umożliwiający wysyłanie danych w postaci tzw. pakietów. Można powiedzieć, że protokół ten jest ściśle związany z routingiem. Na tym etapie proces routingu nie będzie szczegółowo omówiony.
Warstwa fizyczna modelu TCP/IP posiada te same funkcje, co warstwa fizyczna modelu ISO-OSI. Odpowiedzialna jest więc za przesyłanie danych przez medium sieciowe.

Źródła i Literatura:
Adam Józefiok - "Budowa sieci komputerowych na przełącznikach i routerach Cisco", Wydawnictwo Helion 2009, ISBN: 978-83-246-4558-9.
Polish language edition published by HELION S.A. Copyright© 2009.
Copyright© 2009 Wydawnictwo HELION S.A
WWW: http:pl/helion.pl (księgarnia internetowa, katalog książek)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *