Distributed Load Balancing via Node Autonomy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed systems, the lack of effective load balancing leads to resource contention and inefficient task execution due to the absence of a dynamic resource allocation policy, causing tasks to fail when resources are exhausted, and reliance on a master node for load balancing makes the system vulnerable to failures.

Innovation Solution

Each node in the distributed system collects resource usage information to dynamically migrate tasks, allowing all nodes to assume load balancing responsibilities, thereby releasing resources and ensuring even distribution of tasks across nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tasks are continuously allocated to a node without load balancing policy, then the node receives more tasks, but task execution fails when resources are insufficient

Engineering Contradiction:
Improvetask allocation rateVSAvoidtask execution success rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Each node monitors its own resource usage information and provides feedback to the task allocation mechanism. When a node's resources are insufficient, it sends feedback signals to stop allocating new tasks to itself, thereby preventing task execution failures while maintaining high task allocation rates to other capable nodes

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Nodes autonomously monitor their own resource status and make self-service decisions about task allocation. Each node independently determines whether it has sufficient resources to execute incoming tasks and can reject tasks or stop accepting new tasks based on its own resource conditions, eliminating the need for centralized load balancing

Inventive Principle:
Principle #25Self-service

2Ease of operation

If a master node performs load balancing, then task distribution can be controlled, but the system becomes vulnerable to single point of failure

Engineering Contradiction:
Improveload balancing controlVSAvoidsystem availability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The centralized load balancing function is segmented and distributed to all nodes in the system. Instead of one master node controlling task allocation, each node independently performs load balancing decisions based on its own resource status and the resource status of other nodes, eliminating the single point of failure while maintaining operational control

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

All nodes in the system are designed to perform multiple functions: they can execute tasks, monitor resource usage, make task allocation decisions, and provide load balancing services to other nodes. This universal capability ensures that if any single node fails, the remaining nodes can continue to perform all system functions without interruption

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If tasks are allocated without considering resource availability, then allocation speed is high, but task execution efficiency decreases due to waiting state

Engineering Contradiction:
Improvetask allocation speedVSAvoidtask execution efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

Before allocating a task to a node, the system performs preliminary checks of the node's resource availability. Nodes proactively monitor and report their resource status in advance, allowing the task allocation mechanism to identify suitable nodes before task assignment, thereby maintaining high allocation speed while ensuring tasks are assigned only to nodes that can execute them efficiently without entering waiting states

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11438271B2Method, electronic device and computer program product of load balancing
Publication Date: 2022.09.06 EMC IP HLDG CO LLC
  • US11438271B2 patent drawing
  • US11438271B2 patent drawing
  • US11438271B2 patent drawing

AI summary

Load balancing is described for a distributed computing system. For instance, resource usage information of devices in a distributed system is collected at a target device in the distributed system. Further a first work task for the target device is determined to be stopped based on the resource usage information, the target device having a first authority to execute the first work task. The first authority is then caused to be released. Beneficially, each node in the distributed system can individually balance different task loads and the use of resources by different operations of the task, thereby improving the performance of the distributed system.