作者回复: great!
作者回复:
1.当然,省去了加密的成本。
2.所谓“虚拟的流”,是指流实际上是多个同一序号的帧,并没有真正的流数据结构,这与连接不同。
3.正确。
4.你说的channel应该是http/2里的“流”吧,http/2里没有channel。流是由帧组成的,帧头里有流id标记所属的流,马上会讲具体的细节。
5.标记一个tcp连接要用四元组(客户端ip端口+服务器ip端口),所以肯定要用一个新的端口号,在客户端这是临时分配的,而服务器是固定的端口。
作者回复: get也可以有body,post也可以用query参数,区别的关键在于动作语义,一个是取一个是存。
作者回复: 完全不一样。
多路复用多个请求没有顺序,而长连接多个请求必须排队,就会队头阻塞。
可以再看看示意图体会一下。
作者回复: 可以的,Chrome会把二进制解码,还原为http/1的文本形式,你可以自己试一下。
作者回复: 总结的非常好,great。
作者回复: 是的,理解的非常正确。
作者回复:
1.我测试是不行的,也许新的有变化,有空再试试。
2.cbc不安全,http/2已经禁用了,可以参考rfc。
作者回复: tcp层是有序的,所以一个流里的多个帧会按照顺序依次到达,接收方只要依次接收就可以了。
作者回复: 头部压缩,多路复用,优先级,服务器推送,优点太多了,这些都是http/1不具备的。
作者回复: 不太了解AMPT,所以无法做比较,等讲http/2流细节的时候你可以对比一下。
作者回复: thanks。