Test IPv6 Hop Limit over three radio links
Name the address, route, and hop that dropped a packet by varying IPv6 Hop Limit across a measured RPL path.

Name the address, the route, and the hop that dropped it.
Predict the reading, then compare it with the measurement.
Contiki-NG Cooja
Third party ToolName the address, route, and hop that dropped a packet by varying IPv6 Hop Limit across a measured RPL path.
Download the complete lab packet and follow README.md to run it in the free simulator.
Download the setup and run guideGet the lab files
Download the complete packet for the simulation and its firmware, or download individual files for inspection. README.md gives the setup and run commands.
Steps
Step 1
- Do
- Open the CSC in Cooja Network and trace the four mote IDs from sender 4 through relays 3 and 2 to root 1.
- You will see
- Run: seed 1; 50 m UDGM range; 40 m between adjacent motes. Serial: `642000 ID:3 HOP_READY node=3` Serial: `971000 ID:4 HOP_READY node=4` Radio messages: 14 cumulative frames at 20 s.
- Why it matters
- Meaning: The chain has three radio links from sender to sink before test payloads. Boundary: Geometry alone does not confirm route or receipt.

Step 1 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 2
- Do
- Click Start/Pause and inspect Mote output for the parent, HOP8 send, relay forwards, and root receipt.
- You will see
- Serial: `45549000 ID:4 -- Preferred parent: fe80::203:3:3:3 (last DTSN: 240)` Serial: `50972000 ID:4 HOP_SEND node=4 limit=8 payload=HOP8` Serial: `51000504 ID:3 [INFO: IPv6 ] Forwarding packet to next hop, dest: fd00::201:1:1:1` Serial: `51013760 ID:2 [INFO: IPv6 ] Forwarding packet to next hop, dest: fd00::201:1:1:1` Serial: `51047504 ID:1 [INFO: App ] Received request 'HOP8' from fd00::204:4:4:4`
- Why it matters
- Meaning: Limit 8 delivers across two intermediate relays. Boundary: One delivered packet does not establish the minimum limit.

Step 2 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 3
- Do
- Click Start/Pause and inspect Mote output for HOP1 and the relay ICMPv6 error.
- You will see
- Serial: `65973000 ID:4 HOP_SEND node=4 limit=1 payload=HOP1` Serial: `66007472 ID:3 [WARN: ICMPv6 ] Sending ICMPv6 ERROR message type 3 code 0 to fd00::204:4:4:4 from fd00::203:3:3:3` Observed: root 1 logged no HOP1 receipt.
- Why it matters
- Meaning: The first relay emitted Time Exceeded transit when the limit expired. Boundary: The controlled limit failure does not establish a broken radio link.

Step 3 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 4
- Do
- Click Start/Pause and inspect Mote output for HOP3 and the root receipt.
- You will see
- Serial: `80974000 ID:4 HOP_SEND node=4 limit=3 payload=HOP3` Serial: `81000504 ID:3 [INFO: IPv6 ] Forwarding packet to next hop, dest: fd00::201:1:1:1` Serial: `81022760 ID:2 [INFO: IPv6 ] Forwarding packet to next hop, dest: fd00::201:1:1:1` Serial: `81028232 ID:1 [INFO: App ] Received request 'HOP3' from fd00::204:4:4:4`
- Why it matters
- Meaning: Limit 3 delivers over the unchanged three-link path. Boundary: A future detour can require a different limit.

Step 4 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 5
- Do
- Click Start/Pause and compare Radio messages with the sink receipts in Mote output after all three sends.
- You will see
- Radio messages: 101 cumulative frames at 100 s, including RPL control and replies. Root: HOP8 at 51.047504 s and HOP3 at 81.028232 s. Relay 3: ICMPv6 type 3/code 0 at 66.007472 s.
- Why it matters
- Meaning: Radio traffic continued across the failed and successful test packets. Boundary: Cumulative frame totals do not isolate per-packet hop cost.

Step 5 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab) Step 6
- Do
- Click Start/Pause and review Network, Radio messages, and Mote output against the raw headless summary.
- You will see
- Headless: `HOP_SUMMARY sent={"HOP8":8,"HOP1":1,"HOP3":3} received={"HOP8":1,"HOP3":1} forwarded=18` Headless: `TEST OK` Radio messages: 102 cumulative frames at 110 s.
- Why it matters
- Meaning: The sink accepted two chosen limits and the third expired. Boundary: The 18 forwarding logs include control and reply traffic.

Step 6 · Contiki-NG Cooja; numbered callout added to a real capture. Enlarge screenshot (new tab)
Chapter checks
These questions refer to the chapter’s examples. Use the return links to review their answers.
A packet starts with IPv6 Hop Limit 16 and crosses 12 routers before reaching a service. What should happen on a stable path?
Return to the chapter’s knowledge checkA sensor normally needs 12 routed hops to reach a cloud edge, and repair detours can add 5 hops. Which review conclusion is strongest?
Return to the chapter’s knowledge check