В общем случае, чем больше правил и они сложнее, тем нагрузка больше на цпу. Но в случае применения фильтров на основе хеш-таблиц даже с большим количеством фильтров нагрузка относительно невелика. Как показывает практика, тот же netfilter съедает на порядок больше ресурсов, чем фильтры.
На больших скоростях лучше использовать полисеры. Разницы между шейпером и полисером уже не ощущается. Так же лучше использоваться дисциплину HFSC вместо HTB, так как она с распараллеливается лучше и сама по себе не так сильно нагружает железо.
QoS в Linux: издеваемся над трафиком