Fat Tree Network Load Balancing via Hash Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Ethernet-based networks in datacenters require large, expensive core switches that limit scalability and flexibility due to poor support for multi-path routing, preventing efficient utilization of network architectures with redundant connections.
Innovation Solution
Implementing enhanced edge switches with multi-path routing and load balancing capabilities within an Ethernet-based network, combined with commodity core switches, to create a scalable and cost-effective fat tree network topology that utilizes redundant connections for increased bandwidth and flexibility.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If large core switches are used in Ethernet-based networks, then network reliability is improved, but device cost and complexity increase
Solution Approach 1:
The patent segments the network into multiple paths using fat tree topology with aggregation switches and core switches, distributing traffic across multiple routes. This segmentation allows smaller, less complex switches to collectively provide the reliability previously requiring a single large core switch, while maintaining network stability through structured path division.
Solution Approach 2:
The patent combines multiple aggregation switches and core switches into a fat tree architecture that merges multiple smaller switching units to collectively provide the network reliability and capacity previously requiring a single large switch. This merging approach distributes functionality across multiple components, reducing individual device complexity while maintaining overall system reliability.
2Stability of the object's composition
If Ethernet networks use traditional spanning tree algorithms, then network stability is improved, but multi-path routing capability deteriorates
Solution Approach 1:
The patent implements dynamic load balancing that adapts to changing network conditions by monitoring link utilization and dynamically adjusting path selection. This dynamic approach allows the network to maintain stability through controlled path selection while simultaneously utilizing multiple paths for improved adaptability and resource utilization, overcoming the static limitations of traditional spanning tree algorithms.
Solution Approach 2:
The patent introduces load balancing controllers and hashing mechanisms as intermediaries that mediate between the spanning tree algorithm and multi-path routing requirements. These intermediaries enable intelligent path selection that respects the stability-providing spanning tree structure while actively utilizing multiple paths through controlled load distribution, thus reconciling the conflict between stability and adaptability.
3Device complexity
If multiple commodity switches are deployed to reduce cost, then device cost decreases, but network performance deteriorates due to poor multi-path support
Solution Approach 1:
The patent makes commodity switches multi-functional by implementing load balancing capabilities and multi-path routing support on standard switching hardware. Through software-based load balancing and hashing mechanisms, these universal switches can dynamically utilize multiple paths and provide advanced routing functionality without requiring specialized expensive hardware, thus maintaining cost-effectiveness while improving network performance.
Solution Approach 2:
The patent changes operational parameters such as load balancing algorithms, hashing functions, and path selection criteria to enable commodity switches to achieve optimal multi-path utilization. By adjusting these parameters and implementing intelligent control mechanisms, the network extracts maximum performance from standard switching hardware, overcoming the inherent limitations of commodity devices through parameter optimization rather than hardware upgrades.
Data Source
AI summary
A method for load balancing Ethernet traffic within a fat tree network (315, 455) includes randomly assigning incoming messages (510) into hash classes using a hash function (520); allocating the hash classes among uplinks (550); and transmitting the incoming messages on the uplinks (550) according to the hash class. A network switch (515) for load balancing communication flows in a fat tree network (315, 455) includes downlinks (545) and uplinks (550); the network switch (515) being configured to route communication flows among the downlinks (545) and uplinks (550); a hash module (520) which receives a MAC address from a message (510) and outputs a hash address; and a TCAM lookup module (535) which allocates the hash address into a hash class and allocates the hash class to one of the uplinks (550).


