助け合いフォーラム

Cisco

CCNA(200-301)
問題ID : 7493
問題を開く

上図4つのスイッチではRSTPが動作している。
各スイッチのポートと、役割の組み合わせが正しい選択肢はどれか(3つ選択)

正解

SwitchAのFa0/1はルートポート

SwitchBのFa0/2はルートポート

SwitchCのE0/1は指定ポート

解説

RSTPのポートでは、STPのブロッキングポートに、「代替ポート」または「バックアップポート」という役割を与えて、ルートポート(Root Port) , 指定ポート(Designated Port) , 代替ポート(Alternate Port) , バックアップポート(Backup Port) という4つの役割にわけています。

各ポートの役割を導き出すために、まずはルートブリッジを探します。
ルートブリッジは、ブリッジIDが最も小さい「SwitchD」が選出されます。
なお、ルートブリッジのポートは全て指定ポートになるので、この時点でSwitchDのE0/1とE0/2は指定ポートということがわかります。


次に、ルートポートを探します。
各スイッチでルートブリッジに最も近いポート(ルートブリッジに到達するためのパスコストが最小のポート)がルートポートに選出されるため、各ポートのルートパスコストを計算します。

SwitchBのFa0/1はSwitchC、SwitchAを経由するパスになるのでSwitchDからのBPDU受信時にそれぞれのスイッチでコストが加算され、ルートパスコストは219(100+100+19)となります。
SwitchBのFa0/2はルートブリッジ(SwitchD)に直結しているので、SwitchBが加算するコストがルートパスコストになります。SwitchBのFa0/2は対向のポートがEthernetなので、FastEthernetが動的にEthernetの10Mbpsに合わせて動作するため、加算するコストは100になります。

SwitchBはFa0/1とFa0/2のパスコストを比較し、パスコストの低いFa0/2をルートポートに選出します。

SwitchCのE0/1はSwitchB、SwitchAを経由するパスになるのでSwitchDからのBPDU受信時にそれぞれのスイッチでコストが加算され、ルートパスコストは219(100+19+100)となります。
SwitchCのE0/2はルートブリッジ(SwitchD)に直結しているので、SwitchCが加算するコスト100がルートパスコストになります。

SwitchCはE0/1とE0/2のパスコストを比較し、パスコストの低いE0/2をルートポートに選出します。

SwitchAのFa0/1はSwitchBを経由するパスになるのでSwitchDからのBPDU受信時にそれぞれのスイッチでコストが加算され、ルートパスコストは119(100+19)になります。
SwitchAのFa0/2はSwitchCを経由するパスになるのでSwitchDからのBPDU受信時にそれぞれのスイッチでコストが加算され、ルートパスコストは200(100+100)になります。SwitchAのFa0/2は対向のポートがEthernetなので、FastEthernetが動的にEthernetの10Mbpsに合わせて動作するため、加算するコストは100になります。

SwitchAはFa0/1とFa0/2のパスコストを比較し、パスコストの低いFa0/1をルートポートに選出します。


次に、指定ポートを探します。
各セグメントで、小さいルートパスコストを持つスイッチ側のポートが指定ポートになります。

SwitchAとSwitchBのセグメントでは、SwitchAが持つルートパスコストは「119」、SwitchBが持つルートパスコストは「100」なので、SwitchAより小さいルートパスコストを持つSwitchB側のポート(Fa0/1)が指定ポートになります。
SwitchAとSwitchCのセグメントでは、SwitchAが持つルートパスコストは「119」、SwitchCが持つルートパスコストは「100」なので、SwitchAより小さいルートパスコストを持つSwitchC側のポート(E0/1)が指定ポートになります。

そして、残ったSwitchAのFa0/2は代替ポートになります。


よって正解は
・SwitchAのFa0/1はルートポート
・SwitchBのFa0/2はルートポート
・SwitchCのE0/1は指定ポート
です。

その他の選択肢については、以下の通りです。
・SwitchAのFa0/2は指定ポート
SwitchCが持つルートパスコストの方が小さいので、指定ポートはSwitchC側になります。

・SwitchBのFa0/1はルートポート
Fa0/1側からルートブリッジに向かうと遠い(ルートパスコストが大きい)ので、Fa0/1はルートポートにはなりません。

・SwitchCのE0/2は指定ポート
SwitchCの中で、ルートブリッジに最も近い(ルートパスコストが小さい)ので、ルートポートになります。

・SwitchDのE0/1はルートポート
ルートブリッジのポートは全て指定ポートになります。

参考

【STP】(Spanning Tree Protocol)
STPとは、冗長構成のスイッチドネットワークでレイヤ2のループを防ぐために考え出された機能です。
STPでは、ブロッキングポートと呼ばれる(非指定ポートとも呼ばれる)ポートを選出します。ブロッキングポートは、データフレームを転送しないことによりループを防ぎます。


【主なSTP】
STPは大きく「STP」と「RSTP」と「MSTP」の3種類に分類されます。


【インスタンス】
スパニングツリーはインスタンス(トポロジー)の構成方法により「CST」と「PVST+」と「MST」の3種類に分類されます。
CSTは、VLANの数に関係なく単一のインスタンスを構成し、PVST+はVLANごとにインスタンスを構成し、MSTは複数のVLANを1つのグループにまとめてインスタンスを構成します。
例えば、下図のネットワークでVLANが1~4まで使われている場合、各スパニングツリーによってインスタンスの数が変わってきます。


・CST(Common Spanning Tree)
VLANの数に関係なく単一のインスタンスを構成します。

CSTではルートブリッジやブロッキングポートを分けるなどの負荷分散が出来ません。

・PVST+(Per VLAN Spanning Tree Plus)
VLANごとにインスタンスを構成するため、負荷分散などの設計を柔軟に行えます。

ただしVLANの数だけインスタンスが増えるため、VLANの数が多くなるとスイッチのCPUや帯域にかかる負荷が高くなってしまいます。
CiscoスイッチでPVST+を実装する場合は、スパニングツリーモードを「pvst」または「rapid-pvst」にします。

・MST(Multiple Spanning Tree)
複数のVLANを1つのグループにまとめてインスタンスを構成するため、負荷分散などの設計を柔軟に行えます。

CiscoスイッチでMSTを実装する場合は、スパニングツリーモードを「mst」にします。

【コマンド構文:スパニングツリーモードの設定】
(config)#spanning-tree mode {pvst | rapid-pvst | mst} 
pvst・・・PVST+(STP)を有効にする
rapid-pvst・・・Rapid PVST+(RSTP)を有効にする
mst・・・MSTを有効にする(MSTはRSTP上で動作するため、RSTPも有効になる)

【STPの各役割の選出】



【STPの便利な法則】
「ルートブリッジのポートは全てDP」 「RPの対向ポートは必ずDP」
※リピータハブを利用する場合や、ケーブルの両端を自身のスイッチに接続するような特殊な場合を除く

【STPの基本用語】
ブリッジID(BID):ブリッジプライオリティ(デフォルト32768)+MACアドレス
ポートID:ポートプライオリティ(デフォルト128)+ポート番号
ポートパスコスト:ポートが動作している速度によって決められる値(速度が速いほどコストが低い)
ルートパスコスト:ルートブリッジまでのポートパスコストの総和(ルートブリッジからのBPDU受信時にルートパスコストに加算される)
BPDU:スパニングツリープロトコルを実装しているスイッチ間で情報を交換するために利用するフレーム(ルートブリッジのIDやルートブリッジ等が含まれている)
セグメント:LANセグメント(コリジョンドメイン)

【スパニングツリーの情報の確認】
スパニングツリーの情報は以下のコマンドで表示できます。
#show spanning-tree [vlan {VLAN番号}]
VLAN・・・指定したVLANで構築しているスパニングツリーの情報を表示


【ブリッジプライオリティ】
ブリッジプライオリティはスイッチの優先度を表す値です。
ルートブリッジの選出やポートの役割を選出する際に用いられ、プライオリティ値の小さいスイッチが優先されます。

【コマンド構文:ブリッジプライオリティの設定】
(config)#spanning-tree vlan {VLAN番号} {priority {プライオリティ値} | root primary | root secondary}
VLAN番号・・・プライオリティ値を変更したいVLAN番号(VLAN-ID)を指定する
priority・・・プライオリティ値を指定する(0~61440から4096の倍数で指定。デフォルトは32768)
root primary・・・現在のルートブリッジのプライオリティより小さい値にする(最小は4096)
root secondary・・・プライオリティを「28672」にする

【ポートパスコスト】

ポートパスコストは各ポートのコストを表す値で、ルートパスコストを算出する際に用いられます。
ポートパスコストは上表の通りポートが動作している速度によって自動的に決定されますが、手動で設定することもできます。手動で設定したポートパスコストは他のスイッチに伝搬されることはなく、設定したスイッチ内部でのみ有効になります。

【ショートパスコストとロングパスコスト】
パスコストには、ショートパスコストとロングパスコストという2種類の方式があります
ショートパスコストはSTPとRSTPのデフォルトのパスコストで、16ビットの範囲(1から65535の範囲)から指定できる方式です。
ロングパスコストはMSTモードのデフォルトのパスコストで、32ビットの範囲(1から200,000,000の範囲)から指定できる方式です。

【コマンド構文:パスコスト方式の変更】
(config)#spanning-tree pathcost method {short | long}
short・・・ショートパスコスト方式に変更する(STPとRSTPのデフォルト)
long・・・ロングパスコスト方式に変更する(MSTのデフォルト)

【コマンド構文:ポートパスコストの設定】
(config-if)#spanning-tree [ vlan {VLAN番号} ] cost {コスト}
vlan・・・VLAN単位でコストを設定する場合に入力する(トランクポートで使用するオプション)
VLAN番号・・・コストを設定するVLAN番号を指定する
コスト・・・コストを指定する(ショートパスコストを使用している場合は 1~65535、ロングパスコストを使用している場合は 1~200000000から指定)

【STPタイマー】


【STPのポート状態と収束】

障害が発生した場合は、ブロッキング状態になっているポートの状態は「ブロッキング→リスニング→ラーニング→フォワーディング」という順番で遷移します。
間接障害が発生した場合は、障害が発生したと判断するまで20秒(Max Age)待つので、収束までに 20秒(Max Age)+15秒(Forward Delay)+15秒(Forward Delay)=50秒かかります。
直接障害が発生した場合は、障害が発生したことがすぐにわかるので20秒(Max Age)待たないため、 15秒(Forward Delay)+15秒(Forward Delay)=30秒で収束します。

【BPDU(Bridge Protocol Data Unit)に含まれる主な情報】
・ルートID(ルートブリッジのブリッジID)
・ブリッジID(自身のブリッジID)
・パスコスト(ルートブリッジに至るまでのルートパスコスト)
・ポートID(自身のポートID)
・Helloタイム(BPDUの送信間隔)

【ブリッジIDの形式】
ブリッジIDはSTPのルートブリッジを選出するために用いられるIDで、通常はブリッジプライオリティとMACアドレスで構成されます。
しかし、CiscoのSTP(PVST+)はVLANごとに動作するので、ブリッジプライオリティとMACアドレスだけではVLANごとのSTPを識別できません。
この問題を解決するため、PVST+では拡張システムIDを使用します。(Rapid PVST+も同じ)


拡張システムIDにはVLAN IDと同じ値が入ります。
例えば、MACアドレスがXXXX.XXXX.XXXXの機器で、全てのVLANのブリッジプライオリティがデフォルトの32768のままの場合、VLAN1のブリッジIDは「32769 XXXX.XXXX.XXXX」、VLAN2のブリッジIDは「32770 XXXX.XXXX.XXXX」、VLAN10のブリッジIDは「32778 XXXX.XXXX.XXXX」となります。つまり、プライオリティ(32768)にVLAN IDをプラスしています。これによりVLANごとにブリッジIDを識別できるようになっています。

なお、拡張システムIDを使用する場合、「ブリッジIDの形式」の図にあるように、通常16ビットあるプライオリティのうち12ビットは拡張システムID(VLAN ID)で使用するので、実際に指定できるプライオリティは上位4ビットの部分のみです。従って、プライオリティは4096の倍数で指定することになります。
(参考)16ビットまでの2の累乗の表


【RSTP】
RSTPはSTPの後継プロトコルで、STPにいくつかの機能を追加することで収束するまでの時間を短縮しています。
用語や基本的な動作などはSTPと同じため、RSTPはSTPと互換性があります。

【STPとRSTPの主な違い】
STPとRSTPの主な違いは以下の通りです。
・ポートの状態(RSTPはディスカーディングを追加)
・ポートの役割(RSTPは代替ポートとバックアップポートを追加)
・収束までの時間(STPは最大50秒、RSTPは1~3秒)

【STPとRSTPのポート状態の比較】

RSTPのポートの状態は Discarding,Learning,Forwardingの3種類で、STPに比べてDiscardingが新たに定義されました。(逆にSTPのDisabledとBlockingとListeningはDiscardingに統合されて無くなりました。)

【RSTPポートの役割のまとめ】


[代替ポートとバックアップポート]
代替ポートとバックアップポートはSTPのブロッキングポート(ループを防ぐためのポート)に相当するポートです。
代替ポートはルートポートの代替になるので、ルートポートがダウンしたときは即座にルートポートの代わりとして動作します。
バックアップポートは指定ポートのバックアップになるので、指定ポートがダウンしたときは即座に指定ポートの代わりとして動作します。(ハブを利用したループ構成時に動作)

【RSTPポートの選出】
選出も基本的にSTPと同じです。
1. 最小ブリッジIDを持つスイッチが「ルートブリッジ」になる
2. スイッチの中で最小ルートパスコストを持つポートが「ルートポート」になる
3. ルートポートのルートパスコストを対向スイッチと比較して最小ルートパスコストを持つスイッチのポートが「指定ポート」になる
4.指定ポート以外のポートが「代替ポート」になる

【シェアードリンクとポイントツーポイントリンク】
RSTPは、スイッチ間の接続を「シェアードリンク」と「ポイントツーポイントリンク」の2つに分類しています。
シェアードリンクに分類されるのは、スイッチ間にハブが入っている接続です。また、スイッチのポートが半二重に設定されている場合もシェアードリンクに分類されます。

シェアードリンクの場合はSTPタイマーを使った収束を行います。

ポイントツーポイントリンクに分類されるのは、スイッチのポートが全二重に設定され、スイッチが1対1で接続されている場合です。

ポイントツーポイントリンクの場合はSTPタイマーに依存しない高速収束を行います。

上に戻る

指定ポート選出時のルートパスコスト

公開日 2023/05/21

SwitchAとSwitchC間のセグメント解説で「Switchが持つ最小ルートパスコストは~」とあります。
今までSwitchAのFa0/2とSwitchCのE0/1で一つのセグメントだと考えていて、
指定ポートは各セグメントで選出されるのだからAのFa0/2が200、CのE0/1が219でA側を指定ポートと選択したんですが・・・。
セグメントごとに選出でも、選出方法としてはSwitch単位で考えるんでしょうか?
もしくは、Switchのポートが違えばセグメントが違うという考えが間違っていますか?

2023/05/21 21:55

指定ポートは各セグメントで選出されるのだからAのFa0/2が200、CのE0/1が219でA側を指定ポートと選択したんですが・・・。

選択するまでの全体の流れが気になるのですが、解説の以下の部分で各スイッチごとのルートパスコストが記載されているのは確認されてますか?

SwitchAとSwitchCのセグメントでは、SwitchAが持つルートパスコストは「119」、SwitchCが持つルートパスコストは「100」なので、SwitchAより小さいルートパスコストを持つSwitchC側のポート(E0/1)が指定ポートになります。

ポート単位、セグメント単位で見る前に「スイッチのルートパスコスト」の観点でどちらが上か(RP, DPになるポートを持つか)が決まってくるので、スイッチ単位での判断をしてみて、それでどうなるか確認してはどうでしょうか?


コメント

s snooow

2023/05/22 17:56

回答ありがとうございます。 「スイッチが持つルートパスコスト」という意味をもう一度自分で調べてみましたが、「指定ポートは、最も小さいルートパスコストのRPを持つスイッチ側のポートが選出」なんですね・・・ RP、DPの問題が苦手で頭がごちゃごちゃしていました。 知識に抜けているところがないか確認しながら問題演習に取り組みたいと思います。 アドバイスいただけて助かりました!

この返信に対して
コメントを記入できます

この投稿に対して返信しませんか?