Virtual Switch Datacenter Congestion Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current congestion control methods in datacenter networks are challenging to implement at a datacenter-level due to their localized nature, often requiring coordination with individual virtual machines (VMs) and lacking visibility into the congestion control mechanisms employed by VMs, which can lead to inefficient traffic management and network congestion.

Innovation Solution

A virtual switch-based congestion control system that computes a congestion window value (CWND) for each flow, allowing for datacenter-level congestion control by modifying response packets to enforce packet limits and using Explicit Congestion Notification (ECN) features, even if VMs do not implement them, thereby managing congestion without altering the VMs' operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If congestion control is implemented at the VM level using TCP/IP stack, then each VM can control its own traffic, but the datacenter lacks centralized visibility and coordination leading to inefficient traffic management

Engineering Contradiction:
ImproveVM-level congestion control adaptabilityVSAvoidDatacenter-level congestion visibility
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The virtual switch acts as an intermediary between VMs and the network, intercepting packets before they reach the physical network. It inspects packet headers to identify flow characteristics and implements congestion control at the datacenter level without requiring VMs to be aware of the mechanism. The virtual switch mediates between individual VM congestion control and datacenter-wide congestion management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent transitions from local (VM-level) congestion control to a global (datacenter-level) perspective by introducing a virtual switch layer that operates above the VM level. This dimensional shift enables centralized visibility into all flows passing through the datacenter while preserving VM-level operation through transparent packet inspection and modification.

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

2Reliability

If the virtual switch modifies response packets to enforce packet limits, then datacenter-level congestion control is achieved, but packet transmission is restricted

Engineering Contradiction:
ImproveCongestion control effectivenessVSAvoidPacket transmission efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The virtual switch dynamically adjusts congestion window values and packet transmission parameters based on real-time network conditions. By modifying the congestion window parameter in response packets, it controls the number of packets a VM can transmit without causing congestion, thereby balancing reliability and productivity through adaptive parameter adjustment rather than fixed restrictions.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements feedback mechanisms where the virtual switch monitors network conditions and adjusts packet transmission limits accordingly. Response packets containing congestion window information provide feedback to VMs, enabling them to automatically adjust their transmission behavior. This closed-loop feedback ensures congestion control effectiveness while maintaining optimal packet transmission efficiency under varying network conditions.

Inventive Principle:
Principle #23Feedback

3Reliability

If Explicit Congestion Notification features are used, then network management is improved, but compatibility issues arise when VMs do not implement these features

Engineering Contradiction:
ImproveNetwork management capabilityVSAvoidVM compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The virtual switch serves as an intermediary that implements ECN functionality even when VMs do not support it. It inspects packets, sets congestion bits when necessary, and modifies response packets to convey congestion information back to senders. This mediator approach enables ECN-based congestion control at the datacenter level while maintaining compatibility with VMs that lack native ECN support.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the congestion control functionality into two parts: ECN implementation at the virtual switch level and optional ECN support at the VM level. By separating these functions, the system can leverage ECN features for improved network management where available while falling back to alternative congestion control mechanisms where VMs do not implement ECN, thus maintaining versatility across different VM configurations.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10237186B2Enforcing datacenter-level congestion control
Publication Date: 2019.03.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10237186B2 patent drawing
  • US10237186B2 patent drawing
  • US10237186B2 patent drawing

AI summary

At an application executing in conjunction with a vSwitch in a host system, a CWND value is computed corresponding to a flow from a VM using a period measured by a timer and a number of packets of the flow received and acknowledged in response packets, the number being counted by a counter, the timer being associated with a packet of the flow. The CWND value is stored in a field in a response packet received from a receiver of the flow, the field being designated for carrying a RWND value, the response packet corresponding to a packet in the flow. The storing forms a modified response packet.