Re: Preparations for ZD's upcoming Apache/Linux benchmark

Linus Torvalds (torvalds@transmeta.com)
Tue, 8 Jun 1999 23:30:39 -0700 (PDT)


On Wed, 9 Jun 1999, Arjan van de Ven wrote:
> > data list, and if it encounters a request it can't handle, it just pushes
> > the socket onto a accept-queue - so the user space side would just accept
> > the socket as if it came to it directly.
>
> This sounds simple, but what about persistent connections? (I think it can
> be done even then, though)

"persistent" as in connections that are re-used for multiple requests?

Yes, I think it should work even for a socket that has already been used
for another transfer: the kernel can do one (or more) static content
transfers over the same socket, and then when it gets a request it cannot
handle it just passes the socket to user space as if it was new.

Sure, it's not really a new socket, but there isn't any way user space can
know, so a standard apache or any other server would just never have seen
the original requests on that socket. We may have to "fake" a header or
similar on it, but at least it doesn't sound conecptually all that hard.

There may be implementation issues that make it impossible, of course. I
have by no means looked very deply at the problem set.

Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/