BCube Server-Centric Network Topology for Fault-Tolerant Modular Data Centers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modular data centers face challenges with bandwidth-intensive requirements and server/switch failures, necessitating a network architecture that supports high inter-server bandwidth, aggregate throughput, and graceful performance degradation.
Innovation Solution
A server-centric network architecture, known as the BCube network architecture, where each server acts as both an end host and intermediate relay node with multiple network ports, utilizing a hybrid Butterfly Cube structure to provide high aggregate network capacity, fault tolerance, and load balancing through multiple parallel paths and a fault-tolerant source routing protocol.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a typical two-level tree structure is used to interconnect servers in an MDC, then the network architecture is simple to implement, but the inter-server bandwidth and aggregate throughput are insufficient for bandwidth-intensive applications
Solution Approach 1:
The network is segmented into multiple levels (level-0, level-1, level-2) with servers grouped in blocks, where each level handles specific routing functions. This segmentation allows the system to achieve high inter-server bandwidth through multiple parallel paths while keeping each individual routing decision relatively simple.
Solution Approach 2:
The patent transitions from a traditional two-level tree structure to a three-level BCube architecture, adding another dimension to the network topology. This dimensional expansion provides multiple parallel paths between servers, dramatically increasing aggregate throughput and inter-server bandwidth while maintaining manageable complexity through structured routing.
2Reliability
If traditional network architectures are used in MDC, then the system is easier to deploy, but graceful performance degradation during server/switch failures cannot be achieved
Solution Approach 1:
Each server is assigned a unique ID and learns the BCube topology and routing tables locally through the BSR protocol. This local quality approach enables each node to independently make routing decisions and adapt to failures without requiring global coordination, achieving fault tolerance while simplifying deployment.
Solution Approach 2:
The BSR protocol implements feedback mechanisms where servers continuously learn and update their routing tables based on network conditions and failures. This feedback enables graceful performance degradation during failures while the system self-heals and adapts, without requiring complex manual intervention.
3Productivity
If high-performance specialized switches are used to achieve high network capacity, then the inter-server throughput increases, but the manufacturing cost increases significantly
Solution Approach 1:
The patent demonstrates that inexpensive commodity switches can achieve high network capacity when organized in the BCube topology with intelligent routing at server level. The routing intelligence is distributed to servers rather than concentrated in expensive switches, allowing the use of cheap, easily replaceable commodity hardware while maintaining high performance.
Solution Approach 2:
Servers act as intermediaries with multiple network ports, performing routing functions that would otherwise require expensive specialized switches. This intermediary approach distributes the intelligence and processing burden to standard servers, eliminating the need for costly dedicated network hardware while achieving high aggregate throughput.
Data Source
AI summary
A hybrid Butterfly Cube (“BCube”) architecture is described herein. The BCube architecture is a server-centric network architectural design, and includes a plurality of servers. Each of the plurality of servers may have multiple network ports and serve not only as an end host, but also an intermediate relay node for other servers. The BCube architecture further includes a plurality of switches which are arranged in multiple levels. Each switch has a certain number of network ports for connecting to the servers. The BCube architecture provides multiple parallel paths between any two servers. A packet source routing protocol and a BCube source routing (BSR) protocol are used to determine which path is used for routing a packet between any two servers.


