■ ナローメトリック
そういえば、ルーティングの話をしているが、メトリックの話はしていなかったな。
そういえばそうですね。
うむ。IS-ISを前身としたOSPFのメトリックはなんだったかね?
OSPFのメトリックは…………帯域幅、でしたよね。
そうだ。帯域幅をもとに計算されるコストだったな。EIGRPも帯域幅と遅延などをK値で計算した値が使われる。
でした。じゃあやっぱりIS-ISも帯域幅?
いや、手動で決定されたコストを使う。
手動で決定されたコスト?
デフォルト値は10の値を持つ。これをISを出て行くインタフェースに設定する。
[FigureRT27-01:ナローメトリック]
うぅ?
出て行くときに追加?
そうだ。これをナローメトリックという。6ビットの値で0〜63までだ。
この送信元から宛先までのナローメトリックが最小のものがベストパスだ。
[FigureRT27-02:ナローメトリックの算出]
なんか、ホップ数みたいですね。
これはデフォルトの値だからな。まぁ、似てると言えば似てるな。
外向きのインタフェースを通過するたびに10プラスじゃ、ルータを通過したら1を足すホップ数っぽいですよ。
それは手動で変更すればいいだけの話だ。
ただし、IS-ISは古いプロトコルなので、実は時代においついていってない。まずは6ビット、63までしか値がないことだ。
63までしか値がないと欠点なんですか?
昔ならともかく、現在のように使用される帯域幅に差がありすぎる場合、0〜63までの幅では少なすぎる。
ん〜。そういえばそうかも。
14.4Kbpsと10Gbpsとかだったら天と地の差ですものね。
それと、最大値が1023(10ビット)までしか計算できないところだ。
ルーティングプロトコルには、他にもメトリックの最大値が決まってるものがあったよな?
RIPですね。最大ホップ数が15の。
そう、すでにレガシプロトコルの仲間入りを果たしているRIPだ。つまりIS-ISのナローメトリックもRIPのホップと同様、制限がかかってしまっているということだ。
ははぁ。それがIS-ISのナローメトリックの欠点ですか。
うむ。だが、CiscoIOSでは24ビットまで(0〜16,777,215)までのメトリックと、32ビットの最大値(約43億)を使えるワイドメトリックが使用可能だ。
そりゃまた思い切った幅の広げ方ですね。
ただし、同じメトリックを使用しないとSPFツリーは計算できない。
こっちのISはナロー、こっちはワイドというわけにはいかない。
SPFツリーが計算できないってことは、ルーティングテーブルがおかしくなる?
そういうことだな。
ははぁ。使うのなら同じメトリックってことですね。
■ Hello
さてさて、前回の復習だ。
IS-ISで使用するリンクステート情報のPDUには以下のものがあったな。
LSP | リンクステートパケット | リンクステート情報の配布 | Level1 LSP |
---|---|---|---|
Level2 LSP | |||
Hello PDU | ハローPDU | 隣接関係の確立と維持 | ESH |
ISH | |||
Level1 LAN IIH | |||
Level2 LAN IIH | |||
PtoP IIH | |||
PSNP | パーシャルシーケンスPDU | リンクステート情報の要求・確認応答 | Level1 PSNP |
Level2 PSNP | |||
CSNP | コンプリートシーケンスPDU | リンクステート情報データベースの配布 | Level1 CSNP |
Level2 CSNP |
[TableRT26-01:PDU]
です。なんか一杯ありますよね。
まぁ、実質はLSP、Hello、PSNPとCSNPの4つだな。
それがそれぞれLevel1用と2用に分かれているだけの話だ。
でで、Helloが赤いのは何か意味があるんですか?
うむ。まず隣接関係の説明をしようと思ってな。
あじぇいせんし。隣接のルータと「こんにちはパケット」でお友達になるんですね。
君も好きだな、それが。
まぁ、ともかくHelloを交換して、「お友達でいましょう」と…。
はぅ!!
ん?どうした?
いいいいえ、なんでもないです。
? そうか? では続きだ。
で、Helloの交換で「お友達でいましょう」と…。
ぐぅ!!
…………!!
「ネット君、お友達でいましょう。」
ぐぁっ!!
ふむ。ネット君、Helloの交換は本当に「お友達」になるためにある。
ていのいい断り文句ではないのでな。そんなに過剰反応しなくてもいい。
うぅぅぅ。
まぁ、こうやってネット君の古傷をえぐるのも楽しいが、話が進まん。
Helloは大きくわけて3種類、ESH、ISH、IIHがある。ESHとISHはでてきたな。
ESHはESからISへのHello、ISHはISからESへのHelloでしたね。ES-ISで使われる。
うむ。一方、IS-ISで使用されるのがIIHだ。
あいえすあいえすはろー。
IS-ISのHelloでIIHですか。
そうだ。基本的にはOSPFと変わらない。IIHを交換し、その後LSPで情報交換して、隣接関係だ。
ふむふむ。OSPFと変わらない。
違うのは、レベルが異なるルータは隣接関係にならないことだな。
そのためにレベル別のHello PDUがある。
「レベル1とレベル2では異なるアドバタイズを行う」っていってましたっけ。
そうだ。隣接関係にならなければアドバタイズは行われないからな。
ポイントをもう1つ。異なるエリアのレベル1ルータ同士も隣接関係にならない。
んん?
異なるエリアのレベル1ルータ同士? そんなことありえるんですか?
違うエリアにいたら、エリア2ルータでしか接続されていないんじゃないですか?
エリア1-2ルータの存在があるからな。そういう可能性もある。
[FigureRT27-03:エリア別の隣接関係]
上の例でいえば、エリア2のレベル1-2ルータとエリア1のレベル1ルータは同じマルチアクセスネットワーク上にある。
さらにエリア1のレベル1-2ルータも同じネットワーク上だ。エリア1のレベル1-2と、エリア1のレベル1が隣接関係を結んだように、エリア2のレベル1-2とエリア1のレベル1が結んでもおかしくはあるまい?
おかしくないといえば、おかしくないですけど。
うむ。でも結ばない。
エリアが違うからな。あくまでもレベル1の隣接関係は同じエリアの中だけだ。
ははぁ。
そういえば、PtoP IIHはどうなるんです? これはレベル1用とレベル2用にわかれてないんですか?
あぁ、WAN用のHello PDUのPtoP IIHはレベル1・2共通だ。
ただし、ルータとエリアを見てレベル1隣接かレベル2隣接かを判断する。
ふむふむ。なかなか便利ですね。
そうだな。
隣接関係についてまとめると、こうなる。
エリア | ルータ | Hello | 結果 | |
---|---|---|---|---|
同じエリア | レベル1 | レベル1 | L1 Hello | L1隣接 |
レベル1 | レベル1-2 | L1 Hello | L1隣接 | |
レベル2 | レベル2 | L2 Hello | L2隣接 | |
レベル1-2 | レベル2 | L2 Hello | L2隣接 | |
レベル1-2 | レベル1-2 | L1 Hello | L1隣接 | |
L2 Hello | L2隣接 | |||
違うエリア | レベル1 | レベル1 | --- | --- |
レベル1 | レベル2 | --- | --- | |
レベル1 | レベル1-2 | --- | --- | |
レベル2 | レベル2 | L2 Hello | L2隣接 | |
レベル1-2 | レベル2 | L2 Hello | L2隣接 | |
レベル1-2 | レベル1-2 | L2 Hello | L2隣接 |
[TableRT27-01:レベルごとの隣接関係]
異なるエリアはL2隣接しかない、と。
…? 同じエリアのL1-2同士は、L1とL2の2つとも隣接関係を結ぶんですね。
そうだ。
■ バックボーン
レベル2隣接には注意点がある。
レベル2ルーティングとはなんだった?
なんだったって。え〜っと、異なるエリアを結ぶルーティングですよね。
それはなんだ? OSPFで言うところの?
OSPFで言うところの? …… バックボーン?
気づくのが遅い。そんなんだからお友達を脱却できないんだぞ。
うぅぅ。それは言わない約束でしょう、おっかさん。
誰がおっかさんか。
ともかく、L2隣接はバックボーンを形成する隣接関係だな。
あ、はい。
この隣接関係はすべてのエリアが連続していなければならない。
すべてのエリアが連続? どういう風に?
例えば。
[FigureRT27-04:バックボーンの連続性・駄目な例]
どっかおかしいところがあるか?
え?
L1とL1-2はL1隣接。違うエリアのL1-2とL1-2はL2隣接。別におかしいところはないですよ?
うむ、だがこれでは駄目なのだ。
L2隣接が連続していない。正しいのはこう。
[FigureRT27-05:バックボーンの連続性・正しい例]
すべてのエリアを繋げるようにL2の隣接関係が連続していなければならない。
でなければ、左のエリアの情報が、右のエリアに送られないだろ?
確かにそう言われればそうかも。
バックボーンパスが出来上がってる、そういうことだ。
中央のL1-2ルータはそのために存在する。
他のエリアと接続していないのに、中央のL1-2は連続性を保つためL1-2でなければならない、そういうことですね。
■ データベース同期
OSPFやIS-ISが持つトポロジカルデータベースとは、つまるところLSPの集合体なわけだな。
ルータがアドバタイズするリンク情報の集まり、ですよね。
そう。このリンク情報をもとに、SPFツリーを作成するわけだ。
はい。
ルータは、Helloによる隣接関係の確立後、LSPを交換する。
ここらへんはOSPFと同じだ。
ふむふむ。IS-ISとOSPF、違いはあるんですか?
似てると言えば似てるし、違うといえば違う。
OSPFは、リンクに何か発生した場合、ネットワークの消失か追加だが、これが発生した場合DRにLSUを送り…。
それをDRがフラッディングする、でしたよね。
そうだ。だが、IS-ISのDISとOSPFのDRでは動作が違う。
IS-ISでは消失か追加を検知したルータはエリア内の全隣接ルータに対しLSPをフラッディングする。
エリア内の全隣接ルータに? DISがあるのにですか?
そう。この場合DISの存在はまったく影響しない。IS-ISではエリア内の全ルータと隣接関係を結んでいるからな。
じゃあ、DISはなんのためにあるんですか?
それは、データベースの同期のためだ。
データベースの同期のため?
フラッディングによる新たなトポロジの通知を行うが、何らかの理由でLSPが届かなかった時。
LSPが生存時間切れで消失した時などなどデータベースの同期が必要になる場合がある。
そういえば、OSPFでも30分間隔でデータベースの同期をとりましたっけ。
IS-ISではDISを使い、頻繁にデータベースの同期を行う。
その時使うのがPSNPとCSNPだ。
HELLOとLSP以外のリンクステートPDUですね。
この2つを合わせて、SNPというが、これはLSP記述子を持つPDUだ。
えるえすぴー記述子?
リンク情報の概要とでもいえばいいかな。
要はLSPのように完全なリンク情報ではなく、その情報がある、という目次というか簡単な中身というか、そういうものだ。
LSPよりもサイズが小さい?
そう、そういうことだな。
これを使ってDISは同期を行う。
ははぁ。
現在の状態を知らせるCSNPに、要求と確認応答のPSNPですか。
そういうことだ。
OSPFとだいぶ違うだろう?
フラッディングだけでなく、CSNPでさらにコンバージェンスを確保してるわけですね。
そういうことだ。
ん〜っと、博士。
DISがないポイントツーポイントの場合はどうなるんです?
ポイントツーポイントリンクの場合は、普通にLSPを送るだけだな。
[FigureRT27-07:ポイントツーポイントリンクのデータベース同期]
ごく普通ですね。
ごく普通だろう。
さて、今回はこれぐらいにしておこう。
了解です。
次回は、"Integrated" の説明だ。
そういえば、「統合 IS-IS」といっても、IPの話がちらりともでてきませんでしたね。
うむ。「統合」する前に本来のIS-ISを知っておかないとな。
なるほど。
ではまた次回。
はい。
30分間ネットワーキングでした〜♪
- ナローメトリック
- [narrow metric]
- ISを出て行くインタフェース
- outgoing(外向き)インタフェースといいます。
- ワイドメトリック
-
[wide metric]
どうでもいいけど、ナローの反対ならブロードでもいいような気がするが。
- IIH
- [IS-IS Hello]
- LSP
- OSPFの場合はLSA。
- SNP
- [Sequence Number PDU]
- ハイパーネット君の今日のポイント
-
- IS-ISはナローメトリックを使う。
- LSPが出て行く際にコストを追加する
- 同じレベルのルータ間でHelloを交換して隣接関係になる。
- レベル1は同じエリアのルータ間でしか隣接関係にならない。
- レベル1-2同士は、L1隣接とL2隣接の双方を結ぶ。
- DISとは関係なく、LAN内すべてのルータは隣接関係を結ぶ。
- レベル2隣接関係はすべてのエリアを横断するように連続していなければならない。
- データベースの同期にはCSNPとPSNPを使う。
- DISのデータベースの内容を10秒毎にCSNPで配布する。
- データベースの情報が異なれば、PSNPで要求する。
- IS-ISはナローメトリックを使う。