 
    
    
         
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
 , 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,
  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
 , 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.
  of its 2d neighbors on level l+1 are either
busy of blocked.  Any node that is not blocked is considered to be
working.