About posting: you can include literal code if you put it between two lines which only contain 5 tildas
, as here:
int function( void )
/* This is a comment */
I’m glad you traced down the problem.
This seems ot add up to >10K per tcp socket. Can I reduce
TCP_MSS to something smaller? Can it be less than an ethernet Mtu?
This is a TCP packet:
1) Ethernet header = 14 bytes
2) IP-header = 20 bytes
3) TCP-header = 20 bytes
4) TCP contents/payload <= MSS
MTU (Maximum Transmission Unit) equals MSS + 40.
The ‘Ethernet header’ of 14 bytes is not included in the MTU.
I would recommend bringing down the MTU for testing, e.g.:
#define ipconfigNETWORK_MTU 800
The value of MSS will automatically adapt:
#define ipconfigTCP_MSS ( ipconfigNETWORK_MTU - ipSIZE_OF_IP_HEADER - ipSIZE_OF_TCP_HEADER )
which is 1000 – 40 = 960 bytes.
This post might also be interesting for you: