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