net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 30
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 30
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 30
echo 100000 > /proc/sys/net/netfilter/nf_conntrack_max
net.ipv4.tcp_fin_timeout = 30 修改系統預設的TIMEOUT時間(預設120)
net.ipv4.tcp_max_syn_backlog = 3096 半連接配接隊列長度
net.ipv4.tcp_keepalive_time = 300 表示當keepalive起用的時候,TCP發送keepalive消息的頻度。預設是2小時,改為5分鐘。
net.ipv4.tcp_syncookies = 1 表示開啟SYN Cookies。當出現SYN等待隊列溢出時,啟用cookies來處理,可防範少量SYN攻擊,預設為0,表示關閉;
net.ipv4.tcp_tw_recycle = 1 表示開啟TCP連接配接中TIME-WAIT sockets的快速回收,預設為0,表示關閉
net.ipv4.tcp_timestamps = 1 時間戳 關閉timestamps後,tw_recycle功能是失效的問題
net.ipv4.tcp_tw_reuse = 1 表示開啟重用。允許将TIME-WAIT sockets重新用于新的TCP連接配接,預設為0,表示關閉;
net.ipv4.ip_local_port_range = 4096 60000
net.ipv4.icmp_echo_ignore_all = 0 允許Ping
net.ipv4.tcp_ecn = 0
net.ipv4.tcp_synack_retries = 1 防SYN Flood(洪水攻擊) 預設為5,表示重發5次,每次等待30~40秒,即“半連接配接”預設hold住大約180秒
表示回應第二個握手包(SYN+ACK包)給用戶端IP後,如果收不到第三次握手包(ACK包)後,不進行重試,加快回收“半連接配接”,不要耗光資源。
net.ipv4.tcp_max_tw_buckets = 655360 新的解決TIME_WAIT連接配接過多的方法
#系統允許的檔案句柄的最大數目,因為連接配接需要占用檔案句柄
fs.file-max = 819200
#用來應對突發的大并發connect 請求
net.core.somaxconn = 65536
#最大的TCP 資料接收緩沖(位元組)
net.core.rmem_max = 1024123000
#最大的TCP 資料發送緩沖(位元組)
net.core.wmem_max = 16777216
#網絡裝置接收資料包的速率比核心處理這些包的速率快時,允許送到隊列的資料包的最大數目
net.core.netdev_max_backlog = 165536
#本機主動連接配接其他機器時的端口配置設定範圍
net.ipv4.ip_local_port_range = 10000 65535
小米的優化
net.ipv4.tcp_ecn=0
net.ipv4.route.flush=1
net.ipv4.tcp_rfc1337=1
net.ipv4.ip_no_pmtu_disc=0
net.ipv4.tcp_sack=1
net.ipv4.tcp_fack=1
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_rmem=4096 39000 187000
net.ipv4.tcp_wmem=4096 39000 187000
net.ipv4.tcp_mem=187000 187000 187000
net.ipv4.tcp_no_metrics_save=1
net.ipv4.tcp_moderate_rcvbuf=1
本文轉自 freeterman 51CTO部落格,原文連結:http://blog.51cto.com/myunix/1621374,如需轉載請自行聯系原作者