スパニングツリープロトコル (スパニングツリープロトコル) とは | 意味や読み方など丁寧でわかりやすい用語解説

作成日: 更新日:

スパニングツリープロトコル (スパニングツリープロトコル) の読み方

日本語表記

スパニングツリープロトコル (スパニングツリープロトコル)

英語表記

Spanning Tree Protocol (スパンニングツリープロトコル)

スパニングツリープロトコル (スパニングツリープロトコル) の意味や用語解説

スパニングツリープロトコル(STP)は、レイヤ2ネットワーク、特にスイッチで構成されるネットワークにおいて、物理的な接続のループを防ぐためのプロトコルである。ネットワークの可用性を高めるためには、機器やケーブルの障害に備えて通信経路を冗長化することが不可欠である。例えば、スイッチ同士を複数のケーブルで接続し、迂回路を確保する構成がそれに当たる。しかし、このような冗長構成は、意図せずして「スイッチングループ」と呼ばれる深刻な問題を引き起こす可能性がある。スイッチングループとは、特定のフレーム、特に宛先が不明なユニキャストフレームやブロードキャストフレームが、ループ状に接続されたスイッチ間を無限に転送され続ける現象である。この状態に陥ると、フレームのコピーが際限なく生成され、ネットワーク帯域を使い果たし、スイッチのCPU負荷も急上昇する。最終的にはネットワーク全体の通信が停止する、いわゆるブロードキャストストームを引き起こす。スパニングツリープロトコルは、こうしたループによるネットワークダウンを防ぐために開発された。その基本的な考え方は、物理的にはループ構成を維持したまま、論理的にループのないツリー状のトポロジーを構築することにある。具体的には、ネットワーク内に複数存在する経路の中から最適な経路を一つだけ選び、それ以外の冗長な経路上のポートを一時的にブロック(遮断)状態にする。これにより、通常時はループが発生しない一本道の通信経路が確保される。そして、もし稼働中の経路で障害が発生した場合は、ブロックしていたポートを自動的に開放して代替経路に切り替える。このようにして、STPはループの防止と経路の冗長性を両立させている。 STPが論理的なツリー構造を構築する仕組みは、いくつかのステップで構成される。まず、ネットワーク内の全てのスイッチの中から、中心となる一台の「ルートブリッジ」を選出する。ルートブリッジはツリー構造の根(ルート)となるスイッチであり、ネットワークに一つだけ存在する。選出は、各スイッチが持つ「ブリッジID(BID)」という値を比較して行われ、最も値が小さいスイッチがルートブリッジとなる。ブリッジIDは、「ブリッジプライオリティ」と「MACアドレス」の二つの要素で構成される。ブリッジプライオリティは管理者が設定可能な値で、この値が小さいほど優先度が高い。プライオリティが同じ場合は、MACアドレスの値を比較し、より小さいものが優先される。次に、ルートブリッジ以外の各スイッチ(非ルートブリッジ)は、自身が持つポートの中から、ルートブリッジへ到達するためのコストが最も小さいポートを一つだけ「ルートポート」として選出する。ルートポートは、そのスイッチからルートブリッジへの最短経路となる入口である。ここでのコストは「パスコスト」と呼ばれ、主にリンクの通信速度によって決まる。通信速度が速いほどパスコストの値は小さくなる。スイッチは、自身からルートブリッジまでの経路上にある全てのリンクのパスコストを合計し、その値が最小となる経路を選択する。続いて、スイッチ同士が接続されている各リンク(セグメント)ごとに、一つの「指定ポート」が選出される。指定ポートは、そのセグメントにおいてルートブリッジ側、つまりルートブリッジに近い側のポートであり、データを転送する役割を担う。ルートブリッジの全てのポートは、自動的に指定ポートとなる。最終的に、ルートポートにも指定ポートにも選ばれなかったポートが「非指定ポート(ブロッキングポート)」となる。この非指定ポートがデータを転送しないようにブロックされることで、ネットワーク全体のループが解消される。これらの選出プロセスは、スイッチ間でBPDU(Bridge Protocol Data Unit)と呼ばれる制御フレームを交換することによって行われる。BPDUにはブリッジIDやパスコストなどの情報が含まれており、スイッチはこの情報を基にトポロジーを計算し、各ポートの役割を決定する。 STPが有効化されたポートは、すぐに通信可能な状態になるわけではない。ループを確実に防ぐため、いくつかの状態を経て遷移する。ポートはまず、ループの有無を確認し、ネットワークトポロジーが安定するのを待つ。最初は「ブロッキング」状態で、BPDUの受信のみを行い、ユーザーデータの転送は一切行わない。トポロジー計算の結果、そのポートがルートポートまたは指定ポートに選ばれると、「リスニング」状態に移行する。リスニング状態では、BPDUの送受信を開始し、自身の役割を確定させる。その後、「ラーニング」状態に移り、通信相手のMACアドレスを学習し始めるが、まだユーザーデータの転送は行わない。最終的に、一定時間が経過してトポロジーが安定したと判断されると、「フォワーディング」状態となり、ようやく通常のデータ転送が可能となる。この一連の遷移には、デフォルト設定で30秒から50秒程度の時間が必要となる。この収束時間の長さは、初期のSTP(IEEE 802.1D)の課題の一つであったため、後に収束を高速化したRSTP(Rapid Spanning Tree Protocol)や、VLAN単位でSTPを動作させるPVST+、複数のVLANをグループ化して管理するMSTP(Multiple Spanning Tree Protocol)など、多くの改良版プロトコルが登場している。これらの技術を理解することは、安定したネットワークを設計、構築する上で非常に重要である。

スパニングツリープロトコル (スパニングツリープロトコル) とは | 意味や読み方など丁寧でわかりやすい用語解説