路由演算法 Chandy Mistra演算法

2021-08-30 12:00:04 字數 515 閱讀 4957

計算同一目的節點所有最短路徑演算法,利用了擴散計算。即一種分布式計算,由乙個節點初始化,其他節點一接到訊息後就加入。

要計算所有節點到節點v0的距離,每一節點u從du[v0]=∞開始並等候接收訊息。節點v0將訊息傳送到所有近鄰中。當節點u接近到近鄰w的訊息傳送到所有近鄰中。當節點u接到近鄰w的訊息時,其中d+wuw。

演算法如下:

var du[v0]:weight  init ∞;

nbu[v0]:node init udef;

for node v0 only:

begin dv0[v0]=0;

forall w∈neighv0 do send to w

endprocessing a message from neighbor w by u;

begin receive from w;

if d+wuwbegin du[v0]:=d+wuw;nbu[v0]:=w;

forall x∈neighu do send to x

endend

靜態路由演算法 vs 動態路由演算法

靜態路由演算法主要有洪氾法,隨機走動法,最短路徑法,基於流量的路由演算法 1 洪氾法 flooding 節點收到乙個報文分組後,向所有可能的方向複製 每個節點不接受重複分組,網路區域性故障也不影響通訊,但大量重複分組加重了網路負擔。這種方法適宜於網路規模小,通訊負載輕,可靠性要求極高的通訊場合 如軍...

網路 簡述路由演算法之動態路由演算法

在計算機網路中,路由器的乙個很重要責任就是要在端對端的節點中找出一條最佳路徑出來,通過自己與相鄰節點之間的資訊,來計算出從自己位置到目的節點之間的最佳線路,這種演算法我們可以理解為路由演算法。路由的模式又主要分為 靜態路由 和 動態路由 靜態路由協議是由網路管理員手動輸入配置的,適用於小型的不太複雜...

靜態路由演算法

靜態路由演算法 靜態路由 static route 是一種特殊的路由,它不是某一路由演算法計算得出的,而是由管理員手工設定的。手工配置網路上的所有路由雖然可以使網路正常運轉,但是也會帶來一些侷限性。網路拓撲發生變化之後,靜態路由不會自動改變,必須有網路管理員的介入。當網路拓撲複雜 變化頻繁的時候,管...