Концепции протокола STP
Отредактирована 07.03.2025
Обзор коммутации LAN
- устройства с платой сетевого интерфейса Ethernet (NIC);
- коммутаторы LAN Ethernet;
- соединяющие устройства кабели (сетевые платы - с портами коммутатора, порты коммутатора - друг с другом и т.д.)
Логика перенаправления коммутатора LAN
Термины "порт коммутатора" и "интерфейс коммутатора" являются синонимами.
Проверка коммутатора
Просмотр таблицы MAC-адресов
show mac address-table dynamic
Определение сетей VLAN фрейма
sw1(config)#interface Fa0/9 sw1(config-if)#switchport mode access sw1(config-if)#switchport access vlan 100
sw1#show interface status Port Name Status Vlan Duplex Speed Type Fa0/1 notconnect 1 auto auto 10/100BaseTX Fa0/2 notconnect 1 auto auto 10/100BaseTX Fa0/3 notconnect 1 auto auto 10/100BaseTX Fa0/4 notconnect 1 auto auto 10/100BaseTX Fa0/5 notconnect 1 auto auto 10/100BaseTX Fa0/6 notconnect 1 auto auto 10/100BaseTX Fa0/7 notconnect 1 auto auto 10/100BaseTX Fa0/8 notconnect 1 auto auto 10/100BaseTX Fa0/9 PC2 connected 100 a-full a-100 10/100BaseTX Fa0/10 notconnect 1 auto auto 10/100BaseTX Fa0/11 notconnect 1 auto auto 10/100BaseTX Fa0/12 PC2 connected 100 a-full a-100 10/100BaseTX Fa0/13 notconnect 1 auto auto 10/100BaseTX Fa0/14 notconnect 1 auto auto 10/100BaseTX Fa0/15 notconnect 1 auto auto 10/100BaseTX Fa0/16 notconnect 1 auto auto 10/100BaseTX Fa0/17 notconnect 1 auto auto 10/100BaseTX Fa0/18 notconnect 1 auto auto 10/100BaseTX Fa0/19 notconnect 1 auto auto 10/100BaseTX Fa0/20 notconnect 1 auto auto 10/100BaseTX Fa0/21 notconnect 1 auto auto 10/100BaseTX Fa0/22 notconnect 1 auto auto 10/100BaseTX Fa0/23 notconnect 1 auto auto 10/100BaseTX Fa0/24 notconnect 1 auto auto 10/100BaseTX Gi0/1 to sw2 connected trunk a-full a-1000 10/100/1000BaseTX Gi0/2 notconnect 1 auto auto 10/100/1000BaseTX
sw1#show vlan brief VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4 Fa0/5, Fa0/6, Fa0/7, Fa0/8 Fa0/10, Fa0/11, Fa0/13, Fa0/14 Fa0/15, Fa0/16, Fa0/17, Fa0/18 Fa0/19, Fa0/20, Fa0/21, Fa0/22 Fa0/23, Fa0/24, Gi0/2 100 VLAN100 active Fa0/9, Fa0/12 1002 fddi-default act/unsup 1003 token-ring-default act/unsup 1004 fddinet-default act/unsup 1005 trnet-default act/unsup
Проверка магистральных каналов
sw1#show interfaces trunk Port Mode Encapsulation Status Native vlan Gi0/1 desirable 802.1q trunking 1 Port Vlans allowed on trunk Gi0/1 1-4094 Port Vlans allowed and active in management domain Gi0/1 1,100 Port Vlans in spanning tree forwarding state and not pruned Gi0/1 1,100
Протокол распределённого связующего дерева (IEEE 802.1D)
- Все устройства в сети VLAN способны передавать фреймы на все другие устройства. Т.е. блокировать следует не слишком много портов, чтобы не отрезать одни части сети LAN от других.
- Фреймы имеют короткую продолжительность существования, что не позволяет передавать их по кругу неопределённо долго.
К какому же уровню относится протокол STP?
Протокол STP относится ко второму уровню (канальному), так как он реализуется на коммутаторах. И он не обменивается в своих
сообщениях IP адресами, или сетями. Он анонсирует MAC-адреса.
Потребность в протоколе связующего дерева STP (назначение)
Термин конвергенция, например для протокола STP (STP convergence) описывает процесс, когда все коммутаторы понимают, что в топологии LAN что-то изменилось и, возможно, следует изменить состояние блокированных (blocking) и перенаправляющих (forwarding) портов.
- Широковещательный шторм
- Неустойчивость таблицы MAC-адресов
- К месту назначения прибывают несколько копий фрейма
Коммутаторы непрерывно рассылают одни и те же широковещательные фреймы. Такое явление называется широковещательным штормом.
Первоначальный широковещательный фрейм может быть также послан по кругу в противоположном направлении, когда коммутатор sw3
пошлёт копию первоначального фрейма через свой Gi0/1. На рисунке это не показано, чтобы не загромождать его.
Mac Address Table ------------------------------------------- Vlan Mac Address Type Ports ---- ----------- -------- ----- 100 0200.3333.3333 DYNAMIC Fa0/13
Mac Address Table ------------------------------------------- Vlan Mac Address Type Ports ---- ----------- -------- ----- 100 0200.3333.3333 DYNAMIC Gi0/1
Проблема | Описание |
---|---|
Широковещательный шторм | Перенаправление фрейма повторяется на тех же каналах связи, растрачивая существенную часть их пропускной способности |
Неустойчивость таблицы MAC-адресов | Реагируя на циклические фреймы, коммутатор непрерывно заносит в таблицу MAC-адресов неправильные записи, приводящие к передачи фреймов в неправильном направлении |
Передача нескольких фреймов | Побочный эффект циклической передачи фреймов, когда хосту доставляется несколько копий одного фрейма, нарушая его работу |
Что делает связующее дерево IEEE 802.1D
Термин конвергенция, например для протокола STP (STP convergence) описывает процесс, когда все коммутаторы понимают, что в топологии LAN что-то изменилось и, возможно, следует изменить состояние блокированных (blocking) и перенаправляющих (forwarding) портов.
Как работает протокол STP
Протокол STP был создан задолго до появления коммутаторов LAN. В те времена протокол STP использовал мосты Ethernet. Сегодня роль мостов играют коммутаторы, реализую ту же концепцию STP. Однако многие термины протокола STP всё ещё относятся к мостам, поэтому термины мост (bridge) и коммутатор (switch) можно считать синонимами.
- Протокол STP выбирает корневой коммутатор. Все рабочие интерфейсы корневого коммутатора переводятся в состояние перенаправления.
- Каждый некорневой коммутатор считает, что у одного из его портов есть наименьшая административная стоимость между ним и корневым коммутатором. Это корневая стоимость (root cost) данного коммутатора. Протокол STP переводит в состояние перенаправления корневой порт коммутатора (Root Port - RP), т.е. порт, являющийся частью пути с наименьшей корневой стоимостью.
- К тому же сегменту Ethernet может быть подключено много коммутаторов, но в современных сетях с каждым каналом связи связано обычно лишь два коммутатора. Коммутатор с самой низкой корневой стоимостью, по сравнению с другими коммутаторами, подключёнными к тому же каналу связи, переводится в состояние перенаправления. Это выделенный коммутатор (designated switch), а присоединённыый к этому сегменту интерфейс коммутатора - выделенный порт (Designated Port - DP).
Реальная причина, по которой корневые коммутаторы переводят все рабочие интерфейсы в состояние перенаправления (forwarding [ˈfɔːwədɪŋ]), заключается в том, что все они являются выделенными портами, но проще просто запомнить, что все рабочие интерфейсы всех корневых коммутаторов перенаправляют фреймы.
Характеристика порта | Состояние STP | Описание |
---|---|---|
Все порты корневого коммутатора | Перенаправление | Корневой коммутатор всегда является выделенным для всех подключённых сегментов |
Корневой порт каждого некорневого коммутатора | Перенаправление | Порт с наименьшей стоимостью для доступа к корневому коммутатору |
Выделенный порт каждой сети LAN | Перенаправление | Коммутатор, перенаправляющий сообщения Hello в сегмент, с самой низкой корневой стоимостью, является выделенным коммутатором (рис. 10) для этого сегмента |
Все другие рабочие порты | Блокировка | Порт не используется ни для перенаправления пользовательских фреймов, ни для получения любых фреймов, предназначенных для перенаправления |
Протокол STP учитывает только рабочие интерфейсы (т.е. находящиеся в подключённом состоянии). Интерфейсы отключённые физически (например, без кабеля) или отключённые административно протокол STP переводит в блокированное состояние. Таким образом, используется термин рабочий порт (working port) для интерфейсов, способных перенаправлять фреймы, если бы протокол STP перевёл интерфейс в состояние перенаправления.
Идентификатор моста STP и пакет BPDU Hello
Таблица 3. Поля пакета Hello протокола STP
Поле | Описание |
---|---|
RID - идентификатор корневого моста | Отправивший это сообщение Hello коммутатор в настоящее время считает себя корневым |
BID - идентификатор моста отправителя | Идентификатор моста коммутатора, отправившего это сообщение Hello |
rootcost - корневая стоимость отправителя | Стоимость STP пути между этим коммутатором и текущим корневым |
Значение таймера на корневом коммутаторе | Значение таймеров Hello, MaxAge, и таймера задержки перенаправления |
Выбор корневого коммутатора
Смысл лучшего сообщения Hello в том, что указанный в нём идентификатор BID корневого коммутатора лучше (в цифровой форме меньше). Это наилучшее сообщение Hello (superior Hello). У худшего сообщения Hello идентификатор BID корневого коммутатора не так хорош (в цифровой форме больше). Это не наилучшее сообщение Hello (inferior Hello).
Логика выбора корневого коммутатора
- Самый низкий идентификатор моста
- При равенстве самый низкий MAC-адрес коммутатора
Выборы корневого порта каждого коммутатора
Выбор выделенного порта на каждом сегменте LAN
Интерфейс коммутатора | Состояние | Причина нахождения в состоянии перенаправления |
---|---|---|
sw1 Gi0/1 | Перенаправление | Интерфейс находится на корневом коммутаторе, поэтому он становится портом DP на этом канале связи |
sw1 Gi0/2 | Перенаправление | Интерфейс находится на корневом коммутаторе, поэтому он становится портом DP на этом канале связи |
sw2 Gi0/2 | Перенаправление | Корневой порт коммутатора sw2 |
sw2 Gi0/1 | Перенаправление | Выделенный порт сегмента LAN на коммутаторе sw3 |
sw3 Gi0/1 | Перенаправление | Корневой порт коммутатора sw3 |
sw3 Gi0/2 | Блокировка | Некорневой и невыделенный порт |
Влияние и изменение топологии STP
Внесение изменений в конфигурацию влияет на топологию STP
Скорость Ethernet | Стоимость IEEE |
---|---|
10 Мбит/с | 100 |
100 Мбит/с | 19 |
1 Гбит/с | 4 |
10 Гбит/с | 2 |
Реакция на изменение состояния влияет на топологию STP
Работа протокола STP в стабильных условиях
Как коммутаторы реагируют на изменения топологии STP
Таблица 6. Таймеры STP
Таймер | Описание | Стандартное значение |
---|---|---|
Hello | Период времени между передачей сообщений Hello корневым коммутатором | 2 секунды |
MaxAge | Как долго коммутатор должен ожидать после прекращения поступления сообщений Hello, прежде чем пытаться изменять топологию STP | 10 периодов Hello |
Задержка перенаправления | Задержка, влияющая на процесс, происходящий при изменении интерфейсом состояния с блокировки на перенаправление. На протяжении секунд, заданных таймером, задержки перенаправления порт остаётся в промежуточном состоянии прослушивания, а затем переходит в промежуточное состояние самообучения | 15 секунд |
Изменение состояния интерфейса в STP
Определения происходящего в состояниях прослушивания и самообучения
- Прослушивание (listening). Как и в состоянии блокировки, интерфейс не перенаправляет фреймы. Коммутатор удаляет устаревшие (неиспользуемые) записи таблицы MAC-адресов, для которых (или от которых) за данный период не было получено фреймов. Устаревшие записи таблицы MAC-адресов могут стать причиной временных петель.
- Самообучение (learning). Интерфейсы в этом состоянии всё ещё не перенаправляют фреймы, но коммутатор начинает изучать MAC-адреса фреймов, полученных на интерфейсе.
Таблица 7. Состояния интерфейсов протокола STP по стандарту IEEE 802.1D
Состояние | Перенаправляет ли фреймы? | Изучает MAC-адреса на основании полученных фреймов? | Стабильное или промежуточное? |
---|---|---|---|
Блокирования | Нет | Нет | Стабильное |
Прослушивания | Нет | Нет | Промежуточное |
Прослушивания | Нет | Да | Промежуточное |
Перенаправления | Да | Да | Стабильное |
Отключения | Нет | Нет | Стабильное |
Дополнительные средства протокола STP
- Канал EtherChannel
- PortFast
- Службу BPDU Guard
Канал EtherChannel и STP
Режим PortFast и STP
Служба BPDU Guard и STP
- Злоумышленник может подключиться к коммутатору через один из портов с низким значением приоритета STP и сделать его корневым коммутатором. У новой топологии STP может оказаться худшая производительность, чем у желательной топологии.
- Злоумышленник может включить несколько портов на нескольких коммутаторах, чтобы сделать свой коммутатор корневым, и фактически перенаправлять через него бóльшую часть трафика сети LAN. Если сотрудники не воспрепятствуют, злоумышленник может использовать анализатор LAN для копирования фреймов данных, передаваемых по локальной сети.
- Пользователи по неосторожности могут повредить LAN, купив и подключив недорогой потребительский коммутатор LAN (неспособный использовать протокол STP). Такой коммутатор без функций STP не станет блокировать порты и, вероятно, создаст петли.
Протокол Rapid STP IEEE 802.1w
- Выбирает корневой коммутатор, используя теже параметры и схемы разрешения конфликтов.
- Выбирает корневой порт на некорневых коммутаторах по тем же правилам.
- Переводит все порты в состояние перенаправления или блокировки, хотя в протоколе RSTP состояние блокировки называется состояние игнорирования (discarding state).
«-«-«- Назад | Вперед -»-»-» |
|