mirror of
https://github.com/apache/nuttx.git
synced 2025-01-13 13:18:50 +08:00
net/tcp/Kconfig: Remove NET_TCP_SPLIT
While it's a neat idea, it doesn't work well in reality. * Many of modern tcp stacks don't obey the "ack every other packet" rule these days. (Linux, macOS, ...) * Even if a traditional TCP implementation is assumed, we can't predict/control which packets are acked reliably. For example, window updates can easily mess up our strategy.
This commit is contained in:
parent
28d168e1b8
commit
ecd6a3572b
1 changed files with 0 additions and 28 deletions
|
@ -203,34 +203,6 @@ config NET_TCPBACKLOG_CONNS
|
|||
|
||||
endif # NET_TCPBACKLOG
|
||||
|
||||
config NET_TCP_SPLIT
|
||||
bool "Enable packet splitting"
|
||||
default n
|
||||
depends on !NET_TCP_WRITE_BUFFERS
|
||||
---help---
|
||||
send() will not return until the transfer has been ACKed by the
|
||||
recipient. But under RFC 1122, the host need not ACK each packet
|
||||
immediately; the host may wait for 500 MS before ACKing. This
|
||||
combination can cause very slow performance with small transfers are
|
||||
made to an RFC 1122 client. However, the RFC 1122 must ACK at least
|
||||
every second (odd) packet.
|
||||
|
||||
This option enables logic to trick the RFC 1122 host be exploiting
|
||||
this last RFC 1122 requirement: If an odd number of packets were to
|
||||
be sent, then send() will split the last even packet to guarantee
|
||||
that an even number of packets will be sent and the RFC 1122 host
|
||||
will ACK the final packet immediately.
|
||||
|
||||
if NET_TCP_SPLIT
|
||||
|
||||
config NET_TCP_SPLIT_SIZE
|
||||
int "Split size threshold"
|
||||
default 40
|
||||
---help---
|
||||
Packets of this size or smaller than this will not be split.
|
||||
|
||||
endif # NET_TCP_SPLIT
|
||||
|
||||
config NET_SENDFILE
|
||||
bool "Optimized network sendfile()"
|
||||
default n
|
||||
|
|
Loading…
Reference in a new issue