在 ubuntu 上模拟 tcp 窗口满

在 ubuntu 上模拟 tcp 窗口满

我有 2 个 ubuntu 盒子。它们之间有防火墙。我试图模拟 tcp 窗口已满的情况,换句话说,我希望 ubuntu 服务器向客户端发送 tcp 窗口已满标志。以下是 ubuntu 客户端上的 tcp 值。

/proc/sys/net/ipv4/tcp_mem:8970 11963   17940
/proc/sys/net/ipv4/tcp_rmem:4096        87380   3092256
/proc/sys/net/ipv4/tcp_wmem:4096        16384   3092256

我还在客户端上禁用了窗口缩放。

/proc/sys/net/ipv4/tcp_window_scaling:0

测试:然后我使用 scp 将一个 2GB 的文件从服务器传输到此客户端。在防火墙上,我可以捕获数据包。我似乎没有达到 TCP 窗口已满的情况。更大的问题是窗口大小值已达到最大值 65535。有没有办法在 ubuntu 上减小该窗口大小值,以便我可以更快地强制达到 TCP 窗口已满的情况?

答案1

在 ubuntu 上,你可以net.core.wmem_max = 16777216更改/etc/sysctl.conf

相关内容