Predictable State Partitioning for Distributed Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed systems face inefficiencies in load balancing and state management, leading to increased memory utilization, latency, and overhead due to the need for duplicate state copies and remote data transfers across cluster members.

Innovation Solution

Implementing an externally predictable protocol state partitioning algorithm that directs protocol messages to the same cluster member that owns the corresponding state, eliminating the need for state copying and reducing network, CPU, and memory utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If state structures are held in duplicate copies in memory of subset of processes, then availability is improved, but memory utilization increases and latency increases

Engineering Contradiction:
ImproveavailabilityVSAvoidmemory utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the distributed system into multiple cluster members, each responsible for owning specific state structures. Instead of duplicating entire state structures across all members, the system partitions state management responsibilities, allowing each member to hold only the state it owns rather than maintaining duplicate copies of all state.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by having each cluster member maintain state structures locally in its own memory space rather than distributing duplicate copies across all members. This allows each member to efficiently access and process its own state without requiring remote data transfers or duplicate copies, reducing overall memory utilization while maintaining availability.

Inventive Principle:
Principle #3Local quality

2Reliability

If state structures are held in duplicate copies in memory, then availability is improved, but latency increases due to remote data transfers

Engineering Contradiction:
ImproveavailabilityVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments state ownership among cluster members, allowing each member to process protocol messages related to its owned state locally without requiring remote data transfers. This segmentation eliminates the latency associated with fetching state from other members while maintaining system availability through distributed ownership.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each cluster member serves itself by processing protocol messages locally using its own state structures. The member that owns a particular state processes messages related to that state without requiring data transfers from other members, eliminating remote access latency while maintaining availability through distributed state ownership.

Inventive Principle:
Principle #25Self-service

3Productivity

If protocol messages are forwarded to cluster members that do not own the state, then load distribution may be improved, but network overhead and CPU overhead increase

Engineering Contradiction:
Improveload distributionVSAvoidnetwork overhead and CPU overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The load balancer performs preliminary action by determining which cluster member owns the state corresponding to each protocol message before forwarding the message. This pre-determination ensures that messages are always routed to the owning member, eliminating the need for state copying or remote data transfers and reducing network overhead and CPU overhead associated with state management.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If duplicate state copies are maintained across cluster members, then availability is improved, but device complexity increases

Engineering Contradiction:
ImproveavailabilityVSAvoidstate management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments state ownership among cluster members, with each member responsible for maintaining and processing its own state. This segmentation simplifies state management by eliminating the complexity of coordinating duplicate copies across members, as each member independently manages its owned state without requiring synchronization or consistency protocols with other members.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9760370B2Load balancing using predictable state partitioning
Publication Date: 2017.09.12 ORACLE INT CORP
  • US9760370B2 patent drawing
  • US9760370B2 patent drawing
  • US9760370B2 patent drawing

AI summary

A system performs load balancing. The system receives a protocol message by a load balancer in communication with a distributed system comprising a server cluster. The system determines a cluster member to process the protocol message, where the cluster member is a member of the server cluster configured to own a state corresponding to the protocol message. The system then forwards the protocol message to the cluster member.