Limiting bandwidth dynamically in Squid

You could use

acl aclname rep_mime_type mime-type

to block certain mime-types from downloading (eg iso's)

and

reply_body_max_size

to set a ceiling on the biggest files that can be downloaded

you could also use free-sa to analyze your logs to see where the bandwidth is going

http://free-sa.sourceforge.net/

EDIT: Actually squid delay pools will do EXACTLY what you need.

read this article: http://www.howtoforge.com/squid-delay-pools-bandwidth-management