Управление таймерами STP (все версии)
Документ описывает назначение и настройку таймеров протоколов STP/RSTP/MSTP на коммутаторах семейства CIT 3200, с учётом особенностей различных версий протокола и их совместимости. Структура и подача материала основаны на ранее подготовленном документе по настройке таймеров STP и выводах команд настройки/мониторинга на CIT 3200.
Необходимые условия и предварительные требования
- Доступ к CLI коммутатора CIT 3200:
- Учетная запись с правами перехода в режим глобального конфигурирования
- Активированный (вкюченый) протокол STP в глобальной конфигурации.
Версии STP, в которых применимы описываемые команды
- STP (IEEE 802.1D) — классический Spanning Tree.
- RSTP (IEEE 802.1W) — Rapid Spanning Tree, ускоренная сходимость.
- MSTP (IEEE 802.1S) — Multiple Spanning Tree
По умолчанию на CIT 3200 используется режим MSTP:
Switch# show stp
Stp Mode : mstp
...
Bridge Times : Hello 2s MaxAge 20s FwDly 15s MaxHop 20 Timer Factor 6
...
Stp Pathcost-standard : dot1t
...
В дальнейшем под термином STP понимается семейство протоколов STP/RSTP/MSTP, если явно не указано конкретное название стандарта.
Обзор таймеров STP на CIT 3200
Глобальные таймеры STP, настраиваемые в режиме config-stp:
stp hello-time— интервал отправки BPDU Hello (в секундах)stp max-age— максимальный «возраст» BPDU (в секундах)stp forward-delay— задержка перед переходом порта в состояние forwardingstp max-hops— максимальное количество «прыжков» BPDU (используется в RSTP/MSTP)stp timer-factor— время ожидания BPDU перед началом перечета топологии в секундахstp migration-time— таймер миграции режима (RSTP/STP) для взаимодействия со старыми устройствамиstp tc-hold-off— интервал подавления повторной обработки событий Topology Changestp transmit-limit— ограничение частоты отправки BPDU
Перечень настроек можно посмотреть в режиме конфигураии STP с помощью команды-подсказки list:
Switch(config)# stp
Switch(config-stp)# list
...
stp forward-delay (<4-30>|default)
stp hello-time (<1-10>|default)
stp max-age (<6-40>|default)
stp max-hops (<4-30>|default)
stp migration-time (<1-10>|default)
stp timer-factor (<1-20>|default)
stp tc-hold-off (<4-30>|default)
stp transmit-limit (<1-10>|default)
...
Назначение и особенности таймеров по версиям STP
1. Hello-time
Назначение: интервал отправки BPDU Hello корневым мостом и дальнейшей пересылки другими коммутаторами.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp hello-time <1-10 | default>
- Диапазон: 1–10 секунд.
0 Значение по умолчанию: 2 секунды (отражается в show stp / Bridge Times : Hello 2s ...).
Версии протокола:
- STP (802.1D) — один из ключевых таймеров; уменьшение hello-time ускоряет обнаружение изменений, но повышает нагрузку на CPU.
- RSTP (802.1W) — hello используется вместе с механизмами proposal/agreement; влияет на периодичность обновления состояния, но основная сходимость обеспечивается протоколом, а не изменением hello-time.
- MSTP (802.1S) — аналогично RSTP; используется для всех MSTI/CIST.
Рекомендация: на CIT 3200 обычно оставлять значение по умолчанию (2 с); изменение выполнять только при единых настройках по всему домену STP.
2. Max Age
Назначение: максимальное время жизни информации о корневом мосте, содержащейся в BPDU. Ограничивает диаметр дерева и влияет на обнаружение «тихих» отказов в классическом STP.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp max-age <6-40 | default>
* Диапазон: 6–40 секунд.
* Значение по умолчанию: 20 секунд (отражается в show stp / MaxAge 20s).
Версии протокола:
-
STP (802.1D)
-
Max Age фактически ограничивает время, в течение которого коммутатор считает информацию о корне актуальной.
- Рекомендованное соотношение:
MaxAge ≈ 10 × HelloTime. -
Уменьшение Max Age может ускорить реакцию на непрямые отказы (без Link Down), но требует аккуратной настройки и единообразия в домене.
-
RSTP (802.1W)
-
В RSTP основное обнаружение изменений происходит по событиям на порту (link up/down, сообщений TCN или отсуствию BPDU от вышестоящего коммутатора), а не по истечению Max Age.
-
Max Age в RSTP в большинстве случаев не влияет на время сходимости и в основном используется:
- для ограничения диаметра сети,
- для совместимости при подключении классических STP-устройств.
-
MSTP (802.1S)
-
Аналогично RSTP; используется для CIST и MSTI, но роль в сходимости ограничена.
Статус в новых версиях: В RSTP/MSTP таймер Max Age считается устаревшим как основной механизм реагирования на отказы и используется, главным образом, для совместимости и ограничений диаметра.
3. Forward Delay
Назначение: задержка, используемая для стадий Listening/Learning в классическом STP, чтобы стабилизировать топологию перед переходом порта в Forwarding.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp forward-delay <4-30 | default>
* Диапазон: 4–30 секунд.
* Значение по умолчанию: 15 секунд (отражается в show stp / FwDly 15s).
Версии протокола:
-
STP (802.1D)
-
Используется как базовый механизм защиты от петель после изменения топологии.
-
Уменьшение forward-delay теоретически ускоряет сходимость, но увеличивает риск кратковременных петель при большом количестве абонентских портов. Служит главным образом для заполнения таблицы коммутатции mac address-table и уменьшению рассылки кадров unknown-unicast.
-
RSTP (802.1W)
-
RSTP использует свои механизмы состояния портов (Discarding, Learning, Forwarding).
-
Forward Delay практически не используется как основной таймер сходимости, но:
- сохраняется для совместимости,
- может применяться при взаимодействии с 802.1D-соседями.
-
MSTP (802.1S)
-
Поведение аналогично RSTP: Forward Delay сохраняется в конфигурации, но его влияние на сходимость не существенно.
Статус в новых версиях: В RSTP/MSTP таймер Forward Delay фактически устарел как основной инструмент ускорения/замедления сходимости и используется для совместимости с 802.1D и защиты при переходных процессах.
4. Max Hops (только RSTP/MSTP)
Назначение: ограничивает количество «прыжков» (hop count) BPDU в домене RSTP/MSTP. Используется вместо механизма старения Max Age в классическом STP.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp max-hops <4-30 | default>
* Диапазон: 4–30.
* Значение по умолчанию: 20 (отражается как MaxHop 20 / RemainingHops в show stp information).
Версии протокола:
- Не используется в классическом STP (802.1D).
-
RSTP (802.1W)
-
При каждом прохождении BPDU через коммутатор счётчик hops уменьшается.
- Когда счётчик достигает нуля, информация считается устаревшей и BPDU не распространяется далее.
-
MSTP (802.1S)
-
Аналогичный механизм для CIST и MSTI.
Задача: заменить «время жизни» BPDU (Max Age) на количество хопов, что делает поведение более предсказуемым в больших доменах.
5. Timer Factor
Назначение: время устаревания актуальности топологии STP (значение по умолчанию - 6 секунд). Коммутатор ожидает получение STP BPDU кадров от вышестоящего в топологии коммутатора в промежуток времени Timer Facror = 3 * Hello Time (по умолчанию). После истечении этого времени и при отсутствии BPDU кадра, коммутатор считает, что в сети произошли изменения, Root Bridge перестал существовать в сети и запускает механизм перерасчета топологии.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp timer-factor <1-20 | default>
* Диапазон: 1–20.
* Значение по умолчанию: 6 (см. Bridge Times ... Timer Factor 6).
Версии протокола: Применяется к всем режимам STP/RSTP/MSTP в рамках реализации CIT 3200.
6. Migration Time (RSTP/MSTP – совместимость с STP)
Назначение: таймер, связанный с процессом миграции между режимами RSTP/MSTP и классическим STP при взаимодействии с соседями, которые передают STP (802.1D) BPDU.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp migration-time <1-10 | default>
* Диапазон: 1–10 секунд.
* Значение по умолчанию: 3 секунды (Stp Migration-time: 3).
Версии протокола:
-
Используется в режимах RSTP/MSTP для:
-
определения времени ожидания «новых» BPDU от соседа;
- решения, когда трактовать порт как подключённый к 802.1D-устройству и использовать старую модель взаимодействия.
Статус: таймер существенен только для RSTP/MSTP и имеет смысл главным образом при смешанных доменах (RSTP ↔ STP).
7. TC Hold-off (Topology Change Hold-off)
Назначение: ограничивает частоту обработки событий смены топологии (TC – Topology Change), чтобы избежать перегрузки при настабильности портов.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp tc-hold-off <4-30 | default>
* Диапазон: 4–30 секунд.
* Значение по умолчанию: 10 секунд (Stp Tc-hold-off: 10).
Версии протокола: Используется в рамках реализации RSTP/MSTP (и STP при необходимости), как защитный механизм.
Задача: уменьшение числа пересчётов и рассылок Topology Change BPDU при нестабильных линках.
8. Transmit Limit (ограничение скорости BPDU)
Назначение: ограничение числа BPDU, отправляемых коммутатором в секунду, для защиты от перегрузки (DoS, циклическая рассылка) и стабилизации работы STP.
- Команда:
text
Switch(config)# stp
Switch(config-stp)# stp transmit-limit <1-10 | default>
* Диапазон: 1–10 пакетов/сек.
* Значение по умолчанию: 6 пакетов/сек (Stp Transmit-limit: 6 packets/s).
Версии протокола: Применяется ко всем режимам STP/RSTP/MSTP на CIT 3200, как реализационный защитный механизм (стандартизованного таймера в IEEE нет).
Пример конфигурирования таймеров STP на CIT 3200
Switch# configure
Switch(config)# stp
Switch(config-stp)# stp mode rstp
Switch(config-stp)# stp hello-time 2
Switch(config-stp)# stp max-age 20
Switch(config-stp)# stp forward-delay 15
Switch(config-stp)# stp max-hops 20
Switch(config-stp)# stp timer-factor 6
Switch(config-stp)# stp migration-time 3
Switch(config-stp)# stp tc-hold-off 10
Switch(config-stp)# stp transmit-limit 6
Switch(config-stp)# end
Полный вывод конфигурации
Воспользуйтесь данным выводом для копирования/вставки конфигурации в окно терминала.
configure
stp
stp mode rstp
stp hello-time 2
stp max-age 20
stp forward-delay 15
stp max-hops 20
stp timer-factor 6
stp migration-time 3
stp tc-hold-off 10
stp transmit-limit 6
end
Switch#
````
---
## Изучение состояния устройства
В данном примере изучение таймеров производится в глобальном режиме для всего процесса STP.
### Просмотр глобальных таймеров конфигурации STP
```text
Switch# show stp
Version : MSTP_VB3.70.00.00
Oper Configuration
Stp Mode : rstp
Stp Trap : disable
Stp BPDU-guard : disable
Stp TC-protection : disable
Stp TC-protection Threshold : 2
Bridge Times : Hello 2s MaxAge 20s FwDly 15s MaxHop 20 Timer Factor 6
Format Selector : 0
Revision Level : 0
Stp Config Name : region
Stp TC-flush-arp : disable
Stp Migration-time : 3
Stp Pathcost-standard : dot1d-1998
Stp Tc-hold-off : 10
Stp Transmit-limit : 6 packets/s
Stp Link-detection : enable
Stp Edge-default : disable
Stp v-stp : disable
Stp flush : enable
Stp Instance max Number : 16
Stp Instance used Number : 1
Stp Interface max Number : 208
Stp Interface used Number : 32
Stp Interface Instance max Number : 3328
Stp Interface Instance used Number : 32
Instance Priority Vlans Mapped
0 32768 1-4094
Обратите внимание на строку Bridge Times и дополнительные параметры (Migration-time, Tc-hold-off, Transmit-limit).
Просмотр основных таймеров STP
Switch# show stp information
CIST Bridge : 32768.b4e0-2500-0356
Bridge Times : Hello 2s MaxAge 20s FwDly 15s RemainingHops 20 <--- остновные таймеры
CIST Root/ERPC : 32768.b4e0-2500-0080/ 2002
CIST RegRoot/IRPC : 32768.b4e0-2500-0356/ 0
CIST RootPort : 10GigaEthernet1/0/2
Number of TC : 1044
Last TC occurred : 10GigaEthernet1/0/2
RemainingHops 20 демонстрирует работу таймера/счётчика Max Hops в контексте RSTP/MSTP.
Рекомендации и лучшие практики
- Все коммутаторы STP-домена должны иметь одинаковые значения глобальных таймеров (Hello, MaxAge, ForwardDelay, MaxHops и т.д.).
-
В большинстве случаев рекомендуется оставлять таймеры по умолчанию и улучшать сходимость:
-
за счёт использования RSTP/MSTP вместо классического STP,
- за счёт правильного дизайна (root bridge, cost, port priority), а не агрессивной настройки таймеров.
- Изменение Hello-time / MaxAge может сократить время обнаружения изменений, но увеличивает нагрузку на процессор и риск ложных срабатываний.
- Таймеры MaxAge и ForwardDelay в RSTP/MSTP в основном используются для совместимости с 802.1D и ограничения диаметра; не стоит рассчитывать на них как на основной инструмент ускорения сходимости.
-
Таймеры MaxHops, Migration-time, Tc-hold-off и Transmit-limit:
-
имеют смысл в крупных или смешанных доменах (RSTP + старые STP-устройства);
- к измененю тайсеров следует подходить осторожно
История и версии
Команды в данной главе применимы для - аппаратных плаформ CIT серии L3200, с уставленной версией ПО v1.0.2. - являются актуальными с версии ПО v.1.0.2