Добрый день.
Есть необходимость выделения на определенные IP гарантированной скорости Используется сетевая карта 40Гбит
Ранее пользовались скриптом, который устанавливает на общий трафик ограничение скорости а IP с гарантированными скоростями отправлялись в отдельный класс
/sbin/tc qdisc del dev eth0 root
/sbin/tc qdisc del dev eth1 root
# дефолтный класс
/sbin/tc qdisc add dev eth0 root handle 1: htb default 1
/sbin/tc class add dev eth0 parent 1: classid 1:1 htb rate 18GBit ceil 18GBit quantum $quantum burst $burst cburst $cburst
/sbin/tc qdisc add dev eth1 root handle 1: htb default 1
/sbin/tc class add dev eth1 parent 1: classid 1:1 htb rate 18GBit ceil 18GBit quantum $quantum burst $burst cburst $cburst
# класс с гарантированными скоростями
/sbin/tc class replace dev eth0 parent 1: classid 1:2 htb rate 1Gbit ceil 1Gbit quantum $quantum burst $burst cburst $cburst
/sbin/tc class replace dev eth1 parent 1: classid 1:2 htb rate 1Gbit ceil 1Gbit quantum $quantum burst $burst cburst $cburst
# ip вносяться в класс с гарантированными скоростями при помощи ipset
ipset add QUEUES $ip skbprio 1:2
# сами скорости для конкретных ip выделяются на другом оборудовании а на этом только отрезается их общая скорость
Механизм исправно работал пока общая скорость не выросла. Теперь те у кого IP с гарантированными скоростями работают нормально с потреблением около 1 Гбит а те IP которые попадают в дефолтный класс с ограничением скорости в 18 Гбит в итоге работают на скорости не выше 16 Гбит Повышение quantum, burst и cburst не помогло исправить ситуацию
Если отключить шейпер то общая скорость увеличивается до 23 Гбит При использовании тестов на основе Iperf механизм работает исправно и выдает скорость 18Гбит в дефолтном классе В связи с чем мы подозреваем что у ограничения скорости есть какой-то лимит на уровне соотношения количества пакетов к скорости выше которого механизм пока еще просто не работает
Может кто-то знает и сможет подсказать как отрезать для определенных IP с использованием ipset скорость из общего потока так что бы в нее никто не мог влезть из дефолтного класса без ограничения скорости на этот дефолтный класс что возможно поможет решить проблему?