Congestion-Aware Load Balancing in Virtual Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network packet distribution across multiple paths in data center networks is often uneven, leading to congestion and performance degradation due to the lack of consideration for congestion levels in existing load balancing mechanisms like ECMP, which are either congestion-agnostic or require complex central controllers or endpoint modifications.

Innovation Solution

Implementing a congestion-aware load balancing method where virtual switches learn path congestion levels using techniques like Explicit Congestion Notification (ECN) or round trip time (RTT) measurements, and modify packet headers to route packets through paths with lower congestion, without requiring central controllers or endpoint modifications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If load balancing is performed without considering congestion levels, then network packet distribution is simplified, but network congestion occurs and performance degrades

Engineering Contradiction:
Improvenetwork performanceVSAvoidload balancing mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs self-service by having virtual switches automatically detect congestion levels on network paths and dynamically adjust packet routing decisions based on detected congestion, without requiring external controllers or manual intervention. The virtual switches monitor ECN markers in received packets to learn congestion states and autonomously select less congested paths for forwarding packets.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback by using ECN (Explicit Congestion Notification) markers in network packets to detect congestion levels on different paths. Virtual switches monitor these feedback signals from the network and use the congestion information to dynamically adjust their load balancing decisions, routing packets away from congested paths toward less congested alternatives.

Inventive Principle:
Principle #23Feedback

2Productivity

If congestion-aware load balancing is implemented, then network traffic is balanced based on congestion levels, but packet header modification complexity increases

Engineering Contradiction:
Improvenetwork traffic distributionVSAvoidvirtual switch operation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system applies segmentation by separating the load balancing control logic into virtual switch operations, where each virtual switch independently performs congestion detection, path selection, and packet header modification. This segmentation allows distributed decision-making without requiring a centralized controller, reducing overall system complexity while maintaining congestion-aware routing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes parameters by dynamically modifying packet header fields (source address, destination address, source port) based on selected paths. The virtual switch alters these header parameters to route packets through less congested paths while maintaining flow identification, enabling congestion-aware routing through straightforward header modifications rather than complex routing protocols.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If path congestion levels are monitored and used for routing decisions, then network efficiency improves, but measurement and detection complexity increases

Engineering Contradiction:
Improvenetwork efficiencyVSAvoidcongestion level detection
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The system uses ECN (Explicit Congestion Notification) markers as intermediaries to convey congestion information. Instead of implementing complex congestion measurement mechanisms, the virtual switches leverage ECN markers inserted by network infrastructure to indirectly obtain congestion level information, simplifying the detection process while maintaining accurate congestion awareness.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10193810B2Congestion-aware load balancing
Publication Date: 2019.01.29 VMWARE INC
  • US10193810B2 patent drawing
  • US10193810B2 patent drawing
  • US10193810B2 patent drawing

AI summary

Certain embodiments presented herein relate to load balancing of data transmissions among a plurality of paths between endpoints (EPs) coupled to virtual switches. In particular, between the virtual switches there may be a number of physical paths for the data to be communicated between the EPs. Each path may have a different congestion level. Certain embodiments relate to selecting a path of the plurality of paths between EPs to communicate data between the EPs based on the congestion levels associated with each of the plurality of paths. In certain embodiments, a virtual switch determines a congestion level of each of the plurality of paths, selects a path of the plurality of paths based on the determined congestion level, and sets source port information of network packets to correspond to the selected path so that the network packets are communicated along the selected path.