Как ограничить скорость на маршрутизаторе 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 © Все права защищены 2023

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