[roll] Roll fuchsia [netstack3] Update TCP CUBIC to RFC 9438 The TCP CUBIC Specification has been updated from RFC 8312 to RFC 9438. In practice, most of the algorithm is unchanged, however there are a few key differences: * When updating the cwnd with the cubic_window function, the target is clamped to between 1 and 1.5 cwnds. This adds an upperbound to the growth rate. * The TCP-Friendly Region defined in RFC 8312 was renamed to the Reno-Friendly Region. It aspires to compute a cwnd equivalent to Reno Congestion Control. * The equation used to calculate w_est in the Reno-Friendly region changed in two ways: 1) It is now based on ACKed segments rather than elapsed time, and 2) the ALPHA_CUBIC parameter is set to 1.0 when w_est >= cwnd_prior. When this is true, cwnd growth is more aggressive in the Reno-friendly region than it would have been in the TCP-Friendly Region from RFC 8312. This brings the algorithm closer inline with true Reno Congestion Control. * When reducing `cwnd` and `ssthresh` in response to a congestion event, the multiplicative decrease is based on `flight_size` based on `cwnd`. The `flight_size` is the amount of data sent but not yet acknowledged, which is semantically equivalent to the `pipe` tracked by SACK. The rest of the diff in the CL is cosmetic changes: Updating RFC citations & reflowing code. Original-Original-Fixed: 404908966 Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1614548 Original-Original-Revision: 8457d80713d4be559c8d7088dffda830f750c10f GitOrigin-RevId: beef7f56cc9c66a77de5e011c51fe88bc7b7366c Change-Id: Ifb6e29ab93f632f547e301e0b0ab788df194967a Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1678869 Cr-Commit-Position: refs/heads/main@{#195535}
This repository contains Fuchsia's Global Integration manifest files.
All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.
Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.