Wszystkie zagadnienia: Teoria
podstawowy sieciTCPHTTPDNSmatura podstawowa z informatyki

Protokoły TCP/IP – HTTP, DNS, FTP

Czym jest protokół, cztery warstwy modelu TCP/IP i ich mapowanie na OSI, pojęcie portu oraz zbiorcza tabela portów – od HTTP i DNS po DHCP.

01

Opis

Protokół to zestaw reguł, na które umawiają się dwa urządzenia, żeby się dogadać. Reguły określają format wiadomości, kolejność kroków i sposób reagowania na błędy. Bez wspólnego protokołu urządzenia widzą tylko strumień bitów bez znaczenia.

Internet opiera się na rodzinie protokołów zwanej TCP/IP. Jej model ma cztery warstwy: dostępu do sieci, internetową, transportową i aplikacji. Nazwa pochodzi od dwóch najważniejszych składników – IP odpowiada za adresowanie i trasę, TCP za niezawodne dostarczenie.

Na samej górze pracują protokoły, z których korzystają programy. Każdy ma przypisany numer portu, dzięki któremu system wie, do której aplikacji skierować przychodzące dane.

To hasło jest ściągą działu: definiuje protokół, warstwy i port, a tabela niżej odsyła do haseł z opisem każdego protokołu.

Cztery zasady, które wystarczą do większości pytań:

  • Protokół to umowa, nie program. HTTP nie jest przeglądarką ani serwerem – jest opisem tego, jak mają ze sobą rozmawiać. Ten sam protokół obsługuje wiele różnych programów.
  • Model jest warstwowy i każda warstwa robi jedno. Warstwa niżej nie wie, co przenosi, wyższa nie wie, którędy to jedzie – dlatego strona ładuje się tak samo po kablu i po Wi‑Fi.
  • Adres IP wskazuje komputer, port wskazuje program na tym komputerze. Para „adres i port” jednoznacznie określa jeden koniec połączenia.
  • Numer portu to konwencja, nie prawo fizyki. Porty 0–1023 („dobrze znane”) są zarezerwowane dla usług systemowych i to ich numery pojawiają się na maturze.

Rozwinięcia skrótów sieciowych ogólnego przeznaczenia (LAN, WAN, ISP, RFC…) zbiera słownik skrótów sieciowych; skróty nazw protokołów rozwijane są w hasłach poświęconych tym protokołom.

02

Jak to działa

Model TCP/IP układa protokoły w cztery warstwy. Każda z nich rozwiązuje inny problem i korzysta z usług warstwy leżącej niżej:

  • Warstwa dostępu do sieci – jak wysłać ramkę do sąsiada w tej samej sieci: Ethernet, Wi‑Fi, adresy MAC.
  • Warstwa internetowa – jak trafić do komputera w innej sieci: protokół IP, adresowanie i wybór trasy przez routery.
  • Warstwa transportowa – jak przekazać dane konkretnemu programowi i czy pilnować, żeby doszły: TCP albo UDP (różnice).
  • Warstwa aplikacji – co dokładnie znaczą przesyłane bajty: HTTP, SMTP, DNS, FTP i cała reszta z tabeli poniżej.

Dane schodzą przez warstwy w dół i każda dokłada własny nagłówek – to enkapsulacja; po drugiej stronie nagłówki zdejmuje się w odwrotnej kolejności.

Skąd biorą się porty. Na jednym adresie IP pracuje naraz przeglądarka, program pocztowy i kilka usług systemowych – sam adres IP nie wystarczy, żeby wiedzieć, komu oddać dane. Dlatego nagłówek warstwy transportowej niesie port źródłowy i port docelowy. Numer jest 16-bitowy: portów jest 2¹⁶ = 65 536, od 0 do 65 535.

Zakres dzieli się na trzy części:

  • 0–1023 – porty dobrze znane (well-known). Przypisane na stałe do usług: 80 dla HTTP, 443 dla HTTPS, 22 dla SSH. To te, o które pyta matura.
  • 1024–49151 – porty zarejestrowane, przydzielane programom na wniosek producenta.
  • 49152–65535 – porty dynamiczne, losowane doraźnie; taki port dostaje przeglądarka jako źródłowy.

Kiedy otwierasz stronę, przeglądarka łączy się ze swojego losowego portu wysokiego na port 80 lub 443 serwera. Po numerze portu w odpowiedzi system wie, której karcie ją oddać.

Porty należą do warstwy transportowej, więc portu nie ma protokół, tylko usługa, która na nim nasłuchuje. Serwer WWW można postawić na 8080 – wtedy adres zapisuje się jako http://serwer:8080/, bo przeglądarka domyślnie pyta o 80.

Opisy działania poszczególnych protokołów są w hasłach: HTTP, HTTPS i SSL, protokoły pocztowe, SSH, FTP i Telnet, DNS oraz DHCP.

03

Tabela

Ściąga: protokoły warstwy aplikacji, ich porty i hasła, w których są opisane
ProtokółPortTransportDo czego służyHasło na portalu
HTTP80TCPstrony WWW bez szyfrowaniaHTTP, HTTPS i SSL
HTTPS443TCPstrony WWW szyfrowane przez TLSHTTP, HTTPS i SSL
FTP21 sterowanie, 20 daneTCPprzesyłanie plików, logowanie jawnym tekstemSSH, FTP i Telnet
SFTP22TCPprzesyłanie plików wewnątrz sesji SSHSSH, FTP i Telnet
SSH22TCPszyfrowana konsola zdalnaSSH, FTP i Telnet
Telnet23TCPzdalna konsola bez szyfrowania, dziś tylko do diagnostykiSSH, FTP i Telnet
SMTP25TCPwysyłanie poczty, także z serwera na serwerProtokoły pocztowe
SMTP z TLS587TCPwysyłanie poczty z programu pocztowego, szyfrowaneProtokoły pocztowe
POP3110TCPpobieranie poczty na jedno urządzenieProtokoły pocztowe
IMAP143TCPodbieranie poczty z synchronizacją między urządzeniamiProtokoły pocztowe
DNS53UDP, TCP przy dużych odpowiedziachzamiana nazwy domenowej na adres IPDNS
DHCP67 serwer, 68 klientUDPautomatyczne przydzielanie adresu IP i reszty konfiguracjiDHCP
HTTP na innym porcie8080TCPten sam protokół, inny port – numer trzeba podać w adresieHTTP, HTTPS i SSL
IPbrak numeru portu–adresowanie i trasa; porty są dopiero warstwę wyżejAdresowanie IP
OSIbrak numeru portu–to model odniesienia, a nie protokół – nie ma portu ani usługiModel OSI
04

Porównanie

Warstwa TCP/IPOdpowiadające warstwy OSIPrzykładowe protokołyJednostka danych
Aplikacji (Application)7 aplikacji, 6 prezentacji, 5 sesjiHTTP, HTTPS, FTP, SSH, SMTP, POP3, IMAP, DNS, DHCPdane (komunikat)
Transportowa (Transport)4 transportowaTCP, UDPsegment (TCP), datagram (UDP)
Internetowa (Internet)3 sieciowaIP, ICMP, ARPpakiet
Dostępu do sieci (Link)2 łącza danych, 1 fizycznaEthernet, Wi‑Fi (IEEE 802.11)ramka, a niżej bity
05

Typowe błędy

„TCP/IP to jeden protokół”. To nazwa całej rodziny, w której TCP i IP są tylko dwoma najważniejszymi członkami. Gdy przeglądarka „łączy się przez TCP/IP”, pracują naraz co najmniej HTTP, TCP, IP i Ethernet lub Wi‑Fi.

Mylenie modelu z protokołem. OSI to model odniesienia: opis, co ma się dziać na której warstwie. Nie da się „połączyć przez OSI”, bo OSI nic nie przesyła. To ulubiona pułapka CKE – OSI ląduje w zestawie skrótów obok FTP i SSH.

Przypisanie portu do złego protokołu. Najczęściej myli się parę 110 i 143 (POP3 i IMAP) oraz 21 i 22 (FTP i SSH). Ratunek jest w kolejności: FTP jest starsze i ma niższy numer niż SSH, a POP3 jest starsze i ma niższy numer niż IMAP.

„HTTPS to inny protokół niż HTTP”. To ten sam protokół, opakowany w szyfrowanie TLS i nasłuchujący na innym porcie. Reguły żądań i odpowiedzi są identyczne, zmienia się kanał – patrz HTTP, HTTPS i SSL.

Szukanie portu tam, gdzie go nie ma. Adres IP, adres MAC i model OSI nie mają numerów portów. Port pojawia się dopiero w warstwie transportowej, więc pytanie „jaki port ma protokół IP” nie ma sensownej odpowiedzi.

„Skoro port da się zmienić, to nie trzeba znać numerów”. Da się – ale wtedy trzeba go podać jawnie w adresie. Domyślne numery są tym, czego program użyje, gdy nic mu nie powiesz, i tym, o co pyta arkusz.

Mylenie protokołu z usługą i z programem. HTTP jest protokołem, serwer WWW usługą, a przeglądarka programem klienckim. Zadanie „dopasuj protokół do usługi” sprawdza dokładnie to rozróżnienie – podział na klienta i serwer opisuje hasło model klient-serwer.

06

Zapamiętaj

  • Protokół to umowa o formacie i kolejności komunikatów, a nie program.
  • Model TCP/IP ma cztery warstwy, model OSI siedem; warstwa aplikacji TCP/IP obejmuje warstwy 5–7 OSI.
  • IP odpowiada za adres i trasę, TCP za niezawodność dostarczenia.
  • Port jest 16-bitowy, numery 0–65535; zakres 0–1023 to porty dobrze znane.
  • Porty do zapamiętania: HTTP 80, HTTPS 443, FTP 21, SSH i SFTP 22, Telnet 23, SMTP 25 i 587, DNS 53, DHCP 67 i 68, POP3 110, IMAP 143.
  • DNS i DHCP jadą na UDP, cała reszta z tabeli na TCP.
  • Adres IP wskazuje komputer, port wskazuje program na tym komputerze.
07

Sprawdź się

Fragment ustawień konta w programie pocztowym i adres strony logowania:

PoleWartość
Serwer poczty wychodzącejsmtp.przyklad.pl, port 587
Serwer poczty przychodzącejimap.przyklad.pl, port 143
Strona logowania przez przeglądarkęhttps://poczta.przyklad.pl

Uzupełnij tabelę:

PytanieOdpowiedź
Skrót protokołu serwera poczty wychodzącej
Skrót protokołu serwera poczty przychodzącej
Port, na który połączy się przeglądarka pod adresem strony logowania
Port protokołu POP3 bez szyfrowania
Port protokołu SSH
Port protokołu DNS
Port sterujący protokołu FTP
Protokół transportowy typowego zapytania DNS
Ile warstw ma model TCP/IP
Ile warstw ma model OSI

Porty o numerach od 0 do nazywa się portami dobrze znanymi. Serwer, który automatycznie przydziela hostom adresy IP, nasłuchuje na porcie .

08

Najczęściej zadawane pytania

Czym różni się protokół od usługi?

Protokół to reguły komunikacji, usługa to program, który je realizuje. HTTP jest protokołem, a serwer WWW usługą, która go obsługuje – dlatego strona otwiera się tak samo w każdej przeglądarce.

Po co w ogóle numery portów?

Bo na jednym adresie IP działa wiele programów naraz. Port mówi systemowi, czy dane należą do przeglądarki, poczty czy czegoś innego: adres IP wskazuje komputer, port – program.

Czy port można zmienić?

Tak, numery są tylko konwencją. Serwer WWW można postawić na innym porcie, ale wtedy trzeba go podać w adresie – przeglądarka domyślnie próbuje 80 albo 443. Numery domyślne to te, których program użyje, gdy nic mu nie powiesz.

Ile warstw ma model TCP/IP, a ile OSI?

TCP/IP ma cztery: dostępu do sieci, internetową, transportową i aplikacji. OSI ma siedem. Różnica bierze się stąd, że TCP/IP scala trzy górne warstwy OSI (sesji, prezentacji, aplikacji) w jedną warstwę aplikacji, a dwie dolne (fizyczną i łącza danych) w warstwę dostępu do sieci.

Które porty trzeba znać na maturze?

W zadaniach zamkniętych wracają: 21 (FTP), 22 (SSH i SFTP), 23 (Telnet), 25 i 587 (SMTP), 53 (DNS), 67 i 68 (DHCP), 80 (HTTP), 110 (POP3), 143 (IMAP), 443 (HTTPS).

Co to są porty dobrze znane?

Numery od 0 do 1023, zarezerwowane dla usług systemowych i przypisane na stałe do konkretnych protokołów. Wyżej leżą porty zarejestrowane (1024–49151) i dynamiczne (49152–65535), które system losuje dla połączeń wychodzących.

Dlaczego OSI nie jest protokołem?

Bo to model odniesienia – opis, co ma robić każda warstwa, a nie zestaw reguł, którym da się coś przesłać. Nie ma portu, nie ma usługi i nie da się „połączyć przez OSI”. W arkuszach OSI pojawia się wśród skrótów FTP i SSH właśnie po to, żeby sprawdzić to rozróżnienie.

Czy każdy protokół z tabeli używa TCP?

Nie. DNS pyta przez UDP (na TCP przechodzi przy dużych odpowiedziach), a DHCP działa wyłącznie na UDP, bo host nie ma jeszcze adresu IP. Reszta z tabeli używa TCP – porównanie w haśle TCP a UDP.

Przećwicz w zadaniach maturalnych

Te zadania CKE sprawdzają dokładnie to zagadnienie – link prowadzi wprost do treści podpunktu w arkuszu:

Więcej zadań: Teoretyczne

↗

Powiązane zagadnienia