美文网首页
HTTP演进

HTTP演进

作者: 努力做一个最懒的程序员 | 来源:发表于2022-05-16 16:47 被阅读0次

    HTTP 1.0
    无状态,无连接;
    短连接:每次发送请求都要重新建立tcp请求,即三次握手,非常浪费性能;
    无host头域,也就是http请求头里的host;
    不允许断点续传,而且不能只传输对象的一部分,要求传输整个对象。
    HTTP 1.1
    长连接,流水线,使用connection:keep-alive使用长连接;
    请求管道化;
    增加缓存处理(新的字段如cache-control);
    增加Host字段,支持断点传输等;
    由于长连接会给服务器造成压力。
    HTTP 2.0
    二进制分帧;
    多路复用(或连接共享),使用多个stream,每个stream又分帧传输,使得一个tcp连接能够处理多个http请求;
    头部压缩,双方各自维护一个header的索引表,使得不需要直接发送值,通过发送key缩减头部大小;
    服务器推送(Sever push)。
    HTTP 3.0
    基于google的QUIC协议,而quic协议是使用udp实现的;
    减少了tcp三次握手时间,以及tls握手时间;
    解决了http 2.0中前一个stream丢包导致后一个stream被阻塞的问题;
    优化了重传策略,重传包和原包的编号不同,降低后续重传计算的消耗;
    连接迁移,不再用tcp四元组确定一个连接,而是用一个64位随机数来确定这个连接;
    更合适的流量控制。

    转载链接:http://events.jianshu.io/p/cd70b8e90d00

    相关文章

      网友评论

          本文标题:HTTP演进

          本文链接:https://www.haomeiwen.com/subject/nyjwurtx.html