Need clarification: QoS not effective for downloads?

Right so i've been doing a lot of reading today before i post this, and from what i've read, its worthless me trying to throttle my downloads at the router? Because this is not really effective?

I was hoping this could enable to make best use of my connection with my flatmates, letting me/them exploit the full potential of the bandwidth available, but prioritise http/voip/dns etc... so browsing whilst downloading wasn't really affected... It seems i'm not going to get this right? I just want to make sure before i reside in the fact its probably pointless messing around with QoS in my case...

QoS for broadband downloads are difficult because they're fluid. More than likely your download speeds vary hour to hour and day to day. And you have to have a reliable bandwidth base figure to properly configure QoS.

That said, QoS based purely on uploads speeds is very effective. I know I've been very happy with it. I use Vonage, and like most VOIP users found that it's laggy UPloads that cause choppy phone calls.

Currently I have my Vonage adapter assigned the highest priority and my torrents the lowest. It works very well, and doesn't slow down torrents if there is no other activity on my link. Probably things would have been fine with just that, but the QoS examples that Tomato has for HTTP, DNS, and large HTTP looked handy so I enabled them as well.

In a nutshell, enable it on the upload side, prioritize your VOIP and any ports used for gaming, throttle P2P, and if you're feeling froggy play with the download QoS.

Thats the thing, none of us really do any gaming (i'll be getting an xbox in the future thanks to GTA though so this will change) and our "P2P" is purely download based (usenet) so the upload is free anyway really apart from the odd this and that, i could set the download box to throttle in the day and download in the night, but it seems a big waste when we might be out in the day or whatnot, i just wanted to make best use of our bandwidth without it affecting our website browsing when we are around...

Then take a stab at download QoS. Run several bandwidth tests over a period of days or a week. Then plug 90% of your average download throughput into the download QoS box (the name of which escapes me ATM, I'm not around a tomato router.) Put DNS, HTTP, and HTTPS in the highest priority catagory and you're done.

Do the same for your upload QoS. Browsing is bad slow when HTTP sends are laggy.

i would really like some type of download/inbound qos as well. with tomato, i think the only solution is to cap the bandwidth for a given type of traffic class. this can be done in QOS > Basic settings > inbound limits: set the given percentage and that will be the maximum amount that this class of traffic will consume. this way, higher priority traffic can take advantage of whatever "reserved" bandwidth is available. however, it's not an elegant solution as it is a static cap on download speeds.

as an aside, when i was using it, ddwrt seemed like it did dynamically throttle speeds--e.g. games would throttle other downloads. you could try ddwrt, but despite some of its advanced features (repeating, multiple virtual ssid, etc) i find tomato to have a much nicer, simplified interface. also from what i understand ddwrt has violated GPL and has in part become a commercial undertaking.

QOS only really works at a bottleneck. Think of your local network as a four lane highway and the internet as a cow path. This is a congestion point, gauntlet, bottleneck, whatever you want to call it. When you do outbound QOS, you are making order of the chaos, marshalling all the packets into an orderly single row.

When traffic is coming inbound, there really is no point in trying to do any QOS since there no bottleneck. The cows have already arrived at the fork to the four lane highway.

There are only two ways to throttle inbound. One is to actually throttle outbound ACKs to force the inbound to wait for them. This does not give a predictable control because there is not a relationship between a specific number of ACKs and a specific volume of traffic.

The other way is to discard packets. That makes no sense since they are already on your LAN, past the bottleneck. Discarding it is like cutting off your nose to spite your face.