7Aug

Qual é a diferença entre TCP e UDP?

Você provavelmente já viu referências a TCP e UDP ao configurar o encaminhamento de porta em um roteador ou ao configurar o software de firewall. Esses dois protocolos são usados ​​para diferentes tipos de dados.

TCP / IP é um conjunto de protocolos utilizados pelos dispositivos para se comunicar através da Internet e da maioria das redes locais.É nomeado após dois dos protocolos originais - o Protocolo de Controle de Transmissão( TCP) e o Protocolo de Internet( IP).O TCP fornece aos aplicativos uma maneira de entregar( e receber) um fluxo de pacotes de informações ordenados e verificados por erros na rede. O protocolo de datagrama de usuário( UDP) é usado por aplicativos para fornecer um fluxo de informações mais rápido eliminando a verificação de erros. Ao configurar algum hardware ou software de rede, você precisará saber a diferença.

O que eles têm em comum

Tanto o TCP quanto o UDP são protocolos usados ​​para enviar bits de dados, conhecidos como pacotes, pela Internet. Ambos os protocolos são compilados em cima do protocolo IP.Em outras palavras, se você está enviando um pacote via TCP ou UDP, esse pacote é enviado para um endereço IP.Esses pacotes são tratados de forma semelhante, pois são encaminhados do seu computador para roteadores intermediários e para o destino.

TCP e UDP não são os únicos protocolos que funcionam no topo do IP.No entanto, eles são os mais utilizados.

Como o TCP Works

TCP é o protocolo mais utilizado na Internet.

Quando você solicita uma página da Web em seu navegador, seu computador envia pacotes TCP para o endereço do servidor web, pedindo que ele envie a página da Web de volta para você.O servidor da Web responde enviando um fluxo de pacotes TCP, que o seu navegador web combina para formar a página da web. Quando você clica em um link, faça login, publique um comentário ou faça qualquer outra coisa, seu navegador envia pacotes TCP ao servidor e o servidor envia os pacotes TCP de volta.

TCP é tudo sobre confiabilidade - os pacotes enviados com TCP são rastreados para que nenhum dado seja perdido ou corrompido em trânsito.É por isso que os downloads de arquivos não ficam corrompidos, mesmo que haja soluços de rede. Claro, se o destinatário estiver completamente offline, seu computador desistirá e você verá uma mensagem de erro dizendo que não pode se comunicar com o host remoto. O

TCP consegue isso de duas maneiras. Primeiro, ordena pacotes ao numerá-los. Em segundo lugar, ele verifica o erro ao solicitar que o destinatário envie uma resposta ao remetente dizendo que recebeu a mensagem. Se o remetente não receber uma resposta correta, ele pode reenviar os pacotes para garantir que o destinatário os receba corretamente.

Process Explorer e outros utilitários do sistema podem mostrar o tipo de conexões que um processo faz: aqui podemos ver o navegador Chrome com conexões TCP abertas para uma variedade de servidores web.

Como o UDP funciona

O protocolo UDP funciona de forma semelhante ao TCP, mas lança todo o material de verificação de erros. Toda a comunicação de ida e volta apresenta latência, abrandando as coisas.

Quando um aplicativo usa UDP, os pacotes são enviados ao destinatário. O remetente não espera para se certificar de que o destinatário recebeu o pacote - apenas continua enviando os pacotes seguintes. Se o destinatário perder alguns pacotes UDP aqui e ali, eles estão perdidos - o remetente não os reenviará.Perder todos esses gastos gerais significa que os dispositivos podem se comunicar mais rapidamente.

UDP é usado quando a velocidade é desejável e a correção de erro não é necessária. Por exemplo, UDP é freqüentemente usado para transmissões ao vivo e jogos online.

Por exemplo, digamos que você está assistindo um fluxo de vídeo ao vivo, que geralmente são transmitidos usando o UDP em vez do TCP.O servidor apenas envia um fluxo constante de pacotes UDP para a exibição de computadores. Se você perder sua conexão por alguns segundos, o vídeo pode congelar ou ficar nervoso por um momento e depois pular para o bit atual da transmissão. Se você tiver menor perda de pacotes, o vídeo ou o áudio podem ficar distorcidos por um momento, pois o vídeo continua a ser reproduzido sem os dados que faltam.

Isso funciona de forma semelhante em jogos online. Se você perder alguns pacotes UDP, os personagens do jogador podem aparecer para se deslocar pelo mapa à medida que você recebe os pacotes UDP mais novos. Não há nenhum motivo para solicitar os pacotes antigos se você os perdeu, já que o jogo continua sem você.Tudo o que importa é o que está acontecendo agora no servidor do jogo - não o que aconteceu há alguns segundos atrás. Ditching A correção de erros do TCP ajuda a acelerar a conexão do jogo e reduzir a latência.

, então, o que?

Se um aplicativo usa TCP ou UDP é até o desenvolvedor, e a escolha depende do que um aplicativo precisa. A maioria dos aplicativos precisa da correção de erros e robustez do TCP, mas alguns aplicativos precisam da velocidade e da sobrecarga reduzida do UDP.Se você disparar uma ferramenta de análise de rede como o Wireshark, você pode ver os diferentes tipos de pacotes que viajam para frente e para trás.

A menos que você seja um administrador de rede ou desenvolvedor de software, isso não deve afetá-lo demais. Se você estiver configurando seu roteador ou software de firewall e você não tem certeza se um aplicativo usa TCP ou UDP, geralmente você pode selecionar a opção "Ambos" para que seu roteador ou firewall aplique a mesma regra ao tráfego TCP e UDP.