コンバージェンス(収束)の問題

 ディスタンスベクタ型のルーティングプロトコルは、非常に単純なアルゴリズムで動作するため、現在でも小規模ネットワークで、利用されています。

しかし、単純なアルゴリズムであるが上、欠点も持ち合わせています。

その一つが、コンバージェンス(収束)の問題です。

 コンバージェンスとは、ネットワーク上の全てのルータで行われ、最終的に全てのルータが同じルーティングテーブルを持つようになる状態のことです。

例えば、RIPの場合で説明していきます。

RIPは、30秒間隔でアップデートを送信します。

 上の図を見れば分かるように、Router_Aが学習した内容がRouter_Eに届くには、単純計算で、30秒×3=90秒かかってしまう計算になります。

下図のように192.168.1.0/24ネットワークがダウンしてしまった場合について考えてみます。

 Router_C やRouter_D に192.168.1.0/24ネットワークがダウンしているという情報が、届くまでには、時間がかかってしまいます。

 Router_C や Router_D は、192.168.1.0/24ネットワークがダウンしているという情報が届くまでは、まだ、192.168.1.0/24ネットワークへパケットを転送できると思っているので、192.168.1.0/24宛てのパケットを転送してしまいます。

 結局、Router_D まで、192.168.1.0/24ネットワークがダウンしているという情報が届くまでに90秒かかってしまうことになり、その間、間違った経路情報でルーティングが行われてしまうことになります。

もっと大きなネットワークであった場合は、どうでしょうか?

収束するのに、もっと時間がかかってしまうことは容易に想像できると思います。

 コンバージェンスに時間がかかるということは、収束するまでの間、ネットワークの状態が不安定になります。たとえば、ルーティングループが発生するなどの問題が出てきます。

 このような事態に陥らないように、トリガアップデートなどの仕組みが用意されています。トリガアップデートとは、ネットワーク内の変更を検出した場合に定期的な更新を待たずに、すぐに経路情報を送信することです。

トリガアップデートによりコンバージェンスにかかる時間を短縮することができます。

チャンネルの紹介