家庭办公桌插画,桌上有显示波动折线图的笔记本电脑、路由器、盘绕的网线和耳机

抖动是指连接延迟随时间变化的幅度。丢包率是未能到达的数据所占的比例。在通话中,即使连接速度很快,高抖动也会让人声听起来像机器人,而丢包会导致词语和音节消失。Microsoft 给出的 Teams 音频典型值是抖动低于 30 毫秒、丢包率低于 2%。Zoom 建议抖动不超过 40 毫秒、丢包率不超过 2%。你可以在浏览器、Windows 命令行或会议应用自己的统计信息中测量这两项指标。

关于 高速网络下通话卡顿的指南 解释了为什么网速并非决定通话质量的唯一因素,而 通话前网络检查 介绍了何时测试。本指南说明这两个指标的含义及测量方法。

通话中的抖动和丢包

音频和视频以小数据包的形式传输,每秒会发送很多个。如果每个包都在40毫秒内到达,通话只会整体延迟40毫秒,通常难以察觉。抖动指的是延迟不均匀:一个包用20毫秒,下一个用70毫秒。会议应用会将数据包暂存在缓冲区中,以平滑这种波动。Microsoft表示,Teams 可以通过缓冲适应一定程度的抖动,只有当抖动超出缓冲区的承受范围时,才会出现明显影响。

丢包的问题更严重,因为丢失的数据包无法到达,应用需要填补这段空缺。Microsoft的 通话质量指南 说明了各类问题在通话中的表现:

问题含义听到和看到的现象
抖动数据包到达间隔不均匀声音像机器人
丢包数据包未能到达音节和词语缺失,视频及屏幕共享卡顿
往返时间过长数据包需要很长时间才能到达像对讲机一样有延迟,双方容易同时开口

什么数值算良好

会议应用会公布各自的参考值。这些是针对应用自身通话流量的目标值,可作为理解其他测试结果的参考:

来源抖动丢包往返时间
Teams通话运行状况:音频(Microsoft)低于30毫秒低于2%低于200毫秒
Zoom会议统计信息(Zoom)40毫秒或更低2%或更低未给出单一数值

单次读数超过这些数值并不意味着通话会失败。如果读数在几分钟内持续偏高,或者每当有人开始使用同一连接时读数就升高,那么最好在通话前解决问题。

抖动如何计算

不同工具测量抖动的方法略有差异,因此应比较同一工具的结果。例如,Cloudflare速度测试 计算抖动时 取相邻延迟测量值之差的平均值。若五次测量为20、24、19、45和21毫秒,差值就是4、5、26和24毫秒,因此抖动约为15毫秒。平均延迟为26毫秒,但这个平均值掩盖了一次测量约为其他测量两倍的情况。

通话前测试的三种方法

方法抖动丢包测试对象
浏览器中的Cloudflare速度测试支持:空闲和有负载时是到最近Cloudflare数据中心的路径
ping 和 pathping 在 Windows 中不能直接测量支持,也可查看从何处开始丢包到所选地址的路径
会议应用的统计信息是是通话本身

1. 同时报告两个指标的浏览器测试

打开 speed.cloudflare.com ,请在用于通话的电脑上打开。Cloudflare 说明 其测试会在连接空闲时以及忙于下载和上传时测量抖动,并通过 WebRTC TURN 服务器中继数据包来测量丢包。请留意空闲和负载状态下的结果差距。如果连接繁忙时抖动大幅上升,备份、云同步或另一台设备的上传可能正在占满线路,通话也会受到同样影响。

2. Windows 命令行:ping 和 pathping

打开命令提示符或终端并运行:

ping -n 100 1.1.1.1

默认情况下 ping会发送四次请求; -n 100 会发送100次请求,大约需要一两分钟。汇总行显示丢失数量和百分比。最小和最大时间反映最快与最慢响应之间的差距。

要查看从哪里开始丢包,请运行:

pathping 1.1.1.1

pathping 它会向路径上的每台路由器发送 100 个请求,并显示每台路由器的丢包情况。这需要几分钟。请仔细解读结果:Microsoft 自己的示例显示,有些路由器会丢弃发给它们的请求,但仍会转发其他所有内容。如果丢包只出现在某台路由器上、没有持续到路径终点,就无关紧要。如果丢包从某台路由器开始并一直持续到目的地,那才是真正的丢包。

  • 如果从第一跳,也就是自家路由器就开始丢包,问题可能出在Wi-Fi或家庭网络。
  • 如果从后续节点开始丢包,问题可能出在网络服务商或更远的网络。

3. 会议应用自身的指标

只有这种方法能测量通话本身。在Teams中打开 更多操作 → 设置 → 通话运行状况 ,在通话中查看。Microsoft表示,这些数值 每15秒更新一次。在Zoom桌面应用中, 打开设置 → 统计信息。进行测试通话即可。 Teams测试通话和Zoom测试会议指南 介绍了从哪里开始测试。

对于Teams,Microsoft还提供免费的 Teams Network Assessment Tool。该工具向最近的Teams中继发送数据包并接收返回包,然后报告丢包、抖动和往返时间。

数值偏高时如何处理

看到的现象可能的原因可尝试的操作
空闲时抖动正常,有负载时偏高其他流量占满了连接暂停云同步、备份和大型下载,然后重新测试
Wi-Fi下抖动或丢包严重,有线连接正常无线连接使用网线,或靠近路由器后重新测试
从自家路由器开始丢包家庭网络重启路由器,比较有线和Wi-Fi连接
从后续节点开始丢包,并一直持续到终点网络服务商的网络,或更远的网络保存 pathping 的输出并发送给网络服务商
仅连接VPN时数值偏高VPN路径请参阅 VPN通话延迟指南

CallReady 测量的内容

CallReady 会在通话前检查期间,从 Windows 托盘检查连接。它会测量到 Cloudflare 的延迟、抖动以及大致的下载和上传吞吐量,然后将这些结果与摄像头和麦克风检查结果并列显示。 它不测量丢包。 如果别人告诉你说话时有些字听不清,请使用 Cloudflare 测试, pathping 或会议应用的统计信息进行检查。

CallReady 测量的是到 Cloudflare 的网络路由,而不是到 Teams 或 Zoom 服务器的媒体传输路径。结果良好意味着你自己的连接稳定。若要检查 Teams 或 Zoom 的具体情况,请在测试通话中查看应用的统计信息。

常见问题

视频通话的抖动多少算良好?
Microsoft列出的Teams音频典型值为低于30毫秒,Zoom建议40毫秒或更低。数值越低越好,持续稳定比一次良好读数更重要。
抖动和丢包,哪个对通话影响更大?
丢包通常造成的影响更大,因为丢失的音频和视频无法恢复,词语会因此消失。会议应用可以用缓冲区吸收一部分抖动,直到抖动超过缓冲区的容量。
如何在 Windows 上检查丢包?
在命令提示符中运行ping -n 100 1.1.1.1,查看汇总中的丢失百分比。要定位丢包起点,运行pathping 1.1.1.1,并查找一直持续到最后一跳的丢包。
CallReady会测量丢包吗?
不能。CallReady 会测量到 Cloudflare 的延迟、抖动和吞吐量。要检查丢包,请使用 Cloudflare 速度测试、pathping,或会议应用的通话统计信息。

通话前使用 CallReady 检查延迟和抖动,并通过会议应用的统计信息确认是否丢包。

获取 CallReady