如上圖所示:全網運行eigrp,從A到D有兩條路徑可達,那麼eigrp怎麼計算metric,怎麼選路呢?
首先咱們先回顧一下eigrp的概念:
EIGRP偶爾會被描述爲具備鏈路狀態路由協議動做的距離矢量路由協議。全部距離矢量路由協議一個共有的特性就是,把本地整個路由表發送給直連鄰居。(鏈路狀態路由協議只是把本身的直連鏈路的狀態信息通告出去,可是全部本路由協議域內的其餘路由器均可以學習到這個信息。)距離矢量路由協議存在的最大問題就是路由環路和跳數無限制,也就必須使用水平分割,計時器等方法來避免這些問題。由於全部的距離矢量路由器在發送路由更新前,都要先對接收到的新的路由進行路由計算,這樣在比較大的網絡環境中,直接影響了路由收斂的速度。距離矢量路由協議的路由更新就是本地路由表,這樣拓撲中一個很是重要的鏈路變化會致使許多路由變化的通告。
Eigrp的幾個名詞:
Feasible distance(FD)-路由器計算到達目的網絡的最低的metrci值。
Feasible condition(FC)-用來匹配鄰居通告的metric值,是否大於本身的FD。FC的做用其實是防環,若是鄰居通告的到達同一目的網絡的metric值比路由器的FD大,徹底有多是鄰居到達目的網絡的路徑包括本路由器,也就是形成環路。
Feasible successor-路由器到達目的網絡的下一跳。
好,eigrp的概念咱們先複習到這,具體看上面的top圖,咱們來看metric的計算方法。
Eigrp的metric的計算公式=igrp的metric*256
Igrp的metric計算公式=[(10000000/鏈路上的最小帶寬)+sum(delay)/10]*256
因此,上圖D學到了A的lo0的路由,從A-B-C-D鏈路上到達lo0的metric爲 [10000000/64 + (6000+5000)/10]*256 = (156250+1100)*256 =40281600
上述公式當中的延遲請注意,除了每條鏈路上的延遲,lo0口的延遲不要忘了算,lo0口的延遲默認爲5000.
咱們再看從A-X-Y-Z-D的路徑metric。
Metric=[(10000000/256)+(8000+5000)/10]*256=(39062.5+1300)*256=10332672
此時注意:10000000/256 除出來的數不是整數,是帶小數的,這時怎麼取值呢,在這裏咱們不須要四捨五入,直接取整就能夠。還有一種狀況,假設除出來的數是0.xx怎麼辦,這個時候咱們就不能取0了,而是取1.
此時 metric計算完畢,eigrp將選擇metric低的鏈路到達lo0