TCP的三次握手、四次断开

TCP的三次握手目的是为了让客户端与服务器建立连接,便于以后一系列的数据传输。

三次握手

第一次握手:客户端向服务器发送一个标识为SYN的一个可连接请求数据包(该包序列号随机产生,即seq number=x),请求与服务器进行连接。

第二次握手:服务器确认接收到客户端发来的SYN报文后,回以自己的SYN报文(seq number=y序列号的一个SYN连接请求包)作为应答,并向客户端发送带有ACK标识的一个应答数据包(ack=y+1)。

第三次握手:客户端接收到服务器发来的SYN+ACK的数据包后,会向服务器发送一个带有ACK标识的确认包(ack=y+1),发送完毕后,客户端与服务器进入ESTABLISHED状态,即连接成功。

四次断开

第一次断开:客户端需要给服务器传输的数据传输完毕后,客户端会向服务器发送一个带有FIN标识的数据包(FIN=1,seq number=x),要求与服务器断开连接。

第二次断开:服务器收到带有FIN标识的数据包后,向客户端回以带有ACK标识的数据包,即ACK报文(ACK=1,ack=x+1),表明服务器已经收到客户端的报文了,此时服务器停止接受连接,即服务器为CLOSE_WAIT状态。

第三次断开:服务器会给客户端发送一个带有FIN标识的数据包(FIN=1,seq number=y) ,并且发送一个带有ACK标识的确认包(ACK=1,ack=x+1)以此来表示服务器需要给客户端传输的数据已经传输完毕,用来停止服务器向客户端发送数据。

第四次断开:客户端收到FIN标识的数据包后,依旧会回以一个ACK标识的报文作为应答(ACK=1,ack=y+1),此时客户端停止接受连接,即客户端为CLOSE_WAIT状态。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值