O protocolo UDP não acrescenta muito ao IPv4, no máximo acrescenta alguma forma de verificação de erro simples e a multiplexação/demultiplexação. Na verdade, caso um desenvolvedor opte por utilizar o protocolo UDP, ele quase que estará falando diretamente com o IPv4. Assim, o UDP não implementa:

  • Controle de congestionamento de rede
  • Recuperação de pacotes perdidos
  • Ordenação de pacotes
  • Entrega de pacotes
  • Recuperação de pacotes corrompidos

Diante disso tudo, pode se gerar uma pergunta: “Se o UDP não implementa nada disso, então é sempre preferível utilizar o protocolo TCP?“. A resposta é não. O protocolo UDP também possuí uma série de benefícios, sendo eles:

  • Melhor controle na camada de aplicação de como e quando os dados são enviados
  • Não há estabelecimento de conexão
  • Não há estados de conexão
  • Pacotes possuem um cabeçalho melhor

Essa diferença ao protocolo TCP faz com que o UDP seja muito mais rápido, sendo utilizado majoritariamente em sistemas onde a perda de pacotes não importa, mas a velocidade de entrega sim. Exemplos são exemplos desses sistemas:

  • Jogos
  • Chamadas de vídeo/voz
  • Serviço de DNS
  • Protocolos de roteamento
  • Protocolos de gerenciamento de redes