Internet Control Message Protocol
Esta página ou se(c)ção precisa ser formatada para o padrão wiki. (novembro de 2015) |
| Internet Control Message Protocol | |
|---|---|
| Protocolo de comunicação | |
Um cabeçalho geral para ICMPv4 | |
| Propósito | Protocolo auxiliar para IPv4[1] |
| Desenvolvedor | DARPA |
| Introdução | 1981 |
| Camada OSI | Camada de rede |
| RFC | 792 |
| Pilha de protocolos TCP/IP |
|---|
| Camada de aplicação |
| Camada de transporte |
| Camada de rede |
| Camada de enlace de dados |
ICMP, sigla para o inglês Internet Control Message Protocol (em português, Protocolo de Mensagens de Controle da Internet), é um protocolo integrante do Protocolo IP, definido pelo RFC 792, é utilizado para comunicar informações da camada de rede, sendo o uso mais comum para fornecer relatórios de erros à fonte original. Qualquer computador que utilize IP precisa aceitar as mensagens ICMP e alterar o seu comportamento de acordo com o erro relatado. Os gateways devem estar programados para enviar mensagens ICMP quando receberem datagramas que provoquem algum erro.
As mensagens ICMP geralmente são enviadas automaticamente em uma das seguintes situações:
- Um pacote IP não consegue chegar ao seu destino (i.e. Tempo de vida do pacote expirado)
- O Gateway não consegue retransmitir os pacotes na frequência adequada (i.e. Gateway congestionado)
- O Roteador ou Encaminhador indica uma rota melhor para a máquina a enviar pacotes.
Ferramentas comumente usadas em Windows baseadas nesse protocolo são: Ping e Traceroute.
Frames ICMP (1)
- Echo Request / Reply
Mensagens para funções de teste e controle da rede, caso a maquina esteja ligada ira responder com um reply e se estiver inalcançavel request;
Usadas pelo comando PING - Destination Unreachable
Enviado por um router que deixa fora um Datagrama;
Tipo de mensagem que é obtida quando não se consegue localizar o equipamento alvo;
(nem todos os datagramas perdidos são detectados)
- CODE - Indica a razão da perda do datagrama
- Timestamp Request / Reply
Mensagens para sincronização dos relógios das máquinas
Estrutura de um datagrama ICMP
Os pacotes ICMP são encapsulados dentro de datagramas IPv4 composto pelas secções cabeçalho (header) e dados.
Cabeçalho (Header)
Este começa no final do cabeçalho IPv4 e é constituído por 8 bytes.
Tipo (Type)
O tipo de mensagem ICMP, ver Mensagens de controle.
Código (Code)
O código (subtipo) da mensagem ICMP, ver Mensagens de controle.
Checksum (Soma de verificação)
Especificado em RFC 1071, é uma soma de verificação da integridade dos dados, calculado a partir do cabeçalho e dos dados do pacote ICMP.
Resto do cabeçalho (Rest of Header)
Um campo de 4 bytes, de conteúdo variado dependendo do tipo e código ICMP.
| Offsets | Byte | 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Byte | Bit | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
| 0 | 0 | Tipo | Código | Checksum | |||||||||||||||||||||||||||||
| 4 | 32 | Resto do Cabeçalho (Rest of Header) | |||||||||||||||||||||||||||||||
Dados
O tamanho da secção dos dados de um pacote ICMP é variável. As mensagens de erro ICMP contêm uma cópia do cabeçalho IPv4 completo, bem como pelo menos 8 bytes dos dados provenientes do mesmo datagrama IPv4 que causou a mensagem de erro. O tamanho máximo de uma mensagem ICMP é de 576 bytes.
Mensagens de controle
As mensagens de controle são identificadas pelo valor no campo tipo, o campo código fornece informação contextual adicional para a mesma. Desde a implementação do protocolo ICMP, algumas mensagens de controle foram postas em desuso.
| Tipo | Código | Estado | Descrição |
|---|---|---|---|
| 0 – Echo Reply[4]:14 | 0 | Resposta Echo (usado para fazer ping) | |
| 1 and 2 | não atribuídos | Reservado | |
| 3 – Destination Unreachable[4]:4 | 0 | Rede de destino inacessível | |
| 1 | Máquina de destino inacessível | ||
| 2 | Protocolo de destino inacessível | ||
| 3 | Porta de destino inacessível | ||
| 4 | Fragmentação necessária mas impossível devido à bandeira (flag) DF | ||
| 5 | Falha na rota de origem | ||
| 6 | Rede de destino desconhecida | ||
| 7 | Máquina de destino desconhecida | ||
| 8 | Source host isolated | ||
| 9 | Network administratively prohibited | ||
| 10 | Host administratively prohibited | ||
| 11 | Rede inacessível para ToS | ||
| 12 | Máquina inacessível para ToS | ||
| 13 | Communication administratively prohibited | ||
| 14 | Host Precedence Violation | ||
| 15 | Precedence cutoff in effect | ||
| 4 – Source Quench | 0 | deprecada | Source quench (congestion control) |
| 5 – Redirect Message | 0 | Redirecionamento do datagrama para a rede. | |
| 1 | Redirecionamento do datagrama para a máquina | ||
| 2 | Redirecionamento do datagrama para o ToS & rede | ||
| 3 | Redirecionamento do datagrama para o ToS & máquina | ||
| 6 | deprecada | Alternate Host Address | |
| 7 | não atribuído | Reservado | |
| 8 – Echo Request | 0 | Echo request (used to ping) | |
| 9 – Router Advertisement | 0 | Router Advertisement | |
| 10 – Router Solicitation | 0 | Router discovery/selection/solicitation | |
| 11 – Time Exceeded[4]:6 | 0 | TTL expired in transit | |
| 1 | Fragment reassembly time exceeded | ||
| 12 – Parameter Problem: Bad IP header | 0 | Pointer indicates the error | |
| 1 | Opção obrigatória em falta | ||
| 2 | Bad length | ||
| 13 – Timestamp | 0 | Timestamp | |
| 14 – Timestamp Reply | 0 | Timestamp reply | |
| 15 – Information Request | 0 | deprecada | Information Request |
| 16 – Information Reply | 0 | deprecada | Information Reply |
| 17 – Address Mask Request | 0 | deprecada | Pedido da mascara do endereço |
| 18 – Address Mask Reply | 0 | deprecada | Resposta da mascara do endereço |
| 19 | reserved | Reservada para segurança | |
| 20 through 29 | reservadas | Reserved for robustness experiment | |
| 30 – Traceroute | 0 | deprecada | Information Request |
| 31 | deprecada | Datagram Conversion Error | |
| 32 | deprecada | Mobile Host Redirect | |
| 33 | deprecada | Where-Are-You (originalmente destinado para IPv6) | |
| 34 | deprecada | Here-I-Am (originalmente destinado para IPv6) | |
| 35 | deprecada | Mobile Registration Request | |
| 36 | deprecada | Mobile Registration Reply | |
| 37 | deprecada | Domain Name Request | |
| 38 | deprecada | Domain Name Reply | |
| 39 | deprecada | SKIP Algorithm Discovery Protocol, Simple Key-Management for Internet Protocol | |
| 40 | Photuris, Security failures | ||
| 41 | experimental | ICMP for experimental mobility protocols such as Seamoby [RFC4065] | |
| 42 – Extended Echo Request[5] | 0 | Sem erros | |
| 43 – Extended Echo Reply[5] | 0 | Sem erros | |
| 1 | Pedido mal formado | ||
| 2 | Interface desconhecida | ||
| 3 | No Such Table Entry | ||
| 4 | Múltiplas interfaces satisfazem o pedido | ||
| 44 through 252 | não atribuídos | Reservado | |
| 253 | experimental | RFC3692-style Experiment 1 (RFC 4727) | |
| 254 | experimental | RFC3692-style Experiment 2 (RFC 4727) | |
| 255 | reservado | Reservado |
Ligações externas
Referências
- ↑ RFC 1812
- ↑ «IANA ICMP Parameters». Iana.org. 21 de setembro de 2012. Consultado em 7 de janeiro de 2013
- ↑ Computer Networking – A Top-Down Approach by Kurose and Ross
- ↑ a b c Predefinição:Cite rfc
- ↑ a b PROBE: A Utility for Probing Interfaces. doi:10.17487/RFC8335
. Request for Comments 8335
- ↑ Erro de citação: Etiqueta
<ref>inválida; não foi fornecido texto para as "refs" nomeadas:0
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
