On Tue, 12 Sep 2000, Thomas Charron <[EMAIL PROTECTED]> wrote:
>   Guys, I have a question that some here may be able to assist with.  
> Basically, it revolves around the Linux kernel, and adding the capability for a 
> very large number of simo IP connections.  We need to be able to have a linux 
> box support up to and hopefully over 20k simo TCP connections.  You can see a 
> copy of the challange we've issues at http://jabber.org/article/34.html.  The 
> biggest issue here is, we'd like to try to decrease the amount of RAM required 
> to host this many sockets.  Nearly every other OS we've compiled and tested on 
> can do it.  Basically, we have many persistant sockets, all of which are, for 
> the most part, idle.  Yes, I know, UDP, etc, instead, we've all had the 
> arguments.  For now, the persistant sockets are required.  The question ends up 
> being, can we make a Linux kernel support 20k TCP connections, without 
> requiring the kernel to consuming anywhere from 400 Megs to over a gig of ram?  

How much RAM usage for 20K sockets would be acceptable to you?

Back in 1998 I saw a talk by David S. Miller where he said he was
optimizing (speed and memory usage) the Linux networking code and was
doing tests with 40K sockets (likely over loopback but I don't know for
sure).  He may have been optimizing memory consumption for TIME_WAIT or
CLOSE_WAIT connections (e.g. http), which won't help you if I
understand your application (your connections stay up for a long time, like,
well, say, telnet).

Also, would setsockopt(2) for SO_SNDBUF and SO_RCVBUF (or something
else) be of use? I wrote some grotty code that calls getsockopt() and
it suggests for SOL_SOCKET these buffers are 65535 (kernel 2.2.14)...
I see this number in /usr/include/linux/skbuff.h, but it is likely I
made some mistake, if you play with getsockopt let me know what you
find.


Karl Runge


**********************************************************
To unsubscribe from this list, send mail to
[EMAIL PROTECTED] with the following text in the
*body* (*not* the subject line) of the letter:
unsubscribe gnhlug
**********************************************************

Reply via email to