我最近在家里设置了一个新的 1.5MB DSL 连接。将我的电脑(无线)连接到我的 DSL 调制解调器后,我启动了宽带速度测试仪,以查看两者是否都提供了预期的吞吐量。我的 WinXP 盒子传输速度约为 0.7MB,而我的 WinVista 盒子传输速度约为 1.2MB。显然,问题只限于 WinXP 盒子,因此我使用 TCP Optimizer 调整了它的网络设置。这使得它的速度与我的另一台机器相当,两者都约为 1.2MB。
反思这个问题时我问自己:我怎么才能真正知道我的速度是多少?我决定进一步测试,在两台机器上分别使用 2 种不同的浏览器,应用 3 种不同的速度测试器,为了保险起见,我重复了两次测试,得到了 24 个数据点(好吧,48 个,因为有上行和下行)。原始数据如下所示。请注意,数据按提供商排序,然后按速度(以 Kbps 为单位)排序,这是查看趋势最有用的顺序——它们是不是按执行试验的顺序显示。另请注意,我关闭了所有其他前台应用程序和窗口,但没有仔细检查服务活动,因此这可能是导致某些故障的原因。
观察下游活动
- 有 3 个异常值(2 个来自仅在 XP 机器上的 Speed.IO,1 个来自在 Vista 上的 AuditMyPC),并且所有 3 个都在 Firefox 上,而不是 IE8 上。
- 当我包含所有数据时,标准差为 244,但当我删除 3 个异常值时,标准差只有 56。
- SpeedTest 在各个浏览器和操作系统上表现出了惊人的一致性。
- 忽略异常值,每项服务的平均值为:
- 速度测试 = 1334
- 速度.IO = 1243
- 审计我的电脑 = 1217
观察上游活动
- 没有真正的异常值,但散度比下游大得多。
- 包括所有数据在内的标准差为 264。
- SpeedTest 和 Speed.IO 在各个浏览器和操作系统上的表现非常一致,而 AuditMyPc 的表现则不太稳定(尽管在所有情况下都比 SpeedTest 或 Speed.IO 快)。
- 每项服务的平均值为:
- 速度测试 = 428
- 速度.IO = 468
- 审计我的电脑 = 930
问题
我有一些估计我的连接速度(下行 1270 Kpbs,上行 600 Kpbs)。根据上面给出的标准偏差,下行估计更可靠。我的问题是如何获得更真实或更准确的连接速度估计?(注意我要求更真实而不是真的--我是一个实用主义者:-) 或者换句话说,一个人如何判断该相信哪些数字?
原始数据
(2 台机器 x 2 个浏览器 x 3 项服务 x 2 次试用 x 2 个方向)
Machine Browser Service Direction Speed
XP IE8 SpeedTest Downstream 1340
XP IE8 SpeedTest Downstream 1340
Vista IE8 SpeedTest Downstream 1340
XP FireFox SpeedTest Downstream 1330
Vista FireFox SpeedTest Downstream 1330
Vista IE8 SpeedTest Downstream 1330
XP FireFox SpeedTest Downstream 1330
Vista FireFox SpeedTest Downstream 1330
Vista IE8 Speed.IO Downstream 1264
Vista IE8 Speed.IO Downstream 1263
XP IE8 Speed.IO Downstream 1240
XP IE8 Speed.IO Downstream 1235
Vista FireFox Speed.IO Downstream 1231
Vista FireFox Speed.IO Downstream 1226
XP FireFox Speed.IO Downstream 630
XP FireFox Speed.IO Downstream 353
XP FireFox AuditMyPc Downstream 1242
XP FireFox AuditMyPc Downstream 1242
XP IE8 AuditMyPc Downstream 1240
Vista IE8 AuditMyPc Downstream 1208
Vista IE8 AuditMyPc Downstream 1202
Vista FireFox AuditMyPc Downstream 1200
XP IE8 AuditMyPc Downstream 1182
Vista FireFox AuditMyPc Downstream 780
XP FireFox SpeedTest Upstream 430
XP IE8 SpeedTest Upstream 430
Vista FireFox SpeedTest Upstream 430
Vista IE8 SpeedTest Upstream 430
XP FireFox SpeedTest Upstream 430
XP IE8 SpeedTest Upstream 430
Vista IE8 SpeedTest Upstream 430
Vista FireFox SpeedTest Upstream 410
Vista FireFox Speed.IO Upstream 473
Vista FireFox Speed.IO Upstream 472
Vista IE8 Speed.IO Upstream 471
XP FireFox Speed.IO Upstream 468
Vista IE8 Speed.IO Upstream 466
XP FireFox Speed.IO Upstream 465
XP IE8 Speed.IO Upstream 464
XP IE8 Speed.IO Upstream 461
Vista IE8 AuditMyPc Upstream 1191
XP FireFox AuditMyPc Upstream 1165
XP IE8 AuditMyPc Upstream 1074
XP IE8 AuditMyPc Upstream 1022
XP FireFox AuditMyPc Upstream 884
Vista IE8 AuditMyPc Upstream 851
Vista FireFox AuditMyPc Upstream 677
Vista FireFox AuditMyPc Upstream 574
答案1
Ciaran 在他的评论中提出了一个很好的观点;您必须知道测试测量的是什么,而专有带宽测试仪无法清楚地显示这一点。
下载一个大文件可以让你很好地了解你的TCP吞吐量,但此测量对您到服务器的延迟(Ping 时间)非常敏感,并且可能会受到您的 TCP 配置设置(关键是您的 TCP 接收窗口)的影响。
网络专业人员会使用 IPerf 和 ixChariot 等工具,但这些工具并不适合日常使用(例如,IPerf 在 NAT 后面就无法正常工作)。要测量管道的最大容量,您可以使用上述工具之一,用单向 UDP 数据报流淹没您的连接。
在线带宽工具使用一些技巧来尝试将吞吐量提高到单个 TCP 连接的性能之上。我发现 speedtest.net 通常会为您提供比通过计时下载大型文件所测量的平均下载速度高出约 30-40% 的速度。我已经通过计时下载证实了这一点speedtest 本身使用的文件。
使用 Wireshark,我做出了以下观察;
- Speedtest 客户端在测量带宽时会同时下载两个文件 - 这会比单个文件的总吞吐量略高
- 速度测试测速仪报告每秒瞬时吞吐量的高百分位数(90-95%) - 而不是长期平均值
Speedtest GUI 提示您下载 mp3 的速度与测量速度一致。这有点误导,因为测量速度更能代表您的链路可实现的峰值吞吐量。
答案2
另一个问题使得找到“真实”速度变得更加困难...我知道康卡斯特会这样做,但不确定其他 ISP 是否也会这样做。基本上,他们会在下载的前 10-20MB 为您提供 1.5-2 倍的速度,然后再将速度降至正常速度。不幸的是,大多数速度测试的下载量不超过 10MB,因此这确实会影响结果。
我个人认为NDT 速度测试仪是最准确的方法之一,前提是他们有一个离您很近的服务器。还有一件事要添加到您的数据点中。
答案3
相比其他网站,我更相信 speedtest.net 的结果。我从 speedtest.net 网站的设计者那里听说,大多数其他速度测试器使用的方法都是有缺陷且不一致的。他当然是一个有偏见的来源,但 speedtest.net 结果的一致性也使我比您的其他来源更信任它。