Недавно понадобилось создание шейпера на пограничном маршрутизаторе в качестве которого используется Juniper MX80. Хорошего полного мануала так и не удалось найти, потому и решил поделиться с community. Настройка оказалась довольно проста. Итак…
1. Создаем данные шейпера. Например, 10мбит/с.
firewall
policer rate-test {
if-exceeding {
bandwidth-limit 10m;
burst-size-limit 50k;
}
then discard;
}
burst-size рассчитывается таким образом: bandwidth-limit x 0.005 seconds x 1 byte / 8 bits
2. Создаем правила файервола для применения данного policy. Отдельное правила для входящего и исходящего трафика.
firewall
family inet
filter rate-test-in {
term shape {
from {
source-address {
х.х.х.х/32;
}
}
then policer rate-test;
}
term normal {
then accept;
}
}firewall
family inet
filter rate-test-out {
term shape {
from {
destination-address {
х.х.х.х/32;
}
}
then policer rate-test;
}
term normal {
then accept;
}
}
}
3. Применяем правило на интерфейсе или конкретном юните
interface ge-1/1/9.0
family inet {
filter {
input rate-test-in;
output rate-test-out;
}
Вот и все. Разнообразные тесты показали довольно хороший и точный результат.
Автор: vmart