Add a Comment Now - We Want to Hear From You
Network World’s Jim Duffy’s latest article, “WAN critical to virtualization’s payoff” has me in knots.
It’s well known that by virtualizing servers, you can consolidate them more easily in a single data center; but in order to maintain performance, you need high performing, low-latency WAN connections. We’ve written about this before, and it’s only more relevant with VMWare announcing on Feb. 3rd that they are providing an Open Source Virtual Desktop client.
But Duffy’s article seems to be focusing on the idea of virtualizing the desktop on backend servers, rather than virtualizing backend servers. The rest of the article denotes all the challenges of doing so.
Now, there are benefits to virtualizing desktops – key among them the idea that software problems can simply be solved by replacing a user’s virtual desktop with a separate virtual desktop – instead of dispatching someone from IT down to the user’s physical location. This is a laudable goal.
However, virtual desktops are prone to poor performance over the WAN, because, like video or VoIP, it’s an interactive, latency-sensitive service. Specifically, let’s look at mouse input.
When you operate the mouse on your computer – feel free to do so right now, (unless you’re reading this on an iPhone, in which case, carry on being smug) - it may seem like an instantaneous reaction. You move and the mouse moves with you. This is not true. It is an illusion. The output, however, comes so quickly after the input that the human body can’t tell the difference. This is because the input has to go from the mouse to the computer’s IO port (usually USB), get processed by the CPU, and painted on the screen by the GPU out to the monitor.
However, in a virtualized desktop, the input goes through the user’s IO port, gets processed by the CPU, and then pumped out to the Ethernet connection to the WAN, is processed by the CPU on the server, is output back over the WAN, which is then processed by the CPU of the user and painted onto the screen via the GPU.
Point is, you’re adding an entire round trip across the WAN to the process. So even if there’s no congestion, if the round-trip latency due to distance between the user and the data center is 100ms, you’re adding a tenth-of-a-second delay. That will probably be noticeable. And there are other sources of delay on the WAN.
This does not even take into consideration the data involved in pushing video data out to the remote desktop. Long story short, virtualized desktops are probably a good idea on the low-latency connections that you’d find on the LAN, but trying to operate them over the WAN probably won’t work that well. Is the benefit of virtualizing the desktop (or of consolidating virtual desktops) so great that you’re willing to suffer through poor end-user experience?
Which means that the premise of the entire article frustrates me. Yes, it’s obvious that you need to have low-latency performance with your WAN to provide for virtualization – and good performance is a good thing; but at some point you are going to hit the law of diminishing returns. If you’ve been monitoring your network performance and have the capacity to try to serve remote users virtual desktops in under 150ms, feel free to give it a try, but ultimately, will virtualizing the desktop over the WAN provide the best benefits as a whole?
What may bear more fruit is to have applications virtualized and sent over the WAN onto existing, local desktops, much like XWindows apps back-in-the-day.

Comments
I think you both (well you and Mr. Duffy) hit on a very important point .. virtualization cannot be confined to the server. You must be able to virtualize all of your assets ... cpu, storage, network. In this 'cute' video vignette ... I talk about how bandwidth can be virtualized - http://www.digitalmediagalaxy.com/2009/02/04/optimize-your-bandwidth/
That said .. most network optimization technology operates at a low level in the network level such that the resources cannot be virtualized and applied where they need to be - at the application / person / department / functional area.
Posted by: Tony Lapolito | February 14, 2009 11:49 AM