Skip to content

Conversation

@antoniovicente
Copy link
Contributor

There are big known problems in these implementations.

We recommend use of:

  • the cubic implementation, without pacing
  • the bbr2 implementation from the gcongestion directory, with pacing. Note that pacing only works correctly on Linux and if TxTime is available (qdisc fq kernel module enabled).

@antoniovicente antoniovicente requested a review from a team as a code owner December 23, 2025 20:00
@reneleonhardt
Copy link

reneleonhardt commented Jan 3, 2026

* the bbr2 implementation from the gcongestion directory, with pacing.

But this PR deletes brr and brr2? What about switching to brr3?

Other users report much better experiences with brr than cubic, what are those big known problems?

@antoniovicente
Copy link
Contributor Author

* the bbr2 implementation from the gcongestion directory, with pacing.

But this PR deletes brr and brr2? What about switching to brr3?

Other users report much better experiences with brr than cubic, what are those big known problems?

The main motivation behind this PR is to delete the pacer in the congestion directory. Since BBR implementations in that directory have a hard dependency on it, I think it is time for them to also be deleted.

All of our investments are on making the bbr2 implementation in the gcongestion directory work well even in cases where Linux TxTime is not available. I have several planned changes in the near future to fix some recently found bugs and make this implementation closer to the BBR RFC draft.

The config option to select "bbr2" still works. I can also keep the "bbr" option, but point it to the bbr2 implementation in the gcongestion directory.

Copy link
Contributor

@LPardue LPardue left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo nits

Eventually "bbr" could be the main name provided and will refer to the latest and greatest
version of the code as we try to converge the implementation with the BBR RFC IETF draft
@antoniovicente antoniovicente enabled auto-merge (squash) January 6, 2026 21:14
@antoniovicente antoniovicente changed the title Delete BBR and pacer implementations in the recovery/congestion directory. Delete old BBR and pacer implementations in the recovery/congestion directory. Jan 6, 2026
@antoniovicente antoniovicente merged commit bda63e0 into master Jan 6, 2026
41 checks passed
@antoniovicente antoniovicente deleted the antonio/cleanup_cc branch January 6, 2026 21:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants