Am 19.07.2018, 14:18 Uhr, schrieb Daniel Jeliński <[email protected]>:

Theoretically on these systems the send buffer should be automatically
adjusted to optimize throughput. I run a couple experiments to confirm
that, and found that the send buffer is only adjusted if the socket is
blocking and application buffer size is reasonably large
(experiment1.c), and buffer stays at 8192 if the socket is nonblocking
regardless of the application buffer size (experiment2.c).

I did a lot of network developing on Windows and you are right that it is a 
common mistake to set the SO_SNDBUF or SO_RCVBUF on Windows since Vista. This 
is done by *many* programs as a workaround for the bad implementation on 
Windows XP but kills performance on todays Windows.
However, so far I did not notice that this would only work for blocking sockets.

I think the correct solution would be to not set the socket-option SO_SNDBUF or 
SO_RCVBUF at all on Windows-Vista and newer.
I have to admit that I did not test your experimental-code, yet. But I wanted 
to object the merge of this PR, because I think it is not needed to use the 
SIO_IDEAL_SEND_BACKLOG_QUERY at all.

Maybe somebody else on this Mailing-List can share their experience.

Regards,

Christian

-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html

Reply via email to