cafedripのブログ

IPネットワーク・IP電話のメモ

STPのRoot Port, Designated Port, Non Designated Port

STPのRoot Port, Desginated Port, Non Designated Portの決め方をよく忘れるので覚え書き

Root Bridgeを決める

  • 最小のBridge IDを持つ機器がRoot Bridge
  • Bridge ID = Bridge Priority (2 Byte) + MAC Address (6 Byte)

    • Cisco機器の場合、defaultのBridge Priorityは32,768
    • Bridge Priorityを変更するには、Vlan単位で以下の設定を投入

      spanning-tree vlan “vlan num” priority “bridge priority”

    • Bridge Priorityは必ず4,096の倍数(0でもOK)

PVST+の場合、Bridge Priorityはdefaultで「32,768 + Vlan番号」、 Bridge Priorityを変更した場合は「指定したPriority値 + Vlan番号」となる

RPを決める

Root Bridgeはパスコスト0でBPDUを送信する。

各スイッチはBPDUを受け取った際、BPDUのパスコスト+受信I/Fのコスト値を加算(=ルートパスコスト)し、 BPDUのパスコストをルートパスコストで上書きして他のI/Fに転送する。

このとき、

  • スイッチごとに、ルートパスコストが最も小さいI/FがRP
  • ルートパスコストが同じ場合、送信元(上位機器の)Bridge IDが小さいポートがDP
  • Bridge IDも同じ場合、送信元(上位機器の)ポートIDが小さい方をDP

DPを決める

  • 各リンク(スイッチ〜スイッチ間の接続)の中で1ポートがDPとなる
  • 最小ルートパスコストを持つ機器側がDPになる(Root Bridgeの各I/Fは必ずDPになる)
  • 同じルートパスコストを持つ機器どうしが接続した場合、送信元(対向機器の)Bridge IDが小さいポートがDP

NDPを決める

RPにもDPにもなれなかったI/FがNDPとなり、ブロッキングポートになる

I/Fのコスト値について

よく見るのは以下3つ。

  • 100M : 19
  • 1G : 4
  • 2G : 3

LANが100M未満の環境はほぼなくなってきており、 10G以上の区間ではSTPよりもEtherChannelやTRILLベースのL2 fabric技術を用いることが多いため、 上記3つを覚えておけば大体事足りる。

基本的にはI/F速度をベースにしてコスト値を決めているものが多いが、 EtherChannel環境ではbandwidth設定をベースにしてコスト値を決めるケースがあるので要注意。