web旺旺技术变迁的一些笔记痕迹
如何确定一个连接?
这是一个很有价值而又让人无法一下子得出答案的问题:
答:原ip,原端口,目的ip,目的端口。
TCP状态
结合TCP各个状态的转换图,来看看Linux的TCP调优参数及说明:
Linux的TCP调优参数及说明
//向外连接可用端口范围
echo “1024 65535” > /proc/sys/net/ipv4/ip_local_port_range
//time_wait连接重用
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
//快速回收time_wait连接
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
//最大time_wait连接长度
echo 180000 > /proc/sys/net/ipv4/tcp_max_tw_buckets
//最大等待处于客户端还没有应答回来的连接数(在三次握手中)
echo 20000 > /proc/sys/net/ipv4/tcp_max_syn_backlog
//每一个处于监听(Listen)状态端口的监听队列的长度(establisthed 状态之前)
echo 10000 > /proc/sys/net/core/somaxconn
//最大等待cpu处理的包的数目
echo 10000 > /proc/sys/net/core/netdev_max_backlog
//最大打开文体数
echo 2000000 > /proc/sys/fs/file-max
//FIN-WAIT-2状态等待回收时间
echo 3 > /proc/sys/net/ipv4/tcp_fin_timeout
//最大的TCP数据接收缓冲大小
/proc/sys/net/core/rmem_max
//默认的TCP数据接收缓冲大小
/proc/sys/net/core/rmem_default
//最大的TCP数据发送缓冲大小
/proc/sys/net/core/wmem_max
//默认的TCP数据接收缓冲大小
/proc/sys/net/core/wmem_default
/*
PS:
/proc目录下的所有内容都是临时性的, 所以重启动系统后任何修改都会丢失,
增加到/etc/rc.local文件,系统重新引导的时候会自动修改
*/
有爱
^_^ 非常感谢这样的分享会,受益良多啊!