Merge branch 'bufix/Backport_some_wifi_lwip_bugs_for_4.4_1025' into 'release/v4.4'

Bufix/backport some wifi lwip bugs for 4.4 1025

See merge request espressif/esp-idf!20781
This commit is contained in:
Jiang Jiang Jian
2022-11-10 10:59:10 +08:00
6 changed files with 16 additions and 4 deletions

View File

@ -506,7 +506,13 @@ menu "LWIP"
int "Maximum segment lifetime (MSL)"
default 60000
help
Set maximum segment lifetime in in milliseconds.
Set maximum segment lifetime in milliseconds.
config LWIP_TCP_FIN_WAIT_TIMEOUT
int "Maximum FIN segment lifetime"
default 20000
help
Set maximum segment lifetime in milliseconds.
config LWIP_TCP_SND_BUF_DEFAULT
int "Default send buffer size"

View File

@ -88,7 +88,7 @@ typedef struct {
.tos = 0, \
.ttl = IP_DEFAULT_TTL, \
.target_addr = *(IP_ANY_TYPE), \
.task_stack_size = 2048, \
.task_stack_size = 2048 + TASK_EXTRA_STACK_SIZE, \
.task_prio = 2, \
.interface = 0,\
}

View File

@ -359,6 +359,11 @@
*/
#define TCP_MSL CONFIG_LWIP_TCP_MSL
/**
* TCP_FIN_WAIT_TIMEOUT: The maximum FIN segment lifetime in milliseconds
*/
#define TCP_FIN_WAIT_TIMEOUT CONFIG_LWIP_TCP_FIN_WAIT_TIMEOUT
/**
* TCP_MAXRTX: Maximum number of retransmissions of data segments.
*/

View File

@ -439,6 +439,7 @@ Most lwIP RAM usage is on-demand, as RAM is allocated from the heap as needed. T
- Reducing :ref:`CONFIG_LWIP_MAX_SOCKETS` reduces the maximum number of sockets in the system. This will also cause TCP sockets in the ``WAIT_CLOSE`` state to be closed and recycled more rapidly (if needed to open a new socket), further reducing peak RAM usage.
- Reducing :ref:`CONFIG_LWIP_TCPIP_RECVMBOX_SIZE`, :ref:`CONFIG_LWIP_TCP_RECVMBOX_SIZE` and :ref:`CONFIG_LWIP_UDP_RECVMBOX_SIZE` reduce memory usage at the expense of throughput, depending on usage.
- Reducing :ref:`CONFIG_LWIP_TCP_MSL`, :ref:`CONFIG_LWIP_TCP_FIN_WAIT_TIMEOUT` reduces the maximum segment lifetime in the system. This will also cause TCP sockets in the ``TIME_WAIT``, ``FIN_WAIT_2`` state to be closed and recycled more rapidly
- Disable :ref:`CONFIG_LWIP_IPV6` can save about 39 KB for firmware size and 2KB RAM when system power up and 7KB RAM when TCPIP stack running. If there is no requirement for supporting IPV6 then it can be disabled to save flash and RAM footprint.
If using Wi-Fi, please also refer to :ref:`wifi-buffer-usage`.