它本身自帶的解決方案就有好幾種,計數到無(wú)窮大,毒性逆轉,水平分割,帶有毒性逆轉的水平分割,等等。
水平分割,即不接收通告路由器從本地路由器學(xué)習到的路由,我從你處學(xué)習到的路由竟然是你從我這邊學(xué)習到的,這樣必然形成環(huán)路,所以思科路由器是默認開(kāi)啟水平分割的。關(guān)于毒性逆轉,接收到一條路由條目,直接將其度量值記為16,并廣播周邊路由器,其它路由器收到該信息時(shí)即知道不可達,就不會(huì )再轉發(fā)這條路由信息了。
計數到無(wú)窮大,就是,從你那邊過(guò)來(lái),跳數加1,我這邊過(guò)去又加1,如此循環(huán)下去,等到跳數加到16時(shí),就不會(huì )再傳遞這條路由了。帶有毒性逆轉的水平分割,就是度量值為16后,單方向廣播后,就不會(huì )再傳遞這條路由信息了。
我個(gè)人理解,這幾種方式,應該是平行的,路由形成環(huán)路后,路由器自己解決問(wèn)題,它可能利用其中的一種或幾種方法。反正它把問(wèn)題解決了,具體當時(shí)用的是什么方法,是根據具體情況確定的。
RIP的防環(huán)機制
1、水平分割:A、水平分割:從接口收到的路由信息,不再從本接口發(fā)出。 B、毒性逆轉的水平分割:從本接口收到的路由信息,轉發(fā) 表示為16跳不可達。(防路由和IP包的環(huán)路) 2、最大跳數:最大跳數為15跳,16條不可達。(防路由環(huán)路) 3、抑制計時(shí)器:A、保持失效計時(shí)器缺省為:180秒 B、刪除計時(shí)器:缺省為240秒。(在IP包上防止環(huán)路) 更新時(shí)間:缺省為30秒。異步更新為25~35秒,同步更新為25。5~30秒。 4、觸發(fā)更新。 5、最大跳數(終極武器)。 以上防環(huán)路機制全部默認開(kāi)啟。
a. RIP協(xié)議有兩種更新機制:
① 定期更新
② 觸發(fā)更新。
b. RIP路由器總是會(huì )每隔30秒(默認值為30秒,可以修改,而且也可能與設置值有些偏差)通過(guò)UDP 520端口以RIP廣播應答方式向鄰居路由器發(fā)送的一個(gè)路由更新包,包中包括了本路由器上的完整的路由表(除了被“水平分割”機制抑制的路由表項),用來(lái)向鄰居路由器提供路由更新,同時(shí)用來(lái)向鄰居路由器證明自己的存在。RIP的路由表中主要包括“目的網(wǎng)絡(luò )”、“下一跳地址”和“距離”這三個(gè)字段
防止路由環(huán)路的方法:
① 路由毒化。
② 水平分割。
③ 毒性逆轉。
④ 定義最大跳數為16跳。
⑤ 抑制時(shí)間,和路由毒化結合使用。
⑥ 觸發(fā)更新。
每30s以應答消息的形式發(fā)送一個(gè)完整路由表到鄰居,路由器收到后設置一個(gè)180s的超時(shí)計時(shí)器(Timeout Timer),Cisco稱(chēng)為Invalid Timer。
如果在180s內沒(méi)有任何更新消息,則將跳數置為16(不可達),并宣告。直240s后刷新計時(shí)器(Flush Timer)將其刪除。
Cisco還使用了第三種計時(shí)器抑制計時(shí)器(Holddown Timer),Router接收到度量更高的路由后的180s內不會(huì )用使用接收到的路由更新路由表,為收斂提供額外時(shí)間。
(轉載)
一共有六種措施:
1、最大跳計數
距離矢量路由算法可以通過(guò)IP頭中的生存時(shí)間(TTL)來(lái)糾錯,但路由環(huán)路問(wèn)題可能首先要求無(wú)窮計數。為了避免這個(gè)延時(shí)問(wèn)題,距離矢量協(xié)議定義了一個(gè)最大值,這個(gè)數字是指最大的度量值(如rip協(xié)議最大值為16),比如跳數。也就是說(shuō),路由更新信息可以向不可到達的網(wǎng)絡(luò )的路由中的路由器發(fā)送15次,一旦達到最大值16,就視為網(wǎng)絡(luò )不可到達,存在故障,將不再接受來(lái)自訪(fǎng)問(wèn)該網(wǎng)絡(luò )的任何路由更新信息。
2、水平分割
一種消除路由環(huán)路并加快網(wǎng)絡(luò )收斂的方法是通過(guò)叫做“水平分割”的技術(shù)實(shí)現的。其規則就是不向原始路由更新的方向再次發(fā)送路由更新信息(個(gè)人理解為單向更新,單向反饋)。比如有三臺路由器ABC,B向C學(xué)習到訪(fǎng)問(wèn)網(wǎng)絡(luò )10.4.0.0的路徑以后,不再向C聲明自己可以通過(guò)C訪(fǎng)問(wèn)10.4.0.0網(wǎng)絡(luò )的路徑信息,A向B學(xué)習到訪(fǎng)問(wèn)10.4.0.0網(wǎng)絡(luò )路徑信息后,也不再向B聲明,而一旦網(wǎng)絡(luò )10.4.0.0發(fā)生故障無(wú)法訪(fǎng)問(wèn),C會(huì )向A和B發(fā)送該網(wǎng)絡(luò )不可達到的路由更新信息,但不會(huì )再學(xué)習A和B發(fā)送的能夠到達10.4.0.0的錯誤信息。
3、路由中毒
定義最大值在一定程度上解決了路由環(huán)路問(wèn)題,但并不徹底,可以看到,在達到最大值之前,路由環(huán)路還是存在的。為此,路由中毒就可以徹底解決這個(gè)問(wèn)題。其原理是這樣的:假設有三臺路由器ABC,當網(wǎng)絡(luò )10.4.0.0出現故障無(wú)法訪(fǎng)問(wèn)的時(shí)候,路由器C便向鄰居路由發(fā)送相關(guān)路由更新信息,并將其度量值標為無(wú)窮大,告訴它們網(wǎng)絡(luò )10.4.0.0不可到達,路由器B收到毒化消息后將該鏈路路由表項標記為無(wú)窮大,表示該路徑已經(jīng)失效,并向鄰居A路由器通告,依次毒化各個(gè)路由器,告訴鄰居10.4.0.0這個(gè)網(wǎng)絡(luò )已經(jīng)失效,不再接收更新信息,從而避免了路由環(huán)路。
4、反向中毒(也稱(chēng)毒化逆轉)
結合上面的例子,當路由器B看到到達網(wǎng)絡(luò )10.4.0.0的度量值為無(wú)窮大的時(shí)候,就發(fā)送一個(gè)叫做毒化逆轉的更新信息給C路由器,說(shuō)明10.4.0.0這個(gè)網(wǎng)絡(luò )不可達到,這是超越水平分割的一個(gè)特列,這樣保證所有的路由器都接受到了毒化的路由信息。
5、控制更新時(shí)間(即抑制計時(shí)器)
抑制計時(shí)器用于阻止定期更新的消息在不恰當的時(shí)間內重置一個(gè)已經(jīng)壞掉的路由。抑制計時(shí)器告訴路由器把可能影響路由的任何改變暫時(shí)保持一段時(shí)間,抑制時(shí)間通常比更新信息發(fā)送到整個(gè)網(wǎng)絡(luò )的時(shí)間要長(cháng)。當路由器從鄰居接收到以前能夠訪(fǎng)問(wèn)的網(wǎng)絡(luò )現在不能訪(fǎng)問(wèn)的更新后,就將該路由標記為不可訪(fǎng)問(wèn),并啟動(dòng)一個(gè)抑制計時(shí)器,如果再次收到從鄰居發(fā)送來(lái)的更新信息,包含一個(gè)比原來(lái)路徑具有更好度量值的路由,就標記為可以訪(fǎng)問(wèn),并取消抑制計時(shí)器。如果在抑制計時(shí)器超時(shí)之前從不同鄰居收到的更新信息包含的度量值比以前的更差,更新將被忽略,這樣可以有更多的時(shí)間讓更新信息傳遍整個(gè)網(wǎng)絡(luò )。
6、觸發(fā)更新
正常情況下,路由器會(huì )定期將路由表發(fā)送給鄰居路由器。而觸發(fā)更新就是立刻發(fā)送路由更新信息,以響應某些變化。檢測到網(wǎng)絡(luò )故障的路由器會(huì )立即發(fā)送一個(gè)更新信息給鄰居路由器,并依次產(chǎn)生觸發(fā)更新通知它們的鄰居路由器,使整個(gè)網(wǎng)絡(luò )上的路由器在最短的時(shí)間內收到更新信息,從而快速了解整個(gè)網(wǎng)絡(luò )的變化。但這樣也是有問(wèn)題存在,有可能包含更新信息的數據包被某些網(wǎng)絡(luò )中的鏈路丟失或損壞,其他路由器沒(méi)能及時(shí)收到觸發(fā)更新,因此就產(chǎn)生了結合抑制的觸發(fā)更新,抑制規則要求一旦路由無(wú)效,在抑制時(shí)間內,到達同一目的地有同樣或更差度量值的路由將會(huì )被忽略,這樣觸發(fā)更新將有時(shí)間傳遍整個(gè)網(wǎng)絡(luò ),從而避免了已經(jīng)損壞的路由重新插入到已經(jīng)收到觸發(fā)更新的鄰居中,也就解決了路由環(huán)路的問(wèn)題。
其中的路由中毒和反向中毒在提示一下:
路由中毒:是指在路由信息在路由表中失效時(shí),先將度量值變?yōu)闊o(wú)窮大,而不是馬上從路由表中刪掉這條路由信息。(這句話(huà)要理解,如RIP協(xié)議中,其度量值變?yōu)?6,意味著(zhù)路由不可達)再將其信息發(fā)布出去,這樣相鄰的路由器就得知這條路由己無(wú)效了.
毒性反轉與路由中毒概念是不一樣的,它是指收到路由中毒消息的路由器,不遵守水平分割原則將中毒消息轉發(fā)給所有的相鄰路由器,也包括發(fā)送中毒信息的源路由器,也就是通告相鄰路由器這條路由信息己失效了,主要目的是達到快速收斂的目的。
為了解決環(huán)路問(wèn)題,IETF提出了分割范圍方法,即路由器不可以通過(guò)它得知路由的接口去宣告路由。分割范圍解決了兩個(gè)路由器之間的路由環(huán)路問(wèn)題,但不能防止3個(gè)或多個(gè)路由器形成路由環(huán)路。觸發(fā)更新是解決環(huán)路問(wèn)題的另一方法,它要求路由器在鏈路發(fā)生變化時(shí)立即傳輸它的路由表。這加速了網(wǎng)絡(luò )的聚合,但容易產(chǎn)生廣播泛濫。總之,環(huán)路問(wèn)題的解決需要消耗一定的時(shí)間和帶寬。若采用RIP協(xié)議,其網(wǎng)絡(luò )內部所經(jīng)過(guò)的鏈路數不能超過(guò)15,這使得RIP協(xié)議不適于大型網(wǎng)絡(luò )。
RIP的防環(huán)機制:1、水平分割:A、水平分割:從接口收到的路由信息,不再從本接口發(fā)出。
B、毒性逆轉的水平分割:從本接口收到的路由信息,轉發(fā) 表示為16跳不可達。(防路由和IP包的環(huán)路)
2、最大跳數:最大跳數為15跳,16條不可達。(防路由環(huán)路)
3、抑制計時(shí)器:A、保持失效計時(shí)器缺省為:180秒
B、刪除計時(shí)器:缺省為240秒。(在IP包上防止環(huán)路)
更新時(shí)間:缺省為30秒。異步更新為25~35秒,同步更新為25。5~30秒。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:2.639秒