[tor-commits] [tor/master] Initial version of doc/TUNING.

nickm at torproject.org nickm at torproject.org
Tue Oct 28 18:14:00 UTC 2014

commit 6317146b4d96c403773eb72fc293352ad3c47487
Author: rl1987 <rl1987 at sdf.lonestar.org>
Date:   Sun Oct 26 19:37:48 2014 +0200

    Initial version of doc/TUNING.
 doc/TUNING |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/doc/TUNING b/doc/TUNING
new file mode 100644
index 0000000..a4bf386
--- /dev/null
+++ b/doc/TUNING
@@ -0,0 +1,47 @@
+Most operating systems limit an amount of TCP sockets that can be used 
+simultaneously. It is possible for a busy Tor relay to run into these
+limits, thus being unable to fully utilize the bandwidth resources it 
+has at its disposal. Following system-specific tips might be helpful
+to alleviate the aforementioned problem.
+Use 'ulimit -n' to raise an allowed number of file descriptors to be 
+opened on your host at the same time.
+Tune the followind sysctl(8) variables:
+ * kern.maxfiles - maximum allowed file descriptors (for entire system)
+ * kern.maxfilesperproc - maximum file descriptors one process is allowed
+   to use
+ * kern.ipc.maxsockets - overall maximum numbers of sockets for entire 
+   system
+ * kern.ipc.somaxconn - size of listen queue for incoming TCP connections
+   for entire system
+See also:
+ * https://www.freebsd.org/doc/handbook/configtuning-kernel-limits.html
+ * https://wiki.freebsd.org/NetworkPerformanceTuning
+Mac OS X
+Since Mac OS X is BSD-based system, most of the above hold for OS X as well.
+However, launchd(8) is known to modify kern.maxfiles and kern.maxfilesperproc
+when it launches tor service (see launchd.plist(5) manpage). Also, 
+kern.ipc.maxsockets is determined dynamically by the system and thus is 
+read-only on OS X.
+Do note that this document is a draft and above information may be
+technically incorrect and/or incomplete. If so, please open a ticket
+on https://trac.torproject.org or post to tor-relays mailing list.
+Are you running a busy Tor relay? Let us know how you are solving
+the out-of-sockets problem on your system.

More information about the tor-commits mailing list