How to limit number of sockets used?

I am running Tor v0.2.3.25 in a VPS that limits me to a max of 4096 sockets in use. How can I instruct Tor not to attempt to use more than this number? Yes, I know about ConstrainedSockets/ConstrainedSockSize, but the way I read these it limits the amount of memory used, not the socket count. Advice, please? Thanks.

On Tue, Apr 09, 2013 at 10:19:38PM -0400, Steve Snyder wrote:
I am running Tor v0.2.3.25 in a VPS that limits me to a max of 4096 sockets in use. How can I instruct Tor not to attempt to use more than this number?
Yes, I know about ConstrainedSockets/ConstrainedSockSize, but the way I read these it limits the amount of memory used, not the socket count.
Advice, please? Thanks.
I believe there is no such feature currently. How should it work? That is, which connections should it refuse? Currently we assume that all relays are able to reach all other relays. Otherwise we get into the situation where the network isn't a clique, and anonymity analysis from path selection gets complex really quickly ("I saw the connection from that relay, so the hop before that couldn't have been this other relay because there's no link, therefore ...") --Roger

You should be able to use normal ulimit style settings, Limiting open files count (a socket is an open file). On Wed, Apr 10, 2013 at 8:38 AM, Roger Dingledine <arma@mit.edu> wrote:
On Tue, Apr 09, 2013 at 10:19:38PM -0400, Steve Snyder wrote:
I am running Tor v0.2.3.25 in a VPS that limits me to a max of 4096 sockets in use. How can I instruct Tor not to attempt to use more than this number?
Yes, I know about ConstrainedSockets/ConstrainedSockSize, but the way I read these it limits the amount of memory used, not the socket count.
Advice, please? Thanks.
I believe there is no such feature currently.
How should it work? That is, which connections should it refuse?
Currently we assume that all relays are able to reach all other relays. Otherwise we get into the situation where the network isn't a clique, and anonymity analysis from path selection gets complex really quickly ("I saw the connection from that relay, so the hop before that couldn't have been this other relay because there's no link, therefore ...")
--Roger
_______________________________________________ tor-relays mailing list tor-relays@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-relays

On Wed, Apr 10, 2013 at 09:09:44AM +0200, Dennis Ljungmark wrote:
You should be able to use normal ulimit style settings, Limiting open files count (a socket is an open file).
Yes, you can do this, but it will degrade your relay (and hurt the network) because it will unpredictably hang up on requests. --Roger

On Wed, 10 Apr 2013 03:12:14 -0400 Roger Dingledine <arma@mit.edu> wrote:
On Wed, Apr 10, 2013 at 09:09:44AM +0200, Dennis Ljungmark wrote:
You should be able to use normal ulimit style settings, Limiting open files count (a socket is an open file).
Yes, you can do this, but it will degrade your relay (and hurt the network) because it will unpredictably hang up on requests.
There is a note in the manual regarding socket use: "The DirPort option should also not be used if TCP buffers are scarce. The cached directory requests consume additional sockets which exacerbates the problem." If that doesnt work, it looks like you are left with reducing sockets by setting a lower BandwidthRate, value thereof to be figured out by trial and error.

On Tue, 09 Apr 2013 22:19:38 -0400 Steve Snyder <swsnyder@snydernet.net> wrote:
I am running Tor v0.2.3.25 in a VPS that limits me to a max of 4096 sockets in use. How can I instruct Tor not to attempt to use more than this number?
Do you already hit this limitation in practice? Some time ago I was running a quite busy relay node on a socket-limited VPS, and if I remember correctly, observed about 1500-2000 open sockets at most, with my limit being 5000-something. -- With respect, Roman
participants (5)
-
Dennis Ljungmark
-
krishna e bera
-
Roger Dingledine
-
Roman Mamedov
-
Steve Snyder