VM Ingress Datapath Buffer Switching for Burst Traffic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The fixed size of storage rings in virtual machines (VMs) leads to memory footprint and consumption issues when handling bursts of data messages, causing dropped data due to full storage rings, which existing solutions like increasing ring size exacerbate performance degradation.

Innovation Solution

Implementing an active/standby configuration of storage rings, switching between active and standby sets based on congestion thresholds to manage data message storage without increasing memory footprint, using a first-in, first-out basis for circular buffers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the size of storage rings is increased to handle larger bursts of data messages, then the storage capacity and throughput are improved, but the memory footprint and memory consumption increase, degrading VM performance

Engineering Contradiction:
Improvestorage capacityVSAvoidmemory consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent divides the storage ring into multiple segments or slots, each capable of holding a data message. By segmenting the storage ring, the system can efficiently manage memory usage while maintaining the ability to handle bursts of data messages through circular buffer techniques and pointer management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic management of storage ring slots through producer and consumer pointers that move circularly through the buffer. This dynamic approach allows the storage ring to adapt to varying data message arrival rates and processing speeds, optimizing memory utilization without requiring excessive memory allocation.

Inventive Principle:
Principle #15Dynamics

2Reliability

If the size of storage rings is increased to prevent data message drops, then the reliability is improved, but the memory footprint increases, degrading VM performance

Engineering Contradiction:
Improvedata message deliveryVSAvoidmemory footprint
Core Design Contradiction:
ReliabilityVSWeight of stationary object

Solution Approach 1:

The patent uses a fixed-size storage ring that is slightly larger than the typical burst capacity, providing partial over-provisioning. This approach prevents data message drops for most scenarios while avoiding the excessive memory allocation that would result from designing for maximum theoretical burst sizes.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements a circular buffer mechanism where older data messages are automatically overwritten by newer arrivals when the storage ring is full. This discarding and recovering approach ensures that the storage ring maintains a sliding window of recent data messages, preventing drops while maintaining a bounded memory footprint.

Inventive Principle:
Principle #34Discarding and recovering

3Weight of stationary object

If a fixed-size storage ring is used, then the memory footprint is controlled, but the throughput decreases during traffic bursts when the storage ring fills up and data messages are dropped

Engineering Contradiction:
Improvememory footprintVSAvoiddata message throughput
Core Design Contradiction:
Weight of stationary objectVSProductivity

Solution Approach 1:

The patent ensures continuous operation of the storage ring by implementing circular buffer techniques where the producer pointer continuously writes new data messages and the consumer pointer continuously retrieves them for processing. This continuous action prevents idle time and maintains high throughput within the fixed memory constraints.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent uses periodic swapping of storage rings between producer and consumer roles. When one storage ring becomes full, the system periodically switches to another ring, allowing the full ring to be processed while the empty ring receives new data messages. This periodic action maintains continuous throughput without requiring excessive memory.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS20250362949A1High throughput ingress datapath for a virtual machine
Publication Date: 2025.11.27 VMWARE INC
  • US20250362949A1 patent drawing
  • US20250362949A1 patent drawing
  • US20250362949A1 patent drawing

AI summary

Some embodiments provide a method of forwarding data messages to a machine that executes on a host computer and has an associated virtual network interface controller (VNIC) also executing on the host computer. The method retrieves data messages from a queue associated with the VNIC and stores these data messages in a first set of buffer data stores associated with the VNIC. When the first buffer set reaches a threshold congestion level, the method stores data messages subsequently retrieved from the VNIC queue in a second set of buffer data stores associated with the VNIC. In some embodiments, a set of one or more processes executing on the machine retrieves the data messages stored in the buffer sets for processing by these processes or other processes.