tcp三次握手四次挥手

本文详细解析了TCP协议中的三次握手过程,包括客户端和服务端如何通过交换SYN和ACK标志位来建立连接。此外,还介绍了四次挥手的过程,即客户端和服务端如何通过发送FIN和ACK报文来关闭连接。

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

三次握手

TCP的三次握手是怎么进行的:客户端发送一个SYN=1,ACK=0标志的数据包给服务端,请求进行连接,这是第一次握手;服务端收到请求并且允许连接的话,就会发送一个SYN=1,ACK=1标志的数据包给客户端,告诉它,可以通讯了,并且让客户端发送一个确认数据包,这是第二次握手;最后,客户端发送一个SYN=0,ACK=1的数据包给服务端,告诉它连接已被确认,这就是第三次握手。之后,一个TCP连接建立,开始通讯

这里写图片描述

*SYN:同步标志
*ACK:确认字符

四次挥手

假设客户端发起中断连接请求,也就是发送FIN报文给服务端,意思是说”客户端没有数据要发给你了”,但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以继续发送数据,这是第一次挥手。 服务端收到FIN报文后因为你还有数据没有发送完成 所以先发送ACK,”告诉客户端,你的请求我收到了,但是我还没准备好,请继续你等我的消息”,这是第二次挥手。客户端收到ACK后就进入FIN_WAIT状态,继续等待服务端的FIN报文。当服务端确定数据已发送完成,则向客户端发送FIN报文,”告诉客户端,好了,我这边数据发完了,准备好关闭连接了”,这是第三次挥手。客户端收到FIN报文后,”就知道可以关闭连接了,但是他还是不相信网络,怕服务端不知道要关闭,所以发送ACK后进入TIME_WAIT状态这是第四次挥手,如果服务端没有收到ACK则可以重传。“,服务端收到ACK后,”就知道可以断开连接了”。客户端等待了2MSL后依然没有收到回复,则证明服务端已正常关闭,那好,我客户端也可以关闭连接了。Ok,TCP连接就这样关闭了!

这里写图片描述

*FIN:结束标志

参考文章
TCP协议中的三次握手和四次挥手(图解)
TCP报文中的SYN,FIN,ACK,PSH,RST,URG

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值