Twój IP: Nieznany · Twój status: Chroniony
Niechroniony
Nieznany
Blog Wiadomości

Czym są i jak działają protokoły TCP i UDP?

TCP (Transmission Control Protocol) i UDP (User Datagram Protocol) są podstawowymi protokołami służącymi do transferu danych na linii użytkownik-serwer sieciowy. Jeden z nich jest szybszy, a drugi bardziej niezawodny. Dowiedz się, czym są i jakie istnieją między nimi różnice.

Laura Klaus

Laura Klaus

Dec 21, 2020 · 3 minut czytania

Czym są i jak działają protokoły TCP i UDP?

Definicja TCP vs UDP

Obydwa narzędzia – TCP i UDP – są protokołami w warstwie transportowej Modelu OSI. Protokoły TCP i UDP spotykamy w Internecie na każdym kroku: korzystając z portali społecznościowych, wchodząc na strony informacyjne, grając w gry online czy oglądając coś na YouTubie lub serwisach streamingowych.

Każdy z tych protokołów działa jednak nieco inaczej, przez co jest stosowany w innych celach. Czym więc są TCP i UDP i jakie najważniejsze różnice dzielą te protokoły?

Jak działają TCP i UDP?

Protokół TCP jest najczęściej stosowany w Internecie. Wynika to z faktu, że w większym stopniu ułatwia zachowanie bezpieczeństwa, przez co serwer jest mniej podatny na przykład na atak DDoS lub inne formy działań hakerów. Działanie TCP przebiega według następującego schematu:

  1. Najpierw protokół przypisuje pakietowi danych unikatowy identyfikator. W ten sposób informacja może zostać rozpoznana, co ułatwia handshake i zachowanie odpowiedniej kolejności przesyłu danych.
  2. W momencie odebrania danych oraz poświadczenia ich prawidłowej kolejności serwer generuje i wysyła potwierdzenie do nadawcy.
  3. Po otrzymaniu potwierdzenia serwer przesyła następny pakiet danych.
  4. W przypadku nieprawidłowości (błąd w pakiecie, zła kolejność, utrata części informacji) serwer pozostaje bierny, tj. wymagana jest następna próba wysłania tego samego pakietu.
Jak działa TCP

W porównaniu z powyższym działanie UDP jest znacząco uproszczone i o wiele szybsze. User Datagram Protocol nie korzysta z unikatowych identyfikatorów ani też nie nadaje numerów sekwencyjnych. Dane są strumieniowane w sposób ciągły bez podziału na sekwencje, bez potwierdzeń oraz bez lokalizowania i korygowania błędów. W przypadku utraty pakietu danych strumieniowanie w UDP nie zostaje zatrzymane.

Dzięki temu mechanizmowi UDP jest wysoce pożyteczne w grach online czy transmisji wideo: jeżeli na przykład dojdzie do zacięcia się wideo, serwer nie zablokuje przesyłu danych, lecz przeniesie nas w następne miejsce.

Jak działa UDP

TCP i UDP – różnice

Działanie TCP oferuje coś w rodzaju potwierdzenia zwrotnego, że połączenie zostało nawiązane oraz wysyła dane w sesji pomiędzy dwoma węzłami. Jeden z tych węzłów pełni funkcję wysyłającego, drugi natomiast nasłuchuje. Połączenie musi być jednak przez cały czas otwarte albo otwierane i zamykane po wysłaniu danych. O takim nawiązaniu połączenia w ramach TCP fachowo mówi się handshake.

Protokoły TCP ponadto nadane są wszędzie tam, gdzie wysyłane dane wymagają potwierdzenia zwrotnego, a więc informacji, że coś zostało albo nie zostało wysłane. Przykładem może być tutaj aplikacja kliencka, która poprzez TCP wysyła wewnątrz sieci do aplikacji backendowej informacje na przykład o rezerwacji wizyty lekarskiej. W przypadku tego rodzaju aplikacji zawsze wymagane jest potwierdzenie, że wiadomość została otrzymana. TCP jest także standardem w wewnętrznych sieciach, gdzie używa się VPN online.

UDP to również protokół w warstwie transportowej, ale nie wymaga handshake'a ani potwierdzenia o otrzymaniu danych. UDP jest używane między innymi w grach sieciowych, ponieważ oferuje o wiele szybszą transmisję danych niż TCP.

User Datagram Protocol nie generuje dodatkowego ruchu na informacje zwrotne i nie marnuje czasu, czekając na potwierdzenia. W UDP, w odróżnieniu od TCP, wiadomości przyjdą jedna niekoniecznie w prawidłowej kolejności (w TCP zawsze jest ona zachowana).

Z tego powodu UDP jest użyteczne tam, gdzie istnieje duży ruch i nie jest wymagane potwierdzenie otrzymania wiadomości. TCP natomiast sprawdza się w miejscach, gdzie ważna jest kolejność, a także niejako trzymanie całej wymiany wiadomości w ryzach.

TCPUDP
Niezawodność działaniaWysokaWzględnie niska
Szybkość przesyłu danychNiskaWysoka
Sposób przesyłania danychSekwencyjnieW strumieniu
Wykrywanie i korygowanie błędówObecneNieobecne
Potwierdzenie odbioru danychZawszeJedynie w formie sumy kontrolnej
Kontrolowanie, czy powstają zatory w przesyle danychZawszeNie

TCP i UDP a działanie Virtual Private Network

Zapewne zastanawiasz się, czy TCP i UDP są zgodne z VPN? Wysokiej jakości programy zapewniają bezpieczne użytkowaniu każdego z tych protokołów.

NordVPN domyślnie używa UDP, ponieważ zapewnia to szybsze działanie przeglądarki. W ten sposób VPN bez problemu obsługuje gry online czy wymagające dużej przepustowości łącza transmisje wideo. Możesz jednak zmienić protokół na TCP.

Zmiana UDP na TCP w NordVPN (dla użytkowników Windows)

  1. Otwórz Settings (ikonka zębatego koła) w prawym górnym rogu.
  2. Z menu po lewej stronie wybierz Auto-connect.
  3. W sekcji VPN Protocol wybierz TCP.

Zmiana UDP na TCP w NordVPN (dla użytkowników MacOS)

  1. W lewym górnym rogu odnajdź menu i otwórz Preferences.
  2. Domyślną opcją będzie – Connection: Prefer UDP over TCP. Wyłącz ją, odznaczając pole obok.