Messages in this thread | | | Subject | Re: > 15K simultaneous connections EXAMPLE program/OS config needed, was: Re: POSIX aio vs completion ports | Date | Fri, 17 Sep 1999 08:50:00 +0200 (MEST) | From | (Rogier Wolff) |
| |
Arjan van de Ven wrote: > Dan Kegel had the wisdom to write: > DK> Guess I should rename my page c100k.html :-) > > DK> Alan recently said that each handle takes up 20k in kernel space. > DK> so 100,000 connections could take up 100k*20k = 2GB of RAM, > DK> which might cause some trouble except on very recent kernels > DK> (and maybe you still need a patch for this). > > Even worse, it would require > 64K ports for TCP/IP, and that is not > possible...
Bullshit.
myserverd opens its server port myserverIP:myport next it just waits for the connections to come in. All of them have localIP/localport the same, but remoteIP/remoteport are 6 bytes of connection identification.
If you're handling lots of outgoing connections (unlikely), you might run into trouble. Suppose we want ephemeral (sp?) ports, the kernel might say "Sorry, none found" when you've used all of them. This is incorrect (but nobody has run into it yet). After one round around the port space searching for an unused port, the kernel should just allocate a port that's already used. Then you can connect to any IP/port, except the one that the existing connection is already connected to. If the kernel knows the destination IP/port at that time, it should try to avoid that situation. Otherwise, it should just hope for the best.
Roger.
-- ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2137555 ** *-- BitWizard writes Linux device drivers for any device you may have! --* ------ Microsoft SELLS you Windows, Linux GIVES you the whole house ------
- 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/
| |