Citrix Virtual Apps and Desktops

针对 Microsoft Teams(经典版)的优化

注意:

新版 Microsoft Teams 2.1 现已普遍适用于 VDA。此 Microsoft Teams 版本与使用 WebRTC (VDI 1.0) 的 Citrix Microsoft Teams 优化兼容。

从 Citrix Virtual Apps and Desktops 2402 开始,您无需手动配置 msedgewebview2.exe 注册表项,因为它默认已列入允许列表。

新版 Microsoft Teams 现已支持已发布的应用程序。

Citrix 通过使用 Citrix Virtual Apps and Desktops™ 和 Citrix Workspace™ 应用程序为基于桌面的 Microsoft Teams 提供优化。默认情况下,我们将所有必需的组件捆绑到 Citrix Workspace 应用程序和 Virtual Delivery Agent (VDA) 中。

我们针对 Microsoft Teams 的优化包括 VDA 端的 HDX™ 服务以及一个用于与 Microsoft Teams 托管应用程序接口以接收命令的 API。这些组件会打开一个控制虚拟通道 (CTXMTOP) 到 Citrix Workspace 应用程序端的媒体引擎。端点在本地解码并提供多媒体,将 Citrix Workspace 应用程序窗口移回托管的 Microsoft Teams 应用程序中。

身份验证和信令在 Microsoft Teams 托管应用程序上本地进行,就像其他 Microsoft Teams 服务(例如聊天或协作)一样。音频/视频重定向不会影响它们。

CTXMTOP 是一个命令和控制虚拟通道。这意味着媒体不会在 Citrix Workspace 应用程序和 VDA 之间交换。

仅提供客户端提取/客户端渲染。

此视频演示让您了解 Microsoft Teams 在 Citrix 虚拟环境中的工作方式。

Microsoft Teams 优化演示

Microsoft Teams 安装

Citrix 和 Microsoft 建议使用最新可用版本的 Microsoft Teams 并使其保持最新。 发布日期比当前版本发布日期早 90 天以上的 Microsoft Teams 桌面应用程序版本不受支持。 不受支持的 Microsoft Teams 桌面应用程序版本会向用户显示阻止页面并请求更新应用程序。

有关最新可用版本的信息,请参阅Microsoft Teams 应用程序(桌面版和 Mac 版)的更新历史记录

我们建议您遵循 Microsoft Teams 全机安装指南。避免使用将 Microsoft Teams 安装到 AppData 中的 .exe 安装程序。而是通过使用命令行中的 ALLUSER=1 标志将其安装到 C:\Program Files (x86)\Microsoft\Teams 中。

msiexec /i <path_to_msi> /l*v <install_logfile_name> ALLUSER=1 ALLUSERS=1

此示例还使用 ALLUSERS=1 参数。设置此参数后,Microsoft Teams 全机安装程序会显示在控制面板程序和功能中。此外,还会显示在计算机所有用户的 Windows 设置的应用和功能中。然后,所有用户(如果具有管理员凭据)都可以卸载 Microsoft Teams。

了解 ALLUSERS=1ALLUSER=1 之间的区别非常重要。您可以在非 VDI 和 VDI 环境中使用 ALLUSERS=1 参数。仅在 VDI 环境中使用 ALLUSER=1 参数来指定每台计算机的安装。

ALLUSER=1 模式下,Microsoft Teams 应用程序不会在新版本发布时自动更新。我们建议将此模式用于非持久性环境,例如 Windows Server 或 Windows 10 随机/池化目录中的托管共享应用程序或桌面。有关详细信息,请参阅使用 MSI 安装 Microsoft Teams(VDI 安装部分)。

假设您有一个 Windows 10 专用持久性 VDI 环境。您希望 Microsoft Teams 应用程序自动更新,并希望 Microsoft Teams 以每用户方式安装在 Appdata/Local 下。在这种情况下,请使用 .exe 安装程序或不带 ALLUSER=1 的 MSI。

注意:

Citrix 建议在黄金映像中安装 Microsoft Teams 之前安装 VDA。此安装顺序是 ALLUSER=1 标志生效所必需的。如果您在安装 VDA 之前在虚拟机中安装了 Microsoft Teams,请卸载并重新安装 Microsoft Teams。

适用于远程电脑访问

Citrix 建议您在安装 VDA 后安装 Microsoft Teams 版本 1.4.00.22472 或更高版本。否则,您需要注销并重新登录,Microsoft Teams 才能按预期检测到 VDA。版本 1.4.00.22472 及更高版本包含在 Microsoft Teams 启动时和登录时运行的增强逻辑,用于 VDA 检测。这些版本还包括活动会话类型识别(HDX、RDP 或本地连接到客户端计算机)。如果您是本地连接,以前版本的 Microsoft Teams 可能无法检测并禁用某些功能或 UI 元素。例如,分组讨论室、会议和聊天弹出窗口或会议反应。

重要提示:

当您从本地会话漫游到 HDX 会话,并且 Microsoft Teams 在后台保持打开和运行状态时,您必须退出并重新启动 Microsoft Teams 才能正确地与 HDX 优化。 相反,如果您通过优化的 HDX 会话远程使用 Microsoft Teams,请断开 HDX 会话并重新连接到设备上的同一本地 Windows 会话。在办公室工作时,您必须重新启动 Microsoft Teams,以便它能够正确检测远程电脑访问状态(HDX 或本地)。因为 Microsoft Teams 只能在应用程序启动时评估 VDI 模式,而不能在它已经在后台运行时评估。如果不重新启动,Microsoft Teams 可能无法加载弹出窗口、分组讨论室或会议反应等功能。

适用于应用程序分层

如果使用 Citrix App Layering 在不同层中管理 VDA 和 Microsoft Teams 安装,则必须在从命令行使用 ALLUSER=1 标志安装 Microsoft Teams 之前,在 Windows VDA 上创建注册表项。更多信息,请参阅 多媒体 下的《使用 Citrix App Layering 优化 Microsoft Teams》部分。

配置文件管理建议

我们建议将计算机范围安装程序用于 Windows Server 和池化 VDI Windows 10 环境。

当从命令行将 ALLUSER=1 标志传递给 MSI(计算机范围安装程序)时,Microsoft Teams 应用程序将安装在 C:\Program Files (x86) 下(约 300 MB)。该应用程序使用 AppData\Local\Microsoft\TeamsMeetingAddin 存储日志,并使用 AppData\Roaming\Microsoft\Teams(约 600–700 MB)存储用户特定配置、用户界面元素的缓存等等。

重要:

如果不传递 ALLUSER=1 标志,MSI 会将 Teams.exe 安装程序和 setup.json 放置在 C:\Program Files (x86)\Teams Installer 下。注册表项 (TeamsMachineInstaller) 将添加在以下位置:HKEY_LOCAL_MACHINE \SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run

随后的用户登录将改为触发 AppData 中的最终安装。

计算机范围安装程序

以下是在任何 Windows Server 64 位 VM 上安装 Microsoft Teams 计算机范围安装程序所创建的文件夹、桌面快捷方式和注册表示例:

文件夹:

  • C:\Program Files (x86)\Microsoft\Teams
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

桌面快捷方式:

C:\Program Files (x86)\Microsoft\Teams\current\Teams.exe

注册表:

  • HKEY_LOCAL_MACHINE \SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  • HKEY_CURRENT_USER \SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  • 名称:Teams
  • 类型:REG_SZ
  • 值:C:\Program Files (x86)\Microsoft\Teams\current\Teams.exe

注意:

注册表位置因基础操作系统和位数而异。

建议

  • 我们建议通过删除 Microsoft Teams 注册表项来禁用自动启动。这样做可以防止许多同时发生的登录(例如,在工作日开始时)导致 VM 的 CPU 飙升。
  • 如果虚拟桌面没有 GPU/vGPU,我们建议在 Microsoft Teams 设置中设置禁用 GPU 硬件加速以提高性能。此设置 ("disableGpu":true) 存储在 %Appdata%\Microsoft\Teams 中的 desktop-config.json 文件中。您可以使用登录脚本编辑该文件并将值设置为 true
  • 如果使用 Citrix Workspace Environment Management™ (WEM),请启用 CPU 峰值保护以管理 Microsoft Teams 的处理器消耗。

每用户安装程序

使用 .exe 安装程序时,安装过程有所不同。所有文件都放置在 AppData 中。

文件夹:

  • C:\Users\<username>\AppData\Local\Microsoft\Teams
  • C:\Users\<username>\AppData\Local\Microsoft\TeamsPresenceAddin
  • C:\Users\<username>\AppData\Local\Microsoft\TeamsMeetingAddin
  • C:\Users\<username>\AppData\Local\SquirrelTemp
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

桌面快捷方式:

C:\Users\<username>\AppData\Local\Microsoft\Teams\Update.exe ---processStart "Teams.exe"

注册表:

HKEY_CURRENT_USER \SOFTWARE\Microsoft\Windows\CurrentVersion\Run

最佳实践

最佳实践建议基于用例场景。 在非持久性设置中使用 Microsoft Teams 需要配置文件缓存管理器,以实现高效的 Microsoft Teams 运行时数据同步。借助配置文件缓存管理器,用户会话期间会缓存相应的用户特定信息。例如,用户特定信息包括用户数据、配置文件和设置。同步以下两个文件夹中的数据:

  • C:\Users\<username>\AppData\Local\Microsoft\IdentityCache
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

非持久性设置的 Microsoft Teams 缓存内容排除列表

按照 Microsoft 文档中的说明,从 Microsoft Teams 缓存文件夹中排除文件和目录。此操作有助于减小用户缓存大小,从而进一步优化您的非持久性设置。

用例:单会话场景

在此场景中,最终用户一次在一个位置使用 Microsoft Teams。他们不需要同时在两个 Windows 会话中运行 Microsoft Teams。在常见的虚拟桌面部署中,每个用户都被分配到一个桌面,并且 Microsoft Teams 作为单个应用程序部署在虚拟桌面中。 我们建议启用 Citrix Profile 容器,并将 每用户安装程序 中列出的每用户目录重定向到容器中。

  1. 在黄金映像中部署 Microsoft Teams 计算机范围安装程序 (ALLUSER=1)。
  2. 启用 Citrix Profile Management 并使用适当的权限设置用户配置文件存储。
  3. 启用以下 Profile Management 策略设置:文件系统 > 同步 > 配置文件容器 – 要包含在配置文件磁盘中的文件夹列表

    配置文件容器

    在此配置中列出所有每用户目录。您还可以使用 Citrix Workspace Environment Management (WEM) 服务配置这些设置。

  4. 将设置应用于正确的交付组。
  5. 登录以验证部署。

系统要求

最低推荐版本 - Delivery Controller (DDC) 1906.2

如果您使用的是早期版本,请参阅启用 Microsoft Teams 优化

支持的操作系统:

  • Windows Server 2022、2019、2016、2012R2 Standard 和 Datacenter 版本,以及带 Server Core 选项的版本

最低版本 - Virtual Delivery Agent (VDA) 1906.2

支持的操作系统:

  • Windows 11
  • Windows 10 64 位,版本 1607 及更高版本。Citrix Workspace 应用程序 for Windows 2109.1 及更高版本支持 VM 托管应用程序
  • Windows Server 2022、2019、2016 和 2012 R2 (Standard 和 Datacenter 版本)

要求:

  • BCR_x64.msi - 包含 Microsoft Teams 优化代码并从 GUI 自动启动的 MSI。如果您使用命令行界面进行 VDA 安装,请勿将其排除。

推荐版本 – Citrix Workspace 应用程序 for Windows 最新 CR 和最低版本 - Citrix Workspace 应用程序 1907 for Windows

  • Windows 11。
  • Windows 10(32 位和 64 位版本,包括 Embedded 版本)(对 Windows 7 的支持已在版本 2006 停止)(对 Windows 8.1 的支持已在版本 2204.1 停止)。
  • Windows 10 IoT Enterprise 2016 LTSB (v1607) 和 2019 LTSC (v1809)。
  • 支持的处理器 (CPU) 架构:x86 和 x64(不支持 ARM)。
  • 端点要求:大约 2.2–2.4 GHz 双核 CPU,可在点对点视频会议通话期间支持 720p 高清分辨率。
  • 配备 Intel Turbo Boost 或 AMD Turbo Core 的双核或四核 CPU,其基本速度较低(约 1.5 GHz),但可提升至至少 2.4 GHz。
  • 已验证的 HP 瘦客户端:t630/t640、t730/t740、mt44/mt45。
  • 已验证的 Dell 瘦客户端:5070、5470 Mobile TC 和 AIO。
  • 已验证的 10ZiG 瘦客户端:4510 和 5810q。
  • 有关已验证端点的完整列表,请参阅瘦客户端
  • Citrix Workspace 应用程序至少需要 600 MB 的可用磁盘空间和 1 GB RAM。
  • Microsoft .NET Framework 的最低要求是版本 4.8。如果系统中不存在 .NET Framework,Citrix Workspace 应用程序会自动下载并安装它。

管理员可以通过更改 Microsoft Teams 优化策略 来启用/禁用以优化模式启动的 Microsoft Teams。在 Citrix Workspace 应用程序中以优化模式启动的用户无法禁用 Microsoft Teams。

最低版本 - Citrix Workspace 应用程序 2006 for Linux

有关详细信息,请参阅 Citrix Workspace 应用程序 for Linux 文档中的 Microsoft Teams 优化

软件:

  • GStreamer 1.0 或更高版本或 Cairo 2
  • libc++-9.0 或更高版本
  • libgdk 3.22 或更高版本
  • OpenSSL 1.1.1d
  • libnsl
  • Ubuntu 20.04 或更高版本

身份验证增强功能:

硬件:

  • 最低 1.8 GHz 双核 CPU,可在点对点视频会议通话期间支持 720p 高清分辨率
  • 双核或四核 CPU,基础速度为 1.8 GHz,且 Intel Turbo Boost 高速至少为 2.9 GHz

有关已验证端点的完整列表,请参阅 瘦客户端

有关详细信息,请参阅 安装 Citrix Workspace 应用程序的必备条件

您可以通过将 /opt/Citrix/ICAClient/config/module.ini 文件中 VDWEBRTC 字段的值更新为 Off 来禁用 Microsoft Teams 优化。默认值为 VDWEBRTC=On。更新完成后,重新启动会话。(需要 Root 权限)。

最低版本 - Citrix Workspace 应用程序 2012 for Mac

支持的操作系统:

  • macOS Catalina (10.15)。
  • macOS Big Sur 11.0.1 及更高版本。
  • macOS Monterey。

支持的功能:

  • 音频
  • 视频
  • 屏幕共享优化(传入和传出)

注意:

Citrix Viewer 应用程序需要访问 macOS 的“安全性与隐私”偏好设置才能使屏幕共享正常工作。用户可以在 Apple 菜单 > 系统偏好设置 > 安全性与隐私 > 隐私选项卡 > 屏幕录制 中配置此偏好设置,并选择 Citrix Viewer

Microsoft Teams 优化默认情况下可与 Citrix Workspace 应用程序 2012 及更高版本以及 macOS 10.15 配合使用。

如果要禁用 Microsoft Teams 优化,请在终端中运行此命令并重新启动 Citrix Workspace 应用程序:

defaults write com.citrix.receiver.nomas mtopEnabled -bool NO

最低版本 - 在最新版 ChromeOS 上运行的适用于 ChromeOS 的最新版 Citrix Workspace 应用程序

硬件:

  • 处理器性能与 Intel i3 四核 2.4 GHz 或更高。

支持的功能:

  • 音频
  • 视频
  • 屏幕共享优化(传入和传出)- 默认禁用。有关如何启用此功能的说明,请参阅这些设置

单服务器可扩展性

本节提供有关估算单个物理主机可支持的用户数或虚拟机 (VM) 数量的建议和指导。这通常称为 Citrix Virtual Apps™ and Desktops 单服务器可扩展性 (SSS)。在 Citrix Virtual Apps (CVA) 或会话虚拟化环境中,它也通常称为用户密度。其目的是找出在运行主要虚拟机管理程序的单个硬件上可以运行多少用户或 VM。

注意:

本节包含估算 SSS 的指导。此指导是高级别的,可能不一定适用于您的独特情况或环境。真正了解 Citrix Virtual Apps and Desktops SSS 的唯一方法是使用可扩展性或负载测试工具,例如 Login VSI。Citrix 建议仅使用此指导和这些简单规则来快速估算 SSS。但是,Citrix 建议使用 Login VSI 或您选择的负载测试工具来验证结果,尤其是在购买硬件或做出任何财务决策之前。

硬件(受测系统)

  • Dell PowerEdge R740
  • Intel Xeon (Gold) 6126 @ 2.60 GHz(最大睿频 3.70 GHz),每个插槽 12 个核心,双插槽并启用超线程
  • 382 GB RAM
  • 本地 SSD RAID 0 存储(11 块磁盘)6 TB

软件

运行 Citrix Virtual Apps and Desktops 2106 的单个虚拟机(40 个逻辑处理器),搭载 Windows 2019 (TSVDA) VMware ESXi 6.7

术语

  • 知识工作者工作负载:包括 Acrobat Reader、Freemind/Java、照片查看器、Edge 以及 Excel、Outlook、PowerPoint 和 Word 等 MS Office 应用程序。
  • 基准:使用知识工作者工作负载(不含 Microsoft Teams)运行的服务器可扩展性测试。
  • Microsoft Teams 工作负载:知识工作者典型工作负载 + Microsoft Teams。

Microsoft Teams 如何进行压力测试

  • Microsoft Teams 已通过 HDX 优化。因此,所有多媒体处理都卸载到端点或客户端,不属于测量范围。
  • 在工作负载开始之前,所有 Microsoft Teams 进程都会停止或终止。
  • 打开 Microsoft Teams(冷启动)。
  • 测量 Microsoft Teams 加载并获取 Microsoft Teams 主窗口焦点所需的时间。
  • 使用键盘快捷方式切换到聊天窗口。
  • 使用键盘快捷方式切换到日历窗口。
  • 使用键盘快捷方式向特定用户发送聊天消息。
  • 使用键盘快捷方式切换到 Microsoft Teams 窗口。

结果

  • 与基准(137 个用户)相比,Microsoft Teams 工作负载(81 个用户)的可扩展性影响为 40%。
  • 将服务器容量增加约 40%(在 CPU 方面)可恢复与基准工作负载相同的用户数。
  • 与基准相比,Microsoft Teams 工作负载需要额外 20% 的内存。
  • 将每个用户的存储大小增加 512-1024 MB。
  • IOPS 写入增加约 50%,IOPS 读取增加约 100%。Microsoft Teams 对存储速度较慢的环境可能会产生显著影响。

功能矩阵和版本支持

功能 Microsoft Teams(最低版本) VDA(最低版本) 适用于 Windows CR 的 Citrix Workspace 应用程序(最低版本) 适用于 Mac 的 Citrix Workspace 应用程序(最低版本) 适用于 Linux 的 Citrix Workspace 应用程序(最低版本) 适用于 ChromeOS 的 Citrix Workspace 应用程序(最低版本)
音频/视频(P2P 和会议) current version minus 90 days 1906 1907 2009 2004 2105.5
屏幕共享 Current version minus 90 days 1906 1907 2012 2006 2105.5
i. 屏幕指示器红色边框 Current version minus 90 days 1906 2002 2012 2006 No
ii. 将捕获限制为 Desktop Viewer Current version minus 90 days 1906 2009.5 2012 2006 No
iii. 多显示器 Current version minus 90 days 1912 CU6+ 2106 (1) 2106 2106 No
DTMF Current version minus 90 days N/A 2102 2101 2101 2111.1
代理服务器支持 Current version minus 90 days N/A 2012 (2) 2104 (3) 2101 (3) 2305
应用程序共享 Current version minus 90 days 2109 2109.1 2203.1 2209 No
实时字幕 Current version minus 90 days N/A (4) 2109.1 2109 2109 2303
动态 e911 Current version minus 90 days N/A 2112.1 2112 2112 2112
授予控制权 Current version minus 90 days N/A 2112.1 2203.1 No No
请求控制权 Current version minus 90 days N/A 2112.1 2203.1 2203 2303
多窗口 1.5.00.11865 2112, 1912 CU6 (5) 2112.1 2203.1 2203 2303
会议转录 Current version minus 90 days 2112.1, 1912 CU6+ 2112 2203.1 2203 2303
背景模糊 Current version minus 90 days 2112, 1912 CU6+ 2207 2301 2212 2303
  1. 仅在全屏模式下使用 CD Viewer。不支持 SHIFT+F2。
  2. 协商/Kerberos、NTLM、Basic 和 Digest。还支持 Pac 文件。
  3. 仅限匿名。
  4. 如果 VDA 版本为 2112 或更高版本,则实时字幕仅在适用于 Mac 的 Citrix Workspace 应用程序版本为 2203.1、适用于 Linux 的版本为 2203 或适用于 Windows 的版本为 2112 时才有效。这是因为如果 Microsoft Teams 处于单窗口 UI 模式或多窗口模式,实时字幕的行为会有所不同。
  5. 多窗口功能在 VDA 2112 中引入,但已向后移植到 VDA 1912 LTSR CU6 版本。

注意:

  • 适用于 Windows 1912 CU6(或更高版本)的 Citrix Workspace 应用程序中列出的所有功能均适用于适用于 Windows 2203.1 LTSR CU1 的 Citrix Workspace 应用程序。
  • Microsoft 已弃用对 Microsoft Teams 中单窗口模式的支持。为了符合要求,您必须将 VDA 升级到 1912 CU6+ LTSR 和 Citrix Workspace 应用程序 2203 CU2+ 或更高版本,这些版本支持多窗口模式。

启用 Microsoft Teams 优化

要启用 Microsoft Teams 优化,请使用 Microsoft Teams 重定向策略中描述的“管理”策略。此策略默认处于启用状态。除了启用此策略外,HDX 还会检查以验证 Citrix Workspace 应用程序的版本是否至少达到最低要求版本。如果您启用了该策略并且 Citrix Workspace 应用程序版本受支持,则 HKEY_CURRENT_USER\Software\Citrix\HDXMediaStream\MSTeamsRedirSupport 会在 VDA 上自动设置为 1。Microsoft Teams 读取该注册表项以在 VDI 模式下加载。

注意:

如果您使用的是 1906.2 或更高版本的 VDA,或者使用在“管理”控制台 (Studio) 中没有可用策略的旧控制器版本(例如,版本 7.15),您的 VDA 仍然可以进行优化。VDA 中默认启用 Microsoft Teams 的 HDX 优化。

如果您点击关于 > 版本,将显示Citrix HDX Optimized图例:

Citrix Optimized 图例

如果您看到Citrix HDX Not Connected,则表示 Citrix API 已加载到 Microsoft Teams 中。加载 API 是实现重定向的第一步。但堆栈的后续部分存在错误。此错误很可能出现在 VDA 服务或 Citrix Workspace 应用程序中。

未针对 Citrix 优化图例

如果您没有看到任何图例,则表示 Microsoft Teams 未能加载 Citrix API。右键单击通知区域图标并重新启动以退出 Microsoft Teams。请确保“管理”策略未设置为禁止,并且 Citrix Workspace 应用程序版本受支持。

无 Citrix 图例

重要提示:会话重新连接

  • 当连接发生变化时,您可能需要重新启动 Microsoft Teams 才能获得 HDX 优化会话。例如,如果您从不受支持的端点(适用于 iOS、Android 或旧版 Windows/Linux/Mac 的 Workspace 应用程序)漫游到受支持的端点(适用于 Windows/Linux/Mac/ChromeOS/HTML5 的 Workspace 应用程序),反之亦然。
  • 如果您已在 VDA 中使用 Microsoft Teams .exe 安装程序安装了该应用程序,则还需要重新启动 Microsoft Teams。建议将 .exe 安装程序用于持久性 VDI 部署。在这种情况下,当 HDX 会话处于断开连接状态时,Microsoft Teams 可以自动更新。因此,重新连接到 HDX 会话的用户会发现 Microsoft Teams 未优化运行。
  • 当您从本地会话漫游到 HDX 会话时,必须重新启动 Microsoft Teams 才能使用 HDX 进行优化。在远程 PC 访问场景中需要执行此操作。

网络要求

Microsoft Teams 依靠 Microsoft 365 中的媒体处理器服务器进行会议或多方通话。此外,Microsoft Teams 依靠 Microsoft 365 传输中继来处理以下场景:

  • 点对点通话中的两个对等方没有直接连接
  • 参与者没有直接连接到媒体处理器。

因此,对等方与 Microsoft 365 云之间的网络状况决定了通话的性能。有关网络规划的详细指南,请参阅 Microsoft 365 网络连接原则

我们建议评估您的环境,以识别可能影响您的整体云语音和视频部署的任何风险和要求。 使用 Skype for Business 网络评估工具测试您的网络是否已为 Microsoft Teams 做好准备。有关支持信息,请参阅支持

实时传输协议 (RTP) 流量的关键网络建议摘要

  • 从分支机构尽可能直接连接到 Microsoft 365 网络。
  • 规划并提供分支机构的充足带宽。
  • 检查每个分支机构的网络连接和质量。
  • 如果您必须在分支机构使用以下任何一项,请确保 RTP/UDP 流量(由 Citrix Workspace 应用程序中的 HdxRtcEngine.exe 处理)不受阻碍。
    • 绕过代理服务器
    • 网络 SSL 拦截
    • 深度数据包检测设备
    • VPN 回环(如果可能,请使用拆分隧道)

重要提示:VPN 拆分隧道配置

HdxRtcEngine.exe 流量必须从 VPN 隧道中分流,并允许使用用户的本地 Internet 连接直接连接到服务。实现此目的的方式取决于所使用的 VPN 产品和机器平台,但大多数 VPN 解决方案都允许对策略进行一些简单配置以应用此逻辑。有关 VPN 平台特定拆分隧道指南的更多信息,请参阅此 Microsoft 文章

Workspace 应用程序中的 WebRTC 媒体引擎 (HdxRtcEngine.exe) 使用安全实时传输协议 (SRTP) 处理卸载到客户端的多媒体流。SRTP 为 RTP 提供机密性和身份验证。对于此功能,对称密钥(通过 DTLS 协商)用于使用 AES 加密算法加密媒体和控制消息。

建议使用以下指标以获得积极的用户体验:

指标 端点到 Microsoft 365
延迟(单向) < 50 毫秒
延迟 (RTT) < 100 毫秒
数据包丢失 在任何 15 秒间隔内 <1%
数据包到达间隔抖动 在任何 15 秒间隔内 <30 毫秒

有关详细信息,请参阅为 Microsoft Teams 准备组织的网络

对于带宽要求,Microsoft Teams 的优化可以使用各种音频(OPUS/G.722/PCM G711)和视频 (H264) 编解码器。

对等方在通话建立过程中使用会话描述协议 (SDP) Offer/Answer 协商这些编解码器。 Citrix 对每个用户的最低建议如下:

类型 带宽 编解码器
音频(每个方向) 约 90 kbps G.722
音频(每个方向) 约 60 kbps Opus*
视频(每个方向) 约 700 kbps H264 360p @ 30 fps 16:9
屏幕共享 约 300 kbps H264 1080p @ 15 fps
  • Opus 支持从 6 kbps 到 510 kbps 的恒定和可变比特率编码。

Opus 和 H264 是点对点通话和会议通话的首选编解码器。

重要提示:

关于性能,在客户端计算机上,编码比解码更占用 CPU。您可以在适用于 Linux 和 Windows 的 Citrix Workspace app 中硬编码最大编码分辨率。请参阅编码器性能估算器针对 Microsoft Teams 的优化

代理服务器

根据代理的位置,请考虑以下事项:

  • VDA 上的代理配置:

    如果您在 VDA 中配置了显式代理服务器并通过代理将连接路由到 localhost,则重定向将失败。要正确配置代理,您必须在“Internet 选项”>“连接”>“LAN 设置”>“代理服务器”中选择“绕过本地地址的代理服务器”设置,并绕过 127.0.0.1:9002

    如果您使用 PAC 文件,则 PAC 文件中的 VDA 代理配置脚本必须为 wss://127.0.0.1:9002 返回 DIRECT。否则,优化将失败。为确保脚本返回 DIRECT,请使用 shExpMatch(url, "wss://127.0.0.1:9002/*")

  • Citrix Workspace app 上的代理配置:

    如果分支机构配置为通过代理访问 Internet,则以下版本支持代理服务器:

    • 适用于 Windows 的 Citrix Workspace app 2012 版本(Negotiate/Kerberos、NTLM、Basic 和 Digest。还支持 Pac 文件)
    • 适用于 Windows 的 Citrix Workspace app 1912 CU5 版本(Negotiate/Kerberos、NTLM、Basic 和 Digest。还支持 Pac 文件)
    • 适用于 Linux 的 Citrix Workspace app 2101 版本(匿名身份验证)
    • 适用于 Mac 的 Citrix Workspace app 2104 版本(匿名身份验证)

安装了早期版本 Citrix Workspace app 的客户端设备无法读取代理配置。这些设备会将流量直接发送到 Microsoft 365 TURN 服务器。

重要提示:

  • 验证客户端设备是否可以连接到 DNS 服务器以执行 DNS 解析。客户端设备必须能够解析以下 Microsoft Teams 中继服务器的 FQDN:
    • worldaz.relay.teams.microsoft.com
    • inaz.relay.teams.microsoft.com
    • uaeaz.relay.teams.microsoft.com
    • euaz.relay.teams.microsoft.com
    • usaz.relay.teams.microsoft.com
    • turn.dod.teams.microsoft.us
    • turn.gov.teams.microsoft.us

如果 DNS 请求不成功,则与外部用户进行的 P2P 通话以及媒体建立的会议通话将失败。

  • 会议服务器的位置是根据第一个参与者的虚拟桌面位置(而非客户端)选择的。

通话建立和媒体流路径

如果可能,Citrix Workspace app 中的 HDX WebRTC 媒体引擎 (HdxRtcEngine.exe) 会尝试在点对点通话中通过用户数据报协议 (UDP) 建立直接网络安全实时传输协议 (SRTP) 连接。如果 UDP 高端口被阻止,媒体引擎将回退到 TCP/TLS 443。

HDX 媒体引擎支持 ICE、NAT 会话遍历实用程序 (STUN) 和使用 NAT 中继进行遍历 (TURN),用于候选发现和建立连接。此支持意味着端点必须能够执行 DNS 解析。

假设在两个对等点之间或对等点与会议服务器之间没有直接路径,并且您正在加入多方通话或会议。HdxRtcEngine.exe 使用 Microsoft 365 中的 Microsoft Teams 传输中继服务器来联系其他对等点或媒体处理器(会议在此处托管)。您的客户端计算机必须能够访问三个 Microsoft 365 子网 IP 地址范围和四个 UDP 端口(如果 UDP 被阻止,则回退到 TCP/TLS 443)。有关详细信息,请参阅通话设置中的体系结构图和 Office 365 URL 和 IP 地址范围 ID 11

ID 类别 地址 目标端口
11 优化所需 13.107.64.0/18, 52.112.0.0/14, 52.122.0.0/15 UDP: 3478、3479、3480、3481,TCP: 443(回退)

这些范围包括传输中继和媒体处理器,由 Azure 负载均衡器前端。 Microsoft Teams 传输中继提供 STUN 和 TURN 功能,但它们不是 ICE 端点。此外,Microsoft Teams 传输中继不终止媒体、TLS,也不进行任何转码。当它们将流量转发到其他对等点或媒体处理器时,它们可以将 TCP(如果 HdxRtcEngine.exe 使用 TCP)桥接到 UDP。

Workspace app WebRTC 媒体引擎会联系 Microsoft 365 云中最近的 Microsoft Teams 传输中继。媒体引擎使用任播 IP 和端口 3478–3481 UDP(每个工作负载的 UDP 端口不同,尽管可能会发生多路复用)或 443 TCP/TLS 进行回退。通话质量取决于底层网络协议。由于始终建议使用 UDP 而非 TCP,因此我们建议您设计网络以适应分支机构中的 UDP 流量。

如果 Microsoft Teams 以优化模式加载且 HdxRtcEngine.exe 在端点上运行,则 ICE 故障可能会导致通话设置失败或仅单向音频/视频。如果通话无法完成或媒体流不是全双工,请首先检查端点上的 Wireshark 跟踪。有关 ICE 候选收集过程的更多信息,请参阅支持部分中的“收集日志”。

注意:

如果端点没有 Internet 访问权限,则如果用户都在同一 LAN 上,他们可能仍然能够进行点对点通话。会议将失败。在这种情况下,在通话设置开始之前会有 30 秒的超时。

通话设置

使用此体系结构图作为通话流序列的视觉参考。图中指示了相应的步骤。

体系结构

Microsoft Teams 优化工作原理

  1. 启动 Microsoft Teams。
  2. Microsoft Teams 向 O365 进行身份验证。租户策略下推到 Microsoft Teams 客户端,并将相关的 TURN 和信令通道信息中继到应用程序。
  3. Microsoft Teams 检测到它正在 VDA 中运行,并向 Citrix JavaScript API 发出 API 调用。
  4. Microsoft Teams 中的 Citrix JavaScript 打开一个安全的 WebSocket 连接到在 VDA 上运行的 WebSocketService.exe,后者在用户会话中生成 WebSocketAgent.exe。
  5. WebSocketAgent.exe 通过调用 Citrix HDX Microsoft Teams Redirection Service (CtxSvcHost.exe) 实例化一个通用虚拟通道。
  6. Citrix Workspace app 的 wfica32.exe (HDX 引擎) 生成一个名为 HdxRtcEngine.exe 的新进程,这是用于 Microsoft Teams 优化的新 WebRTC 引擎。
  7. Citrix 媒体引擎和 Teams.exe 具有双向虚拟通道路径,可以开始处理多媒体请求。

用户呼叫

  1. 对等方 A 单击呼叫按钮。Teams.exe 与 Microsoft 365 中的 Microsoft Teams 服务通信,与对等方 B 建立端到端信令路径。Microsoft Teams 向 HdxRtcEngine 请求一系列支持的呼叫参数(编解码器、分辨率等,这称为会话描述协议 (SDP) 提议)。然后,这些呼叫参数通过信令路径中继到 Microsoft 365 中的 Microsoft Teams 服务,并从那里中继到另一个对等方。
  2. SDP 提议/应答(单次协商)通过信令通道进行,并且 ICE 连接检查(使用 STUN 绑定请求进行 NAT 和防火墙遍历)完成。然后,安全实时传输协议 (SRTP) 媒体直接在 HdxRtcEngine.exe 和另一个对等方之间流动(如果是会议,则在 Microsoft 365 会议服务器之间流动)。

Microsoft Phone System

Phone System 是 Microsoft 的技术,可在 Microsoft 365 云中通过 Microsoft Teams 实现呼叫控制和 PBX。Microsoft Teams 优化支持 Phone System,使用 Microsoft 365 Calling Plans 或 Direct Routing。通过 Direct Routing,您可以将自己支持的会话边界控制器直接连接到 Microsoft Phone System,而无需任何额外的本地软件。 支持呼叫队列、转接、呼叫转移、保持、静音和恢复呼叫。

DTMF

双音多频 (DTMF) 功能支持以下版本的 Citrix Workspace app(及更高版本):

  • 适用于 Windows 的 Citrix Workspace app 版本 2102
  • 适用于 Windows 的 Citrix Workspace app LTSR 1912 CU5(仅限 Windows 10 OS)
  • 适用于 Linux 的 Citrix Workspace app 版本 2101
  • 适用于 Mac 的 Citrix Workspace app 版本 2101
  • 适用于 ChromeOS 的 Citrix Workspace app 版本 2111.1

支持动态 e911

从版本 2112 开始,Citrix Workspace app 支持动态紧急呼叫。当在 Microsoft Calling Plans、Operator Connect 和 Direct Routing 中使用时,它允许您执行以下操作:

  • 配置和路由紧急呼叫。
  • 通知安全人员。

通知是根据在端点上运行的 Citrix Workspace app 的当前位置提供的,而不是根据在 VDA 上运行的 Microsoft Teams 客户端的位置提供的。

Ray Baum’s law 要求将 911 呼叫者的可调度位置传输到相应的公共安全应答点 (PSAP)。当与以下版本的 Citrix Workspace app 结合使用时,通过 HDX 进行的 Microsoft Teams 优化符合 Ray Baum’s law:

  • 适用于 Windows 的 Citrix Workspace app 版本 2112.1 及更高版本
  • 适用于 Linux 的 Citrix Workspace app 版本 2112 及更高版本
  • 适用于 Mac 的 Citrix Workspace app 版本 2112 及更高版本
  • 适用于 ChromeOS 的 Citrix Workspace app 版本 2112 及更高版本

要启用动态紧急呼叫,管理员必须使用 Microsoft Teams Admin Center 并配置以下内容以创建网络或紧急位置映射:

  • 网络设置
  • 位置信息服务 (LIS)

有关动态紧急呼叫的更多信息,请参阅 Microsoft 的文档

Citrix Workspace app 中继到 Microsoft Teams 的可调度位置信息包括:

  • 使用 Link Layer Discovery Protocol (LLDP) 的 Chassis ID / Port ID,用于 Ethernet/Switch 连接。Ethernet/Switch (LLDP) 支持以下系统:

    • Windows 版本 8.1 和 10
    • macOS,需要 LLDP 启用软件。要下载 LLDP 启用软件,请访问 www.microsoft.com 并搜索 LLDP 启用软件。
    • Linux,需要在 Thin Client 的操作系统 (OS) 发行版中包含 LLDP 库。
  • 安装 Citrix Workspace app 的端点的 WLAN BBSID 和 {IPv4-IPv6; Subnet; MAC Address}。
    • 适用于 Windows、Linux 和 Mac 的 Workspace app 支持基于子网和 WiFi 的位置。
  • 纬度和经度,如果用户在安装 Citrix Workspace app 的 OS 级别授予了权限(权限设置为 HDX RTC Engine)
    • 所有 Workspace app 平台都支持。但是,对于适用于 Linux 的 Citrix Workspace,您必须在 Thin Client 的 OS 发行版中包含 libgps 库(>sudo apt-get install libgps23 gpsd lldpd)。

防火墙注意事项

用户首次使用 Microsoft Teams 客户端启动优化呼叫时,可能会看到有关 Windows 防火墙设置的警告。该警告要求用户允许 HdxTeams.exe 或 HdxRtcEngine.exe (HDX Overlay Microsoft Teams) 进行通信。

防火墙警告

以下四个条目已添加到 Windows Defender 防火墙 > 高级安全控制台的入站规则下。您可以根据需要应用更严格的规则。

防火墙入站规则

Microsoft Teams 和 Skype for Business 共存

您可以将 Microsoft Teams 和 Skype for Business 作为两个具有重叠功能的独立解决方案并行部署。有关详细信息,请参阅了解 Microsoft Teams 和 Skype for Business 共存和互操作性

Citrix RealTime Optimization Pack 和用于 Microsoft Teams 多媒体引擎的 HDX 优化会遵循您环境中设置的配置。示例包括孤岛模式以及 Skype for Business 与 Microsoft Teams 协作。此外,还包括 Skype for Business 与 Microsoft Teams 协作和会议。

外围设备访问权限一次只能授予单个应用程序。例如,RealTime Media Engine 在通话期间访问网络摄像头会锁定成像设备。设备释放后,Microsoft Teams 即可使用该设备。

Microsoft Teams 和 Skype 共存

Citrix SD-WAN™:针对 Microsoft Teams 优化的网络连接

最佳的音频和视频质量需要连接到 Microsoft 365 云的网络,该网络应具有低延迟、低抖动和低数据包丢失。将来自分支机构位置的 Citrix Workspace app 用户的 Microsoft Teams 音频-视频 RTP 流量回传到数据中心,然后再传输到 Internet,可能会增加过多的延迟。这也可能导致 WAN 链路拥堵。Citrix SD-WAN 遵循 Microsoft 365 网络连接原则,优化了 Microsoft Teams 的连接。Citrix SD-WAN 使用基于 Microsoft REST 的 Microsoft 365 IP 地址和 Web 服务以及近端 DNS。此用途旨在识别、分类和引导 Microsoft Teams 流量。

许多地区的商业宽带 Internet 连接都存在间歇性数据包丢失、过度抖动和中断的问题。

当网络状况不稳定或降级时,Citrix SD-WAN 提供两种解决方案来保持 Microsoft Teams 音频-视频质量。

  • 如果您使用 Microsoft Azure,部署在 Azure VNET 中的 Citrix SD-WAN 虚拟设备 (VPX) 可提供高级连接优化。这些优化包括无缝链路故障转移和音频数据包竞速。
  • Citrix SD-WAN 客户可以通过 Citrix Cloud™ Direct 服务连接到 Microsoft 365。此服务为所有 Internet 绑定流量提供可靠且安全的交付。

如果分支机构 Internet 连接的质量不是问题,则可能只需最大限度地减少延迟。将 Microsoft Teams 流量直接从 Citrix SD-WAN 分支设备引导到最近的 Microsoft 365 前门,以最大限度地减少延迟。有关详细信息,请参阅 Citrix SD-WAN Office 365 优化

Citrix SD-WAN

多窗口会议和聊天

您可以在 Windows 中为 Microsoft Teams 使用多个会议或聊天窗口。有关弹出功能的详细信息,请参阅 Microsoft 365 站点上的 Microsoft Teams 聊天和会议弹出窗口

注意:

此功能支持适用于 Windows 2112.1、Mac 2203、Linux 2203、ChromeOS 2303 的 Citrix Workspace app。它需要 VDA 2112 或更高版本,并已向后移植到 1912 CU6+ LTSR。

背景模糊和背景效果

适用于 Windows、Mac、Linux 和 ChromeOS/HTML5 的 Citrix Workspace app 支持通过 HDX 优化在 Microsoft Teams 中实现背景模糊和背景效果。

您可以模糊背景或将其替换为默认图像,避免意外干扰,从而帮助对话集中在轮廓(身体和面部)上。您可以在 P2P 或电话会议中使用此功能。

注意:

此功能与 Microsoft Teams UI/按钮集成。多窗口支持是先决条件,需要将 VDA 更新到 2112 或更高版本。有关详细信息,请参阅多窗口会议和聊天

Microsoft Teams UI 中的背景模糊和效果控制功能需要以下最低版本:

  • Citrix Workspace app 适用于 Windows 2207
  • Citrix Workspace app 适用于 Mac 2301
  • Citrix Workspace app 适用于 Linux 2307
  • Citrix Workspace app 适用于 ChromeOS 2303

限制:

  • 当使用 Microsoft Teams 默认图像替换背景图像时,客户端必须连接到互联网。
  • Microsoft Teams UI 不支持管理员和用户定义的背景图像替换。如果图像也存储在客户端上,则可以使用客户端上的配置设置来配置自定义背景图像。

设置自定义背景图像

仅当您不打算使用 Microsoft Teams UI 来控制此功能,或者管理员想要覆盖默认行为时,才需要以下注册表项。例如,如果端点性能不足,则禁用背景模糊。

在 Windows 上

要设置自定义背景图像,管理员或最终用户必须在客户端或端点上配置以下注册表项:

位置:HKEY_CURRENT_USER\SOFTWARE\Citrix\HDXMediaStream

  • 名称:VideoBackgroundEffect
  • 类型:DWORD
  • 值:0(禁用)、1(启用)、2(背景图像替换)

值为 1 会模糊背景。最终用户或管理员可以设置此值。

值为 2 还需要存在 VideoBackgroundImage 注册表项。只有管理员才能设置此值。仅当您要替换背景图像而非模糊背景时,才需要以下注册表项:

  • 名称:VideoBackgroundImage
  • 类型:REG_SZ
  • 值:my_image_name.jpeg

视频背景图像必须位于 C:\Program Files (x86)\Citrix\ICA Client 目录中。

此注册表配置还可用于在 Citrix Workspace app 2206 中启用背景模糊或图像替换,而无需 Microsoft Teams UI 选择器。换句话说,如果您的环境或 VDA 不支持多窗口,您仍然可以结合 Citrix Workspace app 2206 或更高版本应用 HKCU 注册表变通方法以实现类似结果,尽管用户无法在 HDX 会话或 Microsoft Teams 通话期间控制此功能。

注册表项更改仅在 HDX 会话连接时生效。

在 Mac 上

用户下载的图片位置:/Users/username/Downloads/any_image.png

运行以下命令将自定义图像设置为默认图像:

defaults write com.citrix.HdxRtcEngine VideoBackgroundEffect -int 2

defaults write com.citrix.HdxRtcEngine VideoBackgroundImage -string "/Users/username/Downloads/any_image.png"

在 Linux 上

用户下载的图片位置:/home/username/Downloads/any_image.jpg

创建文件 /var/.config/citrix/hdx_rtc_engine/config.json,并以 JSON 格式添加以下配置键。例如,

{

"VideoBackgroundEffect":2,

"VideoBackgroundImage":"/home/username/Downloads/any_image.jpg"

}

在 HTML5 上

  1. 导航到 HTML5Client 文件夹中的 configuration.js 文件。
  2. 添加 backgroundEffects 属性,并将其设置为 true。例如,

    'features' : {
        'msTeamsOptimization' :
        {
            'backgroundEffects' : true
        }
    }
    <!--NeedCopy-->
    
  3. 保存更改。

客户端 CPU 消耗注意事项

虽然模糊功能对 CPU 的消耗不大,但您仍会看到消耗量有所增加。例如,在配备 4 核、1.5 GHz Intel® Pentium® Silver 芯片(TurboBoost 可达 2.8 GHz)的瘦客户端上,背景模糊功能会使 CPU 使用率增加约 2%。平均 CPU 使用率低于 20%。

Microsoft Teams 中的画廊视图和活动发言人

Microsoft Teams 支持画廊大型画廊同框模式布局。

Microsoft Teams 以 2x2 网格显示四名参与者的视频流(称为画廊)。在这种情况下,Microsoft Teams 会向客户端设备发送四个视频流进行解码。当超过四名参与者共享视频时,屏幕上只会显示最后四位最活跃的发言人。

Microsoft Teams 还提供最大 7x7 网格的大型画廊视图。因此,Microsoft Teams 会议服务器会合成单个视频源并将其发送到客户端设备进行解码,从而降低 CPU 消耗。这种单一的矩阵式视频源也可能包含用户的自预览视频。

最后,Microsoft Teams 支持同框模式,这是新会议体验的一部分。Microsoft Teams 利用 AI 分割技术将参与者数字地放置在共享背景中,使所有参与者置身于同一礼堂。

用户可以在电话会议期间,通过在省略号菜单中选择画廊大型画廊同框模式布局来控制这些模式。

Video layout

支持视频宽高比限制(适用于 Windows 2102 的 Citrix Workspace 应用程序、适用于 Linux 2106 的 Citrix Workspace 应用程序、适用于 MAC 2106 及更高版本的 Citrix Workspace 应用程序):

  • 在画廊/大型画廊视图中提供填充到帧选项。此选项会裁剪视频大小以适应子窗口。另一方面,适应到帧会在视频两侧显示黑边(信箱模式),因此不会进行裁剪。

下表提供了画廊和大型画廊布局的比较:

  画廊视图 2x2(默认) 大型画廊视图
布局/网格 显示一个 2x2 网格,其中包含四名参与者的视频流。屏幕上仅显示最后四位最活跃的发言人,其他参与者不显示在网格中。 显示一个 7x7 网格,其中包含 49 名参与者的视频流。
混合技术 媒体路由器将每位参与者的独立流转发给每个用户。 中央会议服务器混合并转码所有音频或视频,为每位参与者创建定制的复合布局。此操作会引入一些额外的延迟。
活动发言人 新的活动发言人会替换网格中最不活跃的发言人。 显示所有参与者,无论他们是活跃还是不活跃。
端点编码 如果启用了 Simulcast,一个或多个视频流可能会在端点进行编码。有关 Simulcast 支持的更多信息,请参阅Simulcast 如果启用了 Simulcast,一个或多个视频流可能会在端点进行编码。有关 Simulcast 支持的更多信息,请参阅Simulcast
端点解码 每位参与者最多可获得四个独立的媒体流。这会增加端点上 HdxRtcEngine.exe 的 CPU 消耗(用于解码/渲染)。 每位参与者仅获得一个音频和视频流。此设置可降低端点上的 CPU 消耗。
最大分辨率 720p。当四名参与者共享视频时,每个视频源的最大分辨率为 360p。如果少于四名参与者共享视频,则每个视频源的分辨率可能会更高。 复合布局或混合为 720p。在复合布局中,每个参与者不需要高质量视频流。由于此条件,每个发送方都会降低分辨率或上传比特率。
“慢速用户”问题 发送方将每种模式(音频/视频/屏幕共享)的质量修改为参与者中最低的通用网络质量。然后,此多媒体流会转发给所有其他参与者。因此,网络状况不佳的参与者会影响通话中其他所有人的质量。 不易受最低通用网络质量场景的影响。会议服务器根据各个参与者的网络状况提供不同的质量。
自预览 实时显示您自己的小缩略图。 以缩略图形式显示您自己,并与其余视频源混合。因此,您可能会看到自己被包含在主视频布局中,并带有一些额外的延迟。

Microsoft Teams 中的屏幕共享

Microsoft Teams 依赖于基于视频的屏幕共享 (VBSS),可使用 H264 等视频编解码器有效地编码正在共享的桌面,并创建高清流。借助 HDX 优化,传入的屏幕共享被视为视频流。

从适用于 Windows、Linux、Mac 的 Citrix Workspace app 2109 或更高版本以及适用于 ChromeOS 的 Citrix Workspace app 2303 开始,用户可以同时共享其屏幕和视频摄像头。

在早期版本中,如果您正在进行视频通话,并且其他参与者开始共享桌面,则原始摄像头视频源会暂停。取而代之的是,屏幕共享视频源会显示。参与者必须手动恢复摄像头共享。

PowerPoint Live 注意事项

如果您正在从 PowerPoint Live 共享内容,则不存在此限制。在这种情况下,其他参与者仍然可以看到您的网络摄像头和内容,并且可以来回导航以查看其他幻灯片。在此场景中,幻灯片在 VDA 上呈现。要访问 PowerPoint Live 幻灯片组,请单击“共享托盘”按钮并选择建议的 PowerPoint 幻灯片之一,或者单击“浏览”并在您的计算机或 OneDrive 中查找 PowerPoint 文件。

出站屏幕共享也已优化并卸载到 Citrix Workspace app。在这种情况下,媒体引擎仅捕获并传输 Citrix Desktop Viewer (CDViewer.exe) 窗口,并在其周围绘制红色边框。任何与 Desktop Viewer 重叠的本地应用程序都不会被捕获。

注意

在适用于 Mac 的 Citrix Workspace app 中设置特定权限以启用屏幕共享。有关详细信息,请参阅系统要求

已知限制:

  • 如果 Desktop Viewer 被禁用或正在使用 Desktop Lock,则 Microsoft Teams 屏幕选择器中无法进行多显示器选择。Desktop Viewer 可能会通过编辑 .ICA 文件模板或 StoreFront web.config 来禁用。SHIFT+F2 热键与多显示器屏幕共享不兼容。
  • 在早于 2106 的 Workspace app 版本中,仅共享主显示器。将虚拟桌面中的应用程序拖动到主显示器,以便通话中的其他参与者可以看到它。
  • 如果您使用虚拟显示器布局功能(单个物理显示器的逻辑分区)配置 Citrix Workspace app,则多显示器屏幕共享可能无法工作。在这种情况下,所有虚拟显示器都将作为复合图像共享。
  • 适用于 Windows 的旧版本 Citrix Workspace app(1907 至 2008)还会共享在客户端计算机中运行的本地应用程序。仅当本地应用程序覆盖在 Desktop Viewer 之上时,才能进行此共享。此行为已在 2009.6 或更高版本以及 1912 CU5 或更高版本中移除。
  • 在屏幕共享期间,如果您从窗口模式切换到全屏模式,屏幕共享将停止。您必须停止并再次共享才能使屏幕共享工作。
  • 无法将共享控件固定到优化版 Microsoft Teams 中的特定位置。
  • 共享最小化的应用程序时,应用程序的标题栏也可能被共享。

屏幕共享

从无缝应用程序进行屏幕共享:

如果您将 Microsoft Teams 发布为独立的无缝应用程序,屏幕共享将捕获物理端点的本地桌面。需要 Citrix Workspace app 最低版本 1909。

应用程序共享

从适用于 Windows 的 Citrix Workspace app 2112.1 和 VDA 2112 开始,Microsoft Teams 支持应用程序共享。

从适用于 Windows 的 Citrix Workspace app 2109、Mac 2203、Linux 2209 和 VDA 2109 开始,Microsoft Teams 支持共享在虚拟会话中运行的特定应用程序的屏幕。您还可以使用优化版 Microsoft Teams 共享自定义内部应用程序,例如 Java。要共享特定应用程序:

  1. 导航到远程会话中的 Microsoft Teams 应用程序。
  2. 在 Microsoft Teams UI 中单击“共享内容”。
  3. 选择要在会议中共享的应用程序。您选择的应用程序周围会出现红色边框,通话中的参与者可以看到共享的应用程序。

要共享其他应用程序,请再次单击“共享内容”并选择一个新应用程序。

如果要禁用应用程序共享,请在 VDA 上的 HKLM\SOFTWARE\Citrix\Graphics 中创建以下注册表项: 名称:UseWsProvider 类型:DWORD 值:0

注意:

  • 如果您最小化应用程序,Microsoft Teams 将显示共享应用程序的最后一张图像。您可以最大化窗口以恢复屏幕共享。
  • 屏幕共享取决于 VDA 侧的窗口捕获。然后,内容以最大速率中继到 Citrix Workspace app。最大速率为每秒 30 帧。Citrix Workspace app 将内容转发给参与者或会议服务器。

Microsoft Teams 的应用程序共享

特定应用程序屏幕共享的已知限制:

  • 屏幕共享应用程序时,鼠标指针不可见。
  • 如果您在共享应用程序时将其最小化,则屏幕选择器中仅显示应用程序图标。应用程序的缩略图不会在屏幕选择器中预览。您无法共享内容,并且红色边框在您最大化应用程序之前不会出现。
  • LAA 应用程序在 VDA 中优化版 Microsoft Teams 中显示可与桌面应用程序共享的应用程序列表。但是,当您从列表中选择应用程序时,结果可能不符合预期。

与应用程序保护的兼容性 特定应用程序的屏幕共享与 HDX 优化版 Microsoft Teams 中的应用程序保护功能兼容。如果您从启用了应用程序保护的交付组启动应用程序或桌面,则可以屏幕共享特定应用程序。

当您在 Microsoft Teams UI 中单击“共享内容”时,屏幕选择器会移除“桌面”选项。您只能选择“窗口”选项来共享任何打开的应用程序。

注意:

如果您使用的是适用于 Windows 2202 或更早版本的 Citrix Workspace 应用程序,则在从启用了应用程序保护的交付组启动应用程序或桌面时,无法看到传入的视频或屏幕共享。

在 Microsoft Teams 中授予和请求控制权

此功能在以下版本的 Citrix Workspace 应用程序中受支持(不依赖于 VDA 版本或操作系统、单会话或多会话):

  • 适用于 Windows 2112.1 或更高版本的 Citrix Workspace 应用程序
  • 适用于 Mac 2203.1 或更高版本的 Citrix Workspace 应用程序
  • 适用于 Linux 2203 或更高版本的 Citrix Workspace 应用程序
  • 适用于 ChromeOS 2303 或更高版本的 Citrix Workspace 应用程序

在 Microsoft Teams 通话期间,当参与者共享屏幕时,您可以请求控制权。获得控制权后,您可以对共享屏幕进行选择、编辑或其他键盘和鼠标操作。

要在共享屏幕时获取控制权,请单击 Microsoft Teams UI 中的“请求控制”按钮。共享屏幕的会议参与者可以允许或拒绝您的请求。

在您拥有控制权时,可以对共享屏幕进行选择、编辑和其他修改。对于这些操作,您可以使用键盘和鼠标。完成后,单击“请求控制”。

限制:

  • 如果用户正在共享单个应用程序(也称为应用程序共享),则授予和请求控制权不可用。必须共享整个桌面或显示器。
  • 将控制栏固定到特定位置的功能不可用。

Microsoft Teams 中的外设

当 Microsoft Teams 优化处于活动状态时,Citrix Workspace 应用程序会访问外设(耳机、麦克风、摄像头、扬声器等)。然后,外设会在 Microsoft Teams UI(设置 > 设备)中正确列出。

Microsoft Teams 的优化模式

Microsoft Teams 不直接访问设备。相反,它依赖于 Workspace 应用程序 WebRTC 媒体引擎来获取、捕获和处理媒体。Microsoft Teams 列出设备供用户选择。

在 Microsoft Teams 处于活动状态时插入的外设默认情况下不会被选中。您必须从 Microsoft Teams UI 的“设置”>“设备”屏幕手动选择外设。选择外设后,Microsoft Teams 会缓存外设信息。因此,当您从同一端点重新连接到会话时,外设会自动选中。

建议:

  • 带有内置回声消除功能的 Microsoft Teams 认证耳机。在带有额外外设的设置中,如果麦克风和扬声器是单独的设备,可能会出现回声。例如,带有内置麦克风的网络摄像头和带有扬声器的显示器。使用外部扬声器时,请将其尽可能远离麦克风。此外,请将它们远离任何可能将声音折射到麦克风中的表面。有关详细信息,请访问 www.microsoft.com 并搜索 Microsoft Teams 认证耳机。
  • Microsoft Teams 认证摄像头,尽管 Skype for Business 认证外设与 Microsoft Teams 兼容。有关详细信息,请访问 并搜索 Microsoft Teams 认证摄像头和 Skype for Business 认证外设。
  • Citrix Workspace 应用程序媒体引擎无法利用执行板载 H.264 编码的摄像头(UVC 1.1 和 1.5)进行 CPU 卸载。

注意:

适用于 Windows 的 Workspace 应用程序 2009.6 现在可以获取具有 24 位音频格式或频率高于 96 kHz 的外设。

HdxTeams.exe(在适用于 Windows 2009 或更早版本的 Citrix Workspace 应用程序中)仅支持以下特定的音频设备格式(通道、位深度和采样率):

  • 播放设备:最多 2 个通道,16 位,频率高达 96,000 Hz
  • 录音设备:最多 4 个通道,16 位,频率高达 96,000 Hz

即使一个扬声器或麦克风与预期设置不匹配,Microsoft Teams 中的设备枚举也会失败,并且在“设置”>“设备”下显示“”。

Webrpc 日志在 HdxTeams.exe 中显示此类信息:

Mar 27 20:58:22.885 webrtcapi.WebRTCEngine Info: init. initializing...

Mar 27 20:58:23.190 webrtcapi.WebRTCEngine Error: init. couldn't create audio module!

作为一种解决方法,请禁用特定设备或:

  1. 打开“声音控制面板”(mmsys.cpl)。
  2. 选择播放或录音设备。
  3. 转到“属性 > 高级”并将设置更改为受支持的模式。

回退模式

如果 Microsoft Teams 未能以优化 VDI 模式加载(在 Microsoft Teams/关于/版本中显示“Citrix HDX 未连接”),VDA 将回退到旧版 HDX 技术。旧版 HDX 技术可能是网络摄像头重定向以及客户端音频和麦克风重定向。如果您使用的 Workspace 应用程序版本/平台操作系统不支持 Microsoft Teams 优化,则回退注册表项不适用。

在回退模式下,外设会映射到 VDA。外设在 Microsoft Teams 应用程序中显示,就像它们是本地连接到虚拟桌面一样。

您现在可以通过在 VDA 中设置注册表项来精细控制回退机制。有关详细信息,请参阅注册表管理的功能列表中的Microsoft Teams 回退模式

此功能需要 Microsoft Teams 1.3.0.13565 或更高版本。

要确定您在 Microsoft Teams 应用程序中查看“设置 > 设备”选项卡时是处于优化模式还是未优化模式,主要区别在于摄像头名称。如果 Microsoft Teams 以未优化模式加载,则会启动旧版 HDX 技术。网络摄像头名称带有 Citrix HDX 后缀,如以下图形所示。与优化模式相比,扬声器和麦克风设备名称可能略有不同(或被截断)。

Microsoft Teams 的未优化模式

使用旧版 HDX 技术时,Microsoft Teams 不会将音频、视频和屏幕共享处理卸载到端点的 Citrix Workspace 应用程序 WebRTC 媒体引擎。相反,HDX 技术使用服务器端渲染。启用视频时,预计 VDA 上的 CPU 消耗会很高。实时音频性能可能不理想。

已知限制

Citrix 限制

Citrix Workspace app 的限制:

  • HID 按钮 - 不支持接听和结束通话。支持调高和调低音量。
  • Microsoft Teams 管理中心中的 QoS 设置不适用于 VDI 用户。
  • 用户在使用 VDA 上的截图工具时,无法截取 Microsoft Teams 内容的屏幕截图。但是,如果在客户端使用截图工具,则可以捕获内容。

VDA 上的限制:

  • 当您将 Citrix Workspace app 高 DPI 设置配置为 Yes 时,重定向的视频窗口会显示错位。当显示器的 DPI 缩放因子设置为 100% 以上时,会出现此限制。

Citrix Workspace app 和 VDA 上的限制:

  • 您只能使用客户端计算机上的音量条控制优化通话的音量,而不能在 VDA 上控制。

Simulcast

Simulcast 支持已针对 Windows 和 Mac 上的优化 Microsoft Teams 视频会议通话启用。对于 Linux,请咨询您的瘦客户端供应商。 借助 Simulcast,通过调整到适当的分辨率,可以改善不同端点上视频会议通话的质量和体验,从而为所有呼叫者提供最佳通话体验。

通过这种改进的体验,每个用户可能会根据端点功能、网络条件等多种因素,以不同的分辨率(例如,720p、360p 等)传输多个视频流。接收端点随后会请求其可以处理的最高质量分辨率,从而为所有用户提供最佳视频体验。

注意:

此功能仅在 Microsoft Teams 发布更新后可用。有关预计发布时间 (ETA) 的信息,请访问 https://www.microsoft.com/ 并搜索 Microsoft 365 路线图。当 Microsoft 发布更新后,您可以查看 CTX253754 以获取文档更新和公告。

Microsoft 限制

  • 不支持 3x3 画廊视图。此为 Microsoft Teams 依赖项 – 请联系 Microsoft 了解 3x3 网格的预计发布时间。
  • 与 Skype for Business 的互操作性仅限于音频通话,不支持视频模式。
  • 传入和传出视频流的最大分辨率为 720p。
  • 不支持 PSTN 呼叫回铃音。
  • 不支持直接路由的媒体旁路。
  • 不支持广播和直播活动的制作人及演示者角色。支持参与者角色,但未优化(而是在 VDA 上呈现)。
  • 不支持 Microsoft Teams 中的放大和缩小功能。
  • 不支持基于位置的路由和媒体旁路。
  • 不支持呼叫合并(用户界面中不显示此选项)。

Citrix 和 Microsoft 限制

  • 进行屏幕共享时,包括系统音频 选项不可用。
  • ChromeOS 不支持 Simulcast。

即将推出的 Microsoft Teams 单窗口 EOL

Microsoft 将于 2024 年 1 月 31 日停止对使用 VDI Microsoft Teams 优化时的单窗口 UI 的 Microsoft Teams 支持,并仅支持多窗口体验。Microsoft 已于 2023 年 9 月 8 日在 M365 管理中心发布了此弃用通知(帖子 ID:MC674419)。 有关多窗口功能的公开详细信息,请参阅技术社区文章:Microsoft Teams 中的新会议和通话体验

注意:

Citrix 建议您将 VDA 和 Citrix Workspace app 升级到受支持的版本,以继续在优化模式下使用 Microsoft Teams 进行视频和屏幕共享。如果您不升级基础架构和端点以支持多窗口,则您的通话、视频通话和屏幕共享将变为非优化状态。这可能会导致通话质量问题、延迟增加以及服务器负载增加。

下表说明了在 Citrix VDI 上继续使用 Microsoft Teams 优化通话所需的 VDA 和 Citrix Workspace app 的最低版本、LTSR 版本和推荐版本:

组件 最低版本 (1) LTSR 支持版本 (2) 推荐版本 (3)
Microsoft Teams 1.5.00.11865 不适用 最新
VDA 1912 CU6 LTSR, 2109 CR, 2203 LTSR 1912 CU8+, 2203 LTSR CU2+ (4) 2308 CR+
Citrix Workspace app for Windows 2112.1 CR 2203 CU2+ (4) 2309 CR+
Citrix Workspace app for Mac 2203 CR 不适用 2308 CR+
Citrix Workspace app for Linux 2202 CR 不适用 2308 CR+
Citrix Workspace app for ChromeOS or HTML5 2303 CR 不适用 2309 CR+

注意:

  1. 最低版本:这是首次引入多窗口功能的版本。此处列出的一些最低版本可能已终止生命周期 (EOL)。
  2. LTSR 支持版本:这是 Citrix 支持多窗口功能的 LTSR 版本。这些 LTSR 版本的旧版本可能仍可运行,但一旦发布新的 LTSR CU 版本,这些版本将不再提供支持。有关 LTSR 支持策略的更多信息,请参阅 https://support.citrix.com/support-home/kbsearch/article?articleNumber=CTX205549/faq-citrix-virtual-apps-and-desktops-and-citrix-hypervisor-long-term-service-release-ltsr
  3. 推荐版本:这是 Citrix 推荐用户/客户升级其软件时使用的软件版本。这些都是 CR 版本。
  4. VDA 和 CWA 基础版本的 2203 LTSR 版本包含多窗口功能。这些版本已被最新的 CU 取代,后者是官方支持的版本。客户可以自行决定继续使用这些不受支持的版本。Citrix 鼓励使用 LTSR 版本的客户升级到最新的 CU。

WebRTC 中 SDP 格式(方案 B)的弃用公告

Citrix 计划在未来的版本中弃用 WebRTC 对当前 SDP 格式(Plan B)的支持。为支持优化的 Microsoft Teams 功能,必须在 WebRTC 中使用 Unified Plan。

受影响的产品

在 Citrix Workspace Application 的未来版本中,即将发布的 Citrix Workspace app 版本与 Citrix Workspace app 2108 或更早版本之间的端点通话将不受支持。此通话不兼容性包括 1912 LTSR Citrix Workspace app 客户端 (CWA)。以下 CWA 客户端受到影响:

  • 适用于 Windows 的 Citrix Workspace app
  • 适用于 Linux 的 Citrix Workspace app
  • 适用于 Mac 的 Citrix Workspace app
  • 适用于 Chrome 的 Citrix Workspace app

Plan B 的替代方案

如果您运行的 Citrix Workspace app 版本低于 2109,则必须升级到受支持的版本(最好是最新的 CR 版本)。否则,与未来版本或更新的端点进行的任何通话都将无法连接。如果联合通信伙伴尚未升级其 Citrix Workspace,则未来版本与您的联合通信伙伴之间的通话也可能无法完成。

Citrix Workspace app 2108 版本已于 2023 年 3 月结束支持,必须升级到更新的版本。有关更多信息,请参阅 Workspace App 以了解 Citrix Workspace app 版本支持的详细信息。

有关 Plan B 弃用的更多信息,请参阅 WebRTC 文档。

更多信息