スパニングツリーの概要 ~基礎編①~
今回の授業はスパニングツリー(Spanning Tree)の基礎について教えます。そもそもスパニングツリー(以下、STP)とはなんなのか?と言うと、『ループ構成をツリー構成にするための機能』となります。早速、わけわからない感じですが、ちゃんと解説していくのでご安心をー。
ループ構成とは
ループ構成とは、以下のような構成をいいます。
このような構成にする意味としては、1つの機器やケーブルが故障した際に、通信不可とならないようにするためです。例えば、スイッチの2号機が壊れた場合に、速やかにスイッチ3号機経由で通信が出来るようになります。
フレーム転送の仕組み
それでは、どのようにしてパソコンAからパソコンBへフレームが転送されていくのかでしょうか?
※フレームとは、スイッチが扱うデータの単位となります。
パソコンにはMACアドレスと言う一意の番号が振られています。その番号がパケットの送信と共に隣接のスイッチ#1に伝達されます。
例えば今回の場合で言うと、パソコンAからパソコンBにフレームを送信すると、パソコンAは宛先MACアドレス(相手)と送信元MACアドレス(自分)を指定して送ります。受け取ったスイッチ#1は、送信元MACアドレスを自分のMACアドレステーブルというMACアドレスを集めたリストに登録します。
その後に、宛先MACアドレスをMACアドレステーブルを参照して、登録されていれば紐付けされているポートから転送されます。登録されていない場合は、指定されたポートと同じVLANで登録されている受信したポートを除く全てのポートから送信されます。(これをブロードキャストといいます。)
ブロードキャストを受け取ったスイッチは、宛先MACアドレスが自分のMACアドレステーブルに載っていれば、紐付けされたポートに転送し、載っていなければ同様にブロードキャストを実行します。
同様にして、ブロードキャストを受け取ったパソコンは、宛先MACアドレスが自分であれば、受け取り処理をして、自分のMACアドレスでなければ、破棄します。
STPの概要
まずSTPとは、先にも述べた通り『ループ構成をツリー構成にするための機能』となります。
ループ構成にすることで、機器故障時に別の代替ルートに切り替えることが出来るメリットがあるが、デメリットもあるのです。それがブロードキャストストームとなります。
ブロードキャストストーム
フレームの転送時に説明させていただきましたが、知らないMACアドレス宛のフレームは、ブロードキャストを繰り返す事でフレームを宛先のパソコンまで転送可能とするのですが、問題があります。それはループ構成だからこその問題です。
例えば、スイッチ#1が送ったブロードキャストをスイッチ#2、#3で受け取り、MACアドレステーブルに載っていないため、スイッチDにブロードキャストします。
その場合、スイッチ#4にもなければ同様にスイッチ#2からもらったブロードキャストをスイッチ#3に転送してしまうし、スイッチ#3からもらったブロードキャストはスイッチ#2に転送してしまうような事態が発生してしまうのです。
これにより、いつまでもブロードキャストが繰り返されることとなるのです。これをブロードキャストストームといいます。
ブロードキャストストームの対策
このブロードキャストストームの対策として開発されたのが、STPとなります。
ループ構成から一部のリンクをダウンさせることでツリー構造を構築します。以下のような構成に変化させます。
スイッチ#3、#4間で切り離されていることがわかるでしょうか?もちろんケーブルを抜いているのではなく、4台のスイッチ同士で相談してどのケーブルを使わないようにするのかを決めて、『Blocking Port』と言う使わないステータスにしているのです。
その決め方は、4台のスイッチの中からリーダーを決めます!そのリーダーから一番遠いポートを使わないポートとするのです。その『一番遠い』というのは、距離的な話だけではなく、使用するポートの速度(100Mbpsや1Gbpsなど)によって決定されます。もちろん設計者が意図的に変更することも可能となります。
このような仕組みでブロードキャストストームが発生しないようにしているのです。
※詳細の仕組みについては次回以降に解説していきます。
故障時の経路切り替え
スイッチ#2が故障したことをスイッチ#1やスイッチ#4が検知すると、スイッチの#3、#4間のケーブルをアクティブにすることで新しい経路を作り出すのです。
これは機器故障だけではなく、LANケーブル故障も同様となります。LANケーブルが断線すると接続しているスイッチがケーブル断を検知して、他に新しい経路がないかを探し出し、通信を復旧させるのです。このような機能をスパニングツリー(STP)と言うのです。
まとめ
今回スパニングツリーの基礎について教えてきました。次回以降には、どのようにしてリーダーを決めるのか?どのようにして故障を検知するのか?など詳細を解説していきます。
次のスパニングツリーの概要 〜基礎編②(STP)~に進みましょう!
“スパニングツリーの概要 ~基礎編①~” に対して9件のコメントがあります。