ICMP is Layer 3 error and diagnostic messaging — not TCP/UDP, and not a transport for data.

Type Meaning You meet it in
0 / 8 Echo reply / request ping
3 Destination unreachable codes: 0 net, 1 host, 3 port, 4 fragmentation needed (PMTUD)
11 Time exceeded every traceroute hop (TTL hits 0)

Reading it as a troubleshooter: type 3 code 0 → routing table, code 1 → ARP/host down, code 3 → nothing listening on the port, code 4 → MTU/DF problem, type 11 mid-path → loop or firewall eating TTL.

Caveats: ICMP answers reachability, not application health; it’s commonly ACL-blocked and CoPP rate-limited — silence proves nothing.