Bóson Treinamentos em Ciência e Tecnologia

Curso de Redes – Protocolo UDP (User Datagram Protocol)

Protocolo UDP - User Datagram Protocol

Protocolo UDP (User Datagram Protocol)

O Protocolo UDP, que pertence à camada de transporte juntamente com o protocolo TCP, é um protocolo simples, orientado a datagrama. Ele não fornece confiabilidade na transmissão, pois envia os datagramas requisitados pela aplicação sem nenhuma garanta de que eles chegarão ao seu destino.

O UDP não estabelece conexões antes de enviar dados. Apenas os empacota em datagramas e os envia. Além disso, não fornece confirmação da entrega desses dados. Portanto, o UDP não fornece nenhuma garantia de que as mensagens serão entregues, e não consegue detectar mensagens perdidas, tampouco retransmiti-las.
Além disso, não garante que as mensagens serão recebidas na mesma ordem em que foram enviadas, e não possui mecanismos para gerenciamento do fluxo de dados entre os dispositivos.

Basicamente, o UDP é apenas um sistema de endereçamento de portas para o protocolo IP.

É muito comum pensar que, por conta dessas características específicas, nós deveríamos sempre usar o protocolo TCP para enviar dados em rede; porém, diversas aplicações se beneficiam desse modelo de envio, sem confiabilidade, por conta de sua performance. O UDP é um protocolo simples, porém rápido.

O UDP encontra aplicações, por exemplo, em sistemas onde a performance da transmissão de dados é mais importante do que a plenitude da entrega de todos os datagramas. Como exemplo podemos citar aplicações multimídia. Se você estiver assistindo a um vídeo em streaming pela Internet (como os vídeos do canal da Bóson no YouTube), o mais importante é que o fluxo de transmissão seja rápido e uniforme, sem “travamentos” ou “saltos” durante a exibição do vídeo. Se alguns datagramas forem perdidos ou descartados durante a transmissão, muito provavelmente nada será notado pelo usuário.

Aplicações do Protocolo UDP

O protocolo UDP encontra inúmeras aplicações em comunicação de redes, sendo que algumas das mais comuns estão compiladas na tabela a seguir:

Porta Protocolo Aplicação
53 DNS Sistema de resolução de nomes de domínio
67 e 68 DHCP Protocolo de configuração de hosts dinâmico
161 e 162 SNMP Protocolo para gerenciamento de redes, que utiliza mensagens curtas
520 e 521 RIP Protocolo de roteamento que não requer conexões

Alguns protocolos usam, na verdade, tanto o protocolo TCP quanto o UDP para transmissão de suas mensagens. O exemplo típico é o protocolo DNS, que também usa TCP para funções que requerem confiabilidade, como transferências de zonas.

O UDP encontra uso em streaming de áudio e vídeo, VoIP, gaming, mecanismos de broadcast e conexões VPN (OpenVPN, por exemplo), entre outras.

Cabeçalho UDP

Um segmento UDP é encapsulado em um datagrama IP, conforme podemos ver na figura a seguir:

E na figura a seguir podemos ver o formato completo de um cabeçalho UDP, cujo tamanho é de 8 bytes, conforme mostrado na ilustração anterior:

O uso dos campos “Checksum” e “Número de Porta de Origem” é opcional em IPv4; já em IPv6 apenas o campo “Número de Porta de Origem” é opcional.

Segue uma descrição sucinta de cada um dos campos no cabeçalho UDP

Note que ambos os protocolos, TCP e UDP, utilizam números de portas para identificar os processos que estão se comunicando, mas esses números são independentes- as portas TCP não tem relação com as portas UDP, e vice-versa.

Comparando os protocolos TCP e UDP

Se compararmos o protocolo UDP com o protocolo TCP, vamos notar as seguintes diferenças:

Quer aprender tudo sobre Redes de Computadores? Minha dica é o livro Redes de Computadores – 2ª Edição, de Gabriel Torres, que você pode adquirir em formato digital com preço promocional clicando na capa do livro a seguir:

 

Sair da versão mobile