PoC 指南:Citrix Virtual Apps and Desktops 环境中的Microsoft Teams s 优化
概述
本文档作为指南,帮助 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 客户端拆分为二。用户界面位于虚拟主机内,在虚拟桌面或应用程序显示屏中完全可以看到。但是,媒体渲染或媒体引擎将分离出来在终端节点上运行。这种方法允许音频和视频的精美渲染以及出色的桌面共享体验。
为您的环境选择合适的团队优化
针对团队的优化不是“一刀切”的技术。对于配备了 Windows、Linux、Mac 和 ChromeOS 客户端的 Teams 桌面应用程序来说,带有 Citrix Workspace 应用程序的 Microsoft Teams 的 Citrix HDX 优化是必经之路。对于基于 Web 的 Teams,如果 Windows 和 Linux 客户端使用 Chrome 浏览器,使用浏览器内容重定向的适用于 Microsoft Teams 的 Citrix HDX Optimization 将是正确的解决方案。移动操作系统的优化目前不可用。通常,希望在其设备上访问 Teams 的移动用户使用相应应用商店中的 Teams 本机应用程序。
为 Microsoft Teams 使用 Citrix HDX 优化的优点
- 最丰富的体验,所有媒体都在端点上呈现
- 没有头发固定效果,媒体通信在客户端和所在 Office 365 中的 Teams 会议服务之间进行点对点
- 减少对 Citrix Virtual Apps and Desktops 主机的资源影响
- 与“通用”方法相比,消耗的 HDX 带宽更少
- 支持使用 Windows Server 操作系统交付 Citrix Virtual Apps 程序
- 在客户端设备上安装简单,先决条件
- 可通过 Office 365 从企业网络远程使用
- 支持 Windows、Mac、Linux 和 ChromeOS 端点
- 支持的 HDX Premium 瘦客户机设备种类繁多(请参阅Citrix Ready 列表)
- Microsoft 和 Citrix 支持提供的支持
- 优化体系结构的两端都无需向后端进行身份验证
- 不需要对 Teams 后端进行修改
适用于 Microsoft Teams 的 Citrix HDX 优化
默认情况下,这些组件捆绑到 Citrix Workspace 应用程序和Virtual Delivery Agent (VDA) 中
概念体系结构
呼叫流
- 启动 Microsoft Teams。
- Teams 将对 O365 进行身份验证。租户策略被向下推送到 Teams 客户端,并将相关 TURN 和信号通道信息中继到应用程序。
- Teams 检测到其正在 VDA 中运行,并对 Citrix JavaScript API 进行 API 调用。
- Teams 中的 Citrix JavaScript 将打开一个与在 VDA (127.0.0.1:9002) 上运行的 WebSocketService.exe 的安全 WebSocket 连接。WebSocketService.exe 作为本地系统帐户在会话 0 中运行。WebSocketService.exe 执行 TLS 终止和用户会话映射,并生成 WebSocketAgent.exe(现在在用户会话内运行)。
- WebSocketAgent.exe 通过调用到 Citrix HDX Browser Redirection Service (CtxSvcHost.exe) 来实例化通用虚拟通道。
- Citrix Workspace 应用程序的 wfica32.exe(HDX 引擎)催生了一个名为 HdxRtcEngine.exe 的新进程,这是用于 Teams 优化的新 WebRTC 引擎。
HdxRtcEngine.exe 和 Teams.exe 具有双向虚拟信道路径,可以开始处理多媒体请求。
—— 用户来电 ——
- 对一个单端击呼叫按钮.Teams.exe与Azure中的团队服务通信使用对等B 建立端到端信令路径。Teams 向 HdxTeams 询问一系列受支持的呼叫参数(编解码器、解决方案等,称为会话描述协议 (SDP) 优惠)。然后使用指向 Azure 中的 Teams 服务的信令路径中继这些呼叫参数,并从该位置传输到另一个对等方。
- SDP 提议/应答(单通协商)和互动式连接建立 (ICE) 连接性检查(NAT 和使用 Session Traversal Utilities for NAT (STUN) 绑定请求的防火墙遍历)完成。然后,安全实时传输协议 (SRTP) 媒体直接在 HdxRtcEngine.exe 与其他对等方(如果是会议,则为 O365 会议服务器)之间流动。
有关系统要求的详细列表,请查看edocs 中的 Microsoft Teams文章。
支持的 Teams 耳机和手机
Microsoft 支持Teams和Skype for Business支持的设备列表
安装步骤
必备条件
- 下载最新的 Citrix Virtual Apps and Desktops VDA 安装程序。在 Citrix.com 上,选择“下载”选项卡。选择 Citrix Virtual Apps and Desktops 作为产品,然后选择产品软件作为下载类型。选择 Citrix Virtual Apps and Desktops 1906 或更高版本,它位于“组件”下
- 确保除了 VDA 之外,还可以从客户端访问 Teams 服务
- 确保在 Virtual Delivery Agent 主机或基础映像或 Citrix Virtual Apps 服务器上安装最新的Microsoft Teams Client版本,这些服务器将用于交付 Microsoft Teams 或两者兼而有之。请参阅下面有关如何安装它的说明
- 从此处下载最新的 Citrix Workspace 应用程序。
安装过程很简单
Citrix Virtual Apps and Desktops VDA 安装在主机虚拟机上
HDX Optimization for Teams 作为 Citrix Virtual Apps and Desktops 中的 VDA 的一部分捆绑在一起。它安装在目录和 Citrix Virtual Apps 服务器的主机或基础映像上,这些服务器可用于交付 Teams。
申请要求
VDA 安装程序会自动安装以下项目,这些项目可在 Citrix 安装媒体上的支持文件夹中使用
- Microsoft .NET 框架 4.7.1 或更高版本(如果尚未安装)
- Microsoft Visual C++ 2013 和 2015 运行时,32 位和 64 位
- BCR_x64.msi - 包含 Microsoft Teams 优化代码并从 GUI 自动启动的 MSI。如果您使用命令行界面进行 VDA 安装,请不要将其排除
对于 Windows Server,如果未安装和启用远程桌面服务角色,安装程序将自动安装并启用这些角色。
每个用户配置文件有 3 GB 的可用磁盘空间(Microsoft 推荐)
确保 Microsoft Teams 客户端应用程序以每台计算机模式安装在 VDA 上
按照此处的说明在主机或基础映像上安装 Citrix Virtual Delivery Agent。
使用此映像,在尝试建立会话和访问 Teams 客户端之前,在Citrix Studio /Citrix Cloud Manage 选项卡中创建相应的计算机目录和交付组。
Microsoft Teams 安装
注意:在安装 VDA 后安装Microsoft Teams。Teams 安装程序具有底层 VDA 的检测逻辑,这对于优化至关重要。
安装必须在目录的黄金映像或办公层(如果您使用的是 App Layering)中完成。我们建议您遵循 Microsoft Teams 安装指南。避免在 AppData 下安装 Teams(除非您使用的是专用/分配的虚拟桌面)。相反,请使用ALLUSER=1标志在C:\Program Files 中安装,这是池 VDI/Windows Server/Windows 10 多用户的推荐模式。 有关详细信息,请参阅使用 MSI 安装 Microsoft Teams
如果 Teams 之前是在用户模式下安装在映像上的:
- 来自 EXE 安装程序的用户:
- 让环境中的所有用户从控制面板 > 程序和功能手动卸载
- 来自 MSI 的管理员:
- 管理员以正常方式卸载
- 环境中的所有用户必须登录才能完成卸载
- 来自 Office Pro Plus 的管理员:
- 管理员可能需要像直接安装 MSI 一样卸载(上图)
- Office Pro Plus 必须配置为不包括 Teams
Windows 客户端设备 — 适用于 Windows 的 Citrix Workspace 应用程序安装(推荐最新当前版本)
适用于 Windows 的 Citrix Workspace 应用程序内置了优化组件。在客户端上安装应用程序时,组件已存在。
系统要求
- 在点对点视频电话会议期间,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 策略设置为允许该策略默认处于启用状态
注意:除了启用此策略之外,HDX 还会检查以验证 Citrix Workspace 应用程序的版本是否等于或大于所需的最低版本。如果两个条件都满足,则 VDA 上的以下注册表项设置为 1。Microsoft Teams 应用程序读取在 VDI 模式下加载的密钥
注册表项:HKEY_CURRENT_USER\Software\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 应用程序 (HdxRtcEngine.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 桌面客户端,请卸载当前安装的版本,然后安装新版本。
要卸载团队桌面客户端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
故障排除
以下是解决用户可能遇到的问题的几种方法:
症状:安装失败
原因:Citrix 重定向服务的状态不一致
解决方案:验证以下内容:
- 登录到 Windows 后,Teams 会自动为所有用户启动
- 目录和文件的存在
- 程序文件 (x86) 或程序文件
- 带有 Teams.exe 的 Microsoft\Teams\当前文件夹,这是主要应用程序
- 带有 Teams.exe 的 Teams Installer 文件夹,这是 EXE 安装程序(永远不要手动运行!)
- %LOCALAPPDATA%
- Microsoft\Teams 不在该位置,或者大部分为空(只有几个文件)
- 程序文件 (x86) 或程序文件
- 快捷键的存在:
- Teams 桌面客户端快捷方式,指向程序文件…,位于以下位置:
- 在桌面上
- 在“开始”菜单
- Teams 桌面客户端快捷方式,指向程序文件…,位于以下位置:
- Windows 注册表信息的存在:
- 注册表中以下关键路径之一中的名为 Teams 的值,类型为 REG_SZ:
- Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
- Computer\HKEY_LOCAL_MACHINE\Microsoft\Windows\CurrentVersion\Run
- 注册表中以下关键路径之一中的名为 Teams 的值,类型为 REG_SZ:
症状:发出音频/视频通话时失败,找不到连接的音频/视频设备
原因:Citrix 重定向服务的状态不一致
解决方案:验证 HdxRtcEngine.exe 进程是否在客户端计算机上运行。如果该进程未运行,则我们需要重新启动 Citrix 重定向服务,请按以下顺序执行以下操作,以检查 HdxRtcEngine.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 的优化大大提高了服务器的可扩展性,提供了音频视频质量的零降级和最佳的网络带宽效率。这是Microsoft 推荐的 VDI 部署解决方案。