Czym są protokoły sieciowe?
Nawet jeśli podłączymy komputery najlepszymi kablami, nie będą one w stanie wymienić ani jednego pliku, jeśli nie będą używać wspólnego języka. W informatyce ten zbiór reguł i standardów komunikacji nazywamy protokołami sieciowymi. Określają one format danych, sposób ich wysyłania, odbierania oraz potwierdzania.
Fundament Internetu: IP (Internet Protocol)
Protokół IP to absolutna podstawa warstwy sieciowej. Odpowiada za adresowanie i dostarczanie pakietów danych od nadawcy do odbiorcy. Działa na zasadzie „najlepszych chęci” (best-effort) – wysyła pakiet w odpowiednim kierunku, ale sam w sobie nie gwarantuje, że dotrze on do celu. Gwarancją dostarczenia zajmują się protokoły wyższej warstwy.
TCP kontra UDP – transport danych
W warstwie transportowej królują dwa protokoły, które mają zupełnie inne zastosowania:
TCP (Transmission Control Protocol): Jest to protokół połączeniowy. Zanim wyśle dane, nawiązuje sesję z odbiorcą. Gwarantuje niezawodność – jeśli jakiś pakiet zgubi się po drodze, TCP automatycznie poprosi o jego ponowne wysłanie. Używamy go do przesyłania stron WWW, e-maili i plików (gdzie liczy się precyzja, a nie ułamki sekund).
UDP (User Datagram Protocol): To protokół bezpołączeniowy. „Strzela” pakietami w stronę odbiorcy i nie przejmuje się tym, czy dotarły. Jest za to niezwykle szybki. Wykorzystuje się go tam, gdzie liczy się czas w czasie rzeczywistym, np. w transmisjach wideo (streaming), grach online czy rozmowach głosowych (VoIP). Zgubienie jednej klatki filmu jest lepsze niż zatrzymanie całego obrazu w oczekiwaniu na brakujący pakiet.
Protokoły warstwy aplikacji
Na samym szczycie komunikacji działają protokoły, z którymi użytkownicy mają styczność na co dzień:
HTTP/HTTPS: Służy do przesyłania dokumentów hipertekstowych (stron WWW). Wersja HTTPS jest szyfrowana, co zapewnia bezpieczeństwo przesyłanych haseł i danych.
DNS (Domain Name System): Działa jak internetowa książka telefoniczna. Zamienia zrozumiałe dla człowieka adresy (np. www.google.com) na numeryczne adresy IP, które rozumieją maszyny.