10. RSTP
Понятие
Использует тот же алгоритм остовного дерева, что и STP
По тому же принципу выбираются корневой коммутатор и forwarding-порты
Обратно совместим с классическим STP
Значительно уменьшает время как время пересчета топологии, так и время восстановления работоспособности сети после отказа
В основном за счет отказа от поддержки топологии с общей шиной
Особенно влияют на ускорение:
Появление сообщений "запрос-ответ" (Proposal/Agreement), синхронизирующих состояние двух коммутаторов на P2P-канале не за Hello Time, а за единицы миллисекунд
Появление Edge Port, на котором коммутация выполняется сразу после включения (но возможно кратковременное формирование петли)
Proposal/Agreement
Используется условная сигнальная схема для того, чтобы не ждать таймеров при пересчете топологии
Старший коммутатор в сегменте (superior BPDU) отправляет в свой designated порт BPDU с флагом Proposal
Младший коммутатор в сегменте (у него Inferior BPDU) блокирует все Non-Edge порты на коммутаторе (состояние SYNC) временно и затем в свой Root порт за этот сегмент отправляет ответную BPDU с флагом Agreement
После получения Agreement старший коммутатор переводит порт в состояние Forwarding
Младший коммутатор Root порт переводит в состояние Forwarding и за следующий сегмент также рассылает Proposal в свои designated порты и т. д. в каждом сегменте
Данный процесс значительно ускоряет сходимость топологии при ее пересчете
Состояния и роли порта 802.1w
Состояниe STP | Состояние RSTP | Роль RSTP |
Disabled | Discarding | Disabled |
Blocking | Discarding | Alternate |
Listening | Discarding | Backup |
Learning | Learning | Root/Designated |
Forwarding | Forwarding | Root/Designated |
BPDU формата 802.1D-1998
MAC адрес: 01:80:C2:00:00:00
Инкапсуляция LLC; DSAP=SSAP=0x42
BPDU двух типов:
Configuration BPDU
TCN BPDU (Topology Change Notification) - только заголовок
Protocol Indentifier
Spanning Tree: 0x0000
Protocol Version
STP: 0x00
RSTP: 0x02
BPDU Type
STP Configuration BPDU: 0x00
STP TCN BPDU: 0x80
RSTP BPDU: 0x02
Flags ( Нумерация бит от младшего к старшему)
Topology Change
Proposal
Port Role (2 бита: 0 - unknown, 1 - alter/backup, 2 - root, 3 - designated)
Learning
Forwarding
Agreement
Topology Change Acknowledgement
Priority Vector
Отправляется в BPDU - Root Bridge ID, Root Path Cost, Sender Bridge ID, Sender Port ID
Принимается получателем - Root Bridge ID, Root Path Cost+Port Cost, Sender Bridge ID, Sender Port ID, Receiving Port ID
Timers
Message Age - срок, который уже "прожила" BPDU
Max Age - срок, до которого BPDU может "дожить" (Max Age рута за вычетом Message Age)
Hello Time - задается на корневом коммутаторе, применяется всеми остальными. Является по сути частотой отправки BPDU на интерфейсах
Forward Delay - время, в течение которого информация в BPDU гарантированно передастся от любого коммутатора в топологии до любого другого
Max Age, Hello Time, Forward Delay используются те, которые рассылаются Root коммутатором
Пересчет топологии при изменении на сети
При изменении на сети (физическое изменение, изменение состояние порта) коммутатор в Root порт генерирует TCN BPDU, оповещая тем самым об этом изменении
Вышестоящий в STP топологии свитч получает TCN на своем designated порту и отвечает стандартной BPDU с флагом TCAck, затем отправляет в уже свой Root порт TCN
Таким образом TCN доходит до Root коммутатора, тот отвечает TCAck, а затем генерирует в designated порты стандартную BPDU с флагом Topology Change и начинается пересчет всей топологии (блокируются порты, сбрасываются мак адреса (устанавливается Age Time мак адресов в Forward Delay))
Что такое "смена" топологии
Что ее вызывает?
Получение TCN BPDU на Designated-порту
Получение роли Root Bridge
Переход из состояний Forwarding или Learning в Blocking
Переход порта из состояни Learning в Forwarding, если на коммутаторе имеются Designated порты
Смена Root порта на транзитном коммутаторе
Активация нового Designated порта
Что это по факту?
Очистка таблиц MAC-адресов на всех коммутаторах
802.1D-1990 Topology Change
При обнаружении смены топологии коммутатор отсылает на Root порт TCN BPDU
Повторяет до получения TCAck
В TCN BPDU не посылается Priority Vector
Root Bridge при обнаружении смены топологии отправляет TC BPDU
При получении TC коммутаторы должны очистить FD (Aging Time = Forward Delay)
Транзитные коммутаторы транслируют TC на своих Designated портах
802.1D-2004 Topology Change
При смене топологии TC BPDU отсылаются на все порты
Потеря Forwarding порта не является основанием для смены топологии
При получении TC коммутаторы должны очистить FDB (Aging Time = Forward Delay)
Транзитные коммутаторы транслируют TC на своих Designated и Root портах
Last updated