uTorrent 1.8.x ‘Advanced Settings’ Explained

Here’s a quick recap / explanation of what each of uTorrent’s Advanced Settings are. Warning: Unless you fully understand the consequences of changing an advanced setting, you should not modify it without guidance. Modify at your own risk.

bt.allow_same_ip: Enabling this option allows multiple incoming connections from the same IP address. This option affects a single torrent job at a time, so you can still have the same IP address connect to you on different torrent swarms. It is recommended that this option be left disabled, as it weakens the anti-leech protection.

bt.auto_ul_factor: This option sets the portion of the largest reading to use for throttling. This value is interpreted as a percentage, so please enter it as such.

bt.auto_ul_interval: This option controls how often ВµTorrent tests the upload rate for setting the upload rate limit automatically. Every time this interval passes, ВµTorrent disables the upload rate limit and lets it run while sampling the rate. This option is interpreted in seconds, so please enter it as such.

bt.auto_ul_min: This option determines the smallest upload rate ВµTorrent will use while in auto-uplink throttling mode. If the sampled average is less than this value, ВµTorrent ignores the sampled average and uses this value instead. This value is interpreted in bytes per second, so please enter it as such.

bt.auto_ul_sample_average: This option sets how many seconds to average the amount of uploaded data over (sliding window).

bt.auto_ul_sample_window: This option controls how long each sampling run will take. This value is interpreted in seconds, so please enter it as such.

bt.ban_ratio: The lowest acceptable ratio of good to bad pieces a peer can send before it gets banned. This takes effect after bt.ban_threshold is exceeded and bt.use_ban_ratio is enabled.

bt.ban_threshold: This option specifies the maximum number of hashfailed pieces any single peer can send before ВµTorrent takes action against it (either banning it outright, or enforcing bt.ban_ratio if bt.use_ban_ratio is enabled).

bt.compact_allocation: Enabling this option allows ВµTorrent to create files in a manner such that the data are incrementally written to disk without file pre-allocation. Because writes are compact, enabling this option may potentially lead to an increased level of disk fragmentation while the file remains incomplete. In addition, this option further decreases the already-low probability that a file can be previewed before completion, since it may write the data for in-progress files out of order. Here are some things to take note of when using this option:

  • • If you tell ВµTorrent to pre-allocate all disk space, this option is ignored, and ВµTorrent will pre-allocate the file anyway.
  • • If this option is enabled, files can’t be skipped. If a torrent job has skipped files, it will not use compact allocation.

bt.connect_speed: This option specifies the number of connections ВµTorrent should make each second up to the net.max_halfopen limit.

bt.enable_tracker: Enabling this option enables the rudimentary tracker embedded in ВµTorrent. If you wish to use this tracker, the URL is located at http://IP:port/announce, where IP is your WAN IP address, and port is the port ВµTorrent is listening on (or the alternative listening port if set and enabled). If you use a dynamic DNS service, your domain may be used instead of your IP address. The embedded tracker allows tracking of external .torrent files, and provides no way to limit them. There is no interface for viewing the .torrent files that are tracked. It is imperative that ВµTorrent is able to listen for incoming connections for this feature to work properly, so you have to make sure you have completely forwarded your ports in order to use the embedded tracker.

bt.graceful_shutdown: If enabled, ВµTorrent will take as long as it needs to finish its shutdown sequence (writing in-progress pieces to disk, deleting files in deletion queue, and waiting for tracker replies to stop messages — among other things). That means that even if it takes several minutes to shutdown gracefully, it will wait for that long, and the process will remain in memory until then. If disabled, ВµTorrent will limit how long it waits to to 13 seconds, and regardless of the state of the shutdown sequence, ВµTorrent will force itself to exit.

bt.multiscrape: Enabling this option allows ВµTorrent to send multiple hashes each time it scrapes a tracker, which is more efficient than sending one hash at a time. In most circumstances, this option should not need to be disabled, as ВµTorrent will fall back to single scraping if it detects that the tracker does not support multi-scraping.

bt.no_connect_to_services: This option tells ВµTorrent not to connect to peers using ports specified in bt.no_connect_to_services_list as their listening ports. This stops firewalls from complaining about ВµTorrent trying to send an e-mail.

bt.no_connect_to_services_list: This option specifies which ports ВµTorrent should not connect to when bt.no_connect_to_services is enabled.

bt.prio_first_last_piece: Enabling this option prioritizes the first and last pieces of each file in a torrent job, increasing the chances that they can be previewed before download completion. ВµTorrent will prioritize at least the first and last 1 MiB of data in a file.

bt.scrape_stopped: Enabling this option allows ВµTorrent to get seed and peer counts for torrent jobs that are stopped.

bt.send_have_to_seed: Enabling this option tells ВµTorrent to send a message to other seeds indicating how many pieces you currently have.

bt.set_sockbuf: This debugging option allows ВµTorrent to automatically detect the TCP buffer size (so_sndbuf) and adjust it based on your upload speed. It does not adjust based on latency.

bt.use_ban_ratio: This option tells ВµTorrent to use bt.ban_ratio to decide when a peer gets banned after it has exceeded bt.ban_threshold.

bt.use_rangeblock: When enabled, ВµTorrent will automatically attempt to determine whether an entire range of IP addresses should be banned for sending hashfailed pieces rather than banning individual IPs one at a time. When ВµTorrent bans 4 IPs from the same /24 CIDR block, it will ban the entire /24 CIDR block. When ВµTorrent bans 4 CIDR blocks of size /24 from the same /16 CIDR block, it will ban the entire /16 CIDR block. When ВµTorrent bans 4 CIDR blocks of size /16 from the same /8 CIDR block, it will ban the entire /8 CIDR block.

dht.rate: This option specifies the amount of bandwidth that DHT will use. The default value, -1, tells ВµTorrent to manage the bandwidth usage automatically based on your maximum upload rate. The automatic value is obtained by dividing your maximum upload rate by 16. This value is interpreted in bytes per second, so please enter it as such.

diskio.coalesce_write_size: This option determines the size threshold for which ВµTorrent should write data out coalesced, and is relevant only if diskio.coalesce_writes is enabled. This value is interpreted in bytes per second, so please enter it as such.

diskio.coalesce_writes: This option tells ВµTorrent to try to minimize the number of writes to disk by writing more data at once. It doesn’t have any effect on download speeds, but might increase memory and CPU usage to achieve less disk writes.

diskio.flush_files: Enabling this option causes ВµTorrent to close file handles every minute. It helps to reduce the effect of Windows managing the system cache badly for some people and causing apparent “memory leaks.”

diskio.no_zero: Enabling this option causes ВµTorrent to skip the zero-filling process for file allocation. This option works only on Windows XP or newer, and requires administrator privileges by default. However, it is possible to make this work on limited accounts by setting the “Perform volume maintenance tasks” policy appropriately in the Windows Group Policy Editor. Skipping zero-filling speeds up the file allocation process, but because the allocated files have shared read access, there is a risk that any sensitive data that may have once existed at that location in disk but isn’t wiped will potentially be exposed for other applications and users to read, including those without volume maintenance privileges.

diskio.smart_hash: This option makes ВµTorrent hash data from memory (if in the write queue) instead of flushing to disk, re-reading from disk, and then hashing. This should help reduce hard disk reads, especially when transferring at high speeds.

diskio.smart_sparse_hash: This option is a workaround for a problem in some versions of Windows that return incorrect data to ВµTorrent regarding sparse files and the amount of data that has actually been completed on disk.

diskio.sparse_files: Enabling this option causes ВµTorrent to allocate only the data that it writes, but will inform the filesystem of the file’s size (so that it can attempt to reserve enough contiguous space on the hard drive without having to physically zero all of the space out for the file). Even though space is reserved for the file, no space will be taken for the unwritten parts of the file. Enabling this option may potentially lead to increased disk fragmentation in rare cases where the drive does not have enough free space available to honor the space reservation for sparse files. Here are some things to take note of when using this option:

  • • Sparse files work only on partitions that are formatted as NTFS.
  • • Hash checking sparse files tends to be quicker than hash checking pre-allocated files, as ВµTorrent won’t have to hash zeroed-out pre-allocated data.
  • • On Windows Vista, sparse files can cause ВµTorrent to run into a file system limitation.
  • • If you are using a non-administrator account with a disk quota, sparse files won’t work, and the file will still get fully allocated. This is a limitation with Windows that ВµTorrent can’t do anything about.
  • • This option cannot be used in conjunction with pre-allocate all files. If both options are enabled simultaneously, pre-allocation will take precedence.
  • • When used in conjunction with bt.compact_allocation, ВµTorrent will reserve space for each file in the filesystem, but it will continue to use compact writes.

diskio.use_partfile: This option is used to store data that is downloaded from files that you told ВµTorrent to skip. This is necessary to prevent the file from being allocated. It separately stores the parts of the skipped files that come with a piece, since ВµTorrent must download and save the entire piece in order to confirm that it is uncorrupted, and each piece can contain data from multiple files. The partfile is removed when you remove the torrent job from the torrent job list.

gui.bypass_search_redirect: Enabling this option tells ВµTorrent to search directly on the selected search engine rather than being redirected through http://search.utorrent.com.

gui.compat_diropen: If you experience abnormal behaviors while browsing directories in ВµTorrent, such as a blank browsing dialog, try enabling this option.

gui.default_del_action: This option tells ВµTorrent how it should remove torrent jobs when pressing the Remove button or Delete on your keyboard. Note that any value above 3 will cause the “Remove” button and the Delete button on your keyboard to do nothing in ВµTorrent. To be safer, you’d best be setting this option in the GUI through the toolbar method.

  • • 0 means “Remove”
  • • 1 means “Remove and delete .torrent”
  • • 2 means “Remove and delete Data”
  • • 3 means “Remove and delete .torrent + Data”

gui.delete_to_trash: Enabling this option tells ВµTorrent to attempt to delete files to the Recycle Bin rather than directly erasing them from the disk. It is easier to set this option in the GUI through the toolbar method.

gui.graphic_progress: This option tells ВµTorrent to draw a progress bar for each torrent job in the torrent jobs list, behind the Done column.

gui.log_date: This option causes the date to be included in the timestamp shown in the Logger tab.

gui.piecebar_progress: This option tells ВµTorrent to draw the lower Downloaded bar as the progress bar for each torrent job in the torrent jobs list, behind the Done column. This option works only if gui.graphic_progress is enabled, and will hide the percentage from the column.

gui.tall_category_list: This option toggles the Category List’s height between short and tall. When taller, the Category List displaces the Detailed Info Pane’s left-hand side. When shorter, the Category List’s lower section is displaced by the Detailed Info pane. A taller list might be more optimal for users with many labels and RSS feeds.

gui.update_rate: This option controls the amount of time between each update of the ВµTorrent main window. The higher it is, the less frequently ВµTorrent updates the main window, meaning that if you select 1000, the information displayed on the main window is at most 1000 milliseconds (1 second) old. For users of slower computers, you might want to increase this number to decrease resource usage when the main window is displayed. Any value below 500 will be ignored, and 500 will be used instead.

ipfilter.enable: This option, when enabled, tells ВµTorrent to load ipfilter.dat and apply the rules on connections established after it is loaded. Note that disabling and re-enabling this option will force ВµTorrent to reload ipfilter.dat.

isp.bep22: This option enables Local Tracker Discovery, allowing ВµTorrent to attempt to discover ISP-local trackers via a series of reverse DNS lookups. The ISP-local tracker can return a list of peers and caches (most likely ISP-local). Note that if your ISP is known to interfere with BitTorrent traffic, careful consideration should be taken in deciding to enable this option. Announcing to a ISP-hosted tracker indicates to the ISP that you are using BitTorrent, and as such, can make it easier for the ISP to interfere. Private torrent jobs are not announced to local trackers.

net.bind_ip: If your computer setup requires that you use a specific LAN adapter for incoming connections, you may specify that adapter’s IP address here.

net.calc_overhead: This option causes ВµTorrent to include communication overhead in the transfer rate calculations.

net.low_cpu: Enabling this option reduces CPU usage slightly. You may achieve faster speeds with this option disabled. In general, this option is useless for most people unless they have extremely fast connections.

net.max_halfopen: This option specifies how many connections ВµTorrent should attempt to establish simultaneously at any given time. On systems running Windows XP with Service Pack 2 (SP2) or newer, if your TCPIP.sys file is unpatched, you should leave this option at its default value.

net.outgoing_ip: If your computer setup requires that you use a specific LAN adapter for outgoing connections, you may specify that adapter’s IP address here. Note that Windows will sometimes ignore this setting and use other adapters due to their binding orders in Windows. To fix this, read Microsoft’s knowledge base artile KB894564.

net.outgoing_max_port: This sets the upper limit for the outgoing port range. If this option is set to some invalid port number or some value less than net.outgoing_port, it gets ignored, and only net.outgoing_port gets looked at (meaning the outgoing port “range” will actually be a single outgoing port).

net.outgoing_port: This option specifies the port that ВµTorrent should use to make outgoing connections. Normally, ВµTorrent selects a port from the ephemeral port range (between 1024 and 5000 by default on Windows) at random. “This can be used with full cone NAT routers to reduce the number of NAT table entries and thus prevent cashes on some router models. When the outgoing port is bound to the same as the incoming port that might even solve NAT problems on full cone NAT routers” (Advanced Network Settings on AzureusWiki). This option only works on Windows 2000 and above. This option is ignored if it is not a valid port number.

net.upnp_tcp_only: This option disables automatic forwarding of the listening port for UDP via UPnP, telling ВµTorrent to forward the port for TCP only. This fixes an issue with some broken routers that overwrite the TCP forwarding with the UDP forwarding.

net.wsaevents: This option is used for tweaking if you are experiencing odd firewall issues. Decrease the value one by one to see if it helps.

peer.disconnect_inactive: Enabling this option tells ВµTorrent to disconnect from a peer that is not transferring with you after peer.disconnect_inactive_interval seconds of inactivity. A peer gets disconnected by this option only if the connection limit has been reached.

peer.disconnect_inactive_interval: This option sets the amount of time ВµTorrent should wait before breaking an inactive connection. This value is interpreted in seconds, so please enter it as such. Any value below 300 will be ignored, and 300 will be used instead.

peer.lazy_bitfield: Some ISPs block seeding by looking for the complete bitfield and closing the connection. When enabled, ВµTorrent does not send the complete bitfield, but a sample of it, so as to prevent blocking of seeding.

peer.resolve_country: Enabling this option tells ВµTorrent to use an Internet database of IP addresses (a DNSBL) to determine a peer’s country. Even if the settings directory contains flags.conf and flags.bmp, this option will take precedence, and the internal flag images will be used instead.

queue.dont_count_slow_dl: Enabling this option tells ВµTorrent to ignore slow downloading torrent jobs as part of the queue. If a torrent job is downloading at less than the value specified by queue.slow_dl_threshold, it will not prevent the next item in the queue from starting.

queue.dont_count_slow_ul: Enabling this option tells ВµTorrent to ignore slow uploading torrent jobs as part of the queue. If a torrent job is uploading at less than the value specified by queue.slow_ul_threshold, it will not prevent the next item in the queue from starting.

queue.slow_dl_threshold: The rate below which ВµTorrent should consider a torrent job to be downloading slowly. If ВµTorrent is downloading at a rate above this value, it is considered to be actively downloading. This value is interpreted in bytes per second, so please enter it as such.

queue.slow_ul_threshold: The rate below which ВµTorrent should consider a torrent job to be uploading slowly. If ВµTorrent is uploading at a rate above this value, it is considered to be actively uploading. This value is interpreted in bytes per second, so please enter it as such.

queue.prio_no_seeds: Enabling this option gives torrent jobs without seeds higher priority when seeding than other torrent jobs.

queue.use_seed_peer_ratio: When this option is enabled, ВµTorrent will determine the seeding queue order based on the ratio of the number of seeds to the number of peers connected in the swarm. The lower the seed:peer ratio is for a torrent job, the higher priority it will be given in the seeding queue. If a torrent job has 0 peers and queue.dont_count_slow_ul is disabled, it will be given the lowest priority. Otherwise, if the aforementioned option is enabled, the torrent job is treated as if there is 1 peer in the swarm.

rss.smart_repack_filter: This option tells ВµTorrent to select an RSS item designated as REPACK over an item without the REPACK designation if both show up in the RSS feed.

rss.update_interval: This option sets the length of time ВµTorrent should wait between each RSS feed update check. This value is interpreted in minutes, so please enter it as such. Any value below 5 will be ignored, and 5 will be used instead.

sys.enable_wine_hacks: This option enables several workarounds for bugs found in Wine (like list-view flickering, or improper display of files list-view in Add New Torrent dialog). This option has no effect on Windows. For changes to this option to take effect, you must restart ВµTorrent.

webui.token_auth: This option enables the token authentication system for the Web UI, which is a method for preventing cross-site request forgery attacks that use the authenticated browser session to issue commands to ВµTorrent. This option breaks backwards compatibility with applications that are unaware of the token system.

Source: uTorrent Help file - http://download.utorrent.com/utorrent-help.zip