TIME_WAIT状态

今天在调试一个服务器-客户端的架构,经常出现当结束一个程序的时候,出现TIME_WAIT的状态,于是查了下。

首先这个状态是TCP网络保证全双工可靠通信的一个方式,如果没有处理,一般保持一到四分钟就会解除。


然后还有点闲余时间,来复习下TCP:

我们可以通过下面命令来统计我们当前主机的链接状态:

$ netstat -ant|awk '/^tcp/ {++S[$NF]} END {for(a in S) print (a,S[a])}'
# 输出
LISTEN 36
ESTABLISHED 30
SYN_SENT 3
TIME_WAIT 84

TCP有以下状态:

状态描述
CLOSED无连接是活动的或正在进行
LISTEN服务器在等待进入呼叫
SYN_RECV一个连接请求已经到达,等待确认
SYN_SENT应用已经开始,打开一个连接
ESTABLISHED正常数据传输状态
FIN_WAIT1应用说它已经完成
FIN_WAIT2另一边已同意释放
ITMED_WAIT等待所有分组死掉
CLOSING两边同时尝试关闭
TIME_WAIT另一边已初始化一个释放
LAST_ACK等待所有分组死掉

参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值