tcp 超时参数

 

建立连接过程中的超时:

tcp_syn_retries :

对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃。

tcp_synack_retries :

对于远端的连接请求SYN,内核会发送SYN + ACK数据报,以确认收到上一个 SYN连接请求包。这是所谓的三次握手( threeway handshake)机制的第二个步骤。这里决定内核在放弃连接之前所送出的 SYN+ACK 数目。

 

数据传输过程中的超时:

tcp_retries1:

一旦重传超过阈值tcp_retries1,主要的动作就是更新路由缓存。
用以避免由于路由选路变化带来的问题。

tcp_retries2:

会直接放弃重传,关闭TCP流

另外:真正起到限制重传次数的并不是真正的重传次数。
而是以tcp_retries1或tcp_retries2为boundary,以rto_base(如TCP_RTO_MIN 200ms)为初始RTO,计算得到一个timeout值出来。如果重传间隔超过这个timeout,则认为超过了阈值。

 

已经建立的连接,没有数据传输的超时:

tcp_keepalive_time

tcp_keepalive_probes

tcp_keepalive_intvl

 

减少 time_wait 的方法:

tcp_tw_reuse & tcp_tw_recycle  想要生效 ,必须同时开启 tcp_timestamp


版权声明:本文为zgb40302原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。