Re: I/O completion ports for Linux

David S. Miller (davem@dm.cobaltmicro.com)
Tue, 31 Mar 1998 17:12:57 -0800


Date: Tue, 31 Mar 1998 17:01:58 -0800 (PST)
From: Alex Belits <abelits@phobos.illtel.denver.co.us>

While I/O completion ports may be useful, I can't imagine 30000
simultaneous TCP connections to the single process, or even to the
single host doing something. And with all my respect to browsers
manufacturers, poll() problem with that will hardly qualify as
"scalability", more like fd table size limit. And of course, a
browser definitely can't cause such thing to happen, more like
server, but still something beyond imaginable size.

Why can't you imagine it? Current Linux-2.1.x can create 30,000 TCP
sockets in just under 10 seconds (actually, create _and_ destroy
them). But you are right the fd table size limit is another issue.

But once the fd limit is taken care of, poll() scalability in such
situations is not all that hard and can probably be done with the
current poll() implementation quite easily.

On a seperate related note, poll() scalability is one of the important
bottlenecks to fix for a high end web server once the bulk of TCP
scales well (ours in 2.1.x certainly does).

Later,
David S. Miller
davem@dm.cobaltmicro.com

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu