> You are incorrect, modern clients are fast and requests typically reside in buffers by the time event driven webservers decide to read them.
Hmm. Not sure if that's universally true. I've heard that in some cases HTTP requests can be quite large due to having several cookies, long strings of Accept: garbage, etc. My impression was that this could make them not only exceed the MSS (thus be in multiple packets) but also the congestion window (thus be in multiple round trips). It doesn't matter then how fast the client code is.
On looking a little now, my information may be old. Apparently Linux increased the default initial congestion window back in 2011: https://www.igvita.com/2011/10/20/faster-web-vs-tcp-slow-sta... . Is the same true for all the widely-deployed versions of iOS, Windows, and OS X?
> Instead, accept filters were used and to this day are advised in such situations by nginx people.
Hadn't seen that before: http://www.freebsd.org/cgi/man.cgi?query=accf_http&sektion=9...
Interesting feature, and certainly would the initial congestion window problem, but there doesn't seem to be an equivalent on Linux.