【发布时间】:2016-04-13 12:42:09
【问题描述】:
我已经阅读了一些 HTTP/2 rfc7540 规范,但我不完全理解 HTTP/2 协议中 WINDOW_UPDATE 和 SETTINGS 帧之间的区别是什么?
【问题讨论】:
我已经阅读了一些 HTTP/2 rfc7540 规范,但我不完全理解 HTTP/2 协议中 WINDOW_UPDATE 和 SETTINGS 帧之间的区别是什么?
【问题讨论】:
正如引用的RFC 7540 中所说,WINDOW_UPDATE 用于实现流控制,而 SETTINGS 传输端点必须应用的配置参数。
客户端与服务器建立 TCP 连接。然后它可以发送一个 SETTINGS 帧来通知服务器它希望服务器遵守的配置参数。 例如,客户端端点可以告诉服务器不支持 PUSH(请参阅https://www.rfc-editor.org/rfc/rfc7540#section-6.5.2)。
同样,服务器可以向客户端发送一个包含其配置参数的 SETTINGS 帧。
另一方面,流量控制是关于每个端点可以在连接上发送多少数据字节。 唯一受流控制的帧是 DATA 帧。
流控制是多路复用协议应该实现的必要机制。详情请参阅this section。
总之,WINDOW_UPDATE 和 SETTINGS 帧分别实现了 HTTP/2 协议的不同功能。
【讨论】: