Simulated USB Device Proxy for Remote Server Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote systems, such as Terminal Service and Virtual Desktop Infrastructure, face challenges in enabling USB device functionality on remote servers due to the inability of server-side applications to directly communicate with client-side USB devices, requiring high-level redirection which restricts the installation of locally designed applications and is impractical in enterprise environments where the server is not readily accessible.

Innovation Solution

The creation of a simulated USB device at the remote server, which acts as a proxy for the client-side USB device, allowing server-side applications to send requests to the simulated device for processing and forwarding to the actual device, using a globally unique identifier and generic USB device driver to facilitate communication and redirect isochronous requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If high-level redirection is used to enable USB device functionality on remote servers, then server-side applications can interface with USB devices through client-side drivers, but locally designed applications cannot access low-level interfaces of USB devices

Engineering Contradiction:
ImproveUSB device accessibilityVSAvoidredirection architecture
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a simulated USB device at the remote server that copies the essential characteristics and interfaces of the actual USB device connected to the client. This simulated device includes a device driver and interface that mirror the physical device, allowing server-side applications to interact with it as if directly connected. The simulation enables low-level interface access without requiring physical connection or complex high-level redirection architecture.

Inventive Principle:
Principle #26Copying

2Ease of operation

If USB devices are connected directly to remote servers, then server-side applications can access devices directly, but this is not practical in enterprise environments where servers are not readily accessible

Engineering Contradiction:
Improvedevice connectionVSAvoidremote access capability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces a simulated USB device as an intermediary between the actual USB device connected to the client and the server-side applications. The simulated device acts as a proxy that receives requests from the server, processes them locally, and forwards commands to the physical device. This intermediary enables indirect access to USB devices in remote server environments without requiring physical server accessibility or direct device connection to the server.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If USB device drivers are installed on client systems, then local applications can control USB devices, but replacing client computer systems becomes problematic after installations

Engineering Contradiction:
Improveclient system configurationVSAvoidclient system replacement
Core Design Contradiction:
Ease of manufactureVSEase of repair

Solution Approach 1:

The patent creates a simulated USB device with its own device driver installed on the remote server, copying the functionality needed to interface with USB devices. This eliminates the requirement for USB device drivers to be installed on client systems. When clients connect to the remote server, they access USB devices through the simulated device on the server, which handles all driver-level communications. This approach simplifies client system replacement since no USB-specific driver installations are required on client machines.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10331501B2USB device redirection for remote systems
Publication Date: 2019.06.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10331501B2 patent drawing
  • US10331501B2 patent drawing
  • US10331501B2 patent drawing

AI summary

The present disclosure provides systems and method for redirecting control of a client side connected USB device from the client to the server in a remote system. Specifically, the present disclosure creates a simulated USB device at the server. The simulated USB device is treated as a proxy for a redirected USB device at the client. The client side redirected USB device is not treated as the USB device but, rather, acts as a pass through to facilitate communication between requesting applications and the client connected device. The simulated USB device allows an application to send requests for a local device to the simulated USB device at the server. The simulated USB device then processes the requests and forwards the requests to the local device connected to the client.