[index] CentreCOM 8948XL コマンドリファレンス 2.9

# スイッチング/マルチプルスパニングツリープロトコル（MSTP）

      - 概要
       - MSTインスタンス
       - MSTリージョン
        - MSTインスタンスとVLANの関連付けについて
       - CIST
      - 基本設定
      - マルチプルスパニングツリーパラメーターの設定変更

マルチプルスパニングツリープロトコル（MSTP）は、既存のスパニングツリープロトコル（STP/RSTP）をもとに、VLAN環境向けの機能拡張を施したレイヤー2のループ防止・冗長化プロトコルです。
この章では、MSTPの概要と使用方法について説明します。STPとRSTPについては、「スイッチング」/「スパニングツリープロトコル（STP/RSTP）」をご覧ください。

> Note - 本製品のマルチプルスパニングツリープロトコルは、IEEE802.1s Standardに準拠しています。IEEE802.1sドラフトバージョンに準拠した装置とは接続できません。

> Note - 既存のスパニングツリープロトコル（STP/RSTP）とマルチプルスパニングツリープロトコル（MSTP）を同時に有効化することはできません。なお、MSTPは、既存のスパニングツリープロトコル（STP/RSTP）を使用している機器との相互運用が可能です。

> Note - マルチプルスパニングツリープロトコル（MSTP）とイーサネットリングプロテクション（EPSR）を同時に使用することはできません。

概要

MSTPは、ツリー状の論理経路（スパニングツリー）を自動的に形成してループを防止する点において、RSTPと同様の動作をします。
ただし、MSTPでは、複数のVLANをMSTインスタンスと呼ばれるグループにまとめ、MSTインスタンスごとにツリーを形成します。この特長をうまく利用すれば、タグVLANを利用したスイッチ間接続などにおいて、ネットワーク負荷を分散させることができます。また、VLANごとにツリーを形成する場合に比べて、VLAN数の増加によるCPUやネットワーク負荷の上昇を抑えることができます。
さらに、MSTPでは、ネットワーク上のブリッジ（スイッチ）をMSTリージョンと呼ばれるグループに分割し、MSTリージョンごとに前述したMSTPの動作を行わせることができます。これは、大規模なネットワーク環境において、ネットワークの設計や管理を容易にする効果があります。

MSTインスタンス

MSTPでは、複数のVLANをまとめたものをMSTインスタンス（MSTI）と呼び、MSTインスタンスごとにスパニングツリーを形成します。MSTインスタンスは、1〜4094のインスタンスIDで識別します。

MSTインスタンスのルートブリッジは「リージョナルルート」と呼ばれ、MSTインスタンスにおけるブリッジプライオリティーとMACアドレスによって決定されます。
ブリッジプライオリティーはMSTインスタンスごとに設定できるため、MSTインスタンス「10」ではスイッチAがルートブリッジ、MSTインスタンス「20」ではスイッチBがルートブリッジ、といった構成を組むことができます。また、ポートプライオリティーもMSTインスタンスごとに設定できるため、MSTインスタンスごとに最適なポートをルートポートにすることができます。これらの仕組みはトラフィックの負荷分散に有効です。
本製品のMSTインスタンスの仕様は、次のとおりです。

- 最大64個のMSTインスタンスを作成可能（これらとは別に、デフォルトでID=0の特殊なインスタンス（CIST）が存在する）
- MSTインスタンスの範囲は、後述するMSTリージョン内に限定される（インスタンスIDもMSTリージョン内でのみ意味を持つ）
- 1つのMSTインスタンスに関連付けるVLAN数に制限なし
- 1つのVLANは、1つのMSTインスタンス（またはCIST）にのみ関連付けが可能

MSTリージョン

MSTPでは、ネットワーク上のブリッジ（スイッチ）をMSTリージョンと呼ばれるグループに分割することができます。MSTリージョンは、他のリージョンからは1台の仮想ブリッジとして見えるため、MSTリージョン内のトポロジーチェンジはMSTリージョン内で完結し、リージョン外（ネットワーク全体）には影響を与えません。
すなわち、MSTPの動作は、次の2つのレベルに分かれているということになります。

- MSTリージョン内での動作
  MSTリージョン内のMSTインスタンスごとにツリーを形成。あるVLANに所属するパケットは、そのVLANが関連付けられているMSTインスタンスのツリーにしたがって転送される。
- MSTリージョン間での動作
  MSTリージョンを仮想ブリッジとみなしてネットワーク全体にわたるツリーを形成。個々のリージョン内のトポロジーには関知しない。

本製品のMSTリージョンの仕様は、次のとおりです。

- 同一のMSTリージョンに所属する装置では、以下の設定を同じにする。
  - MSTリージョン名
  - MSTリージョンのリビジョン
  - MSTインスタンスとVLANの関連付け（後述）
- 1つのMSTリージョンに所属するブリッジ数に制限なし
- 1台のブリッジは、1つのMSTリージョンにのみ所属が可能

MSTP対応ブリッジは、あるポートにおいて自身と異なるMSTリージョン設定を持ったMSTP BPDUを受信すると、該当ポートがMSTリージョンの境界に位置するものと認識します。
また、旧バージョンのBPDU（STP BPDU、RSTP BPDU）を受信した場合も、受信ポートがMSTリージョンの境界に位置するものと認識します。この場合、STP/RSTPブリッジ（MSTP非対応のブリッジ）は、1つのMSTリージョンとみなします。

#### MSTインスタンスとVLANの関連付けについて

本製品では、同一のMSTリージョンに所属させたいすべての装置において、以下の設定内容を同じにしておく必要があります。

- MSTリージョン名
- MSTリージョンのリビジョン
- MSTインスタンスとVLANの関連付け（後述）

いずれか1つでも設定が他の装置と異なっていると、該当装置は同一リージョン所属とみなされず、結果的に意図した動作をしない可能性があるためご注意ください。

> Note - これらの設定が等しいことを確認するには、SHOW MSTPコマンドをCONFIGIDオプション付きで実行し、出力される情報がすべての装置で等しいことを確認してください。「MSTインスタンスとVLANの関連付け」に関しては、SHOW MSTPコマンドのTABLEオプションで確認することもできます。

ここでは、「MSTインスタンスとVLANの関連付け」について、補足説明します。
例として、負荷分散のため本製品4台（スイッチA〜D）で次の構成を組むと仮定とします。「V10-M10」のような表記は、MSTインスタンス10にVLAN 10が関連付けられていることを表しています。

ここでは、スイッチA〜Dを同一MSTリージョンにするため、MSTリージョン名とリビジョンをすべてのスイッチで同じに設定します。しかしそれだけでは、次表のように、各スイッチで「MSTインスタンスとVLANの関連付け」が異なっているため、実際には「スイッチAとB」、「スイッチC」、「スイッチD」の3つのリージョンに分割されてしまいます。これでは、意図したとおりに負荷分散が行われません。

表 1：MSTインスタンスとVLANの関連付けが異なる例
装置名 | 関連付け設定
スイッチA | V10-M10 | V20-M20 | V30-M30 | V40-M40
スイッチB | V10-M10 | V20-M20 | V30-M30 | V40-M40
スイッチC | V10-M10 | V20-M20 | - | -
スイッチD | - | - | V30-M30 | V40-M40

意図どおりの動作をさせるには、次の追加設定が必要になります。

- スイッチC上でVLAN 30、40およびMSTインスタンス30、40を定義し、VLAN 30とMSTインスタンス 30、VLAN 40とMSTインスタンス 40を関連付ける。
- スイッチD上でVLAN 10、20およびMSTインスタンス10、20を定義し、VLAN 10とMSTインスタンス 10、VLAN 20とMSTインスタンス 20を関連付ける。

これにより、各スイッチの「MSTインスタンスとVLANの関連付け」設定が次のように同じになり、すべてのスイッチが同一リージョンとみなされるようになります。

表 2：MSTインスタンスとVLANの関連付けが同一の例
装置名 | 関連付け設定
スイッチA | V10-M10 | V20-M20 | V30-M30 | V40-M40
スイッチB | V10-M10 | V20-M20 | V30-M30 | V40-M40
スイッチC | V10-M10 | V20-M20 | V30-M30 | V40-M40
スイッチD | V10-M10 | V20-M20 | V30-M30 | V40-M40

CIST

MSTPでは、デフォルトでID=0の特殊なインスタンスが存在します。これはCIST（Common and Internal Spanning Tree）と呼ばれ、MSTリージョン内のすべてのブリッジを接続し、さらには、MSTリージョン同士を接続して、ネットワーク全体をカバーするスパニングツリーを形成します。
MSTリージョン内におけるCISTツリーのルートブリッジを「CISTリージョナルルート」、ネットワーク全体のルートブリッジ（CISTのルートブリッジ）を「CISTルート」と呼びます。これらはCISTにおけるブリッジプライオリティーとMACアドレスによって決定されます。
デフォルトでは、すべてのVLANがCISTに関連付けられています。VLANをMSTインスタンスに関連付けると、そのVLANは自動的にCISTとの関連付けを解除されます。

基本設定

本製品で、マルチプルスパニングツリープロトコルを使用するための基本設定について説明します。ここでは、次のような構成を例に各スイッチの設定方法を説明します。

この例では、説明のため構成をシンプルにしていますので、各スイッチの設定はほとんど同じで、各MSTインスタンスのルートブリッジ（リージョナルルート）を決めるブリッジプライオリティーの設定だけが異なっています。
スイッチAの設定

1. VLANの設定を行います。

   `CREATE VLAN=A VID=10 ↓
   CREATE VLAN=B VID=20 ↓
   ADD VLAN=A PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=B PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=A PORT=3 ↓
   ADD VLAN=B PORT=4 ↓
   `
2. MSTリージョンの識別情報を設定します。
   この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名（CONFIGNAME）とリビジョン（REVISIONLEVEL）をすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを0とします。さらに、続く手順3〜4の設定内容（MSTインスタンスとVLANの関連付け）もすべてのスイッチで同じになるようにします。

   `SET MSTP CONFIGNAME=Test REVISIONLEVEL=0 ↓
   `
3. MSTインスタンスを作成します。

   `CREATE MSTP MSTI=10 ↓
   CREATE MSTP MSTI=20 ↓
   `
4. MSTインスタンスにVLANを割り当てます。

   `ADD MSTP MSTI=10 VLAN=10 ↓
   ADD MSTP MSTI=20 VLAN=20 ↓
   `
5. 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチAはルートブリッジにするつもりがないので、どちらのMSTインスタンスにおいても他のスイッチより低く（値が大きく）なるよう、デフォルト値の32768のままで運用します（以下の2コマンドは実際には不要です）。

   `SET MSTP MSTI=10 PRIORITY=32768 ↓
   SET MSTP MSTI=20 PRIORITY=32768 ↓
   `
6. マルチプルスパニングツリープロトコルを有効にします。

   `ENABLE MSTP ↓
   `

スイッチBの設定（MSTインスタンス「10」のルートブリッジ」

1. VLANの設定を行います。

   `CREATE VLAN=A VID=10 ↓
   CREATE VLAN=B VID=20 ↓
   ADD VLAN=A PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=B PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=A PORT=3 ↓
   ADD VLAN=B PORT=4 ↓
   `
2. MSTリージョンの識別情報を設定します。
   この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名（CONFIGNAME）とリビジョン（REVISIONLEVEL）をすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを0とします。さらに、続く手順3〜4の設定内容（MSTインスタンスとVLANの関連付け）もすべてのスイッチで同じになるようにします。

   `SET MSTP CONFIGNAME=Test REVISIONLEVEL=0 ↓
   `
3. MSTインスタンスを作成します。

   `CREATE MSTP MSTI=10 ↓
   CREATE MSTP MSTI=20 ↓
   `
4. MSTインスタンスにVLANを割り当てます。

   `ADD MSTP MSTI=10 VLAN=10 ↓
   ADD MSTP MSTI=20 VLAN=20 ↓
   `
5. 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチBはMSTインスタンス「10」のルートブリッジにするので、MSTインスタンス「10」におけるブリッジプライオリティーを他のスイッチより高く（値を小さく）設定します。

   `SET MSTP MSTI=10 PRIORITY=4096 ↓
   SET MSTP MSTI=20 PRIORITY=8192 ↓
   `
6. マルチプルスパニングツリープロトコルを有効にします。

   `ENABLE MSTP ↓
   `

スイッチCの設定（MSTインスタンス「20」のルートブリッジ」

1. VLANの設定を行います。

   `CREATE VLAN=A VID=10 ↓
   CREATE VLAN=B VID=20 ↓
   ADD VLAN=A PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=B PORT=1,2 FRAME=TAGGED ↓
   ADD VLAN=A PORT=3 ↓
   ADD VLAN=B PORT=4 ↓
   `
2. MSTリージョンの識別情報を設定します。
   この例では、すべてのスイッチを同一のMSTリージョンに所属させるので、リージョン名（CONFIGNAME）とリビジョン（REVISIONLEVEL）をすべてのスイッチで同じ値に設定します。ここではリージョン名を「Test」、リビジョンを0とします。さらに、続く手順3〜4の設定内容（MSTインスタンスとVLANの関連付け）もすべてのスイッチで同じになるようにします。

   `SET MSTP CONFIGNAME=Test REVISIONLEVEL=0 ↓
   `
3. MSTインスタンスを作成します。

   `CREATE MSTP MSTI=10 ↓
   CREATE MSTP MSTI=20 ↓
   `
4. MSTインスタンスにVLANを割り当てます。

   `ADD MSTP MSTI=10 VLAN=10 ↓
   ADD MSTP MSTI=20 VLAN=20 ↓
   `
5. 各MSTインスタンスにおけるブリッジプライオリティーを設定します。スイッチCはMSTインスタンス「20」のルートブリッジにするので、MSTインスタンス「20」におけるブリッジプライオリティーを他のスイッチより高く（値を小さく）設定します。

   `SET MSTP MSTI=10 PRIORITY=8192 ↓
   SET MSTP MSTI=20 PRIORITY=4096 ↓
   `
6. マルチプルスパニングツリープロトコルを有効にします。

   `ENABLE MSTP ↓
   `

以上で設定は完了です。
■ マルチプルスパニングツリープロトコルを無効にするには、DISABLE MSTPコマンドを使います。

`DISABLE MSTP ↓`

■ MSTインスタンスとVLANの関連付けを解除するには、DELETE MSTP MSTI VLANコマンドを使います。

`DELETE MSTP MSTI=10 VLAN=10 ↓`

■ MSTインスタンスを削除するには、DESTROY MSTP MSTIコマンドを使います。

`DESTROY MSTP MSTI=10 ↓`

> Note - VLANが関連付けられているMSTインスタンスは削除できません。あらかじめDELETE MSTP MSTI VLANコマンドを実行して、所属VLANをすべて削除しておいてください。

■ マルチプルスパニングツリープロトコルの全般的な設定を確認するには、SHOW MSTPコマンドを使います。MSTリージョンの識別情報を確認するときはCONFIGIDオプションを、MSTインスタンスとVLANの関連付けを確認したいときはTABLEオプションを使用します。

`SHOW MSTP ↓
SHOW MSTP CONFIGID ↓
SHOW MSTP TABLE ↓
`

> Note - CONFIGIDオプションで表示される情報が等しい装置は、同一のMSTリージョンに所属していると見なされます。

■ MSTインスタンスに関する情報を確認するには、SHOW MSTP MSTIコマンドを使います。

`SHOW MSTP MSTI ↓
SHOW MSTP MSTI=10 ↓
`

■ MSTインスタンスにおけるポートの設定情報を確認するには、SHOW MSTP MSTI PORTコマンドを使います。

`SHOW MSTP MSTI=10 PORT=2 ↓
`

■ CISTに関する設定を確認するには、SHOW MSTPコマンドで、CISTを指定します。

`SHOW MSTP CIST ↓`

■ CISTにおけるポートの設定情報を確認するには、SHOW MSTP CIST PORTコマンドを使います。

`SHOW MSTP CIST PORT=4 ↓
`

マルチプルスパニングツリーパラメーターの設定変更

設定パラメーターの変更方法など、より詳細な設定について解説します。
■ マルチプルスパニングツリーパラメーター（各種タイマーやリージョンの設定）を変更するには、SET MSTPコマンドを使います。変更できるパラメーターは次のとおりです。

表 3
パラメーター | 説明
CONFIGNAME | MSTリージョン名。同一リージョンに所属させたい装置には、同じ名前を指定する。デフォルトは製品のMACアドレス（xx-xx-xx-xx-xx-xxの型式）。
REVISIONLEVEL | MSTリージョン設定のリビジョン。同一リージョンに所属させたい装置には、同じ数値を指定する。デフォルトは0。
MAXHOPS | 最大ホップ数。BPDUがMSTPブリッジを抜けるごとにカウントダウンされるされる、BPDUの寿命カウンター。有効範囲は1〜40。デフォルトは20。
MAXAGE | 最大エージタイム。ルートブリッジからBPDUが届かなくなったことを認識するまでの時間（秒）。この時間内にBPDUを受信できなかった場合、各ブリッジはスパニングツリーの再構成を開始する。2×（HELLOTIME + 1) 以上、かつ、2× (FORWARDDELAY - 1) 以下でなくてはならない。有効範囲は6〜40秒。デフォルトは20秒。
HELLOTIME | ハロータイム。ルートブリッジがBPDU（Bridge Protocol Data Unit）を送信する間隔（秒）。有効範囲は1〜10秒。デフォルトは2秒。
FORWARDDELAY | フォワードディレイタイム。ネットワーク構成の変更後に、ルートブリッジ内のポートがディスカーディングからラーニング、ラーニングからフォワーディング状態に遷移するまでの最大時間（秒）を示す。有効範囲は4〜30秒。デフォルトは15秒。
PROTOCOLVERSION | MSTPの動作モード。MSTP（MSTP BPDUを使う）、RSP（RSTP BPDUを使う）、STP（STP BPDUを使う）から選択する。デフォルトはMSTP。
STATICVLANS | スパニングツリーのトポロジー計算時、MSTインスタンスに所属しているVLANのポート構成を考慮するかどうか。YESを指定した場合は、VLANのポート構成を考慮して計算を行う（MSTインスタンスに所属しているVLANのメンバーポートだけを利用してトポロジーを計算する）。NOを指定した場合は、VLANのポート構成を考慮せずに通常のMSTPの方法で計算を行う（MSTインスタンスに所属しているVLANのメンバーポートだけでなく、すべての物理ポートを使用して計算を行う）。ブリッジ（スイッチ）間を接続しているすべてのポートが同じVLAN設定であるならOFFでよいが、そうでない場合は、特定のMSTインスタンスにおいて、所属VLANのメンバーでないポートがルートポートになる可能性がある。このようなときはONを指定するとよい（OFFのままでも、メンバーポートのポートプライオリティーやポートパスコストを調整すれば同じ効果を得られる）。デフォルトはOFF。

■ MSTインスタンスにおけるブリッジプライオリティーを変更するには、SET MSTP MSTIコマンドを使います。設定できる値の範囲は0〜65535ですが、実際に使用される値は4096の倍数に丸められます（指定値が4096の倍数でない場合、指定値よりも小さい直近の倍数が使われます）。デフォルトは32768です。

`SET MSTP MSTI=10 PRIORITY=8192 ↓
`

■ CISTにおけるブリッジプライオリティーを変更するには、SET MSTP CISTコマンドを使います。設定できる値の範囲は0〜65535ですが、実際に使用される値は4096の倍数に丸められます（指定値が4096の倍数でない場合、指定値よりも小さい直近の倍数が使われます）。デフォルトは32768です。

`SET MSTP CIST PRIORITY=4096 ↓
`

■ MSTインスタンスにおけるスイッチポートのパラメーターを変更するには、SET MSTP MSTI PORTコマンドを使います。変更できるパラメーターは次のとおりです。

表 4
パラメーター | 説明
PRIORITY | MSTインスタンス内でのトポロジー形成で使用されるポートプライオリティー。小さいほど優先度が高く、ルートポートになる可能性が高くなる。設定できる値の範囲は0〜255だが、実際に使用される値は16の倍数に丸められる（指定値が16の倍数でない場合、指定値よりも小さい直近の倍数が使われる）。デフォルトは128。
PATHCOST | リージョナルルート（MSTインスタンスのルートブリッジ）までのパスに対するポート通過コスト。有効範囲は1〜200000000。通信速度ごとのデフォルト値と推奨範囲は別表を参照のこと。

表 5：パスコストの推奨範囲とデフォルト値
通信速度 | 推奨範囲 | デフォルト値
10Mbps | 200000〜2000000 | 2000000
100Mbps | 20000〜200000 | 200000
1000Mbps | 2000〜20000 | 20000

■ CISTにおけるスイッチポートのパラメーターを変更するには、SET MSTP CIST PORTコマンドを使います。変更できるパラメーターは次のとおりです。

表 6
パラメーター | 説明
PRIORITY | CIST内のトポロジー形成で使用されるポートプライオリティー。小さいほど優先度が高く、ルートポートになる可能性が高くなる。設定できる値の範囲は0〜255だが、実際に使用される値は16の倍数に丸められる（指定値が16の倍数でない場合、指定値よりも小さい直近の倍数が使われる）。デフォルトは128。
INTPATHCOST | CISTリージョナルルート（MSTリージョン内におけるCISTツリーのルートブリッジ）までのパスに対するポート通過コスト。有効範囲は1〜200000000。通信速度ごとのデフォルト値と推奨範囲は別表を参照のこと。なお、一度値を設定したあとでデフォルト状態に戻すときはキーワードDEFAULTを指定する
EXTPATHCOST | CISTルートブリッジが所属するリージョンまでのパスに対するポート通過コスト。有効範囲は1〜200000000。通信速度ごとのデフォルト値と推奨範囲は別表を参照のこと。なお、一度値を設定したあとでデフォルト状態に戻すときはキーワードDEFAULTを指定する
EDGEPORT | 該当ポートがエッジポートかどうかを指定する。エッジポートとは、他のブリッジが存在しない末端（エッジ）のLANに接続されているポートのこと。ただし、EDGEPORT=YESを指定した場合でも、同ポートでMSTP BPDUを受信した場合はエッジポートとしては扱われなくなる。デフォルトはNO。
POINTTOPOINT | 該当ポートが他のブリッジとポイントツーポイントで接続されているかどうかを指定する。AUTOを指定した場合は、本製品が自動判別する。デフォルトはAUTO。

表 7：パスコストの推奨範囲とデフォルト値
通信速度 | 推奨範囲 | デフォルト値
10Mbps | 200000〜2000000 | 2000000
100Mbps | 20000〜200000 | 200000
1000Mbps | 2000〜20000 | 20000

■ 他のブリッジが存在していないことが確かなポート（PCなどの端末接続用のポート）は、エッジポートに設定すると無駄な処理を減らすことができます。エッジポートの設定は、SET MSTP CIST PORTコマンドのEDGEPORTパラメーターで行います。

`SET MSTP CIST PORT=12-24 EDGEPORT=YES ↓
`

■ マルチプルスパニングツリープロトコルの設定をすべて消去するには、PURGE MSTPコマンドを使います。パラメーターはすべてデフォルトに戻ります。

`PURGE MSTP ↓`

> Note - ランタイムメモリー上にあるマルチプルスパニングツリープロトコル関連の設定がすべて削除されるため、運用中のシステムで本コマンドを実行するときは十分に注意してください。

(C) 2004 - 2008 アライドテレシスホールディングス株式会社

PN: J613-M0021-12 Rev.L