STP の機能概要
ここでは、STP の機能概要について説明します。
• 「STP の概要」
• 「ブリッジ ID の概要」
• 「BPDU の概要」
• 「ルート ブリッジの選定」
• 「STP プロトコル タイマー」
• 「スパニングツリー トポロジーの作成」
• 「STP ポート ステート」
• 「STP および IEEE 802.1Q トランク」
STP の概要
STP は、ネットワークの不要なループを防止しながらパスの冗長性を提供する、レイヤ 2 リンク管理プロトコルです。レイヤ 2 イーサネット ネットワークが正常に動作するためには、任意の 2 つのステーション間にアクティブ パスを 1 つだけにする必要があります。STP の動作はエンド ステーションに対してトランスペアレントなので、単一の LAN セグメントに接続されているのか、それとも複数セグメントからなるスイッチド LAN に接続されているのかを、エンド ステーションが検知することはできません。
Cisco 7600 シリーズ ルータは、すべての VLAN で STP(IEEE 802.1D ブリッジ プロトコル)を使用します。デフォルトでは、(STP を手動でディセーブルにしない限り)設定されている VLAN ごとに 1 つの STP インスタンスが動作します。STP は、VLAN 単位でイネーブルおよびディセーブルにすることができます。
フォールトトレラントなインターネットワークを作成する場合、ネットワーク上のすべてのノード間にループフリー パスを構築する必要があります。STP アルゴリズムは、スイッチド レイヤ 2 ネットワーク上で最良のループフリー パスを算出します。レイヤ 2 LAN ポートは定期的に STP フレームを送受信します。ネットワーク デバイスはこれらのフレームを転送しないで、フレームを使用してループフリー パスを構築します。
エンド ステーション間に複数のアクティブ パスがあると、ネットワーク内でループが発生します。ネットワークにループが存在する場合、エンド ステーションが重複したメッセージを受信したり、ネットワーク デバイスが複数のレイヤ 2 LAN ポート上でエンド ステーション MAC アドレスを学習したりする可能性があります。このような状況によって、ネットワークが不安定になります。
STP は、ルート ブリッジおよびそのルートからレイヤ 2 ネットワーク上のすべてのネットワーク デバイスへのループフリー パスを備えたツリーを定義します。STP は冗長データ パスを強制的にスタンバイ(ブロック)ステートにします。スパニングツリーの 1 つのネットワーク セグメントで障害が発生し、冗長パスが存在する場合、STP アルゴリズムはスパニングツリー トポロジーを再計算し、スタンバイ パスをアクティブにします。
ネットワーク デバイス上の 2 つのレイヤ 2 LAN ポートがループの一部になっている場合、どちらのポートがフォワーディング ステートになり、どちらのポートがブロッキング ステートになるかは、STP ポート プライオリティおよびポート パス コストの設定によって決まります。STP ポート プライオリティ値は、ネットワーク トポロジーにおけるポートの位置を表すとともに、その位置によってポートがどれだけ効率的にトラフィックを通過させることができるかを表します。STP ポート パス コスト値は、メディア速度を表します。
ブリッジ プライオリティ値
(注) Cisco 7600 シリーズ ルータでは、拡張システム ID が常にイネーブルになっています。
拡張システム ID がイネーブルの場合、ブリッジ プライオリティは 4 ビット値です(表 20-1 および「VLAN のブリッジ プライオリティの設定」を参照)。
拡張システム ID
12 ビットの拡張システム ID フィールドは、ブリッジ ID の一部です(表 20-1 を参照)。Cisco 7600 シリーズ ルータには、64 MAC アドレスがあり、12 ビットの拡張システム ID を常に使用します。
表 20-1 拡張システム ID がイネーブルの場合のブリッジ プライオリティ値および拡張システム ID
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32768 |
16384 |
8192 |
4096 |
2048 |
1024 |
512 |
256 |
128 |
64 |
32 |
16 |
8 |
4 |
2 |
1 |
STP MAC アドレス割り当て
Cisco 7600 シリーズ ルータでは、64 個のアドレスを使用して STP などのソフトウェア機能をサポートできます。MAC アドレスの範囲を表示するには、 show catalyst6000 chassis-mac-address コマンドを入力します。
STP は、拡張システム ID および MAC アドレスを使用して、VLAN ごとにブリッジ ID を一意にします。
MAC アドレス リダクションを任意のデバイスでイネーブルにしている場合は、その他すべてのレイヤ 2 接続ネットワーク デバイスでも MAC アドレス リダクションをイネーブルにして、望ましくないルート ブリッジ選択およびスパニングツリー トポロジーの問題を避ける必要があります。
MAC アドレス リダクションをイネーブルにすると、ルート ブリッジ プライオリティは、4096 + VLAN ID の倍数となります。MAC アドレス リダクションがイネーブルの場合、ルータのブリッジ ID(スパニングツリー アルゴリズムで、ルート ブリッジのアイデンティティを判別するために使用され、最小のものが優先される)に指定できるのは、4096 の倍数だけです。使用可能な値は、0、4096、8192、12288、16384、20480、24576、28672、32768、36864、40960、45056、49152、53248、57344、61440 だけです。
同じスパニングツリー ドメイン内の別のブリッジが MAC アドレス リダクション機能を実行しない場合、ブリッジ ID の選択がより細かい粒度のために、そのブリッジがルート ブリッジの所有権を取得する可能性があります。
BPDU の概要
ブリッジ プロトコル データ ユニット(BPDU)はルート ブリッジから一方向に送信されます。各ネットワーク デバイスはコンフィギュレーション BPDU を送信して、スパニングツリー トポロジを伝達および計算します。各コンフィギュレーション BPDU に含まれる最小限の情報は、次のとおりです。
• 送信側ネットワーク デバイスがルート ブリッジになると見なしているネットワーク デバイスの固有のブリッジ ID
• ルートまでの STP パス コスト
• 送信側ブリッジのブリッジ ID
• メッセージ エージ
• 送信側ポートの ID
• hello タイマー、転送遅延タイマー、および max-age プロトコル タイマーの値
ネットワーク デバイスが BPDU フレームを伝送すると、そのフレームが伝送される LAN に接続されたすべてのネットワーク デバイスが BPDU を受信します。ネットワーク デバイスが BPDU を受信すると、そのフレームを転送するのではなく、フレームに含まれる情報を使用して BPDU を計算し、トポロジーが変更されると、BPDU の送信を開始します。
BPDU 交換によって次の処理が行われます。
• 1 つのネットワーク デバイスがルート ブリッジとして選定されます。
• パス コストに基づいて、各ネットワーク デバイスのルート ブリッジまでの最短距離が計算されます。
• LAN セグメントごとに指定ブリッジが選択されます。これはルート ブリッジに最も近いネットワーク デバイスであり、このネットワーク デバイスを経由してルートにフレームが転送されます。
• ルート ポートが選択されます。これは、ブリッジからルート ブリッジまでの最適パスを提供するポートです。
• スパニングツリーに含まれるポートが選択されます。
ルート ブリッジの選定
VLAN ごとに、最高のブリッジ ID(数値的に最小の ID 値)を持つネットワーク デバイスがルート ブリッジとして選定されます。すべてのネットワーク デバイスがデフォルト プライオリティ(32768)に設定されている場合は、VLAN 内で最小の MAC アドレスを持つネットワーク デバイスがルート ブリッジになります。ブリッジ プライオリティ値はブリッジ ID の最上位ビットを占めます。
ブリッジ プライオリティ値を変更すると、ルータがルート ブリッジとして選定される確率が変わります。大きな値を設定するとその確率が高くなり、小さな値を設定すると低くなります。
STP ルート ブリッジは、レイヤ 2 ネットワークにおけるスパニングツリー トポロジーの論理上の中心です。レイヤ 2 ネットワーク内のどの場所からでも、ルート ブリッジに到達するために必要でないパスは、すべて STP ブロッキング モードになります。
BPDU には、送信側ブリッジおよびそのポートについて、ブリッジおよび MAC アドレス、ブリッジ プライオリティ、ポート プライオリティ、パス コストなどの情報が含まれます。STP はこの情報を使用してレイヤ 2 ネットワークのルート ブリッジを選定し、ルート ブリッジへのルート ポートを選定し、各レイヤ 2 セグメントの指定ポートを判別します。
STP プロトコル タイマー
表 20-2 に、STP のパフォーマンスに影響する STP プロトコル タイマーを示します。
表 20-2 STP プロトコル タイマー
|
|
Hello タイマー |
ネットワーク デバイスが他のネットワーク デバイスへ hello メッセージをブロードキャストする間隔を決定します。 |
転送遅延タイマー |
ポートが転送を開始するまでに、リスニング ステートおよびラーニング ステートが継続する必要がある時間を決定します。 |
最大エージング タイマー |
ポートで受信したプロトコル情報がネットワーク デバイスによって保管される時間を決定します。 |
スパニングツリー トポロジーの作成
図 20-1 では、スイッチ A がルート ブリッジに選定されます。これは、すべてのネットワーク デバイスのブリッジ プライオリティがデフォルト(32768)に設定されており、スイッチ A の MAC アドレスが最小であるためです。ただし、トラフィック パターン、転送ポートの数、またはリンク タイプによっては、スイッチ A が最適なルート ブリッジであるとは限りません。最適なネットワーク デバイスがルート ブリッジになるように、デバイスのプライオリティを上げる(数値を下げる)ことで、ルートとして最適なネットワーク デバイスを使用する、新しいスパニングツリー トポロジーを形成するように強制的に再計算させることができます。
図 20-1 スパニングツリー トポロジー
スパニングツリー トポロジがデフォルトのパラメータに基づいて算出された場合、スイッチド ネットワークの送信元エンド ステーションから宛先エンド ステーションまでのパスが最適にならない場合があります。たとえば、現在のルート ポートよりも数値の大きいポートに高速リンクを接続すると、ルート ポートが変更される場合があります。最高速のリンクをルート ポートにすることが重要です。
たとえば、スイッチ B の 1 つのポートが光ファイバ リンクであり、同じスイッチの別のポート(Unshielded Twisted-Pair(UTP; シールドなしツイストペア)リンク)がルート ポートになっていると仮定します。ネットワーク トラフィックを高速の光ファイバ リンクに流した方が効率的です。光ファイバ ポートの STP ポート プライオリティをルート ポートよりも高いプライオリティに変更すると(数値を下げる)、光ファイバ ポートが新しいルート ポートになります。
STP ポート ステートの概要
プロトコル情報がスイッチド LAN を通過する場合、伝播遅延が生じる可能性があります。その結果、スイッチド ネットワークのさまざまな時点および場所でトポロジーが変更される場合があります。レイヤ 2 LAN ポートがスパニングツリー トポロジに含まれていない状態からフォワーディング ステートに直接遷移すると、一時的にデータ ループが発生する可能性があります。ポートは新しいトポロジー情報がスイッチド LAN 経由で伝播されるまで待機し、それからフレーム転送を開始する必要があります。さらに、古いトポロジーを使用して転送されたフレームの存続時間を満了させることも必要です。
STP を使用するCisco 7600 シリーズ ルータ上の各レイヤ 2 LAN ポートは、次の 5 種類のステートのいずれかになります。
• ブロッキング:レイヤ 2 LAN ポートはフレーム転送に参加しません。
• リスニング:レイヤ 2 LAN ポートがフレーム転送に参加すべきであると STP が判断した場合に、ブロッキング ステートのあとで最初に開始する移行ステートです。
• ラーニング:レイヤ 2 LAN ポートがフレーム転送に参加する準備をしている状態です。
• フォワーディング:レイヤ 2 LAN ポートはフレームを転送します。
• ディセーブル:レイヤ 2 LAN ポートが STP に参加せず、フレームを転送しません。
レイヤ 2 LAN ポートは、次のように 5 種類のステートに移行します。
• 初期化からブロッキング
• ブロッキングからリスニングまたはディセーブル
• リスニングからラーニングまたはディセーブル
• ラーニングからフォワーディングまたはディセーブル
• フォワーディングからディセーブル
図 20-2図 20-2 に、レイヤ 2 LAN ポートがどのように 5 種類のステートを移行するかを示します。
図 20-2 レイヤ 2 LAN インターフェイス ステート
STP をイネーブルにすると、Cisco 7600 シリーズ ルータ、VLAN、およびネットワーク上のすべてのポートは、電源投入時に必ずブロッキング ステートを経て、それからリスニングおよびラーニングという移行ステートに進みます。設定が適切であれば、各レイヤ 2 LAN ポートはフォワーディング ステートまたはブロッキング ステートで安定します。
STP アルゴリズムによってレイヤ 2 LAN ポートがフォワーディング ステートになると、次の処理が行われます。
1. レイヤ 2 LAN ポートがリスニング ステートになり、ブロッキング ステートに移行するように指示するプロトコル情報を待ちます。
2. レイヤ 2 LAN ポートが転送遅延タイマーの満了を待ち、レイヤ 2 LAN ポートをラーニング ステートに移行し、転送遅延タイマーをリセットします。
3. ラーニング ステートで、レイヤ 2 LAN ポートはフレーム転送を引き続きブロックしながら、転送データベースのエンド ステーションが位置情報を学習します。
4. レイヤ 2 LAN ポートは、転送遅延タイマーがタイムアウトになるまで待機します。タイムアウトになったら、レイヤ 2 LAN ポートをフォワーディング ステートに移行します。フォワーディング ステートでは、ラーニングおよびフレーム転送が両方ともイネーブルになります。
ブロッキング ステート
ブロッキング ステートのレイヤ 2 LAN ポートは、フレーム転送に参加しません(図 20-3 を参照)。初期化後、各レイヤ 2 LAN ポートに BPDU が送信されます。ネットワーク デバイスは、他のネットワーク デバイスと BPDU を交換するまで、そのネットワーク デバイスをルートと見なします。この BPDU 交換により、ネットワーク上のどのネットワーク デバイスがルートまたはルート ブリッジであるかが確定します。ネットワークにネットワーク デバイスが 1 台しか存在しない場合は、BPDU 交換は行われず、転送遅延タイマーが失効し、ポートはリスニング ステートに移行します。初期化後、ポートは必ずブロッキング ステートになります。
図 20-3 ブロッキング ステートのインターフェイス 2
ブロッキング ステートのレイヤ 2 LAN ポートは、次の処理を実行します。
• 接続セグメントから受信したフレームを廃棄します。
• 転送用に他のポートからスイッチングされたフレームを廃棄します。
• アドレス データベースに、エンド ステーションの位置情報は組み込みません (ブロッキング状態のレイヤ 2 LAN ポートに関する学習は行われないため、アドレス データベースは更新されません)。
• BPDU を受信し、それをシステム モジュールに転送します。
• システム モジュールから受信した BPDU を送信しません。
• ネットワーク管理メッセージを受信して応答します。
リスニング ステート
リスニング ステートは、レイヤ 2 LAN ポートがブロッキング ステートを経て最初に開始する移行ステートです。レイヤ 2 LAN ポートがフレーム転送に参加すべきであると STP が判断した場合に、レイヤ 2 LAN ポートはこのステートを開始します。図 20-4 に、リスニング ステートのレイヤ 2 LAN ポートを示します。
図 20-4 リスニング ステートのインターフェイス 2
リスニング ステートのレイヤ 2 LAN ポートは、次の処理を実行します。
• 接続セグメントから受信したフレームを廃棄します。
• 転送用に他の LAN ポートからスイッチングされたフレームを廃棄します。
• アドレス データベースに、エンド ステーションの位置情報は組み込みません (この時点で学習は行われないため、アドレス データベースは更新されません)。
• BPDU を受信し、それをシステム モジュールに転送します。
• システム モジュールから受信した BPDU を、処理して送信します。
• ネットワーク管理メッセージを受信して応答します。
ラーニング ステート
ラーニング ステートのレイヤ 2 LAN ポートは、フレーム転送に参加するための準備を行います。レイヤ 2 LAN ポートは、リスニング ステートからラーニング ステートを開始します。図 20-5 に、ラーニング ステートのレイヤ 2 LAN ポートを示します。
図 20-5 ラーニング ステートのインターフェイス 2
ラーニング ステートのレイヤ 2 LAN ポートは、次の処理を実行します。
• 接続セグメントから受信したフレームを廃棄します。
• 転送用に他のポートからスイッチングされたフレームを廃棄します。
• エンド ステーションの位置情報をアドレス データベースに組み込みます。
• BPDU を受信し、それをシステム モジュールに転送します。
• システム モジュールから受信した BPDU を、処理して送信します。
• ネットワーク管理メッセージを受信して応答します。
フォワーディング ステート
フォワーディング ステートのレイヤ 2 LAN ポートは、フレームを転送します(図 20-6 を参照)。レイヤ 2 LAN ポートは、ラーニング ステートからフォワーディング ステートを開始します。
図 20-6 フォワーディング ステートのインターフェイス 2
フォワーディング ステートのレイヤ 2 LAN ポートは、次の処理を実行します。
• 接続セグメントから受信したフレームを転送します。
• 転送用に他のポートからスイッチングされたフレームを転送します。
• エンド ステーションの位置情報をアドレス データベースに組み込みます。
• BPDU を受信し、それをシステム モジュールに転送します。
• システム モジュールから受信した BPDU を処理します。
• ネットワーク管理メッセージを受信して応答します。
ディセーブル ステート
ディセーブル ステートのレイヤ 2 LAN ポートは、フレーム転送または STP に参加しません(図 20-7 を参照)。ディセーブル ステートのレイヤ 2 LAN ポートは事実上、動作することはありません。
図 20-7 ディセーブル ステートのインターフェイス 2
ディセーブルになったレイヤ 2 LAN ポートは、次の処理を実行します。
• 接続セグメントから受信したフレームを廃棄します。
• 転送用に他のポートからスイッチングされたフレームを廃棄します。
• アドレス データベースに、エンド ステーションの位置情報は組み込みません (学習は行われないため、アドレス データベースは更新されません)。
• BPDU を受信しません。
• システム モジュールから送信用の BPDU を受信しません。
STP および IEEE 802.1Q トランク
802.1Q トランクによって、ネットワークの STP の構築方法に、いくつかの制約が課されます。802.1Q トランクを使用して接続しているシスコのネットワーク デバイスを使用したネットワークでは、ネットワーク デバイスがトランク上で許容される VLAN ごとに 1 つの STP インスタンスを維持します。しかし、他社製の 802.1Q ネットワーク デバイスでは、トランク上で許容されるすべての VLAN に対して 1 つの STP インスタンスしか維持されません。
802.1Q トランクを使用してシスコのネットワーク デバイスを他社製のネットワーク デバイスに接続する場合、シスコのネットワーク デバイスは、トランクの 802.1Q VLAN の STP インスタンスを、他社製の 802.1Q ネットワーク デバイスのインスタンスと統合します。ただし、VLAN 別の STP 情報はすべて、他社製の 802.1Q ネットワーク デバイスのクラウドと切り離されて、シスコのネットワーク デバイスによって維持されます。シスコのネットワーク デバイスを隔てている他社製の 802.1Q 装置のクラウドは、ネットワーク デバイス間の単一トランク リンクとして処理されます。
802.1Q トランクの詳細については、を参照してください。
IEEE 802.1w RSTP の機能概要
RSTP ではポイントツーポイント配線が活用され、スパニングツリーの高速コンバージェンスが提供されます。スパニングツリーの再設定は 1 秒以内に発生します(802.1D スパニングツリーのデフォルト設定では 50 秒)。
ここでは、RSTP の機能概要について説明します。
• 「ポートの役割およびアクティブ トポロジー」
• 「高速コンバージェンス」
• 「ポートの役割の同期」
• 「BPDU の形式および処理」
• 「トポロジの変更」
• 「Rapid PVST」
ポートの役割およびアクティブ トポロジー
RSTP では、ポートの役割の割り当て、およびアクティブ トポロジーの学習により、スパニングツリーの高速コンバージェンスが可能になります。RSTP は 802.1D STP 上に構築され、スイッチ プライオリティが最も高い(プライオリティの数値が最も小さい)ルータが、「ルート ブリッジの選定」で説明したようにルート ブリッジとして選択されます。RSTP は、次のうちいずれかのポートの役割をそれぞれのポートに割り当てます。
• ルート ポート:ルータがルート ブリッジにパケットを転送するとき、最適なパス(最低コスト)を提供します。
• DP:指定ルータに接続し、その LAN からルート ブリッジにパケットを転送するとき、パス コストを最低にします。DP は、指定ルータが LAN に接続されているポートです。
• 代替ポート:現在のルート ポートが提供するルート ブリッジへの代替パスを提供します。
• バックアップ ポート:指定ポートが提供した、スパニングツリーのリーフに向かうパスのバックアップとして機能します。バックアップ ポートは、2 つのポートがループバック内でポイントツーポイント リンクによって接続されるか、共有 LAN セグメントとの複数の接続がルータにある場合に限って存在できます。
• ディセーブル ポート:スパニング ツリーの動作において何もロールが与えられていません。
ルート ポートまたは DP の役割があるポートは、アクティブ トポロジーに組み込まれます。代替ポートまたはバックアップ ポートのロールがあるポートは、アクティブ トポロジから除外されます。
ネットワーク全体でポートの役割が一貫している安定したトポロジーの場合、RSTP は、すべてのルート ポートおよび DP をフォワーディング ステートにすぐに移行しますが、すべての代替ポートおよびバックアップ ポートは常に廃棄ステートになります(802.1D のブロッキングに相当)。ポートのステートにより、転送処理および学習処理の動作が制御されます。802.1D および RSTP のポート ステートの比較については、 表 20-3 を参照してください。
表 20-3 ポート ステートの比較
|
STP ポート ステート(IEEE 802.1D)
|
|
|
イネーブル |
ブロッキング |
廃棄 |
No |
イネーブル |
リスニング |
廃棄 |
No |
イネーブル |
ラーニング |
ラーニング |
Yes |
イネーブル |
フォワーディング |
フォワーディング |
Yes |
ディセーブル |
ディセーブル |
廃棄 |
No |
Cisco STP の実装との一貫性を保つため、このマニュアルでは、ポート ステートを 廃棄 ではなく ブロッキング として定義します。DP はリスニング ステートから開始します。
高速コンバージェンス
RSTP は、ルータ、ルータ ポート、LAN のうちいずれかの障害のあと、接続の高速回復を提供します。エッジ ポート、新しいルート ポート、ポイントツーポイント リンクで接続したポートに、高速コンバージェンスが次のように提供されます。
• エッジ ポート: spanning-tree portfast インターフェイス コンフィギュレーション コマンドを使用して RSTP ルータでエッジ ポートとしてポートを設定した場合、エッジ ポートはフォワーディング ステートにすぐに移行します。エッジ ポートは Port Fast 対応ポートと同じであり、単一エンド ステーションに接続しているポートだけでイネーブルにする必要があります。
• ルート ポート:RSTP は、新しいルート ポートを選択した場合、古いルート ポートをブロックし、新しいルート ポートをフォワーディング ステートにすぐに移行します。
• ポイントツーポイント リンク:ポイントツーポイント リンクで別のポートにポートを接続し、ローカル ポートが DP になると、提案と合意のハンドシェークを使用して別のポートと高速移行がネゴシエーションされ、ループがないトポロジーが確保されます。
図 20-8 で示すように、ルータ A がポイントツーポイント リンク経由でルータ B に接続し、すべてのポートはブロッキング ステートになります。ルータ A のプライオリティの数値が、ルータ B のプライオリティより小さいとします。ルータ A は提案メッセージ(提案フラグを設定した設定 BPDU)をルータ B に送信し、指定ルータとして自分自身を提案します。
ルータ B は、提案メッセージの受信後、提案メッセージを受信したポートを新しいルート ポートとして選択し、エッジ以外のすべてのポートを強制的にブロッキング ステートにして、新しいルート ポートを介して合意メッセージ(合意フラグを設定した BPDU)を送信します。
ルータ A も、ルータ B の合意メッセージの受信後、指定ポートをフォワーディング ステートにすぐに移行します。ルータ B はすべてのエッジ以外のポートをブロックし、ルータ A およびルータ B の間にポイントツーポイント リンクがあるので、ネットワークにループは形成されません。
ルータ C がルータ B に接続すると、同様のセットのハンドシェーク メッセージが交換されます。ルータ C はルータ B に接続されているポートをルート ポートとして選択し、両端がフォワーディング ステートにすぐに移行します。このハンドシェーク処理を繰り返して、もう 1 つのルータがアクティブ トポロジーに加わります。ネットワークの収束時には、この提案と合意のハンドシェーク処理がスパニング ツリーのルートからリーフに進みます。
ルータは、ポートのデュプレックス モードからリンク タイプを学習します。全二重ポートはポイントツーポイント接続、半二重ポートは共有接続と見なされます。 spanning-tree link-type インターフェイス コンフィギュレーション コマンドを使用すると、デュプレックス設定によって制御されるデフォルト設定を無効にすることができます。
図 20-8 高速コンバージェンスの提案と合意のハンドシェーク
ポートの役割の同期
ルータがそのルータのポートの 1 つで提案メッセージを受信し、そのポートが新しいルート ポートとして選択されると、RSTP によってその他すべてのポートが新しいルートの情報と強制的に同期化します。
その他すべてのポートが同期化されている場合、ルータはルート ポートで受信した上位ルート情報で同期化されます。ルータのそれぞれのポートは、次のような場合に同期化します。
• ポートがブロッキング ステートである。
• エッジ ポート(ネットワークのエッジに存在するように設定されたポート)である。
DP は、フォワーディング ステートになっていてエッジ ポートとして設定されていない場合、RSTP によって DP が強制的に新しいルート情報で同期化すると、DP がブロッキング ステートに移行します。一般的に RSTP がルート情報でポートを強制的に同期化し、ポートが上の条件を満たしていない場合、そのポート ステートはブロッキングに設定されます。
ルータは、すべてのポートが同期化されたことを確認した後で、ルート ポートに対応する指定ルータに合意メッセージを送信します。ポイントツーポイント リンクで接続されたルータがポートの役割で合意すると、RSTP はポート ステートをフォワーディングにすぐに移行します。イベントのシーケンスについては、図 20-9 を参照してください。
図 20-9 高速コンバージェンス中のイベントのシーケンス
BPDU の形式および処理の概要
RSTP BPDU の形式は 802.1D BPDU の形式と同じですが、プロトコル バージョンは 2 に設定されます。新しい 1 バイトの Version 1 Length フィールドはゼロに設定されます。つまり、バージョン 1 のプロトコル情報は存在しません。 表 20-4 に、RSTP フラグ フィールドを示します。
表 20-4 RSTP BPDU フラグ
|
|
0 |
Topology change(TC; トポロジーの変化) |
1 |
提案 |
2 ~ 3: 00 01 10 11 |
ポートの役割: Unknown 代替ポートまたはバックアップ ポート ルート ポート 指定ポート |
4 |
ラーニング |
5 |
フォワーディング |
6 |
合意 |
7 |
Topology Change Acknowledgement(TCA; トポロジー変更確認応答) |
送信側ルータは RSTP BPDU の提案フラグを設定し、その LAN の指定ルータとして自分自身を提案します。提案メッセージのポートの役割は、常に DP に設定されます。
送信側ルータは、RSTP BPDU の合意フラグを設定して以前の提案を受け入れます。合意メッセージのポートの役割は、常にルート ポートに設定されます。
RSTP には TCN BPDU がありません。TC フラグが使用されて、TC が示されます。ただ 802.1D ルータとのインターオペラビリティのため、RSTP ルータは TCN BPDU の処理と生成を行います。
ラーニング フラグおよびフォワーディング フラグは、送信側ポートのステートに従って設定されます。
優位 BPDU 情報の処理
上位 BPDU は、ルート情報(低いスイッチ ID や低いパス コストなど)を持つ BPDU であり、ポート用に現在保存されているものより上位になります。
ポートが上位 BPDU を受信すると、RSTP は再設定を開始します。ポートが新しいルート ポートとして提案されて選択されると、RSTP は強制的にその他すべてのポートを同期化します。
受信した BPDU が、提案フラグが設定されている RSTP BPDU である場合、ルータはその他すべてのポートが同期化されてから合意メッセージを送信します。BPDU が 802.1D BPDU である場合、ルータは提案フラグを設定せず、ポートの転送遅延タイマーを開始します。新しいルート ポートでは、フォワーディング ステートに移行するために、2 倍の転送遅延時間が必要となります。
ポートで受信した上位情報によってポートがバックアップ ポートか代替ポートになった場合、RSTP はそのポートをブロッキング ステートに設定して合意メッセージを送信します。DP は、転送遅延タイマーが失効するまで、提案フラグを設定して BPDU を送信し続け、転送遅延タイマーの失効時に、ポートはフォワーディング ステートに移行します。
下位 BPDU 情報の処理
下位 BPDU は、ルート情報(高いスイッチ ID や高いパス コストなど)を持つ BPDU であり、ポート用に現在保存されているものより下位になります。
指定ポートは、下位 BPDU を受信すると、独自の情報ですぐに応答します。
トポロジの変更
RSTP と 802.1D の間では、スパニングツリーの TC の処理が異なります。
• 検出:ブロッキング ステートとフォワーディング ステート間の いずれか の移行によって TC が発生する 802.1D とは異なり、ブロッキング ステートからフォワーディング ステートへの移行 だけ が、RSTP で TC の原因となります(接続の増加だけが TC と見なされます)。エッジ ポートにおけるステート変更は、TC の原因になりません。RSTP ルータは、TC を検出すると、TCN を受信したポートを除く、エッジ以外のすべてのポートで学習した情報を削除します。
• 通知:802.1D とは異なり、RSTP は TCN BPDU を使用しません。ただし 802.1D とのインターオペラビリティを保つため、RSTP ルータは TCN BPDU の処理と生成を行います。
• 確認応答:RSTP ルータは、802.1D ルータから DP で TCN メッセージを受信すると、TCA ビットを設定した 802.1D 設定 BPDU で応答します。ただし 802.1D ルータに接続しているルート ポートで TC-while タイマー(802.1D の TC タイマーと同じ)がアクティブであり、TCA が設定された設定 BPDU を受信した場合、TC-while タイマーはリセットされます。
この動作方式が必要なのは、802.1D ルータを介してサポートする場合だけです。RSTP BPDU は TCA ビットが設定されていません。
• 伝播:RSTP ルータは、DP またはルート ポートを介して別のルータから TC メッセージを受信すると、エッジ以外のすべての DP、およびルート ポート(TC メッセージを受信したポートを除く)に変更を伝播します。ルータはこのようなすべてのポートで TC-while タイマーを開始し、そのポートで学習した情報を消去します。
• プロトコル移行:802.1D ルータとの下位互換性を保つため、RSTP は 802.1D 設定 BPDU および TCN BPDU をポートごとに選択的に送信します。
ポートが初期化されると、移行遅延タイマーが開始され(RSTP BPDU が送信される最低時間を指定)、RSTP BPDU が送信されます。このタイマーがアクティブである間、ルータはそのポートで受信したすべての BPDU を処理し、プロトコル タイプを無視します。
ルータは、ポートの移行遅延タイマーの期限が切れたあとに 802.1D BPDU を受信した場合、802.1D ルータに接続されたと認識し、802.1D BPDU だけの使用を開始します。ただし RSTP ルータは、ポートで 802.1D BPDU を使用していて、タイマーが切れたあとで RSTP BPDU を受信すると、タイマーを再開してそのポートにおける RSTP BPDU の使用を開始します。
Rapid PVST
Rapid PVST は既存の PVST+ 用の設定を使用しますが、Rapid PVST は RSTP を使用した方がコンバージェンスが速くなります。独立 VLAN は、独自の RSTP インスタンスを実行します。
ダイナミック エントリは、TC を受信すると、ポート単位ですぐに消去されます。
UplinkFast および BackboneFast 設定は Rapid PVST モードでは無視され、両機能は RSTP に含まれます。
MST の概要
ここでは MST について説明します。
• 「MST の概要」
• 「MST 領域」
• 「IST、CIST、CST」
• 「ホップ カウント」
• 「境界ポート」
• 「規格準拠 MST 実装」
• 「IEEE 802.1D-1998 STP とのインターオペラビリティ」
MST の概要
MST では複数の VLAN がスパニングツリー インスタンスにマッピングされ、それぞれのインスタンスには、その他のスパニングツリー インスタンスに依存しないスパニングツリー トポロジーが含まれます。このアーキテクチャによって複数の転送パスがデータ トラフィックに提供され、ロードバランスが可能になり、多数の VLAN のサポートに必要となるスパニングツリー インスタンスの数が減ります。MST では、1 つのインスタンス(転送パス)で障害が発生しても他のインスタンス(転送パス)に影響しないため、ネットワークのフォールトトレランスが向上します。
最も一般的には、レイヤ 2 スイッチド ネットワークのバックボーン レイヤおよび配布レイヤに最初に MST を配置します。この配置では、サービス プロバイダー環境で必要となる、一種の高可用性ネットワークが提供されます。
MST では明示的なハンドシェークによって高速スパニングツリー コンバージェンスが提供され、802.1D 転送遅延がなくなり、ルート ブリッジ ポートおよび DP がフォワーディング ステートに高速で移行します。
MST ではスパニング ツリーの動作が改善され、次の STP バージョンとの下位互換性を維持しています。
• 元の 802.1D スパニング ツリー
• 既存のシスコ固有の Multiple Instance STP(MISTP)
• 既存のシスコの PVST+
• 高速 Per-VLAN Spanning Tree Plus(高速 PVST+)
Port Fast、UplinkFast、ルート ガードなど、その他のスパニングツリー機能については、 を参照してください。
(注) • IEEE 802.1w では RSTP が定義されて、IEEE 802.1D に組み込まれました。
• IEEE 802.1s では MST が規定されて、IEEE 802.1Q に組み込まれました。
MST 領域
ルータが MST インスタンスに参加するには、同一 MST 設定情報でルータを一貫して設定する必要があります。MST 設定が同じである相互接続ルータの集合は、図 20-10 に示す MST リージョンを構成します。
MST 設定では、それぞれのルータが属する MST リージョンが制御されます。設定には、リージョンの名前、リビジョン番号、MST VLAN とインスタンスの割り当てマップが含まれます。
リージョンには、MST 設定が同一である、1 つ以上のメンバーを含めることができます。各メンバーでは、RSTP ブリッジ プロトコル データ ユニット(BPDU)を処理できる必要があります。ネットワークにおける MST リージョンの数に制限はありませんが、各リージョンでは 65 までのスパニングツリー インスタンスをサポートできます。インスタンスは、0 ~ 4094 の範囲の任意の番号で識別できます。スパニングツリー インスタンスに同時に割り当てられる VLAN は 1 つだけです。
IST、CIST、CST の概要
MST では、すべてのスパニングツリー インスタンスが独立しているその他のスパニングツリー プロトコルとは異なり、IST、CIST、CST のスパニングツリーが確立されて維持されます。
• IST は、MST リージョンで実行するスパニングツリーです。
それぞれの MST リージョン内では、MST によって複数のスパニングツリー インスタンスが維持されます。インスタンス 0 は、IST という、リージョンの特殊インスタンスです。その他すべての MST インスタンスには、1 ~ 4094 の番号が付きます。
IST は、BPDU の送受信を行う唯一のスパニングツリー インスタンスです。その他すべてのスパニングツリー インスタンス情報は、MSTP レコード(M レコード)に含まれ、MST BPDU 内でカプセル化されます。MST BPDU はすべてのインスタンスの情報を搬送するので、複数のスパニングツリー インスタンスをサポートするために処理する必要がある BPDU の数は大きく削減されます。
同一リージョン内のすべての MSTI は同一プロトコル タイマーを共有しますが、各 MSTI には、ルート ブリッジ ID やルート パス コストなど、独自のトポロジー パラメータがあります。デフォルトでは、すべての VLAN が IST に割り当てられます。
MSTI はリージョンにローカルです。たとえばリージョン A およびリージョン B が相互接続されていても、リージョン A の MSTI 1 は、リージョン B の MSTI 1 に依存しません。
• CIST は、各 MST リージョンの IST の集合です。
• CST は、MST リージョンと単一スパニングツリーを相互接続します。
あるリージョンで算出されたスパニングツリーは、スイッチド ドメイン全体を含む CST のサブツリーとして認識されます。CIST は、802.1w、802.1s、802.1D 規格をサポートするルータ間で動作するスパニングツリー アルゴリズムによって形成されます。MST リージョン内の CIST は、リージョン外の CST と同じです。
詳細については、「MST リージョン内におけるスパニングツリーの動作」および「MST リージョン間のスパニングツリーの動作」を参照してください。
MST リージョン内におけるスパニングツリーの動作
IST は、リージョン内のすべての MST ルータを接続します。IST が収束するとき、IST のルートは、図 20-10 に示すように CIST リージョナル ルートになります(802.1s 規格の実装前の IST マスター )。ネットワークにリージョンが 1 つしかない場合、CIST リージョナル ルートは CIST ルートにもなります。CIST ルートがリージョンの外にある場合、リージョンの境界にあるいずれかの MST ルータが CIST リージョナル ルートとして選択されます。
MST ルータは、初期化すると、CIST ルートおよび CIST リージョナル ルートへの両方のパス コストをゼロに設定して、CIST および CIST リージョナル ルートのルートとして自分自身を識別する BPDU を送信します。ルータはすべての MSTI を初期化し、そのすべてのルートであることを主張します。ルータは、ポート用に現在保存されているものより上位の MST ルート情報(低いスイッチ ID、低いパス コストなど)を受信した場合、CIST リージョナル ルートとしての主張を放棄します。
リージョンには、初期化中に多くのサブ リージョンが含まれて、それぞれに独自の CIST リージョナル ルートが含まれることがあります。ルータは、同一リージョンのネイバーから上位 IST 情報を受信すると、古いサブ リージョンを脱退し、真の CIST リージョナル ルートを含む新しいサブ リージョンに加入します。これにより、真の CIST リージョナル ルートを含むサブ リージョンを除くすべてのサブ リージョンは縮小します。
正しい動作のためには、MST リージョンのすべてのルータが、同一 CIST リージョナル ルートで合意する必要があります。このため、リージョン内の任意の 2 つのルータは、共通 CIST リージョナル ルートに収束する場合、MSTI のポートの役割だけを同期化します。
MST リージョン間のスパニングツリーの動作
ネットワーク内に複数のリージョンまたは 802.1D ルータがある場合、MST は CST を確立して維持します。これには、ネットワーク内のすべての MST リージョンおよびすべての 802.1D STP ルータが含まれます。MSTI は、リージョンの境界にある IST と組み合わさり、CST になります。
IST はリージョン内のすべての MST ルータを接続し、スイッチド ドメイン全体を囲む CIST のサブツリーとして認識されます。サブツリーのルートは CIST リージョナル ルートです。MST リージョンは、隣接する STP ルータおよび MST リージョンへの仮想ルータとして認識されます。
図 20-10 は、3 つの MST リージョンおよび 1 つの 802.1D ルータ(D)を含むネットワークを示しています。リージョン 1 の CIST リージョナル ルート(A)は、CIST ルートでもあります。リージョン 2 の CIST リージョナル ルート(B)、およびリージョン 3 の CIST リージョナル ルート(C)は、CIST 内のそれぞれのサブツリーのルートです。
図 20-10 MST リージョン、CIST リージョナル ルート、CST ルート
CST インスタンスだけが BPDU を送受信し、MSTI はスパニングツリー情報を BPDU に追加してネイバー ルータと相互作用し、最終的なスパニングツリー トポロジーを算出します。このため、BPDU 送信に関連するスパニングツリー パラメータ(hello タイム、転送時間、最大経過時間、最大ホップ数など)は CST インスタンス上でのみ設定されますが、すべての MSTI に影響します。スパニングツリー トポロジーに関連するパラメータ(スイッチ プライオリティ、ポート VLAN コスト、ポート VLAN プライオリティなど)は、CST インスタンスおよび MSTI の両方で設定できます。
MST ルータは、バージョン 3 の BPDU または 802.1D STP BPDU を使用して、802.1D ルータと通信します。MST ルータは、MST BPDU を使用して MST ルータと通信します。
IEEE 802.1s の用語
準規格の実装で使用される、一部の MST 命名規則は変更され、一部の 内部 パラメータおよび リージョナル パラメータの識別が組み込まれました。これらのパラメータは MST 領域内だけで使用され、ネットワーク全体で使用される外部パラメータと比較されます。CIST だけがネットワーク全体に広がるスパニングツリー インスタンスなので、CIST パラメータだけに外部修飾子が必要になり、修飾子またはリージョン修飾子は不要です。
• CIST ルートは CIST のルート ブリッジであり、ネットワーク全体に広がる一意のインスタンスです。
• CIST 外部ルート パス コストは、CIST ルートまでのコストです。このコストは MST 領域内で変化しません。MST リージョンは、CIST への単一ルータと見なすことに注意してください。CIST 外部ルート パス コストは、これらの仮想ルータ、およびどのリージョンにも属さないルータの間で算出されるルート パス コストです。
• CIST リージョナル ルートは、準規格の実装で IST マスターと呼ばれていました。CIST ルートが領域内にある場合、CIST リージョナル ルートは CIST ルートです。CIST ルートがリージョン内にない場合、CIST リージョナル ルートは、リージョン内の CIST ルートに最も近いルータです。CIST リージョナル ルートは、IST のルート ブリッジとして動作します。
• CIST 内部ルート パス コストは、領域内の CIST リージョナル ルートまでのコストです。このコストは、IST つまりインスタンス 0 だけに関連します。
表 20-5 に、IEEE 規格とシスコ準規格の用語の比較を示します。
表 20-5 準規格と規格の用語
|
|
|
CIST リージョナル ルート |
IST マスター |
CIST リージョナル ルート |
CIST 内部ルート パス コスト |
IST マスター パス コスト |
CIST 内部パス コスト |
CIST 外部ルート パス コスト |
ルート パス コスト |
ルート パス コスト |
MSTI リージョナル ルート |
インスタンス ルート |
インスタンス ルート |
MSTI 内部ルート パス コスト |
ルート パス コスト |
ルート パス コスト |
ホップ カウント
MST は、設定 BPDU のメッセージ エージ情報および最大エージ情報を使用せずにスパニングツリー トポロジーを算出します。その代わりに、IP Time To Live(TTL)メカニズムに似た、ルートまでのパス コストおよびホップ カウント メカニズムを使用します。
spanning-tree mst max-hops グローバル コンフィギュレーション コマンドを使用すると、リージョン内で最大ホップ数を設定し、そのリージョンの IST およびすべての MST インスタンスに適用できます。ホップ カウントは、メッセージ エージ情報と同じ結果になります(再設定を開始)。インスタンスのルート ブリッジは、コストが 0 でホップ カウントが最大値に設定された BPDU(M レコード)を常に送信します。ルータは、この BPDU を受信すると、受信した残りのホップ カウントから 1 を引き、生成する BPDU で残りのホップ カウントとしてこの値を伝播します。カウントがゼロに達すると、ルータは BPDU を廃棄し、ポート用に維持されている情報を期限切れにします。
BPDU の RSTP 部分のメッセージ エージ情報および最大エージ情報は、リージョン全体で同じままです。同じ値が、境界にあるリージョンの DP によって伝播されます。
境界ポート
シスコ準規格の実装では、境界ポートが次のうちいずれかの STP リージョンに MST リージョンを接続します。
• RSTP が動作している単一スパニングツリー リージョン
• PVST+ または高速 PVST+ が動作している単一スパニングツリー リージョン
• MST 設定が異なる別の MST リージョン
境界ポートは、LAN、単一スパニングツリー ルータまたは MST 設定が異なるルータの指定ルータにも接続します。
802.1s 規格には、境界ポートの定義がありません。802.1Q-2002 規格では、内部(同一リージョンから着信)および外部という、ポートが受信できる 2 種類のメッセージが識別されています。メッセージが外部である場合、CIST だけが受信します。CIST の役割がルートや代替ルートの場合、または外部 BPDU のトポロジが変更された場合は、MST インスタンスに影響する可能性があります。メッセージが内部の場合、CIST の部分は CIST によって受信されるので、各 MST インスタンスは個々の M レコードだけを受信します。シスコ準規格の実装では、外部メッセージを受信するポートが境界ポートとして扱われます。つまりポートは、内部メッセージと外部メッセージを一緒に受信できません。
MST リージョンには、ルータおよび LAN の両方が含まれます。セグメントは、DP のリージョンに属します。このため、セグメントの DP と異なるリージョンのポートは境界ポートです。この定義では、リージョン内部の 2 つのポートが、別のリージョンに属するポートとセグメントを共有し、内部メッセージおよび外部メッセージの両方を 1 つのポートで受信できるようになります。
シスコ準規格の実装からの主な変更点は、DP が、STP 互換モードで動作していない場合、境界ポートとして定義されないことです。
(注) 802.1D STP ルータがセグメントにある場合、メッセージは常に外部と見なされます。
準規格の実装からの変更点には、RSTP またはレガシー 802.1s ルータに送信者スイッチ ID が含まれる場所に、CIST リージョナル ルート ブリッジ ID フィールドが挿入されることもあります。リージョン全体は、一貫した送信者スイッチ ID をネイバー ルータに送信し、単一仮想ルータのように動作します。この例では、A または B がセグメントに指定されているかどうかに関係なく、ルートの一貫した送信者スイッチ ID が同じである BPDU をルータ C が受信します。
ポートの役割の命名規則の変更点
境界の役割は最終的な MST 規格から削除されましたが、この境界という概念は規格準拠実装で維持されます。ただしリージョンの境界にある MSTI ポートは、対応する CIST ポートの状態に従わないことがあります。現在、次の 2 つの状況があります。
• 境界ポートが CIST リージョナル ルートのルート ポートである:CIST インスタンス ポートは、提案されて同期化されると、合意を返送して、対応するすべての MSTI ポートが同期化された(フォワーディングになって)あとにだけフォワーディング ステートに移行します。MSTI ポートには、特別な マスター の役割があります。
• 境界ポートが CIST リージョナル ルートのルート ポートでない:MSTI ポートは、CIST ポートのステートおよび役割に従います。規格が提供する情報は少なく、MSTI ポートが BPDU(M レコード)を受信しないとき、交互にブロッキングできる理由を理解することは困難です。この状況の場合、境界の役割はすでに存在しませんが、 show コマンドを入力すると、出力の type カラムでポートが境界として識別されます。
レガシーおよび規格準拠ルータの間のスパニングツリー相互運用
準規格ルータの自動検出はエラーになることがあるので、インターフェイス コンフィギュレーション コマンドを使用して準規格ポートを識別できます。規格ルータおよび準規格ルータの間にリージョンを形成できませんが、CIST の使用前に相互運用できます。この特定状況では、さまざまなインスタンスにおけるロードバランス機能だけが失われます。ポートが準規格 BPDU を受信したとき、CLI ではポート設定によって異なるさまざまなフラグが表示されます。ルータが準規格 BPDU 送信用に設定されていないポートで準規格 BPDU を初めて受信したときは、Syslog メッセージも表示されます。
図 20-11 に、準規格ルータに接続された規格準拠ルータを示します。A は規格準拠ルータ、B は準規格ルータであり、両方とも同一リージョンに設定されているとします。A は CIST のルート ブリッジなので、B にはセグメント X にルート ポート(BX)およびセグメント Y に代替ポート(BY)があります。セグメント Y がフラップして BY のポートが代替になってから 1 つの準規格 BPDU を送信すると、準規格ルータが Y に接続されていることを AY は検出できず、規格 BPDU の送信を続けます。ポート BY は境界に固定され、A と B の間でのロードバランスは不可能になります。セグメント X にも同じ問題がありますが、B は TC を送信することがあります。
図 20-11 規格準拠ルータと準規格ルータの相互運用
(注) 規格 MST 実装と準規格 MST 実装間の相互作用を最低限に抑えることを推奨します。
単一方向リンク障害の検出
この機能は IEEE MST 規格にまだ存在しませんが、規格準拠実装には組み込まれています。ソフトウェアは、受信した BPDU でポートのロールおよびステートの一貫性をチェックし、ブリッジング ループの原因となることがある単一方向リンク障害を検出します。
DP は、矛盾を検出すると、そのロールを維持しますが、廃棄ステートに戻ります。一貫性がない場合は、接続を中断した方がブリッジング ループを解決できるからです。
図 20-12 に、一般的にブリッジング ループになる単一方向リンク障害を示します。ルータ A はルート ブリッジであり、ルータ B へのリンクで BPDU は失われます。RSTP および MST BPDU には、送信側ポートの役割とステートが含まれます。ルータ A はこの情報を使用し、ルータ A が送信する上位 BPDU にルータ B が反応しないこと、およびルータ B がルート ブリッジではなく指定ブリッジであることを検出できます。その結果、ルータ A はポートをブロックし(またはブロッキングを維持し)、ブリッジング ループを防止します。
図 20-12 単一方向リンク障害の検出
IEEE 802.1D-1998 STP とのインターオペラビリティ
MST を実行しているルータでは、組み込みプロトコル移行機能がサポートされます。これにより、802.1D ルータと相互動作できるようになります。このルータが、802.1D 設定の BPDU(プロトコル バージョンが 0 に設定された BPDU)を受信した場合、そのポートでは 802.1D BPDU だけが送信されます。MST ルータは、802.1D BPDU、異なるリージョンに対応付けられた MST BPDU(バージョン 3)、または RSTP BPDU(バージョン 2)を受信すると、ポートがリージョンの境界にあることを検出できます。
ただし、ルータが 802.1D BPDU を受信していない場合は、自動的に MST モードに戻りません。これは 802.1D ルータが指定ルータでない限り、802.1D ルータがリンクから削除されたかどうかを検出できないためです。このルータが接続するルータがリージョンに加入していると、ルータはポートに境界の役割を割り当て続ける場合があります。プロトコル移行プロセスを再開するには(強制的にネイバー ルータと再びネゴシエーションするには)、 clear spanning-tree detected-protocols 特権 EXEC コマンドを使用します。
リンクのすべての 802.1D ルータが RSTP ルータである場合、802.1D ルータは、RSTP BPDU であるかのように MST BPDU を処理できます。このため MST ルータは、バージョン 0 の設定および Topology Change Notification(TCN)BPDU、または境界ポートのバージョン 3 の MST BPDU を送信します。境界ポートは、LAN、単一スパニングツリー ルータまたは MST 設定が異なるルータのいずれかの指定のルータに接続します。
STP の設定
ここでは、VLAN 上での STP の設定手順について説明します。
• 「STP のデフォルト設定」
• 「STP のイネーブル化」
• 「拡張システム ID のイネーブル化」
• 「ルート ブリッジの設定」
• 「セカンダリ ルート ブリッジの設定」
• 「STP ポート プライオリティの設定」
• 「STP ポート コストの設定」
• 「VLAN のブリッジ プライオリティの設定」
• 「hello タイムの設定」
• 「VLAN の転送遅延時間の設定」
• 「VLAN の最大エージング タイムの設定」
• 「Rapid-PVST のイネーブル化」
(注) この章で説明する STP コマンドは任意の LAN ポートに設定できますが、これらのコマンドが有効になるのは、switchport キーワードを使用して設定した LAN ポートに限られます。
注意 物理的なループの存在しないトポロジーであっても、スパニングツリーをディセーブルにすることは推奨しません。スパニング ツリーは、設定の誤りおよび配線の誤りに対する保護手段として動作します。VLAN 内に物理的なループが存在しないことを保証できる場合以外は、VLAN でスパニングツリーをディセーブルにしないでください。
STP のデフォルト設定
表 20-6 に、STP のデフォルト設定を示します。
表 20-6 STP のデフォルト設定
|
|
イネーブル ステート |
すべての VLAN でイネーブル化された STP |
ブリッジ プライオリティ |
32768 |
SPT ポート プライオリティ(ポート単位で設定可能:レイヤ 2 アクセス ポートとして設定された LAN ポートで使用される) |
128 |
SPT ポート コスト(ポート単位で設定可能:レイヤ 2 アクセス ポートとして設定された LAN ポートで使用される) |
• ギガビット イーサネット:4 • ファスト イーサネット:19 • イーサネット:100 |
STP VLAN ポート プライオリティ(VLAN 単位で設定可能。レイヤ 2 トランク ポートとして設定された LAN ポートで使用される) |
128 |
STP VLAN ポート コスト(VLAN 単位で設定可能。レイヤ 2 トランク ポートとして設定された LAN ポートで使用される) |
• ギガビット イーサネット:4 • ファスト イーサネット:19 • イーサネット:100 |
hello タイム |
2 秒 |
転送遅延時間 |
15 秒 |
最大エージング タイム |
20 秒 |
Mode |
PVST |
STP のイネーブル化
(注) STP は、VLAN 1 および新たに作成されたすべての VLAN で、デフォルトでイネーブルに設定されています。
STP は、VLAN 単位でイネーブルにできます。Cisco 7600 シリーズ ルータは VLAN ごとに個別の STP インスタンスを維持します(STP をディセーブルに設定した VLAN を除きます)。
VLAN 単位で STP をイネーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID |
VLAN 単位で STP をイネーブルにします。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。表 20-6 を参照)。 |
Router(config)# default spanning-tree vlan vlan_ID |
指定された VLAN のすべての STP パラメータを、デフォルト値に戻します。 |
Router(config)# no spanning-tree vlan vlan_ID |
指定された VLAN で STP をディセーブルにします。このコマンドについては、次の「注意」を参照してください。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
ステップ 3 |
Router# show spanning-tree vlan vlan_ID |
STP がイネーブルになっていることを確認します。 |
注意 VLAN のすべてのスイッチおよびブリッジでスパニング ツリーがディセーブルになっていない場合は、VLAN でスパニング ツリーをディセーブルにしないでください。スパニングツリーは、VLAN の一部のスイッチおよびブリッジでディセーブルにしておきながら、VLAN のその他のスイッチおよびブリッジでイネーブルにしておくことはできません。スパニングツリーをイネーブルにしたスイッチとブリッジに、ネットワークの物理トポロジに関する不完全な情報が含まれることになるので、この処理によって予想外の結果となることがあります。
注意 物理的なループの存在しないトポロジーであっても、スパニングツリーをディセーブルにすることは推奨しません。スパニング ツリーは、設定の誤りおよび配線の誤りに対する保護手段として動作します。VLAN 内に物理的なループが存在しないことを保証できる場合以外は、VLAN でスパニングツリーをディセーブルにしないでください。
次に、VLAN 200 で STP をイネーブルにする例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 200
(注) STP はデフォルトでイネーブルに設定されているので、show running コマンドを入力して設定の結果を表示しても、STP をイネーブルにするために入力したコマンドは表示されません。
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200
Spanning tree enabled protocol ieee
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Interface Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
Gi1/4 Desg FWD 200000 128.196 P2p
Gi1/5 Back BLK 200000 128.197 P2p
(注) VLAN 200 スパニングツリーを作成するには、VLAN 200 にアクティブなインターフェイスが少なくとも 1 つ必要です。この例では、VLAN 200 内の 2 つのインターフェイスがアクティブです。
拡張システム ID のイネーブル化
拡張システム ID は、Cisco 7600 シリーズ ルータで永続的にイネーブルになっています。次に、設定を確認する例を示します。
Router# show spanning-tree summary | include Extended
Extended system ID is enabled.
ルート ブリッジの設定
Cisco 7600 シリーズ ルータは、アクティブな VLAN ごとに STP のインスタンスを個別に維持します。各インスタンスには、ブリッジ プライオリティおよびブリッジの MAC アドレスで構成されるブリッジ ID が対応付けられます。VLAN ごとに、最小のブリッジ ID を持つネットワーク デバイスが、その VLAN のルート ブリッジになります。
VLAN インスタンスがルート ブリッジになるように設定するには、 spanning-tree vlan vlan_ID root コマンドを入力して、ブリッジ プライオリティをデフォルト値(32768)から非常に小さな値へと変更します。
spanning-tree vlan vlan_ID root コマンドを入力すると、ルータは各 VLAN の現在のルート ブリッジのブリッジ プライオリティを確認します。拡張システム ID をイネーブルにすると、24576 という値でルータが指定された VLAN のルートになる場合、ルータはその VLAN のブリッジ プライオリティを 24576 に設定します。
拡張システム ID がイネーブルで、指定された VLAN のルート ブリッジのブリッジ プライオリティが 24576 より小さい場合、ルータはその VLAN のブリッジ プライオリティを最小のブリッジ プライオリティより 4096 小さい値に設定します (4096 は 4 ビット ブリッジ プライオリティの最下位ビットの値です。表 20-1 を参照)。
(注) ルート ブリッジになるために必要な値が 1 より小さい場合は、spanning-tree vlan vlan_ID root コマンドはエラーになります。
拡張システム ID がイネーブルで、たとえば VLAN 20 のすべてのネットワーク デバイスでデフォルト プライオリティが 32768 に設定されている場合に、ルータ上で spanning-tree vlan 20 root primary コマンドを使用すると、ブリッジ プライオリティが 24576 に設定され、ルータが VLAN 20 のルート ブリッジになります。
注意 STP の各インスタンスのルート ブリッジは、バックボーンまたはディストリビューション ルータでなければなりません。アクセス ルータを STP のプライマリ ルートとして設定しないでください。
レイヤ 2 ネットワークの直径(つまり、レイヤ 2 ネットワーク上の任意の 2 つのエンド ステーション間における最大ブリッジ ホップ数)を指定するには、 diameter キーワードを指定します。ネットワーク直径を指定すると、Cisco 7600 シリーズ ルータはその直径を持つネットワークに最適な hello タイム、転送遅延時間、および最大エージング タイムを自動的に選びます。その結果、STP のコンバージェンスに要する時間が大幅に短縮されます。 hello キーワードを使用して、自動的に計算される hello タイムを上書きすることができます。
(注) STP トポロジーを安定した状態に保つには、Cisco 7600 シリーズ ルータをルート ブリッジとして設定したあと、hello タイム、転送遅延時間、および最大エージング タイムを手動で設定しないでください。
Cisco 7600 シリーズ ルータをルート ブリッジとして設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID root primary [ diameter hops [ hello-time seconds ]] |
Cisco 7600 シリーズ ルータをルート ブリッジとして設定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。表 20-6 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID root |
ルート ブリッジ コンフィギュレーションを消去します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
次に、Cisco 7600 シリーズ ルータを VLAN 10 のルート ブリッジとして設定し、ネットワーク直径を 4 に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 10 root primary diameter 4
セカンダリ ルート ブリッジの設定
Cisco 7600 シリーズ ルータをセカンダリ ルートとして設定すると、STP ブリッジ プライオリティはデフォルト値(32768)から変更されます。その結果、プライマリ ルート ブリッジに障害が発生した場合に(ネットワーク上の他のネットワーク デバイスがデフォルトのブリッジ プライオリティ 32768 を使用していると仮定して)、このルータが指定された VLAN のルート ブリッジになる可能性が高くなります。
拡張システム ID をイネーブルにしている場合、STP はブリッジ プライオリティを 28672 に設定します。
このコマンドを複数のルータに対して実行すると、複数のバックアップ ルート ブリッジを設定できます。プライマリ ルート ブリッジを設定するときに使用したものと同じネットワーク直径および hello タイムを使用してください。
Cisco 7600 シリーズ ルータをセカンダリ ルート ブリッジとして設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# [ no ] spanning-tree vlan vlan_ID root secondary [ diameter hops [ hello-time seconds ]] |
Cisco 7600 シリーズ ルータをセカンダリ ルート ブリッジとして設定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID root |
ルート ブリッジ設定を消去します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
次に、Cisco 7600 シリーズ ルータを VLAN 10 のセカンダリ ルート ブリッジとして設定し、ネットワーク直径を 4 に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 10 root secondary diameter 4
STP ポート プライオリティの設定
ループが発生すると、STP はポート プライオリティを考慮して、フォワーディング ステートにする LAN ポートを選択します。STP に最初に選択させたい LAN ポートには高いプライオリティ値を、最後に選択させたい LAN ポートには低いプライオリティ値を割り当てることができます。すべての LAN ポートのプライオリティ値が同じ場合、STP は最小の LAN ポート番号を持つ LAN ポートをフォワーディング ステートに移行させ、その他の LAN ポートをブロックします。指定できるプライオリティの範囲は 0 ~ 240 であり(デフォルトは 128 です)、16 ずつ増加するよう設定できます。
Cisco IOS は LAN ポートがアクセス ポートとして設定されている場合にはポート プライオリティ値を使用し、LAN ポートがトランク ポートとして設定されている場合には VLAN ポート プライオリティ値を使用します。
レイヤ 2 LAN インターフェイスの STP ポート プライオリティを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel port_channel_number }} |
設定するインターフェイスを選択します。 |
ステップ 2 |
Router(config-if)# spanning-tree port-priority port_priority |
LAN インターフェイスのポート プライオリティを設定します。指定できる port_priority 値の範囲は 1 ~ 252 で、4 ずつ増加します。 |
Router(config-if)# no spanning-tree port-priority |
デフォルトのポート プライオリティ値に戻します。 |
ステップ 3 |
Router(config-if)# spanning-tree vlan vlan_ID port-priority port_priority |
LAN インターフェイスの VLAN ポート プライオリティを設定します。指定できる port_priority 値の範囲は 1 ~ 252 で、4 ずつ増加します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config-if)# [ no ] spanning-tree vlan vlan_ID port-priority |
デフォルトの VLAN ポート プライオリティ値に戻します。 |
ステップ 4 |
Router(config-if)# end |
コンフィギュレーション モードを終了します。 |
ステップ 5 |
Router# show spanning-tree interface { gigabitethernet 1 /port } | { port-channel port_channel_number } Router# show spanning-tree vlan vlan_ID |
設定を確認します。 |
次に、ギガビット イーサネット ポート 1/4 の STP ポート プライオリティを設定する例を示します。
Router# configure terminal
Router(config)# interface gigabitethernet 1/4
Router(config-if)# spanning-tree port-priority 160
次に、ギガビット イーサネット ポート 1/4 の設定を確認する例を示します。
Router# show spanning-tree interface gigabitethernet 1/4
Vlan Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
VLAN0001 Back BLK 200000 160.196 P2p
VLAN0006 Back BLK 200000 160.196 P2p
VLAN0198 Back BLK 200000 160.196 P2p
VLAN0199 Back BLK 200000 160.196 P2p
VLAN0200 Back BLK 200000 160.196 P2p
ギガビット イーサネット ポート 1/4 はトランクです。この例のように、複数の VLAN が設定され、アクティブになっています。ポート プライオリティ設定は、この VLAN インターフェイス上のすべての VLAN に適用されます。
(注) show spanning-tree interface コマンドで情報が表示されるのは、ポートが接続され動作している場合に限られます。これらの条件が満たされていない場合は、show running-config interface コマンドを使用して設定を確認してください。
次に、ギガビット イーサネット ポート 1/4 の VLAN ポート プライオリティを設定する例を示します。
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# interface gigabitethernet 1/4
Router(config-if)# spanning-tree vlan 200 port-priority 64
この例で入力した設定は VLAN 200 にだけ適用されます。200 以外のすべての VLAN のポート プライオリティは 160 のままです。
次に、設定を確認する例を示します。
Router# show spanning-tree interface gigabitethernet 1/4
Vlan Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
VLAN0001 Back BLK 200000 160.196 P2p
VLAN0006 Back BLK 200000 160.196 P2p
VLAN0199 Back BLK 200000 160.196 P2p
VLAN0200 Desg FWD 200000 64.196 P2p
VLAN 200 のスパニングツリー情報を表示するには、次のコマンドも使用できます。
Router# show spanning-tree vlan 200 interface gigabitethernet 1/4
Interface Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
Gi1/4 Desg LRN 200000 64.196 P2p
STP ポート コストの設定
STP ポート パス コストのデフォルト値は、LAN インターフェイスのメディア速度から決定されます。ループが発生すると、STP はポート コストを考慮して、フォワーディング ステートにする LAN インターフェイスを選択します。STP に最初に選択させる LAN インターフェイスには低いコスト値を、STP に最後に選択させる LAN インターフェイスには高いコスト値を割り当てることができます。すべての LAN インターフェイスが同じコスト値を使用している場合には、STP は LAN インターフェイス番号が最も小さい LAN インターフェイスをフォワーディング ステートにして、残りの LAN インターフェイスをブロックします。指定できるコストの範囲は、0 ~ 200000000 です(デフォルトは、メディアによって異なります)。
STP は LAN インターフェイスがアクセス ポートとして設定されている場合にはポート コスト値を使用し、LAN インターフェイスがトランク ポートとして設定されている場合には VLAN ポート コスト値を使用します。
レイヤ 2 LAN インターフェイスの STP ポート コストを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel port_channel_number }} |
設定するインターフェイスを選択します。 |
ステップ 2 |
Router(config-if)# spanning-tree cost port_cost |
LAN インターフェイスのポート コストを設定します。 port_cost 値は、1 ~ 200000000 の範囲で指定します。 |
Router(config-if)# no spanning-tree cost |
デフォルトのポート コストに戻します。 |
ステップ 3 |
Router(config-if)# spanning-tree vlan vlan_ID cost port_cost |
LAN インターフェイスの VLAN ポート コストを設定します。 port_cost 値は、1 ~ 200000000 の範囲で指定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config-if)# no spanning-tree vlan vlan_ID cost |
デフォルトの VLAN ポート コストに戻します。 |
ステップ 4 |
Router(config-if)# end |
コンフィギュレーション モードを終了します。 |
ステップ 5 |
Router# show spanning-tree interface { gigabitethernet 1 /port } | { port-channel port_channel_number } show spanning-tree vlan vlan_ID |
設定を確認します。 |
次に、ギガビット イーサネット ポート 1/4 の STP ポート コストを変更する例を示します。
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# interface gigabitethernet 1/4
Router(config-if)# spanning-tree cost 1000
次に、設定を確認する例を示します。
Router# show spanning-tree interface gigabitethernet 1/4
Vlan Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
VLAN0001 Back BLK 1000 160.196 P2p
VLAN0006 Back BLK 1000 160.196 P2p
VLAN0007 Back BLK 1000 160.196 P2p
VLAN0008 Back BLK 1000 160.196 P2p
VLAN0009 Back BLK 1000 160.196 P2p
VLAN0010 Back BLK 1000 160.196 P2p
次に、VLAN 200 の各ポート VLAN コストでポート プライオリティを設定する例を示します。
Router# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# interface gigabitethernet 1/4
Router(config-if)# spanning-tree vlan 200 cost 2000
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200 interface gigabitethernet 1/4
Interface Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
Gi1/4 Desg FWD 2000 64.196 P2p
(注) 次に示す出力では、他の VLAN(VLAN 1 など)はこの設定の影響を受けていません。
Router# show spanning-tree vlan 1 interface gigabitethernet 1/4
Interface Role Sts Cost Prio.Nbr Status
---------------- ---- --- --------- -------- --------------------------------
Gi1/4 Back BLK 1000 160.196 P2p
(注) show spanning-tree コマンドで情報が表示されるのは、ポートがリンクアップ動作可能ステートで、かつ DTP 用に正しく設定されている場合に限られます。これらの条件が満たされていない場合は、show running-config コマンドを入力して設定を確認してください。
VLAN のブリッジ プライオリティの設定
(注) このコマンドは、慎重に使用してください。ブリッジ プライオリティを変更するには、ほとんどの状況で spanning-tree vlan vlan_ID root primary コマンドおよび spanning-tree vlan vlan_ID root secondary コマンドを使用することを推奨します。
VLAN の STP ブリッジ プライオリティを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID priority { 0 | 4096 | 8192 | 12288 | 16384 | 20480 | 24576 | 28672 | 32768 | 36864 | 40960 | 45056 | 49152 | 53248 | 57344 | 61440 } |
拡張システム ID がイネーブルの場合に、VLAN のブリッジ プライオリティを設定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID priority |
デフォルトのブリッジ プライオリティ値に戻します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
ステップ 3 |
Router# show spanning-tree vlan vlan_ID bridge [ detail ] |
設定を確認します。 |
次に、拡張システム ID がディセーブルの場合に、VLAN 200 のブリッジ プライオリティを 33792 に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 200 priority 32768
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200 bridge
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 32768 0050.3e8d.64c8 2 20 15 ieee
hello タイムの設定
(注) このコマンドは、慎重に使用してください。hello タイムを変更するには、ほとんどの状況で spanning-tree vlan vlan_ID root primary コマンドおよび spanning-tree vlan vlan_ID root secondary コマンドを使用することを推奨します。
VLAN の STP hello タイムを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID hello-time hello_time |
VLAN の hello タイムを設定します。 hello_time 値は、1 ~ 10 秒の範囲で指定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID hello-time |
デフォルトの hello タイムに戻します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
ステップ 3 |
Router# show spanning-tree vlan vlan_ID bridge [ detail ] |
設定を確認します。 |
次に、VLAN 200 の hello タイムを 7 秒に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 200 hello-time 7
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200 bridge
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 7 20 15 ieee
VLAN の転送遅延時間の設定
VLAN の STP 転送遅延時間を設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID forward-time forward_time |
VLAN の転送時間を設定します。 forward_time 値は、4 ~ 30 秒の範囲で指定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID forward-time |
デフォルトの転送時間に戻します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
ステップ 3 |
Router# show spanning-tree vlan vlan_ID bridge [ detail ] |
設定を確認します。 |
次に、VLAN 200 の転送遅延時間を 21 秒に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 200 forward-time 21
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200 bridge
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 2 20 21 ieee
VLAN の最大エージング タイムの設定
VLAN の STP 最大エージング タイムを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# spanning-tree vlan vlan_ID max-age max_age |
VLAN の最大エージング タイムを設定します。 max_age 値は、6 ~ 40 秒の範囲で指定します。 vlan_ID の値は 1 ~ 4094 です(予約済み VLAN は除く。 を参照)。 |
Router(config)# no spanning-tree vlan vlan_ID max-age |
デフォルトの最大エージング タイムに戻します。 |
ステップ 2 |
Router(config)# end |
コンフィギュレーション モードを終了します。 |
ステップ 3 |
Router# show spanning-tree vlan vlan_ID bridge [ detail ] |
設定を確認します。 |
次に、VLAN 200 の最大エージング タイムを 36 秒に設定する例を示します。
Router# configure terminal
Router(config)# spanning-tree vlan 200 max-age 36
次に、設定を確認する例を示します。
Router# show spanning-tree vlan 200 bridge
Vlan Bridge ID Time Age Delay Protocol
---------------- -------------------- ---- ---- ----- --------
VLAN200 49152 0050.3e8d.64c8 2 36 15 ieee
Rapid-PVST のイネーブル化
Rapid-PVST は、既存の PVST+ フレームワークを設定や他の機能との相互通信に利用します。また、PVST+ 拡張機能も一部サポートします。
ルータの Rapid PVST モードをイネーブルにするには、特権モードで spanning-tree mode rapid-pvst コマンドを入力します。Rapid-PVST モードでのルータの設定手順については、「STP の設定」を参照してください。
リンク タイプの設定
高速接続は、ポイントツーポイント リンク上だけに確立されます。スパニングツリーはポイントツーポイント リンクを、スパニングツリー アルゴリズムを実行する 2 つのスイッチだけを接続するセグメントとして見なします。ルータでは、すべての全二重リンクをポイントツーポイントとして、また半二重リンクを共有リンクとして見なすので、リンク タイプの明示的設定を回避できます。特定のリンク タイプを設定するには、 spanning-tree linktype コマンドを入力します。
プロトコル移行の再起動
MSTP および RSTP の両方が稼働するルータでは、組み込みのプロトコル移行プロセスをサポートして、ルータがレガシー 802.1D スイッチと相互運用するのを可能にします。このルータが、レガシー 802.1D 設定の BPDU(プロトコル バージョンが 0 に設定された BPDU)を受信した場合、そのポートでは 802.1D BPDU だけが送信されます。また、MSTP ルータは、レガシー BPDU、異なるリージョンに対応付けられた MST BPDU(バージョン 3)、または RST BPDU(バージョン 2)を受信すると、ポートがリージョン境界にあることを検出できます。
ただし、ルータが 802.1D BPDU を受信していない場合は、自動的に MSTP モードに戻りません。これはレガシー ルータが指定ルータでない限り、レガシー ルータがリンクから削除されたかどうか判別できないためです。また、接続するルータがリージョンに加入していると、ルータはポートに境界の役割を割り当て続ける場合があります。
ルータ全体で、プロトコル移行プロセスを再開するには(強制的にネイバー スイッチと再びネゴシエートするには)、 clear spanning-tree detected-protocols 特権 EXEC コマンドを使用します。特定のインターフェイスでプロトコル移行プロセスを再開するには、 clear spanning-tree detected-protocols interface interface-id 特権 EXEC コマンドを入力します。
MST の設定
ここでは、MST の設定手順について説明します。
• 「デフォルト MST 設定」
• 「MST 設定時の注意事項および制約事項」
• 「MST リージョン設定の指定および MST のイネーブル化」(必須)
• 「ルート ブリッジの設定」(任意)
• 「セカンダリ ルート ブリッジの設定」(任意)
• 「STP ポート プライオリティの設定」(任意)
• 「パス コストの設定」(任意)
• 「スイッチのプライオリティの設定」(任意)
• 「hello タイムの設定」(任意)
• 「送信保留カウントの設定」(任意)
• 「最大経過時間の設定」(任意)
• 「最大ホップ カウントの設定」(任意)
• 「高速移行を保証するリンク タイプの指定」(任意)
• 「ネイバー タイプの指定」(任意)
• 「プロトコル移行プロセスの再開」(任意)
デフォルト MST 設定
表 20-7 に、デフォルト MST 設定を示します。
表 20-7 デフォルト MST 設定
|
|
スパニングツリー モード |
PVST+(高速 PVST+ および MST はディセーブルです) |
スイッチ プライオリティ(CIST ポートごとに設定可能) |
32768 |
スパニングツリー ポート プライオリティ(CIST ポートごとに設定可能) |
128 |
スパニングツリー ポート コスト(CIST ポートごとに設定可能) |
1000 Mbps:4 100 Mbps:19 10 Mbps:100 |
hello タイム |
2 秒 |
転送遅延時間 |
15 秒 |
最大エージング タイム |
20 秒 |
最大ホップ カウント |
20 ホップ |
MST 設定時の注意事項および制約事項
MST の設定時には、次の注意事項および制約事項に従ってください。
• 802.1s MST 規格では 65 までの MSTI が許可されます。無制限の数の VLAN を MSTI にマップできます。
• PVST+、高速 PVST+、MST はサポートされますが、同時にアクティブにできるバージョンは 1 つだけです。
• VTP は MST 設定を伝播しません。コマンドライン インターフェイス(CLI)または SNMP を使用し、MST リージョン内の各ルータで MST 設定(リージョン名、リビジョン番号、VLAN とインスタンスのマッピング)を手動で設定する必要があります。
• ネットワークの冗長パスでロードバランスを実現するには、すべての VLAN とインスタンスのマッピング割り当てが一致する必要があります。一致しない場合、すべてのトラフィックは単一リンクを流れます。
• すべての MST 境界ポートは、PVST+ と MST クラウドの間、または高速 PVST+ および MST クラウドの間におけるロードバランスのために転送する必要があります。このためには、MST クラウドの CIST リージョナル ルートが CST のルートである必要があります。MST クラウドが複数の MST リージョンから構成されている場合、いずれかの MST リージョンに CST ルートを含める必要があり、その他すべての MST リージョンに、PVST+ クラウドまたは高速 PVST+ クラウドを通るパスよりも、MST クラウド内に含まれるルートへのパスが良くする必要があります。
• ネットワークを多数のリージョンに分割することは推奨できません。ただしこの状況を避けられない場合は、レイヤ 2 デバイスによって相互接続された、より小さい LAN にスイッチド LAN を分割することを推奨します。
MST リージョン設定の指定および MST のイネーブル化
複数の ルータ を同一 MST リージョンに含めるには、それらのルータの VLAN とインスタンスのマッピング、設定リビジョン番号、および MST 名が同じである必要があります。
リージョンには、MST 設定が同一である、1 つ以上のメンバーを含めることができます。各メンバーでは、RSTP BPDU を処理できる必要があります。ネットワークにおける MST リージョンの数に制限はありませんが、各リージョンでは 65 までのスパニングツリー インスタンスしかサポートできません。スパニングツリー インスタンスに同時に割り当てられる VLAN は 1 つだけです。
MST リージョン設定を指定して MST をイネーブルにするには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst configuration |
MST コンフィギュレーション モードを開始します。 |
ステップ 3 |
Router(config-mst)# instance instance_id vlan vlan_range |
VLAN を MSTI にマップします。 • instance_id の 範囲 は 0 ~ 4094 です。 • vlan vlan_range の範囲は 1 ~ 4094 です。 VLAN を MST インスタンスにマップする場合、マッピングは増加され、コマンドに指定した VLAN は、以前マッピングした VLAN に追加されるか、そこから削除されます。 VLAN の範囲を指定するには、ハイフンを使用します。たとえば instance 1 vlan 1-63 では、VLAN 1 ~ 63 が MSTI 1 にマップされます。 一連の VLAN を指定するには、カンマを使用します。たとえば instance 1 vlan 10, 20, 30 と指定すると、VLAN 10、20、30 が MSTI 1 にマップされます。 |
ステップ 4 |
Router(config-mst)# name instance_name |
インスタンス名を指定します。 name 文字列の最大の長さは 32 文字であり、大文字と小文字が区別されます。 |
ステップ 5 |
Router(config-mst)# revision version |
設定リビジョン番号を指定します。範囲は 0 ~ 65535 です。 |
ステップ 6 |
Router(config-mst)# show pending |
保留中の設定を表示し、設定を確認します。 |
ステップ 7 |
Router(config)# exit |
すべての変更を適用し、グローバル コンフィギュレーション モードに戻ります。 |
ステップ 8 |
Router(config)# spanning-tree mode mst |
MST および RSTP をイネーブルにします。
注意 スパニングツリー モードを変更すると、トラフィックが混乱することがあります。すべてのスパニングツリー インスタンスが以前のモードで停止し、新しいモードで再起動されるからです。
MST と PVST+ の両方、または MST と高速 PVST+ の両方を同時に実行することはできません。 |
ステップ 9 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 10 |
Router# show running-config |
入力を確認します。 |
ステップ 11 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
デフォルトに戻すには、次のように操作します。
• デフォルトの MST リージョン設定に戻すには、 no spanning-tree mst configuration グローバル コンフィギュレーション コマンドを使用します。
• VLAN とインスタンスのデフォルト マップに戻すには、 no instance instance_id [ vlan vlan_range ] MST コンフィギュレーション コマンド を使用します。
• デフォルト名に戻すには、 no name MST コンフィギュレーション コマンド を使用します。
• デフォルトのリビジョン番号に戻すには、 no revision MST コンフィギュレーション コマンド を使用します。
• PVST+ を再びイネーブルにするには、 no spanning-tree mode または spanning-tree mode pvst グローバル コンフィギュレーション コマンドを使用します。
次の例は、MST コンフィギュレーション モードを開始し、VLAN 10 ~ 20 を MSTI 1 にマッピングし、リージョンに region1 という名前を付けて、設定リビジョンを 1 に設定し、保留中の設定を表示し、変更を適用してグローバル コンフィギュレーション モードに戻る方法を示しています。
Router(config)# spanning-tree mst configuration
Router(config-mst)# instance 1 vlan 10-20
Router(config-mst)# name region1
Router(config-mst)# revision 1
Router(config-mst)# show pending
Pending MST configuration
-------- ---------------------
-------------------------------
ルート ブリッジの設定
ルータは、そのルータにマッピングされている VLAN のグループのスパニングツリー インスタンスを維持します。各インスタンスには、スイッチ プライオリティおよびルータの MAC アドレスで構成されるスイッチ ID が対応付けられます。VLAN のグループの場合、スイッチ ID が最低であるルータがルート ブリッジになります。
ルータがルート ブリッジになるように設定するには、 spanning-tree mst instance_id root グローバル コンフィギュレーション コマンドを使用して、デフォルト値(32768)から大幅に小さい値にスイッチ プライオリティを修正し、ルータが、指定したスパニングツリー インスタンスのルート ブリッジになるようにします。このコマンドを入力すると、ルータはルート ブリッジのスイッチ プライオリティをチェックします。拡張システム ID をサポートするため、24576 という値によってルータが指定スパニングツリー インスタンスのルート ブリッジになる場合、ルータは指定インスタンスに対して自身のプライオリティをこの値に設定します。
指定インスタンスのルート ブリッジのスイッチ プライオリティが 24576 より小さい場合、ルータは、最低スイッチ プライオリティより 4096 小さい値に自身のプライオリティを設定します (4096 は 4 ビット スイッチ プライオリティの最下位ビットの値です。表 20-1 を参照)。
ネットワークが拡張システム ID をサポートするルータとサポートしないルータの両方で構成されている場合、拡張システム ID をサポートするルータがルート ブリッジになる可能性は低くなります。古いソフトウェアを実行している接続ルータのプライオリティより VLAN 番号が大きい場合は常に、拡張システム ID によってスイッチ プライオリティ値が増加します。
各スパニングツリー インスタンスのルート ブリッジは、バックボーンまたはディストリビューションルータでなければなりません。アクセス ルータをスパニングツリー プライマリ ルート ブリッジとして設定しないでください。
レイヤ 2 ネットワークの直径(レイヤ 2 ネットワークの任意の 2 つのエンド ステーション間にあるレイヤ 2 ホップの最大数)を指定するには、MSTI 0 だけに使用できる diameter キーワードを使用します。ネットワーク直径を指定すると、ルータはその直径を持つネットワークに最適な hello タイム、転送遅延時間、および最大エージング タイムを自動的に設定します。その結果、コンバージェンスに要する時間が大幅に短縮されます。 hello キーワードを使用して、自動的に計算される hello タイムを上書きすることができます。
(注) ルート ブリッジとして設定したルータでは、spanning-tree mst hello-time、spanning-tree mst forward-time、spanning-tree mst max-age グローバル コンフィギュレーション コマンドを使用して、hello タイム、転送遅延時間、最大エージング時間を手動で設定しないでください。
ルータをルート ブリッジとして設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router(config)# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config-config)# spanning-tree mst instance_id root primary [ diameter net_diameter [ hello-time seconds ]] |
(任意)ルータをルート ブリッジとして設定します。 • instance_id には、単一インスタンスを指定したり、インスタンスの範囲をハイフンで区切って指定したり、一連のインスタンスをカンマで区切って指定したりすることができます。範囲は 0 ~ 4094 です。 • (任意) diameter net_diameter には、任意の 2 つのエンド ステーション間におけるレイヤ 2 ホップの最大数を指定します。範囲は 2 ~ 7 です。このキーワードは、MST インスタンス 0 にだけ使用できます。 • (任意) hello-time seconds には、ルート ブリッジが設定メッセージを生成する時間を秒単位で指定します。指定できる範囲は 1 ~ 10 秒です。デフォルトは 2 秒です。 |
ステップ 3 |
Router(config-config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst instance_id |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst instance_id root グローバル コンフィギュレーション コマンドを使用します。
セカンダリ ルート ブリッジの設定
拡張システム ID をサポートするルータをセカンダリ ルートとして設定する場合、スイッチ プライオリティはデフォルト値(32768)から 28672 に修正されます。プライマリ ルート ブリッジで障害が発生した場合は、このルータが指定インスタンスのルート ブリッジになる可能性があります。ここでは、その他のネットワーク ルータが、デフォルト スイッチ プライオリティの 32768 を使用しているためにルート ブリッジになる可能性が低いことが前提となっています。
このコマンドを複数のルータに対して実行すると、複数のバックアップ ルート ブリッジを設定できます。 spanning-tree mst instance_id root primary グローバル コンフィギュレーション コマンドで、プライマリ ルート ブリッジの設定時に使用したものと同じネットワーク直径値と hello タイム値を使用してください。
ルータをセカンダリ ルート ブリッジとして設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst instance_id root secondary [ diameter net_diameter [ hello-time seconds ]] |
(任意)ルータをセカンダリ ルート ブリッジとして設定します。 • instance_id には、単一インスタンスを指定したり、インスタンスの範囲をハイフンで区切って指定したり、一連のインスタンスをカンマで区切って指定したりすることができます。範囲は 0 ~ 4094 です。 • (任意) diameter net_diameter には、任意の 2 つのエンド ステーション間におけるルータの最大数を指定します。範囲は 2 ~ 7 です。このキーワードは、MST インスタンス 0 にだけ使用できます。 • (任意) hello-time seconds には、ルート ブリッジが設定メッセージを生成する時間を秒単位で指定します。指定できる範囲は 1 ~ 10 秒です。デフォルトは 2 秒です。 プライマリ ルート ブリッジを設定するときに使用したものと同じネットワーク直径および hello タイムを使用してください。「ルート ブリッジの設定」を参照してください。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst instance_id |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst instance_id root グローバル コンフィギュレーション コマンドを使用します。
ポート プライオリティの設定
ループが発生する場合、MST は、フォワーディング ステートにするインターフェイスを選択するとき、ポート プライオリティを使用します。最初に選択されるインターフェイスには高いプライオリティ値(小さい数値)を割り当て、最後に選択されるインターフェイスには低いプライオリティ値(高い数値)を割り当てることができます。すべてのインターフェイスのプライオリティ値が同一である場合、MST はインターフェイス番号が最も低いインターフェイスをフォワーディング ステートにして、その他のインターフェイスをブロックします。
インターフェイスの MST ポート プライオリティを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel number }} |
(任意)設定するインターフェイスを指定します。インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
Router(config-if)# spanning-tree mst instance_id port-priority priority |
ポート プライオリティを設定します。 • instance_id には、単一インスタンスを指定したり、インスタンスの範囲をハイフンで区切って指定したり、一連のインスタンスをカンマで区切って指定したりすることができます。範囲は 0 ~ 4094 です。 • priority 値の範囲は 0 ~ 240 で、16 ずつ増加します。デフォルト値は 128 です。値が小さいほど、プライオリティが高くなります。 使用可能な値は、0、16、32、48、64、80、96、112、128、144、160、176、192、208、224、240 だけです。その他すべての値は拒否されます。 |
ステップ 4 |
Router(config-if)# end |
特権 EXEC モードに戻ります。 |
ステップ 5 |
Router# show spanning-tree mst interface interface_id or Router# show spanning-tree mst instance_id |
入力を確認します。 |
ステップ 6 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
(注) show spanning-tree mst interface interface_id 特権 EXEC コマンドでは、ポートがリンクアップ動作状態になっている場合に限って情報が表示されます。ポートがリンクアップ動作状態になっていない場合は、show running-config interface 特権 EXEC コマンドを使用して設定を確認できます。
インターフェイスをデフォルト設定に戻すには、 no spanning-tree mst instance_id port-priority インターフェイス コンフィギュレーション コマンドを使用します。
パス コストの設定
MST パス コストのデフォルト値は、インターフェイスのメディア速度から派生します。ループが発生する場合、MST は、フォワーディング ステートにするインターフェイスを選択するとき、コストを使用します。最初に選択されるインターフェイスには低いコスト値を割り当て、最後に選択されるインターフェイスには高いコスト値を割り当てることができます。すべてのインターフェイスのコスト値が同一である場合、MST はインターフェイス番号が最も低いインターフェイスをフォワーディング ステートにして、その他のインターフェイスをブロックします。
インターフェイスの MST コストを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel number }} |
(任意)設定するインターフェイスを指定します。インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
Router(config-if)# spanning-tree mst instance_id cost cost |
コストを設定します。 ループが発生する場合、MST は、フォワーディング ステートにするインターフェイスを選択するとき、パス コストを使用します。低いパス コストは高速送信を表します。 • instance_id には、単一インスタンスを指定したり、インスタンスの範囲をハイフンで区切って指定したり、一連のインスタンスをカンマで区切って指定したりすることができます。範囲は 0 ~ 4094 です。 • cost の範囲は 1 ~ 200000000 です。デフォルト値はインターフェイスのメディア速度から派生します。 |
ステップ 4 |
Router(config-if)# end |
特権 EXEC モードに戻ります。 |
ステップ 5 |
Router# show spanning-tree mst interface interface_id or Router# show spanning-tree mst instance_id |
入力を確認します。 |
ステップ 6 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
(注) show spanning-tree mst interface interface_id 特権 EXEC コマンドでは、リンクアップ動作状態になっているポートだけの情報が表示されます。ポートがリンクアップ動作状態になっていない場合は、show running-config 特権 EXEC コマンドを使用して設定を確認できます。
インターフェイスをデフォルト設定に戻すには、 no spanning-tree mst instance_id cost インターフェイス コンフィギュレーション コマンドを使用します。
スイッチのプライオリティの設定
スイッチ プライオリティを設定し、ルータがルート ブリッジとして選択される可能性を高くすることができます。
(注) このコマンドの使用には注意してください。スイッチ プライオリティを変更するには、ほとんどの状況で spanning-tree mst instance_id root primary および spanning-tree mst instance_id root secondary グローバル コンフィギュレーション コマンドを使用することを推奨します。
スイッチ プライオリティを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst instance_id priority priority |
(任意)スイッチ プライオリティを設定します。 • instance_id には、単一インスタンスを指定したり、インスタンスの範囲をハイフンで区切って指定したり、一連のインスタンスをカンマで区切って指定したりすることができます。範囲は 0 ~ 4094 です。 • priority の範囲は 0 ~ 61440 で、4096 ずつ増加します。デフォルトは 32768 です。数値を小さくすると、ルータがルート ブリッジとして選択される可能性が高くなります。 プライオリティ値は、0、4096、8192、12288、16384、20480、24576、28672、32768、36864、40960、45056、49152、53248、57344、および 61440 です。その他すべての値は拒否されます。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst instance_id |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst instance_id priority グローバル コンフィギュレーション コマンドを使用します。
hello タイムの設定
hello タイムを変更し、ルート ブリッジが設定メッセージを生成する時間を設定できます。
(注) このコマンドの使用には注意してください。hello タイムを修正するには、ほとんどの状況で spanning-tree mst instance_id root primary および spanning-tree mst instance_id root secondary グローバル コンフィギュレーション コマンドを使用することを推奨します。
すべての MSTI に hello タイムを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst hello-time seconds |
(任意)すべての MSTI に hello タイムを設定します。hello タイムは、ルート ブリッジが設定メッセージを生成する間隔です。このメッセージは、ルータが活動中であることを表します。 seconds に指定できる範囲は 1 ~ 10 です。デフォルトは 2 です。 |
ステップ 3 |
end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst hello-time グローバル コンフィギュレーション コマンドを使用します。
転送遅延時間の設定
すべての MSTI に転送遅延時間を設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst forward-time seconds |
(任意)すべての MSTI に転送時間を設定します。転送遅延は、ポートがスパニングツリー ラーニングおよびリスニング ステートからフォワーディング ステートに変更するまでに待機する秒数です。 seconds に指定できる範囲は 4 ~ 30 です。デフォルトは 15 です。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst forward-time グローバル コンフィギュレーション コマンドを使用します。
送信保留カウントの設定
すべての MSTI に送信保留カウントを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree transmit hold-count hold_count_value |
すべての MSTI に送信保留カウントを設定します。 hold_count_value の範囲は 1 ~ 20 で、デフォルトは 6 です。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree transmit hold-count グローバル コンフィギュレーション コマンドを使用します。
最大経過時間の設定
すべての MSTI に最大エージング タイムを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst max-age seconds |
(任意)すべての MSTI に最大エージング タイムを設定します。最大エージング タイムは、ルータが再設定を試す前にスパニングツリー設定メッセージを受信せずに待機する秒数です。 seconds に指定できる範囲は 6 ~ 40 です。デフォルトは 20 です。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst max-age グローバル コンフィギュレーション コマンドを使用します。
最大ホップ カウントの設定
すべての MSTI に最大ホップ カウントを設定するには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# spanning-tree mst max-hops hop_count |
(任意)BPDU が廃棄されて、ポート用に維持された情報が期限切れになるまでの、リージョン内のホップ数を指定します。 hop_count の範囲は 1 ~ 255、デフォルトは 20 です。 |
ステップ 3 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 4 |
Router# show spanning-tree mst |
入力を確認します。 |
ステップ 5 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ルータをデフォルト設定に戻すには、 no spanning-tree mst max-hops グローバル コンフィギュレーション コマンドを使用します。
高速移行を保証するリンク タイプの指定
ポイントツーポイント リンクでポート間を接続し、ローカル ポートが DP になると、RSTP は提案と合意のハンドシェークを使用して別のポートと高速移行をネゴシエーションし、「高速コンバージェンス」で説明したようなループがないトポロジーを保証します。
デフォルトの場合、リンク タイプはインターフェイスのデュプレックス モードから制御されます。全二重ポートはポイントツーポイント接続、半二重ポートは共有接続と見なされます。MST を実行しているリモート ルータの単一ポートに、半二重リンクを物理的にポイントツーポイントで接続した場合は、リンク タイプのデフォルト設定を無効にして、フォワーディング ステートへの高速移行をイネーブルにすることができます。
デフォルトのリンク タイプ設定を無効にするには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel number }} |
(任意)設定するインターフェイスを指定します。インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
Router(config)# spanning-tree link-type point-to-point |
ポートのリンク タイプがポイントツーポイントであることを指定します。 |
ステップ 4 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 5 |
Router# show spanning-tree mst interface interface_id |
入力を確認します。 |
ステップ 6 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ポートをデフォルト設定に戻すには、 no spanning-tree link-type インターフェイス コンフィギュレーション コマンドを使用します。
ネイバー タイプの指定
トポロジーには、準規格準拠デバイスおよび 802.1s 規格準拠デバイスの両方を含めることができます。デフォルトの場合、ポートは準規格デバイスを自動的に検出できますが、規格 BPDU および準規格 BPDU の両方を受信できます。デバイスとそのネイバーの間に不一致がある場合は、CIST だけがインターフェイスで動作します。
準規格 BPDU だけを送信するようにポートを設定できます。ポートが STP 互換モードになっていても、すべての show コマンドで準規格フラグが表示されます。
デフォルトのリンク タイプ設定を無効にするには、次の作業を行います。
|
|
|
ステップ 1 |
Router# configure terminal |
グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 |
Router(config)# interface {{ gigabitethernet 1 /port } | { port-channel number }} |
(任意)設定するインターフェイスを指定します。インターフェイス コンフィギュレーション モードを開始します。 |
ステップ 3 |
Router(config)# spanning-tree mst pre-standard |
ポートが準規格 BPDU だけを送信できることを指定します。 |
ステップ 4 |
Router(config)# end |
特権 EXEC モードに戻ります。 |
ステップ 5 |
Router# show spanning-tree mst interface interface_id |
入力を確認します。 |
ステップ 6 |
Router# copy running-config startup-config |
(任意)コンフィギュレーション ファイルに設定を保存します。 |
ポートをデフォルト設定に戻すには、 no spanning-tree mst prestandard インターフェイス コンフィギュレーション コマンドを使用します。
プロトコル移行プロセスの再開
MST を実行しているルータでは、組み込みプロトコル移行機能がサポートされます。これにより、802.1D ルータと相互動作できるようになります。このルータが、802.1D 設定の BPDU(プロトコル バージョンが 0 に設定された BPDU)を受信した場合、そのポートでは 802.1D BPDU だけが送信されます。MST ルータは、802.1D BPDU、異なるリージョンに対応付けられた MST BPDU(バージョン 3)、または RST BPDU(バージョン 2)を受信すると、ポートがリージョン境界にあることを検出できます。
ただし、ルータが 802.1D BPDU を受信していない場合は、自動的に MST モードに戻りません。これは 802.1D ルータが指定ルータでない限り、802.1D ルータがリンクから削除されたかどうかを検出できないためです。また、接続するルータがリージョンに加入していると、ルータはポートに境界の役割を割り当て続ける場合があります。
ルータでプロトコル移行プロセスを再開するには(強制的にネイバー ルータと再びネゴシエーションするには)、 clear spanning-tree detected-protocols 特権 EXEC コマンドを使用します。
特定のインターフェイスでプロトコル移行プロセスを再開するには、 clear spanning-tree detected-protocols interface interface_id 特権 EXEC コマンドを使用します。