Streszczenie TCP a UDP protokoły
Protokoły TCP i UDP: Niezawodność kontra Szybkość na Maturę
Wstęp
Warstwa transportowa zapewnia komunikację między aplikacjami na urządzeniach końcowych. Podczas gdy IP dostarcza pakiety między adresami, protokoły transportowe TCP i UDP realizują komunikację między konkretnymi procesami za pomocą portów. Typowe numery portów: HTTP 80, HTTPS 443, DNS 53, SSH 22.
Definicja: Warstwa transportowa świadczy usługi do przesyłania danych między aplikacjami, zarządza portami oraz decyduje o niezawodności i narzucie transmisji.
Podstawowy podział: TCP vs UDP
TCP (Transmission Control Protocol)
- Charakterystyka: zorientowany na połączenie, niezawodny, zapewnia kolejność danych i retransmisję utraconych pakietów.
- Zastosowanie: tam, gdzie kluczowa jest kompletność i prawidłowa kolejność danych (web, e-mail, przesyłanie plików, SSH).
Definicja: TCP to protokół transportowy, który przed wysłaniem danych nawiązuje połączenie, a następnie gwarantuje dostarczenie poprzez potwierdzenia i retransmisje.
UDP (User Datagram Protocol)
- Charakterystyka: bezpołączeniowy, niegwarantujący niezawodności na poziomie protokołu, mniejszy narzut, szybszy i z mniejszym opóźnieniem.
- Zastosowanie: tam, gdzie kluczowa jest szybkość i niskie opóźnienie ponad absolutną niezawodność (VoIP, gry, DNS, streaming).
Definicja: UDP to prosty protokół transportowy, który wysyła datagramy bez gwarancji dostarczenia ani kolejności.
Szczegółowe mechanizmy TCP
Nawiązywanie połączenia – three-way handshake
- Klient wysyła SYN (żądanie nawiązania połączenia).
- Serwer odpowiada SYN-ACK (potwierdzenie i zgoda).
- Klient potwierdza ACK.
Po tych trzech krokach połączenie jest nawiązane i dane mogą być przesyłane.
Definicja: Three-way handshake to procedura trzech komunikatów (SYN, SYN-ACK, ACK) służąca do nawiązania niezawodnego połączenia między dwoma punktami końcowymi.
Segmentacja i potwierdzanie
- Większe dane są dzielone na segmenty, z których każdy ma numer sekwencyjny (sequence number).
- Odbiorca wysyła potwierdzenie (ACK) z numerem kolejnej oczekiwanej pozycji bajtowej.
- Jeśli wystąpi luka (brakuje któregoś segmentu), nadawca może ponownie wysłać daną część.
Mechanizm okna (window)
- TCP wykorzystuje okno, które określa, ile danych może zostać wysłanych bez natychmiastowego potwierdzenia.
- Rozmiar okna zmienia się dynamicznie w zależności od warunków sieciowych i możliwości odbiorcy.
- Dzięki mechanizmowi okna zmniejsza się narzut związany z oczekiwaniem na ACK po każdym segmencie i zwiększa się przepustowość.
Definicja: Okno TCP określa liczbę bajtów, które nadawca może przesłać, zanim będzie musiał czekać na potwierdzenie od odbiorcy.
Właściwości UDP
- Brak nawiązywania połączenia, brak potwierdzeń, brak retransmisji.
- Nadawca wysyła niezależne datagramy, każda wiadomość jest niezależna.
- Niższy narzut i mniejsze opóźnienie, odpowiednie dla aplikacji tolerujących straty.
Definicja: UDP to prosty protokół do bezstanowego przesyłania datagramów bez gwarancji dostarczenia.
Tabela porównawcza
| Cecha | TCP | UDP |
|---|---|---|
| Nawiązuje połączenie | Tak | Nie |
| Niezawodność | Wysoka (ACK, retransmisje) | Niska (bez mechanizmów) |
| Kolejność danych | Zapewniona | Niezabezpieczona |
| Narzut | Wyższy | Niższy |
| Przykłady zastosowań | Web, e-mail, SSH, FTP | DNS, VoIP, gry, streaming |
Praktyczne przykłady
- Otwieranie strony internetowej przez HTTPS: przeglądarka używa protokołu TCP na porcie 443, potrzebuje niezawodnego przesyłania HTML, obrazów i skryptów; utrata danych doprowadziłaby do błędnej lub niedziałającej strony.
- Połączenie głosowe (VoIP): używa protokołu UDP, gdzie lepiej jest stracić niewielką liczbę pakietów niż czekać na retransmisję i zwiększyć opóźnienie, które psuje płynność rozmowy.
Czy wiedzieliście, że UDP jest bardzo często używany również do zapytań DNS, mimo że jest określany jako nieniezawodny? DNS faworyzuje szybkość i krótkie zapytania, a jeśli zapytanie
Masz już konto? Zaloguj się
Warstwa transportowa: TCP i UDP
Klíčové pojmy: Warstwa transportowa łączy procesy za pomocą portów., TCP jest połączeniowy i niezawodny (ACK, retransmisja)., Trójstopniowe uzgadnianie połączenia: SYN, SYN-ACK, ACK., TCP wykorzystuje segmentację i numery sekwencyjne., Okno TCP zwiększa przepustowość bez czekania na ACK po każdym segmencie., UDP jest bezpołączeniowy, bezpotwierdzeniowy i charakteryzuje się niskim narzutem., UDP jest odpowiedni dla VoIP, gier, DNS, strumieniowania., Port identyfikuje usługę/proces, a nie urządzenie., Wybierz protokół w zależności od potrzeb: niezawodność vs. opóźnienie., Na maturze wyjaśnij zasadę działania, podaj przykład oraz porównaj zalety i wady.