UDP (User Datagram Protocol) é usado para aplicativos que priorizam velocidade e eficiência em vez de confiabilidade. É comumente usado para comunicação em tempo real onde a perda ocasional de pacotes é aceitável, como VoIP (Voice over IP), jogos online, streaming de mídia e resolução DNS (Domain Name System). A natureza sem conexão e a baixa sobrecarga do UDP o tornam adequado para a transmissão rápida de pequenos pacotes de dados, sem a necessidade de estabelecer e manter uma conexão.
O UDP normalmente seria usado em cenários onde a entrega oportuna de dados é mais crítica do que garantir que cada pacote chegue intacto. Por exemplo, em jogos online, o UDP permite a transmissão rápida de atualizações do estado do jogo e das ações dos jogadores, mesmo que pacotes ocasionais sejam perdidos. Da mesma forma, no streaming de vídeo e áudio em tempo real, o UDP permite a reprodução contínua ao entregar pacotes de mídia rapidamente, aceitando o risco de alguns pacotes serem descartados se as condições da rede se deteriorarem.
O UDP deve ser usado quando os aplicativos exigem atraso mínimo e são projetados para lidar com possíveis perdas de dados ou entrega fora de ordem normalmente. Ao contrário do TCP, que garante uma transmissão de dados confiável e ordenada por meio de verificação e retransmissão de erros, o UDP sacrifica a confiabilidade pela velocidade. Os aplicativos que podem tolerar perdas ocasionais de pacotes e priorizar a capacidade de resposta geralmente optam pelo UDP para evitar a sobrecarga associada aos mecanismos de confiabilidade do TCP.
Usar UDP para HTTP (Hypertext Transfer Protocol), que normalmente usa TCP, não é convencional porque o HTTP depende de transmissão confiável de dados e garante a entrega de conteúdo da web sem erros. O TCP garante que todas as partes de uma página da Web, como arquivos HTML, imagens e scripts, sejam transmitidas e recebidas corretamente pelo navegador. A falta de confiabilidade e ordenação do UDP resultaria em uma renderização imprevisível e potencialmente incompleta de páginas da Web, tornando o TCP mais adequado para HTTP.
O UDP é usado na camada de transporte do modelo TCP/IP porque fornece um mecanismo de comunicação leve e sem conexão para enviar datagramas através de redes. Ao contrário do TCP, que gerencia conexões e garante a entrega confiável de dados, o UDP opera com sobrecarga mínima, tornando-o mais rápido e eficiente para aplicações que priorizam velocidade e capacidade de resposta em tempo real em vez de entrega garantida. Sua simplicidade e baixa latência tornam o UDP adequado para aplicações como streaming de mídia, VoIP e jogos on-line, onde perdas ocasionais de pacotes ou entrega fora de ordem podem ser gerenciadas no nível da aplicação.