Algum Quick Googling me mostra que você pode usar um proxy Squid para definir filas para dados chamados 'data pools'.
Você pode, aparentemente, também usar IPROUTE2 e TC (não é possível postar link, não sou incrível o suficiente)
De link
Apart from normal caching, Squid has a special feature called delay pools. Thanks to delay pools, it is possible to limit internet traffic in a reasonable way, depending on so-called 'magic words', existing in any given URL. For example, a magic word could be '.mp3', '.exe' or '.avi', etc. Any distinct part of a URL (such as .avi) can be defined as a magic word.
Veja também um artigo no serverwatch.com intitulado Reining-in-Bandwidth-With-Squid-Proxying
O Squid é provavelmente o caminho mais simples, e você pode fazer muitas outras coisas legais com ele também.