【スパニングツリー】収束の再計算は50秒?30秒?

 Cisco Catalystスイッチで、ケーブルを接続した時にインターフェイスの上のLEDがオレンジ色になり、しばらくすると緑色になることを見たことがある人は多いと思います。これはスパニングツリーが機能していて、ループ防止のため、リンクアップしてもすぐにデータ転送しない仕組みになっています。

スポンサーリンク

ポート状態

 スパニングツリーの主なポート状態には以下に示します。

ポート状態   説明
ブロッキング状態
(BLOCKING)
ルートポートや指定ポートになっていないポートで、データ転送は行わない。
BPDUの受信は行う。(送信は行わない)
リスニング状態
(LISTENING)
トポロジの変化を確認するため、データ転送は行わない
BPDUの送信・受信は行う。
リスニング状態の次は、ラーニング状態になるには15秒かかる。
ラーニング状態
(LEARNING)
データフレームの送信元MACアドレスからMACアドレスを学習する。データ転送は行わない。予めMACアドレスを学習することで、転送状態になった際のフラッディ ングの多発を抑止する。ラーニング状態から次の転送状態になるには、15秒かかる。
転送状態
(FORWARDING)
テータ転送を行う、通常のインタフェース状態。

 Ciscoスイッチでスパニングツリーが有効なポートは、ケーブルを接続後、リスニング→ラーニング→転送と推移し、データ転送できるまでには、30秒(リスニング(15秒)+ラーニング(15秒)かかります)

スポンサーリンク

スパニングツリーの再計算(収束時間)は50秒?30秒?

 スパニングツリーではスイッチやケーブル障害の切り替え時間が約50秒になるパターンと約30秒になるパターンがあります。ここでは、まず、最大経過時間(MAX Age) というタイマー値が重要となります。

 最大経過時間(MAX Age)とは、ルートブリッジからのBPDUがタイムアウトし、スイッチが障害が発生したと検知するまでの時間です。デフォルトでは20秒です。BPDUは2秒ごとに送信されます。例えば、直接接続されていないルートブリッジが障害になった場合、自身のリンク状態は何も変化がありません。この場合、ルートブリッジからのBPDUが20秒間受信されなかったら、「何からの障害が発生した」とスイッチが認識します。

収束時間が50秒の場合

 例えば、以下のトポロジーで、ルートブリッジが障害の場合、ブロッキングポートが転送状態になるまでに、最大経過時間(20秒)+リスニング状態(15秒)+ラーニング状態(15秒)の計50秒かかります。

収束時間が30秒の場合

 例えば、以下のトポロジーで、SW3〜SW4が障害の場合、ブロッキングポートが転送状態になるまでにリスニング状態(15秒)+ラーニング状態(15秒)の計30秒かかります。

 切り替え時間に30秒や50秒かかるのは非常に遅いため、今では高速スパニングツリー(RSTP)が使われるのが一般的です。 ただし、RSTPが使用できない機器を接続する場合は、通常のSTPの動作となるため、上の動作の理解も必要です。

 最後までお読み頂きありがとうございました。

コメント