We are living in very challenging times and demand for Unified Communications have intensified.
Teams usage is at an all-time high, according to Satya Nadella on an earnings call in Oct 2020 “Microsoft Teams usage jumps 50 percent from 75 million since the start of the pandemic to 115 million daily active users. “
Given this increased demand, companies need Teams optimisation for the following reasons:
By offloading unified communications solutions processes to endpoints, user experience goes up as the endpoint has abundant resources
CPU/RAM load at virtual desktops lowers by offloading unified communication to endpoints, it increases density at the virtual desktops.
Higher density on multi-user instances requires fewer instances running leading directly to lower costs for workloads.
IGEL and Citrix can deliver a Teams Optimization solution to meet these needs.
Requirements for Microsoft Teams Optimisation
- MS Teams (1.2.00.31357 or higher)
- CVAD DDC 1906.2
- VDA 1906.2
- IGEL OS 11.04.240 or higher
So how does the Optimisation work?
- A Teams session is launched on the Citrix VDA running in the Cloud.
- Teams authenticates to O365 and receives the relevant policies.
- exe instantiates a generic virtual channel by calling into the Citrix HDX Teams Redirection Service (CtxSvcHost.exe).
- Citrix Workspace app’s wfica32.exe (HDX engine) spawns a new process called HdxTeams.exe or HdxRtcEngine.exe, which is the new WebRTC engine used for Teams optimization. This is a process that is running on the IGEL endpoint and the process HDxRtcEngine.exe shows that Teams processing has been offloaded to the endpoint.
- Citrix media engine and Teams.exe have a 2-way virtual channel path and can start processing multimedia requests.
- Peer A clicks the call button. Teams.exe communicates with the Teams services in Office 365 establishing an end-to-end signalling path with Peer B. Teams asks the Citrix Workspace app media engine for a series of supported call parameters (codecs, resolutions, and so forth, which is known as a Session Description Protocol (SDP) offer). These call parameters are then relayed using the signalling path to the Teams services in Office 365 and from there to the other peer.
- The SDP offer/answer (single-pass negotiation) takes place through the signalling channel, and the ICE connectivity checks (NAT and Firewall traversal using Session Traversal Utilities for NAT (STUN) bind requests) complete. Then, Secure Real-time Transport Protocol (SRTP) media flows directly between HdxTeams.exe and the other peer (or Office 365 conference servers if it is a meeting).
Both IGEL and Citrix have worked to make this an easy process to implement.
On IGEL OS
Teams Optimisation on IGEL requires the editing of the profile on the UMS Under – Sessions – Citrix – Citrix Global – Unified Communications – VDI Solutions and ticking the box as shown below.
On Citrix, this is enabled via a Citrix Policy as shown below.
How do you confirm the Teams session is optimised?
Within the Teams Citrix session go to About and choose version the following should be displayed
On IGEL OS
Launch a local terminal session then execute the top command.
Start a Teams meeting or call.
Within the terminal window see if the HdxRtcEngine process is running as shown below. This shows that Teams processing has been offloaded to the IGEL endpoint.
IGEL and Citrix can provide customers with an end-to-end Teams Optimisation solution to meet the unified communications demands we all currently face. The solution continues to improve because IGEL OS has near zero-day support for Citrix Workspace App.
If you want to learn more, then this video from DISRUPT, featuring Rob Beekmans from Citrix and Ian Anderson at IGEL