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組織公佈的標準。世界上主要的網絡設備廠商都支持該協議,所以它的互操作性和可靠性由於公開而得到保障,並且在衆多的廠商支持下,該協議也會不斷走向更加完善。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章