kb.erickguedes.com
Redes de Computadores: Fundamentos Práticos

Modelo OSI e TCP/IP

Aula 1 de 6

Modelo OSI — 7 Camadas

O Modelo OSI (Open Systems Interconnection) é um modelo conceitual que padroniza as funções de um sistema de comunicação em 7 camadas:

CamadaUnidade de Dados (PDU)Função
7 - AplicaçãoDadosInterface com o usuário (HTTP, FTP, SMTP)
6 - ApresentaçãoDadosTradução, criptografia, compressão
5 - SessãoDadosControle de diálogo, sessões
4 - TransporteSegmentoConfiabilidade, controle de fluxo
3 - RedePacoteRoteamento, endereçamento lógico
2 - EnlaceQuadroEndereçamento MAC, detecção de erros
1 - FísicaBitsTransmissão binária pelo meio físico

Encapsulamento

Cada camada adiciona um header ao dado recebido da camada superior:

[Dados da Aplicação]
↓ Camada de Transporte adiciona header TCP/UDP
[TCP|Dados]
↓ Camada de Rede adiciona header IP
[IP|TCP|Dados]
↓ Camada de Enlace adiciona header Ethernet + FCS
[Ethernet|IP|TCP|Dados|FCS]

Modelo TCP/IP

O modelo TCP/IP possui 4 camadas, mais próximo da implementação real:

CamadaProtocolos Principais
AplicaçãoHTTP, HTTPS, DNS, DHCP, FTP, SMTP, SSH
TransporteTCP, UDP
InternetIP, ICMP, ARP, IGMP
Acesso à RedeEthernet, Wi-Fi (802.11), PPP

TCP vs UDP

CaracterísticaTCPUDP
ConexãoOrientado à conexãoNão orientado
ConfiabilidadeGarantido (ACK + retransmissão)Sem garantia
OrdenaçãoSequenciaçãoNão ordena
VelocidadeMais lento (overhead)Mais rápido
Uso típicoHTTP, HTTPS, SSH, FTPDNS, VoIP, streaming, DHCP

Headers Fundamentais

Ethernet Frame

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC Destino (6 bytes) | MAC Origem (6 bytes) | Tipo (2 bytes) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Dados (46-1500 bytes) | FCS (4 bytes) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Tipo: 0x0800 = IPv4, 0x0806 = ARP, 0x86DD = IPv6

IPv4 Header

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version|  IHL  |Type of Service|          Total Length         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         Identification        |Flags|      Fragment Offset    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Time to Live |    Protocol   |         Header Checksum       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       Source Address                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Destination Address                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Options (if IHL > 5)                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Protocol: 1=ICMP, 6=TCP, 17=UDP

TCP Header

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Source Port (16)       |    Destination Port (16)       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                    Sequence Number (32)                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                 Acknowledgment Number (32)                   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data| Res| Flags (9)         |      Window Size (16)         |
| Off |    | U A P R S F      |                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Checksum (16)          |  Urgent Pointer (16)          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Flags: SYN, ACK, FIN, RST, PSH, URG

UDP Header

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Source Port (16)       |    Destination Port (16)       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Length (16)       |        Checksum (16)           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Diferenças OSI vs TCP/IP

AspectoOSITCP/IP
Camadas74
DesenvolvimentoTeórico (antes dos protocolos)Prático (protocolos existentes)
UsoModelo de referênciaImplementação real
Camadas superioresSessão + Apresentação fundidasDireto na Aplicação
AbordagemModular, separação estritaFlexível, camadas integradas

Lab: Identificando Headers

# Verificar a tabela ARP (camada de enlace/rede)
arp -a

# Inspecionar conexões TCP ativas
netstat -an | findstr "ESTABLISHED"

# Verificar rota e TTL
ping -n 1 8.8.8.8

# Capturar headers com PowerShell (raw sockets simulados)
Get-NetTCPConnection | Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State

# Análise de MTU e fragmentação
netsh interface ipv4 show interfaces

# Visualizar tabela de roteamento
route print
# Instalar e usar Wireshark via CLI (tshark) para análise de headers
tshark -D                                      # Listar interfaces
tshark -i 1 -c 5 -Y "ip"                      # Capturar 5 pacotes IP
tshark -i 1 -c 1 -T fields -e frame.protocols # Ver protocolos em camadas

O modelo OSI é teórico; o TCP/IP é prático. Todo tráfego de rede passa por encapsulamento sequencial — entender os headers é essencial para diagnosticar problemas.