Congestion-Aware Load Balancing for Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data centers face challenges in efficiently managing network congestion during read operations in distributed storage systems, which can lead to suboptimal load balancing and increased latency, especially when dealing with redundant data stored using coding techniques.

Innovation Solution

A congestion-aware load balancing scheme that directs read requests to the least congested storage nodes by using a Distributed Storage System Node Selection Optimizer (DSS-NSO) to copy and transmit read requests across multiple storage nodes, considering current and future network load conditions, and feeding forward congestion information to improve overall network load balancing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If read requests are distributed to multiple storage nodes in a distributed storage system, then data redundancy and reliability are improved, but network congestion and latency increase during read operations

Engineering Contradiction:
Improvedata redundancyVSAvoidread operation latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically changes the parameter of request distribution by selecting different storage nodes based on real-time network conditions. The load balancer monitors network congestion levels and adjusts which storage nodes receive read requests, transitioning from static distribution to dynamic parameter-based distribution to optimize both reliability and latency

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The load balancing system implements dynamic behavior by continuously adapting request routing decisions based on current network congestion states. Storage nodes that were previously congested can become available later, and the system dynamically redirects requests to these nodes when they become less loaded, creating a flexible, adaptive system that balances reliability requirements with latency optimization

Inventive Principle:
Principle #15Dynamics

2Productivity

If read requests are directed to storage nodes with current network load awareness, then network load balancing is improved, but the system cannot predict future congestion leading to suboptimal routing decisions

Engineering Contradiction:
Improvenetwork load balancing efficiencyVSAvoidprediction of future network conditions
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary actions by predicting future network congestion states before making routing decisions. The load balancer uses historical data and current trends to forecast which storage nodes will become congested, and proactively directs requests to nodes that are predicted to remain available, rather than simply reacting to current load conditions

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where network performance data is continuously collected, analyzed, and used to adjust routing decisions. The load balancer receives feedback about actual read operation performance and network congestion patterns, then uses this feedback to refine its predictions and improve future routing decisions, creating a closed-loop control system

Inventive Principle:
Principle #23Feedback

3Ease of operation

If a centralized load balancer directs all read requests, then centralized control and monitoring are improved, but the system complexity and single point of failure risk increase

Engineering Contradiction:
Improvecentralized controlVSAvoidsystem architecture complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system applies segmentation by dividing the load balancing functionality into distributed components. Instead of a single centralized controller, multiple load balancing agents or intelligence are distributed across different network nodes or storage nodes themselves, allowing localized decision-making while maintaining overall system coordination through standardized protocols

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10637923B2Congestion aware load balancing for distributed storage
Publication Date: 2020.04.28 CISCO TECHNOLOGY INC
  • US10637923B2 patent drawing
  • US10637923B2 patent drawing
  • US10637923B2 patent drawing

AI summary

Congestion aware load balancing for distributed storage may be provided. First, a read request for data may be received. The data may have redundancy through coding or through copying. Then it may be determined which K of M possible storage nodes to direct the received read request. K and M may be integers and M may be greater than K. In response to determining which K of M possible storage nodes to direct the received read request, the received read request may be copied into K read requests respectively corresponding to the determined K of M possible storage nodes. The copied K read requests may then be transmitted to the determined respective K storage nodes. And, in response to transmitting the copied K read requests, a client may receive data replies from each of the determined respective K storage nodes.