Page MenuHomeFreeBSD

Cubic changes for improved loss recovery.
Needs ReviewPublic

Authored by hiren on Oct 14 2016, 6:49 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 16, 9:43 AM
Unknown Object (File)
Feb 22 2024, 12:31 PM
Unknown Object (File)
Jan 12 2024, 1:32 PM
Unknown Object (File)
Dec 20 2023, 7:20 PM
Unknown Object (File)
Dec 20 2023, 12:45 AM
Unknown Object (File)
Nov 13 2023, 10:54 AM
Unknown Object (File)
Oct 29 2023, 1:40 PM
Unknown Object (File)
Oct 27 2023, 3:34 PM

Details

Reviewers
rrs
lstewart
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)

Submitted by: Matt Macy
Sponsored by: Limelight Networks

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 5610
Build 5875: arc lint + arc unit

Event Timeline

hiren retitled this revision from to Cubic changes for improved loss recovery..
hiren updated this object.
hiren edited the test plan for this revision. (Show Details)
hiren added a subscriber: transport.
sys/netinet/cc/cc_cubic.c
444

need a typecast to (uint64_t) here for very large cwnd

474

Why introduce CUBIC_SCALE for a single use here, instead of (1<<CUBIC_SCALE)?

Also, this code doesn't seem to match the comment?