关于服务器与客户端3次握手,4次挥手的解释

第一次握手:

客户端发送一个同步序列标号SYN(m)到服务器,等待服务器确认,此时客户端为SYN_SENT

第二次握手:

服务器接受到了来自客户端的请求,发送确认包ACK(m+1),同时也会发一个SYN(n)包,此时服务器状态为SYN_RECV

第三次握手:

客户端接受了来自服务器的ACK和SYN包,继续发送一个ACK(n+1)包向服务器确认收到,服务器收到以后,此时客户端和服务器的状态都是ESTABLISH,即TCP链接成功

但是如果A端与B端需要断开时,需要4次挥手

第一次挥手:

A端向B端请求断开连接时,会发送一个FIN(finish)标记的报文段

第二次挥手:

B端接受到A端的FIN,B端可能还有数据没有接受完,所以会发送一个确认序号ACK,让A端等一会

第三次挥手:

此时B端已经接受完了数据,可以断开连接了,就会向A端发送FIN序号,让A端明白可以断开连接了

第四次挥手:

A端接受到B端的FIN后,向B端发送一个确认ACK,然后经过一段时间后断开连接(一般为二个最大报文生存时间)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值