From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1921) id 4DD3E385BADA; Mon, 11 Jul 2022 11:55:00 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4DD3E385BADA 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] tcp: Add support for DSACK based reordering window to rack. X-Act-Checkin: newlib-cygwin X-Git-Author: Randall Stewart X-Git-Refname: refs/heads/master X-Git-Oldrev: 4bf5c259d3be0216a4b0e322fa5a60bb46ea7279 X-Git-Newrev: 57703f72c8d9c2baefc36b13bc1262bd7cb6c721 Message-Id: <20220711115500.4DD3E385BADA@sourceware.org> Date: Mon, 11 Jul 2022 11:55:00 +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:55:00 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D57703f72c8d= 9c2baefc36b13bc1262bd7cb6c721 commit 57703f72c8d9c2baefc36b13bc1262bd7cb6c721 Author: Randall Stewart Date: Tue Aug 17 16:29:22 2021 -0400 tcp: Add support for DSACK based reordering window to rack. =20 The rack stack, with respect to the rack bits in it, was originally bui= lt based on an early I-D of rack. In fact at that time the TLP bits were in a se= parate I-D. The dynamic reordering window based on DSACK events was not present in rack at that time. It is now part of the RFC and we need to update o= ur stack to include these features. However we want to have a way to control the= feature so that we can, if the admin decides, make it stay the same way system = wide as well as via socket option. The new sysctl and socket option has the fol= lowing meaning for setting: =20 00 (0) - Keep the old way, i.e. reordering window is 1 and do not use D= SACK bytes to add to reorder window 01 (1) - Change the Reordering window to 1/4 of an RTT but do not use D= SACK bytes to add to reorder window 10 (2) - Keep the reordering window as 1, but do use SACK bytes to add = additional 1/4 RTT delay to the reorder window 11 (3) - reordering window is 1/4 of an RTT and add additional DSACK by= tes to increase the reordering window (RFC behavior) =20 The default currently in the sysctl is 3 so we get standards based beha= vior. Reviewed by: tuexen Sponsored by: Netflix Inc. Differential Revision: https://reviews.freebsd.org/D31506 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 a79dbeaad..29c1e376c 100644 --- a/newlib/libc/sys/rtems/include/netinet/tcp.h +++ b/newlib/libc/sys/rtems/include/netinet/tcp.h @@ -309,6 +309,7 @@ struct tcphdr { #define TCP_RACK_PACING_BETA 1138 /* Changing the beta for pacing */ #define TCP_RACK_PACING_BETA_ECN 1139 /* Changing the beta for ecn with pa= cing */ #define TCP_RACK_TIMER_SLOP 1140 /* Set or get the timer slop used */ +#define TCP_RACK_DSACK_OPT 1141 /* How do we setup rack timer DSACK optio= ns bit 1/2 */ =20 /* Start of reserved space for third-party user-settable options. */ #define TCP_VENDOR SO_VENDOR