logo

Protocolo UDP

Em redes de computadores, UDP significa User Datagram Protocol. David P. Reed desenvolveu o protocolo UDP em 1980. Ele é definido na RFC 768 e faz parte do protocolo TCP/IP, portanto é um protocolo padrão na Internet. O protocolo UDP permite que os aplicativos de computador enviem mensagens na forma de datagramas de uma máquina para outra através da rede IP (Internet Protocol). O UDP é um protocolo de comunicação alternativo ao protocolo TCP (protocolo de controle de transmissão). Assim como o TCP, o UDP fornece um conjunto de regras que regem como os dados devem ser trocados pela Internet. O UDP funciona encapsulando os dados no pacote e fornecendo suas próprias informações de cabeçalho ao pacote. Então, esse pacote UDP é encapsulado no pacote IP e enviado ao seu destino. Tanto o TCP e UDP protocolos enviam os dados pela rede de protocolo da Internet, por isso também é conhecido como TCP/IP e UDP/IP. Existem muitas diferenças entre esses dois protocolos. O UDP permite que o processo processe a comunicação, enquanto o TCP fornece comunicação host a host. Como o UDP envia as mensagens na forma de datagramas, é considerado o modo de comunicação de melhor esforço. TCP envia os pacotes individuais, portanto é um meio de transporte confiável. Outra diferença é que o TCP é um protocolo orientado à conexão, enquanto o UDP é um protocolo sem conexão, pois não requer nenhum circuito virtual para transferir os dados.

O UDP também fornece um número de porta diferente para distinguir diferentes solicitações de usuários e também fornece o recurso de soma de verificação para verificar se os dados completos chegaram ou não; a camada IP não fornece esses dois serviços.

Recursos do protocolo UDP

A seguir estão os recursos do protocolo UDP:

    Protocolo da camada de transporte

UDP é o protocolo de comunicação da camada de transporte mais simples. Ele contém uma quantidade mínima de mecanismos de comunicação. É considerado um protocolo não confiável e é baseado em serviços de entrega de melhor esforço. O UDP não fornece nenhum mecanismo de confirmação, o que significa que o receptor não envia a confirmação do pacote recebido e o remetente também não espera pela confirmação do pacote que enviou.

    Sem conexão

O UDP é um protocolo sem conexão, pois não cria um caminho virtual para transferir os dados. Não utiliza o caminho virtual, portanto os pacotes são enviados em caminhos diferentes entre o remetente e o destinatário, o que leva à perda de pacotes ou ao recebimento fora de ordem.

métodos de string

A entrega ordenada de dados não é garantida.

No caso do UDP, os datagramas são enviados em alguma ordem e serão recebidos na mesma ordem, não é garantido, pois os datagramas não são numerados.

    Portas

O protocolo UDP usa números de porta diferentes para que os dados possam ser enviados ao destino correto. Os números das portas são definidos entre 0 e 1023.

    Transmissão mais rápida

O UDP permite uma transmissão mais rápida, pois é um protocolo sem conexão, ou seja, nenhum caminho virtual é necessário para transferir os dados. Mas existe a possibilidade de o pacote individual ser perdido, o que afeta a qualidade da transmissão. Por outro lado, se o pacote for perdido na conexão TCP, esse pacote será reenviado, garantindo assim a entrega dos pacotes de dados.

    Mecanismo de reconhecimento

O UDP possui algum mecanismo de confirmação, ou seja, não há handshake entre o remetente e o receptor UDP. Se a mensagem for enviada em TCP, o destinatário reconhece que estou pronto e o remetente envia os dados. No caso do TCP, o handshake ocorre entre o remetente e o destinatário, enquanto no UDP não há handshaking entre o remetente e o destinatário.

    Os segmentos são tratados de forma independente.

Cada segmento UDP é tratado individualmente em relação aos outros, pois cada segmento segue um caminho diferente para chegar ao destino. Os segmentos UDP podem ser perdidos ou entregues fora de ordem para chegar ao destino, pois não há configuração de conexão entre o remetente e o destinatário.

valor da string java
    Apátrida

É um protocolo sem estado, o que significa que o remetente não obtém a confirmação do pacote que foi enviado.

Por que exigimos o protocolo UDP?

Como sabemos que o UDP não é um protocolo confiável, ainda precisamos de um protocolo UDP em alguns casos. O UDP é implantado onde os pacotes exigem uma grande quantidade de largura de banda junto com os dados reais. Por exemplo, no streaming de vídeo, reconhecer milhares de pacotes é problemático e desperdiça muita largura de banda. No caso do streaming de vídeo, a perda de alguns pacotes não pode criar problema e também pode ser ignorada.

Formato de cabeçalho UDP

Protocolo UDP

No UDP, o tamanho do cabeçalho é de 8 bytes e o tamanho do pacote é de até 65.535 bytes. Mas esse tamanho de pacote não é possível porque os dados precisam ser encapsulados no datagrama IP, e em um pacote IP, o tamanho do cabeçalho pode ser de 20 bytes; portanto, o máximo de UDP seria 65.535 menos 20. O tamanho dos dados que o pacote UDP pode transportar seria 65.535 menos 28, pois 8 bytes para o cabeçalho do pacote UDP e 20 bytes para o cabeçalho IP.

O cabeçalho UDP contém quatro campos:

    Número da porta de origem:São informações de 16 bits que identificam qual porta não enviará o pacote.Número da porta de destino:Ele identifica qual porta aceitará as informações. São informações de 16 bits usadas para identificar o serviço em nível de aplicativo na máquina de destino.Comprimento:É um campo de 16 bits que especifica todo o comprimento do pacote UDP que inclui também o cabeçalho. O valor mínimo seria 8 bytes, pois o tamanho do cabeçalho é 8 bytes.Soma de verificação:É um campo de 16 bits e é opcional. Este campo de soma de verificação verifica se as informações são precisas ou não, pois existe a possibilidade de as informações serem corrompidas durante a transmissão. É um campo opcional, o que significa que depende da aplicação se deseja escrever o checksum ou não. Se não quiser escrever a soma de verificação, todos os 16 bits serão zero; caso contrário, ele grava a soma de verificação. No UDP, o campo de soma de verificação é aplicado a todo o pacote, ou seja, ao cabeçalho e também à parte dos dados, enquanto, no IP, o campo de soma de verificação é aplicado apenas ao campo do cabeçalho.

Conceito de fila no protocolo UDP

Protocolo UDP

No protocolo UDP, os números são usados ​​para distinguir os diferentes processos em um servidor e um cliente. Sabemos que o UDP fornece um processo para processar a comunicação. O cliente gera os processos que necessitam de serviços enquanto o servidor gera os processos que fornecem serviços. As filas estão disponíveis para ambos os processos, ou seja, duas filas para cada processo. A primeira fila é a fila de entrada que recebe as mensagens e a segunda é a fila de saída que envia as mensagens. A fila funciona quando o processo está em execução. Se o processo for encerrado, a fila também será destruída.

O UDP lida com o envio e recebimento de pacotes UDP com a ajuda dos seguintes componentes:

    Fila de entrada:Os pacotes UDP usam um conjunto de filas para cada processo.Módulo de entrada:Este módulo pega o datagrama do usuário do IP e depois encontra as informações na tabela de blocos de controle da mesma porta. Se encontrar a entrada na tabela do bloco de controle com a mesma porta do datagrama do usuário, ele enfileira os dados.Módulo de bloco de controle:Ele gerencia a tabela de blocos de controle.Tabela de Bloco de Controle:A tabela do bloco de controle contém a entrada de portas abertas.Módulo de saída:O módulo de saída cria e envia o datagrama do usuário.

Vários processos desejam utilizar os serviços do UDP. O UDP multiplexa e demultiplexa os processos para que vários processos possam ser executados em um único host.

Máquina Virtual JAVA

Limitações

  • Ele fornece um serviço de entrega de conexão não confiável. Ele não fornece nenhum serviço de IP, exceto fornecer comunicação processo a processo.
  • A mensagem UDP pode ser perdida, atrasada, duplicada ou pode estar fora de serviço.
  • Não fornece um serviço de entrega de transporte confiável. Ele não fornece nenhum mecanismo de confirmação ou controle de fluxo. No entanto, ele fornece controle de erros até certo ponto.

Vantagens

  • Produz um número mínimo de despesas gerais.