Citrix Virtual Apps and Desktops 环境中 Microsoft Teams 优化的概念验证指南

概述

本文档作为指南,帮助 IT 组织为使用 Microsoft Teams 在桌面和应用程序虚拟化环境中成功评估统合通信 (UC) 做好准备。超过 50 万个组织,包括财富 100 强企业中的 91 家(截至 2019 年 3 月),在 181 个市场中以 44 种语言使用 Teams。如果没有适当的优化考虑和设计,虚拟桌面和虚拟应用程序用户可能会发现 Microsoft Teams 体验不佳。Citrix 提供了优化此体验的技术,即使在虚拟桌面中进行远程工作时,也能通过清晰的视频和音频使 Teams 响应更快。但是,使用 Teams 基础架构、客户端、端点类型和用户位置的多种组合,人们必须找到合适的 “配方” 才能以最佳方式交付 Teams。

Citrix® HDX™ Optimization for Microsoft® Teams 在优化的架构中提供清晰、清晰的 720p 高清视频通话 @30 fps。用户可以无缝地参与与其他团队用户、优化团队用户以及其他基于标准的视频桌面和会议室系统的音频视频或纯音频通话。还可以支持屏幕共享。 本文档将指导管理员在 Citrix 环境中评估 Teams 交付解决方案。它包含最佳实践、提示和技巧,以确保部署最强大。

Microsoft Teams 的优化与通用交付

这种选择通常是导致在 Citrix 环境中提供 Microsoft Teams 体验最困惑的原因。主要原因是,如果不进行优化,媒体必须将客户端 “发夹” 到数据中心的服务器,然后返回端点。这种额外的流量可能会给服务器带来巨大负载(尤其是视频),并可能导致延迟和整体降低体验,特别是当 Teams 呼叫中的另一方来自具有类似虚拟化体验的用户时。这种提供 Microsoft Teams 体验的方法称为 “通用” 交付。

首选的交付方式是 “优化” 方法。在这种情况下,架构师或管理员在其环境中使用 Microsoft Teams 的优化。如下面的比较图所示,“优化” 方法就像将 Teams 客户端拆分为二。用户界面位于虚拟主机内,在虚拟桌面或应用程序显示屏中完全可以看到。但是,媒体渲染或媒体引擎将分离出来在终端节点上运行。这种方法允许音频和视频的精美渲染以及出色的桌面共享体验。

Microsoft Teams 的优化与后备交付模式

为您的环境选择合适的团队优化

针对团队的优化不是 “一刀切” 的技术。对于 Teams 桌面应用程序,使用 Windows 客户端时,请将 Citrix HDX Optimization for Microsoft Teams 与 Citrix Workspace 应用程序结合使用。随着 Linux 和 Mac 客户端在路线图上。 对于基于 Web 的 Teams,如果 Windows 和 Linux 客户端使用 Chrome 浏览器,使用浏览器内容重定向的适用于 Microsoft Teams 的 Citrix HDX Optimization 将是正确的解决方案。 对于其余的操作系统和 Teams 交付格式组合,可以选择通过 HDX 回退到媒体的通用交付。移动操作系统的优化目前不可用。通常,希望在其设备上访问 Teams 的移动用户使用相应应用商店中的 Teams 本机应用程序。

为 Microsoft Teams 使用 Citrix HDX 优化的优点

  • 最丰富的体验,所有媒体都在端点上呈现
  • 没有头发固定效果,媒体通信在客户端和所在 Office 365 中的 Teams 会议服务之间进行点对点
  • 减少对 Citrix Virtual Apps and Desktops 主机的资源影响
  • 与 “通用” 方法相比,消耗的 HDX 带宽更少
  • 允许使用高科技 Teams 优化的耳机和手机
  • 支持使用 Windows Server 操作系统交付 Citrix Virtual Apps 程序
  • 在客户端设备上安装简单,先决条件
  • 可通过 Office 365 从企业网络远程使用
  • 支持的 HDX Premium 瘦客户机设备的多种选择(请参阅 Citrix Ready 列表
  • 微软和 Citrix 支持提供的支持
  • 优化体系结构的两端都无需向后端进行身份验证
  • 不需要对 Teams 后端进行修改

适用于 Microsoft Teams 的 Citrix HDX 优化

默认情况下,这些组件捆绑到 Citrix Workspace 应用程序和 Virtual Delivery Agent (VDA)

概念体系结构

Teams Optimization for Citrix Virtual Apps and Desktops

呼叫流

  1. 启动 Microsoft Teams。
  2. Teams 将对 O365 进行身份验证。租户策略被向下推送到 Teams 客户端,并将相关 TURN 和信号通道信息中继到应用程序。
  3. Teams 检测到其正在 VDA 中运行,并对 Citrix JavaScript API 进行 API 调用。
  4. Teams 中的 Citrix JavaScript 将打开一个与在 VDA (127.0.0.1:9002) 上运行的 WebSocketService.exe 的安全 WebSocket 连接。WebSocketService.exe 作为本地系统帐户在会话 0 中运行。WebSocketService.exe 执行 TLS 终止和用户会话映射,并生成 WebSocketAgent.exe(现在在用户会话内运行)。
  5. WebSocketAgent.exe 通过调用到 Citrix HDX Browser Redirection Service (CtxSvcHost.exe) 来实例化通用虚拟通道。
  6. Citrix Workspace 应用程序的 wfica32.exe (HDX Engine) 产生一个名为 HdxTeams.exe 的新进程,这是用于 Teams 优化的新 WebRTC 引擎。
  7. HdxTeams.exe 和 Teams.exe 有一个双向虚拟通道路径,可以开始处理多媒体请求。

    —— 用户来电 ——

  8. 对端 A 单击呼叫按钮。Teams.exe 与 Azure 中的 Teams 服务通信使用 Peer B 建立端到端信令路径。Teams 向 HDxTeams 询问一系列受支持的呼叫参数(编解码器、解决方案等,称为会话描述协议 (SDP) 优惠)。然后使用指向 Azure 中的 Teams 服务的信令路径中继这些呼叫参数,并从该位置传输到另一个对等方。
  9. SDP 提议/应答(单通协商)和互动式连接建立 (ICE) 连接性检查(NAT 和使用 Session Traversal Utilities for NAT (STUN) 绑定请求的防火墙遍历)完成。然后,安全实时传输协议 (SRTP) 媒体直接在 HdxTeams.exe 与其他对等方(或 O365 会议服务器,如果是会议)之间流动。

使用 Microsoft Teams 桌面应用程序的 Optimization for Teams 支持的操作系统版本

  • 托管 Teams 客户端的 VM - 安装 Citrix Virtual Delivery Agent (VDA) 版本 1906.2 或更高版本
    • 单会话操作系统-微软 Windows 10 64 位,最低版本 1607 至 1909
    • 多会话操作系统-微软 Windows Server 2019、2016、2012 年 R2(标准版和数据中心版)
  • Windows 客户端计算机-安装适用于 Windows 或更高版本的 Citrix Workspace 应用
    • 微软 Windows 10、8、7(32 位和 64 位版本,包括嵌入式版本 2016 LTSR 或 2019 LTSC)

支持的 Teams 耳机和手机

微软为 TeamsSkype for Business 支持的设备列表

注意:Microsoft Teams 不支持 iPhone 头戴式耳机

安装步骤

必备条件

注意 - GA 中提供的 Optimization for Teams 仅适用于 Windows 端点设备

  1. 下载最新的 Citrix Virtual Apps and Desktops VDA 安装程序。在 Citrix.com 上,选择 “下载” 选项卡。选择 Citrix Virtual Apps and Desktops 作为产品,然后选择产品软件作为下载类型。选择 Citrix Virtual Apps and Desktops 1906 或更高版本,它位于“组件”下
  2. 确保除了 VDA 之外,还可以从客户端访问 Teams 服务
  3. 确保 Microsoft Teams 客户端版本 1.2.00.31357 或更高版本安装在 Virtual Delivery Agent 主机或基础映像或 Citrix Virtual Apps 程序服务器上,这些服务器将用于交付 Microsoft Teams 或两者上。请参阅下面有关如何安装它的说明
  4. 下载最新的 Citrix Workspace 应用。 链接

安装过程很简单

Microsoft Teams 安装

安装必须在目录的黄金映像或办公层(如果您使用的是 App Layering)中完成。我们建议你遵循 Microsoft Teams 安装指南。避免在 AppData 下安装 Teams。相反,应使用 ALLUSER=1 标志在 C:\Program 文件 中安装。 有关详细信息,请参阅 使用 MSI 安装 Microsoft Teams

如果 Teams 之前是在用户模式下安装在映像上的:

  • 来自 EXE 安装程序的用户:
    • 让环境中的所有用户从 控制面板 > 程序和功能手动卸载
  • 来自 MSI 的管理员:
    • 管理员以正常方式卸载
    • 环境中的所有用户必须登录才能完成卸载
  • 来自 Office Pro Plus 的管理员:
    • 管理员可能需要像直接安装 MSI 一样卸载(上图)
    • Office Pro Plus 必须配置为不包括 Teams

Citrix Virtual Apps and Desktops VDA 安装在主机虚拟机上

HDX Optimization for Teams 作为 Citrix Virtual Apps and Desktops 中的 VDA 的一部分捆绑在一起。它安装在目录和 Citrix Virtual Apps 服务器的主机或基础映像上,这些服务器可用于交付 Teams。

申请要求

VDA 安装程序会自动安装以下项目,这些项目可在 Citrix 安装媒体上的支持文件夹中使用

  • 微软 .NET 框架 4.7.1 或更高版本(如果尚未安装)
  • 微软 Visual C++ 2013 和 2015 年运行时,32 位和 64 位
  • BCR_x64.msi - 包含 Microsoft Teams 优化代码并从 GUI 自动启动的 MSI。如果您使用命令行界面进行 VDA 安装,请不要将其排除

对于 Windows Server,如果未安装和启用远程桌面服务角色,安装程序将自动安装并启用这些角色。

每个用户配置文件有 3 GB 的可用磁盘空间(微软推荐)

确保 Microsoft Teams 客户端应用程序以每台计算机模式安装在 VDA 上

按照说明 此处 在主机或基础映像上安装 Citrix Virtual Delivery Agent

使用此映像,在尝试建立会话和访问 Teams 客户端之前,在 Citrix Studio /Citrix Cloud Man age 选项卡中创建相应的计算机目录和交付组。

Windows 客户端设备 — 适用于 Windows 安装的 Citrix Workspace 应用程序

适用于 Windows 的 Citrix Workspace 1909 应用程序内置了优化组件。在客户端上安装应用程序时,组件已存在。

系统要求

  • 在点对点视频电话会议期间,720p 高清分辨率需要约 1.8—2.0 GHz 的四核 CPU。还支持速度较低(约 1.5 GHz)但配备英特尔睿频加速或 AMD 睿频酷睿的四核 CPU,最高可提升 2.0 GHz
  • Citrix Workspace 应用程序至少需要 600 MB 可用磁盘空间和 1 GB RAM。
  • 如果尚未安装 Microsoft .NET 框架版本 4.6.2 或更高版本,则会自动安装该版本。

按照说明安装适用于 Windows 的 Citrix Workspace 应用程序 此处

策略设置

要启用优化,请确保 Microsoft Teams 重定向 Studio 策略设置为 允许 该策略默认处于启用状态

用于启用 Teams 优化的 Studio 策略

注意:除了启用此策略之外,HDX 还会检查以验证 Citrix Workspace 应用程序的版本是否等于或大于所需的最低版本。如果两个条件都满足,则 VDA 上的以下注册表项设置为 1。Microsoft Teams 应用程序读取在 VDI 模式下加载的密钥

关键字: HKEY_CURRENT_USER\ 软件\ Citrix\ hdxMediaStream

名称: msteamsRedirSupport

值:DWORD(1 - 开,0 - 关)

网络要求

Microsoft Teams 依靠 Microsoft Azure 中的媒体处理器服务器进行会议或多方通话。Microsoft Teams 依赖 Azure 传输中继来解决点对点呼叫中的两个对等体没有直接连接或参与者无法直接连接媒体处理器的情况。因此,对端与 Office 365 云之间的网络运行状况决定通话的性能。

我们建议您对环境进行评估,以确定可能会影响整个云语音和视频部署的任何风险和要求。使用 为 Microsoft Teams 准备组织的网络 页面评估你的网络是否已准备好供 Microsoft Teams 使用。

端口/防火墙设置

Teams 通过 UDP 3478-3481、TCP 443(回退)上的传输中继流量,客户端需要访问这些地址范围:13.107.64.0/18、52.112.0.0/14、52.120.0.0/14。

对等连接的优化流量将在更高端口(40 K+ UDP)上随机路由(如果它们处于打开状态)。欲了解更多信息,请参阅 阅读

确保使用 Teams 优化运行 Workspace 应用程序客户端的所有计算机都可以解析外部 DNS 查询以发现 Microsoft 365 提供的 TURN/STUN 服务(例如 worldaz.turn.teams.microsoft.com),并且防火墙不会阻止访问。

有关支持信息,请参阅我们文档的支持部分。

实时协议 (RTP) 流量的主要网络建议摘要

尽可能直接从分支机构连接到 Office 365 网络。在分支机构绕过代理服务器、网络 SSL 拦截、深度数据包检测设备和 VPN 发夹(如果可能,请使用分割隧道)。如果必须使用它们,请确保 RTP/UDP Teams 流量不受阻碍。规划并提供足够的带宽。检查每个分支机构的网络连接性和质量。 Workspace 应用程序 (HdxTeams.exe) 中的 WebRTC 媒体引擎将安全 RTP 协议用于卸载到客户端的多媒体流。为确保良好的用户体验,建议使用以下指标

  • 延迟(单程)< 50 毫秒
  • 延迟 (RTT) < 100 毫秒
  • 在任何 15 秒的时间间隔内丢包 <1%
  • 在任意 15 秒的时间间隔内,数据包到达间抖动 < 30 毫秒

在带宽要求方面,Microsoft Teams 的优化可以将各种编解码器用于音频(OPUS/G.722/PCM/G711)和视频(H264/VP9)。在通话建立过程中,对端使用会话描述协议 (SDP) 请求应答来协商这些编解码器。

Citrix 针对特定类型内容的带宽和代码的最低建议如下:

  • 使用 G.722 进行音频(单程)〜 90 kbps
  • 使用 Opus 进行音频(单程)〜 60 kbps *
  • 视频(单程)〜 700 kbps 使用 H264 360p @ 30 fps 和 16:9
  • 视频(单程)〜 2500 kbps 使用 H264 720p @ 30 fps 和 16:9
  • 使用 H264 1080p 进行屏幕共享〜 300 kbps @ 15 fps

(*) Opus 支持从 6 kbps 到 510 kbps 的恒定和可变比特率编码,它是两个 VDI 用户之间点对点调用的首选编解码器

常见部署相关的提示和问题

Teams 提示

要更新 Teams 桌面客户端,请卸载当前安装的版本,然后安装新版本。

要卸载 Teams 桌面客户端 MSI,如果它是首次使用每台计算机模式安装的,请使用以下命令之一:

msiexec /passive /x Teams_windows_x64.msi /l*v msi_uninstall_x64.log

msiexec /passive /x Teams_windows.msi /l*v msi_uninstall.log

屏幕共享

Microsoft Teams 依赖于基于视频的屏幕共享 (VBSS),有效地对正在与 H264 等视频编解码器共享的桌面进行编码,并创建高清晰度流。 借助 HDX 优化,传入屏幕共享被视为视频流,因此,如果您处于视频通话中,而另一个对等方开始共享其桌面,则其相机视频源将暂停,而显示屏幕共享视频源。然后,对等体必须手动恢复他们的相机共享。

多显示器

如果 CDViewer 处于全屏模式并跨多显示器设置,则只共享主显示器。用户必须将虚拟桌面内感兴趣的应用程序拖到主显示器上,以便通话中的另一个对等体看到该应用程序。

故障排除

以下是解决用户可能遇到的问题的几种方法:

症状:安装失败

原因:Citrix 重定向服务的状态不一致

解决方案:验证以下内容:

  1. 登录到 Windows 后,Teams 会自动为所有用户启动
  2. 目录和文件的存在
    • 程序文件 (x86) 或程序文件
      • 带有 Teams.exe 的 Microsoft\Teams\当前文件夹,这是主要应用程序
      • 带有 Teams.exe 的 Teams Installer 文件夹,这是 EXE 安装程序(永远不要手动运行!)
    • %LOCALAPPDATA%
      • Microsoft\Teams 不在该位置,或者大部分为空(只有几个文件)
  3. 快捷键的存在:
    • Teams 桌面客户端快捷方式,指向程序文件…,位于以下位置:
      • 在桌面上
      • 在 “开始” 菜单
  4. Windows 注册表信息的存在:
    • 注册表中以下关键路径之一中的名为 Teams 的值,类型为 REG_SZ:
      • Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
      • Computer\HKEY_LOCAL_MACHINE\Microsoft\Windows\CurrentVersion\Run

症状:发出音频/视频通话时失败,找不到连接的音频/视频设备

原因:Citrix 重定向服务的状态不一致

解决方案:验证 HDXTeams.exe 进程是否在 VDA 上运行。如果进程未运行,那么我们需要重新启动 Citrix 重定向服务,请按此顺序执行以下操作以检查 HdxTeams.exe 是否正在启动

  • 在 VDA 上退出 Teams
  • 在 VDA 上启动 services.msc
  • 停止“Citrix HDX Teams Redirection Service”
  • 断开 HDX 会话的连接
  • 重新连接到 HDX 会话
  • 启动“Citrix HDX Teams Redirection Service”
  • 重新启动 “Citrix HDX HTML5 视频重定向服务”
  • 在 VDA 上启动 Teams

症状:Citrix 会话上没有传入振铃通知音

原因:在 VDA 主机上播放音频

辨率:Citrix 会话上没有音频设备/本地默认音频设备不正确

  • 确保 Citrix 会话中存在远程音频设备。
  • 确保 Citrix 重定向服务正在远程主机上运行。重新启动它(解决了大多数问题)。
  • 如果有多个音频源可用,请确保将客户端计算机上的默认播放设备选中到用户希望听到振铃通知的设备上。

摘要

我们支持 Microsoft Teams 基础架构:无论是本地还是 Office 365(云),只要配置允许成功进行内部和外部客户端沟通。

我们已经演练了评估 Citrix Teams 优化的道路,并向您指导了用于部署其余资源。Microsoft Teams 的优化大大提高了服务器的可扩展性,提供了音频视频质量的零降级和最佳的网络带宽效率。这是微软推荐的 VDI 部署解决方案。如果你的环境中有 Linux 客户端,那么这是微软和 Citrix 共同支持的唯一解决方案。