Integrated Application-Aware Load Balancer for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed computer systems face challenges in effectively balancing computational load across multiple servers or virtual servers due to the limitations of external load balancers, which are expensive, complex to set up, and unable to access distributed-application-state information for optimal load distribution.

Innovation Solution

An integrated application-aware load-balancing component is introduced, comprising layer-4 and layer-7 load-balancing subcomponents that distribute communications connections and client requests among computational nodes within a distributed computer system, utilizing rules and policies informed by performance and operational characteristics to achieve balanced load distribution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If an external load balancer is used to distribute incoming service requests among multiple computational nodes, then load balancing capability is provided, but system complexity and cost increase

Engineering Contradiction:
Improveload balancing capabilityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The load balancing functionality is merged with the distributed service application itself, eliminating the need for a separate external load balancer. The application includes integrated load balancing components that operate within the application framework, combining service execution and load distribution functions into a unified system.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The distributed service application performs load balancing autonomously using its own state information and control mechanisms. The application monitors its own computational nodes and directs incoming requests based on real-time application state, eliminating dependency on external load balancing infrastructure.

Inventive Principle:
Principle #25Self-service

2Productivity

If an external load balancer is used to distribute requests, then request distribution is achieved, but access to distributed-application-state information is limited

Engineering Contradiction:
Improverequest distributionVSAvoidapplication state information access
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The integrated load balancing component continuously monitors distributed application state information from multiple computational nodes and uses this feedback to dynamically adjust request distribution. The system incorporates real-time application state data into load balancing decisions, enabling informed routing based on actual node performance and availability.

Inventive Principle:
Principle #23Feedback

3Reliability

If multiple IP addresses or URLs are distributed across many different front-end server computers, then service availability is improved, but effective balancing of computational load is not achieved

Engineering Contradiction:
Improveservice availabilityVSAvoidcomputational load balancing
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The load balancing system dynamically adjusts request distribution based on real-time computational load conditions of individual nodes. Rather than static distribution, the system continuously monitors and adapts node utilization, directing new requests to nodes with available capacity while maintaining service availability across the distributed infrastructure.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10992739B2Integrated application-aware load balancer incorporated within a distributed-service-application-controlled distributed computer system
Publication Date: 2021.04.27 VMWARE INC
  • US10992739B2 patent drawing
  • US10992739B2 patent drawing
  • US10992739B2 patent drawing

AI summary

The current document is directed to an integrated application-aware load-balancing component of a distributed computer system. The integrated application-aware load-balancing component is, in a described embodiment, incorporated within a distributed application that serves as a control component of multiple physical computers within a distributed computer system. The integrated application-aware load-balancing component includes a layer-4 load-balancing subcomponent that distributes communications connections initiated by remote client computers among computational nodes within the distributed computer system in order to balance the computational load applied to the distributed application and distributed computer system by the remote client computers. The integrated application-aware load-balancing component additionally includes a layer-7 load-balancing subcomponent that redistributes client requests among cluster nodes within the distributed computer system in order to enhance balancing of the computational load applied to the distributed application and distributed computer system by the remote client computers. Operation of the layer-4 and layer-7 load balancers are controlled and/or adjusted by rules and policies informed by performance and operational characteristics of the distributed application and distributed computer system.