Virtual Bus Driver IRP State Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Virtual Desktop Infrastructure (VDI) providers face difficulties in redirecting USB devices due to issues with IRP cancellation in high-latency networks, leading to potential system instability and crashes, which discourages the redirection of time-sensitive devices like COM/serial port devices and NFC readers.

Innovation Solution

Implementing a state-based I/O management system using a virtual bus driver that employs containers to manage the state of IRPs, preventing IRPs from being completed twice by transitioning containers to an uninitialized state upon cancellation requests, thus ensuring proper system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If device redirection is implemented in high-latency networks, then device accessibility is improved, but system stability deteriorates due to IRP cancellation issues

Engineering Contradiction:
Improvedevice accessibilityVSAvoidsystem stability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies preliminary action by transitioning the container to a shared state before the IRP is actually completed on the client side. This anticipatory state transition ensures that when the IRP completion notification arrives later (after high latency), the server is already prepared to either complete or discard the IRP based on the current state, preventing double completion and maintaining system stability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by creating a state machine with multiple states (initialized, shared, completed, uninitialized) that dynamically transitions based on IRP lifecycle events. This dynamic state management allows the system to adapt to the unpredictable timing of IRP completions in high-latency networks, resolving the contradiction between maintaining accessibility and ensuring stability.

Inventive Principle:
Principle #15Dynamics

2Productivity

If IRP cancellation is allowed in device redirection, then responsiveness to server-side requests is improved, but system stability deteriorates due to potential double completion

Engineering Contradiction:
ImproveresponsivenessVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by transitioning the container to an uninitialized state upon receiving a server-side cancellation request, before the IRP completion notification arrives from the client. This preliminary state change prevents the harmful double completion while allowing the system to remain responsive to cancellation requests.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The container acts as an intermediary between the IRP cancellation request and the IRP completion process. By introducing this intermediate state management layer, the system can safely handle cancellation requests without directly interfering with the IRP completion mechanism, thus maintaining both responsiveness and stability.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If state management is implemented to prevent double completion, then system stability is improved, but device complexity increases

Engineering Contradiction:
Improvesystem stabilityVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the IRP management process into distinct state phases (initialized, shared, completed, uninitialized). Each state has clearly defined entry and exit conditions, which simplifies the management logic within each state while providing comprehensive coverage of all possible IRP lifecycle scenarios, thus improving stability without excessive complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses parameter changes by transitioning the container state between discrete values based on IRP events. This parameter-based state management provides a simple yet effective mechanism for tracking IRP lifecycle without requiring complex data structures or management logic, resolving the contradiction between stability and complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10691630B2State-based IRP management for redirected device
Publication Date: 2020.06.23 DELL MARKETING CORP
  • US10691630B2 patent drawing
  • US10691630B2 patent drawing
  • US10691630B2 patent drawing

AI summary

State-based I/O management is provided. A virtual bus driver of a virtual desktop infrastructure can employ containers to manage the state of an IRP that pertains to a redirected device. When an IRP that has been shared to a client terminal is cancelled, the virtual bus driver can update the state of a container associated with the IRP to prevent the IRP from being completed twice. In this way, devices for which IRPs are frequently cancelled can be redirected without concern that a cancelled IRP may result in improper system performance or a crash.