Pakiety UDP, zwane też datagramami, zawierają oprócz nagłówków niższego poziomu nagłówek UDP. Składa się on z pól zawierających sumę kontrolną, długość pakietu oraz porty: źródłowy i docelowy.

Podobnie jak w TCP, porty UDP zapisywane są na dwóch bajtach (szesnastu bitach), więc każdy adres IP może mieć przypisanych 65535 różnych zakończeń. Z przyczyn historycznych, porty 0-1023 zarezerwowane są dla dobrze znanych usług sieciowych – dla aplikacji użytkownika przydziela się porty od 1024.

Struktura nagłówka UDP +Bity 0 – 1516 – 31 0Port nadawcyPort odbiorcy 32DługośćSuma kontrolna 64 Dane 

Port nadawcy identyfikuje port, z którego została wysłana wiadomość, kiedy znaczący to wskazuje port wysyłającego procesu i może zostać przyjęty jako port, do którego powinna zostać zwrócona wiadomość zwrotna w przypadku braku innej informacji. Port nadawcy jest polem opcjonalnym. Gdy pole to nie jest używane, przyjmuje wartość zero.

Port odbiorcy identyfikuje port odbiorcy i jest polem wymaganym.

Długość 16-bitowe pola specyfikują długość w bajtach całego datagramu: nagłówek i dane. Minimalna długość to 8 bajtów i jest to długość nagłówka.