Linux中多个接口的自定义TCP参数
我的问题是关于Linux中的TCP参数。现在,我想更改以下的默认值:Linux中多个接口的自定义TCP参数,linux,tcp,Linux,Tcp,我的问题是关于Linux中的TCP参数。现在,我想更改以下的默认值: 初始超时 确认延迟 空闲连接超时 我有一个带有内核2.6.x和2个以太网接口的Linux机箱。我知道TCP是一个与以太网设备无关的堆栈。话虽如此,问题是:有没有办法为每个接口设置自定义值?例如,在eth0中侦听连接的服务器将为空闲连接超时使用一个值,而在eth1中侦听连接的另一个服务器可以为该参数使用不同的值 任何考虑都将不胜感激。 致以最诚挚的问候, 蒂亚戈据我所知,你不能 您可以为tcp堆栈设置内核参数(尝试执行sysct
致以最诚挚的问候,
蒂亚戈据我所知,你不能
您可以为tcp堆栈设置内核参数(尝试执行
sysctl-a | grep-tcp
),也可以在tcp套接字上设置参数(请参见man-tcp
),但两者都不能控制ACK延迟。如果您有内核源代码,则在/usr/src//include/net/tcp.h
中对其进行编码。看起来延迟确认是硬编码的:
空闲连接超时可能是指TCP保持活动状态。
您也不能为每个接口设置此选项。它解释道。
控制TCP保持活动状态行为的值由以下文件配置:
/proc/sys/net/ipv4/tcp_keepalive_time
/proc/sys/net/ipv4/tcp_keepalive_intvl
/proc/sys/net/ipv4/tcp_keepalive_probes
默认情况下,TCP连接已禁用TCP保持活动状态。愿意使用该功能的应用程序应通过调用setsockoption(2)
和SO_KEEPALIVE
来启用该功能
/proc/sys/net/ipv4/tcp_keepalive_time
/proc/sys/net/ipv4/tcp_keepalive_intvl
/proc/sys/net/ipv4/tcp_keepalive_probes