レイヤー2レベルの冗長化技術としてネットワーク技術者がまず思い浮かべるのは、「スパニング・ツリー・プロトコル」(STP:Spanning Tree Protocol)だろう。

 STPはかつてはよく採用されていたが、新規のネットワーク構築ではあまり使われなくなってきた。理由は後述するが、「STPをできるだけ採用しないで冗長化しよう」という状況になりつつある。

 とはいえ、STPはループ接続によるトラブル発生を回避しながらLANを冗長化する基本の技術である。そこで最初にSTPの仕組みを押さえておきたい。

経路がループするとパケットが永遠に回り続ける

図1-1●ブロードキャストストームを起こさないためのSTP
図1-1●ブロードキャストストームを起こさないためのSTP
STPは、物理的にループ構成になっているネットワークを、論理的にループのない木構造(スパニングツリー)のネットワークとして扱うためのプロトコル。
[画像のクリックで拡大表示]
図1-2●ブリッジIDの構成とスパニングツリーの例
図1-2●ブリッジIDの構成とスパニングツリーの例
ツリー構成を決めるための情報が、「ブリッジID」と「パスコスト」だ。BPDUというフレームにそれら二つの情報を入れて、スイッチは互いに交換し合う。その結果、各スイッチのポートの役割やブロッキングポートが決まる。
[画像のクリックで拡大表示]

 通信経路を冗長化する場合、ただ経路を複数用意すればいいわけではない。単純に冗長化すると、ループ状の個所ができることがある。このループが、イーサネットでは問題を引き起こしてしまう。

 図1-1を見てほしい。(1)は経路を冗長化していないLANだ。このままでは経路上で障害が起こると通信が途絶える。そこでLANスイッチを1台増やして経路を単純に2重化したのが(2)だ。一見これで冗長化できたように見えるが、そうではない。LANにループ状の経路を作ってしまうと、MACフレームがLANスイッチ間を回り続ける「ブロードキャストストーム」が発生してしまうのだ(3)。

 そこでLANスイッチが持つSTPの機能を使い、ループ状の経路を論理的にループがない状態にする(4)。具体的にはいずれかのLANスイッチのポートを、1カ所だけブロッキング状態に変える。

 STPでは各LANスイッチのポートが役割を持たされる。それが図1-2の「ルートブリッジ」「代表ポート」「ルートポート」「ブロッキングポート」だ。この図はそれらが決まる流れを示した。