Papers
Topics
Authors
Recent
Search
2000 character limit reached

Destination-Oriented Directed Acyclic Graphs

Updated 10 February 2026
  • 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 N\mathcal{N} be the set of nodes, L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N} the set of bidirectional links, and S∈N\mathcal{S} \in \mathcal{N} the sink. The DODAG is GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E}), where:

  • E⊆L\mathcal{E} \subseteq \mathcal{L}, with no directed cycles
  • Each non-sink node nn selects at least one parent pp such that (n→p)∈E(n \to p) \in \mathcal{E}
  • Following parent pointers from any node reaches S\mathcal{S}

Each node maintains a scalar "rank" Rn≥0\mathcal{R}_n \ge 0, 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 L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}0 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).

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 L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}1 maintains an integer L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}2 (the "L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}3-state") and a height L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}4, forming the state L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}5 (full reversal) or L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}6 (partial reversal). Link orientation is determined lexicographically: L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}7 iff L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}8. Upon being stuck, a node increments L⊆N×N\mathcal{L} \subseteq \mathcal{N} \times \mathcal{N}9 to increase S∈N\mathcal{S} \in \mathcal{N}0 and flips incident links appropriately. Key properties are:

  • S∈N\mathcal{S} \in \mathcal{N}1 for all neighbors
  • No more than S∈N\mathcal{S} \in \mathcal{N}2 reversals per node (for S∈N\mathcal{S} \in \mathcal{N}3 nodes)
  • S∈N\mathcal{S} \in \mathcal{N}4 strictly increases with S∈N\mathcal{S} \in \mathcal{N}5

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).

To optimize for memory, finite-state approaches reduce S∈N\mathcal{S} \in \mathcal{N}6 to a bounded number of bits:

  • Two-bit full reversal: S∈N\mathcal{S} \in \mathcal{N}7, using cyclic comparison for link directions; stuck nodes increment S∈N\mathcal{S} \in \mathcal{N}8
  • One-bit full reversal: S∈N\mathcal{S} \in \mathcal{N}9; orientation determined by GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})0 and initial heights; incoming links flip on bit transition
  • Two-bit partial reversal: Similar mapping with alternating tie-breaks using GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})1

These finite-state mechanisms guarantee that all stuck nodes resolve their condition in GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})2 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 GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})3 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 GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})4 (with GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})5 children, GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})6 descendants each):

GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})7

where GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})8, GDODAG=(N,E)\mathcal{G}_\text{DODAG} = (\mathcal{N}, \mathcal{E})9, E⊆L\mathcal{E} \subseteq \mathcal{L}0.

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 E⊆L\mathcal{E} \subseteq \mathcal{L}1.
  • Candidate parents are ranked by "Node Influence": E⊆L\mathcal{E} \subseteq \mathcal{L}2, with E⊆L\mathcal{E} \subseteq \mathcal{L}3 tunable.
  • Nodes select parents minimizing E⊆L\mathcal{E} \subseteq \mathcal{L}4.
  • Upon attachment or detachment, nodes update and propagate E⊆L\mathcal{E} \subseteq \mathcal{L}5 in DIOs.

Compared to OF0 or MRHOF, SB-RPL reduces skewness by approximately E⊆L\mathcal{E} \subseteq \mathcal{L}6 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).

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Destination-Oriented Directed Acyclic Graphs (DODAGs).