1. A method, comprising: monitoring network statistics for a first directed acyclic graph (DAG) from a first root node; determining a trigger to partition the first DAG based on the network statistics; in response to the trigger, selecting a candidate second root node for each of one or more DAG partitions; and requesting, by the first root node, that each selected second root node establish a new DAG partition with the respective second root node itself as the root of their new DAG, wherein nodes of the first DAG one of either remain with the first DAG or attach to the new DAG partition based on one or more metrics associated with each respective root.