ICMP permite hosts, routers y otros dispositivos de red para el intercambio de información de control básico, como el error y la información de estado , cuando los datos se envían desde un dispositivo a otro . Así ICMP es útil para sondear una red para determinar sus características generales o para solucionar problemas de conectividad de red. Si un administrador de red comprende ICMP y las posibles causas de determinados tipos de mensajes ICMP , él o ella está mejor equipado para diagnosticar problemas de red.
Estructura
Cada mensaje ICMP contiene tres campos , conocidos como tipo , el código y la suma de comprobación . El campo de tipo identifica el mensaje ICMP , el campo de código proporciona más información sobre el mensaje , depende del tipo de mensaje , y el campo de suma de comprobación determina la integridad del mensaje . La utilidad ping , por ejemplo , envía un mensaje de petición de eco ICMP , con un campo de tipo de 8 y un campo de código de 0 , y espera recibir un mensaje de respuesta de eco , con un campo de tipo de 0 y un campo de código de 0 . Si el host de destino es inalcanzable , un mensaje ICMP de destino inaccesible , con un tipo de campo de 3 y un campo de código que corresponde a una de las 16 condiciones posibles , se genera .
Datagramas IP
Cada mensaje ICMP se encapsula en un paquete independiente de los datos , conocido como un datagrama IP , que contiene la información necesaria para su transmisión , o dirige , a través de la red desde el origen al destino . De hecho , ICMP es una parte integral del IP y es una parte necesaria de cualquier aplicación IP . ICMP es, sin embargo , un control y protocolo de red , por lo que se utiliza para transferir información de estado de la red , en lugar de los datos de aplicación .
Aplicación
La aplicación más conocida es "ping " , que se utiliza para determinar si un host de red dada es accesible o no . ICMP es único porque , a diferencia de otros protocolos, como el Protocolo de datagramas de usuario ( UDP ) y el Protocolo de Control de Transmisión (TCP ) , que no utiliza los puertos para comunicarse. Mensaje ICMP puede perderse y no ser entregado. Una simple solicitud , tales como determinar si un host es alcanzable , no tiene puertos de comunicación o entrega confiable.