Optimizing BitComet for Speed

Introduction

optimize-bitcomet-speed-BitComet-Icon
This guide shows how to speed up downloads in the freeware bittorrent client,  BitComet.  All bittorrent programs need to have their incoming and outgoing communications flow freely in order to achieve the highest download speeds and that is essentially what this guide is about.
This guide was put together using information given by the developers of bittorrent programs at their forums, guides and FAQs.  There are no secret tricks, just the real basics of proper set up of a bittorrent program.  Following these simple steps should result in increased download speed.
These are the basic principles of optimizing a bittorrent client, like BitComet, for speed: 
  • Choose a proper port to avoid ISP blocks and conflicts with other programs
  • Forward that port through any software firewall and router to allow incoming connections
  • Adjust internal settings based upon upload capacity of the internet connection to allow room for outgoing communications and to distribute upload efficiently. 
There are some programs that claim to optimize speed in BitComet.  Such programs are a scam and generally contain adware or spyware.  I have seen it said, by the developers of all bittorrent programs, that nothing will increase your download speed in a bittorrent client more than the basic steps set forth herein.
If you are not using BitComet, there are several other specific guides for other clients and a general guide here:
Optimizing Bittorrent Clients

Choosing A Proper Port

To avoid messing up a network connection that is already cleared, first check and see if your communications are blocked or are already clear.  Have BitComet running while testing the port.
Click to Test Your Port  Success-just go to Adjusting Internal Settings.   Error- follow all steps.
Port number in BitComet is at Tools>Options>Connection.
optimize-bitcomet-speed-BitComet-Port-Choice-Location-Image
If you failed the port test above, then you should first set your port to a proper one.  The most important choice here is to avoid using a port within the 6881-6999 range. This was the range originally used by bittorrent programs and is often blocked by Internet Service Providers (ISPs). (If your port was in this range, change and re-test).
The safest choice is a port in the 49160-65534 range as this will avoid ISP blocks and possible conflicts with other applications.  This range used to be 49152-65534, but apparently Vista and Windows 7 grabs some of those ports in between. 
Windows users, if you want to make certain there is no conflict.  Go to the command prompt and type innetstat -a >c:\log.txt  This will check to see which ports are being used and save a log text file at C:\.  Looking at the text file, you will know which ports to avoid.

Forwarding The Port

Introduction
A router will block incoming communications unless an exception is made.  All software firewalls will block incoming communications and most will also block outgoing communications, unless an exception is made.  If you are "firewalled", then other people will not be able to initiate connections with you (see Why Is Being Firewalled Bad).
As there are many firewalls and routers, this guide can not give explanations as to each.  However, there are guides available, on the internet for most firewalls and routers and this guide will link you to them.
Software Firewall - The permission should be set to allow TCP and UDP in both directions. Generally, you will have a choice to set permission for  the BitComet port or for the BitComet program.  Setting permission for the port is the safer choice.
If you are using Windows Firewall, then all you have to do is go to Tools>Options>Connection in BitComet and enable the Add Windows Firewall exception option.
You can check these options for guides:
  • The help file of your software firewall is the best place to look
  •  The ĀµTorrent forum  has some guides posted
  •  PortForward.com Firewall Guides (choose firewall and then BitComet program) also has some guides.
Router - There are two choices here.  The easier way is to use UPnP.  However, this has a possible security issue.  Using UPnP allows any program to create a port mapping through the router without consent of the owner.  Note:  Given the recent findings of Rapid7 regarding security flaws in UPnP, it is generally suggested here that manual forwarding be used.  If you still want to use UPnP, then it would be a good idea totest and see if your device is vulnerable to attack through UPnP.
The other choice is to manually forward the port through the router.  This does not have that security issue, but involves going through several steps to accomplish.  Using the guides linked herein, this should not be that difficult and is the preferred method.
UPnP - The Easy Way -  Enable UPnP  in BitComet and router.
In BitComet  at Tools>Options>Connection
optimize-bitcomet-speed-Bitcomet-Options-Connection-UPnP-Image
Manual Forwarding-The Preferred Way
  1. UPnP must be disabled in BitComet (see Image above). 
  2. Use the Static IP Guide.
  3. Set permission for BitComet port.  This should be set to allow both TCP and UDP communications.
    You can check these options for guides: 
Click Here to Re-Test Port    Success-Proceed to next step.   Error- re-do steps or seek help in Forums.  Have BitComet running while re-testing the port.

Adjusting Internal Settings

Introduction
The  most important setting here is to cap upload in BitComet to 80% of your overall upload capacity.   Setting upload in BitComet is a fine line.  The more upload you give, the more download you will get from other peers. However, if upload is set too high, or to unlimited, then download speeds will suffer as outgoing communications (acknowledgment signals, resend requests etc) will be interfered with. Other adjustments are made here to distribute your upload so that you receive back the most download from other peers. 
First the upload capacity of your internet connection must be determined by taking an online speed test.  Speedtest.net has test locations worldwide and will highlight the one closest to you.
To take the test you must have Flash installed and javascript enabled.
Before taking the speed test, press
Settings
in the upper right of the speedtest.net page.  This will take you to another page.  At the bottom of that page is the "Global Settings" options.  Set "Speed Measurement" to kilobytes and press "Save" .  This will facilitate entry into the calculator below and will lessen confusion as qBittorrent shows speeds in kilobytes.
optimize-bitcomet-speed-speedtest-net-settings-button-location

optimize-bitcomet-speed-speedtest-net-speed-measurement-kilobytes
optimize-bitcomet-speed-speedtest-net-save-settings-button
You should stop all internet activity, including torrents, before taking the test and the test should be taken a few times to obtain a reliable average. Results will now show in KiloBytes. It is the upload rate that is important here.
optimize-bitcomet-speed-speedtest-net-results-kilobytes
Another Way To Test Upload Speed
For most people these test results will be reliable (Comcast users see Note).  However, you may wish to do a double check on real life upload speed.  When you are active on a torrent with a good number of peers and you are using your upload cap, set upload to unlimited and watch for about 5-10 minutes and see where upload settles in at.  Then input that number into the calculator in the kiloBytes section. 
Note:  Some ISPs will show inaccurate results on the speed test.  If your ISP has anything like Comcast'sPowerBoost, then your results will show higher than the actual speed of your connection.  PowerBoost provides a burst of download and upload speeds above your provisioned download and upload speeds for the first 10MB and 5MB respectively.  Since the speed test involves relatively small files, this will skew results upward.
If you have PowerBoost, or something similar, my findings from my own results and those of others is that the actual speeds are 60% of the test result.  So if you get 200kB/s for upload at the test, you should enter 120 in the kB/s box in the calculator.  Using Google ("speed result" x .6) will get the proper number to enter in  the calculator and this actually turns out to be very accurate.  You should end up with the calculator showing a cap that is about half of the test result.
Once you have an average upload speed for your connection go to the online Azureus Upload Settings Calculator. Although designed for Azureus, this calculator will work for all bittorrent clients.
This calculator was created by the8472 a contributor to Vuze (fka Azureus) and part of the team that createdBittorrent Protocol Encryption.
Enter your average upload speed in the appropriate box and the calculator will automatically give the proper figures to adjust various options in your client.
Enter your average upload speed in the appropriate box
optimize-bitcomet-speed-azureus-upload-settings-calculator-kBs-entry-image
Calculator will give results to enter into BitComet
optimize-bitcomet-speed-calculator-bandwidth
optimize-bitcomet-speed-calculator-connections
optimize-bitcomet-speed-calculator-queue
Input Results Into BitComet - Screen shots of locations in BitComet of settings to be adjusted
Upload and Download Limits Tools>Options(Ctrl+P)>Connection
optimize-bitcomet-speed-bandwidth-settings-options-connection
Connections per Torrent and Globally Tools>Options(Ctrl+P)>Advanced
optimize-bitcomet-speed-bitcomet-connections-settings-options-advanced
Max Simultaneous Downloads Tools>Options(Ctrl+P)>Task
optimize-bitcomet-speed-bitcomet-queue-settings-options-task
Media Preview  Also at Tools>Options(Ctrl+P)>Task is the setting for Bitcomet's "Media Preview" option.  This allows preview of audio or video media, which can help stop the waste of bandwidth on fake or poor quality content.  However, this will also slow download speed.  On my installation this was enabled by default and should be disabled for best download speed.  Fake and poor quality torrents can be avoided by reading comments and ratings at torrent search sites.
Tools>Options(Ctrl+P)>Task
optimize-bitcomet-speed-disable-BitComet-Media-Preview-Options-task

Good Torrents

The general rule here is to choose torrents that have a high seed to peer ratio. Seeds have 100% of the content associated with the torrent and are only uploading to peers. Peers also upload to other peers, but are also looking for other peers to upload to themselves and their download capacity is almost always higher than their upload capacity.
This applies even though one swarm has significantly more active users than another. For example, a torrent with 30 seeders and 70 peers (30% seeders) will generally be faster than one with 500 seeders and 2500 peers (20% seeders) as the average upload capacity available to the peers will be higher. (TorrentFreak).