修复家庭网络中的缓冲膨胀

cuu*_*508 9 networking wireless-networking latency bufferbloat

在我们的家庭网络中,连续的网络 IO 发生延迟变得荒谬。轻负载情况下很好,但如果我要同步大量小文件,则很快就无法使用 -- 其他传输基本上停止了。Ping 只能勉强通过。

简单的拓扑结构——一个宽带调制解调器/WIFI 路由器在一个盒子里,有一些无线和一些有线客户端。

我已经尝试ifconfig wlan0/eth0 txqueuelen 1在所有客户端上进行设置,这似乎有所帮助,但作用不大。

欢迎提示:我应该如何诊断和消除延迟问题?我可以在客户端上设置更多配置设置,或者更好的 WIFI 路由器可以提供帮助吗?

Maj*_*nko 3

您需要的是服务质量和可调整的排队算法。如果您乐于尝试 Linux / FreeBSD 的内部结构并且有一些闲钱,我建议您进行如下设置:

+------+     +--------+      +------+<----> Wireless Access Point
|Router|<--->|Firewall|<---->|Switch|
+------+     +--------+      +------+<----> Wired computers
Run Code Online (Sandbox Code Playgroud)

其中防火墙是 Linux 或 FreeBSD 或具有 2 个网卡的类似机器,可以对流量施加一些高级排队和服务质量规则。

当通过较慢的互联网连接进行大量数据传输时,我必须执行类似的操作来阻止 DNS 查找超时。

另一种选择是获得更好的路由器 - 您可以在其上安装 dd-wrt ​​或 open-wrt,因为我相信这两个固件比 bog 标准家用路由器提供更多的 QoS 等方式。