Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
禁用linux tcp接收器窗口自动调整_Linux_Tcp_Performance - Fatal编程技术网

禁用linux tcp接收器窗口自动调整

禁用linux tcp接收器窗口自动调整,linux,tcp,performance,Linux,Tcp,Performance,我正在使用linux(2.6.43.8-1.fc15.i686.PAE)并且在禁用TCP接收器窗口的自动调谐时遇到了一些问题 我正试图找到一个给定的设置,这将迫使我的客户机公布一个固定的接收器窗口。我试图给net.core.rmem_max(/proc/sys/net/core/rmem_max)和net.core.rmem_default(/proc/sys/net/core/rmem default)以及ipv4.tcp_rmem(net.ipv4.tcp_rmem)赋予相同的给定值,但在检

我正在使用
linux(2.6.43.8-1.fc15.i686.PAE)
并且在禁用TCP接收器窗口的自动调谐时遇到了一些问题

我正试图找到一个给定的设置,这将迫使我的客户机公布一个固定的接收器窗口。我试图给
net.core.rmem_max
(/proc/sys/net/core/rmem_max)和
net.core.rmem_default
(/proc/sys/net/core/rmem default)以及
ipv4.tcp_rmem
(net.ipv4.tcp_rmem)赋予相同的给定值,但在检查广告窗口(使用wireshark)时,它绝对不会改变任何东西

这是一个关于TCP行为的研究,如果有人能回答我,我将非常感激

提前谢谢


PS:我利用来调整参数

关闭TCP接收缓冲区大小的自动调整。在接收器上:

$ sudo sysctl net.ipv4.tcp_moderate_rcvbuf=0


非常感谢您快速清晰的回答。这也给了我一个指针,指向所有参数的详细解释位置。然而,尽管尝试了两个cmd(并且仍然将上述参数保持在相同的值),我可以观察到来自我的客户机的广告TCP窗口正在增加(在我的实验中,我下载了一个60MB的对象,从17536 win开始,到1049805结束)。有人知道这是从哪里来的吗?提前感谢检查,您应该禁用TCP窗口缩放echo 0>/proc/sys/net/ipv4/TCP_窗口缩放取消激活接收器windo自动调谐:
$sudo echo 0>/proc/sys/net/ipv4/TCP_medium\u rcvbuf
然后将自动调谐的最小/默认/最大值固定为4000000
$sudo echo 4000000 4000000>/proc/sys/net/ipv4/TCP\rmem
修复为4000000 rmem_默认值/max
$sudo echo 4000000>/proc/sys/net/core/rmem_默认值
$sudo echo 4000000>/proc/sys/net/core/rmem_max
通过0.0.0 dev eth0 protostatic initrwnd将播发接收器窗口的第一个值覆盖到足以超过4MB的值
$ip路由更改默认值5000
sudo echo foo>xxx
将永远无法按预期工作,因为重定向(>)是由shell完成的。以root用户身份运行
echo
将一事无成。您可能需要这样做:
echo foo | sudo tee xxx
$ sudo echo 0 > /proc/sys/net/ipv4/tcp_moderate_rcvbuf