因为我们家里的互联网连接确实时不时会中断,所以我做了一个小实验:
在过去两个月里,我的一台机器每半小时 ping 一次 google.com。一次测量包括 50 次 ping。
我现在计算一天中每小时丢失数据包的平均百分比:
我的问题:
- 晚上的这个峰值是否是由于选择 google.com 作为 ping 目的地而导致的?
- 您会推荐使用其他目的地吗?哪一个?
- 这是否表明我的连接有问题?
- 有什么更好的策略可以衡量我们的互联网连接到底存在什么问题?我们的 ISP 告诉我们它运行良好,所以我尝试汇总一些证据...
问候!
编辑:我忘了说机器直接连接到路由器(没有 WiFi)。路由器也已 ping 通,完全没有数据包丢失。
答案1
不幸的是,您确实没有提供足够的信息来找出问题所在。根据提供的有限信息,我尽力回答:
如果我的经验可以作为参考,那么 ping Google 通常是一个不错的选择,因为他们将网络设计得尽可能快。此外,由于 ICMP 具有优先级,因此晚间高峰可能不会产生重大影响 - 特别是在数据包丢失方面 - 我认为应该为 0。
Google 是一个不错的目的地,但为了更好地了解发生了什么,您可能还需要尝试 ping 您的网关,如果他们允许,则还要 ping 您的提供商 DNS、邮件或 Web 服务器。这将有助于显示数据包丢失的位置。但实际上,在您看到的数据包丢失级别,请下载 MTR(或 WinMTR)并在 peek 时运行它,以更好地了解数据包丢失的位置。
主观上,对于基于 Wifi 的网络,5% 的数据包丢失是可接受的最高限度 - 假设您的网络没有饱和。另一方面,我对光纤连接上 0.5% 的数据包丢失感到不满 - 作为参考,粗略地说,对于 VOIP 来说,低于 1% 是可以接受的,高于
这个数字就不行了。如果您希望能够在您的连接上使用 Skype 或 Viber 或其他服务,那么 5% 的数据包丢失是不可接受的。对于仅浏览网页来说,这可能就足够了。作为 ISP,我希望查看 MTR 的结果,该结果显示了目的地之间的延迟和数据包丢失情况 - 这有助于我查看瓶颈可能在哪里,这是一个很好的开端。我还想知道测试的时间,以便我可以将其与客户的其他使用情况以及系统上正在发生的事情相关联。您制作的数据包丢失图表也很有用,但不是孤立的。
作为客户,我的 ISP 无法原谅我的图表,这些图表描绘了数据包丢失情况(我每秒进行一次 250 次 ping,间隔 5 分钟,结合这些 ping 的最小、平均和最大延迟)。我还有一组图表显示我对链接的利用率,还有一组图表显示本地(即非常靠近我)以及他们拥有的几百公里外的另一个特定 POP。
其他观察:
看来你的延迟在下午会增加 - 这意味着我首先要检查的是,当我周围的每个人都在使用 WIFI 时,问题是否出在 WIFI 上。排除这个可能性后,我会开始询问我的 ISP 是否超额订阅了连接。
答案2
这很可能是由于线路某处出现拥塞。可能是您的路由器,但更可能是上游提供商。
您没有说明如何进行 50 次 ping,例如时间间隔是多少,是等待一次失败/成功后再进行下一次 ping,还是一次性发送 50 次 ping(洪水 ping)。
根据我的经验,在拥塞严重期间出现此类丢失并不罕见。这可能是由于 ICMP 流量的优先级较低,但更有可能的是,所有连接的百分比相同 - 只是 TCP 会优雅地重新发送和重新排序数据包,因此您不太可能注意到。
为了更好地了解情况,我建议您执行以下操作:
- 增加 ping 间隔
- 对 google 的 IP 地址(而不是域名)执行 ping 操作 - google.com 将返回多个 A 记录,并且可能你在不知情的情况下使用了不同的终端 IP(因此路由也不同)
- 记录平均响应时间;看看这是否与丢失相关 - 如果相关,则您会看到更高的 ping 往返时间和更高的丢失,则表明存在拥塞。然后,您可以通过存储 traceroute 日志进行调查,看看是否存在可能存在瓶颈的地方,您会看到时间突然增加
- 尝试 ping 多个 Google。过去,当我对网络性能进行基准测试时,我使用 4 或 5 个良好的端点(再次使用 IP 地址而不是主机名)进行测试,这样您就可以排除拥塞或 Google 网络内的特定问题导致您质疑整个连接
答案3
这是大多数住宅 ISP 帐户的典型特征。由于网络拥塞,当人们下班回家后,整个晚上都上网,您会看到高峰。这种晚间高峰在拥有大量在线游戏玩家的高科技社区尤其明显(比如我住的地方,这里是微软的总部所在地雷德蒙德)。