O protocolo IP faz parte da camada Internet da sequência de protocolos TCP/IP. É um dos protocolos mais importantes da Internet, porque permite a elaboração e o transporte dos datagramas IP (os pacotes de dados), sem contudo assegurar a “entrega”. Na realidade, o protocolo IP trata os datagramas IP independentemente uns dos outro, definindo a sua representação, o seu encaminhamento e a sua expedição.
O protocolo IP determina o destinatário da mensagem graças a 3 campos:
Os dados circulam na Internet sob a forma de datagramas (fala-se também de pacotes). Os datagramas são dados encapsulados, isto é, são dados aos quais se acrescentaram cabeçalhos que correspondem a informações sobre o seu transporte (como o endereço IP de destino).
Os dados contidos nos datagramas são analisados (e eventualmente alterados) pelos switchs que permitem o seu trânsito.
Eis o aspecto de um datagrama:
|
<-- | 32 bits | --> |
|
Versão (4 bits) |
Comprimento de cabeçalho (4 bits) |
Tipo de serviço (8 bits) |
Comprimento total (16 bits) | |
|
Identificação (16 bits) |
Bandeira (3 bits) |
Desfasamento fragmento (13 bits) | ||
|
Duração de vida (8 bits) |
Protocolo (8 bits) |
Soma de controlo cabeçalho (16 bits) | ||
|
Endereço IP fonte (32 bits) | ||||
|
Endereço IP destino (32 bits) | ||||
|
Dados | ||||
Eis o significado dos diferentes campos:
Como vimos anteriormente, a dimensão máxima de um datagrama é de 65536 bytes. Contudo, este valor nunca é atingido porque as redes não têm uma capacidade suficiente para enviar pacotes assim tão grandes. Além disso, as redes na Internet utilizam diferentes tecnologias, de modo que a dimensão máxima de um datagrama varia de acordo com o tipo de rede.
A dimensão máxima de uma trama chama-se MTU (Maximum Transfer unit), que provocará a fragmentação do datagrama se este tiver uma dimensão maior do que a MTU da rede.
| Tipo de rede | MTU (em bytes) |
|---|---|
| Arpanet | 1000 |
| Ethernet | 1500 |
| FDDI | 4470 |
A fragmentação de um datagrama faz-se a nível dos switchs, ou seja, durante a transição de uma rede cuja MTU é considerável para uma rede cuja MTU é mais fraca. Se o datagrama for demasiado grande para passar na rede, o switch vai fragmentá-lo, quer dizer, recortá-lo em fragmentos de dimensões inferiores ao MTU da rede e de modo a que a dimensão do fragmento seja um múltiplo de 8 bytes.

O switch vai seguidamente enviar estes fragmentos de maneira independente e reencapsulá-los (acrescentar um cabeçalho a cada fragmento) de maneira a ter em conta a nova dimensão do fragmento. Além disso, o switch acrescenta informações para que a máquina de destino possa remontar os fragmentos na boa correcta. Nada nos diz, contudo, que os fragmentos chegarão pela boa ordem, já que são encaminhados independentemente uns dos outro.
Para ter em conta a fragmentação, cada datagrama possui vários campos que permitem a sua remontagem :
O encaminhamento IP faz parte integrante da camada IP da sequência TCP/IP. O encaminhamento consiste em assegurar o encaminhamento de um datagrama IP através de uma rede tomando o caminho mais curto. Este papel é assegurado por máquinas chamadas switchs, quer dizer máquinas ligadas (que ligam) pelo menos duas redes.
Para mais informações, é melhor consultar o RFC 791, que explica de maneira detalhada o protocolo IP: