TCP/IP状态迁移

TCP(传输控制协议)是一种面向连接的流式控制协议,它定义了不同的状态以管理通信过程中的连接。TCP 状态迁移描述了 TCP 连接在不同状态之间的转换过程,常见的 TCP 状态包括 CLOSED、LISTEN、SYN_SENT、SYN_RECEIVED、ESTABLISHED、FIN_WAIT_1、FIN_WAIT_2、CLOSE_WAIT、LAST_ACK 和 TIME_WAIT 等。

下面是一个简单的客户端发起连接: TCP 状态迁移示意流程:

1、客户端发起连接

CLOSED -> SYN_SENT

客户端发送 SYN 包(同步请求)给服务端,并且状态切换为 SYN_SENT

2、服务端响应连接

SYN_SENT -> SYN_RECEIVED -> ESTABLISHED

服务端发送 SYN-ACK 包(同步应答)给客户端,SYN_RECEIVED(触发 accept)

3、客户端确认连接

SYN_SENT -> ESTABLISHED

客户端发送 ACK 包(确认)给服务端

4、数据传输过程

ESTABLISHED

数据通过连接在客户端和服务端之间传输

5、关闭连接

ESTABLISHED -> FIN_WAIT_1

客户端发送 FIN 包(结束连接)给服务端

FIN_WAIT_1 -> CLOSE_WAIT

服务端发送 ACK 包给客户端

CLOSE_WAIT -> LAST_ACK

服务端发送 FIN 包给客户端

LAST_ACK -> CLOSED

客户端发送 ACK 包给服务端,连接关闭

6、连接终止

TIME_WAIT

客户端和服务端等待一段时间(2MSL,最长报文段寿命),确保最后一个 ACK 能够到达对方

相关推荐
那我掉的头发算什么3 分钟前
【javaEE】IP协议详解
网络·网络协议·tcp/ip·计算机网络
小猪佩奇TONY7 分钟前
Linux 内核学习(13) --- linux 内核并发与竞态
linux·服务器·学习
倔强的石头1068 分钟前
Linux 进程深度解析(四):环境变量 —— 进程的“环境 DNA”
linux·运维·服务器
爱尔兰极光11 分钟前
计算机网络-- TCP
网络·tcp/ip·计算机网络
NBD诺必达18 分钟前
攻克日本TikTok直播网络难关:专线选型与延迟优化指南
网络·tiktok直播·日本tiktok·跨境直播·网络专线
sunflower_level220 分钟前
【ssh key】登陆云服务器,github的安全密码
服务器·ssh·github
Neolnfra28 分钟前
华为中小型企业网络建设
网络·华为·毕业设计·ensp代做
m0_5348750531 分钟前
Ditto局域网同步功能实现宿主机和VMware虚拟机之间的复制粘贴共享
linux·运维·服务器
皮蛋皮00733 分钟前
如何在VMware Workstation Pro安装eNSP Pro?
网络
zbguolei38 分钟前
Windows平台下SRS实时视频服务器的搭建
服务器·windows·音视频