What is ICMP (Internet Control Message Protocol)?

A protocol for reporting errors and conditions in IP communication. It tells the sender, for example, that a destination cannot be reached (Destination Unreachable) or that a packet's TTL reached 0 (Time Exceeded). ping uses echo requests and echo replies to check reachability and measure RTT, and traceroute uses Time Exceeded messages to trace a path. In IPv6, ICMPv6 also handles neighbor discovery and more.

Japanese name: ICMP

ICMP (Internet Control Message Protocol) appears in 2 practice questions across 2 topics, including Cloud and Container Basics, Computer Networking Basics.

Field: Computer Networking Basics

Try it: questions about ICMP (Internet Control Message Protocol)

What is the role of the TTL (Time To Live) field in the IPv4 header?

  1. AIt records the time from sending a packet until a response returns, to decide when TCP retransmits
  2. BIt is decremented by 1 at each router, and packets that reach 0 are discarded, preventing packets from circulating forever in a routing loop
  3. CPackets with larger values are forwarded with higher priority by routers
Show answer and explanation

Answer: B. It is decremented by 1 at each router, and packets that reach 0 are discarded, preventing packets from circulating forever in a routing loop

Despite "time" in its name, TTL is in practice an upper limit on the number of routers (hops) a packet may pass, decremented by 1 at each router. When it reaches 0, the router discards the packet and sends an ICMP time exceeded message back to the source. So even if a misconfiguration creates a routing loop, packets do not circulate forever. A packet sent with a TTL of 64, for example, arrives with 61 after passing three routers. traceroute sends packets with TTL 1, 2, 3 and so on, and discovers the path from the time exceeded messages each router returns. In IPv6 the field with the same role is called the hop limit.

ICMP (Internet Control Message Protocol) in the explanations

Questions that mention ICMP (Internet Control Message Protocol) (2)

  1. An image named pinger, built from the Dockerfile above, is started with docker run pinger example.com. Which of the following is the command executed in the container?
  2. What is the role of the TTL (Time To Live) field in the IPv4 header?

Books on Computer Networking Basics Ad

As an Amazon Associate I earn from qualifying purchases.

Related terms

Docker Container JSON (JavaScript Object Notation) Argument IPv4 Router Packet IP routing IPv6 ARP

Back to the glossary