HTTP1.0、1.1、2.0、3.0的区别

简介: HTTP1.0、1.1、2.0、3.0的区别

HTTP 1.0


ecaadef0a6e54ae18800885c82d80ca5.png

短连接: 每次请求都要重新建立tcp请求,即三次握手,性能较差

无host头域: 也就是http请求头里的host’

不允许断点传输: ,而且不能只传输对象的一部分,需要传输整个对象


HTTP 1.1


引入更多缓存策略:在HTTP1.0中主要使用header里的If-Modefied-Since,expires来做为缓存判断的标准,HTTP1.1则引入更多的缓存控制策略例如Entity tag,if-ynmodified-Since,if-match等更多可供选择的缓存头控制策略

在请求头引入range头域: 它允许只请求资源的某个部分,即返回码是206,这样就方便开发者自由选择以便于充分利用带宽和连接

Host头处理: 在HTTP 1.0中认为每台服务器都绑定唯一一个IP地址,因此,请求消息中的URL并没有传递主机名,但随着虚拟主机技术的发展,在一台服务器上可以存在多个虚拟主机,并且他们共享一个IP地址

长连接支持: HTTP 1.1支持长连接和请求的流水线处理,在一个TCP连接上可以传送多个HTTP请求,减少建立和关闭连接的消耗和延迟,在HTTP1.1中默认开启Connection:keep-alive,一定程度上弥补了HTTP1.0每次请求都要创建连接的缺点


HTTP 2.0


新的二进制格式: HTTP1.X的解析是基于文本,基于文本协议的格式解析存在天然的缺陷,文本的表现形式有多样性,要做到健壮性考虑的考虑必然很多,二进制则不同,只认0,1的组合,基于这种考虑HTTP2.0的协议解析决定采用二进制格式,实现方便且健壮

多路复用: 即连接共享,一个连接上可以有多个request,一个request对应一个id,每个连接的request可以随机的混杂在一起,接收方可以根据request的id将request再归属到各自不同的服务端请求里面

HTTP 2.0的多路复用和HTTP 1.1中的长连接复用有什么区别?

HTTP/1.1 Pipeling解决方式为,若干个请求排队串行化单线程处理,后面的请求等待前面请求的返回才能获得执行机会,一旦有某个请求超时等,后续请求只能被阻塞,这就是常说的线头阻塞

HTTP/2多个请求可同时在一个连接上并行执行,某个请求任务耗时严重,不会影响其它连接的正常执行

header压缩: HTTP1.X的header中带有大量信息,而且每次都要重复发送,HTTP2.0使用encoder来减少需要传输的header大小,通讯双方各自cache一份header fields,避免重复的header的传输,又减少了需要传输的大小

服务端推送: HTTP2.0也具有server push功能


HTTP 3.0


基于google的QUIC协议,而quic协议是使用udp实现的减少了tcp三次握手以及tls握手时间

解决了http 2.0中前一个stream丢包导致后一个stream被阻塞的问题(TCP层的对头阻塞)

优化了重传策略,重传包和原包的编号不同,降低后续重传计算的消耗

连接迁移,不在用tcp四元组确定一个连接,而是用一个64位随机数来确定这个连接

更合适的流量控制


相关文章
|
24天前
|
缓存 安全 网络协议
HTTP和HTTPS的区别有哪些?
本文简要总结了 HTTP 和 HTTPS 的区别,从概念、端口、连接方式、使用场景、安全性等多个角度进行了对比。HTTP 是无状态的、无连接的应用层协议,适用于一般性网站和性能要求较高的应用;HTTPS 则通过 SSL/TLS 层提供加密、认证和完整性保护,适用于涉及敏感信息和高安全性的场景。文章还讨论了两者在性能上的差异,包括握手和加密开销、缓存效果以及 HTTP/2 的多路复用技术。最终,根据具体需求选择合适的协议能够更好地平衡安全性和性能。
78 2
HTTP和HTTPS的区别有哪些?
|
8天前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
7天前
|
缓存 安全 API
http 的 get 和 post 区别 1000字
【10月更文挑战第27天】GET和POST方法各有特点,在实际应用中需要根据具体的业务需求和场景选择合适的请求方法,以确保数据的安全传输和正确处理。
|
8天前
|
网络协议 网络安全 API
Http和Socks的区别?
HTTP 和 SOCKS 协议各有其优势和应用场景。在选择使用哪种协议时,应根据具体需求和应用环境做出决定。HTTP 适用于 Web 服务相关的通信,而 SOCKS 则更适用于需要通用代理功能和复杂网络环境的场景。了解它们的区别和特点,有助于在不同的网络应用中做出最佳选择。
16 1
|
9天前
|
网络协议 API 数据格式
HTTP 和 TCP 协议的主要区别
【10月更文挑战第25天】HTTP 和 TCP 在网络通信中扮演着不同的角色,各自具有独特的功能和特点,它们相互配合,共同为实现网络应用的各种需求提供了基础支持。
|
1天前
|
传感器 缓存 网络协议
CoAP 协议与 HTTP 协议的区别
CoAP(Constrained Application Protocol)协议是为资源受限的设备设计的轻量级协议,适用于物联网场景。相比HTTP,CoAP具有低功耗、低带宽占用和简单易实现的特点,支持多播通信和无连接的交互模式。
|
5月前
|
安全 网络协议 网络安全
IP代理的三大协议:HTTP、HTTPS与SOCKS5的区别
**HTTP代理**适用于基本网页浏览,简单但不安全;**HTTPS代理**提供加密,适合保护隐私;**SOCKS5代理**灵活强大,支持TCP/UDP及认证,适用于绕过限制。选择代理协议应考虑安全、效率及匿名需求。
|
1月前
|
JSON 编解码 安全
【HTTP】方法(method)以及 GET 和 POST 的区别
【HTTP】方法(method)以及 GET 和 POST 的区别
88 1
|
2月前
|
网络协议 算法 数据安全/隐私保护
HTTP2和HTTP3区别?HTTP2有什么缺点?
总的来说,如果把HTTP/2比作是优化过的汽车,那HTTP/3就像是直升飞机,它不仅飞得快,而且即使前面有障碍也不会轻易停下。想要网站速度更快,HTTP/3无疑提供了更好的选择。
171 3
|
2月前
|
安全 网络安全 数据安全/隐私保护
HTTP与HTTPS协议区别及应用场景
在互联网高速发展的今天,HTTP与HTTPS作为数据传输的基石,作用至关重要。HTTP允许客户端与服务器间传输超文本文档,但其数据传输过程未加密,存在安全隐患;HTTPS则在此基础上加入了SSL/TLS协议,实现了数据加密传输,增强了安全性,广泛应用于电子商务、网上银行、政府网站及社交媒体平台等涉及敏感信息传输的领域,有效保护了用户隐私和数据安全。随着网络安全意识提升,HTTPS正逐渐成为主流。
下一篇
无影云桌面