Everyday Virtualization

Blog archive

Peripheral Virtualization over Ethernet

A post by Vladan Seget got me thinking about using virtual machines with various peripheral devices. Systems that require serial, parallel or USB connectivity are in many cases not virtualization candidates. System administrators can utilize a number of options to virtualize peripheral I/O.

For serial port connections, RS-232, RS-422 and RS-485 devices are by no means common but still are in place for line-of-business solutions that may interface to non-computer systems. A number of products are available for these applications. I have used both the Digi PortServer and the Comtrol DeviceMaster series of products. Both applications are similar in that the devices (serial ports) are extended to the Ethernet network via a special driver provided by Digi or Comtrol. They have management software so you can configure the ports to run in RS-232, RS-422 or RS-485 serial emulation mode. Various products support various levels of serial modes. Some are RS-232-only, while others will support all three modes.

For USB peripherals, the de facto product is the Digi Anywhere USB Ethernet USB hub. Like the serial port products, this device will extend USB ports to a server over the Ethernet network. Digi AnywhereUSB now also couples RS-232 serial ports on the same device as USB ports, which is a nice feature.

In both situations, using virtualized peripheral I/O comes with a couple of considerations. If the server (assuming Windows) was converted from a physical machine that had serial or USB ports, the virtual driver will install very easily. For a new-build virtual machine that has never had a USB or serial port installed, it takes a manual process to add the base serial or USB driver to Windows to enable the enhanced driver to work correctly.

It is important to note that virtualized peripheral I/O isn't going to be as fast as the directly attached alternative, so make sure the application in question can function correctly with these devices in use.

For parallel port applications, I'm not aware of any product that will extend a parallel port over the Ethernet network, though they may exist. I've had to provision USB and serial ports to virtual machines, but not yet a parallel port.

Have you ever had to utilize peripheral I/O for virtual machines? Share your comments here.

Posted by Rick Vanover on 05/13/2010 at 2:27 PM


Reader Comments:

Fri, Jun 11, 2010 Craig Edmonton

Rick: My post was not to say that ALP (or any other protocol for that matter) is an issue for us with USB redirection but only to say that from the customer experience point of view USB redirection (on a thin client) is not what they expect when compared to the traditional desktop they are giving up so we are facing push back for thin client adoption from our user community as a result. Overall I am happy with the Sunray and how the USB redirection works but when dealing with end users their perception is our reality (as we sell the service) so this is why we have begun to default USB (and serial) redirection to off. It gives us a way to lead the conversation with our clients if they need USB redirection so they are prepared for the differences the first time they plug in a USB device.

Fri, May 14, 2010 Rick Vanover http://rickatron.us

Craig: Interesting observation that the ALP (in use with Sun Ray) is a little slow on device redirection.

To be fair, all USB devices will be a little slow. Serial devices will probably be marginally better due to the small amount of data being transferred.

Fri, May 14, 2010 Craig Edmonton

We're doing VDI using Sun products so that means we use Sunray's. We have USB redirection working and it's quite a good solution, very stable and such but our experience is that the clients do not like it becuase it is slow. There's no getting around that becuae even if their USB device works it does not "feel" like a USB device plugged into a PC. As a result we have begun to disable serial and USB support for most Sunray clients unless there's a very specific application requirement for it.

Thu, May 13, 2010 Peter Saskatoon

I was able to P2V a machine requiring a USB dongle very easily with AnywhereUSB. But I still have a couple barely idle machines that use an analog phone card that I would love to convert - I wish there were another product to handle that 'cuz in every other sense those servers are ideal candidates for virtualization.

Thu, May 13, 2010 James Kilby Liverpool

Yes they all worked eventually fine eventually. Luckily i have never had to do a parallel port either!!!

Thu, May 13, 2010 Rick Vanover http://rickatron.us

James: Did it all go well with those requirements? Sounds like it did.

Thu, May 13, 2010 James Kilby Liverpool

I have been involved in several deployments for various clients that have required peripheral i/o for virtual machines. The first one was for a callcentre where a lot of the outputs from the telephone switch were serial. There security (door access control) software was built to check for a licence key in the form of a usb key. There have been a few others

Add Your Comment:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above