Reference Architecture: Optimizing Unified Communications Solutions
This document is intended for Citrix technical professionals, IT decision-makers, partners, and consultants who want to deliver unified communication solutions in a Citrix virtualized environment.
The content is relevant with both on-premises and public cloud architectures.
The reader should have a basic understanding of the Citrix app and desktop virtualization offerings in addition to unified communications solutions.
For more information on Citrix Virtual Apps and Desktops, refer to the Citrix Virtual Apps and Desktops official documentation.
Objective of this Document
The purpose of this document is to describe how to best deploy unified communication solutions with Citrix Virtual Apps and Desktops. The overall goal is to deliver an optimal user experience, improve security, and maximize server scalability.
Real-time collaboration is at the heart of the modern workplace. It’s how employees remain productive and business gets done. Whether a two-person internal voice call or an international video conference hosting dozens of attendees, today’s unified communication solutions meet the demanding needs of any organization. Citrix virtualization solutions complement these offerings by:
- Keeping sensitive data like chat logs, file transfers, and SIP signaling secure within the data center as opposed to be distributed across hundreds or thousands of endpoint devices.
- Providing a consistent user experience across various device types and platforms – even helping to enable capabilities on platforms without native client support.
- Easing the administrative burden. Instead of managing unified communications clients and versions across endpoints simply deploy the Workspace app, embrace auto-updates, and BYO initiatives
- And more…
Citrix has worked with the vendors of the following unified communications solutions to offer Optimization Packs. These packs help offload voice and video content to the endpoint device wherever possible. The unified communication client remains secure in the data center with this approach (see the architecture section for more details).
- Optimization for Microsoft Teams
- HDX RealTime Optimization Pack for Skype for Business
- Cisco Jabber Softphone for VDI
- Cisco Webex Meetings for Virtual Desktop Environments
- Avaya Equinox VDI
- Zoom Meetings optimization
The preceding solutions ensure the best possible user experience and server scalability when used with supported Citrix versions and endpoint client devices. When the requirements are not met (such as connecting from an unsupported platform or client device) or using a different unified communications solution, a generic fallback approach can be used. This provides optimization of audio and video for sessions. We discuss this approach later in the document.
Most optimized unified communication solutions for Citrix environments employ an agent on the Citrix server/desktop to handle business logic, signaling, and other capabilities. A decoupled media engine resides on the endpoint device to process the audio and video. This approach reduces the hops that data packets would normally travel through in a virtualized environment.
The Microsoft Teams and Skype for Business solutions use a media engine which is co-developed and co-supported between Citrix and Microsoft. For Microsoft Teams it’s built into the VDA and Workspace app so no further components are required. For Skype for Business, there are separate components for agent (RealTime Connector on the VDA) and engine (RTME on the endpoint). They must be installed as part of the HDX RealTime Optimization Pack.
Jabber, WebEx, Zoom, and Avaya solutions use a similar agent/engine architecture as Microsoft solutions. However, those solutions are owned by their respective vendors. Consult the respective vendor’s website or Citrix Ready for more details on these solutions.
Cisco WebEx offerings in particular use Citrix’s Browser Content Redirection (BCR) for web app optimization. BCR redirects the viewport area of a web browser running on a Citrix VDA to the endpoint client device for rendering to improve user experience and server scalability. For more information on BCR, see the following section or refer to the product documentation.
When designing an optimized unified communications solution with Citrix, it is important to understand basic hardware and software requirements including potential extra loads presented to the environment. These are just a few of the questions that must be considered:
• How many users use the unified communications solution with Citrix? • How the users connect to the environment? • Is the unified communications software available through published apps, desktops, or VDI? • What endpoint telephony hardware is used? (See Citrix Ready offerings)
This section covers optimizing video for unified communications solutions. It typically applies in generic fallback scenarios such as unsupported endpoint client device or platform or unsupported unified communication solution. One such example is running the GoToMeeting collaboration offering within a virtual desktop.
Fall-back scenarios result in server-side rendered video. In this case, Citrix recommends the following configuration for best performance:
- The H.264 video codec is to be used for video playback and it is enabled by default.
- A Citrix endpoint client that supports GPU hardware acceleration is recommended. That includes the Citrix for Windows, Linux, Mac, and Chrome-OS. When using thin-client devices confirm with the vendor if H.264 hardware decoding is supported, and which Citrix client version is used (if integrated with vendor image).
- Installing a GPU that supports H.264 hardware encoding/decoding on the Citrix server or VDI can also improve performance and save CPU cycles by offloading this process. There are scalability considerations when using a GPU in a multi-session server (Virtual Apps).
- Webcam optimization - CTX132764
In this section we cover how to optimize audio for fallback scenarios. The Citrix recommendation is to enable UDP audio for the best overall experience. For audio quality, VOIP services work best with the “medium” setting. Playback is ideal at the “high” setting. For more details, refer to the Citrix Virtual Apps and Desktops Audio Documentation. For additional information on optimizing audio, refer to the KB article Delivering Softphones with Virtual Apps and Desktops.
Generic USB redirection offers support for a wide range of USB devices within virtual sessions. However, given the nature of the USB standard and the bandwidth it requires, it is typically only suited for LAN situations. For webcams, the recommendation is to not use this generic USB redirection capability because it consumes too much bandwidth in almost all situations. Unified communications hardware with specialty buttons can take advantage of composite USB redirection. This is also known as hybrid mode and is used to optimize multimedia virtual channels for voice and video while using generic USB redirection for specific functions. The functions are configurable by the admin. Refer to the Composite USB Redirection section at https://support.citrix.com/article/CTX133024 for more details.
Browser Content Redirection
Browser Content Redirection offloads the viewable “viewport” area of a VDA-based web browser to the endpoint device for rendering. This solution is ideal for optimizing any web-based unified communication offering, but especially true for those using WebRTC. Refer to Browser Content Redirection Documentation and https://support.citrix.com/article/CTX230052 for more details on the feature including configuration and troubleshooting.
Citrix SD-WAN is recommended to ensure optimal network connectivity and audio/video quality between office locations and the unified communications server. The Citrix SD-WAN Cloud Direct service provides a great solution for connectivity to UCaaS solutions such as RingCentral, Cisco WebEx, GoToMeeting, and Microsoft Teams. Citrix customers who run their workloads in public clouds can use the Citrix SD-WAN virtual appliance which is supported on Azure, AWS, GCP, and (in Tech Preview) Oracle Cloud. Microsoft Teams customers should refer to the documentation section Citrix SD-WAN Optimized Network Connectivity for Microsoft Teams. For more information on SD-WAN, please refer to the SD-WAN Documentation and SD-WAN Reference Architecture.
Ongoing monitoring of the optimized unified communications solution in a Citrix environment is important. Administrators should first understand if optimization is taking place, and what graphics modes and virtual channels are in use, bandwidth consumption, and so forth. Help desk staff should also have an understanding of the tools and processes available to assess and troubleshoot as required. For solutions with an Optimization Pack, the easiest way to check for optimization during a voice or video call is to observe resource utilization in the task manager. With optimization enabled, the running process for the unified communication solution consumes less CPU when compared to running in a non-optimized state. For Browser Content Redirection, the processes are called HdxBrowserCef.exe and HdxBrowser.exe. More details can be found in the Browser Content Redirection troubleshooting guide at https://support.citrix.com/article/CTX230052.
Whichever unified communication solution customers decide to use within their organization, Citrix has a way to secure and optimize it with the Citrix Virtual Apps and Desktops family. Many popular solutions have specific Optimization Packs while others can use Citrix’s innovative Browser Content Redirection or generic fallback optimization techniques. Understanding the architecture and implementation specifics for a given environment helps to ensure the best possible user experience and scalability. Lastly, Citrix Director provides the necessary visibility for administrators and help desk staff to proactively analyze and troubleshoot unified communication optimization.
- Optimization for Microsoft Teams
- HDX RealTime Optimization Pack - What’s New
- Skype for Business Lab Guide from Synergy 2016