75-Protocolo TCP-IP
Visão Geral
A suíte de protocolos TCP/IP (Transmission Control Protocol/Internet Protocol) é o conjunto fundamental de protocolos de comunicação que forma a base da Internet e da maioria das redes de computadores modernas. Diferente do Modelo OSI, que é um modelo de referência conceitual, o TCP/IP é um modelo prático e implementado, originalmente desenvolvido pela DARPA (Defense Advanced Research Projects Agency) nos EUA. Ele define como os dados devem ser empacotados, endereçados, transmitidos, roteados e recebidos em redes interconectadas. A suíte é nomeada a partir de seus dois protocolos mais importantes: o TCP, que fornece transporte confiável orientado à conexão, e o IP, que lida com o endereçamento e roteamento de pacotes sem conexão.
Definição
TCP/IP não é um único protocolo, mas uma suíte (conjunto) de protocolos organizados em camadas. O modelo TCP/IP geralmente é descrito com quatro ou cinco camadas (dependendo da literatura):
Modelo de 4 Camadas (RFC 1122):
- Camada de Aplicação: Combina as camadas de Aplicação, Apresentação e Sessão do OSI. Contém protocolos que as aplicações usam diretamente para comunicação (HTTP, SMTP, FTP, DNS, etc.).
- Camada de Transporte: Corresponde à Camada de Transporte do OSI. Responsável pela comunicação ponta a ponta entre aplicações. Protocolos principais: TCP (confiável, orientado à conexão) e UDP (não confiável, sem conexão).
- Camada de Internet (ou Rede): Corresponde à Camada de Rede do OSI. Responsável pelo endereçamento lógico (IP), roteamento de pacotes entre redes e fragmentação. Protocolo principal: IP (IPv4, IPv6). Protocolos auxiliares: ICMP, ARP, IGMP.
- Camada de Interface de Rede (ou Enlace): Combina as camadas de Enlace de Dados e Física do OSI. Lida com a transmissão de pacotes IP sobre um meio físico específico (Ethernet, Wi-Fi, PPP, etc.) e o endereçamento físico (MAC). Não define protocolos específicos, mas descreve como o IP opera sobre diferentes tecnologias de enlace.
Modelo de 5 Camadas (Alternativo): Separa a Camada de Interface de Rede em Camada de Enlace de Dados e Camada Física, alinhando-se mais diretamente com o OSI.
Exemplos (Protocolos Chave da Suíte)
- IP (Internet Protocol): Endereçamento e roteamento de pacotes (IPv4, IPv6).
- TCP (Transmission Control Protocol): Transporte confiável, ordenado e orientado à conexão.
- UDP (User Datagram Protocol): Transporte simples, rápido, sem conexão e não confiável.
- HTTP/HTTPS (Hypertext Transfer Protocol/Secure): Transferência de conteúdo web.
- SMTP (Simple Mail Transfer Protocol): Envio de e-mail.
- POP3/IMAP (Post Office Protocol/Internet Message Access Protocol): Recebimento de e-mail.
- FTP (File Transfer Protocol): Transferência de arquivos.
- DNS (Domain Name System): Resolução de nomes de domínio para endereços IP.
- ARP (Address Resolution Protocol): Mapeamento IP para MAC em redes locais.
- ICMP (Internet Control Message Protocol): Mensagens de controle e erro (usado por ping, traceroute).
- DHCP (Dynamic Host Configuration Protocol): Atribuição automática de endereços IP e configurações de rede.
Características
- Arquitetura em Camadas: Organização modular.
- Comutação de Pacotes: Baseado na transmissão de pacotes independentes (datagramas IP).
- Interconexão de Redes (Internetworking): Projetado para conectar redes heterogêneas.
- Endereçamento Universal (IP): Fornece um esquema de endereçamento lógico global.
- Filosofia “Inteligência nas Pontas”: A maior parte da complexidade (confiabilidade, controle de fluxo) está nos dispositivos finais (TCP), enquanto a rede (IP) é relativamente simples (roteamento best-effort).
- Padrões Abertos (RFCs): Definido por documentos públicos (Request for Comments) gerenciados pela IETF (Internet Engineering Task Force).
Vantagens
- Onipresença e Padrão Global: É a base da Internet e da maioria das redes.
- Interoperabilidade: Permite a comunicação entre uma vasta gama de dispositivos e sistemas operacionais.
- Escalabilidade: Provou ser capaz de escalar para suportar bilhões de dispositivos na Internet global.
- Flexibilidade: Pode operar sobre diversas tecnologias de rede física e de enlace.
- Robustez: Projetado para sobreviver a falhas parciais da rede (roteamento dinâmico).
- Padrões Abertos: Não é proprietário, fomentando inovação e competição.
Desvantagens
- Complexidade (Inicial): A configuração e o gerenciamento podem ser complexos.
- Segurança (Original): Os protocolos originais não foram projetados com segurança em mente (levando ao desenvolvimento de extensões como IPsec, TLS/SSL).
- Não Garante Entrega (IP): A camada IP por si só não garante entrega, ordem ou ausência de duplicação (depende do TCP para isso).
- Modelo vs. Implementação: O modelo de 4 camadas não se alinha perfeitamente com o modelo OSI, o que pode causar confusão conceitual.
Seção Expandida: TCP vs. UDP
A escolha entre TCP e UDP na camada de transporte depende dos requisitos da aplicação:
- TCP: Usado quando a confiabilidade é crucial. Estabelece uma conexão, numera os segmentos, retransmite segmentos perdidos, controla o fluxo e garante a entrega ordenada dos dados. Ideal para web (HTTP), e-mail (SMTP), transferência de arquivos (FTP).
- UDP: Usado quando a velocidade e o baixo overhead são mais importantes que a confiabilidade. Não estabelece conexão, não numera datagramas, não retransmite e não garante ordem. Ideal para streaming de vídeo/áudio em tempo real (onde pequenas perdas são aceitáveis), jogos online, DNS e DHCP (onde a aplicação implementa sua própria confiabilidade se necessário).