In this paper, we are primarily concerned with randomly-wired splitter networks. A randomly-wired splitter network is a splitter network where the up and down edges within each splitter are chosen at random subject to the constraint that each splitter input is incident to d up and d down edges, and each splitter output is incident to 2d incoming edges.
The crucial property that randomly-wired splitter networks are likely to possess is known as expansion. In particular, an M-input splitter is said to have -expansion if every set of inputs is connected to at least up outputs and down outputs, where and are fixed constants. For example, see Figure 4.
A splitter network is said to have -expansion if all of its splitters have -expansion. More simply, a splitter or a splitter network is said to have expansion if it has -expansion for some constants and . A splitter network with expansion is more commonly known as a multibutterfly [29], and a multibutterfly with -expansion and multiplicity d consists of splitters in which each splitter input is incident to d up and d down edges and for which any splitter inputs are adjacent to splitter outputs.
Splitters with expansion are known to exist for any , and they can be constructed deterministically in polynomial time [11, 23, 29], but randomized wirings typically provide the best possible expansion. In fact, the expansion of a randomly-wired splitter will be close to d-1 with probability close to 1, provided that is a sufficiently small constant. (For a discussion of the tradeoffs between and in randomly-wired splitters, see [20, 29].)
A multibutterfly with -expansion is good at routing because one must block splitter outputs in order to block k splitter inputs. In classical networks such as the butterfly, the reverse is true: it is possible to block 2k inputs by blocking only k outputs. When this effect is compounded over several levels, the effect is dramatic. In a butterfly, a single fault can block switches l levels back, whereas in a multibutterfly, it takes faults to block a single switch l levels back.
Figure 4: An M-input splitter with -expansion.
In 1989, Upfal showed that any N-input multibutterfly can route any one-to-one problem in steps using a simple greedy algorithm [29], and that, by using pipelining, any N-input multibutterfly can route one-to-one problems in steps. Although the proof is complicated and the constants hidden by the Big Oh notation are large, the result is important because the only previously known deterministic on-line linear-hardware -step packet routing algorithm [18] requires the use of the AKS sorting circuit [1] (which is even more complicated and has even larger constant factors).