From 6180aa78409627325cbba1a2e751260410cac54f Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Fri, 1 Apr 2022 21:07:16 +0200 Subject: lib: Add support for Linux RTT estimator This adds the option to use the Round-Trip-Time (RTT) estimation algorithm as it is implemented in the TCP implementation in Linux. It looks like it outperforms the TCP default algorithm, so I enabled this one by default. Also adds the option to change the RTO timeout calculation to include more (or less) than 4 times the mdev (specified as a power of 2. Left the default value to 2 (so, 4 mdevs), but 3 (8 mdevs) gives better results in my tests. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/lib/config.h.in | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/lib/config.h.in') diff --git a/src/lib/config.h.in b/src/lib/config.h.in index a51c2791..3bf6274a 100644 --- a/src/lib/config.h.in +++ b/src/lib/config.h.in @@ -69,12 +69,14 @@ #define DU_BUFF_TAILSPACE @DU_BUFF_TAILSPACE@ /* Default Delta-t parameters */ +#cmakedefine FRCT_LINUX_RTT_ESTIMATOR #define DELT_A (@DELTA_T_ACK@) /* ns */ #define DELT_R (@DELTA_T_RTX@) /* ns */ #define RQ_SIZE (@FRCT_REORDER_QUEUE_SIZE@) #define START_WINDOW (@FRCT_START_WINDOW@) #define RTO_MIN (@FRCT_RTO_MIN@ * 1000) +#define MDEV_MUL (@FRCT_RTO_MDEV_MULTIPLIER@) #define TICTIME (@FRCT_TICK_TIME@ * 1000) /* ns */ -- cgit v1.2.3