Maison  >  Article  >  Opération et maintenance  >  Protocole de contrôle des messages Internet ICMP : un éclaireur du temps réseau

Protocole de contrôle des messages Internet ICMP : un éclaireur du temps réseau

齐天大圣
齐天大圣original
2020-12-13 19:11:431743parcourir

Lorsque nous voulons tester la connectivité entre deux hôtes, nous utilisons souvent la commande ping pour vérifier. Mais connaissez-vous le lien entre cette commande et le protocole icmp ?

ICMP est le protocole de contrôle des messages Internet, utilisé pour signaler les conditions d'erreur et les informations d'erreur associées. Le message de données icmp est encapsulé dans le datagramme IP en tant que partie données. Cependant, comme le protocole IP, icmp est également un protocole de couche réseau. L'image suivante est un diagramme de format de message ICMP :

Protocole de contrôle des messages Internet ICMP : un éclaireur du temps réseau

Les types de messages ICMP

Le total des messages ICMP est divisé en deux catégories, à savoir les messages de rapport d'erreur et les messages de demande.

Les messages de rapport d'erreur incluent principalement les types suivants :

Destination inaccessible (la valeur du type est 3) : lorsque l'hôte ou le routeur ne peut pas fournir de données, ce message est envoyé au point source.

Timeout (la valeur de type est 11) : lorsque la valeur TTL dans le datagramme IP est 0 ou que la livraison échoue dans le délai spécifié, un message de délai d'attente est envoyé au point source.

Problème de paramètre (la valeur de type est 12) : lorsqu'il y a des champs incorrects dans l'en-tête du datagramme reçu, le paquet de données sera rejeté et un message de problème de paramètre sera envoyé à la source.

Redirection (valeur de type 5) : lorsque le routeur reçoit le paquet, il sera plus efficace de savoir que l'adresse de destination doit être transférée depuis un autre routeur. Ensuite, après avoir transmis le paquet, il transmet également le paquet. à la source. Cliquez pour envoyer le message de redirection. Ensuite, le prochain datagramme avec la même adresse de destination proviendra d'un autre routeur.

Ensuite, regardons le message de demande. Il existe principalement un type : le message de demande de réponse (la valeur de type est 8) et le message de réponse (la valeur de type est 0). L'hôte qui reçoit le message de demande de réponse doit retourner. un message de réponse.

Une application d'ICMP : commande ping

Après avoir compris quelques connaissances d'ICMP, jetons un coup d'œil à un exemple d'application d'ICMP— — commande ping. Cette commande n'est pas seulement disponible sur les systèmes Linux, mais aussi sur les systèmes Windows

ping baidu.com

正在 Ping baidu.com [220.181.38.148] 具有 32 字节的数据:
来自 220.181.38.148 的回复: 字节=32 时间=32ms TTL=52
来自 220.181.38.148 的回复: 字节=32 时间=29ms TTL=52
来自 220.181.38.148 的回复: 字节=32 时间=27ms TTL=52
来自 220.181.38.148 的回复: 字节=32 时间=35ms TTL=52
220.181.38.148 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 27ms,最长 = 35ms,平均 = 30ms

Jetons un coup d'œil au workflow de la commande ping : Tout d'abord, mon hôte génère quatre messages ICMP, et ces quatre messages ICMP sont des réponses . demandez un message et envoyez ces quatre messages ICMP au serveur Baidu. Si le serveur Baidu peut recevoir ces quatre messages ICMP, il enverra également quatre messages de réponse ICMP à mon hôte. Par conséquent, mon hôte peut calculer le taux de perte de paquets et le temps aller-retour en fonction du nombre de datagrammes ICMP renvoyés et du temps de retour.

Recommandé : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn