M2 · Switching e LAN

Análise do Spanning Tree Protocol

O Problema: Loops de Camada 2

Redes com switches redundantes criam loops que causam broadcast storms, instabilidade de tabela MAC e múltiplas cópias de frames. Diferente do IP, Ethernet não possui TTL, então frames circulam indefinidamente sem controle.

O STP (IEEE 802.1D) resolve isso bloqueando portas redundantes logicamente, mantendo uma topologia livre de loops com caminhos de failover disponíveis.

Eleição do Root Bridge

O switch com o menor Bridge ID torna-se o Root Bridge. O Bridge ID é composto por:

Bridge ID = Priority (16 bits) + MAC Address (48 bits)
Priority padrão: 32768 (incrementos de 4096)

Processo de eleição:

  1. Todos os switches iniciam assumindo ser o Root Bridge
  2. Trocam BPDUs (Bridge Protocol Data Units) pela rede
  3. O switch com menor Bridge ID vence
show spanning-tree
show spanning-tree vlan 10

Seleção de Portas

Root Port (RP)

Cada switch não-root possui exatamente uma Root Port — a porta com menor custo de caminho até o Root Bridge.

Velocidade Custo STP
10 Mbps 100
100 Mbps 19
1 Gbps 4
10 Gbps 2

Designated Port (DP)

Em cada segmento, a porta que envia BPDUs com menor custo de raiz torna-se Designated. No Root Bridge, todas as portas são Designated.

Alternate/Blocked Port

Portas que não são RP nem DP ficam em estado Blocking — recebem BPDUs mas não encaminham tráfego.

Estados das Portas (802.1D)

Estado Encaminha Frames Aprende MACs Descrição
Blocking Não Não Aguarda BPDUs
Listening Não Não Participa da eleição
Learning Não Sim Popula tabela MAC
Forwarding Sim Sim Operação normal
Disabled Não Não Porta administrativamente down

Convergência no 802.1D leva 30 a 50 segundos (Listening: 15s + Learning: 15s).

RSTP — Rapid Spanning Tree (802.1w)

O RSTP reduz a convergência para segundos com novos estados e papéis de porta:

  • Discarding (substitui Blocking + Listening)
  • Learning
  • Forwarding

Novos papéis: Alternate Port (backup da RP) e Backup Port (backup da DP no mesmo segmento).

Cisco implementa o PVST+ (Per-VLAN Spanning Tree), executando uma instância STP por VLAN.

Configuração e Ajuste

! Forçar switch como Root Bridge
spanning-tree vlan 10 priority 0

! Usar macro do IOS
spanning-tree vlan 10 root primary
spanning-tree vlan 10 root secondary

! Verificar topologia
show spanning-tree vlan 10
show spanning-tree detail

PortFast e BPDU Guard

! PortFast: pula Listening/Learning (apenas em portas de acesso)
interface fa0/1
 spanning-tree portfast

! BPDU Guard: desativa porta se receber BPDU
 spanning-tree bpduguard enable

! Habilitar globalmente em todas as portas PortFast
spanning-tree portfast default
spanning-tree portfast bpduguard default

> Exame CCNA: PortFast deve ser configurado apenas em portas conectadas a hosts. BPDU Guard protege contra switches não autorizados.

Desempate na Eleição

Quando o custo é igual, o switch usa esta ordem de critérios:

  1. Menor Sender Bridge ID
  2. Menor Sender Port Priority (padrão: 128)
  3. Menor Sender Port ID (número da interface)