Данная страница находится в разработке. Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.
Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.
На этой странице описывается процедура настройки различных версий протокола Spanning Tree на коммутаторах Cisco.
Содержание
[править] Петли в сети
Петли в коммутируемой сети могут возникнуть по нескольким причинам:
[править] Настройки по умолчанию
Настройки STP по умолчанию (для коммутатора 3550):
Настройка
Значение по умолчанию
Состояние
Включен в VLAN 1
Режим spanning-tree
PVST+ (Rapid PVST+ и MSTP выключены)
Приоритет коммутатора
32768
Приоритет портов (настраивается для каждого порта отдельно)
128
Стоимость порта (настраивается для каждого порта отдельно)
Приоритет порта в VLAN (настраивается для каждого VLAN отдельно)
128
Стоимость порта в VLAN (настраивается для каждого VLAN отдельно)
Hello time: 2 секунд
Forward-delay time: 15 секунд
Maximum-aging time: 20 секунд
Transmit hold count: 6 BPDU
[править] Настройка PVST+
Включить PVST+ в VLAN (по умолчанию включен):
[править] Настройка Rapid PVST+
Включение Rapid PVST:
[править] Настройка MST
Задачи по настройке MST:
[править] Опциональные настройки STP
Функции PortFast, BPDU guard, BPDU filtering, EtherChannel guard, root guard или loop guard могут быть настроены в режиме PVST+, rapid PVST+ или MSTP.
Функции UplinkFast, BackboneFast или cross-stack UplinkFast могут быть настроены в режиме rapid PVST+ или MSTP, но они будут оставаться выключенными (inactive) до тех пор пока режим не будет изменен на PVST+.
[править] Настройки по умолчанию опциональных функций
Функция
Значение по умолчанию
Port Fast, BPDU filtering, BPDU guard
Глобально выключены
UplinkFast
Глобально выключена
Cross-Stack UplinkFast (CSUF)
Выключена на всех интерфейсах
BackboneFast
Глобально выключена
EtherChannel guard
Глобально включена
Root guard
Выключена на всех интерфейсах
Loop guard
Выключена на всех интерфейсах
[править] Port Fast
Portfast — функция, которая позволяет порту пропустить состояния listening и learning и сразу же перейти в состояние forwarding. Настраивается на портах уровня доступа, к которым подключены пользователи или сервера.
Фактически, PortFast меняет две вещи в стандартной работе STP:
Когда на интерфейсе включен PortFast, он все равно отправляет BPDU.
Но, если включить PortFast на портах, которые соединены с другими коммутаторами, то есть риск создания петли. Так как, после получения BPDU порт остается в состоянии Forwarding. За это время, уже может образоваться петля.
Поэтому, в связке с PortFast, как правило, используется BPDUGuard (хотя и это, конечно же, не даст 100% гарантии, что не будет петли).
[править] Настройка Port Fast
Синтаксис команды для настройки Port Fast на интерфейсе:
Настройка Port Fast на access-интерфейсе:
Настройка Port Fast на интерфейсе, который работает в режиме trunk (тегированый порт):
Если на интерфейсе, который работает в режиме транка выполнить команду без параметра trunk, то функция Port Fast не будет применена.
Функцию Port Fast можно настроить глобально на всех интерфейсах в режиме access:
Отключить Port Fast на интерфейсе:
[править] Просмотр информации о настройках Port Fast
Просмотр информации о статусе функции Port Fast на интерфейсе:
Просмотр информации о настройках spanning-tree на интерфейсе:
Если Port Fast была включена глобально на всех access-портах, то это можно посмотреть в суммарной информации о настройках STP на коммутаторе:
[править] UplinkFast
Проприетарное усовершенствование протокола 802.1D сделанное Cisco. В RSTP эта функция не используются, так как улучшения уже встроены в протокол.
После включения UplinkFast на коммутаторе:
Если основной RP выходит из строя, то коммутатор сразу переключается на запасной и переводит его в состояние forward.
Кроме того, UplinkFast позволяет коммутаторам обновить записи в таблицах коммутации, без использования TCN. Вместо TCN коммутатор находит MAC-адреса всех локальных устройств и отправляет один multicast фрейм с каждым MAC-адресом в поле отправитель. Удаляются также остальные записи в таблицы коммутации самого коммутатора.
[править] BackboneFast
Проприетарное усовершенствование протокола 802.1D сделанное Cisco. В RSTP эта функция не используются, так как улучшения уже встроены в протокол.
Позволяет быстрее найти альтернативный путь, после изменения топологии. Для того чтобы функция работала, необходимо включить её на всех коммутаторах в сети.
[править] Безопасность STP
[править] BPDU Guard
BPDU Guard — функция, которая позволяет выключать порт при получении BPDU.
Может быть включена глобально на коммутаторе или на интерфейсе, у этих режимов есть некоторые отличия:
[править] Настройка BPDU Guard
Включение BPDU Guard глобально на коммутаторе, на портах с включенной функцией Port Fast:
Хотя в команде, которая включает BPDU Guard глобально на коммутаторе, есть параметр portfast, применение этой команды не включает функцию Port Fast. Она должна быть настроена отдельно.
Настройка BPDU Guard на интерфейсе:
[править] Просмотр информации о настройках BPDU Guard
Просмотр информации о настройках spanning-tree на интерфейсе:
Если функция BPDU Guard была включена глобально на коммутаторе, то это можно посмотреть в суммарной информации о настройках STP на коммутаторе:
[править] BPDU Filtering
BPDU Filtering — после включения функции, порт не принимает и не отправляет BPDU.
Может быть включена глобально на коммутаторе или на интерфейсе, у этих режимов есть некоторые отличия:
Возможные комбинации при включении BPDU Filtering глобально или на интерфейсе:
Настройка на интерфейсе
Глобальная настройка
Состояние PortFast
Состояние PortFast BPDU Filtering
По умолчанию
Включена
Включена
Включена
По умолчанию
Включена
Отключена
Отключена
По умолчанию
Отключена
Не применимо
Отключена
Отключена
Не применимо
Не применимо
Отключена
Включена
Не применимо
Не применимо
Включена
[править] Настройка BPDU Filtering
Включение BPDU Filtering глобально на коммутаторе, на портах с включенной функцией Port Fast:
Хотя в команде, которая включает BPDU Filtering глобально на коммутаторе, есть параметр portfast, применение этой команды не включает функцию Port Fast. Она должна быть настроена отдельно.
Настройка BPDU Filtering на интерфейсе:
[править] Просмотр информации о настройках BPDU Filtering
Просмотр информации о настройках spanning-tree на интерфейсе:
Если функция BPDU Filtering была включена глобально на коммутаторе, то это можно посмотреть в суммарной информации о настройках STP на коммутаторе:
[править] Root Guard
Включение Root Guard на интерфейсе (переводит порт в роль designated):
Посмотреть какие порты в состоянии inconsistent:
[править] Loop Guard
Одна из проблем с STP в том, что само оборудование, которое его использует, может быть причиной сбоя и создания петли. Для предотвращения подобных сбоев и была создана функция Loop Guard.
Описание Loop Guard
Как только на порт снова начинают поступать BPDU порт переводится в состояние согласно содержанию пакетов BPDU, а в логах появится следующее сообщение:
На каких портах следует включать Loop Guard? Наиболее очевидный ответ blocking. Однако это не всегда правильно. Loop guard должен быть включен на non-designated портах (более точно root и alternate портах).
По умолчанию Loop guard выключен. Для того что бы его включить используйте следующие команды:
Что бы включить Loop guard глобально:
Команда для проверки статуса Loop Guard:
[править] UDLD
[править] Совместимость и отличия функций
[править] Loop Guard в сравнении с UDLD
Функции Loop Guard и UDLD (Unidirectional Link Detection) частично совпадают друг с другом. Обе эти функции предназначены для борьбы с последствиями сбоев в функциональности STP. Однако есть небольшие отличия в функциональности.
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
Состояния портов:
1. Блокировка (blocking)
2. Прослушивание (listening)
3. Обучение (learning)
4. Передача (forwarding)
Настройка stp
Обща схема примера работы и настройки STP. Два коммутатора соединенных двумя линками, видно то STP уже работает и один порт у второго коммутатора погашен чтобы не было петли
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-01
Посмотрим на первом коммутаторе настройки stp. Логинимся и вводим команду
Видим, что это рутовый коммутатор и все порты в состоянии передача.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-02
Смотрим, тоже на втором коммутаторе.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-03
Видим, что это не рутовый коммутатор. Интерфейс Fa0/2 является рутовым портом. Fa0/3 ждет в запасе.
Теперь предположим, что интерфейс Fa0/2 упал, что будет. Для примера выключим его. Заходим на 1 коммутатор.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-04
Видим, что линк пропал
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-05
Зайдем в этот момент на второй коммутатор и посмотрим состояние портов.
Видим, что порт Fa0/3 в состоянии обучения
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-06
теперь в состоянии передачи, прошло около 20 секунд и линк поднялся.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-07
Восстановим на первом коммутаторе Fa0/2 командой
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-08
И видим, что все мгновенно восстановилось.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-09
Все же переключение в 20 секунд очень нехорошо, поэтому уже придуманы улучшенные версии протокола rstp и lacp, но о них в следующих публикациях.
Как настроить RSTP на коммутаторах Cisco
RSTP или как его еще называют в более развернутом виде Rapid spanning tree protocol, по сути тот же STP но более быстрый где время сходимости мгновение, вы потеряете один пакет.
Включить RSTP можно командой с режиме глобального конфигурирования, где нужно изменить режим на rapid-pvst.
Все теперь при падении одного линка, время схождения между коммутаторами будет 1 секунда, очень быстро, как видите RSTP, гораздо лучше STP и настраивается одной командой.
Тренинг Cisco 200-125 CCNA v3.0. День 37. STP: выбор Root Bridge, функции PortFast и BPDU guard. Часть 1
Прежде чем начать урок, хочу сказать, что на нашем сайте теперь действует система баллов My Points. Заработанные баллы можно потратить на оплату заказов в нашем онлайн-магазине. Баллы можно заработать, участвуя в наших CCNA-тестах, посещая сайт, привлекая новых пользователей и т.д.
Сегодня мы продолжим изучение тем согласно расписанию Cisco и рассмотрим такие вопросы: 1.3b «Выбор корневого свитча STP», 1.4 «Настройка, проверка и неполадки дополнительных функций STP», 1.4a «PortFast» и 1.4b «BPDU guard».
Не зависимо от вида, или версии протокола STP, при его реализации выполняются 3 обязательных шага: выбор корневого свитча, определение наилучшего маршрута к корневому свитчу и блокировка всех остальных маршрутов.
Выбор корневого свитча (по старой терминологии – корневого моста) осуществляется по приоритету, и если вы не знаете, что это такое, то должны посмотреть предыдущий видеоурок, в котором я об этом рассказывал. После того, как один из свитчей будет выбран как Root Bridge, все остальные свитчи будут пытаться найти к нему оптимальный маршрут на основе минимальной стоимости, об этом я тоже говорил в предыдущем видео. Если два маршрута имеют одинаковую стоимость, нужно обратить внимание на Bridge ID, об этом я расскажу позже. Третий шаг заключается в блокировке всех остальных путей, чтобы не допустить образование петель трафика. Рассмотрим эти три шага в действии.
Вы видите на экране типичную сеть из 8 свитчей, где я уже проставил приоритеты всех свитчей, для удобства они имеют одинаковые значения 32769, и MAC-адреса каждого свитча.
Как только эти свитчи включаются в сеть, первое, что они начнут делать – это делиться друг с другом сообщениями BPDU. Свитч А отправит сообщение по трем портам, к которым присоединены свитчи С, Е и B. Получив это сообщение, свитч С подумает: «свитч А имеет лучший Bridge ID, потому что хотя приоритеты у нас одинаковы, А лучше, чем С», и станет считать свитч А корневым. В случае с MAC-адресами выбор всегда выигрывает тот свитч, у которого адрес меньше, в мире STP это значит «лучше».
Далее свитч С вышлет обновление свитчу Е, в котором будет сказано: «корневым свитчем является свитч А, а мой Bridge ID равен 32769: ССС: ССС: ССС». Когда свитч Е получит этот фрейм BPDU, он скажет: «да, действительно, А лучше, чем мой Е», обновит этот BPDU своим Bridge ID и отправит его дальше по сети. Таким образом, через некоторое время все остальные 7 свитчей согласятся с тем, что А является корневым свитчем.
Следующий шаг состоит в том, что все эти свитчи начинают искать кратчайший путь к корневому свитчу. Предположим, все эти устройства соединены с помощью FastEthernet и стоимость каждого порта равна 19. Когда Root Bridge рассылает BPDU, в нем говорится: «я – корневой свитч, и стоимость маршрута ко мне равна 0», то есть рассылает присоединенным к нему свитчам нулевую стоимость маршрута.
Получив это сообщение на порт стоимостью 19, свитч С делает вывод, что стоимость маршрута к корневому свитчу для него составит 0+19= 19. Аналогичным образом поступают свитчи Е и B, получая такую же стоимость портов — 19.
Далее свитч С сообщает свитчу Е, что для него стоимость маршрута до корневого свитча равна 19. Свитч Е, получив этот BPDU на порт, связывающий его со свитчем С, определяет стоимость как сумму 19+19 и получает стоимость маршрута к Root Bridge на этом порту, равную 38. Свитч Е также отсылает BPDU свитчу С, который, получив этот фрейм, определяет стоимость порта со стороны Е тоже равную 38.
Далее свитч Е выбирает наименьшую стоимость двух своих портов, видит, что стоимость 19 лучше, чем стоимость 38, и отсылает фрейм BPDU свитчу F, сообщая, что его стоимость равна 19. Свитч F прибавляет эту стоимость к стоимости своего порта и получает стоимость обеих портов – обращенного к Е и обращенного к B – равную 19+19 = 38.
Постепенно все свитчи вычислят для всех своих портов стоимость маршрута до корневого свитча и выберут свой Root Port. Например, свитч А, сравнив стоимости двух задействованных портов 19 и 38, выберет стоимость 19 и назначит этот порт корневым портом Root Port.
Свитч Е будет сравнивать три задействованных порта со стоимостями 38, 19 и 57 и выберет верхний порт стоимостью 19 в качестве корневого. Свитч F сравнит стоимости двух портов 38 и 38 и увидит, что они равны. В этом случае он начнет сравнивать MAC-адреса свитчей Е и В, выберет лучший, то есть B, и назначит корневым портом порт, обращенный к этому свитчу.
Порт, подсоединенный к корневому свитчу напрямую, обычно становится корневым портом. Здесь могут быть нюансы, потому что в любом случае производится оценка стоимости, и если выбор стоит между портами Fast Ethernet и Gigabit Ethernet, корневой порт будет выбран на основе минимальной стоимости. Я уже говорил об этом в предыдущем видео, так что не буду повторяться. Остальные устройства нашей сети тоже произведут расчет стоимости маршрута и выберут свои Root Port, на схеме они обозначены маркером зеленого цвета.
Далее производится выбор назначенного порта Designated Port. Любой из портов свитча может стать назначенным портом, то есть портом, через который будет осуществляться резервная связь с корневым свитчем. Предположим, что канал, соединяющий свитч С с корневым свитчем А, будет поврежден. В этом случае свитч С лишится связи с корневым свитчем, так как утратит единственный связывающий их порт. У корневого свитча все порты — назначенные, находятся в состоянии Forwarding и не могут пребывать в состоянии Blocking, а у остальных свитчей назначенным становится порт, отвечающий за связь данного свитча с сегментом своей сети. В каждом сегменте сети может быть только один Designated Port и любая часть сети, в которой имеется корневой порт, должна иметь назначенный порт. Эти порты всегда находятся в состоянии Forwarding, и так же, как корневые порты, не могут находиться в состоянии Blocking.
Итак, сначала выбирается Root Port, а затем Designated Port – последние на схеме обозначены голубым цветом. У нас имеется три сегмента сети: это С-Е, F-E и D-G, где остались порты, роль которых никак не обозначена. Обратите внимание, что именно на этих участках сети могут возникнуть петли, поэтому их нужно логически рассоединить. Для этого на одном из концов сегмента должен находиться Blocking Port.
Рассмотрим первый сегмент сети: какой из свитчей должен иметь заблокированный порт – свитч С или свитч Е?
Для этого мы должны снова вернуться к стоимости и посмотреть, какой их этих свитчей имеет меньшую стоимость маршрута к корневому свитчу. Так как они оба имеют одинаковую стоимость, мы переходим к сравнению BID. Свитч С имеет меньший, то есть лучший BID, чем Е, то есть его MAC-адрес меньше MAC-адреса свитча Е. Поэтому порт «лучшего» свитча С выбирается в качестве Designated Port, а порт свитча Е становится Blocking Port. При этом совершенно не важно, что напротив назначенного порта находится заблокированный порт, главное, что в этом случае у нас не образуется петли.
Если представить, что у нас есть ещё одно устройство, присоединенное к свитчу, и оба устройства имеют одинаковую стоимость портов и одинаковые Bridge ID, то в этом случае критерием для сравнения становятся номера портов. Порт с меньшим номером становится Designated Port, а порт с большим номером становится Blocking Port.
Итак, существуют 3 критерия выбора назначенного порта: стоимость порта, BID и номер порта. На втором участке сети Blocking Port выбирается просто: стоимость 38 больше, чем 19, поэтому порт с меньшей стоимостью становится назначенным, а противоположный ему порт блокируется.
На третьем участке порты свитчей D и G имеют одинаковую стоимость 38+19 = 57, но поскольку MAC-адрес свитча D «лучше» адреса G, то его порт становится назначенным, а порт свитча G, соединенный с D, становится Blocking Port.
Напоминаю ещё раз: физически Blocking Port не отключается и продолжает принимать BPDU, он просто блокирует любой трафик для предотвращения петель. Сам заблокированный порт не отсылает BPDU, но продолжает их принимать и просчитывать.
Вот таким образом происходит выбор Root Bridge при реализации процесса STP. Эту схему можно упростить, представив, что заблокированных портов вообще не существует, тогда будет хорошо видно, что при данной топологии не возникает никаких петель трафика. Название «покрывающее дерево» произошло от того, что у нас имеется как бы корень — свитч, от которого отходят ветви – каналы связи с другими устройствами. Если вы посмотрите на Root Bridge как на корень дерева, то увидите, как от него отходят ветви к другим свитчам. Это самый простой способ запомнить, что собой представляет протокол STP.
Далее мы рассмотрим потребности в обеспечении RSTP. Я уже рассказывал об этой ускоренной версии и объяснял, в чем состоит разница между STP и RSTP. Если какой-то порт заблокирован, обычный STP ожидает 10 таймеров hello, что составляет 10х2 с = 20 с, еще по 15 с уходит на режимы Listening и Learning, то есть в целом проходит 50 с до того, как порт перейдет в состояние Forwarding.
Большинство новых устройств загружаются в течение 5-10 секунд. Предположим, вы пришли в офис, включили свой компьютер и не можете залогиниться в сети, потому что свитч, к которому он подсоединен, все ещё не перешел из состояния Blocking в состояние Forwarding. Это проблема, потому что вы можете не понять, в чем истинная причина неполадки.
Для устранения данной проблемы придумали временное легко осуществимое решение, называемое PortFast. Это функция протокола STP, которая позволяет Edged Port — порту с подключенным конечным пользователем сразу перейти к состоянию Forwarding, минуя состояния Listening и Learning.
Крайний порт – это порт, к которому подключено устройство, не отправляющее BPDU. То есть если у вас имеется сеть из 3-х свитчей, то речь идет о тех портах, к которым не подсоединены соседние свитчи. Обычно к Edged Port подключен компьютер или сервер. Поскольку эти порты не принимают BPDU или не должны их принимать технически, их можно превратить в нечто под названием PortFast. Это разработка Cisco, и для включения данной функции на порту свитча нужно использовать простую команду spanning-tree portfast. Фактически эта команда отключает STP на данном порту, который после блокировки сразу переходит в состояние forwarding, минуя переходные состояния.
Проблема состоит в том, что если вместо компьютера подключить к такому порту свитч, это потенциально может создать петлю. Для устранения этой проблемы придумали другую технологию под названием BPDUGuard. Для включения этой функции нужно зайти в настройки интерфейса и ввести команду spanning-tree bpduguard enable. Смысл BPDUGuard состоит в том, чтобы не позволить порту получать BPDU. Технически при получении такого фрейма интерфейс сразу же переходит в состояние error-disabled, то есть отключается.
Он будет находиться в таком состоянии до тех пор, пока сетевой администратор не устранит причину проблемы, например, не отключит свитч, ошибочно подключенный к PortFast. Таким образом, использование функции PortFast делает его быстрее, а использование BPDUGuard предотвращает получение сообщений BPDU и связанное с этим образование петель трафика. Как я сказал, это временные решения, направленные на сокращение времени передачи трафика. Далее вы видите таблицу, которая показывает отличия протокола STP от RSTP.
Эти протоколы использую разные стандарты IEEE, RSTP имеет меньшее время сходимости – до 21секунды против 50 секунд у STP. Если сеть состоит из свитчей, поддерживающих только RSTP, время сходимости будет равно 0с.
Если свитч RSTP соединен со свитчем STP, он может принимать BPDU в силу обратной совместимости, однако STP не поймет BPDU, посланные ему RSTP. В этом случае время сходимости увеличится до 21 с – суммы трехкратного периода таймера hello и длительности прослушивания Listening.
BPDU протоколов STP и RSTP очень похожи по своему строению, но детальное рассмотрение различий этих фреймов входит в тематику курса CCNA. Важно, что в протоколе RSTP при активации соединения full-duplex (точка/точка) задействуется механизм Proposal/Agreement, служащий для быстрого перехода к состоянию Forwarding.
Предположим, у нас имеются два соединенных друг с другом свитча стандарта RSTP. Первый свитч отсылает второму BPDU и затем блокирует свой порт. Второй свитч получает этот фрейм и сравнивает его информацию со своей таблицей – нет ли в нем информации о лучшей стоимости и лучшем маршруте к корневому свитчу. Если такая информация имеется, второй свитч отвечает первому сообщением Proposal с просьбой открыть для него «лучший» порт, при этом блокируя остальные свои порты. Получив Proposal второго свитча, первый отсылает ему свое согласие Agreement, после чего между этими двумя свитчами немедленно устанавливается связь. Таким образом, время сходимости в данном случае составит 0 секунд, в отличие от свитчей стандарта STP с показателем сходимости 50 секунд.
Свитч STP имеют 4 состояния, а RSTP — всего 3, это связано с тем, что состояние RSTP Discarding соответствует двум первым состояниям STP: Blocking и Listening. Остальные состояния одинаковы у обоих протоколов.
Порты STP могут играть три роли: корневой порт Root, порт назначения Designated и заблокированный порт Blocking. RSTP также имеют два первых порта, а заблокированный порт может быть двух видов: Alternate (альтернативный) и Backup (резервный).
Предположим, что в STP у нас есть 3 устройства: свитч А и хаб, к которому подсоединен другой свитч В. Поскольку они соединены через хаб, мы имеем общий сегмент сети. Оба свитча имеют корневые порты RP. По приоритету свитч А имеет Designated Port, а свитч В – Blocking Port.
Если в данной схеме вместо STP используется RSTP, нам нужно будет выбрать, какую роль играет заблокированный порт – альтернативного порта или резервного порта. Если мы выберем роль Alternate, то данный порт сможет принимать BPDU от другого моста, или свитча, то есть в случае отказа Root Port корневого свитча альтернативный порт В примет на себя его обязанности. Предположим, свитч В соединен двумя линиями с другим хабом. Поскольку у нас появился второй хаб, то у нас появился и второй сегмент сети, в котором тоже должен быть свой Blocking Port. Как я говорил, в случае STP будет выполнено сравнение по стоимости, BID и номеру порта, после чего «меньший» порт станет Designated, а больший – Blocking. Я обозначу второй заблокированный порт свитча В крестиком.
Этот порт не может быть альтернативным, потому что полученный им BPDU будет направлен самому себе на другой Blocking Port. Посмотрев на этот фрейм, свитч скажет: «я получил этот BPDU от самого себя, это значит, что он поступил из одного и того же общего сегмента сети. Я назначу этот порт резервным, потому что он может принимать только те BPDU, которые направлены мной самим». Таким образом, RSTP разделяет порты на альтернативные, способные принимать BPDU от других свитчей, и резервные, способные принимать свои собственные BPDU. В STP такого нет, потому что порт в обоих случаях будет играть роль Blocking. Я надеюсь, что вы поняли, в чем заключается разница между портами Alternate и Backup.