http2是否包含demux机制?

时间:2018-01-08 01:46:28

标签: http2 multiplexing

我只是理解HTTP2是m:1模式,您将m逻辑连接放入1 TCP流

是否可以在http2中执行m:n模式?

m个流被解复用到n个连接以获得更好的可靠性,因为通常一个TCP会中断所有h2挂起。

1 个答案:

答案 0 :(得分:1)

这是可能的,但实际上还没有完成。

浏览器特别努力打开一个与域的连接,甚至可以为不同的子域重用相同的连接,如果他们能够确定它解析为相同的IP地址和相同的证书。

其他客户端可能实现m:n方案(例如,Jetty 9.4.x HTTP / 2客户端做 - 免责声明:我是维护者。)

选择一个好的n的问题可能并不重要,并且每个域都可能返回到HTTP / 1.1 6-8 TCP连接。

由于每个连接都会被多路复用,因此单个HTTP / 2连接的失败将比单个HTTP / 1.1连接的失败更糟糕(因为它会使多个请求失败而不是一个),所以我猜对于单个HTTP / 2连接,它不会产生太大的影响。

Google的QUIC protocol旨在解决此问题,因为它基于UDP并且内置支持连接迁移(即从WiFi切换到移动网络)。