
抖动是指连接延迟随时间变化的幅度。丢包率是未能到达的数据所占的比例。在通话中,即使连接速度很快,高抖动也会让人声听起来像机器人,而丢包会导致词语和音节消失。Microsoft 给出的 Teams 音频典型值是抖动低于 30 毫秒、丢包率低于 2%。Zoom 建议抖动不超过 40 毫秒、丢包率不超过 2%。你可以在浏览器、Windows 命令行或会议应用自己的统计信息中测量这两项指标。
关于 高速网络下通话卡顿的指南 解释了为什么网速并非决定通话质量的唯一因素,而 通话前网络检查 介绍了何时测试。本指南说明这两个指标的含义及测量方法。
通话中的抖动和丢包
音频和视频以小数据包的形式传输,每秒会发送很多个。如果每个包都在40毫秒内到达,通话只会整体延迟40毫秒,通常难以察觉。抖动指的是延迟不均匀:一个包用20毫秒,下一个用70毫秒。会议应用会将数据包暂存在缓冲区中,以平滑这种波动。Microsoft表示,Teams 可以通过缓冲适应一定程度的抖动,只有当抖动超出缓冲区的承受范围时,才会出现明显影响。
丢包的问题更严重,因为丢失的数据包无法到达,应用需要填补这段空缺。Microsoft的 通话质量指南 说明了各类问题在通话中的表现:
| 问题 | 含义 | 听到和看到的现象 |
|---|---|---|
| 抖动 | 数据包到达间隔不均匀 | 声音像机器人 |
| 丢包 | 数据包未能到达 | 音节和词语缺失,视频及屏幕共享卡顿 |
| 往返时间过长 | 数据包需要很长时间才能到达 | 像对讲机一样有延迟,双方容易同时开口 |
什么数值算良好
会议应用会公布各自的参考值。这些是针对应用自身通话流量的目标值,可作为理解其他测试结果的参考:
单次读数超过这些数值并不意味着通话会失败。如果读数在几分钟内持续偏高,或者每当有人开始使用同一连接时读数就升高,那么最好在通话前解决问题。
抖动如何计算
不同工具测量抖动的方法略有差异,因此应比较同一工具的结果。例如,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 的具体情况,请在测试通话中查看应用的统计信息。
常见问题
视频通话的抖动多少算良好?
抖动和丢包,哪个对通话影响更大?
如何在 Windows 上检查丢包?
CallReady会测量丢包吗?
通话前使用 CallReady 检查延迟和抖动,并通过会议应用的统计信息确认是否丢包。
获取 CallReady