CCIE學(xué)習(xí)之EIGRP基礎(chǔ)
CCIE學(xué)習(xí)EIGRP基礎(chǔ)之一:EIGRP特點(diǎn)總結(jié):
1)傳輸協(xié)議:IP,協(xié)議類型為88(不使用UDP和TCP)。
2)路由量度:默認(rèn)基于帶寬限制和累積延遲,也可以基于負(fù)載、可靠性和MTU。
3)Hello間隔:路由器在接口上發(fā)送EIGRP的Hello消息的間隔。
4)保持定時器:用來確定鄰接路由器是否失效的定時器,如果在該定時器時限內(nèi),路由器沒有接收到來自鄰接路由器的任何EIGRP消息,則認(rèn)為該鄰接路由器失效。
5)路由更新的目的地址:默認(rèn)為224.0.0.10,可重傳到每個鄰接路由器的單個IP地址。
6)完全還是部分更新:當(dāng)發(fā)現(xiàn)新鄰居時進(jìn)行完全更新,否則使用部分更新。
7)認(rèn)證:僅支持MD5認(rèn)證。
8)VLSM/無類:EIGRP在每條路由上都包含掩碼,可以支持不連續(xù)網(wǎng)絡(luò)和VLSM。
9)路由標(biāo)記:當(dāng)重新分發(fā)到EIGRP時,允許標(biāo)記路由。
10)下一跳字段:支持廣播到與默認(rèn)廣播路由器不同的下一跳路由器。
11)手工路由匯總:在EIGRP網(wǎng)絡(luò)的任何點(diǎn)上都可以路由匯總。
12)多協(xié)議支持:支持IPX和AppleTalk路由的廣播。
CCIE學(xué)習(xí)EIGRP基礎(chǔ)之二:Hello、鄰接路由器和鄰接關(guān)系
EIGRP通過發(fā)送Hello消息(目的地址224.0.0.10)來查詢鄰接路由器。如果有一對路由器互相之間收到Hello消息,并且能夠通過以下條件的檢測,那么它們就建立鄰接關(guān)系(此時它們可以互相交換路由并可用show ip eigrp neighbor命令列出):
1)必須通過認(rèn)證
2)必須使用同樣的AS號
3)接口接收到的Hello消息的源IP地址必須在接口所連通主子網(wǎng)內(nèi)
4)K值必須匹配
(注意,第3)條所述主子網(wǎng)是指接口通過ip address命令(無secondary關(guān)鍵字)所配置的子網(wǎng))
K值為常量,定義了EIGRP用來計算metric的組成因子,其設(shè)置可以通過router eigrp子命令metric weights tos k1 k2 k3 k4 k5來改變,默認(rèn)值是0 1 0 1 0 0,表示只有帶寬和延遲用于計算metric。
Hello消息的另一個功能是用來保持EIGRP激活。鄰接路由器基于hello間隔不停地發(fā)送Hello消息。如果路由器在EIGRP保持定時器時限內(nèi)不能監(jiān)聽到來自鄰居的消息,那么所有來自該鄰接路由器的路由都認(rèn)為失效。
在建立EIGRP鄰接關(guān)系時,Hello和保持定時器參數(shù)并不需要一致。實(shí)際上,路由器在監(jiān)聽鄰接關(guān)系時,使用的恰好是對方設(shè)定的計時器(通過Hello消息交換)。
CCIE學(xué)習(xí)EIGRP基礎(chǔ)之三:EIGRP更新
一旦路由器間建立了鄰接關(guān)系,它們就可以使用EIGRP更新消息來交換彼此的路由,其步驟大致如下:
1)最開始的時候發(fā)送完全路由更新(除了那些因?yàn)榉指罘秶鴣G棄的路由)。
2)一旦所有路由交換完畢,更新即停止。
3)當(dāng)出現(xiàn)路由變化時,發(fā)送部分更新。
4)當(dāng)鄰接路由器失效后恢復(fù),或者建立新的鄰接關(guān)系時,再次發(fā)送完全更新。
EIGRP使用可靠傳輸協(xié)議(Reliable Transport Protocol,RTP)來發(fā)送多播EIGRP更新。發(fā)送更新之后,會等待接收來自每個接收路由器的單點(diǎn)EIGRP應(yīng)答消息。
RTP支持多點(diǎn)傳送更新。如果有鄰接路由器沒有發(fā)送應(yīng)答,RTP會對它單點(diǎn)重傳更新。其步驟如下:
1)R1(EIGRP發(fā)送者)在發(fā)送可靠性更新消息時,對每個鄰接路由器啟動一個重傳超時(Retransmission Timeout,RTO)定時器。(Cisco的實(shí)際做法是:對每個鄰接路由器計算一個平均回路時間(Smoothed Round-Trip Time,SRTT),RTO由SRTT得出,其值隨時間而變化。)
2)R1發(fā)送多點(diǎn)EIGRP更新。
3)R1監(jiān)聽哪些鄰接路由器發(fā)送了對更新的應(yīng)答。
4)在R2傳回應(yīng)答之前,RTO已經(jīng)超時。
5)R1重新傳送更新,這一次使用的是單點(diǎn)傳送,發(fā)送給RTO超時的R2。
EIGRP和RTP的應(yīng)答過程比較簡單,使用的是窗口大小為1的滑動窗口。(每個更新包都有一個序列號,返回的ACK消息通過列出同一序列號來確認(rèn)接收到消息)
CCIE學(xué)習(xí)EIGRP基礎(chǔ)之四:EIGRP拓?fù)浔?/P>
EIGRP使用三張表:鄰接表,拓?fù)浔砗吐酚杀怼`徑颖肀4驵徑勇酚善鞯臓顟B(tài)信息,可以使用show ip eigrp neighbors命令顯示。拓?fù)浔碛脕硖顚慐IGRP的更新消息,基于拓?fù)浔淼膬?nèi)容,每臺路由器可以選擇最佳路由來保存到自己的路由表中。
EIGRP路由器基于metric的組成來對每條路由計算metric。當(dāng)鄰接路由器廣播一條路由時,更新包含了每條路由的metric組成值。路由器根據(jù)接收到的metric值以及其接口設(shè)置來計算其每條路由的metric。默認(rèn)metric組成部分是累積延遲(10微秒單位)和帶寬(每秒多少位)。通過使用metric weights命令設(shè)置K值,EIGRP也可以使用鏈路負(fù)載、可靠性和MTU組成metric。(不建議這么做,因?yàn)檫@些值波動比較頻繁,可能造成路由很不穩(wěn)定)
(注意:路由器的延遲可以通過delay接口子命令來設(shè)置)
CCIE學(xué)習(xí)EIGRP基礎(chǔ)之五:EIGRP的metric計算
![]() |
路由器通過接收到的鄰接路由器的metric組成可計算出一條廣播路由的metric,這稱為報告距離(reported distance,RD)。有了RD,再考慮路由器自己接口上的延遲,就可以計算出這條路由的當(dāng)前metric。步驟如下:
1)R1廣播一條路由:帶寬為10000,延時為100。
2)R2根據(jù)接收到的K值來計算RD。默認(rèn)情況下,metric的計算公式是:metric = 256*(107/帶寬)+256*延時,所以算出RD = 256*107/10000+256*100 = 281600。
3)R2更新其拓?fù)浔恚訒r加1000,且?guī)捫薷臑?544。此時算出的當(dāng)前metric = 256*107/1544+256*1100 = 1939631。
4)R2發(fā)送包含新延遲和帶寬的更新消息到其他鄰接路由器。
使用show ip eigrp topology命令可以列出EIGRP的拓?fù)浔硇畔ⅰT诹谐龅男畔⒅校€有兩個重要概念要注意。可行距離(feasible distance,F(xiàn)D)表示路由器在指向某一特定前綴的所有可能路由中計算出來的最佳metric。擁有最佳metric的路由稱為成功者路由(successor route),它會裝入到路由表中。
【編輯推薦】