Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Standard view
Full view
of .
Look up keyword
Like this
0 of .
Results for:
No results containing your search query
P. 1
Optimize BitTorrent to outwit traffic shaping ISPs

Optimize BitTorrent to outwit traffic shaping ISPs



|Views: 29,341 |Likes:
Published by Kunal Bhatt
BitTorrent is being blocked by lot of ISPs by using tools to control usage of bandwidth. Here are some tips to overcome some of these restrictions ;)
BitTorrent is being blocked by lot of ISPs by using tools to control usage of bandwidth. Here are some tips to overcome some of these restrictions ;)

More info:

Published by: Kunal Bhatt on Sep 07, 2007
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less





These days, nothing worries an internet service provider more than peer−to−peer file trading.Depending on where you live, P2P can account for between 50 and 75% of broadband internettraffic. We mostly have the popularity of BitTorrent to thank for this crazy amount of data going toand fro.This amount of traffic can raise the ISPs daily costs of delivering service, cause congestion either inyour neighborhood or on the ISP's network, and force the ISP to buy increased bandwidth capacity.But if you've been paying close attention to your BitTorrent transfers lately (or if you've simply beenreading the news) you'll notice that ISPs have begun to take drastic measures to slow that flood ofdata currently clogging up their pipes.Even though many of them deny it, most ISPs actively engage in traffic shaping, bandwidththrottling, connection denial or some such tactic to keep the amount of bandwidth consumed by hightraffic applications on their networks to a minimum. While this does often ensure better performancefor everyone in the neighborhood, it can mean painfully slow transfer speeds for those dabbling inP2P −− legit or not.While there are valid arguments for and against shaping, we're not here to debate. We just want thefastest BitTorrent transfers possible.
Methods of Fooling ISPs
So how to get around an ISP that's throttling your BitTorrent traffic? You can try encrypting or yourtraffic, changing the default port number, changing the way the protocol behaves, reducing theamount of one−way traffic, or hiding your traffic within an encrypted tunnel.Of course, different ISPs are employing different methods of control. None of these methods areguaranteed to work. But each one is known to work for some, and they are certainly worth a try.
How To Encrypt to Your BitTorrent Transfers:
The RC4 encryption offered by many popular BitTorrent clients today will obfuscate not only theheader but the entire stream, which makes it considerably more difficult for an ISP to detect thatyou're using BitTorrent. Even if your ISP does not force you to enable encryption, you may beconnecting to peers with ISPs that do.Encryption began appearing on clients in late 2005. By the end of 2006, most actively−developedclients were updated with encryption. While not all torrent clients in a swarm will support encryption,most of them will. As a result, this small percentage of non−encryption capable peers may be areason not to
encryption on a full−time basis, but there is no reason not to
encryptionthat allows the falling back to a non−encrypted connection when needed.If your favoriteclient isnot listed below, check your documentation.
Azureus (which now calls its official client Vuze) is written in Java and therefore cross−platform. Toturn on encryption, head to the
menu. Select
, then
, then
Transport Encryption 
. Check the "Require encrypted transport" box and select
in the "Minimumencryption" drop−down menu.Azureus/Vuze also offers an "Allow non−encrypted outgoing connections if encrypted connectionattempt fails" option, which means you'll still be able to hop on torrents that don't have anyencrypted seeders.
µTorrent (and now BitTorrent which is based on µTorrent) is a Windows−only client. In µTorrent,open up the
panel and select the
tab. Select
Protocol encryption 
andthen choose between "enabled" and "forced." µTorrent's "Enabled" option mirrors Azureus' option toallow unencrypted connections when no encrypted clients exist. It will give you more connections,but it won't be as effective at defeating traffic shapers.µTorrent/BitTorrent also offers a option to 'Allow legacy incoming connections' which letsnon−encrypted clients connect to you. This improves compatibility between clients but again, makesyour traffic more vulnerable to shapers.
BitComet is another popular Windows Client (98/Me/2000/XP). To turn on encryption in BitComet,head to the
menu and choose
. Then go to
andselect "Protocol encryption." There are options for "auto detect" and "always."As with the others, "auto detect" will connect to more peers, but it won't hide traffic as well. You'llneed to play with the settings in your program to see if it has any affect on your download/upload speeds.Other clients that support encryption include KTorrent (Linux), rTorrent (Linux, Mac) and BitTornado(Windows).
How To Change Your BitTorrent Port Number:
The default port for BitTorrent transfers is port 6881, with some clients using different ports withinthe range of 6881−6999. As a result of ISP interference, all clients allow you to change the portnumber (or port range, sometimes) used for BitTorrent transfers. The setting is in the Options orPreferences for your client, or canbe set using a command−line parameter.Whenever you change your port, you need to adjust your router to allow incoming connections. Anexcellent service at http://www.portforward.com/ can guide you through the entire process oflocating the current port being used (which allows you to change it), and then configuring yourrouter to match.
How To Change the Way the BitTorrent Protocol Behaves:
The BitTorrent protocol has a distinct handshake. To control uploading by seeders, ISPs havelearned to look for this handshake. The recent releases of both µTorrent and Azureus/Vuze includea "Lazy Bitfield" feature to hide seeders from ISPs. When Lazy Bitfield is enabled, the handshake ischanged to make a BitTorrent seeder initially appear to be a non−seeding peer (sometimes called aleecher). This is done by sending a bitfield indicating missing pieces. Then, once the handshake isdone, the client notifiesits peer that it now has the pieces that were originally indicated as missing.
Azureus (which now calls its official client Vuze) is written in Java and therefore cross−platform. Toturn on encryption, head to the
menu. Select
, then
. Enable Lazy−Bitfieldhere.
Lazy Bitfield is controlled in the Advanced section Preferences: peer.lazy_bitfield.
How To Reduce the Amount of One−Way transfers:
Most downloaders become seeders when they have 100% of the archive, then they spend the nextseveral hours "paying back" the swarm until they have provided at least as many bytes uploadedthat they downloaded −− a ratio of 1:1 or 1.00. As mentioned before, some ISPs make efforts tocontrol seeders. Seeders generate one−way (outbound) traffic, and this traffic is sometimes themost troublesome for ISPs to handle.Most clients are configured with a "speed limit" set Upload Maximum Limit in kB/s and an unlimitedDownload Maximum Limit. To reduce the amount of one−way transfers, the client needs to uploadat the same rate (or less, overall) than it is downloading. While this means that the download will bea lot slower to complete, it also means that it will complete at a 1.00 ratio or above.For example, perform your transfer with an Upload Limit of 30 KB/s and a Download Limit of 25KB/s. When you first join you won't upload at all because you have no pieces to share yet. But afterseveral minutes, the total bytes uploaded should be equal to or above the total bytes downloaded.When your download is complete, you will have little or no obligation to continue seeding as youalready have uploaded enough to the swarm.Many multi−torrent clients (Azureus, µTorrent, BitComet, and others) provide the option of settingmaximum upload and download rates on a per−torrent basis. These settings are found either in aright−click menu or in the Properties of each torrent. Some clients also allow Global Settings thataffect all torrents being managed by the client, however the Global Settings do not provide a correctbalance to ensure that a one−way transfer is avoided.
How To Hide BitTorrent within an Encrypted Tunnel:
With the advent of Application−Layer Inspection, some ISPs may recognize and control BitTorrenttraffic despite your best efforts.You may be ableto hide theBitTorrenttraffic in an encrypted tunnel −− a transport path within the normal transport paths provided by TCP and IP. You cantunnel your traffic through cooperativessuch as The Onion Router (TOR)* or I2P. Commercial Virtual Private Network (VPN) providers suchas Relakks or SecureIX will also help keep your ISP from detecting exactly what you're doing. If youare familiar with SSH and SSH Tunneling, this isalso a possibility. However, some ISPs eventhrottle or inhibit these encrypted tunnels.Azureus provides in−client support for TOR and I2P. Other clients will have to set up the softwareas recommend on the TOR or I2P site.*Note: TOR has been updated to allow peer−to−peer download data, despite any information to thecontrary (it used to be prohibited).
Now For the Bad News
ISPs are taking advantage of more sophisticated shaping technology all the time, and many of thenewer shapers won't be fooled by encrypted traffic. For instance, Sandvine (the shaping tool manybelieve Comcast and other ISPs employ) won't be fooled by obfuscating your traffic.So what can you do beyond obfuscating?The short answer is not much. There is no fool−proof way to do beat the shapers. You best choiceis probably to switch to an ISP that doesn't employ anti−BitTorrent traffic shaping. In the long run,this also has the benefit of sending an effective message to your ex−ISP.

Activity (31)

You've already reviewed this. Edit your review.
Mukil Elango liked this
1 thousand reads
1 hundred reads
Edmond Blair liked this
Edmond Blair liked this
Edmond Blair liked this
Edmond Blair liked this
maiamo liked this

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->