HTTP2 结构
- Connection
- Stream * n: 双向流
- Message * n: 逻辑上的request, response
- Frame * n: 数据传输最小单位
- Length
- Type: DATA, HEADERS, PRIORITY
- Flag, R
- Stream Identifier
- Frame Playload
- Frame * n: 数据传输最小单位
- Message * n: 逻辑上的request, response
- Stream * n: 双向流
- Stream用唯一ID来标识
- client创建的stream的ID是奇数,server创建的则为偶数
- Stream有不同的优先级
- 流量控制
- 流量控制是单向的
- 接收方只是给发送者一个建议值
- 流量控制不能被禁止
- 流量是基于hop-by-hop的
- HPACK
- 静态和动态的 haeders table 来减少头部大小