Difference between revisions of "BitTorrentFAQ"

From Theory.org Wiki
Jump to: navigation, search
(Where are these questions/answers from?: even better)
(cleaned up some wikilinks and made it all one section)
Line 1: Line 1:
 
The Wiki requires you log in (use the link in the upper right corner). The change was made in order to slow down the amount of wikispam getting dumped here.
 
The Wiki requires you log in (use the link in the upper right corner). The change was made in order to slow down the amount of wikispam getting dumped here.
  
== A collection of frequently asked questions about [http://bitconjurer.org/BitTorrent/ BitTorrent]. ==
 
 
=== Where are these questions/answers from? ===
 
=== Where are these questions/answers from? ===
  
Line 12: Line 11:
 
* [http://pcpages.com/idolcrash/Tutorial.html IdolCrash's BitTorrent Tutorial].
 
* [http://pcpages.com/idolcrash/Tutorial.html IdolCrash's BitTorrent Tutorial].
  
== General FAQ: ==
+
===Wasn't there a list here of free BitTorrent sites?===
 
 
===Wasn't there a list here of free [[BitTorrent]] sites?===
 
  
 
It.s at the bottom of the page.  See also [http://wiki.etree.org/index.php?page=BitTorrentDownloads wiki.etree.org].
 
It.s at the bottom of the page.  See also [http://wiki.etree.org/index.php?page=BitTorrentDownloads wiki.etree.org].
  
===Is there a bittorrent for [[FreeBSD]], and how can I use it as a background process?===
+
===Is there a bittorrent for FreeBSD, and how can I use it as a background process?===
  
Yes, the [[BitTorrent]] is available as a port (/usr/ports/net-p2p/py-bittorrent).
+
Yes, the BitTorrent is available as a port (/usr/ports/net-p2p/py-bittorrent).
  
===How can I use [[BitTorrent]] from a console or as a background task in Unix/BSD?===
+
===How can I use BitTorrent from a console or as a background task in Unix/BSD?===
  
 
See this convenient [[BASH script to run bittorrent as a daemon ]]. Also look into using the unix command [http://www.guckes.net/screen/ screen].
 
See this convenient [[BASH script to run bittorrent as a daemon ]]. Also look into using the unix command [http://www.guckes.net/screen/ screen].
Line 40: Line 37:
 
-Many of the newer Python clients will grow the downloaded files in a somewhat unique way. When a piece is downloaded that belongs at a location beyond the end of the incomplete file on disk, it is placed at the current end of the file. If later a piece is downloaded that actually belongs in that spot, the data there will be relocated either to the end of the file if it is supposed to go at a place beyond the now current end of the file, or it will displace another piece that isn't where it is supposed to be. Eventually, every piece is displaced by the data that is supposed to fill its space and the file has been completely reconstructed.
 
-Many of the newer Python clients will grow the downloaded files in a somewhat unique way. When a piece is downloaded that belongs at a location beyond the end of the incomplete file on disk, it is placed at the current end of the file. If later a piece is downloaded that actually belongs in that spot, the data there will be relocated either to the end of the file if it is supposed to go at a place beyond the now current end of the file, or it will displace another piece that isn't where it is supposed to be. Eventually, every piece is displaced by the data that is supposed to fill its space and the file has been completely reconstructed.
  
===How can I create .torrent files using only the programs in the [[BitTorrent]] source distribution, without using a GUI?===
+
===How can I create .torrent files using only the programs in the BitTorrent source distribution, without using a GUI?===
  
 
The command line is "btmakemetafile.py blah.iso http://tracker.abc.xyz:6969/announce". Turns out the "/announce" MUST BE PRESENT in order for the resulting .torrent file to work correctly.
 
The command line is "btmakemetafile.py blah.iso http://tracker.abc.xyz:6969/announce". Turns out the "/announce" MUST BE PRESENT in order for the resulting .torrent file to work correctly.
Line 62: Line 59:
 
A: I've seen this happen several times, different torrents/clients/trackers. I've had luck with walking away from the torrent for a day or so, then try again and/or deleting the file and starting over. Simply waiting does not seem to work, I have a torrent right now that I started at 99% a day ago, and it's already downloaded THREE TIMES the total torrent size, and it thinks all the chunks have been bad.
 
A: I've seen this happen several times, different torrents/clients/trackers. I've had luck with walking away from the torrent for a day or so, then try again and/or deleting the file and starting over. Simply waiting does not seem to work, I have a torrent right now that I started at 99% a day ago, and it's already downloaded THREE TIMES the total torrent size, and it thinks all the chunks have been bad.
  
- This usually results from buggy NAT routers that are replacing legitimate data in your packets.  When the packet fails the hash check, because the router scrambled it, [[BitTorrent]] rejects it, and asks for the data again.  See [http://azureus.aelitis.com/wiki/index.php/NinetyNine] for more details.  And be glad [[BitTorrent]] has noticed that your router was corrupting packets -- none of your other software figured it out!
+
- This usually results from buggy NAT routers that are replacing legitimate data in your packets.  When the packet fails the hash check, because the router scrambled it, BitTorrent rejects it, and asks for the data again.  See [http://azureus.aelitis.com/wiki/index.php/NinetyNine] for more details.  And be glad BitTorrent has noticed that your router was corrupting packets -- none of your other software figured it out!
  
 
===Where are the settings/options?===
 
===Where are the settings/options?===
Line 74: Line 71:
 
- Alternate Windows clients such as [http://www.torrentstorm.com Torrentstorm] have improved on the interface and give you both a per-torrent and a global upload limit, as well as a single GUI with progress for all torrents you are downloading/seeding. You can run multiple torrents on UNIX by using btlaunchmany/btlaunchmanycurses - unfortunatly the max''upload''rate is still per torrent and not global :(
 
- Alternate Windows clients such as [http://www.torrentstorm.com Torrentstorm] have improved on the interface and give you both a per-torrent and a global upload limit, as well as a single GUI with progress for all torrents you are downloading/seeding. You can run multiple torrents on UNIX by using btlaunchmany/btlaunchmanycurses - unfortunatly the max''upload''rate is still per torrent and not global :(
  
===How could I detect if [[BitTorrent]] is running on a host using HTTP headers?  what would the HTTP query string look like?===
+
===How could I detect if BitTorrent is running on a host using HTTP headers?  what would the HTTP query string look like?===
  
A: The only thing [[BitTorrent]] uses HTTP for is the tracker.  Use a URL like the "Announce" URL from a .torrent file to see if an HTTP site is running a tracker.
+
A: The only thing BitTorrent uses HTTP for is the tracker.  Use a URL like the "Announce" URL from a .torrent file to see if an HTTP site is running a tracker.
  
 
===BitTorrent lags the hell out of my computer. I've got cable and a 2.6ghz processor. When I get like 3-4 or more Torrents going, my computer and connection are very laggy. What's wrong?===
 
===BitTorrent lags the hell out of my computer. I've got cable and a 2.6ghz processor. When I get like 3-4 or more Torrents going, my computer and connection are very laggy. What's wrong?===
Line 82: Line 79:
 
A: You're probably maxing out your upload capacity, which affects your download speed because
 
A: You're probably maxing out your upload capacity, which affects your download speed because
 
downloads slow down until they see ACKnowledgement packets coming back up.  Cable usually has a very large download capacity, around 2Mbit /sec, but a very limited upload capacity, usually 128 to 256Kbit/sec, and often poorly queued.  Running a bunch of [[BitTorrents]] will rapidly chew up that thin upload capacity causing your network connections to lag (even downloads require your computer to send out some packets).  Limit your upload rate to about 75% your upload capacity to allow for overhead,
 
downloads slow down until they see ACKnowledgement packets coming back up.  Cable usually has a very large download capacity, around 2Mbit /sec, but a very limited upload capacity, usually 128 to 256Kbit/sec, and often poorly queued.  Running a bunch of [[BitTorrents]] will rapidly chew up that thin upload capacity causing your network connections to lag (even downloads require your computer to send out some packets).  Limit your upload rate to about 75% your upload capacity to allow for overhead,
using a client like [[BitTorrent]]-4.x or [http://pingpong-abc.sourceforge.net/ ABC]) that consolidate multiple torrent downloads into a single program, and have a global upload limit.
+
using a client like BitTorrent-4.x or [http://pingpong-abc.sourceforge.net/ ABC]) that consolidate multiple torrent downloads into a single program, and have a global upload limit.
  
 
A: I've fixed this on my computer by turning off the Indexing Service. Go to Control Panel -> Administrative Tools -> Services, and turn off Indexing Service there.
 
A: I've fixed this on my computer by turning off the Indexing Service. Go to Control Panel -> Administrative Tools -> Services, and turn off Indexing Service there.
Line 88: Line 85:
 
=== How can I determine my maximum upload bandwidth, so I can set the max to 75% of that? ===
 
=== How can I determine my maximum upload bandwidth, so I can set the max to 75% of that? ===
  
A: First check the web site of your ISP to find your plan - this will usually show the speed possibilities. If your ISP does not list it, the upload speed will probably be a multiple of 128Kbits/s (16 Kb/s). Examples of plans are 3000k/256k (cable), 4000k/384k (cable), 768k/128k (DSL), 1500k/384k (DSL). Try running [[BitTorrent]] with no upload limit and watch the upload rate, it will probably peak at a little below your maximum once it gets going and you have part of the file to share.
+
A: First check the web site of your ISP to find your plan - this will usually show the speed possibilities. If your ISP does not list it, the upload speed will probably be a multiple of 128Kbits/s (16 Kb/s). Examples of plans are 3000k/256k (cable), 4000k/384k (cable), 768k/128k (DSL), 1500k/384k (DSL). Try running BitTorrent with no upload limit and watch the upload rate, it will probably peak at a little below your maximum once it gets going and you have part of the file to share.
  
 
=== Cable usage: Is it normal to get upload speeds of 2-20 times download speed;  both overall and per peer? I can't believe that total download speed of 1-5 KB/sec is normal;  I'd be much better off using regular FTP! ===
 
=== Cable usage: Is it normal to get upload speeds of 2-20 times download speed;  both overall and per peer? I can't believe that total download speed of 1-5 KB/sec is normal;  I'd be much better off using regular FTP! ===
Line 97: Line 94:
 
* bittorrent can be slow for the following reasons: 1) you start with very little file to offer, and lose out on the "tit for tat" algorithm 2) on torrents with large numbers of downloaders it takes time to find peers with a good connection rate to you 3) only one person has a full copy of the file and they are on a slow connection 4) max''upload''rate is not set and the upload is saturating your modem - 1 and 2 fix themselves if you wait on the torrent for 10-15 mins.
 
* bittorrent can be slow for the following reasons: 1) you start with very little file to offer, and lose out on the "tit for tat" algorithm 2) on torrents with large numbers of downloaders it takes time to find peers with a good connection rate to you 3) only one person has a full copy of the file and they are on a slow connection 4) max''upload''rate is not set and the upload is saturating your modem - 1 and 2 fix themselves if you wait on the torrent for 10-15 mins.
 
* If you're uploading more than you're downloading, be happy for all the other guys who you're providing good download performance to.  Often this happens when a single seed is slow or is swamped, or if the seed is serving up dozens of files and they're all competing.  Your fast upload speed will help everybody else "catch up" with you -- then everyone will slow down to the speed at which the seed can send its unique copy of the data out.
 
* If you're uploading more than you're downloading, be happy for all the other guys who you're providing good download performance to.  Often this happens when a single seed is slow or is swamped, or if the seed is serving up dozens of files and they're all competing.  Your fast upload speed will help everybody else "catch up" with you -- then everyone will slow down to the speed at which the seed can send its unique copy of the data out.
''' Recently discovered & verified - Some ISPs are throttling the traffic on the [[BitTorrent]] default ports. Changing the ports from the default range to a different range (in the 50000's) changed downloading from a trickle (1-2 kB/s) to The Way It Should Be (up to 330 kB/s on a 3000/256 connection). This almost seems unethical, but ISPs have probably taken note that [[BitTorrent]] traffic has become over 50% of Internet traffic by some surveys. [[BitTorrent]] also saturates the 'slow' side of asymmetric connections with it's uploading, which upsets the 'surf and download' usage the cable modem providers are expecting from their typical user.  ''Name names here: what ISP did you verify this about?*
+
''' Recently discovered & verified - Some ISPs are throttling the traffic on the BitTorrent default ports. Changing the ports from the default range to a different range (in the 50000's) changed downloading from a trickle (1-2 kB/s) to The Way It Should Be (up to 330 kB/s on a 3000/256 connection). This almost seems unethical, but ISPs have probably taken note that BitTorrent traffic has become over 50% of Internet traffic by some surveys. BitTorrent also saturates the 'slow' side of asymmetric connections with it's uploading, which upsets the 'surf and download' usage the cable modem providers are expecting from their typical user.  ''Name names here: what ISP did you verify this about?*
 
** ONO in Spain (now Auna) is currently doing this; they even managed, after much pressure, to acknowledge heavy handed [[QoS]] on [[P2P]] traffic.
 
** ONO in Spain (now Auna) is currently doing this; they even managed, after much pressure, to acknowledge heavy handed [[QoS]] on [[P2P]] traffic.
* You can tune [[BitTorrent]] by increasing your upload limit slowly from about 75% of your maximum and finding the point where your download speed begins decreasing instead of increasing (best done on a torrent with many seeders). That peak is the best setting for your upload limit.
+
* You can tune BitTorrent by increasing your upload limit slowly from about 75% of your maximum and finding the point where your download speed begins decreasing instead of increasing (best done on a torrent with many seeders). That peak is the best setting for your upload limit.
 
* Your router may have to foward the ports to a particular IP address.  You can determine your IP address under windows using the "ipconfig" command.  However, your computer may be assigned a NEW IP address whenever it reboots.  If your Torrents suddenly slow down, confirm your computers ip address matches the one your router is fowarding too.  (A typical home router IP address will look like "198.168.100.1", "198.168.100.2", etc.)
 
* Your router may have to foward the ports to a particular IP address.  You can determine your IP address under windows using the "ipconfig" command.  However, your computer may be assigned a NEW IP address whenever it reboots.  If your Torrents suddenly slow down, confirm your computers ip address matches the one your router is fowarding too.  (A typical home router IP address will look like "198.168.100.1", "198.168.100.2", etc.)
  
Line 108: Line 105:
 
=== Since IPs cannot be masked, for the sake of connected up/downloaders, how safe is this model?  Are the users who are either uploading to you or downloading from you the only objects that can know your IP? ===
 
=== Since IPs cannot be masked, for the sake of connected up/downloaders, how safe is this model?  Are the users who are either uploading to you or downloading from you the only objects that can know your IP? ===
  
A: Trackers can report your IP even to people who are not downloading from you. Don't use [[BitTorrent]] if you don't want people to be able to see what you're downloading, since it is very public. In short, the tracker knows all peer IPs, and gives out a random subset of those to anyone who asks. Given several subsequent tracker requests, it is thus likely that a spying party may be able to retreive most or all of the active peer IPs.
+
A: Trackers can report your IP even to people who are not downloading from you. Don't use BitTorrent if you don't want people to be able to see what you're downloading, since it is very public. In short, the tracker knows all peer IPs, and gives out a random subset of those to anyone who asks. Given several subsequent tracker requests, it is thus likely that a spying party may be able to retreive most or all of the active peer IPs.
  
=== Is there work going on to help [[BitTorrent]] be used for streaming media? I'm assuming it's not useful now because it doesn't try to get the beginning of the file first. ===
+
=== Is there work going on to help BitTorrent be used for streaming media? I'm assuming it's not useful now because it doesn't try to get the beginning of the file first. ===
  
A: There already are several efforts underway in other projects, the most prominent being [http://p2p-radio.sourceforge.net/], [http://www.peercast.org/|PeerCast], [http://www.streamerp2p.com [[P2P]-Radio|Streamerp2p], Skype [http://www.skype.com]and Joost [http://www.Joost.com]. They use a similar idea to [[BitTorrent]] in that 'clients' can also become 'servers', but the model is different because the clients generally just help retransmit the feed they are receiving from an upstream server.
+
A: There already are several efforts underway in other projects, the most prominent being [http://p2p-radio.sourceforge.net/], [http://www.peercast.org/|PeerCast], [http://www.streamerp2p.com [[P2P]-Radio|Streamerp2p], Skype [http://www.skype.com]and Joost [http://www.Joost.com]. They use a similar idea to BitTorrent in that 'clients' can also become 'servers', but the model is different because the clients generally just help retransmit the feed they are receiving from an upstream server.
  
- [[BitTorrent]]'s performance depends strongly on each client requesting '''different'' parts of the file from the seed.  This gives each client something to trade with other clients (that they don't already have), making every client valuable to every other.  Unfortunately, streaming has the opposite behavior: everyone wants the first part of the file first, etc.  See Bram Cohen's article [http://bitconjurer.org/BitTorrent/bittorrentecon.pdf Bit Torrent Economics].
+
- BitTorrent's performance depends strongly on each client requesting '''different'' parts of the file from the seed.  This gives each client something to trade with other clients (that they don't already have), making every client valuable to every other.  Unfortunately, streaming has the opposite behavior: everyone wants the first part of the file first, etc.  See Bram Cohen's article [http://bitconjurer.org/BitTorrent/bittorrentecon.pdf Bit Torrent Economics].
  
 
=== Is there any way to limit the bt download rate.  I have a co-located machine on a 100Mbit connection, but with a contracted rate of 2Mbit (I pay extra for large bursts) when I started downloading Mandrake 10 the download rate jumped to 10Mbit (I had to stop the download before it cost me a fortune !) ===
 
=== Is there any way to limit the bt download rate.  I have a co-located machine on a 100Mbit connection, but with a contracted rate of 2Mbit (I pay extra for large bursts) when I started downloading Mandrake 10 the download rate jumped to 10Mbit (I had to stop the download before it cost me a fortune !) ===
  
A: [[BitTorrent]] clients play a tit-for-tat game with transfer rates; if you tell your client to limit its maximum upload rate, that will make its peers limit the rate they download to you at.  If you start off with a very conservative upload rate and watch your connection's behavior, you should get a feel for a safe upload rate limit.  This will work unless there are a lot of seeds, which download to anyone despite not needing any uploads.
+
A: BitTorrent clients play a tit-for-tat game with transfer rates; if you tell your client to limit its maximum upload rate, that will make its peers limit the rate they download to you at.  If you start off with a very conservative upload rate and watch your connection's behavior, you should get a feel for a safe upload rate limit.  This will work unless there are a lot of seeds, which download to anyone despite not needing any uploads.
  
 
A2: [http://www.dessent.net/btfaq/ Brian Dessents' [[BitTorrent] FAQ]] lists ways to limit the download speed. Essentially you need to use a firewall, traffic shaper or some other utility to limit the download speed.
 
A2: [http://www.dessent.net/btfaq/ Brian Dessents' [[BitTorrent] FAQ]] lists ways to limit the download speed. Essentially you need to use a firewall, traffic shaper or some other utility to limit the download speed.
Line 134: Line 131:
 
===Is there a way... if the download is a movie... to cut the file... I really don't care to watch the last 2 minutes of the movie (the credits and so on). So the question is; Is there a way to cut the file at 97.6%, and watch it?===
 
===Is there a way... if the download is a movie... to cut the file... I really don't care to watch the last 2 minutes of the movie (the credits and so on). So the question is; Is there a way to cut the file at 97.6%, and watch it?===
  
A: Note that [[BitTorrent]] divides a download into many pieces, and requests those pieces in any order, so the last 2.4% you download probably isn't from the end. Also important is that many types of video files just won't play if the end of the file is missing or truncated - the player sees them as damaged.
+
A: Note that BitTorrent divides a download into many pieces, and requests those pieces in any order, so the last 2.4% you download probably isn't from the end. Also important is that many types of video files just won't play if the end of the file is missing or truncated - the player sees them as damaged.
  
  
Line 197: Line 194:
 
There are also [[BitTorrentSearchEngines]].
 
There are also [[BitTorrentSearchEngines]].
  
For [[BitTorrent]] News
+
For BitTorrent News
 
* English:
 
* English:
 
** [http://www.yatorrent.com.ar yaTorrent]
 
** [http://www.yatorrent.com.ar yaTorrent]

Revision as of 21:47, 31 January 2008

The Wiki requires you log in (use the link in the upper right corner). The change was made in order to slow down the amount of wikispam getting dumped here.

Contents

Where are these questions/answers from?

Originally some of the Q&A was collected from the old BitTorrent mailing list (which died in 2005) and some started here. However, the vast majority of the questions have been posed and answered directly on this wiki. Continue to do so! :)

NOTE: No one is in charge of the wiki content. The BitTorrent community is creating this FAQ. Big thanks to everyone in the community!!

Other FAQs and tutorials to check out:

Wasn't there a list here of free BitTorrent sites?

It.s at the bottom of the page. See also wiki.etree.org.

Is there a bittorrent for FreeBSD, and how can I use it as a background process?

Yes, the BitTorrent is available as a port (/usr/ports/net-p2p/py-bittorrent).

How can I use BitTorrent from a console or as a background task in Unix/BSD?

See this convenient BASH script to run bittorrent as a daemon . Also look into using the unix command screen.

If I have started a download with BT 3.2, can I upgrade to 3.3 and finish the file this way or will this corrupt things?

-BT3.3 allocates the diskspace for files as they are downloaded whereas BT3.2 allocated the entire file first and then began the download. I am sure that Bram took this fact into account, and that BT3.3 still works with old BT3.2. Make a backup copy though, it can't hurt.

-My guess? Copy the old file to somewhere safe, and try it!

-I use BT3.3 and although files do grow to full size, they still do so before they are completely done downloading. I have an .ogm download going now with 12 eps. 4 of them are at full size now BUT they have big gaps in the middle of them. I tried to watch ep1 when it was at full size, thinking it was actually DONE, and found that it was, in fact, NOT. Now, 12 hours later, I make another copy and I can actually get some video out of the file. CRC still doesn't match, though.

-For the above problem I would guess the problem is that BT get's a block in the end of the file, and in order to write it at the correct place it have to allocate the whole file even before it is completly finished, that would leave a big gap with none data in the middle of the file.

-I same for me, I have five chapter in ogm media format and BT3.3, the first and second chapters are done but the video is totally broken. I pray for this download finish sucefully. ;-)

-Many of the newer Python clients will grow the downloaded files in a somewhat unique way. When a piece is downloaded that belongs at a location beyond the end of the incomplete file on disk, it is placed at the current end of the file. If later a piece is downloaded that actually belongs in that spot, the data there will be relocated either to the end of the file if it is supposed to go at a place beyond the now current end of the file, or it will displace another piece that isn't where it is supposed to be. Eventually, every piece is displaced by the data that is supposed to fill its space and the file has been completely reconstructed.

How can I create .torrent files using only the programs in the BitTorrent source distribution, without using a GUI?

The command line is "btmakemetafile.py blah.iso http://tracker.abc.xyz:6969/announce". Turns out the "/announce" MUST BE PRESENT in order for the resulting .torrent file to work correctly.

I want to seed a few files but btlaunchmanycurses opens a separate port for each file - is there a client that handles multiple files via just a single port?

A: Bitorrent-4.x uses only a single port. Upgrade to it. It has a much nicer user interface, too.

-There is a modified client version called ABC, you can get it here http://pingpong-abc.sourceforge.net/

-There's also a Win32/C++ client called BitComet which uses a single port.

-Azureus (java & gui) will use a single port as well [[ http://azureus.sourceforge.net/%7CAzureus ]] ([[ http://azureus.jp/%7CAzurues Japan ]]).

I download a file using bittorrent and it grows and grows. Now it is 10% bigger than it should be and it is still downloading. Is this behavior normal?

A : Yes it is.

Download stuck at 99.9%

A: I've seen this happen several times, different torrents/clients/trackers. I've had luck with walking away from the torrent for a day or so, then try again and/or deleting the file and starting over. Simply waiting does not seem to work, I have a torrent right now that I started at 99% a day ago, and it's already downloaded THREE TIMES the total torrent size, and it thinks all the chunks have been bad.

- This usually results from buggy NAT routers that are replacing legitimate data in your packets. When the packet fails the hash check, because the router scrambled it, BitTorrent rejects it, and asks for the data again. See [1] for more details. And be glad BitTorrent has noticed that your router was corrupting packets -- none of your other software figured it out!

Where are the settings/options?

A: For Windows users: Go to run and type "c:program files�ittorrent�tdownloadgui" - this will give you a list of commands.

I want to leave running multiple torrents that I've already downloaded so others can download. However, I just want to run one copy of bittorrent so I can use a single --maxuploadrate command to cap the max amount of bandwidth used. Is there a way to do this?

A: [[BitTorrent-4.x]] does this without trouble. It has a slider at the top of the window that controls the total upload rate, too.

- Alternate Windows clients such as Torrentstorm have improved on the interface and give you both a per-torrent and a global upload limit, as well as a single GUI with progress for all torrents you are downloading/seeding. You can run multiple torrents on UNIX by using btlaunchmany/btlaunchmanycurses - unfortunatly the maxuploadrate is still per torrent and not global :(

How could I detect if BitTorrent is running on a host using HTTP headers? what would the HTTP query string look like?

A: The only thing BitTorrent uses HTTP for is the tracker. Use a URL like the "Announce" URL from a .torrent file to see if an HTTP site is running a tracker.

BitTorrent lags the hell out of my computer. I've got cable and a 2.6ghz processor. When I get like 3-4 or more Torrents going, my computer and connection are very laggy. What's wrong?

A: You're probably maxing out your upload capacity, which affects your download speed because downloads slow down until they see ACKnowledgement packets coming back up. Cable usually has a very large download capacity, around 2Mbit /sec, but a very limited upload capacity, usually 128 to 256Kbit/sec, and often poorly queued. Running a bunch of BitTorrents will rapidly chew up that thin upload capacity causing your network connections to lag (even downloads require your computer to send out some packets). Limit your upload rate to about 75% your upload capacity to allow for overhead, using a client like BitTorrent-4.x or ABC) that consolidate multiple torrent downloads into a single program, and have a global upload limit.

A: I've fixed this on my computer by turning off the Indexing Service. Go to Control Panel -> Administrative Tools -> Services, and turn off Indexing Service there.

How can I determine my maximum upload bandwidth, so I can set the max to 75% of that?

A: First check the web site of your ISP to find your plan - this will usually show the speed possibilities. If your ISP does not list it, the upload speed will probably be a multiple of 128Kbits/s (16 Kb/s). Examples of plans are 3000k/256k (cable), 4000k/384k (cable), 768k/128k (DSL), 1500k/384k (DSL). Try running BitTorrent with no upload limit and watch the upload rate, it will probably peak at a little below your maximum once it gets going and you have part of the file to share.

Cable usage: Is it normal to get upload speeds of 2-20 times download speed; both overall and per peer? I can't believe that total download speed of 1-5 KB/sec is normal; I'd be much better off using regular FTP!

A: A few possible reasons:

  • Go ahead and use FTP if you can find someone offering the file for FTP.
  • upload/download rates vary depending how many people are on the torrent, and how much of the torrent they have downloaded. If many people are on a torrent it can take some time before bittorrent finds "local" peers with a good transfer rate.
  • bittorrent can be slow for the following reasons: 1) you start with very little file to offer, and lose out on the "tit for tat" algorithm 2) on torrents with large numbers of downloaders it takes time to find peers with a good connection rate to you 3) only one person has a full copy of the file and they are on a slow connection 4) maxuploadrate is not set and the upload is saturating your modem - 1 and 2 fix themselves if you wait on the torrent for 10-15 mins.
  • If you're uploading more than you're downloading, be happy for all the other guys who you're providing good download performance to. Often this happens when a single seed is slow or is swamped, or if the seed is serving up dozens of files and they're all competing. Your fast upload speed will help everybody else "catch up" with you -- then everyone will slow down to the speed at which the seed can send its unique copy of the data out.

' Recently discovered & verified - Some ISPs are throttling the traffic on the BitTorrent default ports. Changing the ports from the default range to a different range (in the 50000's) changed downloading from a trickle (1-2 kB/s) to The Way It Should Be (up to 330 kB/s on a 3000/256 connection). This almost seems unethical, but ISPs have probably taken note that BitTorrent traffic has become over 50% of Internet traffic by some surveys. BitTorrent also saturates the 'slow' side of asymmetric connections with it's uploading, which upsets the 'surf and download' usage the cable modem providers are expecting from their typical user. Name names here: what ISP did you verify this about?*

    • ONO in Spain (now Auna) is currently doing this; they even managed, after much pressure, to acknowledge heavy handed QoS on P2P traffic.
  • You can tune BitTorrent by increasing your upload limit slowly from about 75% of your maximum and finding the point where your download speed begins decreasing instead of increasing (best done on a torrent with many seeders). That peak is the best setting for your upload limit.
  • Your router may have to foward the ports to a particular IP address. You can determine your IP address under windows using the "ipconfig" command. However, your computer may be assigned a NEW IP address whenever it reboots. If your Torrents suddenly slow down, confirm your computers ip address matches the one your router is fowarding too. (A typical home router IP address will look like "198.168.100.1", "198.168.100.2", etc.)

Is there any way to cloak your IP address while using the torrent program?

A: No it's impossible, because clients connected to the torrent need to know the IP address of other peer clients to share and download parts of the torrent from.

Since IPs cannot be masked, for the sake of connected up/downloaders, how safe is this model? Are the users who are either uploading to you or downloading from you the only objects that can know your IP?

A: Trackers can report your IP even to people who are not downloading from you. Don't use BitTorrent if you don't want people to be able to see what you're downloading, since it is very public. In short, the tracker knows all peer IPs, and gives out a random subset of those to anyone who asks. Given several subsequent tracker requests, it is thus likely that a spying party may be able to retreive most or all of the active peer IPs.

Is there work going on to help BitTorrent be used for streaming media? I'm assuming it's not useful now because it doesn't try to get the beginning of the file first.

A: There already are several efforts underway in other projects, the most prominent being [2], [3], [[P2P-Radio|Streamerp2p], Skype [4]and Joost [5]. They use a similar idea to BitTorrent in that 'clients' can also become 'servers', but the model is different because the clients generally just help retransmit the feed they are receiving from an upstream server.

- BitTorrent's performance depends strongly on each client requesting 'different parts of the file from the seed. This gives each client something to trade with other clients (that they don't already have), making every client valuable to every other. Unfortunately, streaming has the opposite behavior: everyone wants the first part of the file first, etc. See Bram Cohen's article Bit Torrent Economics.

Is there any way to limit the bt download rate. I have a co-located machine on a 100Mbit connection, but with a contracted rate of 2Mbit (I pay extra for large bursts) when I started downloading Mandrake 10 the download rate jumped to 10Mbit (I had to stop the download before it cost me a fortune !)

A: BitTorrent clients play a tit-for-tat game with transfer rates; if you tell your client to limit its maximum upload rate, that will make its peers limit the rate they download to you at. If you start off with a very conservative upload rate and watch your connection's behavior, you should get a feel for a safe upload rate limit. This will work unless there are a lot of seeds, which download to anyone despite not needing any uploads.

A2: Brian Dessents' [[BitTorrent FAQ]] lists ways to limit the download speed. Essentially you need to use a firewall, traffic shaper or some other utility to limit the download speed.

If a .torrent contains more than one file, is there a way to download only selected files?

A: Yes, I saw it in BitTornado (maybe some other clients do it). Start your download and go to "details". Right click a file and select "download never" to exclude it. Tested with Linux but I hope BitTornado works the same way on any OS.

A: Azureus (java/gui client: http://azureus.sourceforge.net/) has the exact same feature. When first importing a .torrent file, you'll be given a list of files within that torrent. Simply uncheck the ones you do not wish to download.

A: BitComet also has this feature, just uncheck the box next to the files you don't want to download when the "Properties" box shows up when starting the torrent.

Is there a way... if the download is a movie... to cut the file... I really don't care to watch the last 2 minutes of the movie (the credits and so on). So the question is; Is there a way to cut the file at 97.6%, and watch it?

A: Note that BitTorrent divides a download into many pieces, and requests those pieces in any order, so the last 2.4% you download probably isn't from the end. Also important is that many types of video files just won't play if the end of the file is missing or truncated - the player sees them as damaged.


Why did all of the big search sites go down around June 1, 2003? Did hackers/virus/worm take down these search sites? Was it Aliens? Slashdot... again?

A: Aliens.

Torrent Sites

A Few Sites:

See also wiki.etree.org.

There are also BitTorrentSearchEngines.

For BitTorrent News