Seamless Remote Apps Reloaded
What a coincidence! While I was working on the draft version of a slide deck Nico Luedemann (@NicoLuedemann) and I want to use during our “Microsoft RemoteApp versus Citrix Published Applications” sessions at Citrix Synergy in Anaheim and BriForum in London, VMware made a spectacular announcement. They said they will include access to Microsoft Remote Desktop Session Host and published applications in the upcoming VMware Horizon version 6, using Teradici’s PCoIP protocol. It was only an announcement like many others before, but this one certainly generated a substantial buzz in the VDI and desktop remoting market space. For details, check out the following articles published by Brian Madden (BrianMadden.com), Warren Ponder and Pat Lee (VMware), Kit Colbert (VMware), Rakesh Narasimhan (Citrix) and Gunnar Berger (Gartner). Now let me take a step back and think out loud what this means when looking at it from a technical perspective.
First of all, what exactly is a published application or a seamless remote application? It’s a remoting technology that allows access to individual applications running in “seamless” and resizable windows on the end user’s local computer or mobile device. Such a Citrix Published Application or Microsoft RemoteApp program appears as if it was running on the client computer without a remote desktop surrounding it. For a user, a seamless remote application only feels natural when it’s playing nicely with the local window or desktop manager. This includes integration into taskbars, notification areas, device-specific user interaction principles and all sorts of application launchers – which makes the development of the associated client component not an easy task. Ideally, a user should not be able to find any differences in terms of usability between a local application and a seamless remote application.
Citrix invented the idea of published applications and seamless windows way more than 10 years ago, adding more and more features over time. With RemoteApp, Microsoft introduced pretty much the same concept with Windows Server 2008, constantly improving it from one server version to the next. In this context it is important to note that the underlying Remote Desktop Services components in Windows Server are not strictly limited to the Microsoft RDP/RemoteFX protocol. With plug-in mechanisms and public APIs, Remote Desktop Services were always designed in such a way that it was possible to add protocol extensions, something Citrix also did in the past to integrate the ICA/HDX protocol and specific MetaFrame/XenApp functionalities. This kind of extensibility was also beneficial for Citrix Published Applications.
Now VMware seems to have done exactly the same, adding Teradici’s PCoIP protocol extensions and some specific VMware functionalities to Windows Server. In addition, VMware developed a cross-platform seamless app client based on the VMware Fusion App Unity code. Although it requires a fair amount of time, effort and resources to implement the full stack of seamless remote applications components and protocol extensions, it’s not rocket science – and VMware just did it.
I personally think it was a smart move by VMware to fill their Horizon feature gap around the integration of remote desktops and seamless remote applications. They obviously reused some code and components they already had, accelerating development time and reducing risk. In addition, according to their public statements, VMware seems to have worked closely with the Microsoft RDS product group, something many industry expert thought was impossible only months ago. But for Microsoft and VMware it is a win-win situation: Microsoft gets the RDS CAL license fees and VMware gets the functionality requested by many customers – even though the feature richness of Citrix Published Applications will still remain superior for a while. So now it will be interesting to find out how good Horizon 6 published applications really are as soon as we see them in the wild.