STP(Spanning Tree Protocol)は、ネットワークにおけるループを防止するために使用されるプロトコルです。
IEEE規格では IEEE 802.1D として定義されています。
STPの目的
・ネットワークループの防止
・冗長経路の管理
STPがない場合
ループ構成を取るとフレームが永遠に回り続けてしまうという問題があります。

| PC-Aから送付されたARPはPC-Bに到着するが、 他経路を通じて、SW-Aに戻ってきてしまうものもあり、 更にそれをフラッディングするため、ループが発生する これをブロードキャストストームと言う | このように冗長構成を作ると、もしSTPがなければ: フレームが無限に回り続ける MACアドレステーブルが不安定(上書きされ続ける) CPU負荷上昇・ネットワーク停止 ➡ STPはこのループを自動的に検出・防止します。 |
| STPの基本動作 |
STPは、スイッチ同士で「BPDU(Bridge Protocol Data Unit)」という制御フレームをやり取りし、
ネットワーク全体で**1本のツリー構造(Spanning Tree)**を形成します。
●ステップ1:ルートブリッジ(Root Bridge)の選出
ネットワーク全体で、最も優先度(Bridge ID)が低いスイッチを
「ルートブリッジ(Root Bridge)」として選出します。
Bridge ID = 優先度(Priority) + MACアドレス
デフォルトの優先度は 32768 です。
(優先度が同じなら、MACアドレスが小さい方が勝ち)
●ステップ2:各スイッチが経路コストを計算
ルートブリッジまでの**経路コスト(Path Cost)**を計算し、
最短経路を選びます。
| リンク速度 | コスト値(IEEE推奨) |
|---|---|
| 10 Mbps | 100 |
| 100 Mbps | 19 |
| 1 Gbps | 4 |
| 10 Gbps | 2 |
●ステップ3:ポートの役割を決定
各スイッチのポートには、STPによって次の役割が決まります。
| ポート役割 | 意味 |
|---|---|
| Root Port (RP) | ルートブリッジへ最短経路のポート(各スイッチに1つ) |
| Designated Port (DP) | セグメント内でフレーム転送を担当するポート |
| Non-Designated Port (Blocking) | ループ防止のためブロックされるポート |
ステップ4:ポート状態遷移
STPポートは、以下のステップで動作状態を変えます。
Blocking → Listening → Learning → Forwarding
| 状態 | 内容 |
|---|---|
| Blocking | フレーム転送せず、BPDUだけ受信 |
| Listening | STP情報を処理、MAC学習はまだ行わない |
| Learning | MACアドレスを学習するが転送はしない |
| Forwarding | フレームを転送する通常状態 |
| Disabled | 手動で無効化(shutdown) |
| STPで使われる制御フレーム:BPDU |
BPDU(Bridge Protocol Data Unit) とは、
スイッチ同士でSTP情報を交換するための制御フレームです。
BPDUには以下の情報が含まれます:
- ルートブリッジID
- 経路コスト
- 送信元ブリッジID
- タイマー情報(Hello、Max Age、Forward Delay)
タイマー設定
| タイマー名 | 内容 | デフォルト値 |
|---|---|---|
| Hello Time | BPDU送信間隔 | 2秒 |
| Forward Delay | Listening/Learningの時間 | 15秒 |
| Max Age | BPDU情報の保持時間 | 20秒 |
➡ 合計で約30〜50秒かけて収束するため、
再構築時に通信が一時停止する。
| RSTP(Rapid STP)への進化 |
STPは再収束に時間がかかるため、改良版が登場しました。
| 名称 | 規格 | 特徴 |
|---|---|---|
| STP | IEEE 802.1D | 約30秒で再収束 |
| RSTP | IEEE 802.1w | 数秒で再収束(高速STP) |
| MSTP | IEEE 802.1s | VLANをグループ化してSTP負荷を軽減 |
| まとめ |
| 項目 | 内容 |
|---|---|
| 名称 | Spanning Tree Protocol |
| 規格 | IEEE 802.1D |
| 目的 | L2ループ防止 |
| 仕組み | 一部ポートをブロックし、1本のツリーを構築 |
| キー概念 | ルートブリッジ、BPDU、ポート役割、状態遷移 |
| 問題点 | 再収束が遅い(30秒前後) |
| 改良版 | RSTP(高速)、MSTP(複数VLAN対応) |