Citrix's XenDesktop 4 was the most accommodating VDI platform tested, likely owing to its origins as a hybrid of Linux and Citrix. While it's not a lightweight platform, we found it to be the most flexible. Microsoft recommends XenDesktop for its own Microsoft Standard VDI and Premium VDI suite client-side components. XenDesktop runs on Microsoft Hyper-V, VMWare's ESX/vSphere platforms, as well as XenServer.
XenDesktop requires two Windows-based server virtual machines on the administrative side. These VMs cover provisioning and administration of desktop deliveries as a connection broker.
On the client side, XenDesktop supports most Windows clients, MacOS, Linux, plus various cell phones and hardware terminals.
The initial 'tax' in terms of hosted hardware is high. Citrix recommends using two physical servers at minimum, one to host the VMs of the server, and the other to house the desktops, which are standard virtual machines. That said, we used the two servers for most of the other tests, too.
We found that making XenDesktop work was simple if you read and follow the supplied guidelines studiously. XenDesktop requires Microsoft's Active Directory with DHCP and DNS/DDNS services running. XenDesktop host services use the Microsoft .Net Framework SP1 and Microsoft SQL Server 2005.
Although the large number of provisioning options initially shocked us, we found that provisioning revolves around creating generic XP versions, then using the generic versions as the basis for subsequent groups.
With XenDesktop we could create two kinds of desktops: pooled desktops, which are non-persistent and are returned to the pool or simply reissued for subsequent use and assigned where the first user to connect to that desktop 'sticks' to it, or where a user is specifically assigned to a VM. XenDesktop automatically creates pooled desktops via the XenDesktop Setup Wizard. Assigned desktops are created manually.
The XenDesktop Delivery Services Console unfortunately doesn't use templates to create new hosted VMs for use by external clients. Therein lies the drudgery, as unless VMs are the pooled variety, they have to be built and assigned one at a time. If you need thousands, prepare for a wait.
Reconfigurations are difficult, since there aren't options in the XenDesktop Setup Wizard to change a desktop pool once created. Besides using the XenDesktop Setup Wizard, pools of VMs can also be built through the Delivery Services console, but must already exist (or be created manually), then assigned to the pool.
VMs in pooled environments use a PxE boot (remote program load) when they start from one of the Desktop Delivery server VMs. VMs that are assigned use storage allocated when they're created.
Clients logon through a browser that's pointed to the Desktop Provisioning server's Web site. Users supply credentials, whose security is a function of Active Directory via the Citrix Online 'plug-in.'
When we tested responsiveness, XenDesktop, with Citrix's ICA protocol, was consistently fast with both Windows and Mac clients. VMware View 4, with its PCoIP protocol, was unbeatable in our tests with Windows clients, but VMware uses the older RDP protocol on Mac clients and is significantly slower.