Задача такая: имеется Juniper SRX 240h, нужно ограничить входящую и исходящую скорость на интерфейсе. Решается такая задача на Juniper очень просто, с помощью policer-а. Нужно просто создать правило по ограничению скорости а затем в настройках интерфейса сказать чтоб трафик проходил через это правило.
Итак рассмотрим на примере, допустим нам нужно ограничить скорость до 10 Мбит/сек. Первым делом создаем правило:
root@srx> configure [edit] root@srx# set firewall policer POLICERNAME if-exceeding bandwidth-limit 10m burst-size-limit 625k [edit] root@srx# set firewall policer POLICERNAME then discard
Мы создали правило, через которое будет проходить трафик, в данном случае POLICERNAME это название правила.
Burst size limit расчитывается по следующей формуле, пропускная способность интерфейса в байтах за миллисекунду умноженная на 5, т.е для гигабитного интерфейса будет вот так:
1) переводим Мегабит/сек в Мегабайт/сек:
1000 Mbps ÷ 8 = 125 MBps
2) переводим мегабайт/сек в байт/сек
125 MB/s × 1 000 000 = 125 000 000 Bps
3) переводим байт/сек в байт за миллисекунду
125 000 000 Bps ÷ 1 000 = 125 000
4) и наконец считаем количество байт за 5 миллисекунд
125 000 × 5 = 625 000
таким образом 625 килобайт это рекомендуемый Burst size limit для гигабитного интерфейса.
Теперь переходим к настройке нужного интерфейса:
[edit] root@srx# edit interfaces ge-0/0/5 [edit interfaces ge-0/0/5] root@srx# set unit 0 family inet policer input POLICERNAME output POLICERNAME
На этом все правило готово, теперь трафик проходящий через интерфейс будет шейпиться, естественно после того как мы сделаем commit
[edit] root@srx# commit
У вас полагаю опечатка:
3) переводим байт/сек в байт за миллисекунду
125 000 000 Bps × 1 000 = 125 000
тут видимо должен быть знак не ×, а ÷
Спасибо, исправил.
Добрый день.
На внутреннем интерфейсе применять policer?
Нужно ограничить каждому пользователю пропускную способность при доступе в интернет