CCNA--加強型內部網關路由選擇協議(EIGRP)

 CCNA--加強型內部網關路由選擇協議(EIGRP)


 
 

一.EIGRP路由協議簡介


  
  是Cisco的私有路由協議,它綜合了距離矢量和鏈路狀態2者的優勢,它的特色包括:
  1. 快速收斂:鏈路狀態包( Link-State Packet,LSP)的轉發是不依靠路由計算的,因此大型網絡能夠較爲快速的進行收斂.它只宣告鏈路和鏈路狀態,而不宣告路由,因此即便鏈路發生了變化,不會引發該鏈路的路由被宣告.可是鏈路狀態路由協議使用的是Dijkstra算法,該算法比較複雜,而且較佔CPU和內存資源和其餘路由協議單獨計算路由相比,鏈路狀態路由協議採用種擴散計算(diffusingcomputations ),經過多個路由器並行的記性路由計算,這樣就能夠在無環路產生的狀況下快速的收斂.
  2. 減小帶寬佔用:EIGRP不做週期性的更新,它只在路由的路徑和度發生變化之後作部分更新.當路徑信息改變之後,DUAL只發送那條路由信息改變了的更新,而不是發送整個路由表.和更新傳輸到一個區域內的全部路由器上的鏈路狀態路由協議相比, DUAL只發送更新給須要該更新信息的路由器。 在WAN低速鏈路上,EIGRP可能會佔用大量帶寬,默認只佔用鏈路帶寬50%,以後發佈的 IOS容許使用命令 ip bandwidth-percent eigrp來修改這一默認值 .
  3. 支持多種網絡層協議:EIGRP經過使用「協議相關模塊」 (即protocol-dependentmodule<PDM>),能夠支持 IPX,ApplleTalk,IP,IPv6NovellNetware等協議.
  4. 無縫鏈接數據鏈路層協議和拓撲結構:EIGRP不要求對OSI參考模型的層2協議作特別是配置.不像OSPF,OSPF對不一樣的層2協議要作不一樣配置,好比以太網和幀中繼總之,EIGRP可以有效的工做在LAN和WAN中,並且EIGRP保證網絡不會產生環路(loop-free);並且配置起來很簡單;支持VLSM;它使用多播和單播,不使用廣播,這樣作節約了帶寬;它使用和IGRP同樣的度的算法,可是是32位長的;它能夠作非等價的路徑的負載平衡.
  

二.EIGRP的四個組件


  
  1.Protocol-Dependent Module(PDM)
  2.可靠傳輸協議(Reliable Transport Protocol,RTP)
  3.鄰居的發現/恢復
  4.彌散更新算法(Diffusing Update Algorithm,DUAL)
  
  

三.RTP-EIGRP的可靠傳輸協議


  

  RTP負責 EIGRP packet(下面有講)的按順序(可靠)的發送和接收,這個可靠的保障是經過Cisco私有的一個算法,reliable multicast實現的,使用組播地址 224.0.0.10,每一個鄰居接收到這個可靠的組播包的時候就會以一個unicast做爲確認按順序的發送是經過packet裏的2個序列號實現的,每一個packet都包含發送方分配的1個序列號,發送方每發送1個packet,這個序列號就遞增1.另外,發送方也會把最近從目標路由器接收到的packet的序列號放在這個要發送的packet裏,在某些狀況下,RTP也可使用無需確認的不可靠的發送,而且使用這種不可靠發送的packet中不包含序列號.
  

四.EIGRP-Metric計算方法


  
  EIGRP選擇一條主路由(最佳路由)和一條備份路由放在 topology table(EIGRP到目的地支持最多6條鏈路).它支持幾種路由類型:內部,外部(非EIGRP)和彙總路由.EIGRP使用混合度.
  i.EIGRP Metric的5個標準
  1. 帶寬:10的7次方除以源和目標之間最低的帶寬乘以256
  2. 延遲(delay):接口的累積延遲乘以256,單位是微秒
  3. 可靠性(reliability):根據keepalive而定的源和目的之間最不可靠的可靠度的值
  4. 負載(loading):根據包速率和接口配置帶寬而定的源和目的之間最不差的負載的值
  5. 最大傳輸單元(MTU):路徑中最小的MTU.MTU包含在EIGRP的路由更新裏,可是通常不參與EIGRP度的運算
  ii. EIGRP Metric的計算:EIGRP使用 DUAL來決定到達目的地的最佳路由(successor).當最佳路由出問題的時候,EIGRP不使用
   holddown timer而當即使用備份路由(feasible successor),這樣就使得EIGRP能夠進行快速收斂
  EIGRP計算度的公式,K是常量,公式以下:
   metric=[K1*bandwidth+(K2*bandwidth)/(256–load)+K3*delay]*[K5/reliability+K4]
  默認:K1=1,K2=0,K3=1,K4=1,K5=0 不推薦修改K值.K值經過EIGRP的hello包運載.若是兩個路由器的K值不匹配的話它們是
  不會造成鄰居關係的 Metric weight Tos K1 K2 K3 K4 K5 來修改K值,Tos 默認爲0.
  
  

五.EIGRP Packet


  

  EIGRP使用多種類型的packet,這些packet經過IP頭部信息裏的協議號 88來標識:
  1. Hello packet:用來發現和恢復鄰居,經過組播的方式發送,使用不可靠的發送.
  2. ACK(acknowledgement) packet:不包含數據(data)的Hello包,使用unicast的方式,不可靠的發送.
  3. Update packet:傳播路由更新信息,不按期的,經過可靠的方式發送(好比網絡鏈路發生變化).當只有一臺路由器須要路由更新 時,update經過unicast的方式發送;當有多個路由器須要路由更新的時候,經過組播的方式發送.
  4. Query(查詢) & Reply(應答) packet:是 DUAL finite state machine用來管理擴散計算用的,查詢包能夠是組播或unicast;應答包是經過unicast的方式發送,而且方式都是可靠的.
  5. Request(請求) packet:最初是打算提供給路由服務器(server)使用的,可是歷來沒實現過.
  

六.EIGRP的鄰居發現/恢復協議


  
  EIGRP的Update包是非週期性發送的,
  1.Hello包在通常的網絡中(好比點到點,point-to-point)是每 5秒組播 1次(要隨機減去1個很小的時間防止同步);
  2.在多點(multipoint)X.25,幀中繼(Frame Relay,FR)和ATM接口(好比ATM SVC)和ISDN PRI接口上,Hello包的發送間隔是 60
  秒.
  在全部的狀況中,Hello包是不須要確認的.能夠在接口配置模式下修改該接口的Hello包默認的發送間隔,命令爲
   ip hello-interval eigrp
  當一個路由器收到從鄰居發來的Hello包的時候,這個Hello包包含了一個 holdown time,這個holdown time告訴這個路由器等待後續Hello包的最大時間.若是在超出這個holdown time以前沒有收到後續Hello包,那麼這個鄰居就會被宣告爲不可達,並通知DUAL這個鄰居已丟失. 默認hold time是3倍於Hello包發送間隔的, 更高鏈路 -- 默認Hello間隔和保持時間是5s和15s T1或低於T1鏈路 -- 分別是60s和180s 能夠在接口配置模式下修改這個默認的holdown time, 命令爲
   ip hold-time eigrp.
  EIGRP鄰居信息都記錄在鄰居表(neighbor table)中,使用show ip eigrp neighbors命令查看IP EIGRP的鄰居.
  
  

七. EIGRP的術語定義


  
  
1. 彌散更新算法簡介 (彌散更新算法能夠保證路由100%無環路loopfree)爲了可以讓DUAL正確的操做,低層協議必須知足如下幾個條件:
  1. 一個節點要在有限的時間裏檢測到新鄰居的存在或和一個鄰居的鏈接的丟失
  2. 在鏈路上傳輸的全部信息必須在有限的時間裏按正確的順序收到
  3. 全部的消息,包括鏈路cost的更改,鏈路故障,和新鄰居的發現,都應該是在有限時間裏,一個一個的依次處理Cisco的EIGRP使用鄰居的發現/恢復和RTP來確保上述前提條件
  2. adjacency(鄰接): 在剛啓動的時候,路由器使用Hello包來發現鄰居並標識本身用於鄰居的識別.當鄰居被發現之後,EIGRP會在它們之間造成一種鄰接關係.鄰接是指在這2個鄰居之間造成一條交換路由信息的虛鏈路(virtual link).當鄰接關係造成之後,它們之間就能夠相互發送路由update,這些update包括路由器它所知道的全部的鏈路及其metric.對於每一個路由,路由器都會基於它鄰居宣告的距離(distance)和到達那個鄰居的鏈路的cost來計算出一個距離
  3. Feasible Distance(FD,可行距離): 到達每一個目標網絡的最小的metric將做爲那個目標網絡的FD.好比,路由器可能有3條到達網絡172.16.5.0的路由,metric分別爲380672,12381440和660868,那麼380672就成了FD.
  4. Feasible Condition(FC,可行條件): 鄰居宣告到達目標網絡的的距離小於本地路由器到達目標網絡的FD AD < FD => FC=ture.
  5. Feasible Successor(FS,可行後繼路由): 若是一個鄰居宣告到達目標網絡的距離知足FC,那麼這個鄰居就成爲FS.好比,路由器到達目標網絡172.16.5.0的FD爲380672,而他鄰居所宣告到達目標網絡的距離爲355072,這個鄰居路由器知足FC,它就成爲FS;若是鄰居路由器宣告到達目標網絡的距離爲 380928,即不知足FC,那麼這個鄰居路由器就不能成爲FS, FS和FC是避免環路的核心技術,FS也是downstream router(下游路由器),由於從FS到達目標網絡的距離比本地路由器到達目標網絡的FD要小,存在一個或多個FS的目標網絡被記錄在拓撲表中。
  6.拓撲表(Topological Table)
  拓撲表包括如下內容:
  目標網絡的FD.
  全部的FD.
  每個FS所宣告的到達目標網絡的距離.
  本地路由器計算出的,通過每一個FS到達目標網絡的距離,即基於FS所宣告到達目標網絡的距離和本地路由器到達那個FS的鏈路的cost.
  發現FS的網絡相連的接口.
  7.鄰居表(Neighbor Table):每一個路由器的RAM中都保存有關於鄰居的地址和接口信息的表。
  8.後繼路由(Successor):又稱成功者(Secessful),是到達遠程網絡的最佳路由。是EIGRP用於轉發業務量的路由,它被存儲在路由表中。
  

八.EIGRP路由協議優缺點

  
(1)EIGRP路由協議主要優勢   精確路由計算和多路由支持。EIGRP協議繼承了IGRP協議的最大的優勢是矢量路由權。EIGRP協議在路由計算中要對網絡帶寬、網絡時延、信道佔用率和信道可信度等因素做全面的綜合考慮,因此EIGRP的路由計算更爲準確,更能反映網絡的實際狀況。同時EIGRP協議支持多路由,使路由器能夠按照不一樣的路徑進行負載分擔。   較少帶寬佔用。使用EIGRP協議的對等路由器之間週期性的發送很小的hello報文,以此來保證從前發送報文的有效性。路由的發送使用增量發送方法,即每次只發送發生變化的路由。發送的路由更新報文采用可靠傳輸,若是沒有收到確認信息則從新發送,直至確認。EIGRP還能夠對發送的EIGRP報文進行控制,減小EIGRP報文對接口帶寬的佔用率,從而避免連續大量發送路由報文而影響正常數據業務的事情發生。   快速收斂。路由計算的無環路和路由的收斂速度是路由計算的重要指標。EIGRP協議因爲使用了DUAL算法,使得EIGRP協議在路由計算中不可能有環路路由產生,同時路由計算的收斂時間也有很好的保證。由於,DUAL算法使得EIGRP在路由計算時,只會對發生變化的路由進行從新計算;對一條路由,也只有此路由影響的路由器纔會介入路由的從新計算。   MD5認證。爲確保路由得到的正確性,運行EIGRP協議進程的路由器之間能夠配置MD5認證,對不符合認證的報文丟棄不理,從而確保路由得到的安全。   路由聚合。EIGRP協議能夠經過配置,對全部的EIGRP路由進行任意掩碼長度的路由聚合,從而減小路由信息傳輸,節省帶寬。   實現負載分擔。去往同一目的的路由表項,可根據接口的速率、鏈接質量和可靠性等屬性,自動生成路由優先級,報文發送時可根據這些信息自動匹配接口的流量,達到幾個接口負載分擔的目的。   配置簡單。使用EIGRP協議組建網絡,路由器配置很是簡單,它沒有複雜的區域設置,也無需針對不一樣網絡接口類型實施不一樣的配置方法。使用EIGRP協議只需使用router eigrp命令在路由器上啓動EIGRP 路由進程,而後再使用network 命令使能網絡範圍內的接口便可。   (2)EIGRP路由協議主要缺點   沒有區域概念。EIGRP沒有區域的概念,而OSPF在大規模網絡的狀況下,能夠經過劃分區域來規劃和限制網絡規模。因此EIGRP適用於網絡規模相對較小的網絡,這也是矢量-距離路由算法(RIP協議就是使用這種算法)的侷限所在。   定時發送HELLO報文。運行EIGRP的路由器之間必須經過定時發送HELLO報文來維持鄰居關係,這種鄰居關係即便在撥號網絡上,也須要定時發送HELLO報文,這樣在按需撥號的網絡上,沒法定位這是有用的業務報文仍是EIGRP發送的定時探詢報文,從而可能誤觸發按需撥號網絡發起鏈接,尤爲在備份網絡上,引發沒必要要的麻煩。因此,通常運行EIGRP的路由器,在撥號備份端口還需配置Dialer list和Dialer group,以便過濾沒必要要的報文,或者運行TRIP協議,這樣作增長路由器運行的開銷。而OSPF能夠提供對撥號網絡按需撥號的支持,只用一種路由協議就能夠知足各類專線或撥號網絡應用的需求。   基於分佈式的DUAL算法。EIGRP的無環路計算和收斂速度是基於分佈式的DUAL算法的,這種算法其實是將不肯定的路由信息散播(向鄰居發query報文),獲得全部鄰居的確認後(reply報文)再收斂的過程,鄰居在不肯定該路由信息可靠性的狀況下又會重複這種散播,所以某些狀況下可能會出現該路由信息一直處於活動狀態(這種路由被稱爲活動路由棧),而且,若是在活動路由的此次DUAL計算過程當中,出現到該路由的後繼(successor)的測量發生變化的狀況,就會進入多重計算,這些都會影響DUAL算法的收斂速度。而OSPF算法則沒有這種問題,因此從收斂速度上看,雖然總體相近,但在某種特殊狀況下,EIGRP還有不理想的狀況。   EIGRP是Cisco公司的私有協議。Cisco公司是該協議的發明者和惟一具有該協議解釋和修改權的廠商。若是要支持EIGRP協議需向Cisco公司購買相應版權,而且Cisco公司修改該協議沒有義務通知任何其餘廠家和使用該協議的用戶。而OSPF是開放的協議,是IETF組織公佈的標準。世界上主要的網絡設備廠商都支持該協議,因此它的互操做性和可靠性因爲公開而獲得保障,而且在衆多的廠商支持下,該協議也會不斷走向更加完善。
相關文章
相關標籤/搜索