Как ограничить скорость на маршрутизаторе Cisco (rate-limit)

У нас есть два варианта: rate-limit и traffic-shape. Чем эти два способа отличаются?
Все просто: traffic-shape не умеет ставить пакеты в очередь. Вот все, что вышло за рамки указанное пропускной способности — он дропает. А вот rate-limit умеет ставить пакеты в очередь и может отправлять пакеты всплесками, когда появится свободная полоса.

Команда rate-limit вводится в режиме конфигурирации физического интерфейса и имеет следующий синтаксис:

rate-limit input|output [access-group [rate-limit] acl-index] [limit-bps] [nbc] [ebc] conform-action [action] exceed-action [action]

Разберем более детально:

    • access-group — указываем номер нашего ACL, в который ловим трафик, который будем ограничивать.

Далее идут три значения скорости limit bps, nbc, ebc

    • limit bps — скорость ограничения(в битах!)
    • nbc — допустимый предел трафика, все что свыше — будет попадать в очередь
    • ebc — максимальный предел трафика

Для расчета всех значений используем такую формулу:

nbc=limit(bit/s)/8(bit/s)*1,5sec

ebc=2nbc

Далее по синтаксису:

    • conform-action — что делать с трафиком при соответствии ограничения
    • exceed-action action — что делать с трафиком при превышении ограничения.

И тут есть несколько действий:

    • drop — отбросить пакет
    • transmit — передать пакет
    • set-dscp-transmit — пометить пакет

 

Теперь давайте посмотрим на практике. Возьмем GNS3, один маршрутизатор и две виртуальные машины.

Топология простейшая, чтобы просто показать как это работает.

Ограничим весь трафик из сети 192.168.40.0/24 в сеть 192.168.78.0/24. Для этого на R1 создаем ACL.

R1(config)#access-list 101 permit ip 192.168.40.0 0.0.0.255 192.168.78.0 0.0.0.255
R1(config)#access-list 101 deny ip any any

Ограничиваем абсолютно весь трафик. Пример простой, могут быть более сложные ACL, чтоб ограничивать скорость по каким-то сервисам, портам и пр.

Проверим скорость в сети до ограничений.

Сейчас скорость закачки около 1Мбит/c.

После этого вешаем на физический интерфейс rate-limit, который смотрит в сеть 192.168.40.0/24

R1(config)#int fa 0/0
R1(config-if)#rate-limit output access-group 101 64000 12000 24000 conform-action transmit exceed-action drop

Теперь мы ограничили скорость до 8Кбайт/сек. Проверяем. Скорость стала 64 Кбит/с. Все работает.

Примечание! rate-limit нельзя повесить на логический интерфейс, только на физический.


Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Unlix © Все права защищены 2022

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!