Home

A free C++ BitTorrent/HTTP/FTP Download Client

bitcomet_client_issues_and_possible_solutions
 

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
bitcomet_client_issues_and_possible_solutions [2011/06/14 07:56]
greywizard [Tasks have disappeared/deleted tasks reappeared in my tasklist after a BitComet restart. How can I fix this?]
bitcomet_client_issues_and_possible_solutions [2015/08/15 04:21] (current)
Line 179: Line 179:
 You can and must impose an upper limit on the global upload bandwidth that BitComet is allowed to use. The limit must be large enough to permit good upload speed for each task you are running, yet small enough that other applications have enough bandwidth to get their jobs done. You can and must impose an upper limit on the global upload bandwidth that BitComet is allowed to use. The limit must be large enough to permit good upload speed for each task you are running, yet small enough that other applications have enough bandwidth to get their jobs done.
  
-Practically, this means you must find out what your actual upstream bandwidth is, and then set your Global Maximum Upload Bandwidth in BC to about 80% of that maximum. (Don't rely on what your internet service provider told you your speed was: test it, with nothing else using any part of it, at [[http://www.speedtest.net/|speedtest.net]] or a service fairly nearby, and do it at different times of day and night on different days, to get a reliable average value.)+Practically, this means you must find out what your actual upstream bandwidth is, and then set your Global Maximum Upload Bandwidth in BC to about 80% of that maximum. (Don't rely on what your internet service provider told you your speed was: test it, with nothing else using any part of it, at [[http://www.speedtest.net/|speedtest.net]] or a service fairly nearby, and do it at different times of day and night on different days, to get a reliable average value.) You will need to make sure you transform K**b** in K**B** (a division by 8 will pretty much cover it), then multiply it with 0.8 and input the result on the [[bitcomet_options#connection|BitComet Options --> Connection]] page, in the "//Global Max Upload Rate//" box.
  
 When you aren't using any other applications, you still **can't** leave your GMUB unlimited, because BitComet will even interfere with itself, dropping packets in the same way. You can increase the rate, but remember to decrease it again when you want to do other things.\\ <html><br /></html>    When you aren't using any other applications, you still **can't** leave your GMUB unlimited, because BitComet will even interfere with itself, dropping packets in the same way. You can increase the rate, but remember to decrease it again when you want to do other things.\\ <html><br /></html>   
Line 207: Line 207:
 The main issue here, is related to a technology employed by your router/modem, called NAT (Network Address Translation). The main issue here, is related to a technology employed by your router/modem, called NAT (Network Address Translation).
 In short, what this does for you is allowing you to use multiple devices in your personal home LAN (Local Area Network), while having/paying only for one single public IP address to connect to the global network known as the Internet.\\  In short, what this does for you is allowing you to use multiple devices in your personal home LAN (Local Area Network), while having/paying only for one single public IP address to connect to the global network known as the Internet.\\ 
-NAT does this by translating the private IP addresses used by the devices in your LAN (PCs, servers, etc.) to the public IP address (which your ISP assigns to you), for all the outgoing traffic of your network, and vice-versa, translating the public IP to the private IP addresses each device on your LAN uses, for all incoming traffic going to any of your local devices.+NAT does this by translating the private IP addresses used by the devices in your LAN (PCs, servers, etc.) to the public IP address (which your ISP assigns to you), for all the outgoing traffic of your network, and vice-verse, translating the public IP to the private IP addresses each device on your LAN uses, for all incoming traffic going to any of your local devices.
  
 It doesn't matter if you have only one PC connected to the router, it doesn't care about that. As long as NAT is enabled it will do it's job and translate addresses. It doesn't matter if you have only one PC connected to the router, it doesn't care about that. As long as NAT is enabled it will do it's job and translate addresses.
Line 213: Line 213:
 The NAT process does that by using a //NAT session table// which keeps tabs of which port is mapped to which local IP address, so that it may forward incoming reply traffic to the proper local device on the LAN. The NAT process does that by using a //NAT session table// which keeps tabs of which port is mapped to which local IP address, so that it may forward incoming reply traffic to the proper local device on the LAN.
  
-As you may have guessed, this NAT table is hosted into the router's memory and as we all know, memory is a limited and expensive resource. Depending on the brand and the model of your router/modem, your equipment will be able to hold various maximum numbers of simultaneous entries depending on the amount of memory alloted to it.+As you may have guessed, this NAT table is hosted into the router's memory and as we all know, memory is a limited and expensive resource. Depending on the brand and the model of your router/modem, your equipment will be able to hold various maximum numbers of simultaneous entries depending on the amount of memory allotted to it.
  
 While better equipments have no problem in handling the great number of connections initiated by a BitTorrent client, others do. This isn't to say that the respective device is a bad one per se (it will probably work OK in most other situations), it's just not fit for handling BitTorrent traffic. While better equipments have no problem in handling the great number of connections initiated by a BitTorrent client, others do. This isn't to say that the respective device is a bad one per se (it will probably work OK in most other situations), it's just not fit for handling BitTorrent traffic.
Line 232: Line 232:
    - Next, set the //network.max_connections// option to a conservative value such as 200, for starters. This will limit the number of simultaneous TCP connections maintained by BitComet, to whatever value you set for this option, and in turn reduce the number of entries which BitComet may place in the NAT table, by the use of TCP connections.    - Next, set the //network.max_connections// option to a conservative value such as 200, for starters. This will limit the number of simultaneous TCP connections maintained by BitComet, to whatever value you set for this option, and in turn reduce the number of entries which BitComet may place in the NAT table, by the use of TCP connections.
   - (Optional) If you're using Windows XP, you may also want to set the number of maximum embryonic connections allowed by Windows to something a little higher than the default 10 (by using the [[bitcomet_options#tcp_ip_limit|TCP/IP Limit]] option in BitComet to set it at something like 20) and then make sure that the //network.max_connecting_connections// option is set to something lower than that (the default 10 should be OK).   - (Optional) If you're using Windows XP, you may also want to set the number of maximum embryonic connections allowed by Windows to something a little higher than the default 10 (by using the [[bitcomet_options#tcp_ip_limit|TCP/IP Limit]] option in BitComet to set it at something like 20) and then make sure that the //network.max_connecting_connections// option is set to something lower than that (the default 10 should be OK).
-  - If after doing all the above your problem still isn't solved, then it means that the culprit here is probably the UDP transport protocol. BitComet may communicate with very large number of different IPs using UDP, on account of DHT messages which use UDP as a transport protocol as well as Torrent Exchange. Each UDP datagram outgoing towards a different IP address will create a new entry in the NAT table of your router, so it can easily become cluttered simply on account of UDP traffic.\\ +  - Another thing you might want to watch out for is the number of simultaneous running tasks BitComet has, since incoming TCP connections and UDP traffic for each additional task cannot be stopped before reaching the router so each different IP source will create a new entry in the NAT table. Starting out with 1-2 running tasks in total (both downloading and seeding) might be a good place to begin, along with all the above measures if you encounter this type of issue. 
 +  - If after doing all the above your problem still isn't solved, then it means that the culprit here is probably the UDP transport protocol. BitComet may communicate with very large number of different IPs using UDP, on account of DHT and Torrent Exchange messages which use UDP as a transport protocol. Each UDP datagram outgoing towards a different IP address will create a new entry in the NAT table of your router as well as each new IP address sending a datagram towards you, so your router's NAT table can easily become cluttered simply on account of UDP traffic even though the traffic volume in itself may not be very high, necessarily.\\ 
 An option in BitComet, that you can use to contain this effect, is //network.max_udp_pkt_per_sec// which will limit the maximum number of UDP datagrams which BitComet may send per second. Setting this value to a conservative value, such as 5 will limit the max number of new entries which BitComet can create through UDP, in the NAT table of your router, to 300 new entries per minute. An option in BitComet, that you can use to contain this effect, is //network.max_udp_pkt_per_sec// which will limit the maximum number of UDP datagrams which BitComet may send per second. Setting this value to a conservative value, such as 5 will limit the max number of new entries which BitComet can create through UDP, in the NAT table of your router, to 300 new entries per minute.
-Summed with the 200 you set for TCP, this will give a max number of 500 entries BitComet can place any minute in the NAT table.+Summed with the 200 you set for TCP, this will give a max number of 500 entries BitComet can place any minute in the NAT table, on behalf of outgoing traffic.
  
 If the above settings work for you, then you should start to gradually increase the values until you find some values which make the issue re-appear and then stay below that threshold. For instance, you may try to first increase the number of TCP connections, by a increment of 50 or even lower and then test your router for a while and see how it works. Do this until you get to a value of 500-800 and if nothing goes wrong stop there.\\ If the above settings work for you, then you should start to gradually increase the values until you find some values which make the issue re-appear and then stay below that threshold. For instance, you may try to first increase the number of TCP connections, by a increment of 50 or even lower and then test your router for a while and see how it works. Do this until you get to a value of 500-800 and if nothing goes wrong stop there.\\
Line 366: Line 367:
  
 If it's not then recheck the %appdata% permissions -- often you need to check all the permissions for the entire tree and every node in it. The account you usually run BitComet under - normally your own - should own the directory and files, and have full control of both.  If it's not then recheck the %appdata% permissions -- often you need to check all the permissions for the entire tree and every node in it. The account you usually run BitComet under - normally your own - should own the directory and files, and have full control of both. 
 +
 +==== How can I transfer all my tasks to another computer? ====
 +
 +If you wish to move all your tasks (active and/or stopped) to a new computer and hence to a new installation of BitComet you will have to follow a few easy steps:
 +    - Copy the current BitComet download folder (the folder which holds the files for each task) onto the new computer and make sure that it resides in a partition which has the same letter as the previous one (i.e. if your current download folder is //D:\BitComet Downloads// then make sure you move BitComet Downloads on the D:\ partition of the new computer.\\ If you don't have a partition with the same letter on the new computer then you'll have to move all the tasks from within BitComet (select the tasks, right-click and choose //File Move To//) into a folder on the current computer whose path **can** be replicated on the new one and you'll have to do this **prior** to moving the files to the new computer or exporting the tasklist. (E.g. if your download folder on the current computer is //D:\BC_Downloads// but you'll only have a //C:\// partition on the new computer (bad idea by the way) then you'll have to move all your tasks into //C:\BC_Downloads// on the **current** computer **prior** to moving the folder on the new computer. This ensures that each task points toward the right path, not towards an inexistent one, on the new PC.
 +  - Go to the //File// menu and choose //Import and Export Download List...//. In the lower section named "Export" click on the ellipsis button and choose a filename and location for the backup file. Make sure that the "Export all tasks" radio button is selected before hitting the //Export// button. This will create a backup copy of the tasklist and BitComet settings into a backup file.
 +  - Select all the tasks in the Task List of BitComet and then right click and choose //Save Torrent As// and save all the .torrent files into a location of your choice.
 +  - Make sure that in your new installation of BitComet the variable //system.use_app_data// is set to TRUE into //Options-->Advanced//.
 +  - Open a new Explorer window and type in the address bar //%appdata%\BitComet\torrents// then hit Enter. You should find yourself into the //\torrents// folder of the new BitComet installation. Copy in here all the .torrent files that you saved in Step 3.
 +  - Go into the //File-->Import and Export Download List...// and into the upper section called Import choose the backup file which you saved in Step 2. After BitComet finishes importing the list, you should be done and have an identical completely functional list of tasks as on the old computer.
  
 ---- ----
 -[[understanding_bitcomet|Previous Page]] -[[configuration_and_user_settings|Next Page]]\\ -[[understanding_bitcomet|Previous Page]] -[[configuration_and_user_settings|Next Page]]\\
 -[[start|Main Index]] -[[start|Main Index]]
 
bitcomet_client_issues_and_possible_solutions.1308038197.txt.gz · Last modified: 2015/08/15 04:21 (external edit)
[unknown button type]
 
Recent changes RSS feed Driven by DokuWiki