Solution: A new topology called D-cell consisting of a hierarchy of self-similar structures, plus a fault-tolerant routing algorithm over it. The nugget is the ability to set up many potential paths between nodes and sometimes use a suboptimal one to get good load balancing, fault tolerance, scalability and incremental deployability.
Why is it different from previous work? The main differences in goals were high scale (up to millions of servers, not thousands), fault tolerance, and incremental deployability (so you can build out a data center rack by rack). While the authors don't spend too much time going into detail about why each of the previously studied topologies was inadequate, they claim they are the only solution that achieves all these goals.
Will it be influential in 10 years? It's hard to tell whether such a paper can be the end-all of data center topologies. Certainly the paper brings the problem of data center networking to the attention of the community and will be influential in that way, but some of the design choices seem arbitrary (there is no overarching structure to D-cell) and it is probably possible to improve over it in various areas.
Criticism: The paper is pretty confusing to read. More diagrams and less text would have been extremely helpful! As it is, you kind of have to trust the authors as you go through.
Other: It's very interesting to compare this paper with the fat-tree paper at the same SIGCOMM. Some of the assumptions in D-cell are very different:
- Nodes have multiple links (albeit a fixed number) and participate in routing. (Of course, we could replace each node by a switch managing a number of nodes, but they seem to believe that nodes will be machines).
- There is a lot less economics in the D-cell paper and a lot more math (e.g. no look at wiring complexity). It does not seem quite as pragmatic as the fat-tree proposal (since it requires special hardware and software at all nodes) and seems more "clean-slate". Since this is a paper from MSR, maybe they are considering custom switches and thus more open to radical changes in hardware.
- However, the D-cell paper also appears to avoid the need for centralized scheduling as in the fat-tree paper, although the authors never really talk about this issue or about maintaining packets in order.
- While the fat-tree paper tries to achieve full bisection bandwidth, D-cell only gets O(N / log N). They seem to be content with this, whereas the UCSD paper argues that oversubscription of even 2.5:1 is bad.
No comments:
Post a Comment