我运行了 Ping Plotter,结果显示所有跳数的数据包丢失率都很高(约 12%)。我很难相信 Google 的路由器有问题,是我的网卡出了问题吗?
单击屏幕截图可将其放大。
ping 绘图仪屏幕的图片(关闭了除坦克世界之外的所有网络流量,移除了本地路由器):
我还运行了 winMTR(运行着无线电和星际争霸2),我也添加了我的家用路由器。
|------------------------------------------------------------------------------------------|
| WinMTR statistics |
| Host - % | Sent | Recv | Best | Avrg | Wrst | Last |
|------------------------------------------------|------|------|------|------|------|------|
| my.router - 0 | 1631 | 1631 | 0 | 0 | 3 | 1 |
| 10.0.0.1 - 5 | 1413 | 1356 | 1 | 11 | 41 | 3 |
| qr90.bucuresti.rdsnet.ro - 5 | 1379 | 1313 | 1 | 12 | 78 | 3 |
| cr01.bucuresti.rdsnet.ro - 4 | 1436 | 1385 | 2 | 18 | 50 | 3 |
| xr01.budapesta.rdsnet.ro - 5 | 1407 | 1348 | 13 | 24 | 70 | 14 |
| xr01.budapesta.rdsnet.ro - 4 | 1430 | 1377 | 13 | 24 | 125 | 15 |
| 213-154-130-234.rdsnet.ro - 4 | 1422 | 1367 | 13 | 27 | 122 | 14 |
| 209.85.242.228 - 4 | 1429 | 1376 | 13 | 26 | 121 | 14 |
| 72.14.232.102 - 4 | 1421 | 1366 | 30 | 44 | 142 | 45 |
| 72.14.236.21 - 4 | 1440 | 1390 | 28 | 45 | 204 | 29 |
| 209.85.254.57 - 5 | 1402 | 1342 | 31 | 46 | 86 | 32 |
| www.google.com - 4 | 1441 | 1391 | 29 | 40 | 69 | 31 |
|________________________________________________|______|______|______|______|______|______|
WinMTR v0.92 GPL V2 by Appnor MSP - Fully Managed Hosting & Cloud Provider
凌晨 4 点左右,我的机器上的所有种子和内容都在运行:
添加家用路由器后,我发现没有数据包丢失,所以我猜问题出在 10.0.0.1 路由器上。ISP 的工作人员过来检查了连接,说没问题,但延迟峰值的困扰仍然存在。我注意到的一件事是,早上和深夜连接正常。
答案1
这似乎很正常。有两件事你必须记住。
首先,如果某个连接出现数据包丢失,则在包含该连接的任何路径上都会出现相同的数据包丢失。因此,如果您与 ISP 的连接出现数据包丢失,则该连接之后的每个点都将显示相同的数据包丢失。数据包丢失的测量方法是发送数据包并查看是否收到数据包。
其次,数据包丢失是正常的。这就是多个 TCP 流如何确定如何共享连接,而无需任何特定的“你得到 X,你得到 Y”机制。由于您正在运行 torrent 程序,因此您可能拥有相当多的 TCP 连接,并且它们都在尝试确定它们可以获得多少带宽。TCP 连接会加速,直到数据包开始丢失,然后又回落。
假设其中一个连接突然变慢。其他连接如何知道有更多带宽可用?唯一的方法是定期尝试提高传输速率。如果这些连接充分利用了您的连接,而其中一个连接尝试提高传输速率,您认为会发生什么?是的,一些数据包会丢失。如果没有数据包丢失,那么所有 TCP 连接都会增加带宽消耗。这是怎么回事?
如果这对您来说是个问题,因为您还试图运行对数据包丢失敏感的应用程序,请配置您的 torrent 程序允许的入站和出站流量限制。将其设置为程序中看到的最大流量水平的 85% 左右。这只会导致 torrent 程序的性能下降 15%,并且应该将数据包丢失水平通常保持在 0。(除非其他程序产生流量,然后该程序必须弄清楚如何与 torrent 共享。)
答案2
Torrent 使用大量 TCP 和 UDP 连接,根据路由器的不同,这可能会在执行操作时使用路由器的所有 RAM。由于我看到 10.xxx 网络的数据包丢失,这说明路由器和该网络之间出现了问题,请更换以太网线,如果您使用的是 DSL,请更换电话线并确保电话线长度不超过 3 英尺。标准电话线没有屏蔽,不使用双绞线,因此它们对电磁干扰非常敏感。
另外,如果您使用的是 DSL 连接,很多社区都会出现一种称为“本地饱和”的问题,基本上是因为人数太多,DSLAM 无法处理,从而导致数据包丢失。
至于绘图仪所见的远程网络数据包丢失,我并不确定,但这些网络远远超出了 ISP 的控制范围。