Virtual Switch Congestion Control for Datacenter East-West Traffic
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current congestion control methods in datacenter networks are challenging to implement at a datacenter level due to the localized nature of congestion control within virtual machines (VMs), leading to difficulties in managing East-West traffic congestion, which differs from North-South traffic concerns and is often not compatible with the congestion control mechanisms employed by VMs.
Innovation Solution
A method that utilizes a virtual switch (vSwitch) to associate a timer with packets from VMs, counts acknowledged packets, computes a congestion window value (CWND), and applies it to limit the number of packets transmitted, enabling datacenter-level congestion control without requiring changes to the VMs' congestion control algorithms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If congestion control is implemented within individual virtual machines using TCP/IP stack algorithms, then each VM can optimize its own traffic management, but datacenter-level congestion control becomes difficult to implement and East-West traffic congestion cannot be effectively managed
Solution Approach 1:
The patent introduces a virtual switch as an intermediary component between VMs and the physical network. The virtual switch implements datacenter-level congestion control by monitoring traffic patterns and applying congestion control algorithms at the virtualization layer, without requiring changes to individual VM configurations. This mediator approach enables centralized East-West traffic management while preserving VM autonomy.
Solution Approach 2:
The patent shifts congestion control from the traditional network layer to the virtualization layer, creating a new dimension of control. By implementing congestion control in the virtual switch rather than in individual VMs or physical network devices, the system achieves both localized and datacenter-level control simultaneously, effectively managing East-West traffic that was previously uncontrollable.
2Productivity
If VMs implement their own congestion control algorithms independently, then they can optimize for their specific workloads, but they cannot coordinate with other VMs sharing the same network infrastructure
Solution Approach 1:
The patent merges individual VM congestion control capabilities with datacenter-level control by implementing a virtual switch that aggregates traffic from multiple VMs. The virtual switch combines traffic monitoring, congestion detection, and control algorithm execution into a unified system that coordinates congestion management across all VMs sharing the network infrastructure, enabling both individual optimization and collective coordination.
3Reliability
If traditional TCP/IP congestion control is used in VMs, then it works for North-South traffic, but it is not compatible with or effective for East-West traffic patterns in datacenters
Solution Approach 1:
The patent applies different congestion control strategies to different traffic patterns through the virtual switch. The virtual switch identifies East-West traffic (workload-to-workload communication within the datacenter) and applies specialized congestion control algorithms tailored for this traffic pattern, while maintaining compatibility with traditional TCP/IP control for North-South traffic. This localized quality approach makes the system adaptable to multiple traffic types.
Data Source
AI summary
A timer is associated with a packet of a flow from a VM at an application executing in conjunction with a vSwitch in a host system, using a processor assigned to the vSwitch in the host system. At the application, using a counter, a number of packets of the flow that are received and acknowledged in response packets is counted, the response packets being received from a receiver of the flow. At the application, using a period measured by the timer and the number of received packets acknowledged as counted by the counter, a CWND value is computed. The CWND value is applied to the flow at the vSwitch such that the vSwitch transmits, from the flow to a network, only a number of packets up to the CWND value.


