mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-30 23:53:32 +01:00
48 lines
1.6 KiB
Plaintext
48 lines
1.6 KiB
Plaintext
|
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.
|
||
|
|
||
|
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 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.
|
||
|
|
||
|
Disclaimer
|
||
|
----------
|
||
|
|
||
|
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.
|
||
|
|