Controller Assignment List for Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized computing environments, managing logical forwarding elements with a cluster of controllers leads to uneven resource distribution due to large numbers of control channel connections, causing load imbalances across controllers.

Innovation Solution

A method is introduced where a controller assignment list is distributed to host computers, using index values derived from logical forwarding element identifiers to identify and connect with appropriate controllers for out-of-band control channel communications, employing a hash/modulo process for load balancing across controllers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If controllers manage a large number of host computers with control channel connections, then coverage and connectivity are improved, but controller resource utilization becomes uneven and load imbalance occurs

Engineering Contradiction:
Improvecontroller connectivityVSAvoidcontroller resource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the controller cluster into multiple controllers, each responsible for a specific subset of host computers. This segmentation is achieved through partitioning the host computer list into multiple groups, where each group is assigned to a specific controller. The segmentation reduces the number of connections per controller while maintaining comprehensive coverage, thereby resolving the contradiction between connectivity and resource utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by assigning different subsets of host computers to different controllers based on their specific characteristics and requirements. Each controller manages a tailored subset of hosts rather than uniformly managing all hosts, allowing for optimized resource allocation and reduced load imbalance while maintaining reliable connectivity across the network.

Inventive Principle:
Principle #3Local quality

2Device complexity

If a single controller manages all host computers, then control simplicity is maintained, but controller resource exhaustion occurs under uneven load distribution

Engineering Contradiction:
Improvecontrol system simplicityVSAvoidcontroller resource availability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent divides the control system into multiple controllers, each managing a specific subset of host computers. This segmentation prevents any single controller from becoming a bottleneck or failing under uneven load distribution, thereby maintaining reliability while introducing only minimal complexity through automated assignment mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a controller assignment list as an intermediary mechanism that mediates between the host computers and the controller cluster. This assignment list enables host computers to identify their designated controllers without requiring complex discovery or routing protocols, thus maintaining simplicity while distributing the management burden across multiple controllers.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If controllers establish control channel connections with all host computers, then comprehensive management is achieved, but control channel communication load increases on individual controllers

Engineering Contradiction:
Improvecontroller management coverageVSAvoidcontroller communication capacity
Core Design Contradiction:
Adaptability or versatilityVSPower

Solution Approach 1:

The patent segments the control channel communication load by assigning specific host computer subsets to specific controllers. This segmentation reduces the communication capacity requirement for each individual controller while maintaining comprehensive management coverage across all host computers through the distributed controller architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic controller assignment where the controller assignment list can be updated and redistributed based on changing network conditions and load requirements. This dynamic adaptation allows the system to optimize communication load distribution while maintaining comprehensive management coverage, preventing any single controller from becoming overloaded.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11677611B2Host side method of using a controller assignment list
Publication Date: 2023.06.13 VMWARE INC
  • US11677611B2 patent drawing
  • US11677611B2 patent drawing
  • US11677611B2 patent drawing

AI summary

Some embodiments provide a novel method for distributing control-channel communication load between multiple controllers in a network control system. In some embodiments, the controllers manage physical forwarding elements that forward data between several computing devices (also called hosts or host computers), some or all of which execute one or more virtual machines (VMs). The method of some embodiments distributes a controller assignment list to the host computers. The host computers use this list to identify the controllers with which they need to interact to perform some of the forwarding operations of their associated logical forwarding elements. In some embodiments, agents executing on the host computers (1) review the controller assignment list to identify the appropriate controllers, and (2) establish control channel communications with these controllers to obtain the needed data for effectuating the forwarding operations of their associated physical forwarding elements. These agents in some embodiments are responsible for out-of-band control channel communication with the controllers.