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)
Thu, Mar 20, 4:34 AM
Unknown Object (File)
Feb 15 2025, 11:49 AM
Unknown Object (File)
Feb 14 2025, 9:24 AM
Unknown Object (File)
Jan 26 2025, 5:20 AM
Unknown Object (File)
Jan 26 2025, 3:48 AM
Unknown Object (File)
Jan 17 2025, 2:27 AM
Unknown Object (File)
Jan 14 2025, 3:49 AM
Unknown Object (File)
Dec 18 2024, 2:40 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?