Comment Ca Marche l'informatique ?
Accueil
Forum
Aide
bordure
Page d'accueil
Ajouter aux favoris
Signalez une erreur
Ecrire à Jean-Francois Pillou
Présentation
Protocole
Adresses IP
Noms de domaines
Notion de port
Les URLs
Avancé:TCP/IP
Avancé:Protocole IP
Avancé:Protocole ARP
Avancé:Protocole ICMP
Avancé:Protocole TCP
Avancé:Protocole UDP
Avancé:Routage
Avancé:PPP et SLIP
Avancé:Protocole HTTP
Avancé:Protocole LDAP
Avancé:Protocole DHCP
Avancé:Protocole SNMP
Avancé:Protocole RTCP
Avancé:Protocole IPv6
Avancé:NAT
Avancé:VLAN
Avancé:POP, SMTP, IMAP
Avancé:Protocole FTP
Avancé:Protocole Telnet
Avancé:Les RFC
Version 2.0.3
Le protocole ICMP Page précédente Page suivante Retour à la page d'accueil

La gestion des erreurs

Le protocole ICMP (Internet Control Message Protocol) est un protocole qui permet de gérer les informations relatives aux erreurs aux machines connectées. Etant donné le peu de contrôles que le protocole IP réalise, il permet non pas de corriger ces erreurs mais de faire part de ces erreurs aux protocoles des couches voisines. Ainsi, le protocole ICMP est utilisé par tous les routeurs, qui l'utilisent pour signaler une erreur (appelé Delivery Problem).

Les messages ICMP sont encapsulés

Les messages d'erreur ICMP sont transportés sur le réseau sous forme de datagramme, comme n'importe quelle donnée. Ainsi, les messages d'erreur peuvent eux-mêmes être sujet d'erreurs.

Toutefois en cas d'erreur sur un datagramme transportant un message ICMP, aucun message d'erreur n'est délivré pour éviter un effet "boule de neige" en cas d'incident sur le réseau.

Voici à quoi ressemble un message ICMP encapsulé dans un datagramme IP:

En-tête
Message ICMP

Type
(8 bits)
Code
(8 bits)
Checksum
(16 bits)
Message
(taille variable)

Signification des messages ICMP

Type Code Message Signification du message
8 0 Demande d'ECHO Ce message est utilisé lorsqu'on utilise la commande PING. Cette commande, permettant de tester le réseau, envoie un datagramme à un destinataire et lui demande de le restituer
3 0 destinataire inaccessible Le réseau n'est pas accessible
3 1 destinataire inaccessible La machine n'est pas accessible
3 2 destinataire inaccessible Le protocole n'est pas accessible
3 3 destinataire inaccessible Le port n'est pas accessible
3 4 destinataire inaccessible Fragmentation nécessaire mais impossible à cause du drapeau (flag) DF
3 5 destinataire inaccessible Le routage a échoué
3 6 destinataire inaccessible Réseau inconnu
3 7 destinataire inaccessible Machine inconnue
3 8 destinataire inaccessible Machine non connectée au réseau (inutilisé)
3 9 destinataire inaccessible Communication avec le réseau interdite
3 10 destinataire inaccessible Communication avec la machine interdite
3 11 destinataire inaccessible Réseau inaccessible pour ce service
3 12 destinataire inaccessible Machine inaccessible pour ce service
3 11 destinataire inaccessible Communication interdite (filtrage)
4 0 Source Quench Le volume de données envoyé est trop important, le routeur envoie ce message pour prévenir qu'il sature afin de demander de réduire la vitesse de transmission
5 0 Redirection pour un hôte Le routeur remarque que la route d'un ordinateur n'est pas optimale et envoie l'adresse du routeur à rajouter dans la table de routage de l'ordinateur
5 1 Redirection pour un hôte et un service donné Le routeur remarque que la route d'un ordinateur n'est pas optimale pour un service donné et envoie l'adresse du routeur à rajouter dans la table de routage de l'ordinateur
5 2 Redirection pour un réseau Le routeur remarque que la route d'un réseau entier n'est pas optimale et envoie l'adresse du routeur à rajouter dans la table de routage des ordinateurs du réseau
5 3 Redirection pour un réseau et un service donné Le routeur remarque que la route d'un réseau entier n'est pas optimale pour un service donné et envoie l'adresse du routeur à rajouter dans la table de routage des ordinateurs du réseau
11 0 Temps dépassé Ce message est envoyé lorsque le temps de vie d'un datagramme est dépassé. L'en-tête du datagramme est renvoyé pour que l'utilisateur sache quel datagramme a été détruit
11 1 Temps de ré-assemblage de fragment dépassé Ce message est envoyé lorsque le temps de ré-assemblage des fragments d'un datagramme est dépassé.
12 0 en-tête erronné Ce message est envoyé lorsqu'un champ d'un en-tête est erronné. La position de l'erreur est retournée
13 0 Timestamp request Une machine demande à une autre son heure et sa date système (universelle)
14 0 Timestamp reply La machine réceptrice donne son heure et sa date système afin que la machine émettrice puisse déterminer le temps de transfert des données
15 0 Demande d'adresse réseau Ce message permet de demander au réseau une adresse IP
16 0 réponse d'adresse réseau Ce message répond au message précédent
17 0 Demande de masque de sous-réseau Ce message permet de demander au réseau unmasque de sous-réseau
18 0 réponse de masque de sous-réseau Ce message répond au message précédent
17 0 Timestamp reply La machine réceptrice donne son heure et sa date système afin que la machine émettrice puisse déterminer le temps de transfert des données

Plus d'informations

Pour plus d'informations sur le protocole ICMP, le mieux est de se reporter à la RFC 792 expliquant de manière détaillée le protocole :


Page précédente Page suivante

Ce document issu de CommentCaMarche.net est soumis à la licence GNU FDL. Vous pouvez copier, modifier des copies de cette page tant que cette note apparaît clairement.