Existence of Deadlock-Free Routing for Arbitrary Networks
Uri Mendlovic, Yossi Matias
TL;DR
The paper addresses whether deadlock-free routing can exist in an arbitrary directed network without adding virtual channels. It proves a necessary and sufficient condition: $G=(V,E)$ supports such routing if and only if there are two edge-disjoint directed trees rooted at a common vertex $v$, one directed into $v$ and the other directed away from $v$. The proof is constructive, deriving the trees from any deadlock-free routing via a total ordering of edges and the notions of global attractor, attraction number, and attraction subgraph; it also notes the NP-completeness of deciding the existence of such a tree pair, highlighting intrinsic complexity. These results illuminate the structural requirements for deadlock-free networks and may inform verification and design tools for routing schemes.
Abstract
Given a network of routing nodes, represented as a directed graph, we prove the following necessary and sufficient condition for the existence of deadlock-free message routing: The directed graph must contain two edge-disjoint directed trees rooted at the same node, one tree directed into the root node and the other directed away from the root node. While the sufficiency of this condition is known, its necessity, to the best of our knowledge, has not been previously recognized or proven. Although not directly applicable to the construction of deadlock-free routing schemes, this result provides a fundamental insight into the nature of deadlock-free networks and may lead to the development of improved tools for designing and verifying such schemes.
