TCP的三次握手,四次挥手建立连接过程

TCP的三次握手

在这里插入图片描述
三次握手是指建立TCP连接协议时,需要在客户端和服务器之间发送三个包,握手过程中传送的包里不含数据,三次握手完毕,客户端与服务器才正式开始传送数据

第一次握手:客户端发送第一个包,其中SYN(建立连接时用来同步序号)标志位为1,ACK(表明确认号字段有效)为0,发送初始序号seq=x(随机的int值)
第二次握手:服务端收到客户端发送来的包后,便向客户端发送第二个包,ACK为1(ACK为1表明向客户端表达确认收到客户端传来的包),确认号ack=x+1;因为连接是双向的,所以服务器也向客户端发出连接请求,在第二个包中,应将SYN标志置为1,发送序列号seq=y(随机int)
第三次握手:客户端收到服务器传来的包后,向服务器发送第三个包,向服务器发出确认,ACK置为1,SYN为0,确认号为ack=y+1,发送顺序号seq=x+1
在这里插入图片描述

仅使用二次握手而不适用三次握手会怎么样

假定客户端给服务器发送一个连接请求报文段,服务器收到这个报文段,并发送了确认应答报文段。按照两次握手的协定,服务器认为连接已经成功建立,可以开始发送数据报文段
但是在另一方面,客户端在服务器的应答报文段在传输中被丢失的情况下,将不知道服务器是否已准备好,不知道服务器建议用什么样的序列号用于服务器到客户端的传输,也不知道服务器是否同意客户端的初始序列号,客户端甚至怀疑服务器是否收到自己的连接请求报文段;在这种情况下,客户端会认为连接还未成功,将丢弃服务器法来的任何数据报文段,只等待接受连接确认应答报文段,而服务器在法出的数据报文段超时后,重复发送同样的报文段,就会造成死锁

TCP四次挥手

在这里插入图片描述
第一次挥手:主动关闭方发送第一个包,其中FIN标志位为1,发送顺序号seq=m
第二次挥手:被动关闭方收到释放连接的通知后,即发出确认,FIN需要消耗一个序号,所以其确认号为ack=m+1,并将ACK标志置为1,这样从主机到服务器的连接就关闭了,此时连接处于半关闭状态,但如果服务器还发送数据,主机仍能接受(只是关闭了主机到服务器的连接,服务器到主机的连接还未关闭)
第三次挥手服务器向主机的数据发送结束后,TCP释放服务器到主机的连接。服务器发出一个包,其中的FIN标志位为1,发送序列号seq=n,因为标志位ACK不需要消耗序号,所以此时的ack仍为ack=m+1
第四次挥手:主机必须向服务器发出确认 ,因为FIN标志需要消耗一个序列,所以给出的确认号为ack=n+1
最终,双方连接释放全部完成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TCP(Transmission Control Protocol)是Internet协议族的传输层协议,它提供可靠的数据传输服务。三次握手四次挥手TCP连接建立和断开的关键步骤。 **三次握手(Three-way Handshake):** 1. **客户端发起(SYN)**:客户端发送一个SYN(同步序列号)包给服务器,请求建立连接。这个包包含了随机生成的初始序列号seq。 2. **服务器响应(SYN+ACK)**:服务器收到SYN后,回应一个SYN+ACK包,确认收到了客户端的请求,并且也为自己的序列号设置了一个值。同时,它也设置了期望的序列号作为确认号ack。 3. **客户端确认(ACK)**:客户端收到服务器的SYN+ACK后,发送一个ACK(确认)包,确认收到了服务器的响应,并且设置确认号ack为服务器SYN+ACK包期望的序列号+1。 **四次挥手(Four-way Handshake):** 1. **主动关闭(FIN)**:当数据传输完成后,客户端想要关闭连接,它会发送一个FIN(结束)包给服务器,请求终止连接。 2. **服务器响应(ACK)**:服务器收到FIN后,发送一个ACK,确认收到了关闭请求,并进入半关闭状态(只允许接收数据,但不再发送)。 3. **服务器关闭(FIN)**:服务器在完成所有未发送的数据后,发送一个FIN给客户端,表示服务器也准备关闭连接。 4. **客户端确认(ACK)**:客户端收到服务器的FIN后,发送一个ACK确认,至此,双方都进入了关闭等待状态,等待对方的确认。一旦客户端收到服务器的ACK,连接正式断开。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值