Выбор пути в топологии STP
В статье описываются команды конфигурации, влияющие на построение топологии STP
Необходимые условия и предварительные требования
Информация представленная ниже является актуальной для всех версий STP, в случае присутсвия особенностей и/или отличний в реализации для одной из версий протокола об этом будет сказано дополнительно.
В домене STP трафик, между различичными коммутаторами проходит через центральный коммутатор топологии STP, имеющий специальную роль STP Root Bridge. Топологии MSTP расширяют понятия корневого коммутатора и вводят новые типы: основной CIST Root, региональный CIST Regional Root. Особенности работы выбора пути и построения топологии MSTP рассматриваются в соответвующих разделах документации.
Построение дерева MSTP для выделенного экземпляра (MSTP Instace) в регионе (MSTP Region) происходит аналогично построению дерева топологии STP.
Информация о версиях STP
Команды настройки, приведенные в данной статье совместимы с версиями STP:
- Spanning Tree Protocol (STP, IEEE 802.1D)
- Rapid Spanning Tree Protocol (RSTP, 802.1W)
- Multiple Spanning Tree Protocol (RSTP, 802.1s)
Допущения и общие данные: аббревиатура STP обозначает все семейство протоколов STP, если не указано иное.
Основная информация о применяемых технологиях
Построение топологии STP
После выбора STP Root Bridge - центральный коммутатор STP переводит все свои порты в режим передачи трафика. Все порты коммутатора STP Root Bridge (кроме "замкнутых" одним и тем же патч-кордом) находятся в роли выделенных (Designated port) и состоянии передачи трафика (STP Forwarding state).
Коммутаторы, в домене STP при наличии нескольких путей до корневого коммутатора Root Bridge, для передачи трафика выбирают специальный корневой порт, имеющий специальную роль - Root Port. Данный порт всегда находится в состоянии передачи тарфика (STP Forwarding state).
Каждый коммутатор, не являющийся STP Root Bridge, имеет только один Root Port, который направлен «вверх» по дереву топологии STP - в сторону Root Bridge.
Порты, смотрящие «вниз по топологии» STP имеют роль designated (выделенный) port и также находятся в состоянии передачи трафика (STP Forwarding state) Root и Designated порты передают продуктовый трафик, работают со служебными сообщениями BPDU.
Порты создающие кольцевые топологии имеют различные роли/состояния и в активной топологии заблокированы средствами STP и не передают продуктовый трафик. Роль и состояние неактивных портов имеют различные называния в зависимости от стандарта STP. Однако, в не зависимости от названия ролей и стандарта, данные порты
- получают служебные кадры BPDU и участвуют в построении/перестроении топологии STP
- не передают пользовательские и служебные данные
Выбор пути до Root Bridge
При подключении коммутатора в домен STP, коммутатор определяет Root порт используя следующую последовательность предпочтений:
- наименьшая общая стоимость пути до Root Bridge
- наименьший идентификатор промежуточного моста (Designated Bridge ID)
- наименьший приоритет вышестоящего порта (Designated Bridge Port Priority)
- наименьший ID вышестоящего порта (Designated Bridge Port ID)
При расчете общей стоимости пути также учитывается стоимость собственных интерфейсов.
Выбор стандарта стоимости STP портов
Для расчета стоимости пути до корневого коммутатора, используются две модели стоимости портов STP:
- dot1d-1998 — «короткая» шкала стоимости (classic STP cost, 16-бит, до 65 535)
- dot1t — «длинная» шкала стоимости (extended/long mode, 32-бит)
Ниже приведена таблица соответствий стандартных стоимостей STP-портов для двух режимов: Значения соответствуют таблице скоростей и стоимостей портов для IEEE 802.1D-1998 и 802.1t
| Скорость порта | Стоимость STP (dot1d-1998, short) | Стоимость STP (dot1t, long) |
|---|---|---|
| 10 Мбит/с | 100 | 2 000 000 |
| 100 Мбит/с | 19 | 200 000 |
| 1 Гбит/с | 4 | 20 000 |
| 10 Гбит/с | 2 | 2 000 |
| 20 Гбит/с | 1 | 1 000 |
| 100 Гбит/с | 1 | 200 |
| 1 Тбит/с | 1 | 20 |
| 10 Тбит/с | 1 | 2 |
На практике многие вендоры называют эти режимы, например,
dot1d-1998/shortиdot1t/long. Переключение стандарта стоимости (pathcost-standard) влияет только на дефолтные значения, вручную заданная стоимость порта всегда имеет приоритет.
Пример конфигурирования
Ниже рассматриваются параметры настройки STP влияющие на выбор пути.
Настройка глобальных параметров STP
Выбор параметра параметра stp pathcost-standard в режиме настройки (stp-config). Данный параметр влияет на общий режим определения стоимости интерфейсов и должен быть одинаково настроен на всех коммутаторах L2 сегмента сети, участвующих в построении STP топологии.
Для выбора модели стоимости портов введите следующую команду в режиме глобальной конфигурации:
Switch(config)# stp
Switch(config-stp)# stp pathcost-standard ?
dot1d-1998 Dot1d-1998 standard
dot1t Dot1t standard
Настройка по умолчанию - "длинный" формат стоимости (802.1t)
Индивидуальная настройка интерфейсов
Данные параметры настраиваются на индивидуальных интерфейсах. Индивидуальные настройки стоимости имеют приоритет. Могут быть использованы для приоритета выбора пути администратором.
- стоимости порта stp cost
- приоритета порта stp priority (настройка интерфейса)
Настройка Root Bridge ID Priority (stp priority) в режиме конфиугирования stp рассматривается в соответсвующем разделе руководства. Настройка Designated Bridge Port ID не производится, так как зависит от физического номера порта коммутатора.
Настройка стоимости порта
Switch# configure
Switch(config)# interface 10gigaethernet 1/0/1
Switch(config-10ge1/0/1)# stp path-cost ?
<1-200000> The value of path cost
default Default value auto negotiation by interface speed
Switch(config-10ge1/0/1)#stp path-cost 17
Switch(config-10ge1/0/1)#exit
Настройка приоритета порта
Приоритет порта назначается на вышестоящем коммутаторе (на портах направленных вниз по дереву) и определяет какой из портов нижестоящего коммутатора примет роль Root-Port.
Switch(config)# interface 10gigaethernet 1/0/2
Switch(config-10ge1/0/2)#stp priority ?
<0-240> Port priority in increments of 16
default Default value is 128
Switch(config-10ge1/0/2)#stp priority 112
Switch(config-10ge1/0/2)#end
Switch#
Полный вывод выполненных конфигураций
Вывод представлен в виде команды show running-config для каждого настраиваемого устройства.
configure
stp
stp mode rstp
stp pathcost-standard dot1d-1998
!
interface 10gigaethernet 1/0/1
stp edge-port enable
stp path-cost 17
!
interface 10gigaethernet 1/0/2
stp edge-port enable
stp priority 112
end
Изучение состояния устройства
Выполнение диагностических команд (команды show, debug, syslog) с указанием (выделением) строк, на которые следует обратить внимание для каждого устройства в конфигурации.
Приводятся промежуточные выводы диагностических команд с привязкой к этапам работы или настройки функции, таймерам, ключевым состояниям (где применимо или требуется).
Изучение состояния устройства рекомендуется производить в следующей последовательности: просмотр конфигурации, просмотр параметров работы
Просмот состояния в настройки в глобальном режиме
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 <---- модель стоимости пути (short)
Stp Tc-hold-off : 10
Stp Transmit-limit : 6 packets/s
<... вывод сокращен ...>
Просмот состояния в режим настройки интерфейса
Проверка состояния Uplink интерфейса
Стомость порта на интерфейсах направленных "вверх" по топологии оказывает влияет на построение дерева, но приоритет - не имеет значения.
Switch#show stp interface 10gigaethernet 1/0/1
--------[CIST Info]--------
CIST Bridge : 32768.b4e0-2500-0356
Bridge Times : Hello 2s MaxAge 20s FwDly 15s RemainingHops 20
CIST Root/ERPC : 32768.b4e0-2500-0080 / 2002 <---- ERPC - External Root Path Cost
CIST RegRoot/IRPC : 32768.b4e0-2500-0356 / 0 <---- IRPC - Internal Root Path Cost
CIST RootPort : 10GigaEthernet1/0/2
--------[PORT Info instance 0]--------
Description : 10ge1/0/1
Port Role : root
STP State : forward
Priority : 128
Port Cost(Dot1d-1998) : config=17 / active=17 <---- стомость порта = 17
<... вывод сокращен ...>
```
**Проверка состояния Dowplink интерфейса**
Стомость порта на интерфейсах направленных "вниз" по топологии не влияет на построение дерева, но влияет приоритет.
Switch#show stp interface 10gigaethernet 1/0/2 --------[CIST Info]-------- 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
--------[PORT Info instance 0]--------
Description : 10ge1/0/2
Port Role : designated
STP State : forward
Priority : 112 <---- приоритет порта = 112
Port Cost(Dot1d-1998) : config=auto / active=2 <---- стомость порта = 2
Desg. Bridge/Port : 32768.b4e0-2500-02b4 / 128.52
<... вывод сокращен ...>
```
Рекомендации выполнения команд/настроек
-
Используйте современную модель расчета стоимости пути (dot1t). Она более гранулярно оценинивает стоимость интерфейсов STP. На разных коммутаторах используйте одинаковую модель стоимости.
-
Явно задавайте Root и, по возможности, Secondary Root.
- Уменьшайте bridge priority на коммутаторах ядра/центра.
-
Не полагейтесь на дефолтные значения. Иначе один из ранее выпущенных коммутаторов может быть выбран в качестве Root коммутатора по наименьшему MAC адресу.
-
Используйте port cost для проектирования дерева.
- Основные магистрали — меньший cost.
- Резервные/менее предпочтительные пути — больший cost.
-
Не оставляйте одинаковую стоимость cost на всех uplink’ах, это позволит выстраивать предсказуемую топологию.
-
Port priority используется для тонкой настройки.
- Когда два пути архитектурно равноправны, но нужно определённое поведение на конкретном нижестощем коммутатоторе узле.
-
Не используйте порт priority’ем для задач, которые логичнее решать через cost.
-
Назначайте bridge priority — только для роли Root, а не для “рисования” дерева.
- bridge priority - это грубый инструмент, его изменение может повлиять на часть топологии.
-
может осложнить конфигурацию дерева в дальнейшем.
-
Документируйте изменение значений.
- Рекомендуется по возможности соблюдать консистентность в выборе портов, смотрящих вверх и вниз по инфраструктуре. Такой подход поможет создать легкочитаемые схемы дизайна сети.
История возникновения команды
Команды в данной главе применимы для: - аппаратных плаформ CIT серии L3200, с уставленной версией ПО v1.0.2. - являются актуальными с версии ПО v.1.0.2