跳到主要内容

3. 假设和通用原则

3. 假设和通用原则

在本节中, 我们描述指导本提案设计选择的一些重要设计原则和假设.

  • 由于 ECN 可能被增量采用, 支持迁移至关重要. 某些路由器可能仍然只使用数据包丢弃来指示拥塞, 某些端系统也可能不支持 ECN. 最可行的策略是能够适应增量部署, 而不需要诉诸 ECN-aware 和 ECN-unaware 环境的 "islands".

  • 新的拥塞控制和避免机制需要与当前已有的拥塞控制机制共存并协作. 特别是, 新机制必须与 TCP 当前适应拥塞的方法共存, 也必须与路由器在拥塞期间丢弃数据包的当前实践共存.

  • 拥塞可能在不同时间尺度上持续. 我们关心的时间尺度是可能持续超过一个往返时间的拥塞事件.

  • 单个流 (例如 TCP 连接或使用 UDP 的交换) 中的数据包数量可以从很少几个到相当多. 我们关心的是管理那些发送足够多数据包的流所造成的拥塞, 这些流在网络反馈返回时仍处于活动状态.

  • 非对称路由可能是互联网中的常态. 数据包所经过的路径 (链路和路由器序列) 可能不同于反向确认数据包所经过的路径.

  • 相比 IP options 中的头部信息, 许多路由器处理位于 "regular" 部分头部中的 IP 数据包效率更高. 这表明应将 congestion experienced 信息保留在 IP 数据包的常规头部中.

  • 必须认识到, 并非所有端系统都会合作参与拥塞控制机制. 然而, 新机制不应让 TCP 应用程序更容易禁用 TCP 的拥塞控制. 通过谎称参与 ECN-capability 等新机制而获得的好处应当很小.