For many Citrix customers, Microsoft® Lync® has become a widely used “strategic application” thanks to excellent audio-video conferencing capabilities and tight integration with the Microsoft® Office suite. Happily, no other desktop virtualization vendor offers as comprehensive a set of technologies for delivering Lync as Citrix.
If you’d like to learn how the HDX features of XenApp, XenDesktop and Citrix Receiver support Lync for users on various device types, this blog post is for you.
We will explore four options for delivering the Lync client:
- Microsoft® Lync® VDI Plug-in
- Local App Access
- HDX RealTime Optimization Pack for Lync®
- Generic HDX RealTime
Generic and Optimized Delivery Methods
As explained in my July 2012 post on softphone delivery and the whitepaper “Unified Communications with XenApp and XenDesktop: Solution Overview”, Citrix supports both “generic” and “optimized” architectures for Unified Communications, just as we do for video playback / multimedia streaming. These complementary approaches ensure that virtually any softphone or Unified Communications (UC) client can be delivered from XenApp or XenDesktop to an increasingly broad range of devices, while maximizing server scalability.
Our generic HDX RealTime technologies work without any modification or hooking of the native softphone client, but as a result leave the media processing workload on the XenApp/XenDesktop server. The difference with optimized HDX RealTime solutions which are available today for Microsoft Lync, Cisco Jabber, Vidyo and Avaya one-X, is that the media processing workload is redirected to the user device. With these optimized solutions the “media engine” runs on the endpoint instead of on the server. This is especially valuable in the case of webcam video which is CPU intensive and therefore costly if video processing is performed server-side.
Citrix supports three optimized solutions for delivering Lync. And our generic HDX RealTime technologies provide a valuable fallback for users on devices without a Lync-compatible media engine.
Support for Microsoft’s Lync® VDI Plug-in
Microsoft embraced Citrix’s optimized architecture for UC app delivery with the introduction of the Lync 2013 VDI Plug-in for Windows. The VDI Plug-in is the Lync media engine, packaged on its own. So the user interface and business logic layers of the Lync client run on the XenApp/XenDesktop server but the audio-video processing workload is shifted to the user’s Windows device. The server-side Lync client exchanges command and control information with the VDI Plug-in over a Dynamic Virtual Channel (DVC). Citrix Receiver supports the Lync geometry tracking protocol used to position the video content (rendered on the endpoint) over the Lync client UI (running on the server).
For more detail on this solution, see Citrix Support article CTX138408.
Local App Access
The XenApp 6.5 Feature Pack 2 and XenDesktop 7.0 releases introduced Local App Access, sometimes described in the blogosphere as “Reverse Seamless” — a Platinum Edition feature that makes it possible to run a Windows application locally on the user’s device yet have it appear integrated with their virtual/published desktop. Local App Access can be valuable for delivering softphones and UC apps. In the case of Lync, the VDI Plug-in is usually a preferable solution but delivering Lync through Local App Access may be attractive in some scenarios as it overcomes certain feature limitations of the VDI Plug-in such as lack of support for Lync Online (Office 365 hosted Lync) and Gallery View (multiple-view video). One caveat is that application sharing is not possible since the Lync client isn’t running on the same machine as the user’s other apps (they’re running on the XenApp/XenDesktop server). Screen sharing, however, works fine. Integration with Outlook can be a challenge because some features require the Lync and Outlook clients to co-reside. These issues may be alleviated with some configuration tricks.
HDX RealTime Optimization Pack for Lync
If your user community includes a sizable population of Linux or Mac users, then you should seriously consider using the HDX RealTime Optimization Pack for Lync. Version 1.5 was released last month in conjunction with XenApp and XenDesktop 7.6. It can also be used with XenApp 6 and XenDesktop 5 and above. This solution is compatible with Lync Server 2013 and Lync Server 2010, while delivering the Lync 2010 client to Windows, Linux and Mac users. Citrix policy prevents me from commenting on our specific roadmap plans but I can assure you that we are continuing to enhance this solution due to the tremendous value it brings to customers with non-Windows devices.
Documentation for the HDX RealTime Optimization Pack for Lync is available on eDocs at: http://support.citrix.com/proddocs/topic/technologies/hdx-realtime-optimization-pack-wrapper.html
The HDX RealTime Optimization Pack for Lync uses Lync APIs and codecs licensed by Citrix from Microsoft. In addition, it includes a variety of industry-standard audio and video codecs to enable interoperability with third-party products that register with the Lync server, such as in-room video conferencing systems.
Generic HDX RealTime technologies
All is not lost if you’re on a device without a Lync-compatible media engine. Citrix supports running the full Lync client on the XenApp/XenDesktop server and delivering the audio-video content over our ICA protocol. A variety of generic HDX RealTime technologies make this viable, such as:
- Optimized-for-speech codec with fast encode time to minimize audio latency
- UDP/RTP audio transport to minimize audio latency over congested and lossy network connections
- Packet tagging for QoS (both DSCP tagging for RTP packets at Layer 3 and also WMM tagging for WiFi)
- Jitter buffering
- Webcam Video Compression (including H.264)
Setting up a network to handle real-time VoIP and/or video does require some expertise. One customer told me they achieved optimal results by splitting their network into multiple VLANs. Configuring the networking gear for QoS is also a rather fundamental prerequisite.
While Citrix policy does not permit me to be specific about our roadmap plans, I can confirm that we are continuing to invest in the generic HDX RealTime technologies in both our HDX and our Receiver teams.
If you have technical questions about our HDX RealTime technologies or would like guidance from the Citrix community, be sure to take advantage of our Support Forums.
Frequently Asked Questions
Q: When will the HDX RealTime Optimization Pack for Lync support delivery of the Lync 2013 client?
Roadmap information cannot be shared in a public forum such as this blog. Within the boundaries of Citrix policy, your Citrix Sales representative may be able to arrange for a roadmap discussion under a Non-Disclosure Agreement.
[January 2015 update: A new release of the HDX RealTime Optimization Pack for Lync is planned for this quarter (March availability). This release will support optimized delivery of the Lync 2013 client to Linux and Windows devices, with Mac to follow in Q2.]
Q: Can XenApp/XenDesktop be used with Lync Online (Office 365 hosted Lync)?
Yes. Although I cannot comment on our roadmap plans, let me summarize how Lync Online is currently supported by our HDX technologies.
Obviously, since Local App Access and the generic HDX RealTime technologies deliver the native Lync client, these approaches both support Lync Online. Microsoft’s Lync 2013 VDI Plug-in does not currently support Lync Online / Office 365 but the HDX RealTime Optimization Pack for Lync does, in these two scenarios:
- customer synchronizes password hashes between their on-premises Active Directory and Office 365 using Microsoft’s Azure Active Directory Sync tool
- user accounts (“Cloud identities”) are maintained in the Microsoft Azure cloud (typical of SMB implementations)
Since Office 365 is a Web Service it supports only TLS-DSK for authentication.
[December 2014 update: Release 1.6 of the HDX RealTime Optimization Pack for Lync supports AD Federation to Lync Online / Office 365. See /blogs/2015/01/05/using-xenappxendesktop-with-lync-online/.]
Q: Can I use a mix of delivery methods to address different user groups or device types?
Yes, it is often appropriate to use a combination of Lync delivery methods based on user needs and the strengths and limitations of each of the four approaches summarized in this blog post. This may necessitate creating multiple virtual desktop images.
Q: What authentication methods are supported by the current v1.5 HDX RealTime Optimization Pack for Lync?
Citrix Support article CTX135647 reviews the authentication process for the HDX RealTime Optimization Pack for Lync. The Optimization Pack supports the following Lync authentication methods:
- TLS-DSK certificate-based authentication (preferred)
- NTLM (fallback)
Kerberos is supported by the Optimization Pack only for the authentication to the Lync Web Services server.
Passwords can be saved in the Windows credential manager or using the “Save my password” option (subject to administrator control) in the native Lync registry or the Optimization Pack registry. The Optimization Pack uses the Microsoft Windows Data Protection API that reversibly encrypts the password in such a way that it cannot be decrypted on a different computer. The saved password can be used to:
- retrieve the web ticket and certificate if there is no certificate present for the user in the Optimization Pack registry
- authenticate using NTLM if TLS-DSK authentication is unsuccessful
Although Lync does not support smart cards directly, TLS-DSK certificate login enables the use of certain smart cards. The Optimization Pack can fetch a certificate for the user and store it in the registry. For example, in the Nordics the widely-used SecMaker Net iD smart card has been successfully used with the HDX RealTime Optimization Pack for Lync.
Q: When the Lync client is hosted on XenApp, can it be delivered as a seamless published app, rather than within a full published desktop?
Yes, unless using the Microsoft Lync VDI Plug-in. The Lync 2013 or Lync 2010 client can be delivered as a published app if the full Lync client is hosted on XenApp and delivered using generic HDX RealTime (server-side media processing). And the Lync 2010 client can also be delivered as a published app via the HDX RealTime Optimization Pack for Lync.
Q: Does Microsoft support Citrix’s solutions for delivering the Lync client?
Citrix Receiver, XenApp, and XenDesktop utilize APIs and other components developed and supported by Microsoft. In general – as with any Citrix application – customers should first contact Citrix for support. If necessary, Citrix will work with Microsoft if a bug is discovered in any Microsoft components.
[January 2015 update: See CTX article 132979 for more detail on technical support of Microsoft Lync in a Citrix environment.]
Q: Who can help design and plan the roll-out of Lync voice and video to our XenApp/XenDesktop users?
Citrix Consulting is available to work with your Citrix partner and Microsoft to design and plan your Lync roll-out.