Skip to main content

附录A. 错误假设

QUIC版本1 [QUIC-TRANSPORT] 有几个特征不受观察保护,但仍然被认为在部署新版本时可以更改。

本节列出了基于QUIC版本1知识可能对QUIC做出的一些错误假设的示例。其中一些陈述甚至对QUIC版本1也不成立。这不是详尽的列表;它仅用于说明目的。

以下任何和所有陈述对于给定的QUIC版本都可能是错误的:

  • QUIC使用TLS [QUIC-TLS],并且一些TLS消息在线路上可见。

  • QUIC长报头仅在连接建立期间交换。

  • 给定5元组上的每个流都将包括连接建立阶段。

  • 在流上交换的第一批数据包使用长报头。

  • 长时间静默之前的最后一个数据包可能被假定为仅包含确认。

  • QUIC使用经过身份验证的关联数据加密(AEAD)函数(AEAD_AES_128_GCM;参见 [RFC5116])来保护它在连接建立期间交换的数据包。

  • QUIC数据包号被加密并显示为第一批加密字节。

  • QUIC数据包号对于发送的每个数据包递增1。

  • QUIC对客户端发送的第一个握手数据包有最小大小要求。

  • QUIC规定客户端首先发言。

  • QUIC数据包始终设置第一个字节的第二位(0x40)。

  • QUIC版本协商数据包仅由服务器发送。

  • QUIC连接ID很少改变。

  • 如果QUIC端点收到版本协商数据包,它们会更改其使用的版本。

  • QUIC长报头中的版本字段在两个方向上是相同的。

  • 版本字段中具有特定值的QUIC数据包意味着正在使用相应版本的QUIC。

  • 在任何一对QUIC端点之间一次只建立一个连接。