Request Acceleration Module for Virtual Machine Storage I/O

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional unified storage architectures using virtual machines as NAS service carriers result in lengthy I/O paths and significant overhead due to protocol encapsulation and analysis, leading to low performance.

Innovation Solution

A request processing method and apparatus that employs a request acceleration module between the virtual machine and back-end storage, utilizing shared memory and request queue polling to reduce memory copies and switches between user and kernel modes, thereby shortening the I/O path and reducing processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a virtual machine is used as a NAS service carrier to connect back-end storage, then the system provides unified storage service, but the I/O path becomes lengthy and processing overhead increases

Engineering Contradiction:
Improveunified storage service capabilityVSAvoidI/O path length
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A request acceleration module is introduced as an intermediary component between the virtual machine and back-end storage. This module includes a request queue and processing unit that accelerates I/O operations by reducing the number of memory copies and mode switches, thereby shortening the effective I/O path while maintaining the virtual machine's unified storage service capability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The I/O processing function is segmented into distinct components: the virtual machine generates requests, the request acceleration module processes them through a dedicated request queue, and the back-end storage executes the operations. This segmentation allows each component to be optimized independently, reducing overall processing overhead

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If protocol encapsulation and analysis are performed in the traditional NAS architecture, then data transmission is enabled, but significant processing overhead is incurred

Engineering Contradiction:
Improvedata transmission capabilityVSAvoidprocessing overhead
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The request acceleration module extracts and handles the protocol processing functions separately from the main I/O path. By dedicating specific processing units within the acceleration module to handle encapsulation and analysis, the overhead is reduced as these operations are performed more efficiently without blocking the main data transmission flow

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If multiple memory copies and mode switches are performed in the traditional architecture, then data processing is completed, but performance is reduced

Engineering Contradiction:
Improvedata processing completionVSAvoidmemory copy time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The request acceleration module performs preliminary processing of I/O requests before they reach the back-end storage. By pre-processing operations such as protocol encapsulation, validation, and queue management in the acceleration module, the actual data transfer and storage operations can proceed more quickly with fewer repeated memory copies and mode switches

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12282797B1Request processing method and apparatus, and device and nonvolatile readable storage medium
Publication Date: 2025.04.22 INSPUR SUZHOU INTELLIGENT TECH CO LTD
  • US12282797B1 patent drawing
  • US12282797B1 patent drawing
  • US12282797B1 patent drawing

AI summary

The present application relates to the technical field of storage. Disclosed are a request processing method and apparatus, and a device and a non-volatile readable storage medium, which are applied to a request acceleration module for connecting a virtual machine and a back-end storage. The method includes: polling a request queue in shared memory, wherein a virtual machine and a request acceleration module, which are used for providing a unified storage service, both perform a read-write operation on the shared memory; and when it is polled that there is a target request, which is initiated within the virtual machine, in the request queue, processing the target request in the manner of calling a corresponding processing function.