697  RPL Fundamentals and Construction

697.1 IPv6 Routing Protocol for Low-Power and Lossy Networks (RPL)

NoteLearning Objectives

By the end of this section, you will be able to:

  • Understand why traditional routing protocols don’t work for Low-Power and Lossy Networks (LLNs)
  • Explain RPL as a distance-vector routing protocol for IoT
  • Understand DODAG (Destination Oriented Directed Acyclic Graph) topology
  • Explain the RANK concept and loop prevention mechanisms
  • Compare Storing mode vs Non-Storing mode in RPL
  • Understand upward, downward, and point-to-point routing in RPL
  • Design RPL networks for different IoT applications
  • Analyze RPL performance trade-offs

697.2 Overview

RPL (IPv6 Routing Protocol for Low-Power and Lossy Networks) is a distance-vector routing protocol specifically designed for resource-constrained IoT devices operating in challenging network conditions. Unlike traditional routing protocols like OSPF and RIP, RPL is optimized for networks with:

  • High packet loss (10-40%)
  • Constrained resources (8-32 MHz CPU, 10-128 KB RAM)
  • Battery-powered devices (milliwatt power consumption)
  • Many-to-one traffic patterns (sensors reporting to gateway)

RPL builds a DODAG (Destination Oriented Directed Acyclic Graph)—a tree-like structure that naturally routes data upward to a central collection point while supporting downward and peer-to-peer traffic when needed.

697.3 Chapter Contents

This comprehensive guide to RPL is organized into four focused chapters:

697.3.1 1. RPL Introduction and Core Concepts

Covers: Why traditional routing fails for IoT, DODAG topology, RANK mechanism, control messages (DIO, DIS, DAO), and core concepts.

Key topics: - The challenge of routing in lossy, low-power networks - DAG vs DODAG structures - RANK as distance to root (not hop count!) - RPL message types and their purposes - Smart building example with 100 sensors

Best for: Beginners starting with RPL or reviewing fundamentals


697.3.2 2. RPL DODAG Construction Process

Covers: Step-by-step DODAG construction algorithm, visual guides, message flows, and timing.

Key topics: - 5-phase construction algorithm - 7-step DODAG formation with timing - Message flow sequence diagrams - RANK calculation during formation - Convergence timing for 50-node networks

Best for: Understanding how RPL networks self-organize


697.3.3 3. RPL Worked Example: Smart Lighting Network

Covers: Complete step-by-step RANK calculation for a 10-node smart lighting deployment.

Key topics: - RANK calculation with MinHopRankIncrease and ETX - Parent selection with multiple candidates - Link quality impact on path selection - DAO propagation for downward routes - Interpreting final DODAG structure

Best for: Applying concepts through concrete calculations


697.3.4 4. RPL Trickle Algorithm and Routing Modes

Covers: Trickle timer for adaptive control messages, Storing vs Non-Storing modes, traffic patterns, and common pitfalls.

Key topics: - Trickle “polite gossip” algorithm - Energy savings (99.7% reduction in control overhead) - Storing mode vs Non-Storing mode trade-offs - Many-to-one, one-to-many, and P2P traffic - Interactive DODAG Builder (OJS simulation)

Best for: Optimizing RPL deployments and troubleshooting


697.4 Quick Reference

Concept Description Chapter
DODAG Destination Oriented Directed Acyclic Graph Introduction
RANK Node’s distance to root (lower = closer) Introduction
DIO DODAG Information Object (advertises network) Introduction
DIS DODAG Information Solicitation (requests info) Introduction
DAO Destination Advertisement Object (builds routes) Construction
ETX Expected Transmission Count (link quality metric) Worked Example
Trickle Adaptive timer for control messages Trickle & Modes
Storing Mode Distributed routing tables Trickle & Modes
Non-Storing Mode Centralized routing at root Trickle & Modes

697.5 Prerequisites

Before diving into RPL, you should be familiar with:

697.7 What’s Next

Start with RPL Introduction and Core Concepts to understand why RPL exists and how DODAG topology enables efficient IoT routing.