単元解説

STPとRSTPの基礎

スイッチングCCNA

冗長化したスイッチ間リンクで起こるL2ループを防ぐSTPと、より高速に切り替えるRSTPの基本を学びます。

図版:Net Basics Labタップして拡大
STPとRSTPの基礎の要点を図解しています。

この単元で学ぶこと

スイッチ同士を複数のリンクで接続すると、片方のリンクが故障しても通信を続けられるため、ネットワークを冗長化できます。しかし、何も制御しないままL2の経路を二重化すると、フレームがネットワーク内を循環するL2ループが発生するおそれがあります。STPとRSTPは、冗長リンクを残しながらループを防ぐための仕組みです。

L2ループが起こす問題

イーサネットフレームには、IPパケットのようなTTLがありません。そのため、L2ループができるとブロードキャストや宛先不明のフレームが何度も転送され、ネットワークを圧迫します。MACアドレステーブルの学習先が短時間で変わるMACアドレスフラッピングも起こり、正常な通信が難しくなります。

STPの役割

STP(Spanning Tree Protocol)は、スイッチ間の冗長リンクを論理的に1本のループしない経路へ整理するプロトコルです。必要なリンクだけをフォワーディング状態にし、余分な経路はデータフレームを転送しない状態にします。

リンク障害が起きたときは、これまで使っていなかった冗長経路を利用できるようにトポロジを再計算します。つまり、STPは冗長リンクを不要にするのではなく、通常時はループを防ぎ、障害時に代替経路として使えるようにします。

ルートブリッジを中心に経路を決める

STPでは、ネットワーク内で1台のスイッチをルートブリッジとして選びます。各スイッチはBPDUという制御フレームを交換し、ルートブリッジまでの最も良い経路を判断します。

ルートブリッジ以外の各スイッチでは、ルートブリッジへ向かう最も良いポートがルートポートになります。また、各ネットワーク区間でフレームを転送する代表のポートが指定ポートです。余分な経路にあるポートは、ループを防ぐためデータフレームを転送しない状態になります。

RSTPはより高速に切り替える

RSTP(Rapid Spanning Tree Protocol)は、STPを高速化した仕組みです。障害やトポロジ変更が起きたときに、代替経路をより短時間でフォワーディングへ切り替えられるようにしています。

RSTPでは、ルートポートや指定ポートに加え、代替経路として待機する代替ポートを使います。通常は代替ポートがデータフレームを転送しませんが、使用中の経路に問題が起きた場合は、切り替え候補になります。

RSTPのポート状態

RSTPの主なポート状態は、Discarding、Learning、Forwardingです。Discardingではデータフレームを転送せず、LearningではMACアドレスを学習しますがデータフレームはまだ転送しません。Forwardingになると、MACアドレスの学習とデータフレームの転送を行います。

従来のSTPで使われたBlockingやListeningなどの状態は、RSTPではDiscardingへ整理されています。RSTPでは、スイッチ間の接続状態を判断して高速に遷移できるため、障害復旧やリンク接続後の待ち時間を短くできます。

PortFastとBPDU Guard

PC、プリンタ、IP電話などの端末だけを接続するアクセスポートでは、PortFastを使うと、ポートが素早くフォワーディング状態へ移行できます。端末がDHCPなどを使うときに、STPの待ち時間による通信開始の遅れを減らせます。

ただし、PortFastをスイッチ接続用のポートへ設定すると、ループを防ぐ仕組みを弱めるおそれがあります。端末用ポートではBPDU Guardも組み合わせ、BPDUを受信した場合にポートを停止させることで、誤ってスイッチが接続されたときのループ防止に役立てます。

まず覚えたいポイント

STPとRSTPは、冗長なスイッチ間リンクでL2ループを防ぐ仕組みです。ルートブリッジを中心に、ルートポートと指定ポートを選び、余分な経路は転送しない状態にします。RSTPは代替ポートなどを使って、障害時の切り替えをより高速に行います。PortFastとBPDU Guardは、端末接続用ポートを安全に使うための設定です。

関連用語