For those not so tech savvy, BitTorrent is a peer to peer file sharing network that allows you to download files that you want for free. The only cost is the time it takes to download and what your ISP (Internet Service Provider) charges for Internet access (Most of them charge a monthly fee for unlimited access, but Cell Phone Internet connections and Wireless Broadband connections might charge per minute or the amount of data you download, so be careful) which usually isn't much.
People requested the Wikipedia article on the original BitTorrent client but it seems to lack enough information to be useful, hence stories like this one have to be written.
Question: But why do I care about BitTorrent?
Answer: Because you can download free stuff with it, and help others download free stuff.
Question: What kind of BitTorrent programs are there?
Answer: You can get BitTorrent clients for most popular operating system formats. BitTorrent is open sourced so there might be other BitTorrent clients based on the original BitTorrent code that might be better.
Question: What Windows BitTorrent clients are there?
Answer: For Windows 98 to Windows Vista there is uTorrent and it is not as bloated as other Windows based torrent programs. It was recently updated to work with Vista.
Another popular Windows BT (BitTorrent) client is Shareaza which is bloated but more user friendly.If you run Windows you can optimize your TCP/IP settings using this TCP/IP tool and see if you can tweak it a little.
Another popular one is BitComet which seems to be slim enough for older Windows systems.
Question: But I use Linux and/or a Mac, what Linux and/or Mac BT programs are out there?
Answer: Azureus is Java based and should run on either Linux, Mac OSX, *BSD Unix, or any OS that supports the Java runtime library.
Limewire was just updated to handle BitTorrent networks and runs on Windows, Linux, Mac, etc.
If you don't like Java, you can use Transmission for Mac OSX and Linux. Much better recommended by the experts on Mac OSX and Linux.
KTorrent is available if you have KDE installed in Linux. Most Linux BitTorrent clients use GTK+ but there is no need to install all GTK+ libraries, just minimal libraries. If you wish to use a command line based BitTorrent client under Linux with Window Managers like Fluxbox, try RTorrent for a change.
The original BitTorrent client was written in Python, but was later based on the uTorrent source code. Yet BitTornado is Python based so it should run on any operating system with a Python interpreter installed.
Question: I just installed my BitTorrent program, how do I download the free stuff?
Answer: You go to some web page that hosts files named *.torrent and download the torrent files with your web browser and then open up the torrent file with your BitTorrent program. It will then start the download, although you might have to follow the instructions it gives you like approving the torrent to download first, and you might have to wait in a queue (sort of like standing in line, first come first served) before the download starts. What actually happens is that your BT client connects to a BT tracker that it gets from the torrent file. The tracker gives you a list of the IP addresses of peers that are sharing the file(s) that you can connect to and download from. Your BT client then downloads fragments of the file(s) from those peers. Each peer group that you are in is called a swarm. In the swarm you trade file fragments with each other instead of downloading from the seeder. The data fragments are traded in random order, so chances are your fragments are different from the other peers. Sometimes there is a quid-pro-quo scheme in trading in which peers trade fragments with you if you trade fragments with them. If you start out a download, you might get choked and not be able to download, but there is an optimistic unchoking method that can send random fragments to your client in hopes of uncovering new peer partners that you can trade fragments with.
Question: What are some BitTorrent web sites?
Answer: Some popular ones are The Pirate Bay, TorrentSpy, TorrentReactor, ISO Hunt, or you can just check out web sites that list the top 35 BitTorrent web sites and find one you like. If you want 100% legal torrents that won't have the possibility to get you sued if you download them, try Linux Tracker, Legal Torrents, or the top ten legal BitTorrent sites for your torrents. The others have a mix of legal and illegal torrents. Just a warning, downloading copyrighted materials might get you sued. The RIAA are going after song sharers and the MPAA are going after movie sharers. If you don't live in the USA, chances are the laws of your country may be different, and you might actually live in a free society that doesn't sue file sharers. :)
First some terms, leechers are people (much like you) trying to download a torrent. Seeders are people who already downloaded a torrent, or started out uploading it, and seed the torrent for the people who want to download it. Many BitTorrent web sites have a seeding policy after you download, but a lot of ignorant people just stop seeding after they download the torrent files and hence get slower downloads. Then whine about it on the Internet to people like me.
So some advice to speed up your BitTorrent downloads:
#1 Cap your upload to about 80% of your bandwidth. Check with your ISP or do a bandwidth test to see what your current speed is currently. If you cap your uploads to a higher rate, you can possibly increase your downloads if you also max out your download speed to 80% as well. If this makes it hard to browse the web and video videos, try adjusting the bandwidth to lower settings until you are able to do other things as well. But you can set a schedule for how much bandwidth you want to use at what times, more on that later.
#2 Open up a hole in your firewall to some random port that your BitTorrent client uses. The ports 6881-6999 are usually used, but pick a different port like 65535 or 32768 or whatever to prevent the ports being blocked by your ISP. Examine the BitTorrent Firewall FAQS. Port forwarding can be so easy that even your grandmother can understand it if you read the right help file on it. If you use Linux, you will have to do port forwarding with IPTables and IPChains to make it work. Make sure that the software and hardware firewall allows that port to get through. If not you will download slowly.
#3 Check the torrent on the web site for the best seed per peer ratio. The more seeds the better. If you see 25 seeds and 25 leechers, it is better than 400 seeds and 800 leechers.
#4 Set your bandwidth to a higher setting in BitTorrent. If you still want to play videos set up a schedule to use max bandwidth when you are asleep or at work and min bandwidth when you are at home streaming your videos from Youtube and iTunes, whatever. So that way when you are away from the computer it downloads at full speed, and when you get home or wake up it will go to min speed. Max speed might be like 90 KBPS and min speed like 10 KBPS, those are for my DSL connection. Your connection may be slower or faster and you'll have to experiment what speeds to set your uploads and downloads to on your client.
#5 Set if Encryption is set, if not turn it on. Encryption can help you download faster if your BT client supports it.
Some people ask:
I run a Windows ME box with Shareaza on a 4 node network that uses DHCP and randomly assigns my ME box an IP like 192.168.0.3 sometimes or 192.168.0.2 other times. Anyway it changes and sometimes I have to keep changing my firewall to get that machine to download torrents correctly.
Answer: It might be better for you to change the hardware firewall to forward the port from 192.168.0.42 or whatever IP the Windows ME machine gets from your IP assignment if you assign that IP to the Mac address of the network adapter on your Windows ME box.
Now refrain from abusing this user, because due to hardware limitations he is forced to use Windows ME. Yet ME isn't the worst version of Windows so far, Vista just beat it. Vista was designed to clobber P2P file sharing abilities. You might want to stick to Windows 2000 or XP for file sharing as a result, or try Linux, *BSD Unix, a Mac, or something else that doesn't limit IP connections in the OS. In this case ME was a smart choice, because the SP2 version of XP limits IP connections, and Vista limits even more. Unless you download the special version of TCP/IP that has been hacked to allow more than the artificial limit Microsoft put on the SP2 XP version. But I won't link to that file, because it is pirated and might contain malware.
Some other members here stated:
Shaping and more advanced flow analysis and SPI technology is being used to slow down file sharing using technology such as Sandvine to throttle or bog down file sharing. ISPs like Comcast are throttling BitTorrent users.
Yes ISPs want to manage their network and not allow users to use too much bandwidth. One trick I did not mention is to set your BitTorrent download and upload bandwidth to as high as it goes so it uses your entire bandwidth to download and upload files. ISPs hate this and one of my old ISPs accused me of having a virus on my system as it was causing "virus-like activity" of data packets being sent back and forth at a high bandwidth. I can recall some friends of mine that were on Comcast getting yelled at by a Network Administrator in email for being a bandwidth hog. Here is a list of Bad ISPs that block BitTorrent.
Some BitTorrent clients use an encryption technology named Message stream encryption/Protocol encryption (MSE/PE) and Protocol header encrypt (PHE) that can encrypt the data being send to get around some of the BitTorrent blocking out there. It makes the BitTorrent client hard to throttle and detect when used properly. Yet recall that even encrypted data packets can be subject to traffic analysis and the ISP will be able to tell if you are downloading or uploading and can use TCP RST packet injections to try and foil your fun.
Yet blocking the seeding of torrents is one of the main reasons why you cannot download quickly enough, and it is something that you cannot control unless you vote with your feet and move accounts to a new ISP that doesn't throttle BitTorrent bandwidth and block seeding. Chances are the blocking of the torrents you are seeding has caused you to get a low download bandwidth.
Not only that but Sandvining could possibly block access to Freenet, Tor, and other networks. This has not yet happened, but some ISPs do try to block file sharing.
Please note that this article was written for the novice to learn how to seed torrents and increase their download speeds. It does not discuss the technical detail on how BitTorrent, TCP/IP, and open verses closed sites having to do anything with ratios. That information can be saved for a more advanced, future article.
Even if you don't follow all of this advice, the most important thing to remember about BitTorrent is to seed torrents. If you don't seed torrents, your downloads will drop to low speeds and the rest of the Internet won't be able to download the torrents. So this article encourages seeding. Just like real seeds grow something, BitTorrent seeds grow files. Please keep that in mind.
Hopefully if you followed the advice of this article, you can make your BitTorrent client work better. Good luck, and happy downloading.