One of the most important properties of a routing algorithm is to maintain freedom from deadlock.
One way in which deadlock can occur is if multiple messages require mutually dependent channel resources.