IP Library Granted Patent US 7,975,017
Granted Patent B1
US 7,975,017 · App. 12/393,000 · Granted Jul 5, 2011

Method and system for remote device access in virtual environment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,975,017
App. No.
12/393,000
Granted
Jul 5, 2011
Kind
B1
Abstract

A method, system and computer program product for accessing remote devices is provided. The proposed method allows users to remotely access devices or tools controlled by a VM implemented on a remote server. A user of a client machine can access a remote device controlled by a server or by local client of the server. The server can have a number of Virtual Machines (VMs) implemented on it. Each of the VMs can run a Guest OS that has guest device drivers installed on it. The VM receives the user request and passes on user commands to a device controlled by the guest device driver installed on the Guest OS of the VM.

Claims (43)

1. A method for remote device access, the method comprising:

(a) establishing a network connection between a remote client computer and a server;

(b) starting at least one Virtual Machine (VM) on the server, the VM being supervised by a Virtual Machine Monitor;

(c) activating a Guest Operating System (GOS) in the VM;

(d) installing at least one guest device driver on the GOS for interfacing, over the network connection, and using a Remote Procedure Call (RPC) protocol, to a peripheral remote device that is physically connected to the remote client computer using a the remote client's computer system bus;

(e) connecting the peripheral remote device over the network connection to the server;

(f) activating a dispatcher module on the server, the dispatcher module being configured to access the VM and to manage a configuration of the VM;

(g) sending a control command from the client computer to the dispatcher module;

(h) processing the control command at the dispatcher module and passing it to the guest device driver;

(i) receiving the control command at the guest device driver and accessing the peripheral remote device over the Remote Procedure Call (RPC) protocol, wherein the control command is sent and received jointly with local data flow; and

(j) repeating steps (g)-(i) at least once,

wherein the interface to the remote procedure call protocol is a Host API “C” interface of the client computer communicating with the remote server.

2. The method of claim 1 , where the remote device is any of:

a CD ROM;

an external hard drive;

a sound card;

a video card;

a USB flash drive; and

a USB smart card.

3. The method of claim 1 , wherein a plurality of remote devices is connected to the server.

4. The method of claim 1 , wherein at least one local client computer is connected to the server.

5. The method of claim 4 , wherein at least one device is connected to the local client computer, and wherein the at least one device is controlled by the commands sent from the remote client computer.

6. The method of claim 1 , wherein a third-party guest tool is installed on the GOS.

7. The method of claim 6 , wherein the dispatcher passes the control command to the third party Guest tool.

8. The method of claim 1 , wherein a plurality of the remote clients and a plurality of the local clients are connected to the server, and wherein the remote clients access the devices connected to the local clients.

9. The method of claim 8 , wherein the clients are connected to the server via a protected intelligent channel.

10. A system for remote device access, the system comprising:

a processor;

a memory coupled to the processor; and

a computer code loaded into the memory and executed on the processor for implementing the steps of claim 1 .

11. The method of claim 1 , wherein the control commands are sent from any of:

a GUI interface;

a SOAP interface; and

a Python interface.

12. A system for remote device access, the system comprising:

at least one client computer connected to a server computer over a network;

at least one Virtual Machine Monitor and at least one Virtual Machine activated on the server;

a GOS running in the VM;

at least one guest device driver installed on the GOS for interfacing, over the network connection, and using a Remote Procedure Call (RPC) protocol, to a peripheral remote device that is physically connected to the remote client computer using a the remote client's computer system bus;

the at least one remote device connected to the server over the network;

at least one dispatcher module implemented on the server, wherein the dispatcher module passes control commands sent from the client computer on to the VM and manages a configuration of the VM, and

wherein the control command is received at the guest device driver and the remote device is accessed over the Remote Procedure Call (RPC) protocol, wherein the control command is sent and received jointly with local data flow, and

wherein the interface to the remote procedure call protocol is a Host API “C” interface of the client computer communicating with the remote server.

Assignments (3)
SECURITY INTEREST IN TRADEMARK, PATENT, AND COPYRIGHT RIGHTS Recorded Dec 22, 2022
From: VIRTUOZZO INTERNATIONAL GMBH; ONAPP LIMITED
To: WILMINGTON TRUST (LONDON) LIMITED
Reel/Frame 062206/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: PARALLELS IP HOLDINGS GMBH
To: VIRTUOZZO INTERNATIONAL GMBH
Reel/Frame 045179/0537 →
RELEASE OF SECURITY INTEREST Recorded Dec 14, 2015
From: SILICON VALLEY BANK
To: PARALLELS HOLDINGS LTD. (F/K/A SWSOFT HOLDINGS LTD.)
Reel/Frame 037289/0685 →