From d9f7df6f9b22100426216ca868adef7a3c4dca88 Mon Sep 17 00:00:00 2001 From: ronghulin Date: Fri, 16 Oct 2020 11:47:35 +0800 Subject: [PATCH] fix TCP retransmission interval --- components/lwip/Kconfig | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/components/lwip/Kconfig b/components/lwip/Kconfig index b7b562b6f1..ea74557d65 100644 --- a/components/lwip/Kconfig +++ b/components/lwip/Kconfig @@ -353,6 +353,13 @@ menu "LWIP" change the memory usage of LWIP, except for preventing new listening TCP connections after the limit is reached. + config LWIP_TCP_HIGH_SPEED_RETRANSMISSION + bool "TCP high speed retransmissions" + default y + help + Speed up the TCP retransmission interval. If disabled, + it is recommended to change the number of SYN retransmissions to 6, + TCP timer interval to 250, and TCP rto time to 3000. config LWIP_TCP_MAXRTX int "Maximum number of retransmissions of data segments" @@ -363,7 +370,8 @@ menu "LWIP" config LWIP_TCP_SYNMAXRTX int "Maximum number of retransmissions of SYN segments" - default 6 + default 6 if !LWIP_TCP_HIGH_SPEED_RETRANSMISSION + default 12 if LWIP_TCP_HIGH_SPEED_RETRANSMISSION range 3 12 help Set maximum number of retransmissions of SYN segments. @@ -381,7 +389,8 @@ menu "LWIP" config LWIP_TCP_TMR_INTERVAL int "TCP timer interval(ms)" - default 250 + default 250 if !LWIP_TCP_HIGH_SPEED_RETRANSMISSION + default 125 if LWIP_TCP_HIGH_SPEED_RETRANSMISSION help Set TCP timer interval in milliseconds. @@ -512,7 +521,8 @@ menu "LWIP" config LWIP_TCP_RTO_TIME int "Default TCP rto time" - default 3000 + default 3000 if !LWIP_TCP_HIGH_SPEED_RETRANSMISSION + default 1500 if LWIP_TCP_HIGH_SPEED_RETRANSMISSION help Set default TCP rto time for a reasonable initial rto. In bad network environment, recommend set value of rto time to 1500.