【转】Linux内核参数

/proc/sys下内核文件与配置文件sysctl.conf中变量的对应关系:
1.去掉前面部分/proc/sys
2.将文件名中的斜杠变为点
这两条规则可以将/proc/sys中的任一文件名转换成sysctl中的变量名。

Linux内核参数配置
Linux内核参数优化
优化Linux的内核参数来提高服务器并发处理能力

内核参数文件:/etc/sysctl.conf
立即生效:/sbin/sysctl -p

// 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_syncookies = 1

// 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1

// 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。
net.ipv4.tcp_tw_recycle = 1

// 修改系統默认的TIMEOUT时间
net.ipv4.tcp_fin_timeout = 30

// 表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为20分钟。
net.ipv4.tcp_keepalive_time = 1200

// 表示用于向外连接的端口范围。缺省情况下很小:3276861000,改为102465000。
net.ipv4.ip_local_port_range = 1024    65000

// 表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数。 
net.ipv4.tcp_max_syn_backlog = 8192

// 表示系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息
// 默认为180000,改为5000。
net.ipv4.tcp_max_tw_buckets = 5000

其他参数,暂时没用过的:
参考:https://www.cnblogs.com/weifeng1463/p/6825532.html

// 最大socket写buffer,可参考的优化值:873200
net.core.wmem_max = 212992

// 最大socket读buffer,可参考的优化值:873200
net.core.rmem_max = 212992

// TCP写buffer,可参考的优化值: 8192 436600 873200
net.ipv4.tcp_wmem = 4096    16384   4194304

// TCP读buffer,可参考的优化值: 32768 436600 873200
net.ipv4.tcp_rmem = 4096    87380   6291456

// net.ipv4.tcp_mem[0]:低于此值,TCP没有内存压力. 
// net.ipv4.tcp_mem[1]:在此值下,进入内存压力阶段. 
// net.ipv4.tcp_mem[2]:高于此值,TCP拒绝分配socket. 
// 上述内存单位是页,而不是字节.可参考的优化值是:786432 1048576 1572864
net.ipv4.tcp_mem = 21726    28969   43452

// 进入包的最大设备队列.默认是300,对重负载服务器而言,该值太低,可调整到1000
net.core.netdev_max_backlog = 1000

// listen()的默认参数,挂起请求的最大数量.默认是128.对繁忙的服务器,增加该值有助于网络性能.可调整到256.
net.core.somaxconn = 128

// socket buffer的最大初始化值,默认10K
net.core.optmem_max = 20480

// TCP失败重传次数,默认值15,意味着重传15次才彻底放弃.可减少到5,尽早释放内核资源.
net.ipv4.tcp_retries2 = 15

// 意思是如果某个TCP连接在idle 2个小时后,内核才发起probe.如果probe 9次(每次75秒)不成功,内核才彻底放弃,认为该连接已失效.
// 对服务器而言,显然上述值太大. 可调整到: 1800 3 30
net.ipv4.tcp_keepalive_time = 7200 seconds (2 hours) 
net.ipv4.tcp_keepalive_probes = 9 
net.ipv4.tcp_keepalive_intvl = 75 seconds 

内核参数详细描述:
下列文件所在目录:/proc/sys/net/ipv4/

名称 默认值 建议值 描述
tcp_syn_retries
tcp_synack_retries
tcp_keepalive_time
tcp_keepalive_time
tcp_keepalive_intvl
tcp_retries1
tcp_retries2
tcp_orphan_retries
tcp_fin_timeout
tcp_max_tw_buckets
tcp_tw_recycle
tcp_tw_reuse
tcp_max_orphans
tcp_abort_on_overflow
tcp_syncookies
tcp_stdurg
tcp_max_syn_backlog
tcp_window_scaling
tcp_timestamps
tcp_sack
tcp_fack
tcp_dsack
tcp_ecn
tcp_reordering
tcp_retrans_collapse
tcp_wmem
tcp_rmem
tcp_mem
tcp_app_win
tcp_adv_win_scale
tcp_low_latency
tcp_westwood
tcp_bic
ip_forward
ip_local_port_range
ip_conntrack_max

猜你喜欢

转载自blog.csdn.net/Csunshine211/article/details/82585622