¿Cómo funciona el protocolo de datagramas de usuario?

UDP (Protocolo de datagramas de usuario) proporciona un mecanismo de transporte sin conexión y poco confiable para la transmisión de datos a través de redes IP. Así es como funciona UDP:

UDP opera en la capa de transporte de la pila de protocolos TCP/IP y lo utilizan aplicaciones que no requieren una entrega garantizada de datos ni un orden estricto de paquetes. Cuando una aplicación quiere enviar datos mediante UDP, encapsula los datos en un datagrama UDP. Cada datagrama UDP incluye encabezados con números de puerto de origen y destino, junto con una suma de verificación para la detección de errores (aunque no se proporciona corrección de errores).

Una vez formado el datagrama UDP, se entrega a la capa de red (capa IP), donde pasa a formar parte de un paquete IP. El paquete IP contiene encabezados adicionales con direcciones IP de origen y destino, lo que permite a los enrutadores reenviarlo a través de diferentes redes hacia su destino.

Al llegar al host de destino, el paquete IP pasa a la capa de transporte, donde UDP lo procesa. UDP extrae la carga útil de datos del paquete IP según el número de puerto de destino especificado en el encabezado UDP. A diferencia de TCP, UDP no establece una conexión antes de transmitir datos, ni mantiene el estado de la sesión ni garantiza una entrega confiable. En cambio, UDP simplemente entrega los datos a la aplicación o servicio especificado que se ejecuta en el host de destino.

Un datagrama se refiere a una unidad de datos independiente y autónoma transmitida a través de una red.
UDP, un datagrama consta del encabezado UDP seguido de la carga útil de datos. Cada datagrama se trata como una entidad separada y se transmite independientemente de otros datagramas. Esto significa que los datagramas UDP pueden llegar desordenados o perderse sin que UDP proporcione mecanismos para la retransmisión o secuenciación. Las aplicaciones que utilizan UDP deben manejar estas condiciones si es necesario para su caso de uso específico.

Un ejemplo de protocolo basado en UDP es DNS (Sistema de nombres de dominio). DNS utiliza UDP para una transmisión rápida y ligera de consultas y respuestas de DNS entre clientes (resolvedores) y servidores DNS. Las consultas DNS, que solicitan asignaciones de nombres de dominio a direcciones IP, suelen ser pequeñas y se benefician de las características de transmisión rápida y baja sobrecarga de UDP. Las respuestas DNS, que proporcionan las asignaciones solicitadas, también se envían a través de UDP. Los servidores DNS escuchan en el puerto UDP 53 las consultas entrantes y responden con datagramas UDP que contienen la información solicitada. DNS emplea UDP principalmente por su eficiencia a la hora de resolver nombres de dominio y direcciones IP sin la sobrecarga de establecer y mantener conexiones.