Skip to content

Conversation

@alan-maguire
Copy link
Member

Previously, congestion control algoritm selection was done via a simple method of looking for packet loss on a per-connection basis and applying BBR if a limit was surpassed.

This approach has been replaced by using a reinforcement learning based algorithm which seeks to choose the congestion control algorithm that approaches optimal performance for the link; minimum RTT and delivery rate tuned to fill the pipe. See bpftune-tcp-conn(8) for details.

The behaviour under loss is similar to before - BBR is selected - but it is selected based upon its optimal behaviour rather than via a hand-coded algorithm. In normal network conditions, different algorithms can be selected; choices available currently are

  • cubic
  • BBR
  • htcp
  • dctcp

Previously, congestion control algoritm selection was done via a simple
method of looking for packet loss on a per-connection basis and applying
BBR if a limit was surpassed.

This approach has been replaced by using a reinforcement learning
based algorithm which seeks to choose the congestion control algorithm
that approaches optimal performance for the link; minimum RTT and
delivery rate tuned to fill the pipe.  See bpftune-tcp-conn(8) for
details.

The behaviour under loss is similar to before - BBR is selected -
but it is selected based upon its optimal behaviour rather than
via a hand-coded algorithm.  In normal network conditions, different
algorithms can be selected; choices available currently are

- cubic
- BBR
- htcp
- dctcp

Signed-off-by: Alan Maguire <[email protected]>
@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Sep 1, 2023
@alan-maguire alan-maguire merged commit 7c867f2 into main Sep 1, 2023
@alan-maguire alan-maguire deleted the rl3 branch December 2, 2024 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant