Shared Queue Load Balancing Across Multiple Network Interfaces

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face challenges in efficiently balancing communication load among multiple network devices, leading to suboptimal performance in terms of throughput, latency, and job completion times.

Innovation Solution

Implementing shared queues accessible to multiple network devices, where work requests are issued and executed through a 'work stealing' scheme, with network devices pulling work descriptors based on load estimation and Quality-of-Service (QoS) criteria, using atomic fetch-and-add commands to manage queue pointers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If work descriptors are posted on shared queues accessible to multiple network devices, then load balancing and resource utilization are improved, but queue management complexity and pointer synchronization overhead increase

Engineering Contradiction:
Improveload balancing efficiencyVSAvoidqueue management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent replaces traditional mechanical queue management mechanisms (separate queues per network device, manual work assignment) with a shared queue system using atomic hardware operations. The atomic fetch-and-add command provides implicit synchronization without requiring complex software-based locking or coordination protocols, thus reducing management complexity while improving load balancing.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

Network devices autonomously monitor the shared queue and independently pull work descriptors when their communication load decreases. This self-service mechanism eliminates the need for centralized work assignment and allows network devices to automatically balance their own workloads based on real-time conditions, improving productivity without proportionally increasing system complexity.

Inventive Principle:
Principle #25Self-service

2Productivity

If network devices pull work descriptors based on load estimation, then communication load balancing is improved, but latency in work descriptor retrieval may increase

Engineering Contradiction:
Improvecommunication load balancingVSAvoidwork descriptor retrieval latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

Network devices continuously monitor their communication load and maintain readiness to pull work descriptors. The shared queue with atomic operations ensures that work descriptors are immediately available when needed, eliminating waiting time. This continuous monitoring and immediate retrieval capability allows load balancing without significant latency penalties.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

Work descriptors are pre-positioned in the shared queue before being needed. Network devices can immediately retrieve them when load conditions permit, without requiring dynamic generation or complex lookup. This preliminary placement of work descriptors in the shared queue structure enables fast retrieval while maintaining load balance.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If atomic fetch-and-add commands are used to manage queue pointers, then queue access synchronization is improved, but processing overhead increases

Engineering Contradiction:
Improvequeue access synchronizationVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent replaces software-based synchronization mechanisms (locks, semaphores, atomic flags) with a single atomic fetch-and-add hardware operation. This hardware-level atomic operation provides reliable queue pointer synchronization without requiring multiple separate atomic operations or complex synchronization protocols, thus reducing processing overhead while maintaining high reliability.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Adaptability or versatility

If multiple shared queues are used with QoS criteria, then service quality differentiation is improved, but queue selection complexity increases

Engineering Contradiction:
ImproveQoS differentiationVSAvoidqueue selection complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the shared queue system into multiple queues, each dedicated to specific QoS classes or traffic types. This segmentation allows network devices to select queues based on simple QoS criteria (such as priority level or traffic type) without requiring complex analysis. Each queue is independently managed with its own pointer, simplifying the selection process while providing robust QoS differentiation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250358235A1Load Balancing Between Network Devices Using Queue Sharing
Publication Date: 2025.11.20 MELLANOX TECHNOLOGIES LTD(IL)
  • US20250358235A1 patent drawing
  • US20250358235A1 patent drawing
  • US20250358235A1 patent drawing

AI summary

A system includes one or more processors, and multiple network devices to connect the one or more processors to a network. The one or more processors are to issue work requests to the multiple network devices, by posting work descriptors on one or more shared queues that are each accessible to the multiple network devices. The network devices are to pull the work descriptors from the one or more shared queues, and to execute the work requests responsively to the work descriptors.