apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@apache.org>
Subject Re: APR_TCP_NOPUSH
Date Fri, 13 Dec 2002 19:01:48 GMT
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


Mime
View raw message