http的三次握手和四次挥手

三次握手和四次挥手的好处:确保数据的安全和完整

http : 是一种超文本传输协议

传输指的是在客户端和服务器之间进行传输数据

http不仅仅可以传输文本,还可以传输图片、音频、视频等内容

https : 是一种更加安全的传输协议

在普通的传输协议进行了加密处理

像银行、支付宝、网银一般都采用更加安全https协议
在这里插入图片描述

http 的三次握手

在这里插入图片描述

  • 第一次握手: 建立连接,客户端A发送SYN=1、随机产生Seq=client_isn的数据包到服务器B,等待服务器确认。

  • 第二次握手: 服务器B收到请求后确认联机(可以接受数据),发起第二次握手请求,ACK=(A的Seq+1)、SYN=1,随机产生Seq=client_isn的数据包到A。

  • 第三次握手: A收到后检查ACK是否正确,若正确,A会在发送确认包ACK=服务器B的Seq+1、ACK=1,服务器B收到后确认Seq值与ACK值,若正确,则建立连接。

至于为什么要经过三次握手呢,是为了防止服务端开启一些无用的链接,网络传输是有延时的,中间可能隔着非常远的距离,通过光纤或者中间代理服务器等,客户端发送一个请求,服务端收到之后如果直接创建一个链接,返回内容给到客户端,因为网络传输原因,这个数据包丢失了,客户端就一直接收不到服务器返回的这个数据,超过了客户端设置的时间就关闭了,那么这时候服务端是不知道的,它的端口就会开着等待客户端发送实际的请求数据,服务这个开销也就浪费掉了
三次握手成功,就可以进行数据传输了

http的四次挥手

  • 当客户端无数据要传输了,会发送FIN码告诉服务器,我发送完毕了;

  • 当服务端接收完毕后,告诉客户端ACK码,告诉客户端你可以把数据通道关闭了;

  • 当服务器发送完毕之后,也会发送FIN码,告诉浏览器,数据发送完毕;

  • 当客户端接收完毕 之后,同样发送ACK码,告诉服务器,数据接收完毕,你可以关闭;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不熬夜,早点睡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值