Modelo TCP/IP

O TCP/IP é uma arquitetura de protocolos utilizada para permitir a comunicação entre dispositivos em uma rede, como computadores, servidores, roteadores, smartphones e outros equipamentos. Ele define um conjunto de regras que determina como os dados devem ser organizados, endereçados, transmitidos e recebidos para que diferentes dispositivos e sistemas consigam se comunicar.
Apesar de ser conhecido como “TCP/IP”, ele não é um único protocolo. O nome representa um conjunto de protocolos que trabalham em conjunto, sendo o TCP (Transmission Control Protocol) e o IP (Internet Protocol) alguns dos principais.
A arquitetura TCP/IP é a base da comunicação na Internet e também é utilizada em redes locais e corporativas.
 

Como funciona o TCP/IP?
 

Quando um dispositivo precisa enviar informações para outro, os dados passam por diferentes etapas. Cada camada da arquitetura TCP/IP possui uma função específica no processo de comunicação.
De forma simplificada:

Aplicação → Transporte → Internet → Acesso à Rede


Cada camada utiliza protocolos próprios para realizar suas funções, que veremos em breve. 

 

O que é o TCP?
 

O TCP (Transmission Control Protocol), ou Protocolo de Controle de Transmissão, é um protocolo da camada de Transporte da arquitetura TCP/IP.
Sua principal função é fornecer uma comunicação confiável entre aplicações que estão em dispositivos diferentes.
Antes de transmitir os dados, o TCP estabelece uma conexão entre origem e destino. Durante a comunicação, ele utiliza mecanismos para controlar a transmissão e verificar se os dados chegaram corretamente.
Entre suas principais características estão:
 

  • Estabelecimento de conexão;
  • Confirmação de recebimento (ACK);
  • Ordenação dos dados;
  • Retransmissão de dados perdidos;
  • Controle de fluxo;
  • Controle de congestionamento;
  • Verificação da integridade dos dados.


Por isso, o TCP é utilizado por diversos protocolos de aplicação que precisam de uma comunicação confiável.
Exemplos incluem HTTP/HTTPS tradicional, FTP, SSH, Telnet, SMTP, POP3 e IMAP.

Importante: isso não significa que esses protocolos sejam parte do TCP. Eles são protocolos de camadas superiores que podem utilizar o TCP como protocolo de transporte.

TCP x UDP
O UDP também pertence à camada de Transporte, mas funciona de maneira diferente do TCP.

 

Comparação entre TCP e UDP:

TCPUDP
Orientado à conexãoNão orientado à conexão
Possui confirmação de recebimentoNão possui confirmação de recebimento
Pode retransmitir dados perdidosNão realiza retransmissão por conta própria
Garante a ordenação dos dadosNão garante a ordem
Possui controle de fluxoNão possui os mesmos mecanismos do TCP
Maior sobrecargaMenor sobrecarga
Mais confiávelMenos confiável
Indicado quando a entrega correta é prioridadeIndicado quando baixa latência e rapidez são importantes

 

O UDP pode ser utilizado em situações como DNS, VoIP, streaming e aplicações em tempo real. Porém, é importante lembrar que aplicações modernas podem utilizar mecanismos próprios para fornecer confiabilidade sobre UDP. Um exemplo é o QUIC, utilizado pelo HTTP/3.
 

Resumindo:
 

O TCP/IP é uma arquitetura de protocolos que permite a comunicação entre dispositivos em redes.
Dentro dessa arquitetura, cada camada possui uma responsabilidade:

Aplicação → fornece serviços e protocolos utilizados pelas aplicações.
Transporte → realiza a comunicação entre aplicações, utilizando TCP ou UDP.
Internet → realiza o endereçamento e encaminhamento dos pacotes, principalmente por meio do IP.
Acesso à Rede → permite a comunicação através da tecnologia de rede utilizada.

O TCP é apenas um dos protocolos que fazem parte dessa arquitetura. Ele atua na camada de Transporte e tem como objetivo fornecer uma transmissão confiável e organizada dos dados.
Já o IP atua na camada de Internet, sendo responsável pelo endereçamento e encaminhamento dos pacotes entre as redes.

TCP e IP trabalham juntos, mas possuem funções diferentes: o IP ajuda a levar os pacotes até o destino, enquanto o TCP ajuda a garantir que os dados sejam entregues de forma confiável e organizada à aplicação.