Here is a presentation given at Linux Kongress 2001 on bandwidth management using Class-Based Queueing (CBQ) and Hierarchical Token Bucket (HTB) - http://ds9a.nl/cbq-presentation/
This link has technical information on HTB theory and implementation. HTB is considered to be an easier and more scalable alternative to using CBQ for bandwidth management - http://luxik.cdi.cz/~devik/qos/htb/htbman.htm