  Industry experience indicates that the ability to incrementally expand data
centers is essential. However, existing high-bandwidth network designs have
rigid structure that interferes with incremental expansion. We present
Jellyfish, a high-capacity network interconnect, which, by adopting a random
graph topology, yields itself naturally to incremental expansion. Somewhat
surprisingly, Jellyfish is more cost-efficient than a fat-tree: A Jellyfish
interconnect built using the same equipment as a fat-tree, supports as many as
25% more servers at full capacity at the scale of a few thousand nodes, and
this advantage improves with scale. Jellyfish also allows great flexibility in
building networks with different degrees of oversubscription. However,
Jellyfish's unstructured design brings new challenges in routing, physical
layout, and wiring. We describe and evaluate approaches that resolve these
challenges effectively, indicating that Jellyfish could be deployed in today's
data centers.
