摘要

  • RFC 9897 是 IETF Standards Track 规范,为 DCCP 扩展多路径操作,使一个连接能够在不同路径上建立并使用多个 DCCP 子流。
  • 后续子流只能在首个子流通过 MP_KEY 成功建立后使用 MP_JOIN;加入消息携带对端连接标识、发送方生成的 Address ID 和新的 32 位 nonce。
  • MP_ADDADDR 是经过认证的软状态,不是已经获准使用的路径。只有 MP_JOIN 将新子流绑定到原连接并完成到广告地址的可达性证明后,该路径才可用于流量。
  • MP_HMAC 使用 HMAC-SHA256,并截取最左侧 160 位;每个受保护选项都需要紧随其后的独立 MP_HMAC。无效的 MP_ADDADDR 或 MP_REMOVEADDR 会被静默忽略,无效的 MP_JOIN 则关闭尝试中的子流。
  • Address ID 必须在连接内唯一映射发送方源地址,可在中间盒改写地址后继续关联 MP_JOIN 与 MP_ADDADDR,并且在任一端仍使用时不可重新分配。
  • nonce 交换把加入方与原连接绑定并验证广告地址的可达性;单次使用的随机值提供重放抵抗。MP-DCCP 本身不提供完整的密码学安全,需要时应由应用选择 IPsec 或 DTLS 等端到端保护。

这里的“认证”不应被理解为加密,也不证明广告地址无害、由对端拥有或在全球可达。恶意参与者仍可能利用广告的私有地址诱发面向其他主机的握手流量,因此实现可使用发送方和接收方启发式方法降低拒绝服务影响。RFC 9897 没有规定通用的调度器、耦合拥塞控制算法、重试预算、遥测阈值或可疑地址拒绝启发式;并发多路径的调度、耦合拥塞控制和重排方法超出其范围。Theo March 的上述分析是非规范性的,不替代实现对 RFC 9897 的具体判断。

来源