首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当鳍-等待-2时间耗尽时,活跃的近距离会是什么状态?

当鳍-等待-2时间耗尽时,活跃的近距离会是什么状态?
EN

Stack Overflow用户
提问于 2014-09-02 10:50:49
回答 1查看 666关注 0票数 1

当FIN_WAIT2时间用完,而最后一个鳍不是从另一边来的时候,下一个状态是什么?TIME-WAIT还是CLOSED

我们知道在linux系统中,可以在文件/proc/sys/net/ipv4 4/tcp_fin_timeout: man (7)中设置fin 2。

  • tcp_fin_timeout (整数;默认值: 60;自Linux2.2以来) 这指定在套接字为强制关闭之前等待最后一个FIN数据包的时间。这严格违反了TCP规范,但需要防止拒绝服务攻击.在Linux2.2中,默认值为180。
  • TCP_LINGER2 (从Linux2.4开始) 孤立的FIN_WAIT2状态sockets.This选项的生存期可用于覆盖该套接字的文件/proc/sys/net/ipv4 4/tcp_sockets.This_sockets.This中的系统范围设置。这不应与套接字(7)级选项SO_LINGER混淆。此选项不应用于打算可移植的代码中。

我不太确定这个TCP套接字是否会在FIN_WAIT2时间用完后消失,是强行关闭,还是传输到CLOSED?还是直接跳到TIME-WAIT状态?

我做了个测试:

1: echo 3>/proc/sys/net/ipv4 4/tcp_fin_timeout 2:在linux上运行tomcat的基准测试

事实证明,大量的TIME-WAIT出现在netstat中并在积累,这是否意味着在FIN_WAIT2时间用完后,套接字跳入了TIME-WAIT

还有一个问题:我改变了这个:echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse就像其他人说的那样:“重用套接字”,并保留tcp_fin_timeout:3。但是没有什么改变,TIME-WAIT只是在积累。tcp_tw_reuse是否与TIME-WAIT状态下的套接字无关,TIME-WAIT套接字不能重用?

echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle似乎可以减少TIME-WAIT计数,并将其保持在较低的水平,从而避免了负载平衡问题。

EN

回答 1

Stack Overflow用户

发布于 2014-09-02 17:17:20

如果您查看TCP/IP状态图FIN_WAIT_2将转换为TIME_WAIT。因此,我可以想象,当FIN_WAIT_2超时时,当FIN没有到达时,Linux就会发生简单的转换。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25621622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档