> Concerning buffered send mode yes, however I asked about unbuffered > send mode with a large user buffer. > > > Sorry, I misread that.
> > Do I understand correctly, that if I use unbuffered mode with a large > > > user buffer (say 64 KB), then RFC 1122 still may pause NuttX TCP stack > > > if an odd number of TCP segments are constructed based on the 64 KB > > > buffer? Thus 0.5 second delay may occur at the end of 64 KB buffer > > > during the last segment > I haven't looked or thought much about the unbuffered case in a long time. I suppose that for very large user buffers provided in the send, what you are saying is correct. There would be no ACK delays until the last segment is sent and if there is an odd number of segments, you should get the delay (assuming that CONFIG_NET_TCP_SPLIT is not selected and that the size of the last segment is at least CONFIG_NET_TCP_SPLIT_SIZE). But if you send the same 64 KB of data using a small user buffer, then you would experience that half second delay on every packet. That is the case where performance is terrible and CONFIG_NET_TCP_SPLIT should improve that.