この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
この章の内容は、次のとおりです。
Rapid PVST+ プロトコルは、VLAN 単位で実装される IEEE 802.1w 標準(Rapid Spanning Tree Protocol(RSTP:高速スパニングツリー プロトコル))です。 Rapid PVST+ は、IEEE 802.1D 規格との相互運用が可能で、VLAN ごとではなく、すべての VLAN で、単一の STP インスタンスの役割を委任されます
Rapid PVST+ は、デフォルト VLAN(VLAN1)と、ソフトウェアで新たに作成された新しい VLAN でデフォルトでイネーブルになります。 Rapid PVST+ はレガシー IEEE 802.1D STP が稼働するデバイスと相互運用されます。
RSTP は、元の STP 規格 802.1D の拡張版で、より高速な収束が可能です。
(注) |
このマニュアルでは、IEEE 802.1w および IEEE 802.1s を指す用語として、「スパニングツリー」を使用します。 IEEE 802.1D STP について説明している箇所では、802.1D と明記します。 |
イーサネット ネットワークが適切に動作するには、任意の 2 つのステーション間のアクティブ パスは 1 つだけでなければなりません。
フォールト トレラントなインターネットワークを作成する場合、ネットワーク上のすべてのノード間にループフリー パスを構築する必要があります。 STP アルゴリズムでは、スイッチド ネットワーク中で、ループのない最適のパスが計算されます。 LAN ポートでは、定期的な間隔で、Bridge Protocol Data Unit(BPDU:ブリッジ プロトコル データ ユニット)と呼ばれる STP フレームの送受信が実行されます。 スイッチはこのフレームを転送しませんが、このフレームを使って、ループの発生しないパスを実現します。
エンド ステーション間に複数のアクティブ パスがあると、ネットワーク内でループが発生する原因になります。 ネットワークにループがあると、エンド ステーションがメッセージを重複して受信したり、複数の LAN ポートでエンド ステーションの MAC アドレスをスイッチが認識してしまうことがあります。 このような状態になるとブロードキャスト ストームが発生し、ネットワークが不安定になります。
STP では、ルート ブリッジでツリーを定義し、ルートからネットワーク内のすべてのスイッチへ、ループのないパスを定義します。 STP は冗長データパスを強制的にブロック状態にします。 スパニングツリーのネットワーク セグメントに障害が発生した場合、冗長パスがあると、STP アルゴリズムにより、スパニングツリー トポロジが再計算され、ブロックされたパスがアクティブになります。
スイッチの 2 つの LAN ポートで同じ MAC アドレスを認識することでループが発生している場合は、STP ポートのプライオリティとポート パス コストの設定により、フォワーディング ステートになるポートと、ブロッキング ステートになるポートが決定されます。
スパニングツリーを構成している、拡張 LAN のスイッチはすべて、BPDU を交換することによって、ネットワーク内の他のスイッチについての情報を収集します。 この BPDU の交換により、次のアクションが発生します。
そのスパニングツリー ネットワーク トポロジでルート スイッチが 1 台選択されます。
LAN セグメントごとに指定スイッチが 1 台選定されます。
冗長なインターフェイスをバックアップ ステートにする(スイッチド ネットワークの任意の箇所からルート スイッチに到達するために必要としないパスをすべて STP ブロック ステートにする)ことにより、スイッチド ネットワークのループをすべて解除します。
アクティブなスイッチド ネットワーク上のトポロジは、次の情報によって決定されます。
各スイッチに関連付けられている、スイッチの一意なスイッチ識別情報である MAC アドレス
各インターフェイスに関連付けられているルートのパス コスト
各インターフェイスに関連付けられているポートの識別情報
スイッチド ネットワークでは、ルート スイッチが論理的にスパニングツリー トポロジの中心になります。 STP では、BPDU を使用して、スイッチド ネットワークのルート スイッチやルート ポート、および、各スイッチド セグメントのルート ポートや指定ポートが選定されます。
各スイッチ上の各 VLAN には、一意の 64 ビット ブリッジ ID が設定されています。ブリッジ ID はブリッジ プライオリティ値、拡張システム ID(IEEE 802.1t)、および STP MAC アドレス割り当てで構成されています。
拡張システム ID がイネーブルの場合、ブリッジ プライオリティは 4 ビット値です。
(注) |
Cisco NX-OS では、拡張システム ID が常にイネーブルであり、拡張システム ID をディセーブルにできません。 |
12 ビットの拡張システム ID フィールドは、ブリッジ ID の一部です。
スイッチは 12 ビットの拡張システム ID を常に使用します。
システム ID の拡張は、ブリッジ ID と組み合わされ、VLAN の一意の識別情報として機能します。
ブリッジ プライオリティ値 |
拡張システム ID(VLAN ID と同設定) |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ビット 16 |
ビット 15 |
ビット 14 |
ビット 13 |
ビット 12 |
ビット 11 |
ビット 10 |
ビット 9 |
ビット 8 |
ビット 7 |
ビット 6 |
ビット 5 |
ビット 4 |
ビット 3 |
ビット 2 |
ビット 1 |
32768 |
16384 |
8192 |
4096 |
2048 |
1024 |
512 |
256 |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
(注) |
拡張システム ID と MAC アドレス削減は、ソフトウェア上で常にイネーブルです。 |
任意のスイッチの MAC アドレス削減がイネーブルの場合、不要なルート ブリッジの選定とスパニングツリー トポロジの問題を避けるため、他のすべての接続スイッチでも、MAC アドレス削減をイネーブルにする必要があります。
MAC アドレス リダクションをイネーブルにすると、ルート ブリッジ プライオリティは、4096 + VLAN ID の倍数となります。 スイッチのブリッジ ID(最小の優先ルート ブリッジを特定するために、スパニングツリー アルゴリズムによって使用される)は、4096 の倍数を指定します。 指定できるのは次の値だけです。
0
4096
8192
12288
16384
20480
24576
28672
32768
36864
40960
45056
49152
53248
57344
61440
STP は、拡張システム ID および MAC アドレスを使用して、VLAN ごとにブリッジ ID を一意にします。
(注) |
同じスパニングツリー ドメインにある別のブリッジで MAC アドレス削減機能が実行されていない場合、そのブリッジのブリッジ ID と、MAC アドレス削減機能で指定されている値のいずれかが一致する可能性があり、その場合はそのブリッジがルート ブリッジとして機能することになります。 |
スイッチは STP インスタンス全体に BPDU を送信します。 各スイッチにより、コンフィギュレーション BPDU が送信され、スパニングツリー トポロジの通信が行われ、計算されます。 各コンフィギュレーション BPDU に含まれる最小限の情報は、次のとおりです。
送信するスイッチによりルート ブリッジが特定される、スイッチの一意なブリッジ ID
ルートまでの STP パス コスト
送信側ブリッジのブリッジ ID
メッセージ エージ
送信側ポートの ID
hello タイマー、転送遅延タイマー、最大エージング タイム プロトコル タイマー
STP 拡張プロトコルの追加情報
スイッチにより Rapid PVST+ BPDU フレームが送信されるときには、フレームの送信先の VLAN に接続されているすべてのスイッチで、BPDU を受信します。 スイッチで BPDU を受信するときに、スイッチによりフレームは送信されませんが、フレームにある情報を使用して BPDU が計算されます。トポロジが変更される場合は、BPDU の送信が開始されます。
BPDU 交換によって次の処理が行われます。
各 VLAN では、ブリッジ ID の数値が最も小さいスイッチが、ルート ブリッジとして選択されます。 すべてのスイッチがデフォルトのプライオリティ(32768)で設定されている場合、その VLAN で最小の MAC アドレスを持つスイッチが、ルート ブリッジになります。 ブリッジ プライオリティ値はブリッジ ID の最上位ビットを占めます。
ブリッジのプライオリティの値を変更すると、スイッチがルート ブリッジとして選定される可能性を変更することになります。 小さい値を設定するほどその可能性が大きくなり、大きい値を設定するほどその可能性は小さくなります。
STP ルート ブリッジは論理的に、ネットワークで各スパニングツリー トポロジの中心です。 ネットワークの任意の箇所からルート ブリッジに到達するために必要ではないすべてのパスは、STP ブロッキング モードになります。
BPDU には、送信側ブリッジおよびそのポートについて、ブリッジおよび MAC アドレス、ブリッジ プライオリティ、ポート プライオリティ、パス コストなどの情報が含まれます。 STP では、この情報を使用して、STP インスタンス用のルート ブリッジを選定し、ルート ブリッジに導くルート ポートを選択し、各セグメントの指定ポートを特定します。
次の図では、スイッチ A がルート ブリッジに選定されます。これは、すべてのスイッチでブリッジ プライオリティがデフォルト(32768)に設定されており、スイッチ A の MAC アドレスが最小であるためです。 しかし、トラフィック パターン、フォワーディング ポートの数、リンク タイプによっては、スイッチ A が最適なルート ブリッジでないことがあります。 任意のスイッチのプライオリティを高くする(数値を小さくする)ことでそのスイッチがルート ブリッジになるようにします。これにより STP が強制的に再計算され、そのスイッチをルートとする新しいスパニングツリー トポロジが形成されます。
スパニングツリー トポロジがデフォルトのパラメータに基づいて算出された場合、スイッチド ネットワークの送信元エンド ステーションから宛先エンド ステーションまでのパスが最適にならない場合があります。 たとえば、現在のルート ポートよりも数値の大きいポートに高速リンクを接続すると、ルート ポートが変更される場合があります。 最高速のリンクをルート ポートにすることが重要です。
たとえば、スイッチ B の 1 つのポートが光ファイバ リンクであり、同じスイッチの別のポート(Unshielded Twisted-Pair(UTP:シールドなしツイストペア)リンク)がルート ポートになっていると仮定します。 ネットワーク トラフィックを高速の光ファイバ リンクに流した方が効率的です。 光ファイバ ポートの STP ポート プライオリティをルート ポートよりも高いプライオリティに変更すると(数値を下げる)、光ファイバ ポートが新しいルート ポートになります。
Rapid PVST+ は、VLAN ごとに実装されている IEEE 802.1w(RSTP)規格です。 (手作業で STP をディセーブルにしていない場合)STP の 1 つのインスタンスは、設定されている各 VLAN で実行されます。 VLAN 上の各 Rapid PVST+ インスタンスには、1 つのルート スイッチがあります。 Rapid PVST+ の実行中には、VLAN ベースで STP をイネーブルまたはディセーブルにできます。
(注) |
Rapid PVST+ は、スイッチでのデフォルト STP モードです。 |
Rapid PVST+ では、ポイントツーポイントの配線を使用して、スパニングツリーの高速コンバージェンスが行われます。 Rapid PVST+ によりスパニングツリーの再設定を 1 秒未満に発生させることができます(802.1D STP のデフォルト設定では 50 秒)。
(注) |
Rapid PVST+ では、VLAN ごとに 1 つの STP インスタンスがサポートされます。 |
Rapid PVST+ を使用すると、STP コンバージェンスが急速に発生します。 STP にある各指定ポートまたは各ルート ポートにより、デフォルトで、2 秒ごとに BPDU が送信されます。 トポロジの指定ポートまたはルート ポートで、hello メッセージが 3 回連続で失われた場合、または、最大エージング タイムの期限が切れた場合、ポートでは、すべてのプロトコル情報がテーブルにただちにフラッシュされます。 ポートでは、3 つの BPDU が失われるか、最大エージング タイムの期限が切れた場合、直接のネイバー ルートまたは指定ポートへの接続が失われたと見なされます。 プロトコル情報の急速な経過により、障害検出を迅速に行うことができます。 スイッチは PVID を自動的に確認します。
Rapid PVST+ により、ネットワーク デバイス、スイッチ ポート、または LAN の障害の直後に、接続が迅速に回復されます。 RSTP は、エッジ ポート、新しいルート ポート、およびポイントツーポイント リンクで接続されているポートに次のような高速コンバージェンスを提供します。
エッジ ポート:RSTP スイッチにあるエッジ ポートとしてポートを設定する場合、エッジ ポートでは、フォワーディング ステートにただちに移行します (この急速な移行は、PortFast と呼ばれていたシスコ特有の機能でした)。エッジ ポートとして 1 つのエンド ステーションに接続されているポートにのみ、設定する必要があります。 エッジ ポートでは、リンクの変更時にはトポロジの変更は生成されません。
STP エッジ ポートとしてポートを設定するには、spanning-tree port type インターフェイス コンフィギュレーション コマンドを入力します。
(注) |
ホストに接続されているすべてのポートを、エッジ ポートとして設定することを推奨します。 |
ルート ポート:Rapid PVST+ により新しいルート ポートが選択された場合、古いポートがブロックされ、新しいルート ポートがただちにフォワーディング ステートに移行します。
ポイントツーポイント リンク:ポイントツーポイント リンクによってあるポートと別のポートを接続することでローカル ポートが指定ポートになると、提案合意ハンドシェイクを使用して他のポートと急速な移行がネゴシエートされ、トポロジにループがなくなります。
Rapid PVST+ では、エッジ ポートとポイントツーポイント リンクでのみ、フォワーディング ステートへの急速な移行が達成されます。 リンク タイプは設定が可能ですが、システムでは、ポートのデュプレックス設定からリンク タイプ情報が自動的に引き継がれます。 全二重ポートはポイントツーポイント ポートであると見なされ、半二重ポートは共有ポートであると見なされます。
エッジ ポートでは、トポロジの変更は生成されませんが、直接接続されているネイバーから 3 回連続 BPDU の受信に失敗するか、最大エージング タイムのタイム アウトが発生すると、他のすべての指定ポートとルート ポートにより、トポロジ変更(TC)BPDU が生成されます。 この時点で、指定ポートまたはルート ポートにより、TC フラグがオンに設定された状態で BPDU が送信されます。 BPDU では、ポート上で TC While タイマーが実行されている限り、TC フラグが設定され続けます。 TC While タイマーの値は、hello タイムに 1 秒を加えて設定された値です。 トポロジ変更の初期ディテクタにより、トポロジ全体で、この情報がフラッディングされます。
Rapid PVST+ により、トポロジの変更が検出される場合、プロトコルでは次の処理が発生します。
すべての非エッジ ルート ポートと指定ポートで、必要に応じ、hello タイムの 2 倍の値で TC While タイマーが開始されます。
これらのすべてのポートに関連付けられている MAC アドレスがフラッシュされます。
トポロジ変更通知は、トポロジ全体で迅速にフラッディングされます。 システムでトポロジの変更が受信されると、システムにより、ポート ベースでダイナミック エントリがただちにフラッシュされます。
(注) |
スイッチが、レガシー 802.1D STP を実行しているスイッチと相互に動作しているときにのみ、TCA フラグが使用されます。 |
トポロジの変更後、提案と合意のシーケンスがネットワークのエッジ方向に迅速に伝播され、接続がただちに回復します。
Rapid PVST+ と 802.1w では、フラグ バイトの 6 ビットすべてを使用して、BPDU の送信元のポートのロールおよびステートと、提案や合意のハンドシェイクが追加されます。 次の図に、Rapid PVST+ の BPDU フラグの使用法を示します。
もう一つの重要な変更点は、Rapid PVST+ BPDU がタイプ 2、バージョン 2 であることで、これにより、スイッチでは、接続されているレガシー(802.1D)ブリッジを検出できるようになります。 802.1D の BPDU は、バージョン 0 です。
次の図のように、スイッチ A は、ポイントツーポイント リンクを介してスイッチ B に接続され、すべてのポートがブロッキング ステートになります。 スイッチ A のプライオリティ値がスイッチ B のプライオリティ値より小さい数値であると仮定します。
スイッチ A はスイッチ B に提案メッセージ(提案フラグが設定されたコンフィギュレーション BPDU)を送信し、スイッチ A 自身が指定スイッチになることを提案します。
提案メッセージの受信後、スイッチ B は、その新しいルート ポートとして、提案メッセージが受信されたポートからポートを選択し、すべての非エッジ ポートをブロッキング ステートにし、新しいルート ポートを使って合意メッセージ(合意フラグがオンに設定された BPDU)を送信します。
スイッチ B から合意メッセージの受信後、スイッチ A でも、その指定ポートがただちにフォワーディング ステートに移行されます。 スイッチ B ですべての非エッジ ポートがブロックされ、スイッチ A とスイッチ B の間にポイントツーポイント リンクがあるため、ネットワークではループは形成できません。
スイッチ C がスイッチ B に接続されると、類似したハンドシェイク メッセージのセットがやり取りされます。 スイッチ C は、そのルート ポートとしてスイッチ B に接続されたポートを選択し、リンクの両端がただちにフォワーディング ステートになります。 このハンドシェイク処理の繰り返しごとに、さらに 1 つのネットワーク デバイスがアクティブなトポロジに参加します。 ネットワークの収束時には、この提案と合意のハンドシェイク処理がスパニングツリーのルートからリーフに進みます。
スイッチは、ポート デュプレックス モードからリンク タイプを認識します。全二重ポートはポイントツーポイント接続であると見なされ、半二重ポートは共有接続であると見なされます。 デュプレックス設定によって制御されるデフォルト設定は、spanning-tree link-type インターフェイス コンフィギュレーション コマンドを入力することで上書きできます。
この提案合意ハンドシェイクが開始されるのは、非エッジ ポートがブロッキング ステートからフォワーディング ステートに移行するときだけです。 次に、ハンドシェイク処理は、トポロジ全体に段階的に広がります。
次の表に、Rapid PVST+ のパフォーマンスに影響するプロトコル タイマーを示します。
変数 |
説明 |
---|---|
hello タイマー |
各スイッチから他のスイッチに BPDU をブロードキャストする頻度を決定します。 デフォルトは 2 秒で、範囲は 1 ~ 10 です。 |
転送遅延タイマー |
ポートが転送を開始するまでの、リスニング ステートおよびラーニング ステートが継続する時間を決定します。 このタイマーは通常、プロトコルによっては使用されませんが、バックアップとして使用されます。 デフォルトは 15 秒で、範囲は 4 ~ 30 秒です。 |
最大エージング タイマー |
ポートで受信したプロトコル情報がスイッチで保存される時間を決めます。 このタイマーは通常、プロトコルによっては使用されませんが、802.1D スパニングツリーと相互に動作するときに使用されます。 デフォルトは 20 秒で、範囲は 6 ~ 40 秒です |
Rapid PVST+ では、ポート ロールを割り当て、アクティビティ トポロジを認識することによって、高速収束が行われます。 Rapid PVST+ は、802.1D STP に構築され、最高のプライオリティ(最小数値のプライオリティの値)のスイッチがルート ブリッジとして選択されます。 Rapid PVST+ により、次のポートのロールの 1 つが個々のポートに割り当てられます。
ルート ポート:スイッチによりパケットがルート ブリッジに転送されるときに、最適のパス(最小コスト)を用意します。
指定ポート:指定スイッチに接続します。指定スイッチでは、LAN からルート ブリッジにパケットが転送されるときに、発生するパス コストが最小になります。 指定スイッチが LAN に接続するポートのことを指定ポートと呼びます。
代替ポート:現在のルート ポートによって用意されているパスに、ルート ブリッジへの代替パスを用意します。 代替ポートにより、トポロジにある別のスイッチへのパスが確保されます。
バックアップ ポート:指定ポートが提供した、スパニングツリーのリーフに向かうパスのバックアップとして機能します。 バックアップ ポートが存在できるのは、2 つのポートがポイントツーポイント リンクによってループバックで接続されている場合、または 1 つのスイッチに共有 LAN セグメントへの接続が 2 つ以上ある場合です。 バックアップ ポートにより、スイッチに対する別のパスがトポロジ内で確保されます。
ディセーブル ポート:スパニングツリーの動作においてロールが与えられていません。
ネットワーク全体でポートのロールに一貫性のある安定したトポロジでは、Rapid PVST+ により、ルート ポートと指定ポートがすべてただちにフォワーディング ステートになり、代替ポートとバックアップ ポートはすべて、必ずブロッキング ステートになります。 指定ポートはブロッキング ステートで開始されます。 フォワーディング プロセスおよびラーニング プロセスの動作はポート ステートによって制御されます。
ルート ポートまたは DP の役割があるポートは、アクティブ トポロジに組み込まれます。 代替ポートまたはバックアップ ポートのロールを持つポートは、アクティブなトポロジから除外されます(次の図を参照)。
プロトコル情報がスイッチド LAN を通過するとき、伝播遅延が生じることがあります。 その結果、スイッチド ネットワークのさまざまな時点および場所でトポロジの変化が発生します。 スパニングツリー トポロジで LAN ポートが非伝搬ステートからフォワーディング ステートに直接移行する際、一時的にデータがループすることがあります。 ポートは新しいトポロジ情報がスイッチド LAN 経由で伝播されるまで待機し、それからフレーム転送を開始する必要があります。
Rapid PVST+ または MST を使用しているソフトウェア上の各 LAN ポートは、次の 4 つのステートの 1 つで終了します。
ブロッキング:LAN ポートはフレーム転送に参加しません。
ラーニング:LAN ポートは、フレーム転送への参加を準備します。
フォワーディング:LAN ポートはフレームを転送します。
ディセーブル:LAN ポートは STP に参加せず、フレームを転送しません。
Rapid PVST+ をイネーブルにすると、ソフトウェアのすべてのポート、VLAN、ネットワークは、電源投入時にブロッキング ステートからラーニングの移行ステートに進みます。 各 LAN ポートは、適切に設定されていれば、フォワーディング ステートまたはブロッキング ステートで安定します。
STP アルゴリズムにより LAN ポートがフォワーディング ステートになると、次の処理が発生します。
ブロッキング ステートにある LAN ポートはフレームを転送しません。
ブロッキング ステートの LAN ポートでは、次の処理が実行されます。
ラーニング ステートにある LAN ポートは、フレームの MAC アドレスをラーニングすることによって、フレーム転送の準備をします。 LAN ポートは、ブロッキング ステートからラーニング ステートになります。
ラーニング ステートの LAN ポートでは、次の処理が実行されます。
フォワーディング ステートにある LAN ポートでは、フレームを転送します。 LAN ポートは、ラーニング ステートからフォワーディング ステートになります。
フォワーディング ステートの LAN ポートでは、次の処理が実行されます。
ディセーブル ステートにある LAN ポートは、フレーム転送または STP は行いません。 ディセーブル ステートの LAN ポートは、実質的に動作が停止しています。
ディセーブルの LAN ポートでは、次の処理が実行されます。
次の表に、ポートおよびそれに対応してアクティブ トポロジに含められる、可能性のある動作と Rapid PVST+ のステートのリストを示します。
動作ステータス |
ポート ステート |
ポートがアクティブ トポロジに含まれているか |
---|---|---|
イネーブル |
ブロッキング |
No |
イネーブル |
ラーニング |
Yes |
イネーブル |
フォワーディング |
Yes |
ディセーブル |
ディセーブル |
No |
スイッチがいずれかのポートで提案メッセージを受信し、そのポートが新しいルート ポートとして選択されると、Rapid PVST+ は、強制的に、すべての他のポートと新しいルート情報との同期をとります。
他のすべてのポートが同期化されると、スイッチはルート ポートで受信した優位のルート情報に同期化されます。 次のいずれかが当てはまる場合、スイッチ上の個々のポートで同期がとられます。
指定ポートがフォワーディング ステートの場合で、エッジ ポートとして設定されていない場合、Rapid PVST+ により強制的に新しいルート情報との同期がとられるときに、ブロッキング ステートに移行します。 一般的に、Rapid PVST+ により、強制的にルート情報との同期がとられる場合で、ポートで前述の条件のいずれかが満たされない場合、ポート ステートはブロッキングに設定されます。
すべてのポートで同期がとられた後で、スイッチから、ルート ポートに対応する指定スイッチへ、合意メッセージが送信されます。 ポイントツーポイント リンクで接続されているスイッチが、そのポートのロールについての合意に存在する場合、Rapid PVST+ により、ポート ステートがただちにフォワーディング ステートに移行します。 この一連のイベントを次の図に示します。
上位 BPDU とは、自身のために現在保存されているものより上位であるルート情報(より小さいスイッチ ID、より小さいパス コストなど)を持つ BPDU のことです。
上位 BPDU がポートで受信されると、Rapid PVST+ は再設定を起動します。 そのポートが新しいルート ポートとして提案、選択されている場合、Rapid PVST+ は残りすべてのポートを同期させます。
受信した BPDU が提案フラグの設定された Rapid PVST+ BPDU の場合、スイッチは残りすべてのポートを同期させたあと、合意メッセージを送信します。 前のポートがブロッキング ステートになるとすぐに、新しいルート ポートがフォワーディング ステートに移行します。
ポートで受信した上位情報によりポートがバックアップ ポートまたは代替ポートになる場合、Rapid PVST+ はポートをブロッキング ステートに設定し、合意メッセージを送信します。 指定ポートは、転送遅延タイマーが期限切れになるまで、提案フラグが設定された BPDU を送信し続けます。 期限切れになると、ポートはフォワーディング ステートに移行します。
下位 BPDU とは、自身のために現在保存されているものより下位であるルート情報(より大きいスイッチ ID、より大きいパス コストなど)を持つ BPDU のことです。
DP は、下位 BPDU を受信すると、独自の情報ですぐに応答します。
ソフトウェアを使用することで、受信した BPDU からポートの役割とステートの一貫性を確認し、単一方向リンクが失敗してブリッジ処理のループを引き起こしていないかどうかを検証できます。
指定ポートは、矛盾を検出すると、そのロールを維持しますが、廃棄ステートに戻ります。一貫性がない場合は、接続を中断した方がブリッジング ループを解決できるからです。
次の図に、ブリッジング ループ発生の一般的な原因となる単一方向リンク障害を示します。 スイッチ A はルート ブリッジで、その BPDU は、スイッチ B へのリンク上では失われます。 802.1w 規格の BPDU には送信ポートのロールおよびステートが含まれます。 この情報により、送信する上位 BPDU に対してスイッチ B が反応しないこと、スイッチ B はルート ポートではなく指定ポートであることが、スイッチ A によって検出できます。 この結果、スイッチ A は、そのポートをブロックし(またはブロックし続け)、ブリッジング ループが防止されます。 ブロックは、STP の矛盾として示されます。
(注) |
Rapid PVST+ はデフォルトで、ショート(16 ビット)パスコスト方式を使用してコストを計算します。 ショート パスコスト方式では、1 ~ 65,535 の範囲で任意の値を割り当てることができます。 ただし、ロング(32 ビット)パスコスト方式を使用するようにスイッチを設定できます。この場合は、1 ~ 200,000,000 の範囲で任意の値を割り当てることができます。 パスコスト計算方式はグローバルに設定します。 |
STP ポートのパスコストのデフォルト値は、メディア速度と LAN インターフェイスのパスコストの計算方式によって決まります。 ループが発生した場合、STP では、LAN インターフェイスの選択時に、フォワーディング ステートにするためのポート コストを考慮します。
帯域幅 |
ポート コストのショート パスコスト方式 |
ポート コストのロング パスコスト方式 |
---|---|---|
10 Mbps |
100 |
2,000,000 |
100 Mbps |
19 |
200,000 |
1 ギガビット イーサネット |
4 |
20,000 |
10 ギガビット イーサネット |
2 |
2,000 |
STP に最初に選択させたい LAN インターフェイスには低いコスト値を、最後に選択させたい LAN インターフェイスには高いコスト値を割り当てることができます。 すべての LAN インターフェイスが同じコスト値を使用している場合には、STP は LAN インターフェイス番号が最も小さい LAN インターフェイスをフォワーディング ステートにして、残りの LAN インターフェイスをブロックします。
アクセス ポートでは、ポート コストをポートごとに割り当てます。 トランク ポートでは VLAN ごとにポート コストを割り当てるため、トランク ポート上のすべての VLAN に同じポート コストを設定できます。
ループが発生し、複数のポートに同じパス コストが割り当てられている場合、Rapid PVST+ では、フォワーディング ステートにする LAN ポートの選択時に、ポートのプライオリティを考慮します。 Rapid PVST+ に最初に選択させる LAN ポートには小さいプライオリティ値を割り当て、Rapid PVST+ に最後に選択させる LAN ポートには大きいプライオリティ値を割り当てます。
すべての LAN ポートに同じプライオリティ値が割り当てられている場合、Rapid PVST+ は、LAN ポート番号が最小の LAN ポートをフォワーディング ステートにし、他の LAN ポートをブロックします。 プライオリティの範囲は 0 ~ 224(デフォルトは 128)で、32 ずつ増加させて設定できます。 LAN ポートがアクセス ポートとして設定されているときはポートのプライオリティ値が使用され、LAN ポートがトランク ポートとして設定されているときは VLAN ポートのプライオリティ値が使用されます。
Cisco スイッチを 802.1Q トランクで接続しているネットワークでは、スイッチは、トランクの VLAN ごとに STP のインスタンスを 1 つ維持します。 ただし、非 Cisco 802.1Q スイッチでは、トランクのすべての VLAN に対して維持する STP のインスタンスは 1 つだけです。
802.1Q トランクで Cisco スイッチを非 Cisco スイッチに接続している場合は、Cisco スイッチにより、トランクの 802.1Q VLAN の STP インスタンスが、非 Cisco 802.1Q スイッチの STP インスタンスと組み合わされます。 ただし、Cisco スイッチで維持されている VLAN ごとの STP 情報はすべて、非シスコ 802.1Q スイッチのクラウドによって分けられます。 Cisco スイッチを分ける非 Cisco 802.1Q クラウドは、スイッチ間の単一のトランク リンクとして扱われます。
Rapid PVST+ は、レガシー 802.1D プロトコルを実行中のスイッチと相互に動作させることができます。 スイッチが BPDU バージョン 0 を受信すると、802.1D を実行中の機器と相互に動作していることを認識します。 Rapid PVST+ の BPDU はバージョン 2 です。 受信した BPDU が、提案フラグがオンに設定された 802.1w BPDU バージョン 2 の場合、スイッチは残りすべてのポートを同期させたあと、合意メッセージを送信します。 受信した BPDU が 802.1D BPDU バージョン 0 の場合は、スイッチは提案フラグを設定せずに、ポートの転送遅延タイマーを開始します。 新しいルート ポートはフォワーディング ステートに移行するために 2 倍の転送遅延時間を必要とします。
スイッチは、次のように、レガシー 802.1D スイッチと相互動作します。
通知:802.1D BPDU とは異なり 802.1w は、TCN BPDU を使用しません。 ただし、802.1D スイッチとの相互運用のため、Cisco NX-OS では、TCN BPDU を処理し、生成します。
受信応答:802.1w スイッチでは、802.1D スイッチから指定ポート上に TCN メッセージを受信すると、TCA ビットを設定し、802.1D コンフィギュレーション BPDU で応答します。 ただし、802.1D スイッチに接続されているルート ポートで TC While タイマー(802.1D の TC タイマーと同じ)がアクティブの場合、TCA がセットされたコンフィギュレーション BPDU を受信すると、TC While タイマーはリセットされます。
動作のこの方式は、802.1D スイッチでのみ必要です。 802.1w BPDU では、TCA ビットは設定されません。
ポートが初期化されると、移行遅延タイマー(802.1w BPDU が送信される最小時間を指定)が開始され、802.1w BPDU が送信されます。 このタイマーがアクティブな間、スイッチはそのポートで受信したすべての BPDU を処理し、プロトコル タイプを無視します。
ポート移行遅延タイマーの期限切れ後にスイッチで 802.1D BPDU を受信した場合は、802.1D スイッチに接続していると見なして、802.1D BPDU のみを使用して開始します。 ただし、802.1w スイッチが、ポート上で 802.1D BPDU を使用中で、タイマーの期限切れ後に 802.1w BPDU を受信すると、タイマーが再起動され、ポート上の 802.1w BPDU を使用して開始されます。
(注) |
すべてのスイッチでプロトコルを再ネゴシエーションするには、Rapid PVST+ を再起動する必要があります。 |
Rapid PVST+ は、IEEE 802.1s Multiple Spanning Tree(MST)規格とシームレスに相互運用されます。 ユーザによる設定は不要です。
Rapid PVST+ プロトコルには 802.1w 規格が適用されていますが、Rapid PVST+ は、ソフトウェアのデフォルト STP 設定です。
Rapid PVST+ は VLAN ごとにイネーブルにします。 STP のインスタンスが VLAN ごとに維持されます(STP をディセーブルにした VLAN を除く)。 デフォルトで Rapid PVST+ は、デフォルト VLAN と、作成した各 VLAN でイネーブルになります。
スイッチ上で Rapid PVST+ をイネーブルにすると、指定されている VLAN で Rapid PVST+ をイネーブルにする必要があります。
Rapid PVST+ はデフォルトの STP モードです。 MST と Rapid PVST+ は同時には実行できません。
(注) |
スパニングツリー モードを変更すると、変更前のモードのスパニングツリー インスタンスがすべて停止されて新しいモードで起動されるため、トラフィックが中断する場合があります。 |
次の例は、スイッチで Rapid PVST+ をイネーブルにする方法を示しています。
switch# configure terminal
switch(config)# spanning-tree mode rapid-pvst
(注) |
STP はデフォルトでイネーブルのため、設定結果を参照するために show running-config コマンドを入力しても、Rapid PVST+ をイネーブルにするために入力したコマンドは表示されません。 |
Rapid PVST+ は、VLAN ごとにイネーブルまたはディセーブルにできます。
(注) |
Rapid PVST+ は、デフォルト VLAN と、作成したすべての VLAN でデフォルトでイネーブルになります。 |
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | switch(config)# spanning-tree vlan-range |
VLAN ごとに Rapid PVST+(デフォルト STP)をイネーブルにします。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。 |
||
ステップ 3 | switch(config)# no spanning-tree vlan-range |
(任意) 指定 VLAN で Rapid PVST+ をディセーブルにします。
|
次に、VLAN で STP をイネーブルにする例を示します。
switch# configure terminal
switch(config)# spanning-tree vlan 5
Rapid PVST+ では、STP のインスタンスはアクティブな VLAN ごとに管理されます。 各 VLAN では、最も小さいブリッジ ID を持つスイッチが VLAN のルート ブリッジになります。
特定の VLAN インスタンスがルート ブリッジになるように設定するには、そのブリッジのプライオリティをデフォルト値(32768)よりかなり小さい値に変更します。
spanning-tree vlan vlan_ID root コマンドを入力すると、各 VLAN で現在ルートになっているブリッジのブリッジ プライオリティがスイッチによって確認されます。 スイッチは指定した VLAN のブリッジ プライオリティを 24576 に設定します(このスイッチがその VLAN のルートになる値)。 指定した VLAN のいずれかのルート ブリッジに 24576 より小さいブリッジ プライオリティが設定されている場合は、スイッチはその VLAN のブリッジ プライオリティを、最小のブリッジ プライオリティより 4096 だけ小さい値に設定します。
(注) |
ルート ブリッジになるために必要な値が 1 より小さい場合は、spanning-tree vlan vlan_ID root コマンドはエラーになります。 |
注意 |
STP の各インスタンスのルート ブリッジは、バックボーン スイッチまたはディストリビューション スイッチでなければなりません。 アクセス スイッチは、STP のプライマリ ルートとして設定しないでください。 |
キーワード diameter を入力し、ネットワーク直径(ネットワーク内の任意の 2 つのエンド ステーション間での最大ブリッジ ホップ数)を指定します。 ネットワーク直径を指定すると、その直径のネットワークに最適な hello タイム、転送遅延時間、最大エージング タイムが自動的に選択されます。これにより、STP 収束の時間が大幅に削減されます。 キーワード hello-time を入力すると、自動的に計算された hello タイムを上書きできます。
(注) |
ルート ブリッジとして設定されているスイッチでは、hello タイム、転送遅延時間、最大エージング タイムは手動で設定(spanning-tree mst hello-time、spanning-tree mst forward-time、spanning-tree mst max-age の各コンフィギュレーション コマンドを使用)しないでください。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range root primary [diameter dia [hello-time hello-time]] |
ソフトウェア スイッチをプライマリ ルート ブリッジとして設定します。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。dia のデフォルトは 7 です。 hello-time の範囲は 1 ~ 10 秒で、デフォルト値は 2 秒です。 |
次の例は、VLAN のルート スイッチとしてスイッチを設定する方法を示しています。
switch# configure terminal
switch(config)# spanning-tree vlan 5 root primary diameter 4
ソフトウェア スイッチをセカンダリ ルートとして設定しているときに、STP ブリッジのプライオリティをデフォルト値(32768)から変更しておくと、プライマリ ルート ブリッジに障害が発生した場合に、そのスイッチが、指定した VLAN のルート ブリッジになります(ネットワークの他のスイッチで、デフォルトのブリッジ プライオリティ 32768 が使用されているとします)。 STP により、ブリッジ プライオリティが 28672 に設定されます。
キーワード diameter を入力し、ネットワーク直径(ネットワーク内の任意の 2 つのエンド ステーション間での最大ブリッジ ホップ数)を指定します。 ネットワーク直径を指定すると、その直径のネットワークに最適な hello タイム、転送遅延時間、最大エージング タイムが自動的に選択されます。これにより、STP コンバージェンスの時間が大幅に削減されます。 キーワード hello-time を入力すると、自動的に計算された hello タイムを上書きできます。
複数のスイッチに対して同様に設定すれば、複数のバックアップ ルート ブリッジを設定できます。 プライマリ ルート ブリッジの設定時に使用した値と同じネットワーク直径と hello タイムの値を入力します。
(注) |
ルート ブリッジとして設定されているスイッチでは、hello タイム、転送遅延時間、最大エージング タイムは手動で設定(spanning-tree mst hello-time、spanning-tree mst forward-time、spanning-tree mst max-age の各グローバル コンフィギュレーション コマンドを使用)しないでください。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range root secondary [diameter dia [hello-time hello-time]] |
ソフトウェア スイッチをセカンダリ ルート ブリッジとして設定します。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。 dia のデフォルトは 7 です。 hello-time の範囲は 1 ~ 10 秒で、デフォルト値は 2 秒です。 |
次に、VLAN のセカンダリ ルート ブリッジとしてスイッチを設定する例を示します。
switch# configure terminal
switch(config)# spanning-tree vlan 5 root secondary diameter 4
Rapid PVST+ に最初に選択させる LAN ポートには小さいプライオリティ値を割り当て、Rapid PVST+ に最後に選択させる LAN ポートには大きいプライオリティ値を割り当てます。 すべての LAN ポートに同じプライオリティ値が割り当てられている場合、Rapid PVST+ は、LAN ポート番号が最小の LAN ポートをフォワーディング ステートにし、他の LAN ポートをブロックします。
LAN ポートがアクセス ポートとして設定されているときはポートのプライオリティ値が使用され、LAN ポートがトランク ポートとして設定されているときは VLAN ポートのプライオリティ値が使用されます。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# interface type slot/port |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 | switch(config-if)# spanning-tree [vlan vlan-list] port-priority priority |
LAN インターフェイスのポート プライオリティを設定します。 priority の値は 0 ~ 224 を指定できます。 値が小さいほどプライオリティが高いことを示します。 プライオリティ値は、0、32、64、96、128、160、192、224 です。 その他すべての値は拒否されます。 デフォルト値は 128 です。 |
次に、イーサネット インターフェイスのアクセス ポート プライオリティを設定する例を示します。
switch# configure terminal
switch(config)# interface ethernet 1/4
switch(config-if)# spanning-tree port-priority 160
このコマンドを使用できるのは、物理イーサネット インターフェイスに対してだけです。
アクセス ポートでは、ポートごとにポート コストを割り当てます。 トランク ポートでは VLAN ごとにポート コストを割り当てるため、トランク上のすべての VLAN に同じポート コストを設定できます。
(注) |
Rapid PVST+ モードでは、ショート型またはロング型のいずれかのパスコスト方式を使用できます。この方式は、インターフェイスまたはコンフィギュレーション サブモードのいずれかで設定できます。デフォルトのパスコスト方式はショート型です。 |
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 2 | switch(config)# spanning-tree pathcost method {long | short} |
Rapid PVST+ パスコスト計算に使用される方式を選択します。 デフォルト方式は short 型です。 |
||
ステップ 3 | switch(config)# interface type slot/port |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
||
ステップ 4 | switch(config-if)# spanning-tree [vlan vlan-id] cost [value | auto] |
LAN インターフェイスのポート コストを設定します。 ポート コスト値には、パスコスト計算方式に応じて、次の値を指定できます。
デフォルトの auto では、パスコスト計算方式およびメディア速度に基づいてポート コストが設定されます。 |
次に、イーサネット インターフェイスのアクセス ポート コストを設定する例を示します。
switch# configure terminal
switch (config)# spanning-tree pathcost method long
switch (config)# interface ethernet 1/4
switch(config-if)# spanning-tree cost 1000
このコマンドを使用できるのは、物理イーサネット インターフェイスに対してだけです。
VLAN の Rapid PVST+ のブリッジ プライオリティを設定できます。
(注) |
この設定を使用するときは注意が必要です。 ほとんどの場合、プライマリ ルートとセカンダリ ルートを設定して、ブリッジ プライオリティを変更することを推奨します。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range priority value |
VLAN のブリッジ プライオリティを設定します。 有効な値は 0、4096、8192、12288、16384、20480、24576、28672、32768、36864、40960、45056、49152、53248、57344、61440 です。 その他すべての値は拒否されます。 デフォルト値は 32768 です。 |
次の例は、VLAN のブリッジ プライオリティを設定する方法を示します。
switch# configure terminal switch(config)# spanning-tree vlan 5 priority 8192
VLAN では、Rapid PVST+ の hello タイムを設定できます。
(注) |
この設定を使用するときは注意が必要です。 ほとんどの場合、プライマリ ルートとセカンダリ ルートを設定して、hello タイムを変更することを推奨します。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range hello-time hello-time |
VLAN の hello タイムを設定します。 hello タイム値には 1 ~ 10 秒を指定できます。 デフォルト値は 2 秒です。 |
次に、VLAN の hello タイムを設定する例を示します。
switch# configure terminal
switch(config)# spanning-tree vlan 5 hello-time 7
Rapid PVST+ の使用時は、VLAN ごとに転送遅延時間を設定できます。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range forward-time forward-time |
VLAN の転送遅延時間を設定します。 転送遅延時間の値の範囲は 4 ~ 30 秒で、デフォルトは 15 秒です。 |
次に、VLAN の転送遅延時間を設定する例を示します。
switch# configure terminal
switch(config)# spanning-tree vlan 5 forward-time 21
Rapid PVST+ の使用時は、VLAN ごとに最大エージング タイムを設定できます。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# spanning-tree vlan vlan-range max-age max-age |
VLAN の最大エージング タイムを設定します。 最大エージング タイムの値の範囲は 6 ~ 40 秒で、デフォルトは 20 秒です。 |
次に、VLAN の最大エージング タイムを設定する例を示します。
switch# configure terminal
switch(config)# spanning-tree vlan 5 max-age 36
Rapid の接続性(802.1w 規格)は、ポイントツーポイントのリンク上でのみ確立されます。 リンク タイプは、デフォルトでは、インターフェイスのデュプレックス モードから制御されます。 全二重ポートはポイントツーポイント接続であると見なされ、半二重ポートは共有接続であると見なされます。
リモート スイッチの 1 つのポートに、ポイントツーポイントで物理的に接続されている半二重リンクがある場合、リンク タイプのデフォルト設定を上書きし、高速移行をイネーブルにできます。
リンクを共有に設定すると、STP は 802.1D に戻ります。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# interface type slot/port |
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 | switch(config-if)# spanning-tree link-type {auto | point-to-point | shared} |
リンク タイプを、ポイントツーポイント リンクまたは共有リンクに設定します。 デフォルト値はスイッチ接続から読み取られ、半二重リンクは共有、全二重リンクはポイントツーポイントです。 リンク タイプが共有の場合、STP は 802.1D に戻ります。 デフォルトは auto で、インターフェイスのデュプレックス設定に基づいてリンク タイプが設定されます。 |
次の例は、リンク タイプをポイントツーポイント リンクとして設定する方法を示しています。
switch# configure terminal
switch (config)# interface ethernet 1/4
switch(config-if)# spanning-tree link-type point-to-point
このコマンドを使用できるのは、物理イーサネット インターフェイスに対してだけです。
レガシー ブリッジに接続されている場合、Rapid PVST+ を実行しているブリッジは、そのポートの 1 つに 802.1D BPDU を送信できます。 ただし、STP プロトコルの移行では、レガシー スイッチが指定スイッチではない場合、レガシー スイッチがリンクから削除されたかどうかを認識できません。 スイッチ全体または指定したインターフェイスでプロトコル ネゴシエーションを再開する(強制的に隣接スイッチと再ネゴシエーションさせる)ことができます。
コマンド |
目的 |
---|---|
switch# clear spanning-tree detected-protocol [interface interface [interface-num | port-channel]] | スイッチのすべてのインターフェイスまたは指定インターフェイスで Rapid PVST+ を再起動します。 |
次に、イーサネット インターフェイスで Rapid PVST+ を再起動する方法を示します。
switch# clear spanning-tree detected-protocol interface ethernet 1/8
Rapid PVST+ の設定情報を表示するには、次のコマンドを使用します。
コマンド |
目的 |
---|---|
show running-config spanning-tree [all] | 現在のスパニングツリー設定を表示します。 |
show spanning-tree [options] | 最新のスパニングツリー設定について、指定した詳細情報を表示します。 |
次の例は、スパニングツリーのステータスの表示方法を示しています。
switch# show spanning-tree brief VLAN0001 Spanning tree enabled protocol rstp Root ID Priority 32768 Address 001c.b05a.5447 Cost 2 Port 131 (Ethernet1/3) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32769 (priority 32768 sys-id-ext 1) Address 000d.ec6d.7841 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Eth1/3 Root FWD 2 128.131 P2p Peer(STP)
VLAN STP ステート整合性チェッカーを手動でトリガーして、VLAN のスパニング ツリー ステートのハードウェア設定とソフトウェア設定を比較し、結果を表示することができます。 VLAN STP ステート整合性チェッカーを手動でトリガーして結果を表示するには、次のコマンドを特定のモードで使用します。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | show consistency-checker stp-state vlan vlan-id |
指定された VLAN に対する VLAN STP ステート整合性検査を開始して結果を表示します。 |
次に、VLAN STP ステート整合性検査をトリガーして結果を表示する例を示します。
switch# show consistency-checker stp-state vlan 250 Checks: Spanning tree state Consistency Check: PASSED Vlan:250, Hardware state consistent for: Ethernet1/4 Ethernet1/5 Ethernet1/6 Ethernet1/18 Ethernet1/20 Ethernet1/29 Ethernet1/30 Ethernet1/31 Ethernet1/32 Ethernet1/33 Ethernet1/34 Ethernet1/35 Ethernet1/36 Ethernet1/37 Ethernet1/38 Ethernet1/39 Ethernet1/40 Ethernet1/41 Ethernet1/42 Ethernet1/43 Ethernet1/44 Ethernet1/45 Ethernet1/46 Ethernet1/47 Ethernet1/48
目次
- Rapid PVST+ の設定
- Rapid PVST+ について
- STP の概要
- STP の概要
- トポロジ形成の概要
- ブリッジ ID の概要
- ブリッジ プライオリティ値
- 拡張システム ID
- STP MAC アドレス割り当て
- BPDU の概要
- ルート ブリッジの選定
- スパニングツリー トポロジの作成
- Rapid PVST+ の概要
- Rapid PVST+ の概要
- Rapid PVST+ BPDU
- 提案と合意のハンドシェイク
- プロトコル タイマー
- ポート ロール
- ポート ステート
- Rapid PVST+ ポート ステートの概要
- ブロッキング ステート
- ラーニング ステート
- フォワーディング ステート
- ディセーブル ステート
- ポート ステートの概要
- ポート ロールの同期
- 優位 BPDU 情報の処理
- 下位 BPDU 情報の処理
- スパニングツリー検証メカニズム
- ポート コスト
- ポート プライオリティ
- Rapid PVST+ と IEEE 802.1Q トランク
- Rapid PVST+ のレガシー 802.1D STP との相互運用
- Rapid PVST+ の 802.1s MST との相互運用
- Rapid PVST+ の設定
- Rapid PVST+ のイネーブル化
- Rapid PVST+ の VLAN ベースのイネーブル化
- ルート ブリッジ ID の設定
- セカンダリ ルート ブリッジの設定
- Rapid PVST+ のポート プライオリティの設定
- Rapid PVST+ パスコスト方式およびポート コストの設定
- VLAN の Rapid PVST+ のブリッジ プライオリティの設定
- VLAN の Rapid PVST+ の hello タイムの設定
- VLAN の Rapid PVST+ の転送遅延時間の設定
- VLAN の Rapid PVST+ の最大エージング タイムの設定
- リンク タイプの設定
- プロトコルの再開
- Rapid PVST+ 設定の確認
- VLAN STP ステート整合性チェッカーのトリガー
この章の内容は、次のとおりです。
Rapid PVST+ について
Rapid PVST+ プロトコルは、VLAN 単位で実装される IEEE 802.1w 標準(Rapid Spanning Tree Protocol(RSTP:高速スパニングツリー プロトコル))です。 Rapid PVST+ は、IEEE 802.1D 規格との相互運用が可能で、VLAN ごとではなく、すべての VLAN で、単一の STP インスタンスの役割を委任されます
Rapid PVST+ は、デフォルト VLAN(VLAN1)と、ソフトウェアで新たに作成された新しい VLAN でデフォルトでイネーブルになります。 Rapid PVST+ はレガシー IEEE 802.1D STP が稼働するデバイスと相互運用されます。
RSTP は、元の STP 規格 802.1D の拡張版で、より高速な収束が可能です。
(注)
このマニュアルでは、IEEE 802.1w および IEEE 802.1s を指す用語として、「スパニングツリー」を使用します。 IEEE 802.1D STP について説明している箇所では、802.1D と明記します。
- STP の概要
- Rapid PVST+ の概要
- Rapid PVST+ と IEEE 802.1Q トランク
- Rapid PVST+ のレガシー 802.1D STP との相互運用
- Rapid PVST+ の 802.1s MST との相互運用
STP の概要
イーサネット ネットワークが適切に動作するには、任意の 2 つのステーション間のアクティブ パスは 1 つだけでなければなりません。
フォールト トレラントなインターネットワークを作成する場合、ネットワーク上のすべてのノード間にループフリー パスを構築する必要があります。 STP アルゴリズムでは、スイッチド ネットワーク中で、ループのない最適のパスが計算されます。 LAN ポートでは、定期的な間隔で、Bridge Protocol Data Unit(BPDU:ブリッジ プロトコル データ ユニット)と呼ばれる STP フレームの送受信が実行されます。 スイッチはこのフレームを転送しませんが、このフレームを使って、ループの発生しないパスを実現します。
エンド ステーション間に複数のアクティブ パスがあると、ネットワーク内でループが発生する原因になります。 ネットワークにループがあると、エンド ステーションがメッセージを重複して受信したり、複数の LAN ポートでエンド ステーションの MAC アドレスをスイッチが認識してしまうことがあります。 このような状態になるとブロードキャスト ストームが発生し、ネットワークが不安定になります。
STP では、ルート ブリッジでツリーを定義し、ルートからネットワーク内のすべてのスイッチへ、ループのないパスを定義します。 STP は冗長データパスを強制的にブロック状態にします。 スパニングツリーのネットワーク セグメントに障害が発生した場合、冗長パスがあると、STP アルゴリズムにより、スパニングツリー トポロジが再計算され、ブロックされたパスがアクティブになります。
スイッチの 2 つの LAN ポートで同じ MAC アドレスを認識することでループが発生している場合は、STP ポートのプライオリティとポート パス コストの設定により、フォワーディング ステートになるポートと、ブロッキング ステートになるポートが決定されます。
トポロジ形成の概要
スパニングツリーを構成している、拡張 LAN のスイッチはすべて、BPDU を交換することによって、ネットワーク内の他のスイッチについての情報を収集します。 この BPDU の交換により、次のアクションが発生します。
そのスパニングツリー ネットワーク トポロジでルート スイッチが 1 台選択されます。
LAN セグメントごとに指定スイッチが 1 台選定されます。
冗長なインターフェイスをバックアップ ステートにする(スイッチド ネットワークの任意の箇所からルート スイッチに到達するために必要としないパスをすべて STP ブロック ステートにする)ことにより、スイッチド ネットワークのループをすべて解除します。
アクティブなスイッチド ネットワーク上のトポロジは、次の情報によって決定されます。
各スイッチに関連付けられている、スイッチの一意なスイッチ識別情報である MAC アドレス
各インターフェイスに関連付けられているルートのパス コスト
各インターフェイスに関連付けられているポートの識別情報
スイッチド ネットワークでは、ルート スイッチが論理的にスパニングツリー トポロジの中心になります。 STP では、BPDU を使用して、スイッチド ネットワークのルート スイッチやルート ポート、および、各スイッチド セグメントのルート ポートや指定ポートが選定されます。
ブリッジ ID の概要
拡張システム ID
STP MAC アドレス割り当て
(注)
拡張システム ID と MAC アドレス削減は、ソフトウェア上で常にイネーブルです。
任意のスイッチの MAC アドレス削減がイネーブルの場合、不要なルート ブリッジの選定とスパニングツリー トポロジの問題を避けるため、他のすべての接続スイッチでも、MAC アドレス削減をイネーブルにする必要があります。
MAC アドレス リダクションをイネーブルにすると、ルート ブリッジ プライオリティは、4096 + VLAN ID の倍数となります。 スイッチのブリッジ ID(最小の優先ルート ブリッジを特定するために、スパニングツリー アルゴリズムによって使用される)は、4096 の倍数を指定します。 指定できるのは次の値だけです。
0
4096
8192
12288
16384
20480
24576
28672
32768
36864
40960
45056
49152
53248
57344
61440
STP は、拡張システム ID および MAC アドレスを使用して、VLAN ごとにブリッジ ID を一意にします。
(注)
同じスパニングツリー ドメインにある別のブリッジで MAC アドレス削減機能が実行されていない場合、そのブリッジのブリッジ ID と、MAC アドレス削減機能で指定されている値のいずれかが一致する可能性があり、その場合はそのブリッジがルート ブリッジとして機能することになります。
BPDU の概要
スイッチは STP インスタンス全体に BPDU を送信します。 各スイッチにより、コンフィギュレーション BPDU が送信され、スパニングツリー トポロジの通信が行われ、計算されます。 各コンフィギュレーション BPDU に含まれる最小限の情報は、次のとおりです。
送信するスイッチによりルート ブリッジが特定される、スイッチの一意なブリッジ ID
ルートまでの STP パス コスト
送信側ブリッジのブリッジ ID
メッセージ エージ
送信側ポートの ID
hello タイマー、転送遅延タイマー、最大エージング タイム プロトコル タイマー
STP 拡張プロトコルの追加情報
スイッチにより Rapid PVST+ BPDU フレームが送信されるときには、フレームの送信先の VLAN に接続されているすべてのスイッチで、BPDU を受信します。 スイッチで BPDU を受信するときに、スイッチによりフレームは送信されませんが、フレームにある情報を使用して BPDU が計算されます。トポロジが変更される場合は、BPDU の送信が開始されます。
BPDU 交換によって次の処理が行われます。
ルート ブリッジの選定
各 VLAN では、ブリッジ ID の数値が最も小さいスイッチが、ルート ブリッジとして選択されます。 すべてのスイッチがデフォルトのプライオリティ(32768)で設定されている場合、その VLAN で最小の MAC アドレスを持つスイッチが、ルート ブリッジになります。 ブリッジ プライオリティ値はブリッジ ID の最上位ビットを占めます。
ブリッジのプライオリティの値を変更すると、スイッチがルート ブリッジとして選定される可能性を変更することになります。 小さい値を設定するほどその可能性が大きくなり、大きい値を設定するほどその可能性は小さくなります。
STP ルート ブリッジは論理的に、ネットワークで各スパニングツリー トポロジの中心です。 ネットワークの任意の箇所からルート ブリッジに到達するために必要ではないすべてのパスは、STP ブロッキング モードになります。
BPDU には、送信側ブリッジおよびそのポートについて、ブリッジおよび MAC アドレス、ブリッジ プライオリティ、ポート プライオリティ、パス コストなどの情報が含まれます。 STP では、この情報を使用して、STP インスタンス用のルート ブリッジを選定し、ルート ブリッジに導くルート ポートを選択し、各セグメントの指定ポートを特定します。
スパニングツリー トポロジの作成
次の図では、スイッチ A がルート ブリッジに選定されます。これは、すべてのスイッチでブリッジ プライオリティがデフォルト(32768)に設定されており、スイッチ A の MAC アドレスが最小であるためです。 しかし、トラフィック パターン、フォワーディング ポートの数、リンク タイプによっては、スイッチ A が最適なルート ブリッジでないことがあります。 任意のスイッチのプライオリティを高くする(数値を小さくする)ことでそのスイッチがルート ブリッジになるようにします。これにより STP が強制的に再計算され、そのスイッチをルートとする新しいスパニングツリー トポロジが形成されます。
スパニングツリー トポロジがデフォルトのパラメータに基づいて算出された場合、スイッチド ネットワークの送信元エンド ステーションから宛先エンド ステーションまでのパスが最適にならない場合があります。 たとえば、現在のルート ポートよりも数値の大きいポートに高速リンクを接続すると、ルート ポートが変更される場合があります。 最高速のリンクをルート ポートにすることが重要です。
たとえば、スイッチ B の 1 つのポートが光ファイバ リンクであり、同じスイッチの別のポート(Unshielded Twisted-Pair(UTP:シールドなしツイストペア)リンク)がルート ポートになっていると仮定します。 ネットワーク トラフィックを高速の光ファイバ リンクに流した方が効率的です。 光ファイバ ポートの STP ポート プライオリティをルート ポートよりも高いプライオリティに変更すると(数値を下げる)、光ファイバ ポートが新しいルート ポートになります。
Rapid PVST+ の概要
Rapid PVST+ は、VLAN ごとに実装されている IEEE 802.1w(RSTP)規格です。 (手作業で STP をディセーブルにしていない場合)STP の 1 つのインスタンスは、設定されている各 VLAN で実行されます。 VLAN 上の各 Rapid PVST+ インスタンスには、1 つのルート スイッチがあります。 Rapid PVST+ の実行中には、VLAN ベースで STP をイネーブルまたはディセーブルにできます。
(注)
Rapid PVST+ は、スイッチでのデフォルト STP モードです。
Rapid PVST+ では、ポイントツーポイントの配線を使用して、スパニングツリーの高速コンバージェンスが行われます。 Rapid PVST+ によりスパニングツリーの再設定を 1 秒未満に発生させることができます(802.1D STP のデフォルト設定では 50 秒)。
(注)
Rapid PVST+ では、VLAN ごとに 1 つの STP インスタンスがサポートされます。
Rapid PVST+ を使用すると、STP コンバージェンスが急速に発生します。 STP にある各指定ポートまたは各ルート ポートにより、デフォルトで、2 秒ごとに BPDU が送信されます。 トポロジの指定ポートまたはルート ポートで、hello メッセージが 3 回連続で失われた場合、または、最大エージング タイムの期限が切れた場合、ポートでは、すべてのプロトコル情報がテーブルにただちにフラッシュされます。 ポートでは、3 つの BPDU が失われるか、最大エージング タイムの期限が切れた場合、直接のネイバー ルートまたは指定ポートへの接続が失われたと見なされます。 プロトコル情報の急速な経過により、障害検出を迅速に行うことができます。 スイッチは PVID を自動的に確認します。
Rapid PVST+ により、ネットワーク デバイス、スイッチ ポート、または LAN の障害の直後に、接続が迅速に回復されます。 RSTP は、エッジ ポート、新しいルート ポート、およびポイントツーポイント リンクで接続されているポートに次のような高速コンバージェンスを提供します。
エッジ ポート:RSTP スイッチにあるエッジ ポートとしてポートを設定する場合、エッジ ポートでは、フォワーディング ステートにただちに移行します (この急速な移行は、PortFast と呼ばれていたシスコ特有の機能でした)。エッジ ポートとして 1 つのエンド ステーションに接続されているポートにのみ、設定する必要があります。 エッジ ポートでは、リンクの変更時にはトポロジの変更は生成されません。
STP エッジ ポートとしてポートを設定するには、spanning-tree port type インターフェイス コンフィギュレーション コマンドを入力します。
(注)
ホストに接続されているすべてのポートを、エッジ ポートとして設定することを推奨します。
ルート ポート:Rapid PVST+ により新しいルート ポートが選択された場合、古いポートがブロックされ、新しいルート ポートがただちにフォワーディング ステートに移行します。
ポイントツーポイント リンク:ポイントツーポイント リンクによってあるポートと別のポートを接続することでローカル ポートが指定ポートになると、提案合意ハンドシェイクを使用して他のポートと急速な移行がネゴシエートされ、トポロジにループがなくなります。
Rapid PVST+ では、エッジ ポートとポイントツーポイント リンクでのみ、フォワーディング ステートへの急速な移行が達成されます。 リンク タイプは設定が可能ですが、システムでは、ポートのデュプレックス設定からリンク タイプ情報が自動的に引き継がれます。 全二重ポートはポイントツーポイント ポートであると見なされ、半二重ポートは共有ポートであると見なされます。
エッジ ポートでは、トポロジの変更は生成されませんが、直接接続されているネイバーから 3 回連続 BPDU の受信に失敗するか、最大エージング タイムのタイム アウトが発生すると、他のすべての指定ポートとルート ポートにより、トポロジ変更(TC)BPDU が生成されます。 この時点で、指定ポートまたはルート ポートにより、TC フラグがオンに設定された状態で BPDU が送信されます。 BPDU では、ポート上で TC While タイマーが実行されている限り、TC フラグが設定され続けます。 TC While タイマーの値は、hello タイムに 1 秒を加えて設定された値です。 トポロジ変更の初期ディテクタにより、トポロジ全体で、この情報がフラッディングされます。
Rapid PVST+ により、トポロジの変更が検出される場合、プロトコルでは次の処理が発生します。
すべての非エッジ ルート ポートと指定ポートで、必要に応じ、hello タイムの 2 倍の値で TC While タイマーが開始されます。
これらのすべてのポートに関連付けられている MAC アドレスがフラッシュされます。
トポロジ変更通知は、トポロジ全体で迅速にフラッディングされます。 システムでトポロジの変更が受信されると、システムにより、ポート ベースでダイナミック エントリがただちにフラッシュされます。
(注)
スイッチが、レガシー 802.1D STP を実行しているスイッチと相互に動作しているときにのみ、TCA フラグが使用されます。
トポロジの変更後、提案と合意のシーケンスがネットワークのエッジ方向に迅速に伝播され、接続がただちに回復します。
提案と合意のハンドシェイク
次の図のように、スイッチ A は、ポイントツーポイント リンクを介してスイッチ B に接続され、すべてのポートがブロッキング ステートになります。 スイッチ A のプライオリティ値がスイッチ B のプライオリティ値より小さい数値であると仮定します。
スイッチ A はスイッチ B に提案メッセージ(提案フラグが設定されたコンフィギュレーション BPDU)を送信し、スイッチ A 自身が指定スイッチになることを提案します。
提案メッセージの受信後、スイッチ B は、その新しいルート ポートとして、提案メッセージが受信されたポートからポートを選択し、すべての非エッジ ポートをブロッキング ステートにし、新しいルート ポートを使って合意メッセージ(合意フラグがオンに設定された BPDU)を送信します。
スイッチ B から合意メッセージの受信後、スイッチ A でも、その指定ポートがただちにフォワーディング ステートに移行されます。 スイッチ B ですべての非エッジ ポートがブロックされ、スイッチ A とスイッチ B の間にポイントツーポイント リンクがあるため、ネットワークではループは形成できません。
スイッチ C がスイッチ B に接続されると、類似したハンドシェイク メッセージのセットがやり取りされます。 スイッチ C は、そのルート ポートとしてスイッチ B に接続されたポートを選択し、リンクの両端がただちにフォワーディング ステートになります。 このハンドシェイク処理の繰り返しごとに、さらに 1 つのネットワーク デバイスがアクティブなトポロジに参加します。 ネットワークの収束時には、この提案と合意のハンドシェイク処理がスパニングツリーのルートからリーフに進みます。
スイッチは、ポート デュプレックス モードからリンク タイプを認識します。全二重ポートはポイントツーポイント接続であると見なされ、半二重ポートは共有接続であると見なされます。 デュプレックス設定によって制御されるデフォルト設定は、spanning-tree link-type インターフェイス コンフィギュレーション コマンドを入力することで上書きできます。
この提案合意ハンドシェイクが開始されるのは、非エッジ ポートがブロッキング ステートからフォワーディング ステートに移行するときだけです。 次に、ハンドシェイク処理は、トポロジ全体に段階的に広がります。
プロトコル タイマー
次の表に、Rapid PVST+ のパフォーマンスに影響するプロトコル タイマーを示します。
表 2 Rapid PVST+ のプロトコル タイマー 変数
説明
hello タイマー
各スイッチから他のスイッチに BPDU をブロードキャストする頻度を決定します。 デフォルトは 2 秒で、範囲は 1 ~ 10 です。
転送遅延タイマー
ポートが転送を開始するまでの、リスニング ステートおよびラーニング ステートが継続する時間を決定します。 このタイマーは通常、プロトコルによっては使用されませんが、バックアップとして使用されます。 デフォルトは 15 秒で、範囲は 4 ~ 30 秒です。
最大エージング タイマー
ポートで受信したプロトコル情報がスイッチで保存される時間を決めます。 このタイマーは通常、プロトコルによっては使用されませんが、802.1D スパニングツリーと相互に動作するときに使用されます。 デフォルトは 20 秒で、範囲は 6 ~ 40 秒です
ポート ロール
Rapid PVST+ では、ポート ロールを割り当て、アクティビティ トポロジを認識することによって、高速収束が行われます。 Rapid PVST+ は、802.1D STP に構築され、最高のプライオリティ(最小数値のプライオリティの値)のスイッチがルート ブリッジとして選択されます。 Rapid PVST+ により、次のポートのロールの 1 つが個々のポートに割り当てられます。
ルート ポート:スイッチによりパケットがルート ブリッジに転送されるときに、最適のパス(最小コスト)を用意します。
指定ポート:指定スイッチに接続します。指定スイッチでは、LAN からルート ブリッジにパケットが転送されるときに、発生するパス コストが最小になります。 指定スイッチが LAN に接続するポートのことを指定ポートと呼びます。
代替ポート:現在のルート ポートによって用意されているパスに、ルート ブリッジへの代替パスを用意します。 代替ポートにより、トポロジにある別のスイッチへのパスが確保されます。
バックアップ ポート:指定ポートが提供した、スパニングツリーのリーフに向かうパスのバックアップとして機能します。 バックアップ ポートが存在できるのは、2 つのポートがポイントツーポイント リンクによってループバックで接続されている場合、または 1 つのスイッチに共有 LAN セグメントへの接続が 2 つ以上ある場合です。 バックアップ ポートにより、スイッチに対する別のパスがトポロジ内で確保されます。
ディセーブル ポート:スパニングツリーの動作においてロールが与えられていません。
ネットワーク全体でポートのロールに一貫性のある安定したトポロジでは、Rapid PVST+ により、ルート ポートと指定ポートがすべてただちにフォワーディング ステートになり、代替ポートとバックアップ ポートはすべて、必ずブロッキング ステートになります。 指定ポートはブロッキング ステートで開始されます。 フォワーディング プロセスおよびラーニング プロセスの動作はポート ステートによって制御されます。
ルート ポートまたは DP の役割があるポートは、アクティブ トポロジに組み込まれます。 代替ポートまたはバックアップ ポートのロールを持つポートは、アクティブなトポロジから除外されます(次の図を参照)。
Rapid PVST+ ポート ステートの概要
プロトコル情報がスイッチド LAN を通過するとき、伝播遅延が生じることがあります。 その結果、スイッチド ネットワークのさまざまな時点および場所でトポロジの変化が発生します。 スパニングツリー トポロジで LAN ポートが非伝搬ステートからフォワーディング ステートに直接移行する際、一時的にデータがループすることがあります。 ポートは新しいトポロジ情報がスイッチド LAN 経由で伝播されるまで待機し、それからフレーム転送を開始する必要があります。
Rapid PVST+ または MST を使用しているソフトウェア上の各 LAN ポートは、次の 4 つのステートの 1 つで終了します。
ブロッキング:LAN ポートはフレーム転送に参加しません。
ラーニング:LAN ポートは、フレーム転送への参加を準備します。
フォワーディング:LAN ポートはフレームを転送します。
ディセーブル:LAN ポートは STP に参加せず、フレームを転送しません。
Rapid PVST+ をイネーブルにすると、ソフトウェアのすべてのポート、VLAN、ネットワークは、電源投入時にブロッキング ステートからラーニングの移行ステートに進みます。 各 LAN ポートは、適切に設定されていれば、フォワーディング ステートまたはブロッキング ステートで安定します。
STP アルゴリズムにより LAN ポートがフォワーディング ステートになると、次の処理が発生します。
ラーニング ステート
ポート ロールの同期
スイッチがいずれかのポートで提案メッセージを受信し、そのポートが新しいルート ポートとして選択されると、Rapid PVST+ は、強制的に、すべての他のポートと新しいルート情報との同期をとります。
他のすべてのポートが同期化されると、スイッチはルート ポートで受信した優位のルート情報に同期化されます。 次のいずれかが当てはまる場合、スイッチ上の個々のポートで同期がとられます。
指定ポートがフォワーディング ステートの場合で、エッジ ポートとして設定されていない場合、Rapid PVST+ により強制的に新しいルート情報との同期がとられるときに、ブロッキング ステートに移行します。 一般的に、Rapid PVST+ により、強制的にルート情報との同期がとられる場合で、ポートで前述の条件のいずれかが満たされない場合、ポート ステートはブロッキングに設定されます。
すべてのポートで同期がとられた後で、スイッチから、ルート ポートに対応する指定スイッチへ、合意メッセージが送信されます。 ポイントツーポイント リンクで接続されているスイッチが、そのポートのロールについての合意に存在する場合、Rapid PVST+ により、ポート ステートがただちにフォワーディング ステートに移行します。 この一連のイベントを次の図に示します。
優位 BPDU 情報の処理
上位 BPDU とは、自身のために現在保存されているものより上位であるルート情報(より小さいスイッチ ID、より小さいパス コストなど)を持つ BPDU のことです。
上位 BPDU がポートで受信されると、Rapid PVST+ は再設定を起動します。 そのポートが新しいルート ポートとして提案、選択されている場合、Rapid PVST+ は残りすべてのポートを同期させます。
受信した BPDU が提案フラグの設定された Rapid PVST+ BPDU の場合、スイッチは残りすべてのポートを同期させたあと、合意メッセージを送信します。 前のポートがブロッキング ステートになるとすぐに、新しいルート ポートがフォワーディング ステートに移行します。
ポートで受信した上位情報によりポートがバックアップ ポートまたは代替ポートになる場合、Rapid PVST+ はポートをブロッキング ステートに設定し、合意メッセージを送信します。 指定ポートは、転送遅延タイマーが期限切れになるまで、提案フラグが設定された BPDU を送信し続けます。 期限切れになると、ポートはフォワーディング ステートに移行します。
スパニングツリー検証メカニズム
ソフトウェアを使用することで、受信した BPDU からポートの役割とステートの一貫性を確認し、単一方向リンクが失敗してブリッジ処理のループを引き起こしていないかどうかを検証できます。
指定ポートは、矛盾を検出すると、そのロールを維持しますが、廃棄ステートに戻ります。一貫性がない場合は、接続を中断した方がブリッジング ループを解決できるからです。
次の図に、ブリッジング ループ発生の一般的な原因となる単一方向リンク障害を示します。 スイッチ A はルート ブリッジで、その BPDU は、スイッチ B へのリンク上では失われます。 802.1w 規格の BPDU には送信ポートのロールおよびステートが含まれます。 この情報により、送信する上位 BPDU に対してスイッチ B が反応しないこと、スイッチ B はルート ポートではなく指定ポートであることが、スイッチ A によって検出できます。 この結果、スイッチ A は、そのポートをブロックし(またはブロックし続け)、ブリッジング ループが防止されます。 ブロックは、STP の矛盾として示されます。
ポート コスト
(注)
Rapid PVST+ はデフォルトで、ショート(16 ビット)パスコスト方式を使用してコストを計算します。 ショート パスコスト方式では、1 ~ 65,535 の範囲で任意の値を割り当てることができます。 ただし、ロング(32 ビット)パスコスト方式を使用するようにスイッチを設定できます。この場合は、1 ~ 200,000,000 の範囲で任意の値を割り当てることができます。 パスコスト計算方式はグローバルに設定します。
STP ポートのパスコストのデフォルト値は、メディア速度と LAN インターフェイスのパスコストの計算方式によって決まります。 ループが発生した場合、STP では、LAN インターフェイスの選択時に、フォワーディング ステートにするためのポート コストを考慮します。
表 4 デフォルトのポート コスト 帯域幅
ポート コストのショート パスコスト方式
ポート コストのロング パスコスト方式
10 Mbps
100
2,000,000
100 Mbps
19
200,000
1 ギガビット イーサネット
4
20,000
10 ギガビット イーサネット
2
2,000
STP に最初に選択させたい LAN インターフェイスには低いコスト値を、最後に選択させたい LAN インターフェイスには高いコスト値を割り当てることができます。 すべての LAN インターフェイスが同じコスト値を使用している場合には、STP は LAN インターフェイス番号が最も小さい LAN インターフェイスをフォワーディング ステートにして、残りの LAN インターフェイスをブロックします。
アクセス ポートでは、ポート コストをポートごとに割り当てます。 トランク ポートでは VLAN ごとにポート コストを割り当てるため、トランク ポート上のすべての VLAN に同じポート コストを設定できます。
ポート プライオリティ
ループが発生し、複数のポートに同じパス コストが割り当てられている場合、Rapid PVST+ では、フォワーディング ステートにする LAN ポートの選択時に、ポートのプライオリティを考慮します。 Rapid PVST+ に最初に選択させる LAN ポートには小さいプライオリティ値を割り当て、Rapid PVST+ に最後に選択させる LAN ポートには大きいプライオリティ値を割り当てます。
すべての LAN ポートに同じプライオリティ値が割り当てられている場合、Rapid PVST+ は、LAN ポート番号が最小の LAN ポートをフォワーディング ステートにし、他の LAN ポートをブロックします。 プライオリティの範囲は 0 ~ 224(デフォルトは 128)で、32 ずつ増加させて設定できます。 LAN ポートがアクセス ポートとして設定されているときはポートのプライオリティ値が使用され、LAN ポートがトランク ポートとして設定されているときは VLAN ポートのプライオリティ値が使用されます。
Rapid PVST+ と IEEE 802.1Q トランク
Cisco スイッチを 802.1Q トランクで接続しているネットワークでは、スイッチは、トランクの VLAN ごとに STP のインスタンスを 1 つ維持します。 ただし、非 Cisco 802.1Q スイッチでは、トランクのすべての VLAN に対して維持する STP のインスタンスは 1 つだけです。
802.1Q トランクで Cisco スイッチを非 Cisco スイッチに接続している場合は、Cisco スイッチにより、トランクの 802.1Q VLAN の STP インスタンスが、非 Cisco 802.1Q スイッチの STP インスタンスと組み合わされます。 ただし、Cisco スイッチで維持されている VLAN ごとの STP 情報はすべて、非シスコ 802.1Q スイッチのクラウドによって分けられます。 Cisco スイッチを分ける非 Cisco 802.1Q クラウドは、スイッチ間の単一のトランク リンクとして扱われます。
Rapid PVST+ のレガシー 802.1D STP との相互運用
Rapid PVST+ は、レガシー 802.1D プロトコルを実行中のスイッチと相互に動作させることができます。 スイッチが BPDU バージョン 0 を受信すると、802.1D を実行中の機器と相互に動作していることを認識します。 Rapid PVST+ の BPDU はバージョン 2 です。 受信した BPDU が、提案フラグがオンに設定された 802.1w BPDU バージョン 2 の場合、スイッチは残りすべてのポートを同期させたあと、合意メッセージを送信します。 受信した BPDU が 802.1D BPDU バージョン 0 の場合は、スイッチは提案フラグを設定せずに、ポートの転送遅延タイマーを開始します。 新しいルート ポートはフォワーディング ステートに移行するために 2 倍の転送遅延時間を必要とします。
スイッチは、次のように、レガシー 802.1D スイッチと相互動作します。
通知:802.1D BPDU とは異なり 802.1w は、TCN BPDU を使用しません。 ただし、802.1D スイッチとの相互運用のため、Cisco NX-OS では、TCN BPDU を処理し、生成します。
受信応答:802.1w スイッチでは、802.1D スイッチから指定ポート上に TCN メッセージを受信すると、TCA ビットを設定し、802.1D コンフィギュレーション BPDU で応答します。 ただし、802.1D スイッチに接続されているルート ポートで TC While タイマー(802.1D の TC タイマーと同じ)がアクティブの場合、TCA がセットされたコンフィギュレーション BPDU を受信すると、TC While タイマーはリセットされます。
動作のこの方式は、802.1D スイッチでのみ必要です。 802.1w BPDU では、TCA ビットは設定されません。
ポートが初期化されると、移行遅延タイマー(802.1w BPDU が送信される最小時間を指定)が開始され、802.1w BPDU が送信されます。 このタイマーがアクティブな間、スイッチはそのポートで受信したすべての BPDU を処理し、プロトコル タイプを無視します。
ポート移行遅延タイマーの期限切れ後にスイッチで 802.1D BPDU を受信した場合は、802.1D スイッチに接続していると見なして、802.1D BPDU のみを使用して開始します。 ただし、802.1w スイッチが、ポート上で 802.1D BPDU を使用中で、タイマーの期限切れ後に 802.1w BPDU を受信すると、タイマーが再起動され、ポート上の 802.1w BPDU を使用して開始されます。
(注)
すべてのスイッチでプロトコルを再ネゴシエーションするには、Rapid PVST+ を再起動する必要があります。
Rapid PVST+ の設定
- Rapid PVST+ のイネーブル化
- Rapid PVST+ の VLAN ベースのイネーブル化
- ルート ブリッジ ID の設定
- セカンダリ ルート ブリッジの設定
- Rapid PVST+ のポート プライオリティの設定
- Rapid PVST+ パスコスト方式およびポート コストの設定
- VLAN の Rapid PVST+ のブリッジ プライオリティの設定
- VLAN の Rapid PVST+ の hello タイムの設定
- VLAN の Rapid PVST+ の転送遅延時間の設定
- VLAN の Rapid PVST+ の最大エージング タイムの設定
- リンク タイプの設定
- プロトコルの再開
Rapid PVST+ のイネーブル化
手順スイッチ上で Rapid PVST+ をイネーブルにすると、指定されている VLAN で Rapid PVST+ をイネーブルにする必要があります。
Rapid PVST+ はデフォルトの STP モードです。 MST と Rapid PVST+ は同時には実行できません。
(注)
スパニングツリー モードを変更すると、変更前のモードのスパニングツリー インスタンスがすべて停止されて新しいモードで起動されるため、トラフィックが中断する場合があります。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree mode rapid-pvst
スイッチで Rapid PVST+ をイネーブルにします。 Rapid PVST+ はデフォルトのスパニングツリー モードです。
(注) スパニングツリー モードを変更すると、変更前のモードのスパニングツリー インスタンスがすべて停止されて新しいモードで起動されるため、トラフィックが中断する場合があります。
Rapid PVST+ の VLAN ベースのイネーブル化
手順Rapid PVST+ は、VLAN ごとにイネーブルまたはディセーブルにできます。
(注)
Rapid PVST+ は、デフォルト VLAN と、作成したすべての VLAN でデフォルトでイネーブルになります。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree vlan-range
VLAN ごとに Rapid PVST+(デフォルト STP)をイネーブルにします。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。
ステップ 3 switch(config)# no spanning-tree vlan-range
(任意) 指定 VLAN で Rapid PVST+ をディセーブルにします。
注意 VLAN のすべてのスイッチおよびブリッジでスパニングツリーがディセーブルになっていない限り、VLAN でスパニングツリーをディセーブルにしないでください。 VLAN の一部のスイッチおよびブリッジでスパニングツリーをディセーブルにして、その他のスイッチおよびブリッジでイネーブルにしておくことはできません。 スパニングツリーをイネーブルにしたスイッチとブリッジに、ネットワークの物理トポロジに関する不完全な情報が含まれることになるため、この処理によって予想外の結果となることがあります。
VLAN 内に物理的なループが存在しないことを保証できる場合以外は、VLAN でスパニングツリーをディセーブルにしないでください。 スパニングツリーは、設定の誤りおよび配線の誤りに対する保護手段として動作します。
ルート ブリッジ ID の設定
手順Rapid PVST+ では、STP のインスタンスはアクティブな VLAN ごとに管理されます。 各 VLAN では、最も小さいブリッジ ID を持つスイッチが VLAN のルート ブリッジになります。
特定の VLAN インスタンスがルート ブリッジになるように設定するには、そのブリッジのプライオリティをデフォルト値(32768)よりかなり小さい値に変更します。
spanning-tree vlan vlan_ID root コマンドを入力すると、各 VLAN で現在ルートになっているブリッジのブリッジ プライオリティがスイッチによって確認されます。 スイッチは指定した VLAN のブリッジ プライオリティを 24576 に設定します(このスイッチがその VLAN のルートになる値)。 指定した VLAN のいずれかのルート ブリッジに 24576 より小さいブリッジ プライオリティが設定されている場合は、スイッチはその VLAN のブリッジ プライオリティを、最小のブリッジ プライオリティより 4096 だけ小さい値に設定します。
(注)
ルート ブリッジになるために必要な値が 1 より小さい場合は、spanning-tree vlan vlan_ID root コマンドはエラーになります。
注意
STP の各インスタンスのルート ブリッジは、バックボーン スイッチまたはディストリビューション スイッチでなければなりません。 アクセス スイッチは、STP のプライマリ ルートとして設定しないでください。
キーワード diameter を入力し、ネットワーク直径(ネットワーク内の任意の 2 つのエンド ステーション間での最大ブリッジ ホップ数)を指定します。 ネットワーク直径を指定すると、その直径のネットワークに最適な hello タイム、転送遅延時間、最大エージング タイムが自動的に選択されます。これにより、STP 収束の時間が大幅に削減されます。 キーワード hello-time を入力すると、自動的に計算された hello タイムを上書きできます。
(注)
ルート ブリッジとして設定されているスイッチでは、hello タイム、転送遅延時間、最大エージング タイムは手動で設定(spanning-tree mst hello-time、spanning-tree mst forward-time、spanning-tree mst max-age の各コンフィギュレーション コマンドを使用)しないでください。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal
グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree vlan vlan-range root primary [diameter dia [hello-time hello-time]]
ソフトウェア スイッチをプライマリ ルート ブリッジとして設定します。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。dia のデフォルトは 7 です。 hello-time の範囲は 1 ~ 10 秒で、デフォルト値は 2 秒です。
セカンダリ ルート ブリッジの設定
手順ソフトウェア スイッチをセカンダリ ルートとして設定しているときに、STP ブリッジのプライオリティをデフォルト値(32768)から変更しておくと、プライマリ ルート ブリッジに障害が発生した場合に、そのスイッチが、指定した VLAN のルート ブリッジになります(ネットワークの他のスイッチで、デフォルトのブリッジ プライオリティ 32768 が使用されているとします)。 STP により、ブリッジ プライオリティが 28672 に設定されます。
キーワード diameter を入力し、ネットワーク直径(ネットワーク内の任意の 2 つのエンド ステーション間での最大ブリッジ ホップ数)を指定します。 ネットワーク直径を指定すると、その直径のネットワークに最適な hello タイム、転送遅延時間、最大エージング タイムが自動的に選択されます。これにより、STP コンバージェンスの時間が大幅に削減されます。 キーワード hello-time を入力すると、自動的に計算された hello タイムを上書きできます。
複数のスイッチに対して同様に設定すれば、複数のバックアップ ルート ブリッジを設定できます。 プライマリ ルート ブリッジの設定時に使用した値と同じネットワーク直径と hello タイムの値を入力します。
(注)
ルート ブリッジとして設定されているスイッチでは、hello タイム、転送遅延時間、最大エージング タイムは手動で設定(spanning-tree mst hello-time、spanning-tree mst forward-time、spanning-tree mst max-age の各グローバル コンフィギュレーション コマンドを使用)しないでください。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree vlan vlan-range root secondary [diameter dia [hello-time hello-time]]
ソフトウェア スイッチをセカンダリ ルート ブリッジとして設定します。 vlan-range の値は、2 ~ 4094 の範囲です(予約済みの VLAN の値を除く)。 dia のデフォルトは 7 です。 hello-time の範囲は 1 ~ 10 秒で、デフォルト値は 2 秒です。
Rapid PVST+ のポート プライオリティの設定
手順Rapid PVST+ に最初に選択させる LAN ポートには小さいプライオリティ値を割り当て、Rapid PVST+ に最後に選択させる LAN ポートには大きいプライオリティ値を割り当てます。 すべての LAN ポートに同じプライオリティ値が割り当てられている場合、Rapid PVST+ は、LAN ポート番号が最小の LAN ポートをフォワーディング ステートにし、他の LAN ポートをブロックします。
LAN ポートがアクセス ポートとして設定されているときはポートのプライオリティ値が使用され、LAN ポートがトランク ポートとして設定されているときは VLAN ポートのプライオリティ値が使用されます。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# interface type slot/port
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。
ステップ 3 switch(config-if)# spanning-tree [vlan vlan-list] port-priority priority
LAN インターフェイスのポート プライオリティを設定します。 priority の値は 0 ~ 224 を指定できます。 値が小さいほどプライオリティが高いことを示します。 プライオリティ値は、0、32、64、96、128、160、192、224 です。 その他すべての値は拒否されます。 デフォルト値は 128 です。
Rapid PVST+ パスコスト方式およびポート コストの設定
手順アクセス ポートでは、ポートごとにポート コストを割り当てます。 トランク ポートでは VLAN ごとにポート コストを割り当てるため、トランク上のすべての VLAN に同じポート コストを設定できます。
(注)
Rapid PVST+ モードでは、ショート型またはロング型のいずれかのパスコスト方式を使用できます。この方式は、インターフェイスまたはコンフィギュレーション サブモードのいずれかで設定できます。デフォルトのパスコスト方式はショート型です。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree pathcost method {long | short}
Rapid PVST+ パスコスト計算に使用される方式を選択します。 デフォルト方式は short 型です。
ステップ 3 switch(config)# interface type slot/port
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。
ステップ 4 switch(config-if)# spanning-tree [vlan vlan-id] cost [value | auto]
LAN インターフェイスのポート コストを設定します。 ポート コスト値には、パスコスト計算方式に応じて、次の値を指定できます。
(注) このパラメータは、アクセス ポートのインターフェイス別、およびトランク ポートの VLAN 別に設定します。
デフォルトの auto では、パスコスト計算方式およびメディア速度に基づいてポート コストが設定されます。
VLAN の Rapid PVST+ のブリッジ プライオリティの設定
手順VLAN の Rapid PVST+ のブリッジ プライオリティを設定できます。
(注)
この設定を使用するときは注意が必要です。 ほとんどの場合、プライマリ ルートとセカンダリ ルートを設定して、ブリッジ プライオリティを変更することを推奨します。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree vlan vlan-range priority value
VLAN のブリッジ プライオリティを設定します。 有効な値は 0、4096、8192、12288、16384、20480、24576、28672、32768、36864、40960、45056、49152、53248、57344、61440 です。 その他すべての値は拒否されます。 デフォルト値は 32768 です。
VLAN の Rapid PVST+ の hello タイムの設定
手順VLAN では、Rapid PVST+ の hello タイムを設定できます。
(注)
この設定を使用するときは注意が必要です。 ほとんどの場合、プライマリ ルートとセカンダリ ルートを設定して、hello タイムを変更することを推奨します。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal
グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# spanning-tree vlan vlan-range hello-time hello-time
VLAN の hello タイムを設定します。 hello タイム値には 1 ~ 10 秒を指定できます。 デフォルト値は 2 秒です。
VLAN の Rapid PVST+ の転送遅延時間の設定
VLAN の Rapid PVST+ の最大エージング タイムの設定
リンク タイプの設定
手順Rapid の接続性(802.1w 規格)は、ポイントツーポイントのリンク上でのみ確立されます。 リンク タイプは、デフォルトでは、インターフェイスのデュプレックス モードから制御されます。 全二重ポートはポイントツーポイント接続であると見なされ、半二重ポートは共有接続であると見なされます。
リモート スイッチの 1 つのポートに、ポイントツーポイントで物理的に接続されている半二重リンクがある場合、リンク タイプのデフォルト設定を上書きし、高速移行をイネーブルにできます。
リンクを共有に設定すると、STP は 802.1D に戻ります。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal
グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# interface type slot/port
設定するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。
ステップ 3 switch(config-if)# spanning-tree link-type {auto | point-to-point | shared}
リンク タイプを、ポイントツーポイント リンクまたは共有リンクに設定します。 デフォルト値はスイッチ接続から読み取られ、半二重リンクは共有、全二重リンクはポイントツーポイントです。 リンク タイプが共有の場合、STP は 802.1D に戻ります。 デフォルトは auto で、インターフェイスのデュプレックス設定に基づいてリンク タイプが設定されます。
プロトコルの再開
レガシー ブリッジに接続されている場合、Rapid PVST+ を実行しているブリッジは、そのポートの 1 つに 802.1D BPDU を送信できます。 ただし、STP プロトコルの移行では、レガシー スイッチが指定スイッチではない場合、レガシー スイッチがリンクから削除されたかどうかを認識できません。 スイッチ全体または指定したインターフェイスでプロトコル ネゴシエーションを再開する(強制的に隣接スイッチと再ネゴシエーションさせる)ことができます。
コマンド
目的
switch# clear spanning-tree detected-protocol [interface interface [interface-num | port-channel]] スイッチのすべてのインターフェイスまたは指定インターフェイスで Rapid PVST+ を再起動します。
次に、イーサネット インターフェイスで Rapid PVST+ を再起動する方法を示します。
switch# clear spanning-tree detected-protocol interface ethernet 1/8Rapid PVST+ 設定の確認
Rapid PVST+ の設定情報を表示するには、次のコマンドを使用します。
コマンド
目的
show running-config spanning-tree [all] 現在のスパニングツリー設定を表示します。
show spanning-tree [options] 最新のスパニングツリー設定について、指定した詳細情報を表示します。
次の例は、スパニングツリーのステータスの表示方法を示しています。
switch# show spanning-tree brief VLAN0001 Spanning tree enabled protocol rstp Root ID Priority 32768 Address 001c.b05a.5447 Cost 2 Port 131 (Ethernet1/3) Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 32769 (priority 32768 sys-id-ext 1) Address 000d.ec6d.7841 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Interface Role Sts Cost Prio.Nbr Type ---------------- ---- --- --------- -------- -------------------------------- Eth1/3 Root FWD 2 128.131 P2p Peer(STP)VLAN STP ステート整合性チェッカーのトリガー
手順VLAN STP ステート整合性チェッカーを手動でトリガーして、VLAN のスパニング ツリー ステートのハードウェア設定とソフトウェア設定を比較し、結果を表示することができます。 VLAN STP ステート整合性チェッカーを手動でトリガーして結果を表示するには、次のコマンドを特定のモードで使用します。
コマンドまたはアクション 目的 ステップ 1 show consistency-checker stp-state vlan vlan-id
指定された VLAN に対する VLAN STP ステート整合性検査を開始して結果を表示します。
次に、VLAN STP ステート整合性検査をトリガーして結果を表示する例を示します。
switch# show consistency-checker stp-state vlan 250 Checks: Spanning tree state Consistency Check: PASSED Vlan:250, Hardware state consistent for: Ethernet1/4 Ethernet1/5 Ethernet1/6 Ethernet1/18 Ethernet1/20 Ethernet1/29 Ethernet1/30 Ethernet1/31 Ethernet1/32 Ethernet1/33 Ethernet1/34 Ethernet1/35 Ethernet1/36 Ethernet1/37 Ethernet1/38 Ethernet1/39 Ethernet1/40 Ethernet1/41 Ethernet1/42 Ethernet1/43 Ethernet1/44 Ethernet1/45 Ethernet1/46 Ethernet1/47 Ethernet1/48