スイッチング技術:MAC アドレス学習とループ防止(STP / RSTP)

  • URLをコピーしました!
目次

1. スイッチの基本動作とは?

スイッチ(L2スイッチ)は、同一ネットワーク(同一VLAN)内の端末間通信を中継する機器です。 通信を中継する際、スイッチは「どのポートにどの端末(MACアドレス)が接続されているか」を記憶しており、この情報をもとに通信を最適化します。 この仕組みが MACアドレス学習(MAC Address Learning) です。

2. MACアドレス学習の仕組み

スイッチは受信したフレームのヘッダを確認し、以下の動作を行います。

ステップ内容
フレームを受信したポートを記録
送信元MACアドレスを確認
「送信元MACアドレス」と「受信ポート」を対応付けてMACアドレステーブルに登録
宛先MACアドレスを確認し、転送先を判断

転送動作の種類

状況動作
宛先MACがテーブルに存在該当ポートにユニキャスト転送
宛先MACが不明全ポートにフラッディング(Flooding)
宛先MACがブロードキャスト全ポートにブロードキャスト転送

3. スイッチングループの問題

複数のスイッチを冗長構成で接続すると、ネットワーク上にループが発生する可能性があります。 このループが発生すると、以下のような重大な障害を引き起こします。

  • ブロードキャストストーム: フレームが無限に回り続け、帯域を圧迫
  • MACアドレステーブルの不安定化: 同一MACが複数ポートで学習され、転送が混乱
  • 通信断・遅延: ネットワーク全体が麻痺するケースもある

この問題を防ぐために使用されるのが STP(Spanning Tree Protocol) です。

4. Spanning Tree Protocol(STP)の概要

STPはIEEE 802.1Dで規定されたループ防止プロトコルです。 スイッチ間でBPDU(Bridge Protocol Data Unit)を交換し、ループが発生しないようにトポロジを制御します。

STPの基本動作

  1. ルートブリッジの選出: BPDUを交換し、最も優先度の高いスイッチ(Bridge IDが最小)をルートブリッジに選定。
  2. 経路の選出: 各スイッチはルートまでの最短経路を計算し、不要な経路はブロッキング。
  3. 冗長経路のスタンバイ化: 障害時にブロックされた経路を再開放して通信を維持。

5. STPのポート状態

状態説明
BlockingBPDU受信のみ。データ転送なし。
ListeningBPDUを交換しトポロジ確認中。
LearningMACアドレスを学習中(転送はまだ行わない)。
Forwardingデータ転送を実施中。
Disabled手動または障害により無効化。

従来のSTPでは、トポロジ変更時に30秒以上の収束時間が必要でした。

6. RSTP(Rapid Spanning Tree Protocol)

IEEE 802.1wで定義されたRSTPは、STPの課題である「収束遅延」を解消した高速版プロトコルです。 互換性を保ちながら、数秒以内の切り替えを実現します。

RSTPの特徴比較

項目STPRSTP
標準IEEE 802.1DIEEE 802.1w
収束時間約30〜50秒約1〜3秒
ポートロールRoot / Designated / BlockedRoot / Designated / Alternate / Backup / Edge
特徴安定性重視高速性重視(即時切替)

特にエッジポート(末端機器接続ポート)は即座にForwardingできるため、 サーバやPCへの接続時に有効です。

7. STP / RSTP の設定例(Cisco)


# STPを有効化
Switch(config)# spanning-tree mode pvst

# RSTPを有効化
Switch(config)# spanning-tree mode rapid-pvst

# 優先度を下げてルートブリッジにする
Switch(config)# spanning-tree vlan 1 priority 4096
    

RSTP(Rapid PVST+)は現在の主流で、多くのCiscoスイッチではデフォルトで有効です。

8. 現場でのポイント

  • STPは原則ONで運用する(無効化するとループで全停止の恐れ)
  • Edgeポート(末端機器)は portfast を設定する
  • STPトポロジ変更(TCN)ログを監視し、頻発時は設定誤りやループを疑う
  • 新規構築ではSTPよりRSTPを採用するのが基本

9. トポロジ例

[PC1]──┐
        ├──[SW1]──[SW2]──[SW3]──┐
[PC2]──┘                       └───┘ ← このループをSTPが自動で制御
    

STPは自動的に1本の経路をブロックしてループを防止します。 障害が発生した場合は、ブロックしていた経路を即座に有効化し、通信を維持します。

10. まとめ

項目内容
MACアドレス学習スイッチがポートとMACの対応を記憶し、転送を最適化
ループ発生フレームが無限に回り続け、通信が停止するリスク
STPループを防ぎ、冗長経路を制御するプロトコル
RSTP高速収束版STP。現場での標準的な方式
目次