STPの派生いろいろ

STPの派生いろいろ

PVST

PVST(Per VLAN Spanning Tree)はVLANごとにスパニングツリーを形成するためのプロトコルです.標準のSTPでは同一のネットワーク全体で1つのスパニングツリーを形成します.これはCST(Common Spanning Tree)と呼ばれます.

VLAN単位でイーサネットフレームの転送負荷分散を実現できます.PVSTでVLANごとに構成されるスパニングツリーは以下のようになります.1つのポートでVLANごとに複数の役割が割り当てられます.VLANごとにポートの役割が異なる場合があります.

スイッチポートVLAN 1VLAN2
SW 1Port 1RPNDP
Port 2NDPRP
SW 2Port 1DPDP
Port 2DPRP
SW 3Port 1RPDP
Port 2DPDP

PVSTを利用することにより,VLANごとに最適なスパニングツリーを構成することができます.これにより,SW 1ではVLANごとにフレームを転送するポートを分散させています.
ただし,複数のVLANが存在するネットワークでは,PVSTのBPDUがVLANの数だけやり取りされるため,スパニングツリーの再計算にも多くのリソースを使われることになります.

RSTP(Rapid Spanning Tree Protocol)

RSTPの概要

STPではトポロジー変更時の経路切り替えに数十秒単位で時間がかかっていました.このままでは可用性に問題があるため,経路の切り替えをより高速に行えるRSTPが開発されました.RSTPはIEEE802.1wで標準化されています.

RSTPでは原則としてP2Pの全二重通信を前提します.P2Pリンク間でハンドシェイクを行うことでより素早くスイッチのポートを決定できます.

ポートの役割と状態

RSTPではポートの役割が5種類あります.

ポートの役割略称状態説明
ルートポートRPForwardingルートブリッジへのコストが最も低いポート.
代表ポートDPForwardingリンクの代表となり,トラフィックを流すポート.
オルタネートポートAPDiscardingルートポートの次候補として待機しているポート.
バックアップポートBPDiscarding代表ポートの次候補として待機しているポート.
ディセーブルポートDisble無効となっているポート.

RSTPのコンバージェンス時間

RSTPでは1秒程度でスパニングツリーの再計算が終了します.STPと比べかなり高速にコンバージェンスするので,瞬断レベルでの切り替えが可能となります.

RSTP BPDU 

RSTPのBPDUはSTPとほぼ同等です.主な違いはフラグで用いられるbit数が増えていることと,フォーマットの最後にバージョン1長さが追加されていることです.STPではコンフィグレーションBPDUとTCN BPDUがあったがRSTPでは1種類のみです.

RSTP_BPDU.png

フラグの各bitが表す役割は以下の通りです.

ビット役割
8TCN ACKフラグ
7アグリーメントフラグ
6フォワーディングフラグ
5ラーニングフラグ
4,3ポートの役割(00:Unknown, 01:代替ポート, 10:ルートポート, 11:代表ポート)
2プロポーザルフラグ
1TCフラグ

ポートの役割の決定 

RSTPではP2Pの2つのポート間でハンドシェイクして,代表ポートとルートポートを決定できるようにしています.そのために利用するのがプロポーザルポートとアグリーメントフラグです.プロポーザルフラグは自身のポートを代表ポートであると主張するフラグです.アグリーメントフラグは対向ポートを代表ポートとして受け入れ自身のポートをルートポートとして振舞おうとするフラグです.

P2Pで接続されたスイッチは互いのポートをディスカーディング状態にした上で,自身をルートブリッジであると仮定して代表ポートとしてプロポーザルフラグをセットしたBPDUを送信します.
プロポーザルBPDUを受信したスイッチはルートブリッジの情報やルートパスコストを比較します.相手の方が勝っている場合は対向のポートを代表ポートとして認め,自身のポートをルートポートとしてアグリーメントBPDUを送信します.

自身のポートが勝っている場合は待機して,対向からアグリーメントBPDUを受信したらすぐに代表ポートとしてフォワーディング状態に移行します.もしもプロポーザルBPDUを受信したポートよりもルートポートに適切なポートがある場合,アグリーメントBPDUは送信しません.その場合,対向のポートは転送遅延タイム2回分を待って代表ポートとなり,フォワーディング状態に移行します.

MST(Multiple Spanning Tree)

MSTの概要

MSTはVLANごとにスパニングツリーを構成できるように,また高速なコンバージェンスをできるように標準化された技術です.IEEE802.1sで標準化されており,PVSTとRSTPを組み合わせたような技術です.

MSTリージョン

MSTではスイッチをMSTリージョンという単位でグループ化します.MSTリージョンはMSTリージョン名,リビジョン番号,VLAN番号とインスタンスといった情報で構成されます.同一のMSTリージョンではリビジョン番号が一致している必要があります.

MSTインスタンス

複数のVLANをMSTインスタンスに対応づけし,MSTインスタンスごとにスパニングツリーを構成します.同時に利用できるMSTインスタンスは64個までです.MSTではMSTインスタンスごとにVLANを対応づけ,各スイッチはインスタンスごとのプライオリティに基づいてポートの役割を決定します.

以下の図では,VLAN1〜5をMSTインスタンス1に,VLAN6〜10をMSTインスタンス2に割り当てています.MSTインスタンス1ではSW2のプライオリティが最も小さいのでルートブリッジになります.SW3はセカンダリルートブリッジとなり,SW1のポート2が代替ポートに割り当てられます.同様にMSTインスタンス2でもポートの役割が決定され,SW1のリンクは転送経路が負荷分散されるようになります.