TCP中的三次握手和四次挥手

本文详细解析了TCP协议中三次握手建立连接及四次挥手断开连接的过程。三次握手确保通信双方准确同步起始序号,而四次挥手则确保连接释放时双方数据完整传输。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TCP中的三次握手和四次挥手

三次握手

TCP的链接建立是一个三次握手的过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行,主要步骤如下:

这里写图片描述

  • 客户端将标志位设置为1,即SYN = 1,并随机产生一个连接序号seq的值,即seq = j,并将该数据包发送给Server(服务器端)

  • Server(服务器端)收到数据包之后由标志位 SYN = 1知道Client请求建立连接,Server将标志位SYNACK都设置为1,即 SYN = 1 ACK = 1,将确认序号 ack 设置为 ack = j + 1,随机产生一个值 seq = k,并将该数据包发送给Client以确认连接请求。

  • Client收到确认后,检查ack是否为 j + 1ACK 是否为 1,如果正确则将标志位 ACK 设置为1,确认序号 ack = k + 1,并将该数据包发送给Server,Server收到该数据包之后,会去检查ack 是否为 k + 1,ACK是否为1,如果正确则建立连接成功,完成三次握手

四次挥手

这里写图片描述

  • Client发送一个标志位 FIN = 1,以及随机产生一个连接序号 seq = j

  • Server收到 FIN 之后,判断FIN是否等于1,如果 FIN = 1, 则会发送一个 ACK = 1 给 Client,以及 确认的序号 ack,ack = j + 1

  • Server发送一个 FIN = 1,以及产生随机的连接序号,seq = k,给Client。

  • Client接收到Server发送来的FIN后,判断是否 FIN = 1,如果等于1,紧接着发送一个 ACK = 1 给Server,确认的序号 ack = k + 1. Server 收到之后,进入关闭状态,完成四次挥手。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值