STPとは
・レイヤ2スイッチのお話。
・ブロードキャストストームを防ぐためのプロトコル。
・ブロードキャストストームが起こればCPUの負荷が上がり、ネットワーク機器がダウンする。
・ブロッキングポートを決めて、フレームのループを防ぐ。
STPが機能する仕組み
①ルートブリッジの選出
ルートブリッジとはSTPのツリー構造の起点となるスイッチのこと。
ブリッジIDが最も低いスイッチがルートブリッジとなる。
スイッチ間で情報をやり取りする管理用フレームのことをBPDUという。
②ルートポートの選出
ルートポートとはルートブリッジまでの最短のパスコストを持つポートのこと。
ルートポート選出の3つの基準
①累計のパスコストが最も小さいポート
②送信元のブリッジIDが最も小さいBPDUを受け取ったポート
③送信元ポートIDが最も小さいBPDUを受け取ったポート
③指定ポートの選出
指定ポートとはスイッチ間のより上位のBPDUを送信するポートのこと
指定ポート選出の3つの基準
①ルートパスコストが最も小さいBPDUを送信するポート
②送信元ブリッジIDが最も小さいBPDUを送信するポート
③送信元ポートIDが最も小さいBPDUを送信するポート
・ルートポートの向かい側は指定ポートになる
・ルートブリッジは全て指定ポートになる
④ブロッキングポートの選出
最後まで残ったものがブロッキングポートになる
ポートの状態遷移
以下の図のような遷移となる。
ディセーブル(Disabled)状態
電源がオフの状態。
ブロッキング(Blocking)状態
電源を入れるとブロッキングになる。BPDUは受信する。
最大エージタイマーはデフォルトで20秒。
最大エージタイマーとは、障害が発生したと判断して再計算を始めるまでの時間。
リスニング(Listening)状態
BPDUを送受信し、各ポートの役割を決めている状態。
転送遅延タイマーはデフォルトで15秒。
転送遅延タイマーとは、ルートブリッジから離れているスイッチのことを考慮して、
リスニングとラーニングの状態で待つ時間。
ラーニング(Lerning)状態
BPDUを送受信し、MACアドレスを学習している状態。
ここも転送遅延タイマーはデフォルトで15秒。
ブロッキング状態は、15秒待たずにブロッキングになる。
フォワーディング(Fowarding)状態
データ転送が可能な状態。
上記のように、STPはコンバージェンスまで50秒かかる計算になる。
障害発生時の動作
直接的な障害の場合
トポロジが変化し、再度コンバージェンスするまでに30秒かかる。
間接的な障害の場合
トポロジが変化し、再度コンバージェンスするまでに50秒かかる。
Port Fast
スイッチ以外のPCといったデバイスがネットワーク内にあり、PCをオン/オフしただけでも
トポロジが変化したと認識され、50秒の待ち時間が出てしまう。ということが起こります。
それは意味のない待ち時間なので、Port Fastの設定でPCなどのポートのアップ/ダウンは
トポロジの変化と認識されないようにできます。
すぐにフォワーディング状態になり、通信可能になります。
・Cisco独自の技術。
・スイッチ間のリンクではループの原因になるので設定してはいけない。
・Port FastとセットでBPDUガードも設定する。
ルートガード

上の図のように、意図しないスイッチが接続され更にそのスイッチのプライオリティが低かった場合、
ルートブリッジに選ばれてしまい、再計算されもともとブロッキングポートだったところが変わり、トポロジが変わってしまう。
それを防ぐためにルートガードを設定し、ポートをルート不整合状態にする。
ルート不整合状態であれば、通信がブロックされる。
RSTP
・標準化されたプロトコル
・STPの上位互換
・コンバージェンスまでの時間が数秒までに短縮
・非指定ポートを更に分割し、代替ポート(ルートポートの予備)とバックアップポート(指定ポートの予備)となる
・ポートのステータスがディセーブル、ブロッキング、リスニングが統合されディスカーディング(Discarding)に
・Port Fastのような機能がデフォルトで備わっていて、RSTPではエッジポートが担う
CST
VLANが使われていたとしても、STP構成はひとつ。
メリットとしては、
・メモリの負荷は軽い
デメリットとしては、
・複数のVLANを一つのSTPで管理するため効率の悪いルートを通る可能性がある
・STP構成が一つなので、特定のリンクにトラフィックが集中する
PVST
STP構成をVLANごとに構成できるのがCisco独自の技術であるPVST(Per VLAN Spanning Tree)
**PVST+**ではIEEE802.1Qでも使用可能に。
メリットとして、
VLANごとに効率の良いルートを通ることができ、トラフィックを分散できる
デメリットとして、
STPインスタンスが複数になるのでメモリの負荷は増加する
コマンド
・#show spanning-treeコマンドでSTPの状態を確認できる。
「This bridge is the root」の表示で、このスイッチがルートブリッジであることを示す。
「Bridge ID」でスイッチのプライオリティとMACアドレスを確認できる。
・#debug spanning-tree eventsコマンドで障害発生時の動作確認
・#no debug spanning-tree eventsコマンドで上記のコマンドを停止
・**#show spanning-tree interface [インターフェイス]**コマンドでSTPが動作しているインターフェイスの確認
・(config-if)#spanning-tree guard rootコマンドでルートガードの設定
