It is not difficult to implement the circuit-switching algorithm just described on a multi-Benes network. The main difference between routing through a multi-Benes network and a multibutterfly network is that in the first half of the multi-Benes network, a path at a merger input is free to extend to any of the 2d neighboring outputs. As the following definition and lemma show, the mergers have an unshared-neighbor property analogous to that of the splitters.
In order to route around existing paths in a multi-Benes network,
we combine the circuit-switching algorithm with the kind of analysis
used in Section 3. To do so, we need to modify the
definition of being blocked. A splitter input on level l, , is blocked if more than
of its d up
(or down) neighbors on level l+1 are busy or blocked. A merger
input on level l,
, is blocked if more
than
of its 2d neighbors on level l+1 are either
busy of blocked. Any node that is not blocked is considered to be
working.