IGP:ISIS的幾種快速收斂特性
ISIS目前作為骨干網(wǎng)唯一的路由協(xié)議,收斂速度是非常值得關注的。而普通的IGP路由收斂方式為用HELLO報文檢測鏈路失效,周期性傳遞LSA的方式(在收到整個LSA的時候再向鄰居擴散)。所以在網(wǎng)絡規(guī)模擴大的時候,LSDB隨之增大,SPF的計算時間也會相當漫長。為了改進計算方法,我們設計了如下幾種改進方案。
I-SPF(Incremental SPF)
I-SPF是指增量路由計算,顧名思義它每次只對變化的一部分路由進行計算,而不是對全部路由重新計算。在ISO-10589中定義使用Dijkstra算法進行路由計算。當網(wǎng)絡拓撲中有一個節(jié)點發(fā)生變化時,這種算法需要重新計算網(wǎng)絡中的所有節(jié)點,計算時間長,占用過多的CPU資源,影響整個網(wǎng)絡的收斂速度。
I-SPF改進了這個算法,除了***次計算時需要計算全部節(jié)點外,每次只計算影響的節(jié)點,而***生成的最短路徑樹SPT與原來的算法所計算的結(jié)果相同,大大降低了CPU的占用率,提高了網(wǎng)絡收斂速度。
PRC(Partial Route Calculation)
部分路由計算PRC的原理與I-SPF相同,都是只計算變化的那一部分。但PRC不需要計算節(jié)點路徑,而是根據(jù)I-SPF算出來的SPT來更新葉子(路由)。
在路由計算中,路由代表葉子,路由器則代表節(jié)點。如果I-SPF計算后的SPT改變,PRC會只處理那個變化的節(jié)點上的所有葉子;如果經(jīng)過I-SPF計算后的SPT并沒有變化,則PRC只處理變化的葉子信息。
比如一個節(jié)點使能一個IS-IS接口,則整個網(wǎng)絡拓撲的SPT是不變的,這時PRC只更新這個節(jié)點的接口路由,從而節(jié)省CPU占用率。
PRC和I-SPF配合使用可以將網(wǎng)絡的收斂性能進一步提高,它是原始SPF算法的改進,所以已經(jīng)代替了原有的算法。
LSP快速擴散
為了加快整個網(wǎng)絡的收斂速度,當IS-IS收到其它路由器發(fā)來的LSP時,如果此LSP比自己LSDB中的要新,按原來RFC協(xié)議的實現(xiàn),則是用一個定時器,定時將LSDB內(nèi)的LSP擴散出去,所以LSDB的同步會比較緩慢。
LSP快速擴散特性改進了這種方式,配置此特性的路由器收到一個或多個比較新的LSP時,在路由計算之前,先將小于指定數(shù)目的LSP擴散出去,加快LSDB的同步過程。這種方式在很大程度上可以提高整個網(wǎng)絡的收斂速度。
智能定時器
改進了路由算法后,如果觸發(fā)路由計算的間隔較長,同樣會影響網(wǎng)路的收斂速度。使用毫秒級定時器可以縮短這個間隔時間,但如果網(wǎng)絡變化比較頻繁,又會造成過度占用CPU資源。SPF智能定時器既可以對少量的外界突發(fā)事件進行快速響應,又可以避免過度的占用CPU。
通常情況下,一個正常運行的IS-IS網(wǎng)絡是穩(wěn)定的,發(fā)生大量的網(wǎng)絡變動的幾率很小,IS-IS路由器不會頻繁的進行路由計算,所以***次觸發(fā)的時間可以設置的非常短(毫秒級)。如果拓撲變化比較頻繁,智能定時器會隨著計算次數(shù)的增加,間隔時間也會逐漸延長,避免占用大量的CPU資源。
與SPF智能定時器類似的還有LSP生成智能定時器。在IS-IS協(xié)議中,當LSP生成定時器到期時,系統(tǒng)會根據(jù)當前拓撲重新生成一個自己的LSP。原有的實現(xiàn)機制是采用間隔時間定長的定時器,不能同時滿足快速收斂和低CPU占用率的需要。為此將LSP生成定時器也設計成智能定時器,使其可以對于突發(fā)事件(如接口Up/Down)快速響應,加快網(wǎng)絡的收斂速度。同時,當網(wǎng)絡變化頻繁時,智能定時器的間隔時間會自動延長,避免過度占用CPU資源。
原文鏈接:http://ender.joe.blog.163.com/blog/static/129479253201372651722356/