無料ブログはココログ

« 【Cisco Tips】 JuniperとCiscoをPOSで接続するには | トップページ | 【BFD】 7. BFDは指名ルータ問題を救うか? »

【OSPF】 6. OSPFの経路切り替えは速くない

6. OSPFの経路切り替えは速くない

OSPFの経路切り替えは一般に高速なのですが、 ブロードキャスト型を使っているときにはそうとは限りません。 実験してみましょう。

次のネットワークでは全体をエリア0としてOSPFでルーティングしています。 R5-R7間の通信は常に左側、R1-R4間を通るようにコストを調整しています。 R1のイーサを抜いたときに、どのくらいでその障害を迂回するのか調べたいと思います。

設定 ( R1  R2  R4  R6  R6  R6)

R1-R2セグメントはイーサネットですので、どちらかが指名ルータを実行します(R7はプライオリティを0にしています)。 R1が指名ルータをやっているときと、R2が指名ルータをやっているときで、 停止時間に差があるかどうかを調べます。

実験1:R2が指名ルータの時

show ip ospf databaseコマンドでLSAの一覧を調べてみます。 次の表示では、R2(Router ID=192.168.254.2)がネットワークLSAを作っています。 このことから、R2が指名ルータを実行していることが分かります。

R7c2514#show ip ospf database

            OSPF Router with ID (192.168.254.7) (Process ID 100)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
192.168.254.1   192.168.254.1   9           0x80000164 0x5230   4
192.168.254.2   192.168.254.2   9           0x800001B3 0xCC0A   4
192.168.254.4   192.168.254.4   2019        0x80000008 0x86F    3
192.168.254.5   192.168.254.5   956         0x80000004 0xB53F   2
192.168.254.6   192.168.254.6   611         0x80000011 0x62E9   4
192.168.254.7   192.168.254.7   215         0x80000006 0xCB1C   2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
192.168.1.2     192.168.254.2   9           0x80000002 0xAF8B
192.168.2.6     192.168.254.6   852         0x80000008 0xA462
R7c2514#

R5→R7にpingを打ち続けながら、R1のfe-0/0/0を抜いてみます。

R5#ping
Protocol [ip]:
Target IP address: 192.168.254.7
Repeat count [5]: 10000000
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 10000000, 100-byte ICMP Echos to 192.168.254.7, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
途中省略
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Success rate is 99 percent (551/554), round-trip min/avg/max = 1/3/8 ms
R5#

およそ6秒で通信が復活しました。 CiscoのSPF Delayが5秒であることを考えると、納得のいく速さです。


実験2:R1が指名ルータの時

もう一度show ip ospf databaseでLSAの一覧を調べてみます。 R1(Router ID=192.168.254.1)がネットワークLSAを作っていることから、 R1が指名ルータを実行していることがわかります。

R7c2514#show ip ospf database

            OSPF Router with ID (192.168.254.7) (Process ID 100)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
192.168.254.1   192.168.254.1   353         0x80000160 0x5037   4
192.168.254.2   192.168.254.2   350         0x800001B0 0xC812   4
192.168.254.4   192.168.254.4   1659        0x80000008 0x86F    3
192.168.254.5   192.168.254.5   597         0x80000004 0xB53F   2
192.168.254.6   192.168.254.6   251         0x80000011 0x62E9   4
192.168.254.7   192.168.254.7   408         0x80000005 0xB732   2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
192.168.1.1     192.168.254.1   353         0x80000002 0xC379
192.168.2.6     192.168.254.6   493         0x80000008 0xA462
R7c2514#

この状態で、R5→R7にpingを打ちながら、R1のfe-0/0/0を抜いてみます。

R5#ping
Protocol [ip]:
Target IP address: 192.168.254.7
Repeat count [5]: 1000000
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 1000000, 100-byte ICMP Echos to 192.168.254.7, timeout is 2 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
途中省略
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!.UUUUUUUUUUUU.....................!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!
Success rate is 95 percent (672/706), round-trip min/avg/max = 1/3/4 ms
R5#

およそ40秒停止しました。


違いが出るのはなぜ?

R1はリンクダウンと同時にルータLSAを作り直します。 ところが、ネットワークLSAは指名ルータが作りますので、 リンクダウンしたインタフェースが指名ルータかどうかで動作が変わってきます。

もしリンクダウンしたインタフェースが指名ルータだとすると、 そのセグメントには指名ルータが一人もいなくなることになります。 新しい指名ルータを選ぶには、Helloによる選挙が必要です。 Helloの選挙はRouter Dead Intervalが経過しないと始まりませんので、 その期間中は古いネットワークLSAが残りっぱなしになります。

実際、通信できない期間中にLSAの一覧を表示すると、 ネットワークLSAが古いまま残っていることが分かります。 (この表示はリンクダウンさせてから30秒程経過した後で採取しました)。

R7c2514#show ip ospf database

            OSPF Router with ID (192.168.254.7) (Process ID 100)

                Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count
192.168.254.1   192.168.254.1   28          0x80000161 0xA1D4   3
192.168.254.2   192.168.254.2   481         0x800001B0 0xC812   4
192.168.254.4   192.168.254.4   1790        0x80000008 0x86F    3
192.168.254.5   192.168.254.5   728         0x80000004 0xB53F   2
192.168.254.6   192.168.254.6   382         0x80000011 0x62E9   4
192.168.254.7   192.168.254.7   539         0x80000005 0xB732   2

                Net Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum
192.168.1.1     192.168.254.1   3624        0x80000002 0xC379
192.168.2.6     192.168.254.6   624         0x80000008 0xA462
R7c2514#

Router Dead Intervalが経過して新しい指名ルータが選ばれると、 ネットワークLSAも新しくなり、通信が復旧します。

リンクダウンしたインタフェースが指名ルータでなければ、 既存の指名ルータがネットワークLSAを即座に作り直しますので、 通信の復旧は高速なのです。

というわけで、イーサネットのようなブロードキャスト型のネットワークを使っていると、 必ずしも切り替え速度は高速でないことを頭に入れておくべきです。

Juniperのコンフィグを見ると分かると思いますが、実はR1とR2にBFDの設定を入れています。 BFDを使うと上記のような指名ルータ問題を解決できるのでしょうか? その答えはこちら

つづく。

« 【Cisco Tips】 JuniperとCiscoをPOSで接続するには | トップページ | 【BFD】 7. BFDは指名ルータ問題を救うか? »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/54859/1592367

この記事へのトラックバック一覧です: 【OSPF】 6. OSPFの経路切り替えは速くない:

« 【Cisco Tips】 JuniperとCiscoをPOSで接続するには | トップページ | 【BFD】 7. BFDは指名ルータ問題を救うか? »