ICMP steht für "Internet Control Message Protocol" und ist ein Netzwerkprotokoll, das zur Übertragung von Informationen über den Zustand von Netzwerken und zur Fehlerbehebung verwendet wird.
ICMP wird hauptsächlich von Netzwerkgeräten wie Routern, Firewalls und anderen Netzwerkgeräten verwendet, um Fehlermeldungen und Statusinformationen an andere Geräte im Netzwerk zu senden. Zum Beispiel kann ICMP genutzt werden, um herauszufinden, ob ein bestimmter Host im Netzwerk erreichbar ist oder ob es Verzögerungen oder Verluste bei der Übertragung von Datenpaketen gibt.
Ein bekanntes Beispiel für ICMP ist der sogenannte "Ping". Dieser nutzt das ICMP-Protokoll, um zu prüfen, ob ein Netzwerkgerät erreichbar ist. Wenn ein Host "gepingt" wird, sendet das sendende Gerät ein ICMP-Echo-Request-Paket an den Ziel-Host, der dann mit einem ICMP-Echo-Reply-Paket antwortet. Wenn die Verbindung erfolgreich ist, wird die RTT (Round Trip Time) gemessen und zurückgegeben.
ICMP wird auch von einigen Angriffen im Netzwerk verwendet, wie beispielsweise bei sogenannten "Ping of Death"-Attacken, bei denen speziell präparierte ICMP-Pakete gesendet werden, um Netzwerkgeräte zu überlasten und zum Absturz zu bringen.