RFR: 8371475: HttpClient: Implement CUBIC congestion controller [v6]
Daniel Jeliński
djelinski at openjdk.org
Fri Nov 21 21:14:18 UTC 2025
>> CUBIC is a standard TCP congestion control algorithm that uses a cubic function instead of a linear congestion window increase function to improve scalability and stability over fast and long-distance networks. CUBIC has been adopted as the default TCP congestion control algorithm by the Linux, Windows, and Apple stacks.
>
> This PR adds a new congestion controller algorithm. It reuses a large part of the QuicRenoCongestionController, which was refactored to two classes - QuicBaseCongestionController, containing the shared code, and QuicRenoCongestionController, containing only the code that is unique to Reno.
>
> CUBIC is now the default congestion controller. Reno can still be selected by setting the system property `jdk.httpclient.quic.congestionController` to `reno`.
>
> A new test was added to exercise the new congestion controller. Existing tests continue to pass.
Daniel Jeliński has updated the pull request incrementally with one additional commit since the last revision:
Add comment for negative K
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/28195/files
- new: https://git.openjdk.org/jdk/pull/28195/files/2b47732e..60680962
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=28195&range=05
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=28195&range=04-05
Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/28195.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28195/head:pull/28195
PR: https://git.openjdk.org/jdk/pull/28195
More information about the net-dev
mailing list