Tuesday, May 01, 2012

Connect to My Physical Desktop PC

One of the big sales pitches for Desktop Virtualization is the ability of users to connect to their computers (or environment) from anywhere and from any device.  I see customers putting in hosted virtual desktop infrastructures just so they can run Outlook on an iPad.  I see XenApp deployed just so users can work from home without using a VPN. 

It works, but it's overkill.  Like gopher hunting with an AK-47.

There are simpler solutions out there.  And really users' just want to connect to their PC anyway. 

You can (still) go buy PC Anywhere, or you can enable remote desktop services.  You can even grab a copy of VNC.  Problem is none of these really address things like firewalls, and for users to use them you have to pretty much put every PC on public internet.

You can use LogMeIn, or GoToMyPC, which are great consumer level solutions that take care of the firewall issue but really don't provide much in terms of corporate control of data and access.

Desktop Virtualization solutions typically address data control and movement, firewalls, and corporate control, but often with a huge infrastructure investment (Servers, SANs, SSD Disk, Hypervisors...).  And hey.. what if I just did a desktop refresh and have lots of powerful modern hardware sitting under user's desks?

What if we could offer a solution with the control of Hosted Desktop Virt, but using the existing desktops people already have?  If you could connect to your own desktop from your iPad, but IT could still ensure governance and control over data movement?

 Well.. you can .. mostly.

With Citrix XenDesktop you can (today) make all this work if your end users are running Windows XP.   You build out your Access Gateway, Web Interface, and Delivery Controller infrastructure just like you would for a typical HVD deployment, but instead of using virtual machines for desktops you install the virtual desktop agent on the user's existing physical desktop.  A little data collection to assist with maping desktops to users and pretty quick a user can launch a session on their desktop from any device that supports a Citrix Receiver. 

Reality is that this can be done with as few as two VM's if you really want to (one gateway appliance and one Delivery Controller).  As a benefit you get all the features and mobility provided by XenDesktop, and a killer remote user experience.  And by the way this is not new ... this has worked since at least XenDesktop 3.

Hold on... Windows XP?

Yes... Windows 7 (and Vista for that matter) introduce a problem.  It's not that it can't work, but I'm afraid I have to add some caveats which aren't issues for Windows XP.

Windows Vista introduced a new display driver model (WDDM vs XPDM) which sent our Desktop Virtualization vendors into a bit of a tailspin.  The software used to capture the video display (to send it to the remote system) installs on windows a video driver, and windows does not support switching between drivers of different models.    Think of your higher end laptops which have both a low power integrated video chipset and a high performance video chip and dynamically switch between them based on the situation at hand.  The desktop agent does the same kinda thing based on if a user is connected to the machine remotely or not. 

So in order to support switching to and from an XPDM video driver for the Desktop agent, an XPDM video driver must be used to support the local console.  Turns out the windows standard VGA driver is such an entity.  If you are able to live with the single-monitor with a display size of 1600x1200 or less, then you can just install the Virtual Desktop Agent on the Windows 7 PC, and use the standard Windows VGA driver for console and all of this works.  Victory!  And by the way, the virtual desktop agent will switch the video drivers for you so all you really have to do is install the agent and go.

Oh... but you're like me, have two monitors, and they're wide-screen 24-inchers?  Well... maybe...

Citrix offers the HDX-3D versions of the virtual desktop agent. This desktop agent is designed for use on systems where 3D rendering is a requirement, but users still want the mobility and capability of connecting from remote systems.  Generally we're talking blade PC's here, but the agent doesn't really care.  The important thing is that this agent is a WDDM driver, and will co-exist with other WDDM video drivers.

Unfortunately the HDX-3D driver does have a fairly narrow official compatibility list.  That doesn't mean it won't work with other stuff, but doesn't mean it will either.  Note that most of the hardware on the list is nVidia, with a handful of ATI chipsets (but none oft the ATI's support dual monitors). 

So again, if you've got supported hardware you're golden.  Enjoy running 3D Studio Max on that iPad at the golf course!

If it's unsupported ...well your mileage will vary.  Some examples:
  • On my Laptop with Intel and FireGL video it works ok as long as I don't do anything strange like try to change display resolution remotely, or attach  a second monitor to the laptop.   
  • At a customer recently with a dual-video card ATI setup it worked ok, but the local (Physcial) console didn't blank when connected so someone could physically watch everything that happened in the session, and he couldn't get video on a Xenith client - but Windows and Mac receivers worked fine.
  • Another customer with dual monitors found that remotely it worked ok, but that if the session was started from a remote device it wouldn't resize properly when it returned to the physical console.
  • For another customer .. well, it just worked perfectly...
So, for users with simpler physical systems this is an easy win for relatively little infrastructure cost and a whole lot of capability.   For higher end users, some additional thought or effort might be required.  That said a new video card is a whole lot cheaper than a nice SSD SAN.

If you haven't tried this, you really should.



 

No comments: