TCP三次握手、四次挥手到底是如何进行的

TCP三次握手

第一次握手

服务器端对新的客户端都会置于Listen状态。
首先,客户端向服务器端发出连接请求报文,发送SYN=1,seq=x,此时客户端的状态为SYN-SENT

第二次握手

服务器端收到连接请求报文后,同样发送报文给客服端确认,内容为SYN=1,ACK=1,ack=x+1,seq=y,此时服务器端状态
Listen->SYN-RCVD

第三次握手

客户端收到服务器端的确认后,再次发送确认报文ACK=1,ack=y+1,
seq=x+1,此时客户端状态由SYN-SENT->ESTABLISHED
服务器再次收到后状态由SYN-RCVD->ESTABLISHED

至此三次握手完成,客户端和服务器端可进行数据传递~

TCP四次挥手

第一次挥手

客户端向服务器端发出断开连接请求报文,发送FIN=1,seq=u,客户端状态
ESTABLISHED->FIN-WAIT-1

第二次挥手

服务器端收到客户端请求后,确认请求,发送ACK=1,ack=u+1,seq=v,服务器端状态由ESTABLISHED->CLOSE-WAIT;
客户端收到确认后,状态由FIN-WAIT-1->FIN-WAIT-2

第三次挥手

服务器端也发送断开连接请求报文,发送FIN=1,ACK=1,ack=u+1,seq=w,服务器端状态由CLOSE-WAIT->LAST-ACK

第四次挥手

客户端收到请求报文后,发送ACK=1,ack=w+1,seq=u+1,客户端状态
FIN-WAIT-2->TIME-WAIT
服务器端收到确认后,服务器端状态由LAST-ACK->CLOSED
客户端经过2MSL的等待后,状态由TIME-WAIT->CLOSED

至此四次挥手完成。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值