Virtual Machine Bandwidth Control via Software Receive Rings

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems lack effective methods to control and manage bandwidth consumption by virtual machines, leading to potential bottlenecks and inefficiencies in network traffic processing.

Innovation Solution

The implementation of a system that includes a network interface card with hardware receive rings and a software receive ring, where packets are classified and directed to hardware receive rings based on classification, and then sent to software receive rings to control bandwidth consumption by virtual machines through adjusting the operating mode of hardware receive rings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If packets are sent directly from hardware receive rings to virtual network interface cards without software receive rings, then network traffic processing speed is improved, but bandwidth control for virtual machines becomes difficult

Engineering Contradiction:
Improvenetwork traffic processing speedVSAvoidbandwidth control capability
Core Design Contradiction:
SpeedVSEase of operation

Solution Approach 1:

The patent introduces a software receive ring as an intermediary component between the hardware receive ring and the virtual network interface card. This software receive ring acts as a mediator that enables both high-speed packet processing (by maintaining direct hardware interaction) and precise bandwidth control (by providing a software layer for monitoring and regulating traffic). The software receive ring receives packets from hardware and forwards them to VNICs while enforcing bandwidth policies.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If software receive rings are introduced between hardware receive rings and virtual network interface cards, then bandwidth control is improved, but system complexity increases

Engineering Contradiction:
Improvebandwidth control capabilityVSAvoidsystem structure complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The software receive ring is designed to perform multiple functions within a single component: it acts as a packet buffer, a bandwidth enforcement mechanism, a traffic classifier, and a coordinator between hardware and virtualized network interfaces. By consolidating these functions into one universal component, the patent avoids the need for multiple separate systems, thereby limiting the increase in overall system complexity while achieving comprehensive bandwidth control.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If hardware receive rings operate in interrupt mode for all packets, then packet processing responsiveness is improved, but bandwidth consumption by virtual machines cannot be limited

Engineering Contradiction:
Improvepacket processing responsivenessVSAvoidbandwidth consumption control
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements dynamic operation mode switching for hardware receive rings, allowing them to transition between interrupt mode and polling mode based on current system conditions and bandwidth requirements. This dynamic adaptability enables the system to maintain high responsiveness when needed while imposing bandwidth limits by switching to polling mode under certain conditions, thus resolving the contradiction between responsiveness and bandwidth control.

Inventive Principle:
Principle #15Dynamics

4Ease of operation

If bandwidth control mechanisms are implemented at the software layer, then bandwidth management is improved, but processing overhead increases

Engineering Contradiction:
Improvebandwidth management capabilityVSAvoidprocessing overhead
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The software receive ring performs preliminary actions by pre-configuring bandwidth policies, packet classification rules, and transmission parameters before actual packet processing occurs. By establishing these control mechanisms in advance, the system minimizes the processing overhead during actual packet transmission, as the heavy lifting of decision-making and parameter setting has already been completed beforehand.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7613132B2Method and system for controlling virtual machine bandwidth
Publication Date: 2009.11.03 ORACLE AMERICAN INC
  • US7613132B2 patent drawing
  • US7613132B2 patent drawing
  • US7613132B2 patent drawing

AI summary

A method of controlling bandwidth including receiving and classifying a packet, sending the packet to a hardware receive ring based on a classification of the packet, and sending, in accordance with an operating mode, the packet to a software receive ring, sending the packet from the software receive ring to a virtual network interface card, where the virtual network interface card is associated with a virtual machine, where the operating mode is adjusted to control the bandwidth consumed by the virtual machine.