Virtual USB Manager Latency Hiding via FIFO Buffering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized computing environments, redirecting USB traffic over a network introduces significant latency issues for interrupt transactions, leading to potential data loss and noticeable delays in devices like mice, as conventional remedies require modifications to the virtual USB device driver, which are undesirable.

Innovation Solution

Implementing a virtual USB manager that uses a FIFO buffer to store and manage USB interrupt data packets, allowing for continuous queuing and re-queuing without waiting for the virtual USB device driver to process them, thereby hiding latency and ensuring reliable packet delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If USB traffic is redirected over a network in a virtualized environment, then USB device accessibility is improved, but latency increases significantly

Engineering Contradiction:
ImproveUSB device accessibilityVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent pre-queues USB interrupt data packets in a buffer before they are needed by the virtual USB device driver. By having packets ready in advance and continuously re-queuing them without waiting for driver processing, the system compensates for network transmission delays and ensures low-latency delivery despite USB devices being physically connected to remote clients.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If packets are queued and processed sequentially by the virtual USB device driver, then processing accuracy is improved, but data loss occurs due to latency

Engineering Contradiction:
Improvepacket processing accuracyVSAvoiddata delivery reliability
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent implements continuous queuing and re-queuing of USB interrupt data packets without waiting for the virtual USB device driver to process them. This continuous action ensures that packets are always available for immediate transmission when needed, preventing data loss while maintaining processing accuracy through the buffered queue mechanism.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of time

If conventional remedies modify the virtual USB device driver, then latency is reduced, but device complexity increases

Engineering Contradiction:
ImprovelatencyVSAvoiddriver complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent introduces a USB manager as an intermediary component that handles packet queuing, buffering, and re-queuing operations. This intermediary sits between the physical USB device and the virtual USB device driver, managing latency compensation without requiring modifications to the driver itself, thus reducing overall system complexity while achieving low-latency performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9098431B2USB redirection for interrupt transactions
Publication Date: 2015.08.04 RED HAT INC
  • US9098431B2 patent drawing
  • US9098431B2 patent drawing
  • US9098431B2 patent drawing

AI summary

Methods and systems for conducting a transaction between a virtual USB device driver and a USB device client are provided. A hypervisor of a computer system receives one or more data packets from the client. The hypervisor stores the one or more data packets in a buffer. The hypervisor dequeues a data packet from the buffer. The hypervisor transmits the data packet to the virtual USB device driver.