UDP

De EcuRed

UDP
Información sobre la plantilla
Concepto:UDP (User Datagram Protocol, protocolo de datagrama de usuario) es un protocolo del nivel de transporte basado en el intercambio de datagramas.
Para otros usos de este término, véase UDP_(desambiguación).


UDP (User Datagram Protocol, protocolo de datagrama de usuario) permite el envío de datagramas a través de la red sin que se haya establecido previamente una conexión, ya que el propio datagrama incorpora suficiente información de direccionamiento en su cabecera. Tampoco tiene confirmación ni control de flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco se sabe si ha llegado correctamente, ya que no hay confirmación de entrega o recepción.

Su uso principal es para protocolos como DHCP, BOOTP, DNS y demás protocolos en los que el intercambio de paquetes de la conexión/desconexión son mayores, o no son rentables con respecto a la información transmitida, así como para la transmisión de audio y vídeo en tiempo real, donde no es posible realizar retransmisiones por los estrictos requisitos de retardo que se tiene en estos casos.

Contenido

Descripción

El UDP proporciona puertos de protocolos utilizados para distinguir entre muchos programas que se ejecutan en la misma máquina. Esto es, además de los datos, cada mensaje UDP contiene tanto el número de puerto de destino, como el número de puerto de origen, haciendo posible que el software UDP en el destino entregue el mensaje al receptor correcto y que este envíe una respuesta.

UDP utiliza el Protocolo de Internet (IP) como protocolo subyacente para transportar un mensaje de una máquina a otra y al igual que este brinda servicio de entrega:

Formato del mensaje UDP

Puertos UDP

UDP utiliza puertos para permitir la comunicación entre aplicaciones. El campo de puerto tiene una longitud de 16 bits, por lo que el rango de valores válidos va de 0 a 65.535. El puerto 0 está reservado, pero es un valor permitido como puerto origen si el proceso emisor no espera recibir mensajes como respuesta.

Los puertos 1 a 1023 se llaman puertos "bien conocidos" y en sistemas operativos tipo Unix enlazar con uno de estos puertos requiere acceso como súper usuario.

Los puertos 1024 a 49.151 son puertos registrados.

Los puertos 49.152 a 65.535 son puertos efímeros y son utilizados como puertos temporales, sobre todo por los clientes al comunicarse con los servidores.

En la práctica, cada programa de aplicación debe negociar con el sistema operativo para obtener un puerto del protocolo y un número de puerto asociado, antes de poder enviar un datagrama UDP. Una vez que se asigna el puerto, cualquier datagrama que envíe el programa de aplicación a través de él, tendrá el número de puerto el campo PUERTO DE ORIGEN UDP.

Mientras procesa la entrada, el UDP acepta datagramas entrantes del software IP y los de multiplexa, basándose en PUERTO DE DESTINO UDP.

Error al crear miniatura: El fichero parece no existir: /srv/www/docs/images/6/65/Puertos_udp.PNG

El puerto UDP puede pensarse como una cola. Cuando una aplicación negocia con el sistema operativo el uso del puerto, el sistema operativo crea un buffer en la memoria intermedia y una cola de espera interna que almacena los mensajes que llegan. Cuando el UDP recibe un datagrama verifica si el número de puerto de destino corresponde a uno de los puertos que están en uso. Si no existe ese número de puerto envía mensaje de error ICMP de puerto inaccesible y descarta el datagrama. Si encuentra el puerto, UDP pone en cola de espera en el puerto el nuevo datagrama en espera de que la aplicación lo pueda acceder.

Fuentes

E.V.A., UCI. Coferencia#5 Protocolos de la capa de transporte UDP. Teleinformática II.
D. E. Comer. “Internetworking with TCP/IP. Volume I: Principle Protocols and Architecture”

Enlaces

http://es.wikipedia.org/wiki/User_Datagram_Protocol