Re: to many sockets ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alan Cox schrieb:
Ar Mer, 2006-10-04 am 17:03 +0200, ysgrifennodd Markus Wenke:
Hi,

I wrote a program which handles incomming sockets asynchron.
It can handle up to 140000 connections simultaneously while every connection send some bytes in both directions continuously.

Armwavingly 64K x 2 per socket worst case for non tcp windowed buffering

128K per socket x 140000 connections

8750MB of RAM

plus other overhead

Assuming you kept the socket buffer limit to 64K by setting it or
disabling window scaling you'd want a about 10GB of RAM for the sockets,
buffering and resources. With tcp windows you'd need more.
The default values of my system are:
SO_SNDBUF = 16384
SO_RCVBUF = 87380

If your data rates are always low, or the link is low latency you could
set the send/receive socket buffer for each connection via setsockopt
down to say 8K and come out needing perhaps 1GB or so instead.

I tried the same scenario with SO_SNDBUF = SO_RCVBUF = 8k, so that the max memory is ca. 2G and the oom-killer kills my application at the same time (at 140000 connections).

I can not see in the messages that the system is out of memory,
there is also no swap space used

You can download my /var/log/messages at http://hemaho.mine.nu/~biber/messages

May you can give me a hint which line/value in the log shows me,
that the system is out of memory?


Thanks in advance

Markus Wenke

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux