BCube: a high performance, server-centric network architecture for modular data centers
By Chuanxiong Guo, Guohan Lu, Dan Li, Haitao Wu, Xuan Zhang, Yunfeng Shi, Chen Tian, Yongguang Zhang, Songwu Lu. Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication, 2009
1,660 citations recorded by the source corpus.
This paper presents BCube, a new network architecture specifically designed for shipping-container based, modular data centers. At the core of the BCube architecture is its server-centric network structure, where servers with multiple network ports connect to multiple layers of COTS (commodity off-the-shelf) mini-switches. Servers act as not only end hosts, but also relay nodes for each other. BCube supports various bandwidth-intensive applications by speeding-up one-to-one, one-to-several, and one-to-all traffic patterns, and by providing high network capacity for all-to-all traffic. BCube exhibits graceful performance degradation as the server and/or switch failure rate increases. This property is of special importance for shipping-container data centers, since once the container is sealed and operational, it becomes very difficult to repair or replace its components. Our implementation experiences show that BCube can be seamlessly integrated with the TCP/IP protocol stack and BCube packet forwarding can be efficiently implemented in both hardware and software. Experiments in our testbed demonstrate that BCube is fault tolerant and load balancing and it significantly accelerates representative bandwidth-intensive applications.
Subfields: Computer Networks and Communications, Hardware and Architecture, Information Systems
View Paper: https://www.semanticscholar.org/paper/fe33ba23625e0039b6bddf69a63f43dfe22928b1
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Computer Networks and Communications
- Jennifer Rexford
- Mohammad Alizadeh
- Brighten Godfrey
- Hari Balakrishnan
- Changhoon Kim
- Aditya Akella
- Amin Vahdat
- Matthew C. Caesar
In Hardware and Architecture
- Jennifer Rexford
- Andrew William Moore
- Michael Kaminsky
- D. Andersen
- Michael A. Kozuch
- Mohammad Alizadeh
- T. Ng
- Sudipta Sengupta
In Information Systems
- Mohammad Alizadeh
- Aditya Akella
- Brighten Godfrey
- Theophilus A. Benson
- Changhoon Kim
- Jennifer Rexford
- David A. Maltz
- Srikanth Kandula
Citations in the corpus
- ElasticTree: Saving Energy in Data Center Networks (2010, methodology): “As services scale beyond ten thousand servers, inflexibility and insufficient bisection bandwidth have prompted researchers to explore alternatives to the traditional 2N tree topology (shown in Figure 1(a)) [1] with designs such as VL2 [10], PortLand [24], DCell [16], and BCube [15].”
- Finishing flows quickly with preemptive scheduling (2012, methodology): “We evaluate three scalable data center topologies: (1) Fattree [2], a structured 2-stage Clos network; (2) BCube [13], a server-centric modular network; (3) Jelly.sh [18], an un structured high-bandwidth network using random regular graphs.”
- Improving the Scalability of Data Center Networks with Traffic-aware Virtual Machine Placement (2010, background): “While multi-level network architectures, such as BCube [5], reap the most benefit, architectures that have been designed with uniform traffic patterns in mind, such as VL2 [3], see little benefit in optimally solving the TVMPP.”
- HULA: Scalable Load Balancing Using Programmable Data Planes (2016, background): “When a new switch is connected to the network, the control plane only needs to add the switch port to multicast groups on the adjacent upstream and downstream switches, in addition to setting up the multicast mechanism on the new switch itself.”
- RDMA over Commodity Ethernet at Scale (2016, background): “Many other network topologies [20] do not even have the up-down routing property.”
- Jellyfish: Networking Data Centers Randomly (2011, background): “The end-to-end throughput of a topology depends not only on the capacity of the network, but is also inversely proportional to the amount of network capacity consumed to deliver each byte — that is, the average path length.”
- GreenCloud: a packet-level simulator of energy-aware cloud computing data centers (2010, methodology): “For example, such architectures as DCell [35] or BCube [22] implement server centric approach relying on mini-switches for interconnection.”
- Inside the Social Network's (Datacenter) Network (2015, background): “Such an assumption leads to the goal of delivering maximum bisection bandwidth [4, 23, 36], which may be overkill when demand exhibits significant locality [17].”
- Network traffic characteristics of data centers in the wild (2010, background): “There is tremendous interest in designing improved networks for data centers [1, 2, 22, 13, 16, 11, 4, 18, 29, 14, 21]; however, such work and its evaluation is driven by only a few studies of data center traffic, and those studies are solely of huge (> 10K server) data centers, primarily running da”
- FireFly (2014, neutral): “, [24]).”
- Resource Management in Clouds: Survey and Research Challenges (2015, background): “Current data center network topologies are based on hierarchical, tree-like topologies similar to those used in early telephony networks, although a number of alternative topologies including proposals based on fat trees [8], hyper-cubes [97] and randomized small-world topologies [197] have emerged.”
- Deploying chains of virtual network functions: On the relation between link and server usage (2016, methodology): “2: Impact of the minimum demand size on (a) Fat-Tree, (b) BCube, (c) VL2, and (d) the network of Cogent. the comparison schemes adapt to different lengths of service chains.”
- Design, Implementation and Evaluation of Congestion Control for Multipath TCP (2011, background): “We also simulated BCube with 125 three-interface hosts and 25 five-port switches, and for each pair of hosts we selected 3 edge-disjoint paths according to the BCube routing algorithm, choosing the intermediate nodes at random when the algorithm needed a choice.”