欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

思科EIGRP協(xié)議概念、原理與配置簡單總結(jié)

  發(fā)布時間:2020-03-23 14:29:30   作者:changye777   我要評論
這篇文章主要介紹了思科EIGRP協(xié)議概念、原理與配置,總結(jié)分析了思科EIGRP協(xié)議的相關概念、知識點、配置命令與操作注意事項,需要的朋友可以參考下

本文講述了思科EIGRP協(xié)議概念、原理與配置。分享給大家供大家參考,具體如下:

  • EIGRP是思科私有協(xié)議,只能運行在思科的設備上。
  • EIGRP能夠支持的協(xié)議有IP、AppleTalk和IPX。
  • EIGRP的流量使用IP協(xié)議號88。

EIGRP采用Diffused Update Algorithm (DUAL)算法來計算到目標網(wǎng)絡的最短路徑,EIGRP還是一個距離矢量
路由協(xié)議,因為距離矢量路由協(xié)議的根本特征就是自己的路由表是完全從其它路由器學來的,并且將收到的路由條目一絲不變地放進自己的路由表,運行距離矢量路由協(xié)議的路由器之間交換的是路由表,距離矢量路由協(xié)議是沒有大腦的,路由表從來不會自己計算,總是把別人的路由表拿來就用;但EIGRP協(xié)議并不是完全沒有大腦,它在距離矢量路由協(xié)議的基礎上卻有著那么一點點的優(yōu)化和提高,那就是從鄰居那里收到路由表之后,會經(jīng)過一些計算和比較,然后才放進路由表中使用,因此將EIGRP的身份提高到“增強的距離矢量路由協(xié)議”,雖然EIGRP是增強的距離矢量路由協(xié)議,但其根本核心還是交換路由表,EIGRP沒有任何資格稱為鏈路狀態(tài)路由協(xié)議,因為EIGRP從鄰居那里得到的路由表可能原本就是錯的,那么自己將會一錯再錯,并且害人害己,EIGRP對于網(wǎng)絡拓樸也許會有完整的認識,但不一定有正確的認識。因為EIGRP是距離矢量路由協(xié)議,所以EIGRP同樣會受水平分割(Split Horizon)的影響。

EIGRP使用了Autonomous System(AS)的概念,即使是這樣,EIGRP也算不上外部網(wǎng)關路由協(xié)議(Exterior Gateway Protocol 即EGP),因為不同AS之間,EIGRP無法傳遞路由信息,所以EIGRP依然是個內(nèi)部網(wǎng)關路由協(xié)議(Interior Gateway Protocol,即IGP)。AS是基于接口定義的,一臺EIGRP路由器可以屬于多個AS。

EIGRP擴展了對大型網(wǎng)絡的支持,不再像RIP那樣只支持最大跳數(shù)15跳,而是擴展到了最大支持255跳,但默認情況下最大跳數(shù)為100跳。

EIGRP支持 Classless Interdomain Routing (CIDR)和Variable-Length Subnet Masks (VLSMs),但默認也
會自動匯總,該功能可以手工關閉, EIGRP還支持手工匯總路由信息,并且手工匯總沒有任何條件限制,可以匯總到任意掩碼長度。自動匯總和手工匯總與RIP相似,匯總是針對發(fā)出的路由有效,也就是對其它路由器生效,是對其它路由器的路由表生效。

EIGRP支持認證,并且只支持MD5認證;支持通過Offset list來增加路由的metric,只可以增加,不可以減少;EIGRP也支持Passive-Interface(被動接口),但EIGRP的被動接口與RIP不同,RIP的被動接口不向外發(fā)路由,但可以接收路由,而EIGRP的被動接口不接收也不發(fā)送路由。

EIGRP并不會周期性更新路由表,而采用增量更新,即只在路由有變化時,才會發(fā)送更新,并且只發(fā)送有變
化的路由信息;有時EIGRP并不知道鄰居的路徑是否還依然有效,并且路由沒有超時。

EIGRP自己內(nèi)部路由的管理距離(Ddministrative Distance)為90,而從外部重分布進EIGRP的管理距離為170。

EIGRP支持非等價負載均衡,最多支持6條,默認為4條,但非等價負載均衡功能默認為關閉狀態(tài)。

EIGRP Metric

EIGRP使用多種參數(shù)計算去往目標網(wǎng)絡的Metric值,包括帶寬(Bandwidth)、延遲(delay)、可靠性(reliability)、負載(loading)、最大傳輸單元(MTU),這5個參數(shù)分別使用K值來表示,即K1、K2、K3、K4、K5,所以如果兩臺EIGRP路由器之間的5個K值不同,則代表雙方計算Metric值的方法不同;無論是EIGRP還是其它協(xié)議,在需要使用帶寬計算Metric時,只計算接口出方向的帶寬,而接口進方向的是不計算在內(nèi)的,也就是一條鏈路上,只有一個出接口的帶寬會被計算,而進接口的帶寬是被忽略的,三條鏈路中,帶寬分別是100 Mbit/s、10 Mbit/s、1 Gbit/s、雖然有條鏈路的帶寬可達1 Gbit/s,但我們都知道,從源到目標的帶寬最快也始終不超過最低帶寬10 Mbit/s,永遠不可能達到1 Gbit/s,所以從源到目的的路徑中,只有最低帶寬最終決定傳輸時的帶寬,而某條鏈路的高帶寬是沒有意義的,所以在EIGRP的Metric計算中,只需要計算從源到目標的最低帶寬即可,但是經(jīng)過各個接口的延遲卻是要累加的。

EIGRP在計算Metric時,使用K值來控制整個計算公式,公式如下:

公式中的帶寬為1000 0000除以鏈路中的最小帶寬,帶寬單位為Kbit,延遲為鏈路中的延遲之和除以10,延遲單位為 ms(毫秒);
默認情況下,5個K值的取值分別為: K1 = 1, K2 = 0, K3 = 1, K4 = K5 =0,由于K5=0,由此一來,造成上面的公式算出來的最終結(jié)果為0,所以當K5=0時,必須將其簡化,變成如下:

正因為默認5個K值的取值分別為: K1 = 1, K2 = 0, K3 = 1, K4 = K5 =0,所以默認EIGRP的計算公式為:

注:此公式為EIGRP默認計算公式,改變K值,將影響Metric值的計算公式。

EIGRP鄰居

EIGRP使用了鄰居的概念,EIGRP的路由表并不會像RIP那樣通過組播或廣播向網(wǎng)絡中發(fā)送,EIGRP只向鄰居發(fā)送路由表,并且是使用單播向鄰居發(fā)送路由表,如果要在EIGRP之間交換路由表,必須成為鄰居,不同AS不能成為鄰居,EIGRP只在直連網(wǎng)絡中發(fā)現(xiàn)和建立鄰居。

EIGRP路由器之間的鄰居關系通過Hello包來發(fā)現(xiàn)和維護,EIGRP會將自己全部的路由表發(fā)給所有鄰居;路由器上啟動EIGRP之后,就會使用組播地址224.0.0.10在相應接口上發(fā)送Hello包,EIGRP會使用一張單獨的表來記錄哪些路由器是自己的鄰居,稱為鄰居表,只要收到Hello包,便將對方列為自己的鄰居,并且寫入鄰居表,EIGRP會將鄰居的地址寫在Hello包中,由此可見,EIGRP路由器雙方可能一方認為另外一方是自己的鄰居,而另外一方卻不認為對方是鄰居,例如自己收到了另一方的Hello包,認為對方是鄰居,而對方?jīng)]有收到或過濾了自己的Hello包,所以如果EIGRP要形成雙向鄰居,只有在雙方都發(fā)現(xiàn)對方的Hello包中列出自己的地址才行,但思科卻沒有這樣設計。

在EIGRP斷開或進程關閉時,會發(fā)送Goodbye Message結(jié)束鄰居關系。

EIGRP會定期向網(wǎng)絡中發(fā)送Hello包,發(fā)送的間隔會因為鏈路帶寬的不同而不同,間隔時間分為5秒和60秒:

Hello間隔60秒

所有帶寬低于或等于1544 Kbit/s的,如T1,F(xiàn)rame Relay multipoint接口,ATM multipoint接口,ISDN BRI接口等等。

Hello間隔5秒

所有帶寬大于1544 Kbit/s的,如以太網(wǎng)接口,F(xiàn)rame Relay point-to-point子接口,and ATM point-to-point子接口,ISDN PRI接口。

如果超過一定的時間沒有收到鄰居的Hello包,便認為鄰居無效,稱為EIGRP Hold-time,默認為Hello間隔的3倍,也就是分別為15秒和180秒,Hello間隔時間和Hold-time都可以手工調(diào)整,但是如果調(diào)整了Hello間隔時間,Hold-time并不會自動調(diào)整到相應的3倍,而是保持不變。

EIGRP的Hello間隔時間和Hold-time是無法通過命令直接查看的,只能通過現(xiàn)象來推斷,如:

router# show ip eigrp neighbor

IP-EIGRP neighbors for process 1

H   Address        Interface   Hold Uptime   SRTT   RTO  Q  Seq  Type

 (sec)         (ms)       Cnt Num

1   10.1.1.2       Et1           11 12:00:56   12   300  0  620

0   10.1.2.2       S0           172 12:00:58   17   200  0  645

Hold欄的值永遠不會超過Hold-time,也永遠不會低于Hold-time減Hello間隔,否則就是不正常,或者Hello包有丟失。

如果Hold欄的值范圍是10-15,則證明Hello間隔是5秒,Hold-time是15秒。

如果Hold欄的值范圍是120-180,則證明Hello間隔是60秒,Hold-time是180秒。

注:

★Hello間隔和Hold-time可以手工在接口上配置,如果發(fā)現(xiàn)不正常,請檢查接口上是否手工配置了時間參數(shù)。

★EIGRP雙方Hello間隔和Hold-time不一致也可以建立鄰居關系,接口上的Secondary地址不能建鄰居,所有EIGRP的數(shù)據(jù)包源地址總是接口的Primary地址。

★在Frame-Relay環(huán)境下,需要在命令frame-relay map 帶broadcast關鍵字。

EIGRP雙方必須滿足以下三個條件,才能建立鄰居:

★1.雙方在相同AS

★2.雙方Hello包正常,即雙方接口Primary地址在同網(wǎng)段。

★3.雙方計算Metric值方法相同,即雙方K1 K2 K3 K4 K5值相同。

在一個穩(wěn)定的EIGRP鄰居之間,只有Hello包在傳遞,EIGRP支持的鄰居數(shù)量,并沒有限制,但要視內(nèi)存大小,CPU能力,路由條目數(shù)量,拓樸復雜程度,網(wǎng)絡穩(wěn)定性而定。

EIGRP數(shù)據(jù)包

在EIGRP協(xié)議中,總共會使用5種類型的數(shù)據(jù)包,分別為Hello、Update、 Query、Reply、Ack,下面介紹各種數(shù)據(jù)包的功能與用途:

  • Hello

是用來發(fā)現(xiàn)和維護EIGRP鄰居關系的,目標地址為224.0.0.10,Hello包在鄰居收到后不需要確認。

  • Update

發(fā)給鄰居的路由表,通過單播發(fā)送Update數(shù)據(jù)包,鄰居收到后必須回復確認消息。

  • Query

當路由信息丟失并沒有備用路由時,使用Query數(shù)據(jù)包向鄰居查詢,鄰居必須回復確認。

  • Reply

是對鄰居Query數(shù)據(jù)包的回復,也需要鄰居回復確認。

  • Ack

是對收到的數(shù)據(jù)包的確認,告訴鄰居自己已經(jīng)收到數(shù)據(jù)包了,收到Ack后,不需要再對Ack做回復,因為這是沒有意義的,并且可能造成死循環(huán)。

由以上可以看出,5種數(shù)據(jù)包中,Update、Query、Reply在對方收到后,都需要回復確認,這些數(shù)據(jù)包是可靠的,回復是發(fā)送Ack;而Hello和Ack,是不需要回復的,因此被認為不可靠。

EIGRP運行過程:

兩臺路由器A和B啟動EIGRP

1.路由器A啟動EIGRP后,在相應接口上向外發(fā)送Hello包。

2.B收到A發(fā)來的Hello包后,將A列入自己的鄰居表,然后向A單播發(fā)送Update,也就是向A單播發(fā)送自己的路由表;EIGRP路由器在收到一個Hello包時,就直接向?qū)Ψ桨l(fā)送路由表了,B后面的Hello包就會寫明路由器A已是自己的鄰居。

3.A在收到B的Update之后,向B發(fā)送Ack通知對方已經(jīng)收到Update,然后再向B單播發(fā)送自己的Update,在A收到B的Hello包后,會發(fā)現(xiàn)里面列出了自己的地址,雙方都看見對方Hello中列出自己后,雙向鄰居關系便建立成功。

4.B在收到A的Update之后,向A發(fā)送Ack確認Update已收到。

5.A和B都將收到的Update放入拓樸數(shù)據(jù)庫中,計算路由表。

EIGRP拓樸

雖然EIGRP是距離矢量路由協(xié)議,但是當從鄰居收到路由后,并不是不經(jīng)過任何計算就直接放進路由表中使用,EIGRP會將從鄰居收到的路由全部放入拓樸數(shù)據(jù)庫(Topology Database)中,經(jīng)過DUAL的無環(huán)算法計算之后,才將最優(yōu)的路由放入路由表中;因為EIGRP可能有多個鄰居,也可能從多個鄰居收到相同的路由,所以需要從中選中最優(yōu)路由放入路由表中使用,而不是最優(yōu)的路由則放在拓樸數(shù)據(jù)庫中備份,等路由表中的路由失效后,便從拓樸數(shù)據(jù)庫中查找備用路由繼續(xù)放入路由表中使用。

當EIGRP將從鄰居收到的路由信息放入拓樸數(shù)據(jù)庫之后,要經(jīng)過DUAL算法選出最優(yōu)路由

Reported Distance(RD)

因為EIGRP拓樸數(shù)據(jù)庫中的信息就是從鄰居收到的路由表,目的地對于鄰居來說肯定是可達的,Reported Distance是表示鄰居到達目的地的Metric值是多少。在上圖中,R1從R2和R3收到去往目標網(wǎng)絡的路由后,R2去往目標網(wǎng)絡的Metric值對于R1來說就是RD,同樣,R3去往目標網(wǎng)絡的Metric值對于R1來說也是RD。

Feasible distance(FD)

當從鄰居收到路由信息后,RD只是鄰居去往目的地的Metric,而自己去往目的地還得在RD的基礎上,再加自己到鄰居的這段距離,所以自己到目的地的真正Metric應該是自己到鄰居這段距離的Metric加上RD,但是拓樸數(shù)據(jù)庫中可能存在多條去往目的地的路徑,而被放入路由表的最優(yōu)的那條被稱為Feasible distance(FD)。在上圖中,如果R1選擇從R2去往目的地

Feasible Successor(FS)

因為拓樸數(shù)據(jù)庫中可能存在多條路徑可以到達目的地,但被選為FD的最優(yōu)的那條被放入路由表中使用,而留在拓樸數(shù)據(jù)庫中的備用路由稱為Feasible Successor(FS)

Feasibility Condition (FC)

拓樸數(shù)據(jù)庫中的FS最多可以有6條,如果一個EIGRP有8個鄰居可以去往目的地,選出一條FD放入路由表之后,并不是其它7條全部都可以存放于拓樸數(shù)據(jù)庫,拓樸數(shù)據(jù)庫最多只能有6條(其中已經(jīng)包含F(xiàn)D),也并不是一定會有6條被放入拓樸數(shù)據(jù)庫,因為要存放于拓樸數(shù)據(jù)庫,是必須達到一定條件的,稱為Feasibility Condition (FC),就是鄰居通告的RD必須小于FD,這個鄰居的路徑才能存在于拓樸數(shù)據(jù)庫

EIGRP負載均衡

EIGRP可以支持非等價負載均衡,最多支持6條,默認為4條,但非等價負載均衡功能默認為關閉狀態(tài)。EIGRP只能將拓樸數(shù)據(jù)庫中的備用鏈路放入路由表執(zhí)行負載均衡,拓樸數(shù)據(jù)庫中可能有多條備用鏈路,而且多條鏈路的Metric值也可能各不相同,當啟用非等價負載均衡時,需要定義什么樣的Metric范圍可以用來負載均衡,這需要通過控制Metric的變量(Variance)值來控制,具體方法如下:

路由表中正在使用的最優(yōu)路由的Metric值為FD,而拓樸數(shù)據(jù)庫中備用路由的Metric值肯定是大于FD的,Variance值通過控制備用鏈路的Metric值與FD的倍數(shù)關系來控制,就是Variance值取多少,備用鏈路的Metric在FD的Variance值倍數(shù)范圍內(nèi)就有資格執(zhí)行負載均衡,例如當前FD為20,3條備用鏈路Metric分別為30,50,55,如果Variance值取2,那么Metric值范圍在20×2=40的鏈路都可以執(zhí)行負載均衡,所以Metric值為30的鏈路可以執(zhí)行負載均衡,而Metric值為50和55的卻不可以,因為大于40,只有當Variance值取3時,Metric值范圍在20×3=60的鏈路才可以執(zhí)行負載均衡,所以Metric值為50和55只有在Variance值取3時才可以執(zhí)行負載均衡。

注: Variance值默認取值為1,也就是不執(zhí)行非等價負載均衡,但會執(zhí)行等價負載均衡。

并不是所有在Variance值所定義的Metric值范圍內(nèi)的鏈路一定會執(zhí)行負載均衡,這需要根據(jù)設置的最大負載均衡條數(shù)來決定,最多為6條。

因為Metric值越大的路由,表示其鏈路況越低下,而Metric值越小的路由,其鏈路況越優(yōu)秀,這是一個成反比的關系,所以在執(zhí)行負載均衡時,我們更希望流量也能因Metric值的大小,成反比例傳輸,鏈路好的傳遞更多的數(shù)據(jù)包,而鏈路差的則傳遞更少的數(shù)據(jù)包,

通過配置命令traffic-share balanced即可,該功能默認為開啟狀態(tài)

EIGRP Stuck In Active (SIA)

在EIGRP中,正常的路由稱為Passive Route;因為EIGRP可能會從多個鄰居處收到相同的路由,默認只有最優(yōu)的路由會被放入路由表中使用,其它符合FC條件的會放入拓樸數(shù)據(jù)庫中備份,當路由表中最優(yōu)路由丟失時,EIGRP會從拓樸數(shù)據(jù)庫中查詢備用路由,如果當最優(yōu)路由丟失后,拓樸數(shù)據(jù)庫中又沒有備用路由,在這種情況下,EIGRP會向所有鄰居發(fā)送Query,試圖查詢鄰居是否有到目的地的路由信息,并且發(fā)送Query后,該路由被標記為Active route ,該狀態(tài)稱為Stuck In Active (SIA);向鄰居發(fā)送的Query是必須回復Ack確認的,當鄰居收到Query之后,就會查詢自己的路由表,如果有,就向鄰居回復Reply,如果最終鄰居的路由表和拓樸表中都沒有相應路由條目,就會再向自己的所有鄰居發(fā)出Query,雖然Query是向所有鄰居發(fā)出的,但它不會發(fā)向原本最優(yōu)路徑的下一跳,也就是Query不會發(fā)向該路由的Successor,因為正是Successor路丟失了,才問自己要路由的,自己再反過去問對方要路由,是沒有理由的。不可思議的事情是,如果發(fā)送Query的路由器在3分鐘內(nèi)沒有收到鄰居的回復,就會清除與該鄰居的EIGRP會話,可想而知,EIGRP路由丟失后,必須要求鄰居提供路由,如果不提供,它就會六親不認,3分鐘就和你翻臉,反目成仇,和你斷絕任何關系,很費解為什么思科會將EIGRP設計成這樣子,EIGRP的優(yōu)勢分析來分析去,只有一個非等價負載均衡,和所謂的快速收斂,再無別的,至少本人是這么認為的。

造成EIGRP路由器無法回復鄰居Query的原因有很多,如:CPU繁忙,內(nèi)存錯誤,數(shù)據(jù)包丟失,或者是單向鏈路故障等等。

為了杜絕EIGRP在SIA狀態(tài)時,由于鄰居沒有提供路由而誤將與鄰居的會話清除,思科推薦解決方法為調(diào)整SIA狀態(tài)時等待回復的時間,默認為3分鐘,其實這種改時間,不是解決總是的根本,這只是在拖延時間而已,會話總是要斷開的,不知道這個是否會被高手利用而成為攻擊EIGRP的漏洞。另外的解決方法就是將相應路由器配置為EIGRP末節(jié)(Stub)路由器,EIGRP在SIA狀態(tài)是不會向Stub鄰居發(fā)送Query的,但Stub鄰居向外發(fā)送路由的功能有所限制,默認只能發(fā)送直連和匯總路由,但可以調(diào)整,也可以調(diào)整為不向外發(fā)送任何路由。

相關文章

最新評論