WebSocket - 负载长度

3
WebSocket RFC在[数据帧部分]中(https://www.rfc-editor.org/rfc/rfc6455#section-5.2)描述负载长度时,阐述了以下内容:

如果是127,则将以下8个字节解释为64位无符号整数(最高有效位必须为0),作为负载长度。

我有两个问题:
  1. 为什么要求“最高有效位必须为0”?
  2. 这是否意味着单个帧的最大大小为9223372036854775807字节?
1个回答

0
  1. MSB(Most Significant Bit)表示掩码位。如果设置了此位,负载将使用以下掩码键进行掩码处理。长度字段仅为7位。
  2. 最大帧大小正确。

我认为你误解了一些东西。MASK位出现在长度字段之前,而长度字段是7、7+16或7+64位长。我也想知道为什么64位的最高有效位(在7+64位的情况下)必须为零。也许是为了未来的扩展?但这仍然给你留下了2 ** 63-1字节,即单帧的最大有效载荷长度为8388607 PiB。 - Patrik
好的,我以为你指的是有效负载长度的最高位字节。你是正确的。 - RalfW

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接