尜尜人物
Java网络编程系列之TCP连接状态
关注作者
前往小程序,Get
更优
阅读体验!
立即前往
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
尜尜人物
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
社区首页
>
专栏
>
Java网络编程系列之TCP连接状态
Java网络编程系列之TCP连接状态
尜尜人物
关注
发布于 2020-02-12 23:27:04
1.1K
0
发布于 2020-02-12 23:27:04
举报
文章被收录于专栏:
尜尜人物的专栏
1、TCP连接状态
LISTEN:Server端打开一个socket进行监听,状态置为LISTEN
SYN_SENT:Client端发送SYN请求给Server端,状态由CLOSED变为SYN_SENT
SYN_RECV:Server端接收Client端发送的SYN请求,并回应ACK给Client端,同时发送SYN请求给Client端,状态由LISTEN变为SYN_RECV
ESTABLISHED:Client端(接收Server端的ACK,状态由SYN_SENT变为ESTABLISHED)和Server端(接收Client端的ACk,状态由SYN_RECV变为ESTABLISHED)完成三次握手,状态置为ESTABLISHED,连接建立
FIN_WAIT1:主动关闭端发出FIN请求主动关闭连接,状态由ESTABLISHED变为FIN_WAIT1
CLOSE_WAIT:被动关闭端接收FIN请求,并回应ACK给主动关闭端,
同时将FIN作为文件结束符发送给上层应用程序
,状态由ESTABLISHED变为CLOSE_WAIT
FIN_WAIT2:主动关闭端接收到ACK,状态由FIN_WAIT1变为FIN_WAIT2
LAST_ACK:被动关闭端一段时间后,接收到文件结束符的上层应用程序,调用CLOSE关闭连接,此时被动关闭端会发送FIN请求给主动关闭端,状态由CLOSE_WAIT变为LAST_ACK
TIME_WAIT:在主动关闭端接收到FIN请求,并回应ACK给被动关闭端,状态由FIN_WAIT2变为TIME_WAIT
CLOSING:两端同时发起关闭请求时,会由FIN_WAIT1变为CLOSING
CLOSED:1)被动关闭端收到主动关闭端的ACK,状态由LAST_ACK变为CLOSED;2)TIME_WAIT状态一段时间后,状态自动置为CLOSED
UNKNOWN:未知的Socket状态,不正常
SYN:(同步序列编号,SynchronizeSequence Numbers)该标志仅在三次握手建立TCP连接时有效,表示一个新的TCP连接请求
ACK:(确认编号,AcknowledgementNumber)是对TCP请求的确认标志,同时提示对端系统已经成功接收所有数据
FIN:(结束标志,FINish)用来结束一个TCP回话.但对应端口仍处于开放状态,准备接收后续数据
2、TCP连接建立(三次握手)
3、TCP连接断开(四次挥手)
4、TCP连接状态分析
若服务器出现了大量TIME_WAIT状态的连接,说明该服务器经常主动发起连接关闭操作,这是不可取的;
若一个系统频繁出现CLOSE_WAIT状态的连接,说明该系统并未立即处理连接关闭请求,系统存在缺陷;
本文参与
腾讯云自媒体同步曝光计划
,分享自作者个人站点/博客。
原始发表:2020-01-09 ,如有侵权请联系
cloudcommunity@tencent.com
删除
前往查看
numbers
server
socket
time
本文分享自
作者个人站点/博客
前往查看
如有侵权,请联系
cloudcommunity@tencent.com
删除。
本文参与
腾讯云自媒体同步曝光计划
,欢迎热爱写作的你一起参与!
numbers
server
socket
time
评论
登录
后参与评论
0 条评论
热度
最新
推荐阅读
LV.
文章
0
获赞
0
目录
1、TCP连接状态
2、TCP连接建立(三次握手)
3、TCP连接断开(四次挥手)
4、TCP连接状态分析
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
产品介绍
产品文档
2核2G服务器新用户限时秒杀28元/年
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档
0
0
0
推荐