30 Minutes NetWorking
No.SW14

30Minutes NetWorking

BCMSN

第14回STP(6) UpLinkFastとBackboneFast

■ UpLinkFast

スーパーインター博士

STPの話がまだつづいているわけだが。
ネット君、STPが有効になっている場合、再計算にはどれだけ時間がかかるのだったかね?

ハイパーネット助手

はい? え〜っと、blockからListeningに20秒、ListeningからLearningが15秒、LearningからFoward(Block)が15秒で、計50秒です。

ポート遷移

[FigureSW11-05:ポート遷移]

スーパーインター博士

そうだったな。で、だが50秒は長すぎるというのがSTPについてまわる宿命なのだよ。

ハイパーネット助手

宿命ですか。

スーパーインター博士

うむ、宿命と書いて「さだめ」と読む
まぁ、ともかくだ。さすがに50秒は長い。

ハイパーネット助手

確かにそうですが。PortFastなんか使うと早くなりますよね。

スーパーインター博士

PortFastはあくまでそのスイッチ内でのワークステーションの接続のみだ。
他のスイッチとの接続にはどうしても時間がかかってしまう。

ハイパーネット助手

う〜ん。

スーパーインター博士

なので、コレを早くしようといくつかの技術が導入されている。そのうち2つを今回説明しよう。
まず、UpLinkFast

ハイパーネット助手

あっぷりんくふぁすと?
アップなリンクが早い?

スーパーインター博士

いや、アップリンクが早い、だな。
この技術は、アクセスレイヤスイッチで使用される。アクセスレイヤ、覚えているよな?

ハイパーネット助手

え〜っと、なんでしたっけ? 3層構造?

スーパーインター博士

そうだ。アクセス、ディストリビューション、コアの3層構造だったな。
そのうち、エンドユーザと接続する層がアクセスレイヤだ。

ハイパーネット助手

で、そのアクセスレイヤのスイッチで使われるのが、UpLinkFastだ、と。

スーパーインター博士

そういうことだな。理由はあとで説明する。
さて、UpLinkFastの動作だが、こうだ。

[FigureSW14-01:UpLinkFast]

ハイパーネット助手

はい?速やかに?

スーパーインター博士

速やかにだ。

ハイパーネット助手

…………。
これが許されるのなら、なんで普通のSTPには転送遅延タイマだの、最大タイマだのがあるんだって話になりません?

スーパーインター博士

まぁ、確かにそう言われればそうかもしれんな。
なので、このUpLinkFastにはいくつかの前提条件が必要だ。

  • アクセスレイヤのスイッチであること
  • 最低1つのブロックポートを持つこと
  • 障害はルートポートのリンクで発生すること
スーパーインター博士

この場合、ブロックポートのうち最小のコストを持つものが即座にルートポートになる
ただし、セルフループポートは除くが。

ハイパーネット助手

セルフループポートってなんです?

スーパーインター博士

あぁ、こういうループになっているものだ。

セルフループポート

[FigureSW14-02:セルフループポート]

スーパーインター博士

つまり、自分で送信したBPDUを受け取ることにより、ブロッキングされるポートのことだな。

ハイパーネット助手

あぁ、なるほど。

スーパーインター博士

UpLinkFastのポイントは2つ。まず、ルートポート以外の障害では機能しないというところ。

ハイパーネット助手

ふむふむ。

スーパーインター博士

そして、基本的にSTPツリーのリーフ(葉)にあるアクセスレイヤのスイッチでしか機能しないところだ。

ハイパーネット助手

なぜです?

スーパーインター博士

たとえば、以下のようなSTPツリーがあるとする。

UpLinkFastの条件

[FigureSW14-03:UpLinkFastの条件]

スーパーインター博士

先ほども言ったように、UpLinkFastは「ブロックポートを新たなルートポートとしてフォワーディング」だ。SW-AやSW-Bのようなディストリビューションレイヤのスイッチにブロックポートはあるか?

ハイパーネット助手

……ないですね。

スーパーインター博士

SW-Cのようなアクセスレイヤのスイッチでなら意味があるが、SW-AやSW-Bのような位置ならば意味がない。だから、基本的にアクセスレイヤのスイッチで使うものなのだ。

ハイパーネット助手

でも、でもでもでもでも。
こうならば? SW-Bでも意味ありますよね?

UpLinkFastの条件・2

[FigureSW14-04:UpLinkFastの条件・2]

スーパーインター博士

む、確かに意味があるな。まぁ、つまりだ。トポロジ状態を把握した上で使用するものなのだ、ということだよ。
なんでもかんでも闇雲にUpLinkFastで高速コンバージェンス、とかやっては駄目だ、ということだな。

ハイパーネット助手

う〜ん。

スーパーインター博士

つまり、ルートポートの代替となるブロックポートが存在するときに限り、UpLinkFastは有効なのだ。
そしてそれは、多くの場合アクセスレイヤスイッチはブロックポートを持つことが多い。だからアクセスレイヤで使用する、と。

ハイパーネット助手

う〜ん。わかったようなわからないような。

スーパーインター博士

あぁ、そうそう。1つ注意点を忘れていた。
UpLinkFastはVLAN単位には使用できない。VLANごとに状態が違うPVST+などではあまり有効ではないかもな。

■ CAMテーブルの問題

スーパーインター博士

ネット君。STPのコンバージェンスの際、STPの計算とCAMテーブルの更新にはタイムラグがあって、それが問題になったな。

ハイパーネット助手

あ〜、STPが50秒なのに、CAMテーブルのリフレッシュが5分ってところが問題だったんですよね。

スーパーインター博士

今回説明した、UpLinkFastはさらにSTPの再計算速度を上昇させるものだ。
つまり、CAMテーブルとはますますズレが発生する。

ハイパーネット助手

そうですね。UpLinkFastは即座に再計算されますもんね。

スーパーインター博士

さて、復習だ。通常のSTPではこのズレをどうしていた?

ハイパーネット助手

え〜っと、ん〜。再計算をしたブリッジは、「CAMテーブルのクリア」の要求を出すんでしたよね。

スーパーインター博士

そうだ。要求を受け取った側は15秒にリフレッシュ期間を短縮させるのだが……。
ネット君。UpLinkFastはほんの数秒だぞ? 15秒でも長くないか? 無駄じゃないか?

ハイパーネット助手

だんだん博士の決め台詞と化してますね。「無駄じゃないか?」
確かにもったいないですよね。ほんの数秒で再計算が終わるUpLinkFastとしては。

スーパーインター博士

だろう?
なので、こうする。

[FigureSW14-05:CAMテーブルの問題]

スーパーインター博士

ダミーフレームによりCAMテーブルを更新させるというわけだ。

ハイパーネット助手

は〜。ダミーフレームをマルチキャストすることにより、強制的にCAMテーブルを更新させる、というわけですか。

スーパーインター博士

そういうことだ。確かにトラフィックは増えるが、この方法ならCAMテーブルがはやく正常化するので、ネットワークの停止時間が短くなるという利点がある。

ハイパーネット助手

はわ〜。上手いこと考えてますねぇ。

■ BackboneFast

スーパーインター博士

さて、ネット君。次の話をしよう。
ちょっと復習だ。これを見たまえ。

[FigureSW11-08:再計算]

ハイパーネット助手

はぁ、STPの再計算ですよね。

スーパーインター博士

うむ、ポイントはココだ。

悪いコストのBPDU

[FigureSW14-06:悪いコストのBPDU]

スーパーインター博士

「受け取ったBPDUがおかしいので」といっているが、正確に言うと、「受け取ったBPDUがおかしいのでそのBPDUは無視。結果、BPDUが届かないという扱いになり、最大タイマ経過後再計算」だ。

ハイパーネット助手

おかしいBPDUなので、無視して。そうするとBPDUが届いていないから再計算……。
つまり、最大タイマの20秒後に再計算ってことですね。

スーパーインター博士

うむ。だがネット君、あきらかにおかしいBPDUが送られてきているのに、20秒も待つなんて、無駄じゃないか?

ハイパーネット助手

本日2発目ですね。
そのうち博士ったら、「無駄じゃないか」しか言わなくなっちゃったりして。

スーパーインター博士

…。
想像力が豊かなのは結構だが、もうちょっと現実を見つめなおしたまえ

ハイパーネット助手

はぅっ。

スーパーインター博士

ともかくだ。ルートポートもしくは、ブロックされているポートにおかしいBPDUが届くということは、どこかで障害が発生した証拠なわけだ。
なので、できるだけ早く再計算にもっていきたい。

ハイパーネット助手

はい。

スーパーインター博士

なので、ここでRLQ BPDUという特殊なBPDUを使う。

ハイパーネット助手

あーるえるきゅー?

スーパーインター博士

そうだ。つまり、こう。

[FigureSW14-07:BackboneFast]

スーパーインター博士

この方式をBackboneFastという。

ハイパーネット助手

ばっくぼーんふぁすと。

スーパーインター博士

UpLinkFastと違い、直接接続していないリンクの障害を検出し、STP再計算を高速化する技術だ。

ハイパーネット助手

ははぁ。
そういえば、RLQ応答が返ってこない場合もあるんですよね?

スーパーインター博士

うむ。こういう場合だな。

RLQ応答が返ってこない場合

[FigureSW14-08:RLQ応答が返ってこない場合]

スーパーインター博士

上の図だと、SW-CとSW-D。下の図だとSW-DはRLQ応答が返ってこない・送れないことになる。
こういう場合、ルートブリッジとの接続は失われたので、自身をルートブリッジとみなして再計算する。

ハイパーネット助手

は〜。

スーパーインター博士

ちょっとまとめよう。

  • おかしいBPDUを…
    • ルートポートに受け取った … すべてのブロック状態のポートからRLQ要求送信
    • ブロックしているポートに受け取った … すべてのポートからRLQ要求送信
  • RLQ要求が…
    • 返ってきた … おかしいBPDUを受け取ったポートの最大タイマを0にし、Listeningに。
    • 返ってこない … おかしいBPDUを受け取ったポートの最大タイマを0に、自身をルートブリッジとして再計算。
スーパーインター博士

さっきもいったが、直接接続していないリンクの障害を検出し、STP再計算を高速化するためにつかう、ということだな。

ハイパーネット助手

ばっくぼーんふぁすと。

スーパーインター博士

そうだ。そのセグメントのルートブリッジへの接続(バックボーン)を高速に復旧させるからBackboneFastと呼ばれるわけだな。

ハイパーネット助手

なるほどです。

スーパーインター博士

さて、今回はこれぐらいにしておこう。

ハイパーネット助手

はい。

スーパーインター博士

今回で一応STPの話は終了だ。RSTPの話とかもあることはあるが、それはまたいずれだな。
次回からはまた別のことを話そう。

ハイパーネット助手

了解ッス。
30分間ネットワーキングでした〜♪

速やかに
1〜4秒ぐらい。
RLQ BPDU
[Root Link Query BPDU]
ルートリンククエリBPDU。要求と応答があり、RLQ要求、RLQ応答と略す。
RSTP
[Rapid Spanning-Tree Protocol]
IEEE802.1w。UpLinkFast、BackboneFast、PortFastなどを使わず、STP(IEEE802.1d)を高速化したプロトコル。
ハイパーネット助手ハイパーネット君の今日のポイント
  • アクセスレイヤスイッチに使用されるルートへの代替リンクを高速に設定する技術がUpLinkFast。
    • ブロックポートが必要。
    • ルートポートの直接的障害の時に機能する。
    • ブロックから即座にフォワーディングへ移行する。
  • 間接的な障害を検出し、高速に再計算を実施する技術がBackboneFast。
    • 他のブリッジのルートポートの障害によるおかしいBPDUをキーに機能する。
    • RLQ BPDUを使用して、あらたな指定ポートを高速に設定する。

30 Minutes NetWorking No.SW14

管理人:aji-ssz(at)selene.is.dream.jp