Protocole ICMP

Le protocole ICMP est un protocole de couche Internet utilisé par les périphériques réseau pour diagnostiquer les problèmes de communication réseau. Le protocole ICMP est principalement utilisé pour déterminer si les données atteignent ou non la destination voulue dans les meilleurs délais. Généralement, le protocole ICMP est utilisé sur des périphériques réseau, tels que des routeurs.
 
 
ICMP n’est pas un protocole de transport qui envoie des données entre des systèmes.

Bien que ICMP ne soit pas utilisé régulièrement dans les applications des utilisateurs finaux, il est utilisé par les administrateurs réseau pour dépanner les connexions Internet dans les utilitaires de diagnostic, notamment les commandes ping et traceroute.

Les messages ICMP sont transmis sous forme de datagrammes et consistent en un en-tête IP qui encapsule les données ICMP. Les paquets ICMP sont des paquets IP avec ICMP dans la partie de données IP. Les messages ICMP contiennent également l’intégralité de l’en-tête IP du message d’origine, afin que le système final sache quel paquet a échoué.
 

Structure de paquet ICMP

L’en-tête ICMP apparaît après l’en-tête de paquet IPv4 ou IPv6 et est identifié comme 1 : numéro de protocole IP. Le protocole complexe contient trois champs:


  • Le type qui identifie le message ICMP;
  • Le code qui contient plus d’informations sur le champ type;
  • La somme de contrôle(checksum) qui permet de détecter les erreurs introduites lors de la transmission.

Les données ICMP et l’en-tête IP d’origine suivent les trois champs, ce qui permet d’identifier les paquets ayant effectivement échoué.
 

Codes de message ICMP

Le champ « code » du bloc ICMP contient des informations très utiles. Le code est numérique et voici certaines des valeurs les plus intéressantes que le champ peut avoir:

  • 0: echo reply – utilisé pour le ping
  • 3: destination inaccessible
  • 4: extinction de la source – le routeur est surchargé
  • 5: redirect – utilise un routeur différent
  • 8: demande d’écho – utilisé pour le ping
  • 9: réponse de l’annonce du routeur
  • 10: sollicitation de routeur
  • 11: temps dépassé – utilisé pour traceroute
Time to Live (TTL)


 
L’un des champs le plus connu dans l’en-tête IP pour provoquer une erreur générant ICMP est le champ Time to Live (TTL). Ce champ détermine la durée pendant laquelle un datagramme existera. À chaque saut, le champ TTL est décrémenté. Lorsque le champ TTL atteint zéro, le datagramme est dit « expiré » et est rejeté. Cela évite les encombrements sur le réseau qui sont créés lorsqu’un datagramme ne peut pas être transmis à sa destination. La plupart des applications définissent la durée de vie du champ sur 30 ou 32 par défaut.
QCM Réseau

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *