TIME_WAIT 状态是出现在主动发起连接关闭的一点,从 TIME_WAIT 状态到 CLOSED 状态有个超时时间为 2*MSL
net.ipv4.tcp_tw_recycle = 0 关掉快速回收
net.ipv4.tcp_tw_reuse = 1 开启tw 状态的端口复用(客户端角色)
net.ipv4.tcp_timestamps = 1 复用需要timestamp 校验为1
net.ipv4.tcp_max_tw_buckets = 30000 放大bucket
net.ipv4.ip_local_port_range = 15000 65000 放大本地端口范围
net.ipv4.tcp_fin_timeout = 15 缩短超时时间
tw 满了会怎么样?
出现信息:TCP: time wait bucket table overflow。
tw 的开销是什么?
关于 close_wait
CLOSE_WAIT 的状态是 服务器端/ 客户端程序收到外部过来的 FIN 之后,响应了 ACK 包,之后就进入了 CLOSE_WAIT 状态。