01核心思想:吞吐量 = 数据量 ÷ 时间
所有测速的本质都是同一道算术题:在固定时间内传输尽可能多的数据,再用 数据量 ÷ 耗时得到速率。测速引擎并不「感知」带宽, 而是让线路跑到饱和,然后记录跑出了多少。
测速链路
你的设备 → 路由器 → 运营商网络 → 测速服务器。整条链路上最慢的一环决定测速结果, 所以 Wi-Fi 太差时,测出的是「你到路由器的速度」,而不是宽带的真实速度。
02下载测试:多线程并发 + 稳定突发均值
浏览器向测速服务器并发发起多个 HTTP 请求(通常 6 个,可配置 1–32)下载随机数据。 随机数据无法被压缩,保证测的是线路真实吞吐。引擎会丢弃起步阶段的「热身」数据, 取最稳定的突发平均值作为结果,避免单次抖动误导。
这也是为什么测速开始的 1–2 秒数字会「起飞」——TCP 慢启动还没结束,此时的读数并不可信。
03上传与延迟
上传测试反向操作:浏览器通过 POST 把随机数据推给服务器,统计单位时间 发送量。受上行带宽不对称影响,上传结果通常明显低于下载。
延迟(Ping)通过多次小请求往返采样,取中位数并计算波动幅度。 单次延迟没有意义——偶发的 200ms 尖峰可能是你手机刚好同步了相册。
04开销补偿因子
每个数据包除有效载荷外还携带 TCP/IP 协议头。引擎默认按约 4% 的开销 补偿因子修正结果,让读数更接近运营商承诺的带宽。不同测速站的补偿策略不同, 这是结果差异的来源之一。
05为什么不同测速网站结果不一样?
- 节点位置不同:到同城节点和跨省节点的延迟、路由路径完全不同
- 互联互通瓶颈:跨运营商访问(如联通 → 电信机房)常被限速
- 并发策略不同:并发连接数、采样窗口、补偿因子各异
- 测试时段:晚高峰共享链路拥堵,任何节点都跑不高
建议同一引擎多次测试取平均,横向对比才有意义。 CialloSpeed 的 OpenSpeedTest 引擎固定使用同一节点,多次结果可直接对比; 不同测速工具结果差异的原因,详见结果差异解读。
06专业术语表
- Mbps(兆比特/秒)
- 带宽单位,运营商标称速度。8 Mbps = 1 MB/s。
- MB/s(兆字节/秒)
- 下载软件常用单位,直观体现「每秒下多少文件」。
- Ping / 延迟
- 数据包往返时间(ms),影响游戏与实时通话跟手感。
- 抖动 Jitter
- 多次延迟之间的波动幅度,抖动大时视频通话卡顿。
- 丢包
- 数据包在途中丢失的比例,哪怕 1% 也会明显劣化体验。
- 吞吐量
- 单位时间实际传输的数据量,测速测的就是它。
原理看懂了?来实测一下 用真实数据验证上面的一切
立即测速