| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 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 theselimits, thus being unable to fully utilize the bandwidth resources it has at its disposal. Following system-specific tips might be helpfulto alleviate the aforementioned problem.Linux-----Use 'ulimit -n' to raise an allowed number of file descriptors to be opened on your host at the same time.FreeBSD-------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 systemSee also: * https://www.freebsd.org/doc/handbook/configtuning-kernel-limits.html * https://wiki.freebsd.org/NetworkPerformanceTuningMac 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.maxfilesperprocwhen 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.Disclaimer----------Do note that this document is a draft and above information may betechnically incorrect and/or incomplete. If so, please open a ticketon https://trac.torproject.org or post to tor-relays mailing list.Are you running a busy Tor relay? Let us know how you are solvingthe out-of-sockets problem on your system.
 |