BitTorrent Horks My DSL

Whenever my wife uses BitTorrent, I immediately notice increased network latency. Web browsing and other interactive sessions begin to suck. I’ve tried some simple traffic shaping, but it did not really help.

I know that most BT clients have built in limit settings, but these don’t seem to help much either. They attempt to limit the amount of bandwidth used by the client, but my problem is clearly one of latency. Additionally, this does not scale. I want to solve this problem once, in one place.

I’m considering some layer-7 stuff to identify BT traffic and give it a low priority. Encrypted BT would be a problem here. The deep packet inspection would also require a lot of horsepower — perhaps more than I have.

But the bigger problem is that I feel scummy about it. How will I ever argue Net Neutrality again? Anyway, I don’t really want to look in the damn packets — I just want the network to remain usable.

So, with apologies to jwz:

Dear Lazyweb,

How the hell do you use BitTorrent without killing your network?


8 Responses to “BitTorrent Horks My DSL”

  1. 1 John Knox October 15, 2007 at 8:19 am

    How do you know that this problem isn’t a result of a violation of net neutrality? I’ve heard that some carriers are starting to throttle connections depending on the type of traffic.

  2. 2 Mark October 15, 2007 at 8:56 am

    Good question. I’ve just been assuming the problem is on my end. I really have no idea how to tell the difference.

  3. 3 smoothE October 16, 2007 at 5:18 pm

    Net neutrality is equivalent to communism, great in theory, but tragic in practice.

    Did you try specifically limiting the upload rate from the BT client? I found with mine since my broadband connection is asymmetric, my upload gets swamped easily if I don’t limit the BT client. This manifests itself as high latency when web surfing etc because it takes a long time for a page request to get out through the skinny upstream pipe.

  4. 4 Mark October 17, 2007 at 5:40 am


    Yes, I’ve definitely tried limiting the BT clients. It may have helped slightly, but I can still notice the latency.

    I was hoping that wondershaper would do the trick. I think I’ve got it setup to give medium priority to low ports like 22 and 80, and low priority to other ‘bulk’ traffic. It’s either not working or not doing the trick.

    Another detail which I hadn’t considered until just now: typically my wife is running a BT client on her laptop, which means she’s using the wireless network. All of my traffic shaping happens on egress to DSL, so I suppose it’s possible that the problem has more to do with my WiFi than my DSL.



  5. 5 Alkivar October 17, 2007 at 1:02 pm

    Mark one of the things i’ve found that works here with Verizon DSL is running something like PeerGuardian… since it blocks sending packets to useless peers (MediaGuardian and other groups sending fake BT packets) which frees up more of your bandwidth.

    Other things I’ve done included switching to a better router (one that runs DD-WRT). Changing port at random if your client allows it works too (uTorrent does).

    I will assume this is likely a linux environs not windows, but just so your aware Windows XP has a stupid cap on the number of simultaneous TCP/IP sessions you can make as well. When you hit it, the only way to reset the stack is to reboot *rolls eyes*

  6. 6 John Knox October 22, 2007 at 12:07 pm

    Perhaps this is the answer: Link

  7. 7 Nathan Zook October 24, 2007 at 3:37 pm

    There is nothing wrong with preaching net neutrality (good) while keeping your own network stable (more good). The principle of network neutrality goes to the nature of the contracts that hold the net together and the common carrier status of the ISPs.

    Content-based filtering is an abandoment of common carrier restraints, and if Comcast wants responbility for every packet that hits its servers…

  8. 8 Mark October 25, 2007 at 9:11 am

    Yea I take your point, Nathan. I am not a common carrier.

    Still, something about deep packet inspection just feels dirty to me. I’d rather implement some general scheduling policy on my router. Perhaps something akin to quotas, so that no single host on the network can monopolize things in the presence of other traffic.

    Unfortunately all I have right now are some rules giving priority to low numbered ports, ICMP, and small packets (like ACKs). They don’t really seem to do much good.

Comments are currently closed.

%d bloggers like this: