Best solution: Priority-based QoS.
Assuming total available bandwidth is 1 mbps.
Here is an example of what could happen without QoS:
I am happily playing my MMORPG which takes ~100 kbps
Little brother starts downloading at 1 mbps
I start to experience lag and disconnects
Frustrated, I turn off the wireless connection (Evil, I know)

He comes to me whining about the internet
Here is an example of what could happen with hard caps on bandwidth:
I am happily playing my MMORPG which takes ~100 kbps
Little brother starts downloading at 800 kbps (Capped at 800 kbps)
My gameplay is unaffected
However, this method causes that remaining ~100 kbps of bandwidth to be wasted.
Here is an example of what could happen with priority-based QoS:
I am happily playing my MMORPG which takes ~100 kbps
Little brother starts downloading at 1 mbps
Router will give priority to packets that I send
My gameplay is unaffected and little brother’s download speed varies according to how much bandwidth I require at that time.
This method is much more efficient than the other two. I highly recommend it to anyone who shares their internet connection.
I’m using the Gargoyle Router Management Utility – which I find is much more user-friendly compared to OpenWRT that I was using previously. Gargoyle is available here:
http://www.gargoyle-router.com/download.php.
This post has been edited by AmpBuster: Aug 29 2012, 03:36 PM