UDP (User Datagram Protocol) to protokół warstwy transportowej bezpołączeniowy i niezawodny w sensie „bez gwarancji”: nie nawiązuje połączenia, nie potwierdza odbioru, nie retransmituje. Datagramy mogą zaginąć, duplikować się lub dojść w innej kolejności. Zaletą UDP jest niski narzut i małe opóźnienia — stosowany tam, gdzie szybkość i czas reakcji są ważniejsze niż 100% kompletności.
Po tej lekcji będziesz umiał:
- opisać cechy UDP (bezpołączeniowy, brak potwierdzeń),
- wymienić typowe zastosowania UDP.
Cechy UDP
- Bezpołączeniowy — brak handshake’u (SYN/ACK); nadawca od razu wysyła datagramy.
- Brak potwierdzeń i retransmisji — nadawca nie wie, czy datagram dotarł; w razie straty aplikacja może ewentualnie sama żądać ponowienia (np. w protokołach wyższych warstw).
- Brak gwarancji kolejności — datagramy mogą dojść w innej kolejności niż wysłane.
- Prosty nagłówek — m.in. port źródła, port celu, długość, suma kontrolna. Brak numeru sekwencji, okna, flag.
Typowe zastosowania UDP
Streaming wideo/audio (straty pojedynczych pakietów są mniej dokuczliwe niż duże opóźnienia), VoIP, gry online (niska latencja), zapytania DNS (krótkie pytanie–odpowiedź), DHCP (broadcast, krótkie komunikaty), transmisje multicast. Tam, gdzie potrzebna jest pełna kompletność (strony WWW, poczta, pliki), stosuje się TCP.