Протокол
STP (
Spanning Tree Protocol) предназначен для устранения петель в топологиях с избыточными соединениями на интерфейсном (канальном, L2) уровне путём построения полного связного дерева. Из подзадач протокола можно выделить
определение корневого коммутатора сети и приоритетное
отключение избыточных каналов связи.
Метрикой выбора канала между узлами в STP является стоимость пути (path cost), которая рассчитывается на основе пропускной способности канала.
Кратко работу протокола можно описать следующей последовательностью действий:
Все устройства отправляют BPDU (Bridge Protocol Data Unit) с собственным идентификатором (Bridge ID).
Выбирается корневое устройство (Root Bridge) — устройство с наименьшим Bridge ID.
Каждое некорневое устройство определяет корневой порт — порт с наименьшей стоимостью пути к корневому устройству.
На каждом сегменте сети выбирается назначенный порт (Designated Port) — порт с наименьшей стоимостью пути к корневому устройству на этом сегменте.
Все остальные порты переходят в блокированное состояние (Blocking) для предотвращения петель.
Корневой и назначенные порты переходят в состояние передачи (Forwarding), обеспечивая связность без петель.