- From: Jamie Lokier <jamie@shareable.org>
- Date: Thu, 6 Mar 2008 20:22:13 +0000
- To: Robert Siemer <Robert.Siemer-httpwg@backsla.sh>
- Cc: Brian Smith <brian@briansmith.org>, 'HTTP Working Group' <ietf-http-wg@w3.org>
Robert Siemer wrote: > On Thu, Mar 06, 2008 at 12:33:45AM +0000, Jamie Lokier wrote: > > > I'm still puzzled as to when a client should reuse a persistent > > connection for requests that (it knows) shouldn't be retried. > > > > Since all servers close a persistent connection an unspecified time > > after the first request, and that's perfectly healthy (all servers > > must do it), ... > > Why must all servers do that? Two reasons: 1. Because idle TCP/IP sockets get into a stuck state, if the other end disappears off the net. Especially on internet facing servers, these tend to accumulate without bound (older servers had to be rebooted from time to time because of this). Servers will accumulate these until they run out of ports or memory, if they don't have some way to drop old, idle connections. 1. To defend against too many clients keeping connections open for an arbitrarily long time, whether maliciously or too popular. -- Jamie
Received on Thursday, 6 March 2008 20:22:29 UTC