From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1921) id A69AC385AE6D; Mon, 11 Jul 2022 11:50:33 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A69AC385AE6D Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Sebastian Huber To: newlib-cvs@sourceware.org Subject: [newlib-cygwin] This commit adds BBR (Bottleneck Bandwidth and RTT) congestion control. X-Act-Checkin: newlib-cygwin X-Git-Author: Randall Stewart X-Git-Refname: refs/heads/master X-Git-Oldrev: ce921ffca837c991afd69670e97cda8f04b1b6ce X-Git-Newrev: 878b65b3b61050b7b380e677246424c9e9feb703 Message-Id: <20220711115033.A69AC385AE6D@sourceware.org> Date: Mon, 11 Jul 2022 11:50:33 +0000 (GMT) X-BeenThere: newlib-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib GIT logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Jul 2022 11:50:33 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D878b65b3b61= 050b7b380e677246424c9e9feb703 commit 878b65b3b61050b7b380e677246424c9e9feb703 Author: Randall Stewart Date: Tue Sep 24 18:18:11 2019 +0000 This commit adds BBR (Bottleneck Bandwidth and RTT) congestion control. =20 This is a completely separate TCP stack (tcp_bbr.ko) that will be built= only if you add the make options WITH_EXTRA_TCP_STACKS=3D1 and also include the= option TCPHPTS. You can also include the RATELIMIT option if you have a NIC i= nterface that supports hardware pacing, BBR understands how to use such a featur= e. =20 Note that this commit also adds in a general purpose time-filter which allows you to have a min-filter or max-filter. A filter allows you to have a low (or high) value for some period of time and degrade slowly to another value has time passes. You can find out the details of BBR by looking at the original paper at: =20 https://queue.acm.org/detail.cfm?id=3D3022184 =20 or consult many other web resources you can find on the web referenced by "BBR congestion control". It should be noted that BBRv1 (which this is) does tend to unfairness in cases of small buffered paths, and it will usually get less bandwidth in the case of large BDP paths(when competing with new-reno or cubic flows). BBR is still an active research area and we do plan on implementing V2 of BBR to see if it is an improvement over V1. =20 Sponsored by: Netflix Inc. Differential Revision: https://reviews.freebsd.org/D21582 Diff: --- newlib/libc/sys/rtems/include/netinet/tcp.h | 1 + 1 file changed, 1 insertion(+) diff --git a/newlib/libc/sys/rtems/include/netinet/tcp.h b/newlib/libc/sys/= rtems/include/netinet/tcp.h index 508d4b5fb..37ba3bb55 100644 --- a/newlib/libc/sys/rtems/include/netinet/tcp.h +++ b/newlib/libc/sys/rtems/include/netinet/tcp.h @@ -239,6 +239,7 @@ struct tcphdr { #define TCP_BBR_ACK_COMP_ALG 1096 /* Not used */ #define TCP_BBR_TMR_PACE_OH 1096 /* Recycled in 4.2 */ #define TCP_BBR_EXTRA_GAIN 1097 +#define TCP_RACK_DO_DETECTION 1097 /* Recycle of extra gain for rack, att= ack detection */ #define TCP_BBR_RACK_RTT_USE 1098 /* what RTT should we use 0, 1, or 2? = */ #define TCP_BBR_RETRAN_WTSO 1099 #define TCP_DATA_AFTER_CLOSE 1100