Семинар № 4 stp&rstp v1.4
TRANSCRIPT
Семинар № 4
STP & RSTPили сказ о том,
что мы когда-то знали,но успешно позабыли
Никитин Станислав
Test yourself
00:00
Test yourself
ВРЕМЯ:
STP?
Test yourself
•1. E•2. A, D•3. E•4. D•5. B
•6. D•7. C
STP• История• Основные операции• BPDU• Механизмы выборов Root’a, RP, DP• Изменения в топологиях• Опциональные настройки STP
История
Digital Equipment Corporation(DEC)
История1982й -- Ethernet version II
DIX ?!
ИсторияLeonard Bosack
1973 по 1979 работает в DEC1979 начинает преподавать в Стэндфордском университете1984 вместе с женой откроет компанию
ИсторияRadia Perelman
1976 получает магистерскую степень в MIT1980 начинает работать в DEC1985 публикация алгоритма STP1988 защитит докторскую степень по компьютерным технологиям в MIT
ИсторияI think that I shall never seeA graph as lovely as a tree.
A tree which must be sure to span.So packets can reach every LAN.
First the root must be selected.By ID, it is elected.
Least cost paths from Root are traced.In the tree these paths are placed.
A mesh is made by folks like me.Then bridges find a spanning tree.
Иван
SW 3
SW 1 SW 2
Ира
Вася
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12
Иван
SW 3
SW 1 SW 2
Ира
Вася
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12
0200.1111.1111
Проблема?
Mac Address
0200.1111.1111
Ports
Fa 1/0/12
Switch 3 CAMMac Address
0200.1111.1111
0200.1111.1111
0200.1111.1111
Ports
Fa 1/0/12
Gi 1/0/27
Gi 1/0/28
Switch 3 CAM
Проблема!
Широковещательный шторм
Нестабильность таблицы коммутации
Передача нескольких копий кадров
Spanning Tree
Иван
SW 3
SW 1 SW 2
Ира
Вася
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12
0200.1111.1111
Основные операции STP
Выбирается корневой коммутатор (Root bridge).
Выбирается корневой порт (Root port) на каждом не корневом коммутаторе (Non-root bridge).
На некорневых коммутаторах выбираются назначенные порты (Designated ports) для каждого домена коллизий.
Все остальные порты блокируются
Bridge Protocol Data UnitConfiguration BPDU:
Отправляются c destination mac-address: 01-80-C2-00-00-00
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Bridge Protocol Data UnitConfiguration BPDU:
Protocol Identifier: 0x0000Version: 0x00Message Type: 0x00
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Bridge Protocol Data UnitConfiguration BPDU:
Flags0 0 0 0 0 0 0 0
1 1
Topology change
Topology change Acknowledgment
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Bridge Protocol Data UnitConfiguration BPDU:
Default Bridge Priority = 32768
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
MAC-addressBridge Priority
16 bits 48 bits
Bridge Protocol Data UnitConfiguration BPDU:
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Port numberPort Priority
4 bits 12 bits
Bridge Protocol Data UnitConfiguration BPDU:
Max Age: 20 секундHello Time: 2 секундыForward Delay: 15 секунд
Max Age – Msg Age = время хранения информации из BPDU коммутатором
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Bridge Protocol Data UnitTopology Change Notification BPDU:
Protocol Identifier: 0x0000Version: 0x00Message Type: 0x80
ProtocolIdentifier
Msg
Typ
e
Ver
2 1 1
Состояния портов в STPСостояние Описание
Blocking Блокированный порт не передает данные, но слушает BPDU. Предназначен для предотвращения петель.
Listening Порт слушает и начинает сам отправлять BPDU, пакеты с данными не отправляет.
Learning Порт слушает и отправляет BPDU, вносит изменения в CAM-таблицу, но данные не перенаправляет.
Forwarding Порт посылает и передает трафик. Принимает BPDU. Disabled Порт административно отключен.
Состояния портовBlocking
(Потеря получения BPDU в течении Max Age – Msg Age)
Listening(Forwarding delay = 15 секунд)
Learning (Forwarding delay = 15 секунд)
Forwarding
Blocking(Переходит в Listening после того,
как коммутатор решает что это Root или Designated порт)
Поднялся «линк»
Состояние портовАлгоритм IEEE-802.1D-1998
(1). Port enabled, by management or initialization
(2). Port disabled, by management or failure
(3). Algorithm selected as Designated or Root port
(4). Algorithm selected as Alternate port
(5). Protocol timer expire (Forwarding timer)
Выборы Root-коммутатора
Основываются на выборе наименьшего Bridge ID коммутатораSW 3
SW 1 SW 2
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
BPDUBPDUBP
DU
BPD
U
Выборы Root-коммутатора
Default Bridge Priority = 32768
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
MAC-addressBridge Priority
16 bits 48 bits
Выборы Root-коммутатора
Основываются на выборе наименьшего Bridge ID коммутатораSW 3
SW 1 SW 2
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
I m a ROOT!
Выборы Root-портов
802.1D-1998Cost Port Speed
100 10 Mbit/s
19 100 Mbit/s
4 1 Gbit/s
2 10 Gbit/s
Основываются на выборе наименьшей стоимости «маршрута» до Root’a
Из каждого сегмента сети должен существовать только один путь по направлению к Root-коммутатору.
Выборы Root-портов
Основываются на выборе наименьшей стоимости «маршрута» до Root’a
Из каждого сегмента сети должен существовать только один путь по направлению к Root-коммутатору.
ROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Fa 1/0/1
Выборы Root-порта
505Root ID
0Root Path Cost
505Bridge ID
001 30001LAN A
LAN C LAN D
LAN B
Port 3
Port 1
Cost4
Cost19
Port 4
Cost4
Port 2
Cost4
030 28001
030 5001666 112001 8
Выборы Root-порта
001Root ID
12Root Path Cost
505Bridge ID
001 30001LAN A
LAN C LAN D
LAN B
Port 3
Port 1
Cost4
Cost19
Port 4
Cost4
Root portPort 2
Cost4
030 28001
330 5001666 112001 12 030 5001 8
Выборы Root-портов
Наименьшая стоимость маршрута до Root
Наименьший Bridge ID отправителя
Наименьший приоритет порта отправителя
Наименьший порт ID отправителя
ROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1AGi 1/0/27
Cost 4
Gi 1/0/28Cost 19
Gi 1/0/27 Cost 8
Gi 1/0/28
Gi 1/0/27
Fa 1/0/1
R
R
Выборы Root-портов
Наименьшая стоимость маршрута до Root
Наименьший Bridge ID отправителя
Наименьший приоритет порта отправителя
Наименьший порт ID отправителя
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Выборы Designated-портовROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1AGi 1/0/27
Cost 4
Gi 1/0/28Cost 19
Gi 1/0/27 Cost 8
Gi 1/0/28
Gi 1/0/27
Fa 1/0/1
R
R D
D
Из каждого домена коллизий в сети должен существовать только один Designated порт
Порт, имеющий наименьшую суммарную стоимость маршрута до Root
Выборы Designated-порта
001Root ID
12Root Path Cost
505Bridge ID
001 30001LAN A
LAN C LAN D
LAN B
Port 3
Port 1
Cost4
Cost19
Port 4
Cost4
Root portPort 2
Cost4
030 28001
330 5001666 112001 12 030 5001 8
Выборы Designated-порта
001Root ID
12Root Path Cost
505Bridge ID
LAN A
LAN C LAN D
LAN B
Port 3
Port 1
Cost4
Cost19
Port 4
Cost4
Root portPort 2
Cost4
030 28001
330 5001666 112001 12 030 5001 8
001 30001
505 312001
505 112001
505 412001
Выборы Designated-порта
001Root ID
12Root Path Cost
505Bridge ID
001 30001LAN A
LAN C LAN D
LAN B
Designated port
Blocked port
Port 3
Port 1
Cost4
Cost19
Blocked portPort 4
Cost4
Root portPort 2
Cost4
030 28001
330 5001 12 030 5001 8505 312001
Выборы Designated-портовROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1AGi 1/0/27
Cost 4
Gi 1/0/28Cost 19
Gi 1/0/27 Cost 8
Gi 1/0/28
Gi 1/0/27
Fa 1/0/1
R
R D
DD
B
Наименьшая стоимость маршрута до Root
Наименьший Bridge ID отправителя
Наименьший приоритет порта отправителя
Наименьший порт ID отправителя
После построения дерева
Описание порта Состояние порта
Все порты Root коммутатора Forwarding
Каждый root-порт на не корневом коммутаторе Forwarding
Каждый designated-порт Forwarding
Все другие порты Blocking
Топология
Root
SW 2
32768..0B11.55CE
SW 4
SW 5
SW 6 100 Mbit/s
1000 Mbit/s
F dp F dp
F dpF dp
32768..0111.7789
32768..0111.CBCC
32768..0111.4478
32768..0111.AACB
Топология
Root
SW 2
32768..0B11.55CE
SW 4
SW 5
SW 6 100 Mbit/s
1000 Mbit/s
F dp F dp
F dpF dp
32768..0111.7789
32768..0111.CBCC
32768..0111.4478
32768..0111.AACB
F rp F rp
F rpF rp
F rp
F dp F dp
F dp
F dpB
BB
BF dp
F dp
B
Изменение топологии Время жизни mac-адресов в CAM таблице 300 секунд.
ProtocolIdentifier
Msg
Typ
e
Ver
2 1 1
Topology Change Notification BPDU:
Утверждения о TCN BPDUTCN BPDU принимаются на Designated портах
TCN BPDU отправляются в сторону корневого коммутатора
TCN BPDU отправляются только через корневые порты
TCN BPDU единственное BPDU, которое может быть отправлено корневым портом
Коммутатор, заметивший изменение топологии начинает отправлять TCN BPDU и продолжает их повторять с интервалом равным таймеру Hello, до тех пор пока не получит подтверждение TCA от вышестоящего коммутатора
Bridge Protocol Data UnitConfiguration BPDU:
Flags0 0 0 0 0 0 0 0
1 1
Topology change
Topology change Acknowledgment
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Изменение топологии
SW 3
SW 2 SW 4
SW 5
SW 1
SW 4
TCN
TCN ACK
12
3
4
(1). SW5 обнаружил изменение топологии отправил TCN
(2). SW2 ответил SW5 BPDU c флагом TCN ACK
(3). SW2 обнаружив изменение топологии отправляет TCN
(4). SW1 отвечает SW2 BPDU с флагом TCN ACK
Изменение топологии
Root в течении интервала MaxAge + Forward Delay отправляет BPDU c флагом TC
Коммутаторы получившие BPDU c флагом TC выставляют aging time для CAM таблицы равный 15 секундам
SW 3
SW 2 SW 4
SW 5
SW 1
SW 4
TC
Условия генерирования TCN BPDU
Когда порт переходит в состояние Forwarding и коммутатор имеет по крайней мере один Designated порт.
Когда порт переходит из состояния Forwarding или Learning обратно в Blocking
Когда коммутатор получает TCN BPDU на Designated-порт.
Изменение топологии. Пример 1
SW 3
SW 2 SW 4
SW 5
Root
F dp F dp
F dpF dp
F dp B
F rp
F rpF rp
F rp
Изменение топологии. Пример 1.5
SW 3
SW 2 SW 4
SW 5
Root
F dp F dp
F dpF dp
F dp B
F rp
F rpF rp
F rp
Изменение топологии. Пример 2
SW 3
SW 2 SW 4
SW 5
Root
F dp F dp
F dpF dp
F dp B
F rp
F rpF rp
F rp
Изменение топологии. Пример 3
SW 3
SW 2 SW 4
SW 5
Root
F dp F dp
F dpF dp
F dp B
F rp
F rpF rp
F rp
PortFast
Blocking (Max Age)Listening (Forwarding delay)Learning (Forwarding delay)
Forwarding
Иван
SW 3
SW 1 SW 2
Ира
Вася включил ПК
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27 Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12 Коммутатор не будет отправлять TCN в случае включения/выключения порта.
При включении линка, порт сразу перейдет в состояние Forwarding.
BPDU Guard
При включенном на порту BPDU Guard при получении портом BPDU, порт автоматически перейдет в состояние Err-disable
Функция может применятся в независимости от PortFast
Иван
SW 3
SW 1 SW 2
Ира
Вася принес коммутатор
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12
dlink
BPDU Filter
Не получает и не отправляет BPDU
Порт не перейдет в состояние Err-Disabled, если получит «неавторизованную» BPDU
Иван
SW 3
SW 1 SW 2
Ира
Вася принес коммутатор
Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Fa 1/0/11Fa 1/0/10
Fa 1/0/12
dlink
RootGuardROOT
Gi 1/0/27
Gi 1/0/28Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/1
R
R D
DD
B
SW1
SW3
SW4
RootGuard – защита от появления «нежелательного» Root’а в сетиПри получении superior BPDU порт перейдет в состояние root-inconsistent (эквивалентно состоянию listening). После того как порт перестает получать BPDU, он переходит в нормальное состояние.Включение Root Guard на интерфейсе (переводит порт в роль designated)
LoopGuard
LoopGuard – защита от однонаправленных петель
SW 3
SW 1 SW 2Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
S1 Перестал отправлять BPDU в сторону S3
LoopGuard
LoopGuard проверяет, что RP или ALT порт получает BPDU. Если порт не получает BPDU, то LoopGuard переводит порт в состояние inconsistent
Рекомендуется включать на корневых и альтернативных (заблокированных) портахSW 3
SW 1 SW 2Gi 1/0/27
Gi 1/0/28
Gi 1/0/28
Gi 1/0/27
Gi 1/0/27
Gi 1/0/28
Порт Gi 1/0/27 станет Designated и перейдет в Forwarding
RSTP• Совместимость с STP• Основные отличия от STP• BPDU• Изменения в топологиях• Современные стандарты
Основные отличия RSTP от STP
• Время конвергенции STP:MaxAge + ForwardDelay*2 =50 секунд
• Время конвергенции RSTP:<= 10 секунд
Изменения относительно STP
Изменены состояния портовИзменены роли портовИзменены состояния портовНезначительно изменен формат BPDUИзменен механизм оповещения об изменении топологииБыстрая конвергенция топологии и переход портов в Forwarding
Типы портов в RSTP
Тип Описание
p2pОпределяется на основе состояния линка (Full Duplex).Используют процесс предложения и соглашения (proposal and agreement)
shared Определяется на основе состояния линка (Half Duplex).Работают по стандарту 802.1D-1998
edgeПредполагают подключение клиентских устройств. Сразу переходят в состояние Forwarding. В cisco настраиваются командой portrtfast.
Совместимость STP и RSTP
SW 3
SW 1 SW 2
SW 4
802.1D
802.1W
Устройство настроенное на работе по RSTP автоматически перенастраивается на STP, если сосед поддерживает только 802.1D
Роли портов в RSTPРоль в
802.1W-2001 Описание
Root Порт определяется аналогично стандарту 802.1D-1998
Designated Порт определяется аналогично стандарту 802.1D-1998
Alternate Предполагаемый резервный порт для Root-порта
Backup Предполагаемый резервный порт для Designated-порта
Роли портов в RSTP. Alternate
Концепция альтернативного порта обеспечивает моментальную защиту от потери Root-порта, если происходит отказ вида «direct link failure»
RSTP процесс на коммутаторе выбирает альтернативный порт с наименьшей стоимостью и сразу выбирает его в качестве Root-порта
ROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/1
R
R D
DD
ALT
SW1
SW3
Состояния портов в RSTPСостояние
802.1D-1998Состояние
802.1W-2001Передача
кадровИзучение
MAC-адресов
Disabled Discarding Нет Нет
Blocking Discarding Нет Нет
Listening Discarding Нет Нет
Learning Learning Нет Да
Forwarding Forwarding Да Да
802.1W-2001Bridge Protocol Data Unit
Отправляются c destination mac-address: 01-80-C2-00-00-00Добавилось поле Version 1 Length: 0x00
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Vers
ion
1 Le
ngth
1
802.1W-2001Bridge Protocol Data Unit
Protocol Identifier: 0x0000Version: 0x02Message Type: 0x02
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Vers
ion
1 Le
ngth
1
802.1W-2001Bridge Protocol Data Unit
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Vers
ion
1 Le
ngth
1
0 0 0 0 0 0 0 0
Topologychange
Proposal
Learning
Forwarding
Agreement
TopologyChange
ack
Port role:00 Unknown01 Alternate/Backup port10 Root port11 Designated port
Port role
802.1W-2001Bridge Protocol Data Unit
ProtocolIdentifier Root ID Root Path
Cost Bridge ID Port ID MsgAge
MaxAge
HelloTime
ForwardDelay
Msg
Typ
e
Flag
s
Ver
2 2 2 2 2 21 1 1 8 4 8
Vers
ion
1 Le
ngth
1
MAC-addressBridge Priority
16 bits 48 bits
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1
System ID Extension (12 Bits) -- VLANBridge Priority
Стоимость пути в RSTP
802.1D-1998 802.1W-2001Cost Port Speed Cost Port Speed
100 10 Mbit/s 2000 000 10 Mbit/s
19 100 Mbit/s 200 000 100 Mbit/s
4 1 Gbit/s 20 000 1 Gbit/s
2 10 Gbit/s 2 000 10 Gbit/s
Быстрая конвергенция и переход в Forwarding в RSTP
SW 3
SW 1 SW 2
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
BPDUBPDU
BPD
UBP
DU
Если коммутатор не получает BPDU в течение трех Hello-интервалов, то считает что соединение потеряно
Быстрая конвергенция и переход в Forwarding в RSTP
Коммутатор принимает inferior BPDU и сразу на них реагирует
(1). Пропадает линк между SW1 и ROOT
(2). SW1 объявляет себя ROOT
(3). SW2 получит от SW1 inferior BPDU опросит ближайшие коммутаторы, есть ли среди них c «лучшим» BID
(4). SW1 получит от SW2 superior BPDU, назначит Root- портом G1/0/28
ROOT
32768.00:1F:CE:A0:32:11
32768.00:1F:CE:A0:32:1A
32768.00:1F:CE:AB:32:1A
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/28
Gi 1/0/27
Gi 1/0/1
R
R D
DD
ALT
SW1
SW3