* Beyond 64K TCP connections limit per IP-address @ 2007-07-04 7:50 Robert Iakobashvili 2007-07-04 8:19 ` Florian Weimer 2007-07-04 9:36 ` Evgeniy Polyakov 0 siblings, 2 replies; 6+ messages in thread From: Robert Iakobashvili @ 2007-07-04 7:50 UTC (permalink / raw) To: NetDev If I am correct, a TCP server can make up to 64K accepts for a port at a single IP-address. If one would like to have e.g. 1M TCP connections to a single IP-address of a powerful server (without load balancer), how to make such setup? There is a workaround to arrange several secondary IP-addresses each serving ~64K connections. Any other options? Server places to the outgoing packet source port the port of the server listening socket. Actually, the ephemeral ports at the server side are used as the hashing keys. Could it be played, tricked somehow? Y comments would be appreciated. -- Sincerely, Robert Iakobashvili, coroberti %x40 gmail %x2e com ........................................................... http://curl-loader.sourceforge.net A web testing and traffic generation tool. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Beyond 64K TCP connections limit per IP-address 2007-07-04 7:50 Beyond 64K TCP connections limit per IP-address Robert Iakobashvili @ 2007-07-04 8:19 ` Florian Weimer 2007-07-04 9:36 ` Evgeniy Polyakov 1 sibling, 0 replies; 6+ messages in thread From: Florian Weimer @ 2007-07-04 8:19 UTC (permalink / raw) To: Robert Iakobashvili; +Cc: NetDev * Robert Iakobashvili: > If I am correct, a TCP server can make up to > 64K accepts for a port at a single IP-address. I don't think such a limit exists. In typical configurations, a single client IP address can only establish a few tens of thousands of TCP connections to one server port. But as soon as multiple clients are involved, there is virtually no protocol-imposed limit. -- Florian Weimer <fweimer@bfk.de> BFK edv-consulting GmbH http://www.bfk.de/ Kriegsstraße 100 tel: +49-721-96201-1 D-76133 Karlsruhe fax: +49-721-96201-99 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Beyond 64K TCP connections limit per IP-address 2007-07-04 7:50 Beyond 64K TCP connections limit per IP-address Robert Iakobashvili 2007-07-04 8:19 ` Florian Weimer @ 2007-07-04 9:36 ` Evgeniy Polyakov 2007-07-04 9:40 ` Robert Iakobashvili 1 sibling, 1 reply; 6+ messages in thread From: Evgeniy Polyakov @ 2007-07-04 9:36 UTC (permalink / raw) To: Robert Iakobashvili; +Cc: NetDev On Wed, Jul 04, 2007 at 09:50:31AM +0200, Robert Iakobashvili (coroberti@gmail.com) wrote: > If I am correct, a TCP server can make up to > 64K accepts for a port at a single IP-address. No, it is essentially unlimited - linux uses local/remote addr/port tuples for hash chains, so there is no per-addr limits. If there is some kind of binds, then yes, only 64k ports per address. -- Evgeniy Polyakov ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Beyond 64K TCP connections limit per IP-address 2007-07-04 9:36 ` Evgeniy Polyakov @ 2007-07-04 9:40 ` Robert Iakobashvili 2007-07-04 10:06 ` Eric Dumazet 0 siblings, 1 reply; 6+ messages in thread From: Robert Iakobashvili @ 2007-07-04 9:40 UTC (permalink / raw) To: Evgeniy Polyakov; +Cc: NetDev On 7/4/07, Evgeniy Polyakov <johnpol@2ka.mipt.ru> wrote: > On Wed, Jul 04, 2007 at 09:50:31AM +0200, Robert Iakobashvili (coroberti@gmail.com) wrote: > > If I am correct, a TCP server can make up to > > 64K accepts for a port at a single IP-address. > > No, it is essentially unlimited - linux uses local/remote addr/port > tuples for hash chains, so there is no per-addr limits. > If there is some kind of binds, then yes, only 64k ports per address. Thanks, it clarified me the issue. Probably, I am experiencing some local problem with the web-server I am using for tests. -- Sincerely, Robert Iakobashvili, coroberti %x40 gmail %x2e com ........................................................... http://curl-loader.sourceforge.net A web testing and traffic generation tool. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Beyond 64K TCP connections limit per IP-address 2007-07-04 9:40 ` Robert Iakobashvili @ 2007-07-04 10:06 ` Eric Dumazet 2007-07-05 9:28 ` Robert Iakobashvili 0 siblings, 1 reply; 6+ messages in thread From: Eric Dumazet @ 2007-07-04 10:06 UTC (permalink / raw) To: Robert Iakobashvili; +Cc: Evgeniy Polyakov, NetDev On Wed, 4 Jul 2007 11:40:48 +0200 "Robert Iakobashvili" <coroberti@gmail.com> wrote: > On 7/4/07, Evgeniy Polyakov <johnpol@2ka.mipt.ru> wrote: > > On Wed, Jul 04, 2007 at 09:50:31AM +0200, Robert Iakobashvili (coroberti@gmail.com) wrote: > > > If I am correct, a TCP server can make up to > > > 64K accepts for a port at a single IP-address. > > > > No, it is essentially unlimited - linux uses local/remote addr/port > > tuples for hash chains, so there is no per-addr limits. > > If there is some kind of binds, then yes, only 64k ports per address. > > Thanks, it clarified me the issue. > Probably, I am experiencing some local problem with > the web-server I am using for tests. If your setup is : Server A with one IP address listening to port 80 'Client B' with one IP address, trying to open many sockets to A (port 80) Then yes you have a 64k limit for this particular client B. Just add 15 more clients (or 16 IP addresses on B) if you really want to stress A ;) ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Beyond 64K TCP connections limit per IP-address 2007-07-04 10:06 ` Eric Dumazet @ 2007-07-05 9:28 ` Robert Iakobashvili 0 siblings, 0 replies; 6+ messages in thread From: Robert Iakobashvili @ 2007-07-05 9:28 UTC (permalink / raw) To: NetDev On 7/4/07, Eric Dumazet <dada1@cosmosbay.com> wrote: > On Wed, 4 Jul 2007 11:40:48 +0200 > "Robert Iakobashvili" <coroberti@gmail.com> wrote: > > > On 7/4/07, Evgeniy Polyakov <johnpol@2ka.mipt.ru> wrote: > > > On Wed, Jul 04, 2007 at 09:50:31AM +0200, Robert Iakobashvili (coroberti@gmail.com) wrote: > > > > If I am correct, a TCP server can make up to > > > > 64K accepts for a port at a single IP-address. > > > > > > No, it is essentially unlimited - linux uses local/remote addr/port > > > tuples for hash chains, so there is no per-addr limits. > > > If there is some kind of binds, then yes, only 64k ports per address. > > > > Thanks, it clarified me the issue. > > Probably, I am experiencing some local problem with > > the web-server I am using for tests. > > If your setup is : > Server A with one IP address listening to port 80 > 'Client B' with one IP address, trying to open many sockets to A (port 80) > Then yes you have a 64k limit for this particular client B. Just add 15 more clients (or 16 IP addresses on B) if you really want to stress A ;) Actually, each client has its own secondary IP, and the problem was in nginx server configuration (errare humanum est). Thank you, Eric. -- Sincerely, Robert Iakobashvili, coroberti %x40 gmail %x2e com ........................................................... http://curl-loader.sourceforge.net A web testing and traffic generation tool. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2007-07-05 9:28 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2007-07-04 7:50 Beyond 64K TCP connections limit per IP-address Robert Iakobashvili 2007-07-04 8:19 ` Florian Weimer 2007-07-04 9:36 ` Evgeniy Polyakov 2007-07-04 9:40 ` Robert Iakobashvili 2007-07-04 10:06 ` Eric Dumazet 2007-07-05 9:28 ` Robert Iakobashvili
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).