Destination-Oriented Directed Acyclic Graphs
- DODAGs are loop-free, destination-rooted directed acyclic graphs that ensure every node has a valid path to a designated sink in wireless and low-power networks.
- They are constructed through distributed protocols using DIO message exchanges and Objective Functions to optimize parent selection and enforce loop-freedom.
- Balancing techniques like SB-RPL minimize subtree skewness, enhancing network reliability, reducing latency, and improving packet delivery ratios.
A Destination-Oriented Directed Acyclic Graph (DODAG) is a foundational network structure in wireless and low-power networks for supporting loop-free, destination-rooted routing. DODAGs ensure every node has a directed path to a designated sink, forming the basis for large-scale routing in protocols such as RPL for Low power and Lossy Networks (LLNs) and addressing key problems in geographic forwarding. Formal properties, algorithms for their construction and maintenance—especially under dynamic conditions—and performance issues, such as subtree skewness and load-balancing, are central to both theoretical analysis and protocol design (Ramachandran et al., 2011, Nguyen et al., 2019).
1. Formal Definition and Structural Properties
In both RPL and geographic forwarding contexts, a DODAG is a directed, acyclic subgraph constructed to provide sink-oriented forwarding. Formally, let be the set of nodes, the set of bidirectional links, and the sink. The DODAG is , where:
- , with no directed cycles
- Each non-sink node selects at least one parent such that
- Following parent pointers from any node reaches
Each node maintains a scalar "rank" , monotonically increasing with hop-distance or link cost to the sink, enforcing loop-freedom and supporting parent selection (Nguyen et al., 2019). The DODAG is distinguished by guaranteeing reachability from every node to the sink (root), a property not satisfied by generic DAGs, particularly when local minima ("stuck nodes") exist.
2. DODAG Construction Mechanisms in RPL
RPL constructs DODAGs through a distributed exchange of DODAG Information Object (DIO) messages:
- The sink initiates by broadcasting a DIO with the root's rank.
- Non-root nodes that receive DIOs compute candidate parents, calculate their own rank through the Objective Function, and announce their state in subsequent DIOs.
- Parent selection is finalized based on rank minimization, followed by propagation of downward routes via Destination Advertisement Objects (DAOs).
RPL leaves rank computation to the Objective Function. For example, ContikiRPL implements MRHOF (based on ETX), where with ETX values filtered by EWMA. TinyRPL employs OF0 (hop-count), with a fixed per-hop increment. Hysteresis ensures stability by requiring a threshold of improvement before parent switching (Nguyen et al., 2019).
3. Link Reversal Algorithms and DODAG Repair
In dynamic or geographic forwarding settings, initially constructed DAGs may be destination-disoriented, with some nodes lacking outgoing links (local minima). Neighbor-oblivious link-reversal algorithms address these voids by updating node "states", guaranteeing that:
- No stuck nodes remain (all have outgoing links toward the sink)
- Acyclicity is preserved throughout
Each node maintains an integer (the "-state") and a height , forming the state (full reversal) or (partial reversal). Link orientation is determined lexicographically: iff . Upon being stuck, a node increments to increase and flips incident links appropriately. Key properties are:
- for all neighbors
- No more than reversals per node (for nodes)
- strictly increases with
Neighbor-oblivious versions require only detection of the stuck condition, not neighbor states, and can be efficiently implemented using finite-state (one- or two-bit) representations (Ramachandran et al., 2011).
4. Finite-State Link Reversal Variants
To optimize for memory, finite-state approaches reduce to a bounded number of bits:
- Two-bit full reversal: , using cyclic comparison for link directions; stuck nodes increment
- One-bit full reversal: ; orientation determined by and initial heights; incoming links flip on bit transition
- Two-bit partial reversal: Similar mapping with alternating tie-breaks using
These finite-state mechanisms guarantee that all stuck nodes resolve their condition in total steps, preserve loop-freedom, terminate in a DODAG, and require each node to store only constant state bits plus initial parameters (Ramachandran et al., 2011).
5. Skewness and Balancing in DODAGs
Skewness in DODAGs refers to the concentration of subtree sizes among parent nodes, causing load imbalance, queueing delay, and reliability degradation. Empirical studies demonstrate that standard Objective Functions (OF0, MRHOF-ETX) induce severe skewness: e.g., in 100-node testbeds, level-1 skewness is roughly 3.0 (OF0), 2.0 (MRHOF), versus 1.0 with balancing extensions (Nguyen et al., 2019).
Skewness metrics quantify sub-DAG imbalance at a parent node (with children, descendants each):
where , , .
Imbalance is observed to persist regardless of network size or common routing metrics (Nguyen et al., 2019).
6. Balancing Techniques: The SB-RPL Extension
SB-RPL introduces balancing via subtree-size-aware parent selection:
- Each DIO message appends the sender's current subtree size .
- Candidate parents are ranked by "Node Influence": , with tunable.
- Nodes select parents minimizing .
- Upon attachment or detachment, nodes update and propagate in DIOs.
Compared to OF0 or MRHOF, SB-RPL reduces skewness by approximately at multiple levels and increases packet delivery ratio (PDR) substantially (e.g., 80% for SB-RPL vs. 62–66% for other Objective Functions at 60 pkts/s). Latency decreases due to better subtree balance. Protocol overhead consists only of one additional byte per DIO and an extra per-neighbor field (Nguyen et al., 2019).
7. Relation to Gafni–Bertsekas Loop-Free Routing
Neighbor-oblivious link reversal algorithms and finite-state variants are part of the Gafni–Bertsekas general link-reversal framework. Nodes make local, strictly increasing state transitions upon becoming stuck, ensuring termination and loop-freedom in any connected topology. These properties are inherited when specialized to DODAG construction and maintenance, providing rigorous guarantees of network-wide convergence without centralized control (Ramachandran et al., 2011).