On 11/18/2013 05:18 AM, Willy Tarreau wrote:
The typical case is a client establishing a connection, not sending anything
over it then closing (or expiring with the time out). When you run with very
short timeouts, it can be caused by request typed by hand and by network losses.
When you see them with large timeouts as above, I suspect these result from
some pre-connect features from some recent browsers which try to establish a
connection to some servers based on your browsing history and which result in
increasing the load of some sites.
Thanks Willy.
We looked at a sample of requests with tcpdump where this behavior
occurred. A lot of less-than-textbook behavior, but most commonly
clients would:
* Open a connection normally and then immediately send a FIN.
* Open two connections, and then only ever send data over one of them
(or open 4 and only use two). This seems to fit the pre-connect
explanation (although the 4x2 remains confusing).
I have not caught a case with tcpdump where packets contain a valid GET
came in and did not make it to the backend.