持续丢包

持续丢包

在过去两个月里,我在玩 CSGO 和 Valorant 时一直遇到数据包丢失的问题。我尝试了各种方法来解决它,包括重新安装网络驱动程序、将网络适配器重置为出厂版本、重置 winsock 和刷新 DNS 等。我有一个光纤无线连接和一台 Windows 11 HP Pavillion 游戏笔记本电脑。路由器离我放笔记本电脑的地方很远,所以我无法使用以太网电缆。游戏上的网络诊断显示数据包丢失持续存在,但是当我使用 cmd 上的 ping 命令检查数据包丢失时,它显示数据包丢失率为 0%(我一直在发送数据包,直到我手动中止该命令。)。因此,我可以得出结论,这是一个硬件问题,我的网络适配器有故障吗?我还可以尝试什么来解决这个问题?

答案1

I have a fiber optic wireless connection- 嗯,这对于初学者来说是一个矛盾。

我的结论是,它很可能是通过光纤连接到路由器的无线连接。

现在地铁(我的跟踪路由)将允许您不断地“ping”外部的服务器,并查看相关统计信息。

无线网络分析仪“(Andoid 应用程序)还会告诉您很多有关您的 wifi 的信息;首先是特定位置的信号强度,此外还会告诉您您的邻居是否使用相同频道。

最后,期望在距离 wifi 接入点有一定距离的 wifi 连接上获得可靠的高吞吐量可能实际上是徒劳的。也许可以研究如何将路由器移近,或者是否可以安装 Wifi 扩展器。

答案2

在实时环境中(例如游戏、VoIP 等),迟到的数据包将被丢弃 - 它们毫无用处,因为自发送以来事情已经发生了变化,如果发送了另一个数据包,情况尤其如此它,但到达这些应用程序中无序的数据包通常会被直接丢弃,并且很可能在任何报告的统计数据中被算作丢弃或丢失。

在非实时环境中(例如:ICMP ping、网页浏览、缓冲视频播放等),延迟的数据包反而会降低感知体验。

这几乎可以用作“UDP 与 TCP“案例研究,尽管当然也有一些警告。


最常见的延迟是 7 毫秒,偶尔会飙升至 160 毫秒左右

相对而言,160 毫秒是很久- CSGO 的默认命令速率是64(见cl_cmdratesv_mincmdrate)。这意味着客户端和服务器每秒都会发送 64 个更新,或者每隔 ~15.6 毫秒发送一次。

160 毫秒跨越 10 次以上更新(或“蜱虫”),如果你连接到“高性能“具有更高频率的服务器。

鉴于互联网的复杂性,数据包可能会无序到达......但这也有可能发生在 WiFi 链路上 - 例如由于拥塞和重传,甚至信号强度差和随后的重传。


过去两个月我一直面临丢包问题

路由器离我放置笔记本电脑的地方很远,所以我无法使用以太网电缆。

您已经告诉我们路由器离您的计算机很远,但您可以尝试更改 WiFi 信道或使用改进的天线……归根结底,这是人们避免使用 WiFi 进行游戏等的原因之一。

环境可能由于新电脑、物联网设备、邻居等而发生变化......无法说出原因是什么,但根据您的描述,我建议不使用 WiFi 是一个很好的举措 - 即使只是进行一次测试来证明这一点。


不幸的是,我不知道一个好的和简单的测试“无序数据包“,我不指望任何基于 Web 的测试能够为您提供这种见解,因为他们将使用 HTTPS(因此是 TCP),并且这些详细信息对他们来说是不可见的。如果您愿意,您可以深入研究并尝试使用Wireshark来证明/反驳这个假设。

由于您以游戏为导向,我建议您在下次运行时将超过 ~20ms 的任何时间视为超时ping -t ...

相关内容