Virtual Bond for VM Communication via Shared Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional virtualization systems face inefficiencies in packet transmission between virtual machines (VMs) due to reliance on network device pass-through, which leads to packet loss and suboptimal performance during VM migration, as VMs cannot access shared memory devices across different host systems.

Innovation Solution

Implementing a virtual bond mechanism that allows VMs to determine if they are hosted on the same system by checking packet reception via shared memory and network device pass-through, enabling efficient communication by switching to shared memory transmission when possible, thus conserving network bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If network device pass-through is used for packet transmission between VMs, then communication can occur across different host systems, but packet loss increases and performance deteriorates during VM migration

Engineering Contradiction:
Improvecommunication capability across host systemsVSAvoidpacket transmission reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system dynamically switches between two transmission paths (shared memory device and network device pass-through) based on the migration state of VMs. When VMs are stationary and co-hosted, shared memory provides low-latency communication. When VMs migrate to different hosts, the system transitions to network device pass-through to maintain communication capability, thus adapting to changing conditions while maintaining reliability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The hypervisor acts as an intermediary that monitors VM migration states and manages the selection of transmission paths. It detects when VMs are co-hosted and routes traffic through shared memory devices, and when VMs are migrated to different hosts, it switches to network device pass-through, thereby mediating between the two communication modes to ensure continuous reliable communication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If network device pass-through is used for all packet transmissions, then VMs can communicate regardless of host system, but network bandwidth is wasted when VMs are co-hosted on the same system

Engineering Contradiction:
Improvecommunication capability across host systemsVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The system applies different transmission qualities to different communication scenarios: when VMs are co-hosted on the same system, it uses shared memory devices for high-speed local communication; when VMs are on different hosts, it uses network device pass-through for remote communication. This local quality differentiation optimizes bandwidth usage by matching the transmission medium to the spatial relationship between VMs.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically adjusts the transmission path based on real-time migration status. The hypervisor continuously monitors whether source and destination VMs are co-hosted, and switches between shared memory and network device pass-through accordingly, thereby dynamically optimizing network bandwidth consumption while maintaining communication versatility.

Inventive Principle:
Principle #15Dynamics

3Speed

If shared memory device is used for packet transmission between VMs, then transmission speed improves when VMs are co-hosted, but communication fails when VMs are on different host systems

Engineering Contradiction:
Improvepacket transmission speedVSAvoidcommunication capability across host systems
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The system implements a universal communication framework that supports both shared memory transmission and network device pass-through transmission. The hypervisor manages multiple transmission paths and selects the appropriate one based on VM migration state, making the communication system universal enough to handle both co-hosted and migrated VM scenarios while maintaining high speed when possible.

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

Data Source

PatentUS11775328B2Virtual bond for efficient networking of virtual machines
Publication Date: 2023.10.03 RED HAT INC
  • US11775328B2 patent drawing
  • US11775328B2 patent drawing
  • US11775328B2 patent drawing

AI summary

A packet is received by a first virtual machine supported by a host system from a second virtual machine via a shared memory device that is accessible to a plurality of virtual machines supported by the host system. The first virtual machine determines that the second virtual machine is supported by the host system in view of receiving the packet via the shared memory device. Identification information associated with the second virtual machine is stored in a virtual bond data structure, wherein the identification information associated with the second virtual machine being present in the virtual bond data structure causes the first virtual machine to transmit a subsequent packet to the second virtual machine via the shared memory device.