At 11:17 AM 12/13/2002, Aaron Bannert wrote: >It looks to me like it's used in conjunction with sendfile >on Linux, and is probably useful for preventing slow starts >on big bursts of data (like a response). I suspect it is >especially useful when each header in the hdtr->headers iovec >is not going to fill a full packet. (Is this thing anything >other than the opposite of TCP_NODELAY?) > >It is one of those things that only helps if you have it and >doesn't hurt if you don't.
Huh? What do you mean "it doesn't hurt"? Badly coded network code hurts like hell. And exposing such a facility on some subset of platforms means that the other platforms may thrash wildly in response to bad code. If we have to engineer around bad application code in APR, we have to do so consistently. That doesn't mean we can't support the concept but that we have to implement it across the board... using _NOPUSH if available and lots of set-aside code or another facility if not. I would much rather see this implemented in terms of apr_ functions and not yet-another-flag-to-setsockopt, so that we don't burden the usual core network functions with this behavior. Bill
