Bittorrent hogs all my bandwidth
June 9, 2007 11:32 PM   Subscribe

My bittorrent client hogs all my bandwidth . I know that I can pause or cap my bit torrent traffic but i would like my computer to assign internet requests from my browser a higher priority. is there any way to do this ?
posted by grex to Technology (14 answers total) 6 users marked this as a favorite
You haven't mentioned what operating system you're using.

I haven't ever heard of a mechanism for doing that in a TCP/IP stack.

You wouldn't be able to control inbound traffic in any case. There's a single queue feeding you from the network, and you get what arrives, in the order it arrives.
posted by Steven C. Den Beste at 11:36 PM on June 9, 2007

if youre using a router, google QOS . this will allow you to control how much of your bandwidth is used for what. people with vonage often reserve a portion of their bandwidth specifically for phone calls. i broke mine up into console game (with static ips), VOIP, Browser and Torrents.

if your router doesnt support QOS, then flash your router with some new firmware that does. i use DD-WRT firm ware with my linksys router. i've read of superior firmwares, but this one works for me.

adjust this and your torrents will pay nice with your browsing/gaming.
posted by Davaal at 11:47 PM on June 9, 2007

Response by poster: SCDB i'm using winxp, utorrent and browsing through firefox.
Davaal i'll look into that ,i'm a bit leery of flashing my router though ;)
posted by grex at 11:55 PM on June 9, 2007

You might want to look into capping your BitTorrent client's upload bandwidth and maximum number of connections. If either is not limited based on the performance of your specific connection, oftentimes your normal Internet browsing speed may suffer. Some clients, like uTorrent, have a built-in speed guide that recommends settings based on your connection speed. It's a good starting point.
posted by roomwithaview at 11:58 PM on June 9, 2007

This is something that can be done at the enterprise level; the Vista Server implementation is called policy-based quality of service.

M$ also offers a couple of 2000/XP era utilities -- QoS Packet Scheduler and WinNTIPCOnfig -- but they don't (to my knowledge) let you manipulate things at the level you want. They're more designed for giving certain machines more access to LAN bandwidth than specific apps on one machine.

I see what you're wanting to do -- you want the BT traffic to be capped at your maximum bandwidth, except when you want to use it yourself. If you don't want to manipulate it at the router level (and you don't have a server), you probably have to settle for managing it within your client.
posted by dhartung at 12:21 AM on June 10, 2007

The bottleneck in a typical consumer broadband connection is the outbound bandwidth. If you saturate that, even your inbound traffic is hosed, because the requests and acknowledgment packets take too long to get out of the pipe. What you want to do is to prioritize certain kinds of outbound traffic so they get to "jump the queue" when the router is deciding which packet to send next through your relatively narrow outbound pipe.

Fortunately, this problem is easily solved with any of the newer routers with StreamEngine technology built-in. I have a D-Link DGL-4300, which is a couple years old now but which works like an absolute dream for this. D-Link and Zyxel are two companies I know of who have this feature built in to many of their models, but other routers may also have it or something similar. It may not be configurable on some routers (on the DGL-4300, you can actually create your own priority rules), but even if you can't tweak it yourself it will probably work pretty well.

Now, StreamEngine only affects your outbound traffic, but prioritizing the acknowledgment packets (ACK) will effectively prioritize certain inbound connections somewhat, at least when the outbound pipe is full. For peer-to-peer applications, that's just about as good, really.
posted by kindall at 12:33 AM on June 10, 2007 [1 favorite]

Have you tried messing around with the throttle at all first?
I've actually found, and this is of course just my case, that my client clogs up our connection if I don't throttle outbound traffic to just about 20KB/s, which isn't anywhere near our limit, and that downstream traffic has no apparent effect on anything.
posted by Su at 1:12 AM on June 10, 2007

Seconding the advice on throttling uploads. That solved similar problems I was having with the same setup.
posted by concrete at 1:24 AM on June 10, 2007

Best answer: What you're asking about is Quality of Service, aka prioritizing packets based on type.

This can definitely be done, but for proper QoS, you need control over both sides of a given link. That is, you have to control the routers at BOTH sides of a wire to fully determine packet priorities.

Unless you have a very unusual ISP, you'll have control over only your half of the link. You can still do some traffic shaping, but it's much less effective. You can control what goes OUT, but you can't directly control what comes IN.

Usually, as others here are saying, it's the upstream that's choked. If you simply throttle your bittorrent client to something below what causes you lag, that may solve your problem in one go. If you want to have your upstream bittorrent actually preempted by other stuff (like, say, your VOIP traffic), then you'll need to run a shaper, and you'll need to run it on your edge router. That nearly always means an open firmware.

Note that the QoS calculations slow the process of opening a link slightly. It's not perceptible in normal web browsing, but if you're running a shaper and do a scan for game servers, as was so common with Counterstrike, nearly all consumer routers will choke badly and will report crazy numbers... your ping times will go up and up and up as the router gets more and more behind trying to sort all these new 'connections'. So when I was running QoS, I'd have to turn it off, run a server scan, and then turn it back again. This was a little annoying.

What I do now: cap bittorrent at an amount low enough that it won't interfere with my VOIP traffic, and leave the QoS off. Overall, this is less hassle for me. My bittorrent is a little slower, but I can just start stuff and forget it.
posted by Malor at 2:13 AM on June 10, 2007 [1 favorite]

Response by poster: thanks guys !
i've got stuff throttled to a point where everything is running smoothly , and i'll just remove those throttles when i go out to max my dl's .I'll give malor a best ,so people know that the question was answered well, but you all gave really good advice.
posted by grex at 3:36 AM on June 10, 2007

This tool is possibly the best thing I've ever seen in terms of this sort of stuff, and I've been fiddling with various solutions since the Win3.11 days. Highly recommended. It just works, and works amazingly well. Until I got my own router, I used it without issue for a few years.
posted by stavrosthewonderchicken at 1:27 AM on June 11, 2007

I'm late to this party, but I have DD-WRT on my WRT54G, and I love, love, love it.

Too many clients kept dragging down/crashing the Linksys firmware. Now, it's no problem.
posted by SlyBevel at 1:07 PM on June 11, 2007

Seconding cfosspeed that Stavros posted. It's worked great for me and everyone I know that uses it and BT.

I got the dd-wrt firmware later, as BT kept crashing my router.
posted by Four Flavors at 4:09 PM on June 11, 2007

Thirding cfosSpeed.
posted by robofunk at 5:30 PM on June 12, 2007

« Older Selling my clothes in Portland, Oregon   |   Help me meet others Newer »
This thread is closed to new comments.