ICMP - Internet Control Message Protocol
ICMP dient, der Kontrolle des IP-basierten Datenverkehrs, bzw. der Fehleranalyse, der Informationsbeschaffung. Es wird für für Diagnose- und Fehlermeldungen aber auch für das Auskundschaften von Rechner (-netzen) eingesetzt. ICMP wurde 1981 in RFC777 festgelegt .
Typischer Einsatz für ICMP ist wenn das Ziel eines IP-Pakets unerreichbar ist, weil die Time to Live (TTL - Router reduziert beim Weiterleiten den TTL-Wert um 1) abgelaufen ist.
Der ICMP-Typ beschreibt die gewünschte Hauptfunktion des ICMP-Pakets, die durch den ICMP-Code genauer spezifiziert wird.
- Ping
Bekannteste ICMP-Typen sind Type 0 (Echo Reply) und Type 8 (Echo Request). Diese beiden ICMP-Typen werden in der Regel zur Feststellung der Erreichbarkeit eines Hosts verwendet. Man spricht bei diesem Test auch von einem Ping. Eine ICMP-Echo-Nachricht besteht aus einem 16-Bit-Identifer sowie einer 16-Bit- Sequenznummer zur Identifikation der Datagramme. Optional können noch Daten an das Paket angehängt werden, um die Netzlast zu erhöhen. Dies ergibt besonders bei Performance-Tests Sinn, denn die Datagramme müssen inklusive Payload bestätigt werden. Ein Ping funktioniert folgendermaßen: Host A sendet einen Echo Request an Host B, Host B antwortet darauf mit einem Echo Reply. Alternativ kann A den Echo Request auch per Broadcast an ein Netzwerk senden und erhält anschließend eine Antwort der Hosts im Netzwerk.