目次
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の基本動作
- ルートブリッジの選出: BPDUを交換し、最も優先度の高いスイッチ(Bridge IDが最小)をルートブリッジに選定。
- 経路の選出: 各スイッチはルートまでの最短経路を計算し、不要な経路はブロッキング。
- 冗長経路のスタンバイ化: 障害時にブロックされた経路を再開放して通信を維持。
5. STPのポート状態
| 状態 | 説明 |
|---|---|
| Blocking | BPDU受信のみ。データ転送なし。 |
| Listening | BPDUを交換しトポロジ確認中。 |
| Learning | MACアドレスを学習中(転送はまだ行わない)。 |
| Forwarding | データ転送を実施中。 |
| Disabled | 手動または障害により無効化。 |
従来のSTPでは、トポロジ変更時に30秒以上の収束時間が必要でした。
6. RSTP(Rapid Spanning Tree Protocol)
IEEE 802.1wで定義されたRSTPは、STPの課題である「収束遅延」を解消した高速版プロトコルです。 互換性を保ちながら、数秒以内の切り替えを実現します。
RSTPの特徴比較
| 項目 | STP | RSTP |
|---|---|---|
| 標準 | IEEE 802.1D | IEEE 802.1w |
| 収束時間 | 約30〜50秒 | 約1〜3秒 |
| ポートロール | Root / Designated / Blocked | Root / 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。現場での標準的な方式 |
