TCP三次握手与四次挥手

在这里插入图片描述

  • 为什么需要第三次?如果没有第三次握手,那么server端在第二次回复就必须打开就绪,但是client端发起连接的过程有可能第一次握手延误(网络问题等),以致于认为本次握手失效(重连),那么,对这次失效的client请求进入就绪状态,会造成资源浪费。
  • 另外,由于之后传输(聊天),是基于报文(一个一个字),多个报文可能会走不同的路由,导致报文无序,所以,握手还初始化商定了一个序列值(SYN=Synchronize Sequence Numbers)

在这里插入图片描述

  • 为什么需要四次挥手?本质上只有两次,client端和server都需要FIN(走了)和ACK(好,拜)。接收到FIN回复ACK,两端可以同时关闭(上层发起关闭)。

  • 另外:http是基于tcp/ip的应用层协议,所以http虽然无状态,但是每次请求并不一定需要重新新建一个tcp连接(重新握手),tcp是否重新新建连接对http不可见,例如http的(keep-alive)可能重用连接。

TCP报文如下.

网上找的图。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值