В интернете можно найти множество разнообразных статей, описывающих работу с утилитой tc (traffic control). Все желающие углубиться в механизмы работы шейпера, шедулера и приоритизатора линукс без труда смогут найти их на его просторах.
Здесь же я хочу привести простой пример ограничения полосы промаркированного iptables исходящего трафика до 500кБит/с (в пике 600кБит/с) на базе htb (Hierarchy Token Bucket), состоящий всего из четырех команд.
Создание дисциплины (qdisc), класса (class), фильтра (filter) и конечно-же правила фаервола (iptables).
tc qdisc add dev wlp7s0 root handle 1 htb tc class add dev wlp7s0 parent 1 classid 1:1\ htb rate 500kbit ceil 600kbit tc filter add dev wlp7s0 parent 1:0 prio 1\ protocol ip handle 10 fw flowid 1:1 iptables -A OUTPUT -t mangle \ /*здесь опущены параметры помечаемого трафика*/\ -j MARK --set-mark 10