O que é TCP?
O TCP / IP ajuda a determinar como um computador específico deve ser conectado à Internet e como você pode transmitir dados entre eles. Ajuda a criar uma rede virtual quando várias redes de computadores estão conectadas.
TCP / IP significa Transmission Control Protocol / Internet Protocol. Ele é projetado especificamente como um modelo para oferecer um fluxo de bytes ponta a ponta altamente confiável em uma internetwork não confiável.
Neste tutorial, você aprenderá:
- O que é TCP?
- O que é UDP?
- Como funciona o TCP?
- Como funciona o UDP?
- Características do TCP
- Diferença entre TCP e UDP
- Aplicação de TCP
- Aplicação de UDP
- Vantagem do TCP
- Vantagem do UDP
- Desvantagens do TCP
- Desvantagens do UDP
- Quando usar UDP e TCP?
O que é UDP?
UDP é um protocolo orientado a datagrama. É usado para transmissão de rede do tipo broadcast e multicast. A forma completa do UDP é o protocolo de datagrama do usuário (um datagrama é uma unidade de transferência associada a uma rede comutada por pacotes.) O protocolo UDP funciona quase de maneira semelhante ao TCP, mas elimina todo o material de verificação de erros, tudo de volta e comunicação e capacidade de entrega.
PRINCIPAIS DIFERENÇAS:
- O TCP é um protocolo orientado à conexão, enquanto o UDP é um protocolo sem conexão.
- A velocidade do TCP é mais lenta, enquanto a velocidade do UDP é mais rápida
- TCP usa protocolo de handshake como SYN, SYN-ACK, ACK, enquanto UDP não usa protocolos de handshake
- O TCP faz a verificação de erros e também a recuperação de erros; por outro lado, o UDP executa a verificação de erros, mas descarta os pacotes errados.
- O TCP tem segmentos de confirmação, mas o UDP não possui nenhum segmento de confirmação.
- TCP é pesado e UDP é leve.
Como funciona o TCP?
Uma conexão TCP é estabelecida com a ajuda de um handshake de três vias. É um processo de iniciar e reconhecer uma conexão. Uma vez que a conexão é estabelecida, a transferência de dados começa, e quando o processo de transmissão é finalizado, a conexão é encerrada pelo fechamento de um circuito virtual estabelecido.
Como funciona o UDP?
O UDP usa um método de transmissão simples sem diálogos de aperto de mão implícitos para pedido, confiabilidade ou integridade de dados. O UDP também assume que a verificação e a correção de erros não são importantes ou executadas no aplicativo, para evitar a sobrecarga de tal processamento no nível da interface de rede. Também é compatível com broadcasts e multicast.
Características do TCP
Aqui estão alguns recursos importantes do TCP
- Agradecimentos de entrega
- Re transmissão
- Atrasa a transmissão quando a rede está congestionada
- Detecção fácil de erros
Aqui estão alguns recursos importantes do UDP:
- Suporta aplicativos com uso intensivo de largura de banda que toleram a perda de pacotes
- Menos demora
- Ele envia a grande quantidade de pacotes.
- Possibilidade de perda de dados
- Permite pequenas transações (pesquisa DNS)
Diferença entre TCP e UDP
Aqui estão as diferenças entre TCP e UDP
TCP | UDP |
É um protocolo orientado a conexão. | É um protocolo sem conexão. |
O TCP lê dados como fluxos de bytes e a mensagem é transmitida para os limites do segmento. | As mensagens UDP contêm pacotes que foram enviados um a um. Ele também verifica a integridade na hora de chegada. |
As mensagens TCP passam pela Internet de um computador para outro. | Não é baseado em conexão, portanto, um programa pode enviar muitos pacotes para outro. |
O TCP reorganiza os pacotes de dados na ordem específica. | O protocolo UDP não tem ordem fixa porque todos os pacotes são independentes uns dos outros. |
A velocidade do TCP é mais lenta. | UDP é mais rápido porque a recuperação de erros não é tentada. |
O tamanho do cabeçalho é 20 bytes | O tamanho do cabeçalho é 8 bytes. |
TCP é pesado. O TCP precisa de três pacotes para configurar uma conexão de soquete antes que quaisquer dados do usuário possam ser enviados. | UDP é leve. Não há conexões de rastreamento, ordem de mensagens, etc. |
O TCP faz a verificação de erros e também a recuperação de erros. | O UDP executa a verificação de erros, mas descarta os pacotes errados. |
Segmentos de reconhecimento | Segmentos sem reconhecimento |
Usando protocolo de handshake como SYN, SYN-ACK, ACK | Sem handshake (protocolo sem conexão) |
O TCP é confiável, pois garante a entrega de dados ao roteador de destino. | A entrega de dados ao destino não pode ser garantida em UDP. |
O TCP oferece extensos mecanismos de verificação de erros porque fornece controle de fluxo e confirmação de dados. | O UDP tem apenas um único mecanismo de verificação de erros que é usado para somas de verificação. |
Aplicação de TCP
Aqui, estão as vantagens / vantagens de usar o modelo TCP / IP:
- Ajuda a estabelecer / configurar uma conexão entre diferentes tipos de computadores.
- Opera independentemente do sistema operacional
- Suporta muitos protocolos de roteamento.
- Ele permite a internetworking entre as organizações.
- Pode ser operado de forma independente.
- Suporta vários protocolos de roteamento.
- O TCP pode ser usado para estabelecer uma conexão entre dois computadores.
Aplicação de UDP
- O método UDP é amplamente usado por aplicativos sensíveis ao tempo, bem como por servidores que respondem a pequenas consultas de uma base de clientes maior.
- O UDP é compatível com broadcasts de pacote para envio por toda a rede e para envio multicast.
- Ele também é usado em sistemas de nomes de domínio, voz sobre IP e jogos online.
Vantagem do TCP
Aqui, estão os prós / benefícios do TCP:
- Ajuda a estabelecer / configurar uma conexão entre diferentes tipos de computadores.
- Ele opera independentemente do sistema operacional.
- Suporta muitos protocolos de roteamento.
- Ele permite a internetworking entre as organizações.
- O modelo TCP / IP possui uma arquitetura cliente-servidor altamente escalonável.
- Pode ser operado de forma independente.
- Suporta vários protocolos de roteamento.
- Ele pode ser usado para estabelecer uma conexão entre dois computadores.
Vantagem do UDP
Aqui estão as vantagens / vantagens do UDP:
- Ele nunca o restringe a um modelo de comunicação baseado em conexão; é por isso que a latência de inicialização em aplicativos distribuídos é baixa.
- O destinatário dos pacotes UDP os torna não gerenciados, o que também inclui os limites do bloco.
- Transmissão broadcast e multicast também estão disponíveis com UDP
- A perda de dados pode ser feita
- Transação pequena (busca DNS)
- Aplicativo com uso intensivo de largura de banda que resiste à perda de pacotes
Desvantagens do TCP
Aqui estão as desvantagens de usar TCP:
- O TCP nunca conclui uma transmissão sem que todos os dados em movimento sejam explicitamente solicitados.
- Você não pode usar para transmissão broadcast ou multicast.
- O TCP não tem limites de bloco, então você precisa criar o seu próprio.
- O TCP oferece muitos recursos que você não deseja. Isso pode desperdiçar largura de banda, tempo ou esforço.
- Nesse modelo, a camada de transporte não garante a entrega dos pacotes.
- Substituir o protocolo em TCP / IP não é fácil.
- Ele não oferece uma separação clara de seus serviços, interfaces e protocolos.
Desvantagens do UDP
Aqui estão alguns contras / desvantagens importantes do UDP:
- No protocolo UDP, um pacote não pode ser entregue ou entregue duas vezes. Pode ser entregue fora de serviço, portanto você não obtém nenhuma indicação.
- Os roteadores são muito descuidados com o UDP, então eles nunca o retransmitem se ele colidir.
- O UDP não tem controle de congestionamento e controle de fluxo, portanto, a implementação é tarefa de um aplicativo do usuário.
- UDP gosta principalmente de sofrer pior perda de pacotes
Quando usar UDP e TCP?
- O TCP é a escolha ideal, e mesmo com sobrecarga associada. Portanto, quando a maior parte da sobrecarga está na conexão, seu aplicativo permanece conectado por qualquer período de tempo.
- UDP é ideal para usar com multimídia como VoIP.
- Use soquetes TCP quando o cliente e o servidor enviarem pacotes independentemente naquele momento; um atraso ocasional é aceitável. (por exemplo, Poker Online).
- Você deve usar o UDP do usuário se o cliente e o servidor puderem enviar pacotes separadamente e o atraso ocasional também não for aceitável. (por exemplo, jogos multijogador).