¿Qué es el UDP?

El UDP, un protocolo de comunicación de la capa de transporte, es un protocolo muy común para el tráfico de voz y vídeo.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Definir UDP/IP
  • Describir algunos casos de uso del UDP

Contenido relacionado


¿Quieres más información?

Regístrate para recibir artículos de aprendizaje sobre temas de seguridad de Cloudflare.

Revisa la política de privacidad de Cloudflare para saber más sobre cómo Cloudflare gestiona tus datos personales.

Copiar enlace del artículo

¿Qué es el Protocolo de datagrama de usuarios (UDP/IP)?

El Protocolo de datagrama de usuarios, o UDP, es un protocolo de comunicación que se utiliza en Internet para transmisiones sujetas a limitaciones temporales, como la reproducción de vídeo o las búsquedas en DNS. Acelera las comunicaciones al no establecer formalmente una conexión antes de transferir los datos. Esto permite que los datos se transfieran muy rápido, pero también puede hacer que los paquetes se pierdan en tránsito, y crear oportunidades para vulnerabilidades en forma de ataques DDoS.

¿Cómo funciona UDP?

Como todos los protocolos de redes, el UDP es un método estandarizado para transferir datos entre dos ordenadores en una red. Comparado con otros protocolos, el UDP realiza este proceso de forma sencilla: envía paquetes (unidades de transmisión de datos) directamente a un ordenador de destino, sin establecer primero una conexión, ni indicar el orden de dichos paquetes, ni comprobar si han llegado como estaba previsto. (Los paquetes UDP se llaman "datagramas").

El UDP es más rápido pero menos fiable que el TCP, otro protocolo de transporte habitual. En una comunicación TCP, los dos ordenadores comienzan estableciendo una conexión mediante un proceso automatizado llamado "protocolo de enlace". Un ordenador no transferirá realmente paquetes de datos al otro hasta que no se haya completado el protocolo de enlace.

Las comunicaciones UDP no pasan por este proceso. En su lugar, un ordenador simplemente puede empezar a enviar datos al otro:

Comunicación TCP vs UDP

Además, las comunicaciones TCP indican el orden en que deben recibirse los paquetes de datos, y confirman que los paquetes están llegando según lo previsto. Si un paquete no llega, por la congestión de las redes intermedias, por ejemplo, el TCP exige que se vuelva a enviar. Las comunicaciones UDP no incluyen ninguna de estas funciones.

Estas diferencias generan algunas ventajas. Ya que el UDP no necesita un "protocolo de enlace" ni comprobar si los datos llegan correctamente, puede transferir datos mucho más rápido que el TCP.

Sin embargo, esta velocidad genera desventajas. Si un datagrama del UDP se pierde en tránsito, no se volverá a enviar. Como resultado, las aplicaciones que utilizan UDP deben ser capaces de tolerar errores, pérdidas y duplicaciones.

(Técnicamente, esta pérdida de paquetes no es tanto un defecto del UDP como una consecuencia de cómo se ha diseñado Internet. La mayoría de los enrutadores de red, por su propio diseño, no realizan el ordenamiento de los paquetes y la confirmación de su llegada, porque hacerlo requeriría una cantidad inviable de memoria adicional. El TCP es una forma de llenar este vacío cuando una aplicación lo requiere).

¿Qué tipo de servicios dependen del UDP?

El UDP se suele utilizar en las comunicaciones sujetas a limitación temporal, en las que ocasionalmente es mejor dejar caer los paquetes que esperar. El tráfico de voz y vídeo se envía mediante este protocolo, porque ambos están sujetos a limitación temporal y están diseñados para soportar cierto nivel de pérdida. Por ejemplo, la VOIP (voz sobre IP), que utilizan muchos servicios telefónicos basados en Internet, funciona sobre UDP. Esto es así porque es preferible una conversación telefónica estática a una muy clara pero con mucho retraso.

Esto también hace que el UDP sea el protocolo ideal para los videojuegos en línea. De forma similar, como los servidores DNS deben ser rápidos y eficientes, funcionan también mediante UDP.

¿Cómo se utiliza el UDP en los ataques DDoS?

Los "riesgos" de UDP, como la pérdida de paquetes, no son un problema grave en la mayoría de los casos de uso. Sin embargo, se puede aprovechar el UDP con fines maliciosos. Ya que el UDP no necesita un protocolo de enlace, los atacantes pueden "inundar" un servidor objetivo con tráfico UDP sin obtener primero el permiso de ese servidor para iniciar la comunicación.

indefinido

Un típico ataque de inundación UDP envía un gran número de datagramas de UDP a los puertos aleatorios del ordenador que tengan como objetivo. Esto obliga al objetivo a responder con un número igualmente grande de paquetes ICMP, que indican que esos puertos son inalcanzables. Los recursos informáticos necesarios para responder a cada datagrama fraudulento pueden agotar al objetivo, dando lugar a una denegación de servicio al tráfico legítimo. (Para más información, lee nuestro artículo sobre ataques de inundación UDP.) Las organizaciones pueden defenderse de los ataques de inundación UDP con varios métodos. Uno es limitar la tasa de respuesta de los paquetes ICMP, aunque este enfoque también puede filtrar los paquetes legítimos. Otro método es recibir y responder al tráfico UDP mediante una red intermediaria de muchos centros de datos distribuidos, lo cual evita que un único servidor de origen se vea sobrecargado por solicitudes fraudulentas. Más información sobre cómo Cloudflare utiliza esta estrategia para ayudar a las organizaciones a mitigar los ataques DDoS.

Ventas