Citrix Virtual Apps and Desktops 服务

Microsoft Teams 的优化

重要:

Microsoft Teams 的优化至少需要 Microsoft Teams 版本 1.2.00.31357。

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

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

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

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

仅客户端提取/客户端呈现可用。

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

Microsoft Teams 演示版的优化

Microsoft Teams 安装

注意:

我们建议先安装 VDA,然后在黄金映像中安装 Microsoft Teams。需要采用此安装顺序,才能使 ALLUSER=1 标志生效。如果您改为先在虚拟机中安装 Microsoft Teams 再安装 VDA,请卸载并重新安装 Microsoft Teams。如果您使用的是 App Layering,请参阅面向 App Layering 了解更多详细信息。

我们建议您遵循 Microsoft Teams 计算机范围的安装准则,并避免使用在 AppData 中安装 Microsoft Teams 的 .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 环境中使用 ALLUSERS=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。

面向 App Layering

如果使用 Citrix App Layering 管理不同层中的 VDA 和 Microsoft Teams 安装,请在使用 ALLUSER=1 安装 Microsoft Teams 之前在 Windows 中部署此注册表项。有关信息,请参阅通过注册表管理的功能列表中的借助 Citrix App Layering 优化 Microsoft Teams

Profile Management 建议

我们建议在 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 2016 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

建议

  • 我们建议通过删除 Microsoft Teams 注册表项来禁用自动启动。这样做可以防止同时发生许多登录(例如,在工作日开始时)增加 VM 的 CPU。
  • 如果虚拟桌面没有 GPU/vGPU,我们建议在 Microsoft Teams 的设置中设置禁用 GPU 硬件加速以提高性能。此设置 ("disableGpu":true) 存储在 desktop-config.json 中的 %Appdata%\Microsoft\Teams 中。可以使用登录脚本编辑该文件并将值设置为 true
  • 如果使用 Citrix Workspace Environment Management (WEM),请启用 CPU Spikes Protection(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 Teams 缓存文件夹 %AppData%/Microsoft/Teams 中排除以下项目。排除这些项目有助于减少用户缓存大小,从而进一步优化非持久性设置。

排除列表 - 文件

  • Roaming\Microsoft\Teams\* .txt

排除列表 - 目录

  • Roaming\Microsoft\Teams\Logs
  • Roaming\Microsoft\Teams\media-stack
  • Roaming\Microsoft\Teams\Service Worker\CacheStorage
  • Roaming\Microsoft\Teams\Application Cache
  • Roaming\Microsoft\Teams\Cache
  • Roaming\Microsoft\Teams\GPUCache
  • Roaming\Microsoft\Teams\meeting-addin\Cache(对于 Outlook 中缺少加载项的问题至关重要)

用例:单会话场景

在这种情况下,最终用户一次在一个位置使用 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 2019、2016、2012 R2 Standard Edition 和 Datacenter Edition,包含服务器核心选项

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

支持的操作系统:

  • Windows 10 64 位,版本为 1607 及更高版本。(不支持 VM 托管应用程序。)
  • Windows Server 2019、2016 和 2012 R2(Standard Edition 和 Datacenter Edition)。

要求:

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

推荐的版本 - 适用于 Windows 的 Citrix Workspace 应用程序 2009,最低版本 - 适用于 Windows 的 Citrix Workspace 应用程序 1907

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

最低版本 - 适用于 Linux 的 Citrix Workspace 应用程序 2006

有关详细信息,请参阅 2006 中的新增功能中的 Microsoft Teams 优化

软件:

  • GStreamer 1.0 或更高版本或 Cairo 2
  • libc++-9.0 或更高版本
  • libgdk 3.22 或更高版本
  • OpenSSL 1.1.1d
  • x64 Linux 发行版

硬件:

  • 最低 1.8 GHz 双核 CPU,可在点对点视频会议通话期间支持 720p HD 分辨率
  • 双核或四核 CPU,基本速度为 1.8 GHz,并采用至少为 2.9 GHz 的高速英特尔睿频加速技术

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

最低版本 - 适用于 Mac 的 Citrix Workspace 应用程序 2012

支持的操作系统:

  • macOS Catalina (10.15)。
  • macOS Big Sur Beta 8 仅在测试环境中使用。请勿在生产环境中使用。

支持的功能:

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

如果用户具有 Citrix Workspace 应用程序 2012 或更高版本以及 macOS 10.15,则默认情况下,Microsoft Teams 优化会起作用。

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

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

启用 Microsoft Teams 优化

要为 Microsoft Teams 启用优化,请使用 Microsoft Teams 重定向策略中介绍的“管理”控制台策略。默认情况下它处于状态。除启用此策略外,HDX 还会进行检查,以验证 Citrix Workspace 应用程序的版本至少是所需的最低版本。如果启用了此策略并且支持 Citrix Workspace 应用程序的版本,HKEY_CURRENT_USER\Software\Citrix\HDXMediaStream\MSTeamsRedirSupport 注册表项将在 VDA 上自动设置为 1。Microsoft Teams 读取在 VDI 模式下加载的密钥。

注意:

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

如果单击关于 > 版本,则会显示 Citrix HDX Optimized(Citrix HDX 已优化)图例:

“已针对 Citrix 优化”图例

如果您看到 Citrix HDX 未连接,Citrix API 将加载到 Microsoft Teams 中。加载 API 是迈向重定向的第一步。但是堆栈的后面部分存在错误。此错误很可能发生在 VDA 服务或 Citrix Workspace 应用程序中。

“未针对 Citrix 优化”图例

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

“无 Citrix”图例

网络要求

Microsoft Teams 依赖 Office 365 中的媒体处理器服务器进行会议或多方呼叫。Microsoft Teams 依赖于 Office 365 传输中继处理以下场景:

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

因此,对端与 Office 365 云之间的网络运行状况决定通话的性能。

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

实时协议 (RTP) 流量的关键网络建议汇总

  • 尽可能直接从分支机构连接到 Office 365 网络。
  • 如果必须在分支机构使用以下任何内容,请确保 RTP/UDP Teams 流量不受阻碍。HdxTeams.exe 不支持在端点上配置的显式代理。
    • 绕过代理服务器
    • 网络 SSL 拦截
    • 深度包检测设备
    • VPN 发夹(如有可能,使用拆分通道)
  • 规划并提供足够的带宽。
  • 检查每个分支机构的网络连接性和质量。

Workspace 应用程序 (HdxTeams.exe) 中的 WebRTC 媒体引擎对卸载到客户端的多媒体数据流使用安全实时传输协议 (SRTP)。SRTP 通过使用对称密钥(128 位)加密媒体和控制消息,并在计数器模式下使用 AES 加密密码,为 RTP 提供机密性和身份验证。

建议使用以下指标来保证正面的用户体验:

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

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

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

在通话建立过程中,对端使用会话描述协议 (SDP) 请求应答来协商这些编解码器。 Citrix 对每位用户的最低建议如下:

类型 Bandwidth(带宽) 编解码器
音频(单向) 大约 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 是两个优化的 VDI 用户之间的点对点通话的首选编解码器。

G.722 和 H264 是加入会议的 VDI 用户的首选编解码器。

代理服务器

请注意以下事项,具体取决于代理的位置:

  • VDA 上的代理配置:

    如果在 VDA 中配置了显式代理服务器并通过代理将连接路由到 localhost,重定向将失败。要正确配置代理服务器,必须在 Internet 选项 > 连接 > 局域网设置 > 代理服务器中选择对于本地地址不使用代理服务器设置,然后确保不使用 127.0.0.1:9002

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

  • Citrix Workspace 应用程序上的代理配置:

    如果分支机构配置为通过代理访问 Internet,这些应用程序支持代理服务器:

    • 适用于 Windows 的 Citrix Workspace 应用程序 2012(协商/Kerberos、NTLM、 Basic 和 Digest)
    • 适用于 Linux 的 Citrix Workspace 应用程序 2101 版(匿名身份验证)
    • 适用于 Mac 的 Citrix Workspace 应用程序 2104 版本(匿名身份验证)

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

重要:

验证客户端设备是否可以连接到 DNS 服务器以执行 DNS 解析。客户端设备必须能够解析三个 Microsoft Teams TURN 服务器的 FQDN:worldaz.turn.teams.microsoft.comusaz.turn.teams.microsoft.comeuaz.turn.teams.microsoft.com

通话建立和媒体流路径

如有可能,Citrix Workspace 应用程序 (HdxTeams.exe) 中的 HDX Media Engine 会尝试在点对点通话中通过用户数据报协议 (UDP) 建立直接网络安全实时传输协议 (SRTP) 连接。如果 UDP 端口被阻止,Media Engine 将回退到 TCP 443。

HDX Media Engine 支持 ICE、Session Traversal Utilities for NAT (STUN) 和 Traversal Using Relays around NAT (TURN) 进行候选发现和建立连接。

假设两个对等方之间或对等方与会议服务器之间没有直接路径,例如用户是否加入多方通话或会议。HdxTeams.exe 使用 Office 365 中的 Microsoft Teams 传输中继服务器访问其他对等节方或媒体处理器(用于举办会议)。用户的客户端计算机必须具有两个 Office 365 子网 IP 地址范围和 4 个 UDP 端口的访问权限。有关详细信息,请参阅通话设置中的体系结构图和 Office 365 URL 和 IP 地址范围 ID 11

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

这些范围包含传输中继和媒体处理器。 Microsoft Teams T传输中继提供 STUN 和 TUN 功能,但它们不是 ICE 端点此外,Microsoft Teams 传输中继不会终止媒体,也不会执行任何转码。当它们将流量转发到其他对端或媒体处理器时,可以将 TCP(如果 HdxTeams.exe 使用 TCP)桥接到 UDP。

HdxTeams.exe 在 Office 365 云中联系距离最近的 Microsoft Teams 传输中继。HdxTeams.exe 使用任意广播 IP 和端口 3478—3481 UDP(每个工作负载使用不同的 UDP 端口,尽管会发生多路复用)或 443 TCP TLSv1.2 进行回退。通话质量取决于基础网络协议。由于始终推荐 UDP 而非 TCP,因此,我们建议将您的网络设计为适应分支机构中的 UDP 流量。

如果 Microsoft Teams 是在优化模式下加载的并且 HdxTeams.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 将打开一个与在 VDA (127.0.0.1:9002) 上运行的 WebSocketService.exe 的安全 WebSocket 连接,这会在用户会话内部生成 WebSocketAgent.exe。
  5. WebSocketAgent.exe 通过调用到 Citrix HDX Teams Redirection Service (CtxSvcHost.exe) 来实例化通用虚拟通道。
  6. Citrix Workspace 应用程序的 wfica32.exe (HDX Engine) 产生一个名为 HdxTeams.exe 的新进程,这是用于 Microsoft Teams 优化的新 WebRTC 引擎。
  7. HdxTeams.exe 和 Teams.exe 有一个双向虚拟通道路径,可以开始处理多媒体请求。

    —–用户呼叫——

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

Microsoft Phone 系统

Phone System 是 Microsoft 的技术,在 Office 365 云中对 Microsoft Teams 启用呼叫控制和 PBX。Microsoft Teams 的优化使用 Office 365 通话套餐或直接路由支持 Phone System。使用直接路由,您可以直接将自己支持的会话边界控制器连接到 Microsoft Phone System,而无需任何额外的本地软件。

防火墙注意事项

当用户首次使用 Microsoft Teams 客户端启动优化的呼叫时,他们可能会注意到 Windows 防火墙设置的警告。警告要求用户允许 HdxTeams.exe (HDX Overlay Teams) 的通信。

防火墙警告

Windows Defender 防火墙 > 高级安全控制台的入站规则下添加了以下四个条目。如有需要,可以应用更严格的规则。

防火墙入站规则

Microsoft Teams 和 Skype for Business 同时存在

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

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

此时只能向单个应用程序授予外围设备访问权限。例如,RealTime Media Engine 访问网络摄像头会在通话期间锁定成像设备。松开设备后,它将可用于 Microsoft Teams。

Microsoft Teams 和 Skype 共存

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

最佳音频和视频质量要求具有低延迟、低抖动和低数据包丢失的 Office 365 云的网络连接。在进入 Internet 之前,将 Microsoft Teams 音频-视频 RTP 流量从分支机构位置的 Citrix Workspace 应用程序用户到数据中心可能会增加过多的延迟。这也可能会导致 WAN 链接上出现拥堵Citrix SD-WAN 按照 Microsoft Office 365 网络连接性原则优化 Microsoft Teams 的连接性。Citrix SD-WAN 使用基于 Microsoft REST 的 Office 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 直接服务连接到 Office 365。此服务为所有受 Internet 限制的流量提供可靠和安全交付。

如果分支机构 Internet 连接的质量无需担心,通过将 Microsoft Teams 流量直接从 Citrix SD-WAN 分支机构转向最近的 Office 365 前门,可能足以最大限度地减少延迟。有关详细信息,请参阅 Citrix SD-WAN Office 365 优化

Citrix SD-WAN

Microsoft Teams 中的库视图和活动扬声器

Microsoft Teams 支持 Gallery(库)、Large gallery(大型库)和 Together mode(共聚模式)布局。

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

Microsoft Teams 还提供了具有一个高达 7x7 的网格的大型库视图。因此,Microsoft Teams 会议服务器会合成单个视频源并将其发送到客户端设备进行解码,从而降低 CPU 消耗。这个单一的列表式源可能还包括用户的自我预览视频。

最后,Microsoft Teams 支持共聚模式,这是新会议体验的一部分。Microsoft Teams 使用 AI 细分技术以数字方式将参与者置于共享背景中,将所有参与者都放在同一个大会堂中。

用户可以在电话会议期间通过在省略号菜单中选择 Gallery(库)、Large gallery(大型库)或 Together mode(共聚模式)布局来控制这些模式。

视频布局

Microsoft Teams 中的屏幕共享

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

传出屏幕共享也进行了优化,并卸载到 Citrix Workspace 应用程序(1907 或更高版本)。在这种情况下,HdxTeams.exe 捕获并仅传输 Citrix Desktop Viewer (CDViewer.exe) 窗口。如果要共享在客户端计算机上运行的本地应用程序,可以将其叠加在 CDViewer 上,并且也可以将其捕获。

多显示器:在 CDViewer 处于全屏模式并跨越多显示器设置的情况下,仅共享主显示器。用户必须将虚拟桌面中的应用程序拖动到主显示器,以便通话中的其他对端查看该应用程序。

屏幕共享

注意:

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

Microsoft Teams 中的外围设备

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

Microsoft Teams 的优化模式

Microsoft Teams 不直接访问这些设备。相反,它依赖 HdxTeams.exe 来获取、捕获和处理媒体。Microsoft Teams 列出了供用户选择的设备。

建议:

  • 具有内置回声消除功能的 Microsoft Teams 认证的耳机。在具有多个外围设备的设置中,如果麦克风和扬声器位于不同的设备,则可能会出现回声。例如,带有内置麦克风的网络摄像机和带扬声器的显示器。使用外部扬声器时,请尽可能远离麦克风和可能将声音折射到麦克风的任何表面。
  • Microsoft Teams 认证的相机,但 Skype for Business 认证的外围设备与 Microsoft Teams 兼容。
  • HdxTeams.exe 无法利用 CPU 卸载与执行板载 H.264 编码 -UVC 1.1 和 1.5 的网络摄像机。

注意:

HdxTeams.exe 仅支持以下特定的音频设备格式(通道、位深度和采样率):

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

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

HdxTeams.exe 中的 Webrpc 日志显示以下类型的信息:

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 模式下加载,VDA 将回退到旧版 HDX 技术,例如网络摄像机重定向以及客户端音频和麦克风重定向。在未优化模式下,外围设备将映射到 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 应用程序的限制:

  • 不支持 DTMF 音。
  • HID 按钮 - 不支持接听呼叫和结束通话。支持调高和调低音量。
  • 在多显示器设置中进行屏幕共享时,仅共享主显示器。
  • 我们仅支持来自传入摄像机或屏幕共享流的一个视频流。当有一个传入屏幕共享时,该屏幕共享会显示,而非显示主扬声器的视频。
  • 备用铃声(Teams > 设置 > 设备)不受支持。
  • Microsoft Teams 管理中心中的 QoS 设置不适用于 VDI 用户。
  • Citrix Workspace 应用程序的应用程序保护附加功能可防止出站屏幕共享。
  • 不支持 Microsoft Teams 中的放大和缩小功能。

VDA 的限制:

  • 将 Citrix Workspace 应用程序的“高 DPI”设置配置为否,使用本机分辨率时,如果显示器的 DPI 缩放系数设置为高于 100%,则重定向的视频窗口不会显示在恰当的位置。

Citrix Workspace 应用程序和 VDA 的限制:

  • 传出屏幕共享:不支持应用程序共享。
  • 只能使用客户端计算机上(而非 VDA 上)的音量栏控制优化的通话的音量 。

Microsoft 限制

  • 不支持用于模糊或自定义背景的选项。
  • 不支持 3x3 库视图。Microsoft Teams 依赖项 - 联系 Microsoft,了解何时可以期待 3x3 网格。
  • 与 Skype for Business 的互操作性仅限于音频通话,没有视频模式。
  • 传入和传出视频流的最大分辨率为 720p。Microsoft Teams 依赖项 — 联系 Microsoft,了解何时可以期待 1080p。
  • 不支持 PSTN 呼叫回铃音。
  • 不支持适用于直接路由的媒体旁路。

Citrix 和 Microsoft 限制

  • 执行屏幕共享时,包括系统音频选项不可用。
  • 不支持弹出式聊天(也称为多窗口聊天或新会议体验)。
  • VDI 参与者支持分组讨论会议室。如果组织者是 VDI 用户,Microsoft Teams 将不支持分组讨论会议室。
  • 授予控制权和获取控制权:在屏幕共享或应用程序共享会话期间不受支持. 仅在 PowerPoint 共享会话期间受支持。
  • 不支持 E911 和基于位置的路由。

其他信息