HTTP

  1. 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路

总结对比:

  • HTTP/0.9:
    • 只有一个命令:GET
    • 服务器只能回应HTML格式的字符串,不能回应别的格式
  • HTTP/1.0:
    • 引入了POST命令和HEAD命令
    • HTTP请求和回应的response,增加了头信息(HTTP header)
    • 新增功能还包括状态码(status code)、多字符集支持、多部分发送(multi-part type)、权限(authorization)、缓存(cache)、内容编码(content encoding)等。
    • 缺点: HTTP/1.0 版的主要缺点是,每个TCP连接只能发送一个请求。发送数据完毕,连接就关闭,如果还要请求其他资源,就必须再新建一个连接
  • HTTP/1.1:
    • 引入了持久连接(persistent connection),即TCP连接默认不关闭,可以被多个请求复用,不用声明Connection: keep-alive。
    • 引入了管道机制(pipelining),即在同一个TCP连接里面,客户端可以同时发送多个请求
    • 缺点: 队头堵塞问题
  • HTTP/2 :
    • 二进制协议,HTTP/2 则是一个彻底的二进制协议,头信息和数据体都是二进制
    • 多工,HTTP/2 复用TCP连接,在一个连接里,客户端和浏览器都可以同时发送多个请求或回应,而且不用按照顺序一一对应。因为TCP是可靠的传输协议,如果一个TCP连接中的多个请求有一个请求丢包了,那么就会进行重传,还是会存在队头阻塞问题。
    • 数据流,据包是不按顺序发送的,同一个连接里面连续的数据包,可能属于不同的回应
    • 头信息压缩
    • 服务器推送,HTTP/2 允许服务器未经请求,主动向客户端发送资源
  1. 现代移动端网络短连接的优化手段总结:请求速度、弱网适应、安全保障

  2. HTTP/2 头部压缩技术介绍

  3. HTTP专题

你可能感兴趣的:(HTTP)