Ваши темы для Вебинаров

В Москве:

РФ (звонок бесплатный):

+7 (495) 103-99-88 +7 (800) 600-20-56

Spanning Tree Protocol в Mikrotik

10388

В этой статье поговорим о Spanning Tree и Rapid Spanning Tree протоколах.

Что такое STP (Spanning Tree Protocol) и зачем он необходим? Он необходим для того, чтобы решить вопрос с петлями в локальной сети.

Например, если мы соединим локальную сеть несколькими интерфейсами в один и тот же коммутатор, то в такой ситуации без использования протокола STP и без LoopBack Detection (LBD) у нас может произойти петля и вся локальная сеть перестанет работать.

Рис. 46.1 Несколько сетевых устройств в локальной сети.

Единственный вариант как с этим бороться в такой ситуации, если петля уже произошла, это пойти и отключать провода. А если проводов в вашей локальной сети много и где-то произошла петля, то придется постепенно выдернуть абсолютно все провода из всех интерфейсов, что может занять довольно много времени.

Протоколы STP и (R)STP исключают возможность просмотра одних и тех же MAC-адресов с разных интерфейсов.
Делают они это путем автоматического отключения интерфейсов.

Для того, чтобы данная система заработала, необходимо выбрать корневой bridge (root bridge).

Выбор корневого моста (root bridge) происходит путем выбора моста с наименьшим значением Bridge ID (идентификатор моста). Bridge ID состоит из двух частей: приоритета моста (Bridge Priority) и MAC-адреса моста.

Важно отметить, что если все мосты в сети имеют одинаковый Bridge Priority, то корневым будет мост с наименьшим MAC-адресом.

Как работает алгоритм:
Если мы видим большое количество соединений, то есть, например у нас несколько коммутаторов соединены между собой как показано на схеме Рис.46.1. То мы должны отключить какие-то интерфейсы и эти интерфейсы будут отключены по очень простому алгоритму:

Чем меньше стоимость перехода, то есть чем меньше переходов от одного коммутатор до другого, то есть чем ближе нам идти до рута, тем больше вероятность что порт будет использован.

Рис. 46.2 Отключенные порты.

В данном случае у нас отключен A и B потому, что у B есть прямой линк до рута и у A также есть прямой линк. Что касается выбора между B и D, был выбран интерфейс с наименьшим идентификатором (например, второй, а не десятый).

Когда топология сети становится функциональной, то в случае использования протокола RSTP происходит рассылка BPDU-сообщений на определенный промежуток времени, который позволяет узнать информацию о топологии сети. В STP таких сообщений не существует.

В итоге приходим к топологии, которая показана на рисунке 46.3.

Рис. 46.3 Топология сети после определения root bridge.

Остальные линки, которые находятся в резервном состоянии, отключены. И здесь есть разница между протоколами STP и RSTP.

Протокол STP отключает лишние интерфейсы и в момент, пока сеть находится в работоспособном состоянии по этим интерфейсам никакого трафика не бегает. Если основной порт, по которому мы работаем по какой-то причине, выключился, то в этот момент протокол STP включает все отключенные порты и пытается понять возможно ли работать через них. Таким образом достигается отказоустойчивость.

Но время, которое необходимо ему для включения отключенных портов может быть достаточно продолжительным. И поэтому ему на смену пришел улучшенный протокол RSTP (Rapid spanning tree protocol).

Он отличается тем, что неиспользуемые интерфейсы оставляет во включенном состоянии и не пропускает на них рабочий трафик, но по этим интерфейсам постоянно передает BPDU сообщения, которые выясняют жив ли кто-нибудь за тем интерфейсом и не изменилось ли у нас что-нибудь в сети.

Поэтому, если мы рассматриваем протокол STP, то у нас есть только выключенные порты, root порты и Designated порты (от root до других коммутаторов).

Если мы рассматриваем протокол RSTP, то у него появляются дополнительные роли на интерфейсах, это Alternative port – дополнительный порт до рута и Backup port – резервный порт до Designated коммутатора (того, кто стоит ниже от рута). Например, порт между A и B на рисунке 46.4 будет Backup port, а порт между B и A будет Alternative port, потому что через порт между B и A мы можем дойти до рута, но это будет дольше и менее приоритетно и поэтому это будет Alternative портом.

Рис. 46.4 A и B - Backup port, B и A - Alternative port.

Давайте рассмотрим минимальную настройку RSTP которая может понадобиться в нашей локальной сети.

Минимальная настройка RSTP сводится к тому, что мы должны на главном коммутаторе указать приоритет STP/RSTP. То есть мы должны зайти в раздел /bridge/STP, по умолчанию STP на большом количестве устройств включен, но имеет стандартный приоритет 8000.

Рис. 46.5 STP приоритет 8000.

Если мы не будем менять это значение, то выбор root bridge будет происходить в автоматическом режиме.

Выберем рута по наименьшему MAC адресу.

Рис. 46.6 Выбор root bridge по наименьшему MAC адресу.

Автоматически был выбран не центральный коммутатор, а тот у которого MAC адрес оказался меньше. Но данное поведение можно изменить, для этого нужно изменить значение Priority в меньшую сторону.

Рис. 46.7 Уменьшение значения Priority.

Тем самым приоритет нашего коммутатора будет наивысшим.

Потому, что если посмотреть на заголовки идентификатора root коммутатора, то у нас вначале идет информация о Priority которую мы выставили, а дальше идет MAC адрес.

Рис. 46.8 Заголовки идентификатора root.

Если Priority у всех одинаковые, то выбор происходит через наименьший MAC адрес, а если Priority у кого-то меньше, то, естественно, становится максимальный приоритет.

Так же рекомендуется выбрать приоритет согласно другим коммутаторам, которые есть в локальной сети и проверить совместимость этих приоритетов. Потому, что не все коммутаторы поддерживают абсолютно любое число.
Не всегда актуально указывать «0» потому, что некоторые устройства считают, что это атака на протокол STP/RSTP. Более правильно выбирать 3000, 4000 и т. п.

Табличка приведена в Wiki Микротика, какие значения лучше выставлять. (Spanning Tree Protocol — RouterOS — MikroTik Documentation).

Совместимость между оборудованием MikroTik с точки зрения поля Priority никаких проблем нет. Между другими вендорами могут быть несовпадения.

Так же нужно отметить, что прямой совместимости в целом между оборудованием разных вендоров в протоколе STP/RSTP нет.

В некоторых свитч чипах при включении протокола STP/RSTP у нас происходит отключение Hardware Offload. В нашем случае устройство поддерживает STP/RSTP, но не поддерживает аппаратно MSTP.

Рис. 46.9 STP/MSTP.

Если мы захотим задействовать MSTP на данном устройстве, то произойдет отключение Hardware Offload, потому что наш свитч чип не поддерживает данную опцию.

Также можно посмотреть какую роль принял тот или иной порт.

Рис. 46.10 Bridge/Ports/Role.

В данном случае мы видим, что у нас есть disabled port, это абсолютно выключенный порт, к нему ничего не подключено, мы используем протокол RSTP. Designated port это порт к которому что-то подключено.

Если зайти на нижестоящий коммутатор, можем увидеть, что на этом устройстве есть root port который указывает через какой интерфейс, мы идем до рута. Если мы подключим еще один провод, например во второй интерфейс и к нашему руту, то он автоматически его отключит, сделает Alternative, потому что это будет альтернативный путь до root bridge, а на root bridge роль у второго порта будет backup port, потому что это будет альтернативный путь до designated коммутатора.


  • MTCRE

    13 - 16 мая 10.00 - 18.00
  • MTCSE

    20 - 23 мая 10.00 - 18.00
  • MTCNA

    17 - 20 июня 10.00 - 18.00
  • MTCNA

    24 - 27 июня 10.00 - 18.00
  • MTCNA

    09 - 12 июля 10.00 - 18.00
  • MTCNA

    15 - 18 июля 10.00 - 18.00
  • MTCRE

    05 - 08 августа 10.00 - 18.00
  • MTCWE

    16 - 19 сентября 10.00 - 18.00

Курсы Mikrotik-Training.

Знания, которые дают результат.