wifi中的UDP被过度缓冲

网络工程 IEEE-802.11 UDP
2022-03-01 12:56:18

我们正在使用一个支持 wifi 的设备,它接收 UDP 数据包流(每秒 30 个)。毫无延迟地接收这些消息对我们来说非常重要,这就是我们使用 UDP 而不是 TCP 连接的原因。

我们注意到,一段时间后,许多路由器将开始缓冲这些数据包,从而产生明显的延迟。当此类路由器重新启动时,延迟停止,并随着时间的推移再次开始构建。

我们发现一台具有这些设置的路由器在停用它们时会消失:

  • Wifi 专业设置:
    • 启用 TX 突发:禁用
    • 启用数据包聚合:禁用

这是平常的事吗?我怀疑我们做错了什么,因为其他 UDP 应用程序没有此类问题。有什么方法可以通过更改协议中的某些内容来强制不公开此设置的路由器不缓冲 UDP 消息,而只删除它们无法传递的消息?

我将不胜感激有关如何了解有关此问题的更多信息的任何指示。

谢谢!

1个回答

如果您需要减少延迟并保证及时交付,您需要使用有线以太网。

使用 Wi-Fi,无法保证任何及时交付。无线帧会竞争广播时间,并且可能会因拥塞或无线电干扰而延迟。由于我们在这里处于数据链路层(L2),因此传输的网络层和传输层协议根本无关紧要。因此,UDP 或 TCP 数据包没有区别。

一些 WAP可能支持基于 L4 的 QoS(在拥塞时更快地丢弃 UDP 帧),但这不是标准的。请将您的设备详细信息(型号和经过消毒的配置)添加到您的问题中,也许这里的任何人都可以帮助您。请注意,此处仅讨论具有可选付费支持的商业级硬件。

禁用突发和其他无线电优化会有效地占用更多的广播时间并导致更多的拥塞。如果设备以这种方式工作得更好,这对其整体质量来说并不是一个好兆头。

通常,要摆脱无线网络,您需要优化 Wi-Fi 网段以获得最大吞吐量(放弃传统 802.11 模式、移除远距离节点、将 AP 和客户端移得更近、选择最不拥塞的信道、排除/移除其他干扰源,...)。