Max-Min Fairness Bandwidth Allocation for Data Center Batch Completion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In many-to-one communication patterns in data center applications, the total completion time is often dictated by the slowest worker node due to bottlenecks in bandwidth usage, leading to increased batch completion times.
Innovation Solution
Implementing a max-min fairness process to distribute bandwidth allocations across data links, where the bandwidth is reallocated from bottlenecked batches to ensure equal effective path capacity across all requests, thereby reducing overall batch completion time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If bandwidth is allocated to all flows in a batch, then total bandwidth usage increases, but bottlenecked flows continue to limit overall batch completion time
Solution Approach 1:
The patent extracts and removes extra flows from batches that are not critical for meeting the response objective. By identifying and removing these redundant flows, the system eliminates bandwidth consumption by non-essential traffic, allowing reallocated bandwidth to accelerate critical flows and reduce overall batch completion time.
Solution Approach 2:
The patent dynamically changes the bandwidth allocation parameter for different flows based on their criticality to the response objective. Critical flows receive increased bandwidth allocation while non-critical or extra flows have their bandwidth reduced or eliminated, optimizing the overall batch completion time by focusing resources on what matters most.
2Productivity
If bandwidth allocation is increased for all flows, then network throughput improves, but bottlenecked data links continue to constrain performance
Solution Approach 1:
The patent implements a feedback mechanism that monitors the response objective and batch completion status, then adjusts bandwidth allocation accordingly. The system continuously evaluates which flows are critical and reallocates bandwidth dynamically, creating a closed-loop control system that optimizes throughput while managing complexity through automated decision-making.
Solution Approach 2:
The patent performs preliminary analysis to identify critical flows and extra flows before bandwidth allocation. By pre-determining which flows are essential for meeting the response objective, the system can proactively allocate bandwidth optimally without requiring complex real-time adjustments during batch execution.
3Reliability
If the server waits for all worker node responses, then data accuracy is ensured, but total completion time is dictated by the slowest node
Solution Approach 1:
The patent extracts and removes extra flows that are not critical for meeting the response objective. By identifying and eliminating these non-essential flows, the system reduces the time required to complete the batch while maintaining the necessary data completeness for reliable operation.
Solution Approach 2:
The patent applies partial action by not requiring all flows to complete at maximum speed - only the critical flows needed to meet the response objective must be prioritized. Extra flows can proceed at normal or reduced speeds without impacting the overall batch completion time, thus reducing the duration dominated by the slowest node.
Data Source
AI summary
The present disclosure describes a system and method for reducing total batch completion time using a max-min fairness process. In some implementations, the max-min fairness process described herein reduces the batch completion time by collectively routing the batches in a way that targets providing the same effective path capacity across all requests. More particularly, given a network shared by batches of flows, total throughput is increased with max-min fairness (and therefore batch completion time decreased) if the nth percentile fastest flow of a batch cannot increase its throughput without decreasing the nth percentile fastest flow of another batch whose throughput is not greater than the throughput of the first batch.


