RDMA Virtual Address Space Offload via SmartNIC

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current RDMA technologies for virtual machines require physically routable address spaces, leading to increased CPU usage and latency in data centers, as they necessitate network traffic to flow through network virtual functions, which can hinder high-throughput and low-latency networking.

Innovation Solution

Implementing smartNICs with FPGAs that offload network tasks, enabling RDMA between virtual machines by encapsulating virtual packets into physically routable packets, thereby bypassing synthetic NICs and allowing direct memory access without CPU intervention, using Generic Flow Tables and virtual filtering platforms to manage packet processing and routing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If RDMA traffic flows through network virtual functions in virtualized environments, then virtual machines can communicate over virtual networks, but CPU usage increases and latency increases

Engineering Contradiction:
Improvevirtual network communication capabilityVSAvoidnetwork latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent extracts the RDMA packet processing function from the software-based network virtual function path and implements it directly in the hardware smartNIC. This allows RDMA packets to bypass the synthetic NIC and virtual switch software stack, eliminating CPU intervention and reducing latency while maintaining virtual network communication capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary mechanism (the smartNIC with virtualization-aware RDMA implementation) that enables direct hardware-level packet routing between virtual machines while maintaining the abstraction of virtual networks. This intermediary allows packets to flow directly through hardware without being processed by the virtual switch software, resolving the contradiction between virtual network adaptability and low latency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If RDMA traffic flows through network virtual functions, then virtual machines can access virtual networks, but processing power is consumed from CPU cores

Engineering Contradiction:
Improvevirtual network accessVSAvoidCPU processing power
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the RDMA packet handling function from the CPU-based network virtual function processing and relocates it to the smartNIC hardware. This extraction eliminates the need for CPU cores to process RDMA packets, freeing up processing power for virtual machine workloads while maintaining virtual network access capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The smartNIC implements self-service by autonomously handling RDMA packet routing and processing in hardware without requiring CPU intervention. The device uses virtualization-aware logic embedded in the smartNIC to directly route packets between virtual machines, enabling virtual network access while conserving CPU resources.

Inventive Principle:
Principle #25Self-service

3Productivity

If physically routable address spaces are used for RDMA, then direct memory access can be implemented, but device complexity increases due to additional network interfaces

Engineering Contradiction:
Improvedata transfer throughputVSAvoidnetwork interface configuration
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements multi-functionality in the smartNIC by enabling it to handle both traditional network traffic through virtual switches and direct RDMA traffic simultaneously. The smartNIC uses virtualization-aware logic to automatically route packets appropriately, providing high-speed direct memory access while maintaining compatibility with existing virtual network infrastructure without requiring additional physical network interfaces.

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

Data Source

PatentUS11907749B2RDMA with virtual address space
Publication Date: 2024.02.20 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11907749B2 patent drawing
  • US11907749B2 patent drawing
  • US11907749B2 patent drawing

AI summary

Techniques are disclosed for implementing direct memory access in a virtualized computing environment. A memory access policy of the virtualized computing environment is applied to a direct memory access connection request received from a first virtual machine via an exception path. The request is flagged to indicate that the request has been processed and the request is forwarded to a network interface device configured to execute offloaded network functions for one or more virtual machines. A memory access policy of the virtualized computing environment is applied to a direct memory access connection reply received from a second virtual machine on the exception path. The reply is flagged to indicate that the reply has been processed and the reply is forwarded to the network interface device. A direct memory access connection is established between first and second virtual machines in accordance with the request.