Diferença entre os protocolos TCP e UDP

Protocolos TCP vs UDP

Tanto o TCP quanto o UDP se encaixam na quarta camada no modelo OSI, que é a camada de transporte logo acima da camada IP. O TCP e o UDP suportam a transmissão de dados de duas maneiras diferentes, o TCP é orientado à conexão e o UDP é menos conectado.

No transporte de pacotes, existem duas grandes restrições: a confiabilidade e a latência. A confiabilidade é a entrega garantida do pacote e a latência é a entrega atempada do pacote. Ambos não podem ser atingidos no pico ao mesmo tempo, mas podem ser otimizados.

Para iniciar uma comunicação de dados entre dois nós, o remetente deve saber o IP do receptor e o número da porta. O endereço IP é para rotear o pacote e o número da porta é entregar o pacote para a pessoa correta. Para explicar melhor esse cenário em um exemplo do mundo real, pense em um ambiente com vários complexos comerciais e alguém o instruiu a comprar 30 (Golden Bar, no 21 Park Ave), para chegar a esse lugar que você precisa conhecer apenas Não 21 park avenue, mas para obter o serviço do saloon, você precisa saber o número da loja que é 30. Você pode assumir o número 21 como endereço IP e o número 30 como porta não.

Igual ao modelo de comunicação de dados e serviços de aplicativos, os aplicativos TCP ouvem os números das portas para aceitar conexões TCP. O mesmo que aplicativos UDP também escuta números de porta para fornecer serviços UDP.

TCP:

Definido na RFC 793

O TCP é um protocolo confiável de ponta a ponta orientado a conexão para suportar a transmissão de dados garantida. A partir do próprio estabelecimento de conexão, o TCP garante a confiabilidade. Algumas das principais características do TCP são handshake de três vias (SYN, SYN-ACK, ACK), detecção de erros, início lento, controle de fluxo e controle de congestionamento.

O TCP é um mecanismo de transporte confiável e, portanto, será usado onde a entrega de pacotes for necessária, mesmo em congestionamentos. Exemplo típico para aplicativos TCP e números de porta são dados FTP (20), Controle FTP (21), SSH (222), Telnet (23), Correio (25), DNS (53), HTTP (80), POP3 (110) , SNMP (161) e HTTPS (443). Estas são aplicações TCP bem conhecidas.

UDP:

Definido na RFC 768

O UDP (User Datagram Protocol) é um protocolo de transmissão simples que fornece serviços não confiáveis. Isso não significa que o UDP não fornecerá os dados, mas não há mecanismos para monitorar o controle de congestionamentos ou a perda de pacotes, etc. Por ser simples, evita o processamento adicional na interface de rede. Os aplicativos em tempo real usam principalmente o UDP porque é preferível descartar pacotes do que pacotes com atraso. Um exemplo típico é o fluxo de mídia de voz sobre IP.

Resumo:

(1) O TCP é orientado à conexão e confiável, enquanto UDP é menos e não confiável..

(2) O TCP precisa de mais processamento no nível da interface de rede, onde, como no UDP, não é.

(3) O TCP usa, handshake de 3 vias, controle de congestionamento, controle de fluxo e outro mecanismo para garantir a transmissão confiável.

(4) O UDP é usado principalmente nos casos em que o atraso de pacotes é mais sério que a perda de pacotes. (Aplicações em tempo real)