Consistent Mapping for Cloud VM Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cloud computing systems face challenges in efficiently load-balancing virtual machines across geographically distributed data centers without requiring synchronized state tables or contiguous layer-2 networks, which can lead to reduced service availability and increased complexity.

Innovation Solution

Implementing a technique that uses consistent mapping operations across gateways to select healthy virtual machines for incoming packets, based on health information and geographical proximity, without the need for synchronized state tables or contiguous networks, and utilizing IP tunnels for communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronized state tables are used for load-balancing across geographically distributed data centers, then load-balancing consistency is improved, but system complexity and synchronization overhead increase

Engineering Contradiction:
Improveload-balancing consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the load-balancing functionality into independent gateway nodes, each maintaining local state tables without requiring synchronization with other gateways. Each gateway independently performs consistent mapping operations using the same hash function algorithm, allowing geographic distribution while avoiding centralized synchronization complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of synchronizing a single master state table across all gateways, each gateway maintains a local copy of the state table with the same structure and algorithms. This copying approach allows independent operation while maintaining consistency through identical hash mapping logic, eliminating synchronization overhead.

Inventive Principle:
Principle #26Copying

2Reliability

If contiguous layer-2 networks are used for load-balancing, then network connectivity is improved, but network infrastructure requirements and complexity increase

Engineering Contradiction:
Improvenetwork connectivityVSAvoidnetwork infrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system introduces IP tunnels as intermediary mechanisms that enable layer-3 routing between geographically distributed data centers. This replaces the requirement for contiguous layer-2 networks with tunnel-based encapsulation, allowing load-balancing across standard IP networks without specialized layer-2 infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system transitions from layer-2 network connectivity requirements to layer-3 IP-based routing with tunneling. This dimensional change in network layer usage allows geographic distribution across standard IP infrastructure rather than requiring specialized contiguous layer-2 networks.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If health information checking is performed for all virtual machines, then service availability is improved, but communication overhead increases

Engineering Contradiction:
Improveservice availabilityVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system performs health checks selectively rather than continuously on all virtual machines. The consistent hashing mechanism naturally handles failures by redistributing traffic from failed VMs to healthy ones, reducing the frequency and scope of health checking operations while maintaining service availability.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8958293B1Transparent load-balancing for cloud computing services
Publication Date: 2015.02.17 GOOGLE LLC
  • US8958293B1 patent drawing
  • US8958293B1 patent drawing
  • US8958293B1 patent drawing

AI summary

Systems and techniques are described for virtual machine (VM) load-balancing. A described technique includes running VMs that communicate via a virtual network, the VMs being configured to handle requests associated with at least a destination address on a public network and operating gateways that provide connectivity between the virtual network and the public network, and use a consistent mapping operation to perform load-balancing among the VMs. A gateway can obtain VM health information; determine based on the VM health information a group of healthy VMs; receive an incoming packet that includes a source address and the destination address; select a handling VM based on an output of the consistent mapping operation given the source address and the group of healthy VMs; forward the incoming packet to the handling VM via the virtual network; and create an entry to forward one or more additional incoming packets to the handling VM.