• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

http httphotoshop http2 http3

武飞扬头像
Rick_Jci
帮助1

http http2 http3 https

http: 一个简单的请求响应协议(进行超文本,文本,图像、视频的传输)

http和tcp的关系

http指定了客户端可能发送给服务器什么的消息以及得到什么样的响应;Tcp只是http的工具人,http把数据交给tcp传输

tcp和udp:

他们的作用都会建立连接,数据传输通道;但是tcp会对数据进行分组和排序,可以保证数据不会丢失;udp不提供数据包分组和排序,传输数据快,无法确定数据的安全,数据可能会丢失

http特点:超文本、灵活可拓展,请求-应答,无状态,明文

分组大数据传输时需要设置 TRansfer-Encoding: chunked(不可与 content-length 同时使用)

短链接:请求一次就会有一次响应,就会建立 TCP 数据传输通道,任务结束,通道关闭

长链接:设置 Connection:keep-alive 就可以保持 TCP 通道在一段时间内不会失效,可以发送和接受多个数据请求 ,手动设置 Connection:close,关闭链接

https

在http的基础上加入了SSL验证

数据加密过程:

客户端发起请求=>服务器返回一个Y公钥给客户端=>客户端随机生成一个秘钥X,通过公钥Y加密后传给服务器=>服务器通过公钥Y解析得到秘钥X,把数据通过秘钥X加密后传给客户端=>客户端拿到数据后通过秘钥X解密

http2

HTTP2中:同域名下的所有通信都在单个连接上完成,这个连接可以承载任意数量的双向数据流。数据流一消息的形式传递,消息有一个或多个帧组成。多帧乱序发送,根据帧首部标识重新组合。

头部压缩:

	http2在客户端和服务端使用一个表来存储和定位之前发送的键值对,相同的数据,不再通过每次请求和响应发送

服务器推送:服务器可以在发送页面Html时主动推送其他资源。例如:服务端主动将css,js文件主动推送给客户端,不需要等到下次客户端解析html再发送请求

Http3

http3摒弃了TCP(稳定可靠),采用了极快但是可靠的UDP(原来的UDP快但是不可靠,数据可能会丢失)   新增了QUIC协议

QUIC协议

  • QUIC协议提供类似于HTTP2的流功能
  • QUIC协议使用流ID取代IP和端口,这样就能实现连接迁移。例如说从4G信号切换到wifi,下层的IP和端口变了,但是由于QUIC的流ID没有变,这个连接不会变,可以继续使用这个连接。

总结

这三者,都用TCP的握手协议去理解,都是握手,不同的是握手方式不一样。

HTTPS 是类似于 TCP 握手的工作方式,先工作在 HTTP1 上,通过 HTTP1 传递交换得到秘钥,然后切换到 HTTPS 上工作;

HTTP2也是基于 TLS 的,所以 HTTP 2 的工作方式和 HTTPS 也是同样的过程,需要握手建立 TLS 连接,只是 TLS 连接完成后,发送一个 HTTP2 的连接确认消息,确认后,客户端服务器使用HTTP2进行连接通讯。

HTTP3 首先要建立好 HTTP 2 连接,然后发送 HTTP 2 扩展帧,这个帧包含IP和端口,浏览器收到扩展帧,使用该 IP 和端口,使用 QUIC 建立连接,如果成功,断开 HTTP2,升级为HTTP3。

原文链接:https://blog.csdn.net/majing0520/article/details/114070732

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfcffe
系列文章
更多 icon
同类精品
更多 icon
继续加载