Linux TCP连接参数调优

Linux TCP连接参数调优,第1张

优化以下tcp参数,除了进一步提升服务器的负载能力之外,还能够防御一定程度的DDoS、CC和SYN攻击然后,在/etc/sysctl.conf文件中,加入下面的几行内容:

最后输入下面的命令,让内核参数生效:

简单的说明下,上面的参数的含义:

备注:

Linux默认的TIME_WAIT时长一般是60秒(等于2MSL),

定义在内核的include/net/tcp.h文件中:

首先要知道一点所有的TCP/IP的参数修改是临时的,因为它们都位于/PROC/SYS/NET目录下,如果想使参数长期保存,可以通过编辑/ETC/SYSCTL.CONF文件来实现,这里不做详细说明,只针对Linux的TCPIP内核参数优化列举相关参数:

1、为自动调优定义socket使用的内存

2、默认的TCP数据接收窗口大小(字节)

3、最大的TCP数据接收窗口

4、默认的TCP发送窗口大小

5、最大的TCP数据发送窗口

6、在每个网络接口接收数据包的速率比内核处理这些包速率快时,允许送到队列的数据包最大数目

7、定义了系统中每一个端口最大的监听队列长度

8、探测消息未获得相应时,重发该消息的间隔时间

9、在认定tcp连接失效之前,最多发送多少个keepalive探测消息等。

相关优化参数代码:

sh#  net.core.wmem_default 发送缓存区预留内存默认大小 默认值 16k #  net.core.rmem_default 接受缓存区预留内存默认大小 默认值 16k #  net.core.wmem_max 发送缓存区预留内存最大值 默认值 128k #  net.core.rmem_max 接受缓存区预留内存最大值 默认值 128k #  net.unix.max_dgram_qlen 进程间通信发送数据, 默认10 #  net.ipv4.tcp_syncookies #  net.ipv4.syn_retries #  net.ipv4.tcp_fin_timeout 如果socket连接由本端关闭,则保持在FIN-WAIT-2状态的时间 #  net.ipv4.tcp_keepalive_time 当keepalive起作用的时候,tcp发送keepalive消息的频度,默认2小时 #  net.ipv4.route_max_size 路由缓存最大值


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8389487.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存