Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Header UDP

Header-ul UDP are 8 bytes si are urmatoarea structura:

0      7 8     15 16    23 24    31
+--------+--------+--------+--------+
|     Source      |   Destination   |
|      Port       |      Port       |
+--------+--------+--------+--------+
|     Length      |    Checksum     |
+--------+--------+--------+--------+

Portul sursa este ales random de către mașina sursa a pachetului dintre porturile libere existente pe acea mașina. Este un număr pe 16 biti, între 0 si 65535. Identifică procesul UDP care a transmis datagrama.

Portul destinatie este portul pe care mașina destinatie poate recepționa pachete. Identifică socket-ul UDP care va procesa datele primite.

Length este lungimea în octeti (bytes) a datagramei (header size + data size).

Checksum este valoarea sumei de verificare pentru datagrama.

Putem folosi următoarea structură pentru a reprezenta header-ul UDP:

struct udphdr
{
  uint16_t sport;       /* source port */
  uint16_t dport;       /* destination port */
  uint16_t ulen;        /* udp length */
  uint16_t sum;         /* udp checksum */
};