Skip to content

Terminology

parg edited this page Mar 18, 2026 · 20 revisions

Archiving Downloads

Once you have seeded a download to the best of your ability you may want to stop and remove the download from BiglyBT in order to free up resources (every running downloaded uses some memory, CPU and network resources and if your library has hundreds of downloads then this all adds up). However you may occasionally want to re-activate a download, for example a poorly seeded torrent may require re-seeding to bring it back to life. Manually re-seeding a download can be troublesome though as you need to have the original torrent file, then add the torrent and manually select the correct data location etc.

Archiving a download makes it simple to re-activate a download later whilst consuming minimal resources. It also provides you with a convenient list of things you have downloaded so you can quickly locate the downloads on disk when needed.

Archiving a Download

Only completed and stopped downloads can be archived - right-click on them and select 'Archive'

Archive View

A separate view is available to manage archived downloads - go to the View menu and select 'Archived Downloads'. The view has a simple list of the downloads that have been archived and sub-tab that will show the files belonging to a selected download.

When the size of a download's file is shown in () this means that the file is a 'do not download' file and the content is unavailable - if required then restore the download, switch the file priority and wait for it to complete.

Restoring a Download

To restore a download locate it in the Archived Downloads, right-click on it and select 'Restore' or hit the start button in the toolbar to both restore it and start it running.

Restored downloads are automatically added to a Tag named 'Restored' to make them simple to find in your Library.

Searching the Archive

As with Library views there is a filter box top-right that can be used to filter the downloads - it supports the same kind of operations as the Library view including regular expression mode.

To filter by the names of files within a download, as opposed to the download title, prefix the search expression with "f:". For example, to find all downloads with files that contain the word "sock" you would enter f:sock as the expression.

Other

Tag constraints can be used to assign downloads that are ready for archive to a Tag for easy identification. For example, to assign those that are ready and have a share ratio of at least 0.5 you would use a constraint of

canArchive() && isGE( shareratio, 0.5 );

Auto Speed

BiglyBT contains two built-in Auto-speed algorithms: 'Classic' and 'Beta'. They both attempt to automatically select an upload speed limit to maximize upload while avoiding network congestion impacting on your download speeds.

If you know your network's upload capacity then it is recommended that you explicitly set your upload limit to 80% of this. The automatic algorithms work reasonably well for casual users.

Auto-Speed Classic

It works by selecting a number of other BiglyBT instances from the Distributed Database as ping targets. It then periodically pings these to obtain an average latency for your connection. In order to baseline these pings BiglyBT needs a period during which little network activity occurs. If this doesn't happen naturally within a period after startup it will temporarily force the upload limit to a very low value to obtain the baseline (it may repeat this at other times when the ping targets change)

Once a baseline ping time is available, auto-speed adjusts the upload speed based on the observed difference between the current ping time and the baseline.

There are many different types of connection with very different characteristics. Unfortunately auto-speed is currently not clever enough to optimise its behaviour for all scenarios automatically so you may need to adjust its parameters to maximise its effectiveness. To do this you need to change the 'Mode' to 'Advanced' in the options.

The three main parameters of interest are the increase/decrease amounts and the 'choking ping'. The first two affect how quickly auto-speed changes BiglyBT' upload setting in response to ping latency changes. The third is the latency that BiglyBT will consider as an absolute indicator of choking (although it also considers an additional factor based on the measured baseline ping time). By setting a rather low latency limit, you can make BiglyBT very responsive to network congestion.

Auto-Speed Beta

This has been "Beta" for a very long time and probably deserves a better name!

It has the following goals:

  • Allow the client to download in the background without interfering too much with normal web surfing
  • Automatically determine line speed limits used by the control algorithm
  • When download, maximize download rate over uploading.

The main setting is to set how big portion of your upload capacity is used by BiglyBT. It is limited to be 80% of the known/estimated capacity.

The algorithm uses DHT ping times to decided if it needs to adjust the current rates. Lower ping times responses indicate the network is not congested, high ping rates indicates that it is.

The application uses three ping sources as monitors. If it determine one of the ping sources is significantly slower than the others it will replace it.

Backup and Restore

The backup-and-restore feature is for configuration data (everything that BiglyBT uses internally to manage configuration settings, subscriptions, devices etc). This does not include anything external such as the downloaded data itself, torrents stored outside of the standard BiglyBT configuration directory, transcoded files etc. as these are in general large and require specialist backup.

As such it provides a good mechanism to recover from configuration data corruption (a rare occurrence but very annoying when it happens) and it can also be used to migrate configuration data from one location to another as the restore action will update any absolute paths in the configuration data.

Good Settings

Downloading as fast as your connection allows requires good settings based on the upload speed of your Internet connection. First, fix your NAT problem if you never see the green smiley as torrent health. Also, running another P2P program while BiglyBT is running may stall your downloads badly as they will fight for the same bandwidth.

Do not let BiglyBT (or any other program for that matter) take up the whole upload bandwidth. There needs to be room for overhead such as acknowledgement signals (ACKs) and resend requests. Downloads will suffer if these signals cannot be sent.

Set your upload limit to about 80% of the maximum possible. Setting your upload too low may result in your torrents downloading slower, so it is about finding a balance between the maximum speed and maintaining a low enough latency for smooth internet usage.

If you do not know your network upload limit then use the speed test - Help->Speed Test...

Hosting Files

Hosting a torrent means making your machine act as a Tracker for this torrent. BiglyBT can host torrents through its built-in tracker.

  • hosting in passive mode will only track the torrent
  • normal hosting will be able to seed the torrent as well

Your tracker needs to be configured for you to host (or Publish) torrents.

Keys

Each BiglyBT install has a separate key pair - a public key and a private key.

The private key is only ever stored on the local disk of your machine.

The public key can be communicated to the world at large to allow people to securely communicate with you.

It is important that the private key is kept securely. To this end it is stored in an encrypted form itself using a password. The management of this password can be by the user themselves or automatically by the client (the default). In both cases the private key never leaves your machine, it is purely the management of the password required to unlock it for use that differs.

I keep getting a pop up box asking for an encryption key password

Somehow you've managed to set a password for your private key... Short of remembering the actual password, you can regenerate a new one:

Options->Mode: select Advanced

Then go to the Security section, and you should see a Reset (keys) button. Click it and confirm the warning. You might be prompted for a new password. Once you've recreated the Public/Private keys, exit out of the client and restart it.

Multiple Copies Of BiglyBT Running

Having more than one copy of BiglyBT running in a given user, both reading from/writing to the same set of configuration files is not going to end happily-ever-after, so detection of this situation is attempted and secondary instances of BiglyBT will refuse to start.

Detection is via a 'lock file' that exists in the BiglyBT configuration folder named '.azlock'. When BiglyBT starts it attempts to gain exclusive access to this file and locks it while BiglyBT is running. Subsequent launches of BiglyBT will fail to obtain this lock and refuse to start.

If you are getting this error and believe that no other instance of BiglyBT is running (check for processes that may still be running but not visible) then you can attempt to manually remove the lock file.

If you really want to disable this behaviour then there is a startup argument you can supply to do so:

azureus.instance.lock.disable=1

See Command-Line-Options

NAT Problem

In the context of peer-to-peer applications such as BiglyBT the term "NAT Problem" is generally used to descibe the problems caused by other peers not being able to connect to you. While this rarely completely prevents uploading/downloading (you can after all still connect to other peers, unless they themselves have NAT issues, even then "hole punching" can often work around this) it can slow down the process.

Such connectivity issues are caused by such things as firewalls/anti-virus software on your computer, your router that connects to your ISP's network or ISPs themselves. They can also occur when you use a VPN as by default they often don't support incoming connections, or require configuration to do so.

Now you know the what the issue is you need to consult the large amount of resources on the internet regarding this, it doesn't make sense to try and reproduce it all here.

Publishing Files

  • When you publish a torrent, you list a torrent on the tracker's web page; the .torrent file is published on the site without you Hosting it. Users of the file will rely on the torrent's existing tracker.
  • Your tracker must be configured correctly for you to publish (or Host) torrents.

Publish torrents

Right-click on the torrent in BiglyBT and choose Publish.

Comments

The difference between hosting and publishing is this

  • When you host a torrent, peers connect to you -- the tracker -- to obtain information about other peers;
  • When you publish a torrent, you only put the .torrent file that you found elsewhere on your tracker webpage.

Restarting Issues

When BiglyBT has updates to install, it does them when you quit the BiglyBT application (such as through File->Exit, File->Restart, or one of the restart prompts). This process first does various checks to see if you have privileges to change files in BiglyBT's program directory. If you do, it simply copies the new files in, and exits or restarts. If you don't have enough privileges, it will try to elevate your privileges so that you can write. This usually results in asking you for an administrative password.

Restart Errors

  • Access was denied when trying to run 'BiglyBTUpdater.exe'. Make sure you have rights to run this program. When you last restarted or quit BiglyBT, you should have received a UAC (User Account Control) dialog box prompting you to enter an administrative password. If you clicked cancel, or the program did not run properly, you will see the above message. If you never receive this dialog box, try installing BiglyBT from https://www.biglybt.com/
  • 'BiglyBTUpdater.exe' not found in '[BiglyBT application dir]'. For some reason, BiglyBTUpdater was not in your BiglyBT application directory (usually C:\Program Files\BiglyBT). The best remedy for this is to re-install BiglyBT from https://www.biglybt.com/

Secure Remote Password

The Secure Remote Password Protocol is a great mechanism for securing remote access to BiglyBT - it has many desirable characteristics as detailed in the Wikipedia article.

  • It is a 'zero knowledge password proof' - meaning that someone eavesdropping (or capable of doing so) on the messages passing between your remote client and BiglyBT (e.g. your ISP, the BiglyBT proxy servers used to establish connectivity when BiglyBT is fire-walled) can not gain any knowledge about your password.
  • Your password is not stored in any plain-text equivalent within BiglyBT , so even if your local machine is compromised the attacker can not obtain the password without a costly brute-force approach.
  • The protocol also has perfect forward-secrecy. This means that if in the future your password is compromised, this knowledge, along with records from eavesdropping on messages, can't be used to decrypt previous messages.

SWT Cant Auto Update

If you have arrived at this page due to BiglyBT reporting an SWT update problem then you need to fix it! Not doing so will prevent ALL future updates (core and plugins) from occurring.

SWT (the Standard Widget Toolkit) is the graphical library used by BiglyBT and is normally installed into the BiglyBT installation directory. It is created by Eclipse and can be downloaded from their site.

Some packaged distributions however use a shared SWT installation that can't be automatically updated. In this case you will need to obtain a newer packaged distribution from your supplier or alternatively install BiglyBT yourself by downloading it from https://www.biglybt.com/

In order for BiglyBT to function correctly it is important that it runs with the latest version of this library. In particular, if the library is not updated as required, this will prevent the automatic updating of other BiglyBT components such as plugins and future core versions.

If you are a BiglyBT port builder, a distro that includes their own customized SWT, or someone who has built their own BiglyBT, and you wish to continue to receive BiglyBT updates (SWT, Core, and Plugin), you must place your SWT files in the following location:

Unix types & Windows: The BiglyBT program directory

OS X: In BiglyBT.app (or the name of the BiglyBT .app file), under /Contents/Resources/Java/

Torrent Info Order Bad

Torrent files contain metadata describing the download's content. In particular they contain an 'info' section that is used to derive a unique hash that identifies the torrent (the hash itself is not explicitly written into the torrent file). The hash is used by trackers and peers to identify the torrent when communicating. The 'info' section contains a list of entries - according to the torrent specification these entries must be sorted into a specific sequence. This order is important when calculating the hash. Unfortunately, either due to bugs in the torrent creation process, or erroneous post-processing of the torrent, there are malformed torrents in which the entry order is incorrect. This can result in a tracker (for example) calculating one hash for the torrent and a client (BiglyBT for example!) calculating a different one. When this happens the client will attempt to contact the tracker to obtain peers and the tracker will most likely respond with 'unknown torrent'/'unauthorized torrent' (as the hash, from its perspective, doesn't exist).

BiglyBT detects when the order of these elements is incorrect and raise an alert - indeed, this may well be why you're reading this page.

If you get this warning, check the torrent within BiglyBT to see if it is either getting an error from the tracker (you may need to go to the torrent's 'detailed' view and select the 'sources' tab to see the error), or there are no other peers (or very few) available (a sign that the incorrect hash has created a split swarm).

If this is the case you can use the tool that has also been built into BiglyBT to try and fix the torrent.

Go to the Help menu, select 'Advanced' and then the 'Fix corrupted torrent...' option. Browse to the suspect torrent file and select it. If the tool reports that it has fixed the hash, save the corrected torrent, remove the existing (incorrect) torrent from BiglyBT and add the fixed one.

Transport Obfuscation

General info for endusers

Since more and more users are affected by overly aggressive traffic shaping BiglyBT implements this traffic obfuscation feature to allow users to use their bandwidth properly. Since this only works when a shaped peer can connect to any peer in the swarm with the crypto header it is currently not possible to turn this feature off.

This feature does NOT provide anonymity and only very limited confidentiality, i.e. if somebody is in possession of the correct infohash they can obtain your IP/Port combination from public sources like a tracker or from other clients via Peer Exchange and they will be able to connect to you as usual. Only a passive listener can't determine what you're downloading.

When to turn it on

Generally this feature will not help you with any kind of download speed or other problems unless

  • you're affected by P2P/BitTorrent traffic shaping or it is completely blocked
  • you're on torrents with a large fraction of traffic shaped users
  • you want to hide what protocol you're using from passive surveillance (it is not for those who seek anonymity)

Please note: You should make sure that you don't violate any rules (e.g. 'reasonable use' clauses) that are associated with your internet connection such as the contract with your ISP.

So before you turn this feature on you should verify you have Good Settings and no NAT problem.

You might also test with the built-in Mlab speed test in BiglyBT for your effective speeds and also for possible traffic shaping/throttling/blocking activity. Go to Help->Speed test...

The settings

To enable the encryption you have to switch to intermediate user mode and go to Options->Connection->Transport Encryption and enable the Require encrypted transport checkbox.

Enabling this feature instructs to establish connections with the crypto handshake, which will consume more CPU time due to the DH key exchange. If it is disabled BiglyBT will only use the obfuscation header for peers that either require that via PEX/DHT or when a remote peer initiates a crypto connection.

Unix Startup Script

Introduction

From time to time the BiglyBT startup script will need to be changed to handle new features or to fix existing bugs. Since we can't just overwrite your old ./biglybt script (especially if you modified it or installed BiglyBT via a distro), this page is meant to walk you through what you need to do.

Manually updating your start script

If you downloaded and installed BiglyBT from https://www.biglybt.com/, AND you have made no modifications to the startup script, you can safely replace the new one with the old one. When there is a new startup script available, you will be informed via a message box. Simply copy the new one over the old one and re-run BiglyBT.

If you manually edited your BiglyBT script only to set the JAVA_PROGRAM_DIR or PROGRAM_DIR variables, or to set java runtime settings, copy or make note of those lines from your edited script. Then, copy in the new script, edit it and paste those lines back in.

If you've done major changes to the script, the first thing you need to do is find your existing startup script version. Search the script for "SCRIPT_VERSION=". If there are no matches, you have version 0. Read the sections describing the changes between your version and the latest version to get and idea of what you need to change (and why).

Note to distros

Please keep your script up to date. While you may not need all the directory scanning and version verification script code, you may need to know if you have to set new variables or pass in new parameters. (For example, Version 1 adds an entry LD_LIBRARY_PATH so that BiglyBT can display a browser window)

The latest script

https://github.com/BiglySoftware/BiglyBT/blob/master/core/src/com/biglybt/platform/unix/startupScript

User Mode

The Mode setting controls

  • the visibility of options within the configuration view
  • context menu entries
  • sidebar entries
  • column availability in tables etc (although within the table column setup dialog it is possible to view higher-proficiency columns by changing the filter options)
  • some plugins also use the Mode to control the visibility of plugin features

The sections below give an indication of the kinds of features available at each level and are far from exhaustive lists!

Beginner

A good starting point for new users to learning about the client and become familiar with the torrent downloading process.

Intermediate

This level is for users wanting to move beyond basic downloading and explore features such as

  • running a tracker
  • access to 'force start', 'pause' and 'resume' for downloads
  • file allocation mechanisms
  • more automatic tagging of downloads
  • tag specific share ratios and upload management
  • controls for Java memory usage

Advanced

All features are available in this mode, for example

  • advanced network settings such as MTU and TOS
  • non-strict file locking controls
  • proxy settings
  • editing trackers and specifying peers sources when adding torrents

Download BiglyBT

Clone this wiki locally