距離ベクトルルーティングアルゴリズムは、負の重量サイクルをどのように処理しますか?

StackOverflow https://stackoverflow.com/questions/19849384

質問

このアルゴリズムにはかなりの質問がありますが、マイナスウェイトサイクルをどのように処理するかを見つけることができませんでしたか?ルーターXがルーターYからZのコストが5であることを更新すると仮定します。後で、ルーターXがルーターYからZのコストがzのコストが2になります。ルーターXは何をしますか?私の理解では、Bellman Fordアルゴリズムは、この場合にエラーが発生する必要があると述べています。しかし、どの距離ベクトルルーティングアルゴリズムを行うか - 単に更新するか、エラーなどを提起するだけですか?

役に立ちましたか?

解決

私がこの質問を正しく読んでいるかどうかはわかりません。ルーターからの更新では、以前よりも高いか低いかにかかわらず、パスの新しいコストを指定できます。 xがコスト2(元々5)のzへのパスのyの更新を取得した場合、xは新しいコストパスで転送テーブルを更新し、このパスを使用してzに到達するだけで、最小コストパスの場合はZに到達する必要があります。

他のヒント

Bellman-Ford Algortihmの低コストとリンクコストの次のホップアップデートとの間に矛盾があります。 2つ以上の異なるインターフェイス間 より安いコストを取得するには、例:

**ケース1:** Router Aには3つのネイバーN1、N2、N3、およびN1、N2、N3が隣接としてXを持っています

|---2----N1-----4----|
A`--4----N2-----3----X
|---1----N3-----2----|

ルーターAの場合:

 X via N1 =6 
 X via N2=7            the lowest is :**X Via N3=3**
 X Via N3=3

- ここでは、N3(N1、N2、N3の間)を介してxを選択します。 最低 1 ケース2: (x-n3 = 2)の間のリンクコストが(x-n3 = 8)に変更された場合、リンクの構成により(8も2が2以上ですが、義務です)、N3はAを通知する必要があります。それについて からコストを更新する必要があります (x via n3 = 3)から(x via n3 = 9)。したがって、ケース(1)に戻ります。

     X via N1 =6 
     X via N2=7            ****the lowest is :**X Via N1=6******
     X Via N3=9  
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top