为什么 Speedtest 和 Wget 之间存在差异?

Joh*_*els 19 internet performance-monitoring wget network-speed

我的客户抱怨互联网速度低。使用 Speedtest.net 测量时,速度是可以接受的。定期测量的下载量为标称速度的 10% 到 30%。我无法解释。

一些背景。有问题的连接位于那些阳光明媚的加勒比岛屿之一,在那里快速互联网并不是最大的资产。最近互联网速度变得不错,高达 200 Mbps。但是到(比如说)阿姆斯特丹的 ping 往返大约需要 180 毫秒。

客户拥有 100 Mbps 光纤连接。在 Windows 机器 (speedtest.net) 上对 ISP CO 进行速度测试时,我们获得了 95 Mbps。当对阿姆斯特丹使用相同的速度测试时,我们达到了 60-70 Mbs。完全可以接受。

前段时间我安装了一个 RasPi,它会定期从我在阿姆斯特丹的一台服务器上获取一个文件。在直接连接到 AMS-IX 的数据中心中。使用这个命令:

wget -O /dev/null --report-speed=bits http://aserv.example.net/~myuser/links/M77232917.txt
Run Code Online (Sandbox Code Playgroud)

.txt 文件是 23MByte 的数字。(实际上是第一个但最大的梅森素数,23e6位数)

当我在有问题的网络上下载该文件时,wget 报告如下:

dev/null 100%[====================================================================>]  22.81M  11.6Mb/s   in 17s    

2019-02-08 14:27:55 (11.2 Mb/s) - ‘/dev/null’ saved [23923322/23923322]
Run Code Online (Sandbox Code Playgroud)

与此同时,speedtest.net 报告了 60-70 Mbps。

我知道 Raspi 有其局限性。但是这个速度变化很大。一次 RasPi 报告此为 11 Mbps,下一次为 22 Mbps。但有时低至 1.5 Mbps。

在此处输入图片说明

当我用一台功能强大的笔记本电脑进行这项测试时,最高速度稍高(高达 30 Mbps),但也显示出相同的低点。因此,它表示高侧的 RasPi 限制,而不是低侧的 10 Mbps。

我从德国慕尼黑数据中心的服务器发出了完全相同的命令。速度 96 Mbps。

然后来自荷兰的消费者 100 Mbps 光纤连接:65 Mbps。

然后,在我家标称 10 Mbps ADSL。速度测试显示 10Mbps。Wget 提供 8.5 Mbps。这在我的书中是平等的。

这排除了对充当文件下载主机的服务器的任何限制。

我不希望有人能指出客户端连接缓慢的原因。但是谁能解释 speedtest.net 和 wget 之间的差异?

速度测试是否忽略了某些内容,还是仅测量了峰值?或者 wget 是否受到长 ping 时间的严重影响?

我觉得 wget 测试给出了真实有效的速度,而 speedtest 主要是为了显示宣传的速度。

bvi*_*tor 21

ISP 通常会优先考虑到 speedtest.net 的流量,这样他们就可以吹嘘他们的连接速度有多快,而实际上,他们并没有提供那么多的带宽。他们非常清楚大多数用户只会检查该站点以进行确认。

您还必须记住,传输速度取决于客户端服务器。在当今世界,大多数服务器都以一种或另一种方式节流。

最后,期望稳定的海外连接带宽毫无意义。没有这样的事情。它必须经过无数个交换机、光纤、数据中心才能到达最终位置。只需要一个移动的部分就可以放慢速度。

  • 你能证明你的索赔吗?“ISP 通常优先考虑到 speedtest.net 的流量” (12认同)
  • ISP 优先考虑速度测试流量就像一个主要的汽车制造商伪造排放测试一样。 (8认同)
  • 有趣的是,我曾经能够通过从 Raspberry Pi 向 speedtest.net 重复发送流量来“修复”断断续续的超级碗流。似乎只要存在速度测试流量,他们就会优先考虑我的整个连接 - 昼夜差异。没有太多证据表明 ISP 做了阴暗的事情,但确实如此。 (3认同)

And*_*nle 17

除了公布的其他原因之外,当带宽延迟积变大时,TCP 连接不能很好地处理大文件。

就像在与岛屿的其他快速连接上一样。

请参阅维基百科关于 TCP 调优的条目

因此,Speedtest 可以通过连接以 95 mb/sec 的速度转储一个小文件,但wget在 20 MB 的文件上只能获得 10 mb/sec 的速度。

  • 这对我来说是新知识。非常好。实际上,带宽延迟乘积很高(如果我计算正确,则为 2.25 MB)。快速查看显示默认缓冲区为 87kB,最大为 3.5 MB。(我假设字节不是位)。我必须更深入地研究这个以更好地评估它。如果结合 speedtest 下载大量小文件并记录其最大速度,则说明很多。 (3认同)

Rom*_*nov 7

wget给出良好的实际速度测量。Speedtest 的测试可能包括一种可以解释更高数字的并行性。

对于良好的平均速度测试,我认为下载时间应至少为 90-120 秒(以获得良好的平均值)