Skip to content

[Feature]: 支持 RFC 9406: HyStart++: Modified Slow Start for TCP #833

Description

@qisefengzheng

Before request a new feature

  • I have searched the issues of this repository and believe that this is not a duplicate.

Describe the feature you'd like supported

多个QUIC实现支持了该拥塞控制算法

RFC 9406 定义了一个名为 HyStart++ 的拥塞控制算法,其核心作用是优化 TCP 连接启动阶段的数据发送速度,以减少数据包丢失并提升网络性能。

具体来说,它的作用体现在以下几个方面:

解决“慢启动”的痛点
在传统的TCP拥塞控制中,连接建立初期会采用“慢启动”算法来探测网络容量。这个算法的问题在于,它的增长速度很快,常常会超过网络实际能承受的发送速率,导致大量数据包丢失和性能下降。

RFC 9406定义的HyStart++算法就是为了解决这个问题。

HyStart++ 的工作原理
HyStart++ 主要做了两项改进:

提前退出慢启动:它不再等到发生丢包才退出慢启动,而是监测网络数据包的往返时间(RTT)。当RTT开始明显增加时,HyStart++会判断网络可能即将拥堵,从而提前退出慢启动阶段。

防止过早退出:网络波动(即“抖动”)可能导致RTT暂时增加,从而造成误判。HyStart++ 增加了一个缓解机制,可以区分真正的拥堵信号和暂时的网络抖动,避免因误判而过早退出慢启动。

应用范围与状态
主要针对TCP:虽然文档主要描述的是TCP的实现,但其设计思想也可以应用于其他传输协议。例如,已经有项目在QUIC协议中实现了HyStart++。

标准状态:RFC 9406 是一个 “标准追踪”(Standards Track) 文档,目前处于 “提议标准”(Proposed Standard) 阶段。它由IETF的“TCP维护和小幅扩展”工作组(TCPM WG)制定。

Describe alternatives you've considered

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions