Http区别

目录

Http1.0与Http1.1的区别

Http2.0与Http3.0的区别

Http与Https的区别


Http1.0与Http1.1的区别

Http1.0 Http1.1 短连接,浏览器和服务器保存短暂连接,浏览器的每一次请求都需要建立一个TCP连接,服务器完成请求处理后TCP连接立即断开,也不跟踪每个每个客户端过来的请求。

持久连接(Http keep-alive),即只要任意一端没有明确表示连接断开,就一直保持TCP连接状态。

管线化:发送请求无需等待响应,直接在发送下一个请求。

每台主机只有一个IP地址,因此URL中没有传递主机名(hostname)。

而虚拟技术发展,一台物理服务器上多个虚拟主机,共享一个IP地址。

请求消息和响应消息都支持Host字段,并且请求消息没有Host偷鱼会报告错误(404 Bad Request)。此外,服务器接收以绝对路径标记的资源请求。

新状态码100,实现节约带宽。先发送只带头域请求试探服务器是否还接受请求,接收则返回100状态码,客户端发送完整带实体的请求;反之,返回状态码401。 分块传输编码,即发送方将消息分为任意大小的块,在发送时对块的大小使用16进制进行备注,结束时使用0作为标识。目的只缓冲消息的一个片段,避免整个消息带来的过载。 在1.0的基础上加入了一些 cache的新特性,当缓存对象的Age超过Expire时变为stale对象,cache不需要直接抛弃stale对象,而是与源服务器进行重新激活(revalidation)。

Http2.0与Http3.0的区别

Http2.0 Http3.0

二进制传输。即请求和响应数据分隔为更小的帧,使用二进制编码。

同域名下所有通信都在单个连接上完成,该连接可以承载任意数量的双向数据流。每个数据流都以消息的形式发送,而消息又由一个或多个帧组成。多个帧之间可以乱序发送,根据帧首部的流标识可以重新组装。

基于 UDP 协议的 QUIC 协议

多路复用技术,只通过一个 TCP 连接就可以传输所有的请求数据。

        同个域名只需要占用一个TCP连接,使用一个连接并行发送多个请求和响应,消除了因多个TCP连接而带来的延时和内存消耗。

        并行交错地发送多个请求,请求间互不干扰。

        并行交错地发送多个响应,响应间互不干扰。

        每个请求都可以带一个31bit的优先值,客户端和服务端就可以处理不同的流时采用不同的策略,以最优的方式发送流、消息和帧。

让不同的流之间真正的实现相互独立传输,互不干扰 Header压缩,

        HTTP/2在客户端和服务器端使用“首部表”来跟踪和存储之前发送的键-值对,对于相同的数据,不再通过每次请求和响应发送;

        首部表在HTTP/2的连接存续期内始终存在,由客户端和服务器共同渐进地更新;

        每个新的首部键-值对要么被追加到当前表的末尾,要么替换表中之前的值

0RTT建连,缓存当前会话的上下文,在下次恢复会话的时候,只需要将之前的缓存传递给服务端验证通过就可以进行传输。

Server Push,即服务端能通过push的方式将客户端需要的内容预先推送过去,也叫“cache push”。服务器不能随便将第三方资源推送给客户端,而必须是经过双方确认才行。

Http与Https的区别

Http Https 安全 超文本传输协议,明文传输,不安全 安全性的SSL加密传输协议,更加安全 连接方式 连接简单,特点是无连接的 由SSL+HTTP协议构建可进行加密传输,身份认证的网络协议 端口号 80 443

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值