spanning tree fast link option что это

Spanning tree fast link option что это

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что этоSTP (Spanning Tree Protocol) — сетевой протокол (или семейство сетевых протоколов) предназначенный для автоматического удаления циклов (петель коммутации) из топологии сети на канальном уровне в Ethernet-сетях. Первоначальный протокол STP описан в стандарте 802.1D. Позже появилось несколько новых протоколов (RSTP, MSTP, PVST, PVST+), отличающихся некоторыми особенностями в алгоритме работы, в скорости, в отношении к VLANам и ряде других вопросов, но в целом решающих ту же задачу похожими способами. Все их принято обобщённо называть STP-протоколами.

Протокол STP в своё время был разработан мамой Интернета Радией Перлман (Radia Perlman), а позже, в начале 90х превратился в стандарт IEEE 802.1D.

В настоящее время протокол STP (или аналогичный) поддерживается почти всеми Ethernet-коммутаторами, как реальными, так и виртуальными, за исключением самых примитивных.

Алгоритм действия STP (Spanning Tree Protocol)

BPDU кадр

Bridge Protocol Data Unit

Вот как выглядит BPDU кадр STP

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Состояния портов:

1. Блокировка (blocking)

2. Прослушивание (listening)

3. Обучение (learning)

4. Передача (forwarding)

Настройка stp

Обща схема примера работы и настройки STP. Два коммутатора соединенных двумя линками, видно то STP уже работает и один порт у второго коммутатора погашен чтобы не было петли

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-01

Посмотрим на первом коммутаторе настройки stp. Логинимся и вводим команду

Видим, что это рутовый коммутатор и все порты в состоянии передача.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-02

Смотрим, тоже на втором коммутаторе.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-03

Видим, что это не рутовый коммутатор. Интерфейс Fa0/2 является рутовым портом. Fa0/3 ждет в запасе.

Теперь предположим, что интерфейс Fa0/2 упал, что будет. Для примера выключим его. Заходим на 1 коммутатор.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-04

Видим, что линк пропал

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-05

Зайдем в этот момент на второй коммутатор и посмотрим состояние портов.

Видим, что порт Fa0/3 в состоянии обучения

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-06

теперь в состоянии передачи, прошло около 20 секунд и линк поднялся.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-07

Восстановим на первом коммутаторе Fa0/2 командой

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-08

И видим, что все мгновенно восстановилось.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-09

Все же переключение в 20 секунд очень нехорошо, поэтому уже придуманы улучшенные версии протокола rstp и lacp, но о них в следующих публикациях.

Как настроить RSTP на коммутаторах Cisco

RSTP или как его еще называют в более развернутом виде Rapid spanning tree protocol, по сути тот же STP но более быстрый где время сходимости мгновение, вы потеряете один пакет.

Включить RSTP можно командой с режиме глобального конфигурирования, где нужно изменить режим на rapid-pvst.

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

Источник

ИТ База знаний

Полезно

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Продвинутое руководство по Spanning Tree: Toolkit

Выходим на новый уровень. Для изучения следующей темы вы уже должны хорошо понимать связующее дерево. Связующее дерево (Spanning Tree Protocol STP) — это важная тема. Есть много вещей, которые могут пойти не так, и в этой статье мы рассмотрим ряд инструментов, которые мы можем использовать для защиты нашей топологии связующего дерева.

Онлайн курс по Кибербезопасности

Изучи хакерский майндсет и научись защищать свою инфраструктуру! Самые важные и актуальные знания, которые помогут не только войти в ИБ, но и понять реальное положение дел в индустрии

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

UplinkFast и BackboneFast не требуются для rapid spanning tree, поскольку оно уже реализовано по умолчанию. Мы начнем с BPDUguard:

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

В топологии выше мы имеем идеально работающую топологию остовного дерева. По умолчанию связующее дерево будет отправлять и получать BPDU на всех интерфейсах. В нашем примере у нас есть компьютер, подключенный на интерфейсе fa0/2 коммутатора B. Есть кто-то, кто с враждебными намерениями мог бы запустить инструмент, который сгенерирует BPDU с превосходящим ID моста. Что же произойдет- так это то, что наши коммутаторы будут считать, что корневой мост теперь может быть достигнут через коммутатор B, и у нас будет повторный расчет связующего дерева. Звучит не очень хорошо, правда?

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Можно поставить человека (хакера) в середине топологии для атаки так, чтобы никто не знал. Представьте себе, что хакер подключает свой компьютер к двум коммутаторам. Если хакер станет корневым мостом, то весь трафик от коммутатора А или коммутатора C к коммутатору В будет проходить через него. Он запустит Wireshark и подождет, пока произойдет чудо.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

BPDUguard гарантирует, что, когда мы получаем BPDU на интерфейс, интерфейс перейдет в режим err-disable.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Чтобы продемонстрировать работу BPDUguard будем использовать два коммутатора. Настроем интерфейс fa0/16 коммутатора B так, что он перейдет в режим err-disable, если он получит BPDU от коммутатора C.

Вот как вы включаете его в интерфейсе. Имейте в виду, что обычно вы никогда не будете делать это между коммутаторами. Вы должны настроить это на интерфейсах в режиме доступа, которые подключаются к компьютерам.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

А-а. вот и наш интерфейс.

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

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Это полезная команда, позволяющая проверить свою конфигурацию. Вы видите, что portfast и BPDUGuard были включены глобально.

BPDUGuard переведет интерфейс в режим err-disable. Кроме того, можно фильтровать сообщения BPDU с помощью BPDUfilter. BPDUfilter может быть настроен глобально или на уровне интерфейса и есть разница:

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

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Для демонстрации работы BPDUfilter мы будем снова использовать коммутатор B и коммутатор C.

Он перестанет посылать BPDU и будет игнорировать все, что будет получено.

Вы не увидите никаких интересных сообщений, но если вы включите отладку BPDU, то заметите, что он больше не отправляет никаких BPDU. Если вы хотите, вы также можете включить отладку BPDU на коммутаторе C, и вы увидите, что нет ничего от коммутатора B.

Давайте избавимся от команды BPDUfilter на уровне интерфейса.

Вы также можете использовать глобальную команду для BPDUfilter. Это позволит включить BPDUfilter на всех интерфейсах, которые имеют portfast.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Рассмотрим с вами конфигурацию с коммутатором B и коммутатором C.

Давайте убедимся, что коммутатор C не является корневым мостом.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Вот как мы включаем RootGuard на интерфейсе.

Не забудьте включить отладку, если вы хотите увидеть события.

Давайте перенастроим коммутатор B, изменив приоритет на наименьшее возможное значение 0 на коммутаторе C. Он теперь должен стать корневым мостом.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Вот так коммутатор B не будет принимать коммутатор C в качестве корневого моста. Это заблокирует интерфейс для этой VLAN.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Вот еще одна полезная команда, чтобы проверить, работает ли RootGuard.

Связующее дерево становится все более безопасным с каждой минутой! Однако есть еще одна вещь, о которой мы должны подумать…

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Если вы когда-либо использовали волоконные кабели, вы могли бы заметить, что существует другой разъем для передачи и приема трафика. Если один из кабелей (передающий или принимающий) выйдет из строя, мы получим однонаправленный сбой связи, и это может привести к петлям связующего дерева. Существует два протокола, которые могут решить эту проблему:

Давайте начнем с того, что внимательно рассмотрим, что произойдет, если у нас произойдет сбой однонаправленной связи.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Представьте себе, что между коммутаторами волоконно-оптические соединения. На самом деле имеется другой разъем для передачи и приема. Коммутатор C получает BPDU от коммутатора B, и в результате интерфейс стал альтернативным портом и находится в режиме блокировки.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Теперь что-то идет не так. transmit коннектор на коммутаторе B к коммутатору C был съеден мышами. В результате коммутатор C не получает никаких BPDU от коммутатора B, но он все еще может отправлять трафик для переключения между ними.

Поскольку коммутатор C больше не получает BPDU на свой альтернативный порт, он перейдет в forwarding режим. Теперь у нас есть one way loop (петля в один конец), как указано зеленой стрелкой.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Один из методов, который мы можем использовать для решения нашего однонаправленного сбоя связи — это настройка LoopGuard. Когда коммутатор отправляет, но не получает BPDU на интерфейсе, LoopGuard поместит интерфейс в состояние несогласованности цикла и заблокирует весь трафик!

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Мы снова будем использовать эту топологию для демонстрации LoopGuard.

Используйте команду spanning-tree loopguard по умолчанию, чтобы включить LoopGuard глобально

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Обычно это вызвало бы петлю, но, к счастью, у нас есть настроенный LoopGuard. Вы можете увидеть это сообщение об ошибке, появляющееся в вашей консоли. Проблема решена!

Если вы не хотите настраивать LoopGuard глобально, вы т можете сделать это на уровне интерфейса.

Другой протокол, который мы можем использовать для борьбы с однонаправленными сбоями связи, называется UDLD (UniDirectional Link Detection). Этот протокол не является частью инструментария связующего дерева, но он помогает нам предотвратить циклы.

Проще говоря, UDLD — это протокол второго уровня, который работает как механизм keepalive. Вы посылаете приветственные сообщения, вы их получаете, и все прекрасно. Как только вы все еще посылаете приветственные сообщения, но больше их не получаете, вы понимаете, что что-то не так, и мы блокируем интерфейс.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Убедитесь, что вы отключили LoopGuard перед работой с UDLD. Мы будем использовать ту же топологию для демонстрации UDLD.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Существует несколько способов настройки UDLD. Вы можете сделать это глобально с помощью команды udld, но это активирует только UDLD для оптоволоконных линий связи! Существует два варианта для UDLD:

Когда вы устанавливаете UDLD в нормальное состояние, он помечает порт как неопределенный, но не закрывает интерфейс, когда что-то не так. Это используется только для того, чтобы «информировать» вас, но это не предотвратит циклы.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Мы будем использовать коммутатор B и C, чтобы продемонстрировать UDLD. Будем использовать агрессивный режим, чтобы мы могли видеть, что интерфейс отключается, когда что-то не так.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

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

Это творческий способ создавать проблемы. При фильтрации MAC-адреса UDLD он будет думать, что существует сбой однонаправленной связи!

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это Вы увидите много отладочной информации, но конечным результатом будет то, что порт теперь находится в состоянии err-disable. spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

LoopGuard и UDLD решают одну и ту же проблему: однонаправленные сбои связи.

Они частично пересекаются, но есть ряд различий, вот общий обзор:

Есть еще одна последняя тема, которую хотелось бы объяснить, это не протокол связующего дерева, но речь идет о избыточных ссылках, поэтому я оставлю ее здесь. Это называется FlexLinks.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Вот в чем дело: при настройке FlexLinks у вас будет активный и резервный интерфейс. Мы настроим это на коммутаторе C:

При настройке интерфейсов в качестве FlexLinks они не будут отправлять BPDU. Нет никакого способа обнаружить петли, потому что мы не запускаем на них связующее дерево. Всякий раз, когда наш активный интерфейс выходит из строя, резервный интерфейс заменяет его.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

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

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Давайте закроем активный интерфейс.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Вы можете видеть, что fa0/16 стал активным. Вот и все.

Полный курс по Сетевым Технологиям

В курсе тебя ждет концентрат ТОП 15 навыков, которые обязан знать ведущий инженер или senior Network Operation Engineer

Источник

Rapid STP

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Протоколы семейства STP обычно несильно будоражат умы инженеров. И в большинстве своём на просторах интернета чаще всего сталкиваешься с деталями работы максимум протокола STP. Но время не стоит на месте и классический STP всё реже встречается в работе и в различных материалах вендоров. Возникла идея сделать небольшой обзор ключевых моментов RSTP в виде FAQ. Всем, кому интересен данный вопрос, прошу под кат.

Что настраивать STP, RSTP или MST?

В современных стандартах протокол STP уже нигде не фигурирует. Известный всем 802.1d в последней редакции (802.1d-2004) описывает протокол RSTP. При этом MST перекочевал в 802.1q (802.1q-2014). Как мы помним, ранее RSTP описывался стандартом 802.1w, а MST — 802.1s.

RSTP и MST имеют существенно меньшее время сходимости. Они намного быстрее перестраивают топологию сети в случае отказа оборудования или каналов связи. Время сходимости для ряда отказов этих протоколов меньше 1 секунды против 30+ секунд в случае STP. Поэтому классический STP рекомендуется использовать только там, где задействуется старое оборудование, не поддерживающее более современные протоколы.

MST в своей работе использует алгоритмы RSTP. Но в отличие от RSTP, MST позволяет создавать отдельную топологию (instance) STP для группы VLANов. В случае обычного RSTP у нас на все VLANы одна общая топология. Это не очень удобно, так как не позволяет даже в ручном режиме балансировать трафик по разным каналам. А значит, мы теряем, как минимум половину пропускной способности в случае наличия избыточных путей.

Некоторые вендоры (в частности Cisco) предлагают ещё одну разновидность быстрого протокола STP – Rapid Per-VLAN Spanning Tree (PVRST+). В этом случае для каждой виртуальной сети строится своя топология, что позволяет более эффективно утилизировать каналы. Основной минус такого подхода – это ограничение на максимальное количество таких топологий. Для обеспечения работы каждой топологии устройство тратит аппаратные ресурсы. А они не безграничны. Например, в коммутаторах Cisco 2960 поддерживается максимум 128 «инстансов» STP.

Таким образом, MST является хорошей альтернативой между стандартным RSTP и проприетарным PVRST+. Особенно если наша сеть построена на базе коммутаторов разных производителей. Стоит заметить, что все три вариации быстрого STP совместимы друг с другом.

В дальнейшем, упоминая RSTP, мы будем подразумевать в том числе и его расширения MST/PVRST+.

Какие технологии обеспечивают быстроту реакции в работе RSTP?

RSTP в первую очередь опирается на работу механизмов, не привязанных к стандартным таймерам. Именно поэтому он позволяет получить существенно меньшее время сходимости сети. Можно выделить следующие улучшения в работе RSTP по сравнению с классическим STP:

В классическом варианте BPDU «генерит» в сети только корневой коммутатор. Все остальные устройства лишь ретранслируют его. Таким образом, отсутствие BPDU от вышестоящего устройства значит, что проблема может быть в любом месте между данным устройством и корневым коммутатором. Поэтому приходилось ждать достаточно долго (MaxAge=20 сек) прежде чем, смириться с тем, что что-то пошло не так и нужно перестраивать топологию.

В случае RSTP сообщения BPDU стали выполнять роль Hello-пакетов. Теперь потеря трёх таких пакетов (а это 2*3=6 сек) означает, что пора задуматься об изменениях в топологии.

В классическом STP порт, который должен стать корневым, проходит все стадии по переходу в режим передачи (Listening → Learning → Forwarding), что занимает более 30 секунд.

Прежде чем коснуться механизма Proposal/Agreement, нужно отметить два разных типа портов в RSTP: пограничный порт (Edge port) и не пограничный (non-Edge port). В Edge порт подключаются оконечные устройства (ПК, серверы, в ряде случаев маршрутизаторы и пр.). В не Edge-порт подключаются другие коммутаторы, участвующие в топологии STP.

Тип порта Edge задаётся вручную. Коммутатор не может быстро определить, кто к нему подключен: обычный хост или коммутатор. Конечно, он мог бы ориентироваться на наличие BPDU на этом порту. Но по стандарту коммутатор должен обязательно подождать минимум 15 секунд (Forward delay) прежде, чем решить, что на его порт так и не пришло ни одно сообщение. А это слишком долго. Поэтому право определить, что подключено к порту, доверили человеку.

На коммутаторах Cisco тип порта Edge задаётся командой spanning-tree portfast.

RSTP использует механизм Proposal/Agreement для быстрого переходя портов из состояния Discarding в состояние Forwarding. Этот механизм запускается, когда у коммутатора меняется Root Port (как минимум при включении в сеть). В этом случае он выключает все порты, не являющиеся Edge-портами. Об этом оповещает вышестоящий коммутатор (куда как раз смотрит Root port), после чего включает в режим Forwarding только Root port. Остальные порты (не Edge) находятся в заблокированном состоянии, пока не произойдёт одно из двух:

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

RSTP отличается от STP тем, что состояние порта отвязали от его роли. Это позволило описать роль порта в топологии сети без оглядки на его состояние. А значит, обладать лучшим видение топологии сети и возможностью оперативно реагировать на изменения в ней. Так появились альтернативный (alternative) и резервный (backup) порты. Альтернативный порт – замена корневому. Через него может быть достигнут корневой коммутатор, но при этом данный порт не имеет роли корневого (т.е. получает BPDU c худшей метрикой) и не является назначенным (т.е. не является лучшим в данном сегменте сети для достижимости корневого устройства).

В протоколе RSTP альтернативный порт переходит в состояние передачи сразу же после того, как откажет корневой. Такого же поведения можно добиться в классическом STP, используя проприетарные доработки. Например, Cisco предлагает для этих целей технологию UplinkFast.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

В такой ситуации, если у устройства есть другой маршрут к корневому коммутатору, в классическом STP порт, который ранее был заблокирован, пройдёт все стадии и переключится в режим передачи только через 50 секунд (MaxAge + 2x Forward Delay).

В случае RSTP коммутатор немедленно оценит полученный BPDU (в RSTP нет MaxAge таймера) и начнёт передавать свои, выставив флаг Proposal. Получив такое BPDU, коммутатор, потерявший связь с «рутом», примет участие в механизме Proposal/Agreement, так как у него сменился корневой порт. А дальше достаточно оперативно порты на обоих коммутаторах перейдут в состояние передачи.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

Классический STP считает, что топология изменилась, если порт перешёл из состояния заблокированный в состояние передачи или наоборот. Так как изменение топологии может привести к тому, что MAC адреса станут доступны через другие порты (а значит, коммутатор будет слать пакеты не туда), запускается процедура оповещения всех устройств о таком событии. Для этого рассылается сообщение Topology Change Notification (TCN). Получив которое, коммутатор меняет время старения MAC адресов со значения по умолчанию (300 сек) на 15 сек (Forward Delay). Сообщение TCN рассылается в два этапа. Сначала коммутатор, обнаруживший изменения в топологии, отправляет его в сторону корневого коммутатора. Далее корневой коммутатор, получив такое сообщение, узнаёт об изменении в сети и рассылает TCN сообщение (BPDU с соответствующим флагом) уже всем остальным. Двухуровневая схема необходима, так как BPDU в классическом варианте отправляется только корневым коммутатором.

В случае RSTP изменением в топологии считается только переход порта в режим передачи. Причём учитываются порты, которые не являются пограничным (non-edge port). Это и логично, так как переход порта в заблокированное состояние автоматически делает MAC адреса за ним больше не доступными. Как только обнаружено изменение топологии, коммутатор рассылает через все порты (корневой и назначенные) BPDU c флагом TC. Такое сообщение быстро распространяется по сети. Получив его, коммутаторы удаляют из таблицы все MAC адреса доступные через не edge порты, за исключением того, где был получен BPDU c флагом TC.

Edge порт никогда не вызывает изменений в топологии, а также для такого порта не сбрасываются MAC адреса в случае получения BPDU c флагом TC.

Почему RSTP иногда «тормозит» и переводит порт в режим передачи трафика только через несколько десятков секунд?

RSTP в своей работе использует обычные таймеры в следующих случаях:

Деление на порты Edge и non-Edge характерно не только для RSTP, но и для STP. Но в случае STP – это вендорная доработка протокола, нежели требования стандарта.

Основные «ЗА» включения на порту режима Edge (для оборудования Cisco – это portfast) в случае использования протокола STP:

С настройкой порта в режиме Edge нужно быть аккуратными.

Давайте посмотрим на поведение коммутатора Cisco с портом в режиме portfast (Edge). Порт сразу переходит в режим передачи. Но он продолжает участвовать в передаче BPDU и главное продолжает слушать сеть на наличие BPDU от других устройств, на случай если по ошибке к нему подключили другой коммутатор. Если вдруг приходит BPDU, порт теряет свое состояние portfast и проходит стандартные фазы RSTP. Так в чём же может быть проблема?

BPDU отправляются в диапазоне от 0 до 2 секунд после включения порта. Плюс можно добавить к этому время распространения BPDU по сети (актуально для STP). Поэтому в течение нескольких секунд в сети может быть петля. Если трафика будет очень много, этих секунд может оказаться достаточно, чтобы широковещательный шторм, порождённый петлёй, «убил» control-plane нашего коммутатора. Чтобы этого не допустить рекомендуется portfast настраивать в связке с дополнительными технологиями, например: BPDU Guard и storm-control.

Если сеть многовендорная, причём часть оборудования вообще не поддерживает STP ни в каком виде, всё будет плохо?

Это вопрос не совсем связан с работой RSTP, но всё же я решил его включить. Как это ни странно, подобные вопросы периодически возникают у наших заказчиков. Поэтому есть смысл на нём остановиться.

Если коммутатор не поддерживает STP ни в каком виде, что же он будет делать с BPDU пакетами? Ответ прост – передавать такие пакеты через все порты. В качестве MAC адреса назначения BPDU пакета STP и RSTP устанавливают адрес 0180.C200.0000, который является multicast адресом. Такой BPDU пакет передаётся в рамках VLAN 1.

Протокол MST данные обо всех топологиях упаковывает в один BPDU (кстати, именно поэтому максимальное количество инстансов для MST — 64). В качестве адреса назначения используется стандартный MAC-адрес 0180.C200.0000.

Протоколы PVST+ и PVRST+ в своей работе используют два типа BPDU:

Ещё один занятный момент связан с тем, что даже если мы исключим VLAN 1 из транка между коммутаторами, BPDU для первого VLAN всё равно будут передаваться.

В итоге, если в нашей топологии будет коммутатор, не поддерживающий STP, он будет выглядеть для топологии STP, как обычный канал связи.

spanning tree fast link option что это. Смотреть фото spanning tree fast link option что это. Смотреть картинку spanning tree fast link option что это. Картинка про spanning tree fast link option что это. Фото spanning tree fast link option что это

А что произойдёт, если соединить два порта между собой на коммутаторе SW1 (т.е. сделать кольцо). Наша сеть погибнет? Есть большой шанс, что нет. В этом случае Root SW получит собственный BPDU на тот же порт, с которого его отправил. После этого он сразу же его заблокирует. И петля останется «жить» только в пределах коммутатора SW1. Но положительный исход возможен, только если Root SW раньше времени не «захлебнётся» от широковещательного шторма, появившегося вследствие петли на SW1. Поэтому лучше не использовать в сети коммутаторы, не поддерживающие STP.

Нужен ли STP/RSTP/MST/… в сети, если там нет петель?

Безусловно. Если петли нет сейчас, не факт, что она не появится в будущем. Например, из-за простой человеческой ошибки, когда один access-порт коммутатора подключается к другому access-порту того же устройства.

Данный FAQ не претендует на полноту. Он носит скорее ознакомительный характер и задаёт некий вектор дальнейших изысканий по тому или иному вопросу, связанному с работой современных протоколов семейства STP.

Источник

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *