Como o ICMP é único?

1

Acabei de ler isto em Wikipédia :

Although ICMP messages are contained within standard IP datagrams, ICMP messages are usually processed as a special case, distinguished from normal IP processing, rather than processed as a normal sub-protocol of IP.

Como o ICMP é único? Eu tentei descobrir se ele está sendo usado em um pacote TCP ou em um pacote UDP ao executar ping , mas continuei lendo que é um protocolo "exclusivo" e não consegui encontrar uma resposta definitiva para isso.

Além disso, vi essa pergunta e uma resposta em Wireshark Lab sobre ICMP - ping :

If ICMP sent UDP packets instead (as in Unix/Linux), would the IP protocol number still be 01 for the probe packets? If not, what would it be?

No. If ICMP sent UDP packets instead, the IP protocol number should be 0x11.

Por que o número do protocolo IP seria diferente se o ICMP enviasse pacotes UDP?
Além disso, o ICMP não usa o UDP? Como isso funciona?

    
por tempy 22.11.2012 / 15:15

1 resposta

6

How is ICMP unique? I tried to find out whether it is being used in a TCP packet or a UDP packet when running ping, but I kept reading that it's a "unique" protocol and couldn't find a definite answer for this.

Ele não está sendo usado em um datagrama TCP ou UDP.

Em vez disso, olhe assim:

IP é um envelope. Transmissões acontecem quando alguém me entrega um papel e me diz onde tem que ir. Coloco o papel em um envelope, escrevo o destino e coloco no correio. Receber é o contrário. Um envelope chega no post-in, eu tiro do envelope e entrego para a próxima pessoa.

Note que eu não me importo como a parte postal funciona. Poderia haver um cara de uniforme postal. Pode ser um driver dedicado. Alguém poderia pegar os envelopes e amarrá-los aos pidgeons. Tudo o que me importa é colocar papel dentro e fora dos envelopes.


Esses documentos vêm em vários formatos.

  • Um deles é apenas um papel comum com texto. (UDP).
  • Um deles é um tipo de papel com números de rastreamento (pense: em referência à sua solicitação, aqui está a parte 2 de .... etc etc) (TCP)
  • Um deles não é uma letra com texto, mas com mensagens de status (ICMP)

Cada papel tem uma pequena marcação no canto. Essas marcações são diferentes para todos os três tipos (provavelmente é sua única)

Se for um UDP marcado (17 ou 0x11), o papel será colocado assim:

Seamarcaçãonocantotiverosinal/valordeTCP(0x06),entãoseiqueopapelserácolocadoassim:

Se eu tiver um datagrama ICMP (0x01), sei que o layout será um pouco diferente.

Mas, em todos os casos, posso verificar um local específico (o mesmo lugar em todos os pedaços de papel) e ler um valor. Com base nisso eu sei como o layout do resto do papel.

Todos esses valores são exclusivo por layout de papel

    
por 22.11.2012 / 15:54

Tags