ICMP-headers (Internet Control Message Protocol) bestaan doorgaans uit acht bytes. Binnen deze headers bevat ICMP specifieke velden zoals type, code, checksum en aanvullende gegevens, afhankelijk van het type ICMP-bericht. Deze headers zijn cruciaal voor netwerkdiagnostiek en foutrapportage.
ICMP-headers bevatten niet rechtstreeks TCP/IP-headers. ICMP werkt als een afzonderlijk protocol binnen de IP-laag, waarbij het IP-headers gebruikt voor routering. TCP/IP-headers worden door TCP (Transmission Control Protocol) en IP (Internet Protocol) gebruikt om de gegevensoverdracht en -routering te beheren.
De grootte van een ICMPv4-header kan variëren, afhankelijk van het specifieke type ICMP-bericht dat wordt verzonden of ontvangen. Over het algemeen is een ICMPv4-header 8 bytes lang. Dit omvat velden zoals type, code, controlesom en aanvullende gegevens die specifiek zijn voor het type ICMP-bericht.
In ICMP biedt het codeveld aanvullende context of details met betrekking tot het type ICMP-bericht dat wordt verzonden. Het vult het typeveld aan door variaties of bijzonderheden binnen een bepaald type ICMP-bericht te specificeren. ICMP-berichten zoals ‘Destination Unreachable’ of ‘Redirect’ gebruiken bijvoorbeeld het codeveld om de reden voor het bericht aan te geven, zoals een onbereikbare host of netwerk, of een specifieke omleidingsinstructie. Het codeveld helpt bij het differentiëren en verstrekken van meer gedetailleerde informatie binnen de bredere categorieën die worden gedefinieerd door het typeveld in ICMP-berichten.