Page MenuHomeFreeBSD

Correctness fixes to Cubic
Needs RevisionPublic

Authored by kmacy on Sep 23 2016, 11:36 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Jun 3, 3:44 AM
Unknown Object (File)
Sun, May 19, 5:02 AM
Unknown Object (File)
May 17 2024, 6:25 AM
Unknown Object (File)
May 14 2024, 11:50 AM
Unknown Object (File)
May 5 2024, 6:06 PM
Unknown Object (File)
Apr 24 2024, 10:10 PM
Unknown Object (File)
Mar 25 2024, 7:34 PM
Unknown Object (File)
Jan 20 2024, 10:11 PM
Subscribers

Details

Reviewers
hiren
lstewart
gnn
Group Reviewers
transport
Summary
  • always update t_last_cong on loss and generally treat first loss as valid
  • restore old t_last_cong on bad retransmit and generally undo first loss if not valid
  • add fast convergence (see 3.6 in RFC)
  • scale ssthresh by cubic beta rather than 0.5, per RFC (same as Linux)

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 5299
Build 5480: CI src buildJenkins

Event Timeline

kmacy retitled this revision from to Correctness fixes to Cubic .
kmacy updated this object.
kmacy edited the test plan for this revision. (Show Details)
kmacy set the repository for this revision to rS FreeBSD src repository - subversion.
gnn requested changes to this revision.Nov 28 2016, 5:43 PM
gnn edited edge metadata.

Unless I'm mistaken this is several fixes, not all of which are related to CUBIC, but contained in a single patch. Please split these out into separate changes, in particular the mathematical equation change in cc_cubic.h. While I believe that the math change there is correct (from reading the latest draft) I'd like it to be possible to revert that one change simply if it proves to be an issue.

This revision now requires changes to proceed.Nov 28 2016, 5:43 PM

Replacing two divisions by one multiplication and one division in cubic.h looks good;

The changes in the RTO branch (moving the setting of ssthresh and cwnd into each of the modular CC mechanisms) should be a separate Diff. It appears there are may be some of them missing here already.

May I pick up this Diff, split and resubmit it?

I believe most of these changes have been superceded by the set of patches in this area put in recently.

fast convergence is missing; the earlier comment of splitting out the still relevant changes has merit.