O Datagrama IPv4 é a unidade de dados básica da camada de rede. Ele é composto por um Cabeçalho (mínimo de 20 bytes) seguido pelos dados propriamente ditos.

1. Estrutura do Cabeçalho IPv4 (RFC 791)

Campo Tamanho (Bits) Função
Version 4 Para o IPv4, o valor é fixo em 4 (0100).
IHL (Header Length) 4 Indica o tamanho do cabeçalho em palavras de 32 bits.
Type of Service (ToS) 8 Usado para priorização de pacotes (Differentiated Services).
Total Length 16 Tamanho total do datagrama (Cabeçalho + Dados).
Identification 16 Identifica pacotes que pertencem a um mesmo datagrama fragmentado.
Flags 3 Usado no controle de fragmentação (Don’t Fragment, More Fragments).
Fragment Offset 13 Indica a posição da parte do dado no datagrama original.
TTL (Time to Live) 8 Contador de “saltos” para evitar pacotes em loop infinito na rede.
Protocol 8 Identifica qual protocolo da camada superior (ex: 6=TCP, 17=UDP, 1=ICMP).
Header Checksum 16 Verificação de integridade apenas do cabeçalho.
Source Address 32 Endereço IP do emissor.
Destination Address 32 Endereço IP do receptor final.

2. O Papel do TTL (Time to Live)

O campo TTL é vital para a sobrevivência da rede:
- A cada roteador que o pacote atravessa, o valor do TTL é subtraído em 1.
- Se o TTL chegar a zero, o roteador descarta o pacote e envia uma mensagem de erro ICMP Type 11 (Time Exceeded) para o remetente.
- Isso impede que pacotes fiquem girando para sempre em caso de erro de roteamento.

3. Fragmentação e Montagem

Quando um pacote IP precisa atravessar um link com uma MTU (Maximum Transmission Unit) menor que o tamanho do pacote, ele é fragmentado.
- Os roteadores dividem o pacote original em pedaços menores.
- O host de destino usa o campo Identification e Fragment Offset para remontar o pacote original antes de entregá-lo para a camada de transporte.


[!IMPORTANT]
No IPv6, a fragmentação não é mais feita pelos roteadores intermediários. Se um pacote for muito grande, o roteador simplesmente o descarta e avisa o emissor para que ele mesmo faça a fragmentação. Isso torna o roteamento na espinha dorsal da Internet muito mais performático.