book2

5.1 Purpose of STP

Зачем вообще нужен STP

В hierarchical design почти всегда есть redundant links. Это нужно, чтобы при отказе одного link traffic пошёл другим путём.

Проблема в том, что Ethernet сам по себе не умеет останавливать бесконечно гуляющие Layer 2 frames.

У IPv4 есть TTL, у IPv6 есть Hop Limit, а у обычного Ethernet frame такого механизма нет.

Поэтому redundancy на Layer 2 без STP превращается в риск.

TTL (Time To Live) — поле IPv4 packet, которое уменьшается на каждом router hop. abbreviation Hop Limit — аналог TTL в IPv6. networkterm

Что ломается без STP

Без STP возможны три типичные проблемы:

  • broadcast storm;
  • MAC address table instability;
  • дублирование unknown unicast frames.

broadcast storm — лавинообразное распространение broadcast traffic, которое быстро перегружает network. networkterm MAC address table instability — постоянное “прыгание” MAC entries из-за loop, из-за чего switch плохо понимает, куда слать traffic. networkterm unknown unicast — unicast frame, для которого switch ещё не знает destination MAC и поэтому flood’ит его. networkterm

На нормальной схеме STP разрешает redundancy, но не даёт всем links одновременно forwarding’ить loop-causing traffic.

Если active path ломается, STP пересчитывает topology и открывает backup path.

Что важно для понимания

STP не “удаляет” резервные links. Он просто временно переводит часть ports в non-forwarding state.

Layer 2 Loops и Broadcast Storm

Когда frame попадает в loop, switch может пересылать его снова и снова.

Особенно опасны:

  • ARP Requests;
  • multicast traffic;
  • unknown unicast traffic.

Exam trap

loop и broadcast storm не одно и то же.

loop — причина. broadcast storm — одно из последствий.

STP и STA

STA (Spanning Tree Algorithm) — алгоритм, на котором основан STP. abbreviation root bridge — главный switch в STP topology, от которого считаются все path decisions. networkterm

STP использует STA, чтобы:

  1. выбрать один root bridge;
  2. оставить по одному лучшему пути до root;
  3. заблокировать лишние redundant paths;
  4. при отказе link пересчитать topology.

Полезно помнить, что исторически switches часто называли bridges, поэтому в STP много терминов со словом bridge.

Как это выглядит логически

ШагЧто делает STP
1Выбирает root bridge
2Для каждого switch находит лучший path до root
3Лишние paths блокирует
4При failure заново считает topology

Как запомнить

STP = keep backup, block loop

Если понял тему

Ты понимаешь, почему Layer 2 redundancy без STP опасна и почему blocked port на самом деле полезен, а не “сломанный”.