Para entender as diferenças entre TCP e UDP, você deve primeiro ter um entendimento básico do protocolo IP subjacente. Este artigo explicará o que são todos esses protocolos, a diferença entre UDP e TCP e alguns exemplos de como cada um é usado.
Protocolo IP
Cada dispositivo conectado à Internet recebe um endereço IP exclusivo composto de números e decimais. Assim como os endereços físicos, os endereços IP permitem que os computadores conectados à Internet se encontrem e enviem itens para frente e para trás, uma função chamada “roteamento”. Sem o protocolo IP, não teríamos a Internet.
O protocolo da Internet funciona dividindo dados em pequenos pedaços chamados datagramas ou pacotes. Os pedaços são então enviados pela Internet de um endereço IP para outro.
Além dos dados em si, os pacotes IP contêm informações de roteamento, como o endereço IP de destino para onde estão indo. Essa informação é chamada de “cabeçalho.”
Quando um pacote sai do seu dispositivo, ele vai para um Porta de entrada. Esse gateway é outro computador que pode ver uma parte dos endereços IP na Internet. Se o endereço IP de destino do pacote não for o que o gateway pode ver, o pacote será encaminhado para o próximo gateway na linha. Esse processo se repete até que o pacote chegue a um gateway que reconheça o endereço IP de destino como pertencente ao seu domínio. Esse gateway encaminha o pacote para o computador cujo endereço está especificado no cabeçalho.
Como os dados são divididos em pacotes, nem todos precisam percorrer a mesma rota pela Internet ou chegar em ordem.
Sempre que você usa a Internet, é provável que esteja usando o protocolo IP. É independente do tipo de dados que estão sendo trocados, por isso é usado para praticamente tudo, incluindo texto, imagens, áudio, vídeo, jogos, email, mensagens, arquivos e muito mais.
Atualmente, a maioria dos aplicativos usa a quarta versão do protocolo da Internet, conhecida como IPv4. Você também deve ter ouvido falar sobre a substituição do IPv4, IPv6. Atualmente, as duas versões funcionam em paralelo, mas a adoção do IPv6 está crescendo e, em última análise, substituirá o IPv4. O motivo é que o mundo está ficando sem endereços IPv4 – seus inventores não previram a proliferação da Internet na medida em que ela existe hoje. O IPv6 permite muito mais endereços IP, além de outras atualizações técnicas que não iremos abordar aqui.
Veja também: IPV6 vs IPV4
TCP
O TCP veio antes do UDP. Significa Transmission Control Protocol. Você costuma ver isso conhecido como TCP / IP, embora não haja distinção entre isso e TCP.
O protocolo IP divide os dados em pacotes e os envia para um destino pela Internet, mas como você os reúne novamente quando chegam? Foi para isso que o TCP foi inventado. Quando os pacotes chegam ao seu destino, eles são remontados pelo dispositivo receptor de volta à sua forma original.
O TCP exige que ambas as partes se comuniquem para estabelecer uma conexão e enviar dados. O TCP garante que o destinatário receberá pacotes em ordem, de acordo com números de sequência incluído no cabeçalho. O destinatário enviará uma mensagem de volta ao remetente para cada pacote, reconhecendo que eles foram recebidos. Quaisquer pacotes não reconhecidos pelo destinatário são enviados novamente. Os pacotes são verificados quanto a erros usando um soma de verificação, que também está incluído no cabeçalho.
Por causa de tudo isso entre clientes e servidores, o TCP pode garantir com segurança a integridade dos dados trocados pela Internet. Simplificando, ele pode garantir que os dados cheguem exatamente como foram enviados, sem modificações ou peças ausentes. Isso torna o TCP útil para uma grande variedade de aplicativos e é o protocolo mais usado na Internet. Sempre que você clica em um link, baixa um arquivo no navegador, atualiza um aplicativo ou abre um email, o TCP provavelmente é usado.
No entanto, toda essa comunicação vai e volta desacelera o TCP. Se um pacote desaparecer, toda a operação será mantida até ser enviada novamente. Embora isso se traduza apenas em milissegundos na vida real, pode afetar o desempenho de aplicativos que exigem muita largura de banda. Digite UDP.
UDP
UDP significa User Datagram Protocol. Lembre-se de que um datagrama e um pacote são mais ou menos a mesma coisa. O UDP, também construído sobre o protocolo IP, funciona de maneira semelhante ao TCP, mas é mais simples e mais rápido.
A principal diferença é que O UDP não exige que o destinatário reconheça que cada pacote foi recebido. Os pacotes perdidos em trânsito não são reenviados. Isso permite que os computadores se comuniquem mais rapidamente, mas os dados recebidos podem não corresponder exatamente aos dados enviados.
Os pacotes UDP não têm números de sequência, para que possam chegar fora de ordem. Eles possuem somas de verificação, portanto, os pacotes que chegam são protegidos contra corrupção ou modificação em trânsito.
Por esse motivo, o UDP é usado quando a velocidade é preferida à integridade e à correção de erros. Alguns aplicativos comuns incluem streaming de vídeo e música, transmissões ao vivo, chamadas de voz e vídeo (VoIP) e jogos online. Nesses cenários, não importa realmente se você perde o quadro de vídeo ocasional ou o pressionamento de botão, o que favorece o UDP. O tráfego DNS geralmente é trocado pelo protocolo UDP.
Veja também: Guia para UDP
OpenVPN sobre UDP e TCP
Muitos aplicativos VPN populares que dependem do protocolo OpenVPN permitem que os usuários escolham entre o protocolo UDP e TCP. Nenhum dos dois é particularmente melhor que o outro, e a maioria dos usuários finais não notará muita diferença. Como mencionamos anteriormente, o UDP geralmente oferece melhores velocidades, mas varia de acordo com o caso.
Em alguns casos, um ou outro pode ser necessário para ignorar um firewall. O UDP e o TCP podem operar em portas diferentes, e alguns firewalls podem colocar na lista negra a porta UDP usual do OpenVPN, por exemplo. Se você achar que sua conexão OpenVPN está sendo bloqueada devido à censura, tente mudar para o outro protocolo. O TCP geralmente é melhor para isso.
UDP vs TCP
Aqui está um resumo de algumas das principais diferenças entre UDP e TCP:
UDP:
- Usado para streaming de vídeo, jogos, VoIP, transmissões ao vivo
- Mais rápido e requer menos recursos
- Pacotes não chegam necessariamente em ordem
- Permite pacotes ausentes; remetente não pode saber se um pacote foi recebido
TCP:
- Protocolo mais usado na internet
- O TCP garante que nenhum pacote está faltando e todos os dados enviados chegam ao destinatário
- O TCP envia pacotes em ordem para que possam ser facilmente agrupados novamente
- Mais lento e requer mais recursos
Se você entende a piada a seguir, tem uma compreensão básica das diferenças entre TCP e UDP.
“Breitling Wingwalkers” de Agnn Foon licenciado sob CC BY 2.0
“Camadas da Internet” da Jsoon eu licenciadas sob CC BY-SA 3.0
o.
Comentário em português:
Este artigo é muito útil para quem deseja entender as diferenças entre TCP e UDP. Ele explica de forma clara e simples o protocolo IP subjacente, que é fundamental para a existência da Internet. Além disso, o texto apresenta exemplos de como cada protocolo é usado e suas principais características. É interessante saber que o TCP é mais seguro e confiável, garantindo a integridade dos dados trocados pela Internet, enquanto o UDP é mais rápido e eficiente, mas não garante a entrega dos pacotes. É importante ter conhecimento desses protocolos para escolher o mais adequado para cada aplicação. Parabéns pelo artigo!