Block-Level Storage I/O Redirection to Reduce Remote Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtual desktop infrastructure (VDI) environments, storage input/output (I/O) operations between a remote device and a client device result in significant network traffic and latency due to the conversion of I/O requests into multiple USB request blocks (URBs), leading to poor performance, especially in networks with high latency.

Innovation Solution

Implementing block-level storage I/O redirection by creating a virtual storage device on the remote device that corresponds to a physical storage device on the client, allowing direct block-level I/O requests and responses without the need for USB-level conversions, thereby reducing network traffic and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If storage I/O requests are converted into USB request blocks (URBs) for transmission between remote device and client device, then storage I/O operations can be performed across network, but network traffic increases and latency increases

Engineering Contradiction:
Improvestorage I/O operation capabilityVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The invention segments the storage I/O request at the block level rather than breaking it down into multiple USB request blocks. By maintaining block-level granularity throughout the network transmission, the system reduces the number of separate URB conversions and network round trips, thereby reducing latency while preserving storage I/O capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention introduces a virtual storage device as an intermediary layer between the remote device and the physical storage device on the client device. This virtual storage device abstracts the block-level I/O operations, allowing them to be transmitted over the network without being converted into multiple USB request blocks, thus reducing latency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If storage I/O requests are broken up into separate URB requests for each 64 KB of data, then USB interface can process data, but network traffic becomes substantial and performance decreases

Engineering Contradiction:
Improvedata transfer capabilityVSAvoidnetwork traffic volume
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The invention merges multiple USB request blocks into a single block-level I/O request that is transmitted over the network. By consolidating the data transfer at the block level rather than sending multiple separate URB requests for each 64 KB segment, the system significantly reduces network traffic volume while maintaining data transfer capability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The invention creates a virtual storage device that copies the block-level interface rather than the USB request block interface. This virtual device presents a block-level interface to the remote device, allowing data to be transferred in larger, more efficient blocks over the network, thereby reducing total network traffic while preserving productivity.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If USB-level I/O redirection is used in VDI environment, then storage device can be accessed remotely, but performance is poor due to multiple conversions and network traffic

Engineering Contradiction:
Improveremote storage access capabilityVSAvoidstorage I/O performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The invention inverts the traditional USB-level redirection approach by implementing block-level redirection. Instead of converting block-level I/O requests into multiple USB request blocks for remote transmission, the system maintains block-level granularity throughout the network transmission, thereby improving storage I/O performance while preserving remote access capability.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The invention changes the parameter of I/O request granularity from USB request block level to block level. By operating at the block level rather than USB request block level, the system reduces the number of conversions and network round trips, thereby improving storage I/O performance while maintaining the ability to access storage devices remotely in VDI environments.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12373102B2Storage device I/O performance in remote computing environments
Publication Date: 2025.07.29 OMNISSA LLC
  • US12373102B2 patent drawing
  • US12373102B2 patent drawing
  • US12373102B2 patent drawing

AI summary

The disclosure provides techniques for storage device input/output (I/O) performance improvement in a remote computing environment. Embodiments include creating, on a remote device that is remote from a client device, a virtual storage device corresponding to a physical storage device that is located on the client device. Embodiments include receiving, by a driver on the remote device, a request from an application on the remote device to perform an input or output operation with respect to the virtual storage device. Embodiments include sending, by the remote device, a block-level input or output operation to the client device based on the request. Embodiments include receiving, by the remote device, a result of the block-level input or output operation from the client device. Embodiments include providing, by the driver on the remote device, to the application, a response to the request based on the result of the block-level input or output operation.