《HTTP/2 In Action 中文版本》小结

《HTTP/2 In Action 中文版》

简约笔记,用于了解下大致的概念。

HTTP各版本

xmind思维导图

2 In Action


文本化

HTTP/2 In Action

HTTP/0.9

单个GET方法,无请求头

只支持纯文本内容

一对请求-响应=一个TCP连接-关闭

HTTP/1.0

更多的请求方法:HEAD、POST

HTTP首部:请求首部、响应首部

3位数的响应状态码

响应内容不仅仅是超文本,包含其他媒体文件

请求拥有了正文部分

一对请求-响应=一个TCP连接-关闭

HTTP/1.1

强制添加host首部

持久连接(长连接)

  • Connection:Keep-Alive

  • (keep-alive下)同一个域名同一个文件的多个请求,复用一个TCP

    • 多对请求-响应=一个TCP连接-关闭
    • 同个域名多个文件对应多个TCP连接(最大6个)
  • CS任意端可关闭,C端确认不需要请求时:Connection:Close

新增:PUT、DELETE、OPTIONS、CONNECT、TRACE

缓存方法

  • Cache-Control

    • 注意:localstorage和sessionstore是浏览器层的缓存
  • cache种类

    • from memory cache
    • from-disk-cache

其他

  • Cookie:维护HTTP状态
  • 权限验证
  • 尾随首部:正文之后发送(Header中)

HTTP/3

QUIC协议

  • 移除了TCP,自身包含TLS

  • 有2个版本

    • google的gQUCK
    • IETF的iQCK(最终的标准)
  • http只是它的一个用例,该协议是个独立的协议,也是一个与http协议平级的标准

  • Cubic算法

    • 拥塞控制

解决了h2中TCP层的队头阻塞,通过冗余数据包,来避免重传

HTTP/2

先驱:SPDY协议

  • 流多路服用
  • 请求优先级
  • HTTP首部压缩

新概念

  • 二进制协议

    • 原协议基于文本,此协议是二进制的基于数据包的协议
  • 多路复用

    • 同个域名,多个文件,多个请求,仅有一个TCP连接
  • 流量控制

    • 流状态

      • C到S

        • 空闲、打开、半关闭、关闭
      • S到C(用于启动一个新的流)

        • 空闲、保留、半关闭、关闭
    • 控制流的窗口大小,类似于TCP的窗口控制

  • 数据流优先级

    • 流依赖
    • 流权重
  • 首部压缩

    • 压缩方法(无损压缩)

      • 查表法

        • 根据表格index,查询对应的内容
      • 高效的编码技术

        • ASCII编码

          • 同等长度,案顺序编码
        • 霍夫曼编码

          • 可变长度编码
      • lookback(反查)压缩

        • 当前位置放入引用,指向重复文本
    • 其他知识

      • 正文压缩(accept-encoding)

        • gzip,deflate,br(brotli)
    • HPACK

      • HPACK静态表

        • 包含61个常见的HTTP首部名称
      • HPACK动态表

        • 从位置62开始
      • HPACK首部类型

        • 索引首部字段类型
        • 带递增索引的字符串首部字段
        • 不索引的字符串首部字段
        • 从不索引的字符串首部字段
      • 霍夫曼编码表

  • 服务端推送

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值