El datagrama UDP y su pseudocabecera

Cuatro campos de 2 B forman una cabecera de 8 B. Cambia la carga útil y mira la Longitud; construye la pseudocabecera que también cubre el checksum y que nunca se transmite; sigue los tres niveles de direccionamiento de un host.

Carga útil

El mensaje de la aplicación, en bytes. UDP no segmenta: un mensaje = un datagrama.

Ejemplo

El proceso de A (puerto 9157) envía a un proceso de C (puerto 6428). Las direcciones IP son de documentación (RFC 5737).

A · 203.0.113.7 : 9157
C · 198.51.100.20 : 6428

Practicar

Preguntas de tamaños como las de clase: la respuesta queda oculta hasta pulsar «Comprobar».

Vista

El checksum se calcula paso a paso en Checksum UDP paso a paso.

El segmento UDP en filas de 32 bits (pasa el ratón o el foco por un campo)

La pseudocabecera

Tres niveles de direccionamiento en un host

Se requieren tres niveles en cada host: la dirección del host (en la cabecera IP), la dirección de protocolo (en la cabecera IP: 6 = TCP, 17 = UDP) y el número de puerto (en la cabecera del segmento UDP/TCP). Por eso pueden convivir 443/TCP y 443/UDP.

Supuestos del modelo
  • Cada campo de la cabecera ocupa 16 bits (2 B): la cabecera son 8 B. Longitud = cabecera + datos, en bytes: 8 ≤ L ≤ 65 535. Carga útil máxima: 65 535 − 8 = 65 527 B; sobre IPv4 (cabecera de 20 B), 65 507 B.
  • La cabecera IPv4 se supone sin opciones (20 B); la fila discontinua no se usa. Con opciones (hasta 60 B) el máximo de datos baja a 65 467 B. La cabecera IPv4 se verá en el Tema 4; aquí solo interesan IP origen, IP destino y Protocolo.
  • El valor del checksum no se calcula aquí: se calcula sobre la pseudocabecera más el segmento completo, con el campo a 0. Lo haréis en el laboratorio; la suma en complemento a 1 está en «Checksum UDP paso a paso».
  • Un datagrama que no cabe en la MTU de la red lo fragmenta IP (Tema 4); UDP sigue enviando un único datagrama.