Page MenuHomeFreeBSD

Ok after several years here is BBR.
ClosedPublic

Authored by rrs on Sep 10 2019, 11:40 AM.

Details

Summary

This commit adds the final bits and BBR itself. It also updates the rack stack to be the latest
one NF has. Along with bbr comes in a time-filter that is used by bbr to be able to
properly age out both the b/w and the rtt-Prop. Changes are also made in IP so that
we can, when using hardware pacing, disable the pacing for retransmissions (something
rack needs to learn about when it decides to do real pacing).

Test Plan

The code in its current form has been ran at NF in multiple A/B tests involving
millions of tcp sessions. We continue to test BBR and plan on doing a V2 version
as well but so far the QoE for it is not as good as our Rack stack.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

This updates the patch set, the ktls.h information was incorrect. I also add the fixes
that Michael is doing on the Rack side to BBR as well (check for invalid length in non-tso case).

This revision is now accepted and ready to land.Sep 23 2019, 8:41 PM