Remote USB for virtual machines

Virtualization of servers results in the fact that server are no longer depeded on the hardware on which it runs. This is one of the key selling points of virtualization, but it also results in the fact that you can’t connect external hardware devices to your virtual machine directly. 

Especially for USB devices this can be a problem. There are still application vendors out there that have implemented some sort of USB dongle for licensing their software. To make it possible to connect your USB dongle to a virtual machines an implementation is needed of remote USB to connect the USB devices to your virtual machine.

The following picture gives a graphical representation of how this works.  

Click to enlarge

The concept of remote USB is based on the client-server model. All USB devices will be centralized to one USB remote server. Through a software USB device driver (=client) in the virtual machine a connection is made with this USB remote server.

Through management on the USB remote server, USB devices can be allocated to a particular virtual machine. This allows virtual machines to make use of USB devices without connecting that USB device to the hardware on which it runs. All USB data is now send over the network from the virtual machine to the remote USB server and vice versa.

There are several vendors on the market with a remote USB solution. All have the same result : giving access to USB devices over the network. Only difference is that some have software based solution while others have a hardware based solution.

When using a software based solution a server is needed that acts as the remote USB host. The server must have enough USB slots available to connect all the USB devices. The hardware based solution is a network device which act as the end point in the remote USB solution. All USB devices will be connected to this network device.

Examples :

Note : Remote USB isn’t needed for VDI implementations. Most VDI vendors have USB redirection incorporated into their solution. In case you are using thin clients, USB redirection can also be implemented on the thin client policy server.