42 RPL Quiz Questions
42.1 Learning Objectives
By the end of this chapter, you will be able to:
- Analyze RANK mechanics: Demonstrate how RANK prevents routing loops and enables hierarchical routing
- Evaluate RPL modes: Justify memory and performance trade-offs between Storing and Non-Storing
- Differentiate control messages: Classify the purpose and flow of DIS, DIO, DAO, and DAO-ACK
- Contrast with traditional routing: Argue why OSPF is unsuitable for IoT LLNs
For Beginners: RPL Quiz
This quiz tests your understanding of RPL concepts, from DODAG construction to the Trickle algorithm. Think of it as a checkpoint that helps you confirm what you have learned and identify areas to review. Each question includes explanations so you can learn from any mistakes.
Sensor Squad: Test Your RPL Knowledge!
“Time for the big quiz!” said Max the Microcontroller. “These questions cover everything from RANK mechanics to control message flows. If you can answer these, you truly understand RPL.”
“My favorite question is about why OSPF cannot work for IoT,” said Sammy the Sensor. “The answer involves memory, processing power, and link stability – all things that make traditional routing protocols fail in our world of tiny batteries and lossy wireless links.”
“Pay attention to the mode comparison questions,” suggested Lila the LED. “Understanding when to use Storing versus Non-Storing mode is the most practical skill you can learn from this quiz. Real deployments depend on getting this right.”
“Each question has a detailed explanation,” added Bella the Battery. “Even if you get the answer right, read the explanation – it often adds context and real-world examples that deepen your understanding. Good luck!”
42.2 Prerequisites
Required Chapters:
- RPL Fundamentals - Core RPL concepts
- RPL Lab: Network Design - Practical design experience
- RPL Knowledge Check - Scenario-based understanding
Estimated Time: 45 minutes
Key Concepts
- RPL Quiz Coverage: Typical RPL quiz questions test: DODAG construction sequence, RANK calculation with specific ETX values, mode selection criteria, Trickle timer behavior, and DIO/DAO message purpose.
- Sample RANK Calculation: Given a root with RANK=256 and a link ETX=1.5, MRHOF calculates child RANK as 256 + (1.5 × 256) = 640; knowing this pattern is essential for quiz problems.
- Mode Selection Criteria: Choose Storing Mode for P2P-heavy or downlink-heavy traffic; choose Non-Storing Mode for sensor-only telemetry on nodes with <8 KB RAM.
- Trickle Reset Triggers: Trickle timer resets when a node detects an RPL inconsistency (lower-version DIO, different DODAG ID, unexpected routing behavior) to rapidly propagate corrections.
42.3 Interactive: Quiz Score Tracker
Track your progress as you work through the 4 quiz questions below. A score of 3 or higher indicates solid mastery.
42.4 Quiz: RPL Routing Protocol
42.5 Visual Reference Gallery
Explore these visualizations that illustrate RPL concepts covered in this chapter.
Visual: DODAG Construction Process
The DODAG construction begins with the root broadcasting DIO messages, which neighboring nodes use to calculate their RANK and select parents.
Visual: DAG vs DODAG Structure
Understanding the difference between a generic DAG and RPL’s DODAG is fundamental to grasping how RPL organizes routing hierarchies.
Visual: RPL Protocol Overview
RPL coordinates routing through control messages and objective functions that optimize for IoT-specific metrics like energy consumption.
Visual: RPL Non-Storing Mode Operation
Non-Storing mode centralizes routing state at the root, making it ideal for memory-constrained sensor networks with primarily upward traffic.
Common Mistake: Ignoring DAO Timer Expiration in Production
The Error: Deploying RPL networks with default DAO lifetime (2-4 hours) without accounting for sensor sleep schedules, causing downward routes to expire and fail.
Why It’s Problematic:
DAO messages advertise node reachability upward to the root. Each DAO has a lifetime - after expiration, the root (or intermediate routers in Storing mode) remove the routing entry. If a sensor sleeps longer than DAO lifetime, it becomes unreachable for downward traffic (commands, firmware updates).
Real-World Example - Smart Meter Deployment (2020):
A utility company deployed 5,000 smart electricity meters with RPL: - Configuration: Non-Storing mode, DAO lifetime = 2 hours (default) - Meter behavior: Report consumption every 15 minutes, deep sleep between transmissions - Problem: Meters woke at 15-minute intervals to send data (upward), but never sent DAO refresh within 2-hour window because they only woke to TX, not RX - Result: 87% of meters had expired DAO entries at root, so downward commands (disconnect service, adjust tariff) failed
Timeline of Failure:
t=0: Meter sends DAO, root installs route (lifetime: 2 hours)
t=15 min: Meter wakes, sends consumption data (upward), sleeps immediately
t=30 min: Same (DAO not refreshed)
...
t=2 hours: DAO lifetime expires, root removes route
t=2h 15min: Utility tries to send disconnect command → FAILS (no route)
The Fix:
Option 1: Extend DAO Lifetime to Match Sleep Schedule
Meter sleep cycle: 15 minutes
DAO refresh interval: 4× sleep cycle = 60 minutes
DAO lifetime: 2× refresh interval = 120 minutes (2 hours)
Better: Set DAO lifetime to 4 hours (safety margin)
Option 2: Send DAO on Every Wake-Up
Configure meters to send DAO with every upward data transmission:
t=0: Send data + DAO
t=15 min: Send data + DAO (refreshes route)
t=30 min: Send data + DAO (refreshes route)
...
Route never expires (DAO refreshed every 15 minutes)
Trade-offs: | Approach | Pros | Cons | |———-|——|——| | Long DAO lifetime | Fewer DAO transmissions (saves energy) | Routes persist during sensor failures (stale entries) | | Frequent DAO refresh | Routes always current | Higher control overhead (3-5% energy increase) |
Implementation in Contiki-NG:
// Set DAO lifetime to 4 hours
#define RPL_CONF_DEFAULT_LIFETIME_UNIT 60 // 60 seconds
#define RPL_CONF_DEFAULT_LIFETIME 240 // 240 × 60 = 4 hours
// Force DAO on every transmission
rpl_set_default_route_refresh(15 * 60); // 15 minutesPost-Fix Results:
- Downward command success rate: 13% → 98%
- DAO transmissions increased: 1 per 4 hours → 1 per 15 minutes (16× increase)
- Battery impact: Negligible (DAO TX = 20ms × 20mA = 0.4 mAs, vs 15-min data TX = 30ms × 20mA = 0.6 mAs)
- Energy overhead: DAO refresh adds approximately 0.7% total energy (acceptable)
How to Avoid This Mistake:
Step 1: Map Sensor Wake Schedule
Wake interval: T_wake (e.g., 15 minutes)
Max sleep duration: T_sleep (e.g., 4 hours for deep sleep modes)
Step 2: Configure DAO Parameters
DAO refresh interval = min(T_wake, T_sleep / 2)
DAO lifetime = 2 × DAO refresh interval (minimum safety)
Step 3: Validate in Pilot
Monitor root routing table for 48 hours:
- Count routes that expire prematurely
- Measure downward packet delivery rate (target > 95%)
- If failures occur, halve DAO refresh interval
Best Practice: For battery-powered sensors with irregular sleep schedules, always use Option 2 (DAO on every wake-up). The energy cost is trivial (< 1%) compared to the operational cost of failed downward commands.
Common Pitfalls
1. Memorizing Answers Without Understanding Reasoning
Quiz questions about RPL RANK calculation and mode selection require understanding the underlying mechanisms, not memorized answers. The next question will use different values — understand the calculation method, not just the result.
2. Not Connecting Quiz Questions to Real Deployment Scenarios
RPL quiz questions become meaningful when connected to real deployment decisions. For each question answered, identify which specific deployment scenario it applies to.
3. Skipping Questions on Trickle Timer
Trickle Timer questions appear in most RPL assessments. The algorithm is conceptually simple (double interval when consistent, reset when inconsistent) but detail questions about k and suppression trip up underprepared students.
42.6 Summary
This detailed quiz chapter covered the core concepts of RPL:
- RANK Mechanics: Loop prevention through hierarchical position enforcement, calculated by objective functions considering hop count, ETX, latency, or energy
- Mode Comparison: Storing vs Non-Storing modes have identical many-to-one performance; choice depends on P2P traffic and memory constraints
- Control Messages: DIS requests DODAG info, DIO advertises it, DAO builds downward routes, DAO-ACK confirms receipt
- Traditional vs RPL: OSPF’s link-state database and Dijkstra algorithm are fundamentally incompatible with IoT resource constraints
42.6.1 Quick Reference: RPL Control Messages
| Message | Purpose | Direction | When Sent |
|---|---|---|---|
| DIS | Request DODAG info | Multicast | Joining, recovery |
| DIO | Advertise DODAG | Downward/broadcast | Trickle timer |
| DAO | Advertise reachability | Upward | After joining |
| DAO-ACK | Confirm DAO receipt | Downward | Optional |
42.7 Concept Relationships
This quiz content reinforces understanding across multiple RPL topics:
- RPL Fundamentals introduces the DODAG and RANK concepts that Question 1 tests in depth
- RPL Lab: Network Design provides hands-on practice with the Storing vs Non-Storing mode trade-offs explored in Question 2
- RPL Operation details the control message flows (DIO, DIS, DAO) that Question 3 examines
- Routing Fundamentals contrasts distance-vector and link-state approaches, explaining why OSPF (Question 4) fails for IoT
- Trickle Timer governs DIO frequency, determining when nodes send the messages discussed in Question 3
42.8 See Also
Related Quiz Resources:
- RPL Knowledge Check - Scenario-based quizzes for applying these concepts
- Quizzes Hub - Additional RPL assessment questions across difficulty levels
- Knowledge Gaps Hub - Common misconceptions about RANK and routing modes
Reference Specifications:
- RFC 6550 Section 8.2 (RANK computation) - Foundation for Question 1
- RFC 6552 (OF0) and RFC 6719 (MRHOF) - Objective functions affecting RANK calculation
- RFC 2328 (OSPFv2) - Shows link-state protocol complexity compared in Question 4
42.9 What’s Next
Return to RPL Labs and Quiz Overview to explore other RPL learning resources, or continue to RPL Production and Review for real-world deployment patterns and optimizations.
| Previous: RPL Lab Network Design | Next: RPL Production and Review |