專利名稱:開放最短路徑優先路由協議的監測與分析系統及工作方法
技術領域:
本發明涉及一種用于互聯網的開放最短路徑優先OSPF路由協議的監測與分析系統及其工作方法,屬于網絡互連通信技術領域。
背景技術:
隨著Internet規模的指數增長,其帶寬容量和底層拓撲結構都發生了巨大變化,網絡結構日益復雜,網絡能力不斷增強。現在的IP網絡不僅承載了大量的HTTP、FTP等傳統數據業務,VOIP、IPTV等流媒體業務也在高速持續增長。電信運營商需要在IP網絡上承載電信業務,大力開展NGI/NGN網絡建設。眾所周知,網絡運行的魯棒性和可靠性與高效、穩定的路由密切相關,然而在大型運營網絡中,尤其是網絡處于較大流量壓力下,必須對鏈路狀態的變化、路由不穩定的頻率進行實時監測統計,盡快發現網絡故障,提高網絡的效率,降低網絡運維成本。
但是,在目前的IP網絡運行中,基本沒有對路由器進行監測和分析,在路由故障的監測方面技術手段非常有限。國外的一些大型運營商(如AT&T、Sprint等)已經對路由監測開展了比較深入研究,Agilent、Spirent公司還開發了相關測試儀表,國內清華大學在協議的被動測試方面也做了大量研究和開發。
從采集路由變化信息的方式來看,當前常用的技術有兩種(1)網絡探測工具Ping和TraceRoute,在網絡中關注的節點部署主機,發起到不同節點的主動測量和收集數據,從而監測網絡端到端的路由;再對收集到的數據進行分析,得到網絡中路由的動態特性。這種方法比較簡單,只能在一定程度上提供少量反映網絡路由情況的信息,且路徑探測不全,無法探測到備用路由;再者,這種方法響應時間長。
(2)監測路由表方式通過訪問簡單網絡管理協議SNMP(Simple NetworkManagement Protocol)路由器中的路由表對象ipRouteTable,能夠分析得到網絡拓撲結構的有關信息;或者查詢開放最短路徑優先OSPF組中的相關移動IB數據也能得到網絡拓撲信息。但是由于SNMP采用輪詢機制采集數據,速度慢,不能滿足網絡實時監控的需要,而且設備商對其支持的標準不統一,可靠性比較低。
(3)鏈路狀態跟蹤直接通過SNMP的Trap跟蹤接口up/down狀態,這樣就可以不依賴OSPF消息。但是需要仿真OSPF協議構建鏈路狀態數據庫LSDB和基于LSDB計算path。
目前我國IP骨干承載網已經建成,并醞釀建立全球最大的IPv6的業務支撐網絡,還啟動了研制開發的中國下一代互聯網-CNGI項目。各電信運營商急需在互聯網上開展電信級的業務。這些都急切需要有一個穩定的路由環境來保證網絡的高效、穩定運行。但是路由性能的不穩定性減緩了這一趨勢。因此,盡快在互聯網上提供有服務質量保證的電信業務,提供一種對互聯網中的開放最短路徑優先OSPF(Open Shortest Path First)路由協議的監測與分析系統及其工作方法,就成為業內技術人員關注的焦點。
發明內容
有鑒于此,本發明的目的是提供一種互聯網的開放最短路徑優先路由協議的監測與分析系統及其工作方法,該系統利用分布式的各個監測節點模擬運行OSPF協議的路由器,通過監測網絡中路由鏈路變化信息來推測網絡中路由的運行狀態,以對網絡影響最小的方式完成路由監測;并且,能夠對多個監測節點監測到的各個區域內部的路由變化進行匯總處理,有效擴大系統的監控范圍,以適應大型電信網絡監管的需求。
為了達到上述目的,本發明提供了一種互聯網的開放最短路徑優先OSPF路由協議的監測與分析系統,其特征在于所述系統由管理節點和分布設置在被監測網絡中各個自治域系統AS的一個或多個監測節點所組成,其中監測節點,由鏈路狀態信息采集分析模塊和存儲路由狀態信息的鏈路信息數據庫所組成,用作開放最短路徑優先OSPF網絡中運行OSPF協議的仿真路由器,從其鄰接路由器接收所在區域的各種鏈路狀態和路由變化信息,但不產生自身的通告信息,以盡量減少該監測節點對OSPF網絡運行的影響;對采集的鏈路信息進行分析、處理后,將該所在區域內的路由變化信息發送到管理節點;管理節點,由順序連接的路由變更信息匯總模塊、路由拓撲管理模塊、路由拓撲呈現模塊和節點與鏈路狀態信息數據庫所組成;根據多個監測節點上報的路由變更信息,匯總、整理出整個自治域的路由變更信息,進而構建和呈現網絡邏輯連接與反映路由變更狀況的拓撲圖,并在界面上完成路由拓撲及路由動態變化的可視化呈現,以支持大型復雜多區域網絡的路由性能監測。
所述監測節點的路由狀態信息采集分析模塊負責收集網絡中鄰接路由器對鏈路狀態變化所洪泛的鏈路狀態通告LSA消息,更新本地鏈路狀態信息數據庫LSDB,并對LSA內容進行分析,提取鏈路狀態變更信息,分析路由變更信息,再將分析結果發送到管理節點。
所述監測節點所采集、分析的在區域內洪泛的鏈路狀態通告LSA消息中包括類型1的router_lsa,用于根據router_lsa內容得到產生該lsa消息節點的鄰居,再根據其內容變化得到網絡鏈路變更狀況;類型2的network_lsa,用于根據network_lsa消息中相連路由器的變化得到網絡中是否有新的節點加入或撤出;類型3、4、5的鏈路狀態統計消息,前兩種用于分析區域間路由變動信息,后者用于分析獲得區域與自治域外部關聯的路由變化。
所述系統在網絡中分布設置的監測節點的數量多少取決于網絡規模的大小或組網的不同需求,但在網絡中的骨干區域必須設置監測節點,這些監測節點分別獨立監測其所關注的網絡自治域中的路由變更信息;所述管理節點和監測節點可以運行于不同的主機,也可以根據需要駐留在同一主機內。
為了達到上述目的,本發明還提供了一種互聯網的開放最短路徑優先路由協議的監測與分析系統的工作方法,其特征在于分布在被監測網絡中的各個區域的監測節點收集網絡中的路由通告信息LSA,采用最短路由算法SPF計算各個節點的最優路徑樹,并判斷是否發生路由變更事件,再將搜集到的路由變更事件的相關信息匯總到管理節點;管理節點對各個監測節點上報的路由變更信息進行整合處理,并維護兩級拓撲圖反映基本連接性的網絡邏輯拓撲圖及在其基礎上反映路由變更的路由變更圖,再根據監測節點反映的路由變更信息對拓撲圖進行實時更新和可視化呈現;該方法包括下列步驟(1)監測節點收集網絡中的路由通告信息LSA,獲得路由變化信息;(2)管理節點將各個監測節點上報的路由變更信息進行整合匯總處理;(3)管理節點對網絡路由拓撲圖進行管理;(4)管理節點對路由拓撲圖進行實時更新和可視化呈現。
所述步驟(1)進一步包括下列操作(11)監測節點同步本區域內的鏈路狀態數據庫LSDB,分析該數據庫中的路由器LSA消息,獲得區域內路由器連接狀況;(12)監測節點監聽網絡中發布的LSA消息,如果監聽到未處理的新LSA消息,則將該LSA消息加入到LSDB中;如果監聽到的LSA消息是已處理過的舊LSA消息,則對數據庫中相關的LSA消息執行更新操作;(13)如果域內存在有未處理的節點,則監測節點采用dijkstra算法分別計算域內路由和/或域間路由;(14)監測節點重新采用最短路由算法計算SPF樹,并與原來的SPF樹進行比較,如果沒有變化,則返回步驟(13);如果出現變化,執行后續操作;(15)監測節點根據SPF樹生成新的路由表,再將新生成的路由表與原來的路由表進行比較,獲得所在區域內的路由變動信息。
所述步驟(13)中采用SPF算法計算SPF樹時,分為下述兩部分A.域內路由計算遍歷根據Route_LSA生成的區域內路由器節點鏈表router_list,以該鏈表的每個記錄所描述路由器的router id為根節點,分析LSDB中所有Router_LSA消息的內容,將除stub類型以外的鏈路轉化為向量形式,利用Dijstra算法,建立spf樹和按照鏈路價值正序排列的candidate鏈表;每次均選取鏈表的頭部記錄,并根據向量中含有的nexthop信息將該頭部記錄插入到spf樹中;當candidate鏈表為空時,遍歷LSDB中Router_LSA,將所有類型為stub的鏈路作為葉子節點加入到spf樹中,則完成域內路由計算;B.域間路由計算在spf樹中查詢獲得節點到區邊界路由器ABR的最短路徑,將詳細描述summarY_lsa中的區域間鏈路增加到spf樹中,同時根據類型4的summary_lsa獲得到自治域邊界路由器ASBR的最短路徑,以備域間路由計算;如果節點是虛鏈路的一個端點,存在不經過另一個虛鏈路端點到達目的鏈路的最短路徑,則修改spf樹,從而獲得域內路由;查詢獲得產生該域外部LSAAS_external_lsa消息的ASBR的最短路徑,根據轉發地址將鏈路直接加入到路由表中。
所述步驟(2)進一步包括下列操作(21)對區域內的每個ABR節點,在其他區域中尋找具有相同router id的節點,將該ABR在不同區域內的路由變更消息進行整合匯總;(22)判斷該區域內是否加入路由變更消息,如果沒有該區域的路由變更消息,則保存,以便將不同區域的路由變更信息連接起來,構建網絡拓撲;如果有該區域的路由變更消息,則將所有的路由變更信息以設定格式保存,構建路由變更圖,以供拓撲管理模塊調用。
所述步驟(3)進一步包括下列操作(31)管理節點分析路由表獲得網絡連接性信息,獲知網絡運行的基本狀態,構建網絡邏輯拓撲;(32)如果發生路由變更,根據路由變更信息處理模塊的分析結果,構建反映網絡路由信息變更狀況的路由變更拓撲圖,以供管理員根據路由變更拓撲圖評估網絡運行狀況,及時進行網絡維護或升級,使網絡健康運行。
所述步驟(4)進一步包括下列操作(41)管理節點從數據庫讀取已經生成的標準格式的路由變更信息,從該信息中獲取監測節點路由器的IP地址;
(42)管理節點分析每一條路由變更信息記錄,生成帶路由變更信息的鄰接表,根據該鄰接表呈現出網絡拓撲的變化,并以圖形方式動態反映路由的變化情況。
本發明是一種互聯網的開放最短路徑優先路由協議的監測與分析系統及其工作方法,其優點和效果是本發明的整個體系架構是以數據驅動為主線,在功能上能夠比較清晰地體現了設計構思基于LSA信息采集的監測系統,必須對整個網絡的影響最小,又能即時捕捉到自治域內路由的變動情況。
該監測與分析系統采用分布式設計思想,將監測節點放置在各個區域(AREA)內部,監測各個區域內部的路由變化,再將各個區域內的監測信息匯總到管理節點統一處理,可以有效擴大系統的監控范圍,以適應大型電信網絡監管的需要。針對小型網絡,監測節點和管理節點則可以合并成一個單機系統完成監測任務。
圖1是本發明OSPF路由性能監測與分析系統的監測節點部署狀況示意圖。
圖2是本發明OSPF路由性能監測與分析系統的結構組成示意圖。
圖3是本發明OSPF路由性能監測與分析系統的實現方法流程圖。
圖4是圖3中的實現方法流程圖中采集分析路由信息操作的流程方框圖。
圖5是圖3中的實現方法流程圖中路由變更匯總操作的流程方框圖。
圖6是圖3中的實現方法流程圖中拓撲管理流程操作的流程方框圖。
圖7是圖3中的實現方法流程圖中拓撲呈現流程操作的流程方框圖。
具體實施例方式
為使本發明的目的、技術方案和優點更加清楚,下面結合附圖對本發明作進一步的詳細描述。
參見圖1,介紹本發明系統的網絡部署結構。根據網絡規模或不同的組網需求,實際運營網絡會被分成不同的自治域系統AS(Autonomous System,簡稱域),在自治域系統內部運行IGP協議,OSPF協議則是IGP中的主流協議。運行OSPF路由協議的自治域網絡一般分為多個區域AREA,圖中示有三個自治域,其中區域0是骨干區域。本發明的構思是采用模擬OSPF路由器在區域內監測OSPF協議通告信息,但其不產生自身的通告信息。根據實際組網特點和OSPF協議的運行特征,本發明的OSPF路由性能監測與分析系統采用分布式架構,即在自治域AS的每個區域AREA內都設署一個監測節點(圖中用帶有數字的方框表示),監測所屬域內的鏈路狀態和路由變化信息(圖中用圓圈表示路由節點)。每個監測節點作為OSPF網絡中的一個節點,運行OSPF協議,然而,它僅僅和其鄰接路由器建立鄰接關系。也就是監測節點作為一個類路由器運行,從其鄰居接收所有鏈路狀態通告LSA(Link State Advertisement)信息,但不向其鄰居傳播鏈路狀態通告信息,從而使監測節點對OSPF網絡運行的影響達到最小。
整個監測系統由一個或多個監測節點和管理節點(圖中用帶有字母M的方框表示)組成。如圖1所示,監測節點部署在各個監測區域內,作為仿真路由器運行,負責接收其鄰居發送的所在區域內的網絡鏈路變化信息。監測節點對接收到的鏈路信息進行分析、處理和簡單匯總后,將得到所在區域內的路由變化信息發送到管理節點。管理節點根據多個監測節點上報的路由變更信息,匯總、整理出整個自治域的路由變更信息,進而構建和呈現網絡邏輯連接與反映路由變更狀況的拓撲圖,并在界面上完成路由拓撲及路由動態變化的可視化呈現,以支持大型復雜多區域網絡的路由性能監測。
參見圖2,介紹本發明系統的結構組成和功能分解監測節點由鏈路狀態信息采集分析模塊和存儲路由狀態信息的鏈路信息數據庫所組成,負責收集網絡中鏈路狀態變化所洪泛的鏈路狀態通告LSA消息,更新本地鏈路狀態數據庫LSDB;同時分析LSA的具體內容,提取鏈路狀態變更信息,分析路由變更信息,將分析結果發送到管理節點。
管理節點由順序連接的路由變更信息匯總模塊、路由拓撲管理模塊、路由拓撲呈現模塊和節點與鏈路狀態信息數據庫所組成;根據多個監測節點上報的路由變更信息,匯總、整理出整個自治域的路由變更信息,將信息保存到數據庫中,進而構建和呈現網絡邏輯連接與反映路由變更狀況的拓撲圖,并在界面上完成路由拓撲及路由動態變化的可視化呈現,從而幫助網絡管理員了解網絡中路由變化狀況,及時發現和處理問題,以保證網絡的正確、穩定、高效的運行。本發明系統在網絡中分布設置的監測節點的數量多少取決于網絡規模的大小或組網的不同需求,但在網絡中的骨干區域必須設置監測節點,這些監測節點分別獨立監測其所關注的網絡自治域中的路由變更信息;管理節點和監測節點物理上可以部署、運行于不同的主機,根據需要也可以駐留在同一主機內。
由于本發明監測系統采用分布式結構,為了獲得網絡鏈路狀態的變化,需要分析在區域內洪泛的鏈路變更消息,即作為鏈路狀態更新報文負載數據的LSA消息中類型為1的router_lsa和類型為2的network_lsa。根據router_lsa的內容可以得到產生該lsa消息節點的鄰居,根據其內容的變化得到網絡鏈路變更狀況;根據network_lsa消息中相連路由器的變化得到網絡中是否有新的節點加入或撤出;統計類型3和4的LSA,分析區域間路由變動信息;分析類型5的LSA獲得區域與自治域外部關聯的路由變化。
本發明監測系統的工作方法是系統部署在被測網絡中,監測節點分布在各個監測域中。監測節點收集網絡中的路由通告信息LSA,采用SPF算法計算最優路徑樹,并初步判斷是否發生路由變更事件,再將搜集到的路由變更事件的相關信息匯總到管理節點。管理節點對各個監測節點上報的路由變更信息進行整合處理,并維護兩級拓撲圖反映基本連接性的網絡邏輯拓撲圖及在其基礎上疊加的反映路由變更的路由變更圖,再根據監測節點反映的路由變更信息對拓撲圖進行實時更新和可視化呈現。
參見圖3,介紹本發明監測系統實現方法的具體操作步驟(1)監測節點收集網絡中的路由通告信息LSA,獲得路由變化信息;(2)管理節點將各個監測節點上報的路由變更信息進行整合匯總處理;(3)管理節點對網絡路由拓撲圖進行管理;(4)管理節點對路由拓撲圖進行實時更新和可視化呈現。
參見圖4,詳細描述監測節點根據LSA消息獲得路由變更信息的處理流程。監測節點先同步區域內的鏈路狀態數據庫,同時分析LSDB數據庫中的Router_LSA消息,形成描述產生該LSA的路由器信息的router_node記錄,并以尾插入的方式保存在router_list鏈表中,獲得區域內路由器連接狀況。監測節點監聽網絡中發布的LSA消息,如果監聽到未處理的LSA,則更新LSDB中的相應LSA消息。
監測節點將從其鄰居節點同步和洪泛得到的LSA消息存儲于LSDB中,同時分析LSDB數據庫中的Router_LSA消息,判斷Router_LSA報文中Link信息,如果鏈路是stub、transit類型,不做處理;如果鏈路是點到點類型,獲得鏈路ID號,即得到鏈路目的地址,并以產生該LSA路由器的router id為源地址,生成linklist鏈表,保存所有路由器到路由器的鏈路信息,獲得鏈路data數據,將其作為接口地址加入到相應路由器的if_ist鏈表中。即其監聽網絡中鏈路狀態通告LSA消息,更新本地鏈路狀態數據庫LSDB,同時修改router_list鏈表,獲得區域內的路由器連接狀況。監測節點的LSDB根據LSA消息以路由表的形式建立,當節點接收到LSA消息時,如果該消息在LSDB中不存在,或者序列號比LSDB中的LSA較大,則將該LSA消息加入到LSDB中。如果域內存在未處理的節點,則運行dilkstra算法,運算域內和域間路由。重新執行SPF算法計算SPF樹,并與原來的SPF樹進行比較,如果出現變化,則生成新的路由表,再將新生成的路由表與原來的路由表進行比較,獲得路由變動信息。
為了獲得網絡路由的變化,需要運行SPF算法,它分為下述兩部分(1)域內路由計算遍歷根據Route_LSA生成的區域內路由器節點鏈表router_list,以該鏈表的每個記錄所描述路由器的router id為根節點,分析其LSDB中所有Router_LSA消息的內容,將除stub類型以外的鏈路轉化為向量形式,利用Dijstra算法,建立spf樹和按照鏈路價值正序排列的candidate鏈表,每次均取鏈表的頭部記錄,并根據向量中含有的nexthop將該頭部記錄插入到spf樹中,當candidate鏈表為空時,遍歷LSDB中Router_LSA,將所有類型為stub的鏈路作為葉子節點加入到spf樹中,則域內路由計算完畢。
(2)域間路由計算在spf樹中查詢獲得節點到區邊界路由器ABR的最短路徑,將詳細描述summary_lsa中的區域間鏈路增加到spf樹中,同時根據類型4的summary_lsa獲得到自治域邊界路由器ASBR的最短路徑,以備域間路由計算;如果節點是虛鏈路的一個端點,存在不經過另一個虛鏈路端點到達目的鏈路的最短路徑,則修改spf樹,從而獲得域內路由;查詢獲得到產生該域外部AS_external_lsa消息的ASBR的最短路徑,根據轉發地址將鏈路直接加入到路由表中。
下面參見圖4~圖7,詳細介紹本發明監測系統實現方法的各個操作步驟在步驟(1)中路由計算完畢,與舊的路由信息進行比較,則獲得監測點所在區域的路由變更信息。但AS域的路由變更消息的獲得,還需要對各個區域的路由變更信息匯總,這由步驟(2)在管理節點進行處理,該處理過程在圖5中作了詳細描述匯總并非簡單的消息疊加,對區域內的每個ABR節點,在其他區域中尋找具有相同router id的節點,將該ABR在不同區域內的路由變更消息進行整合匯總;同時判斷該區域內是否加入路由變更消息,如果沒有該區域的路由變更消息,則保存,以便將不同區域的路由變更信息連接起來,構建網絡拓撲;如果有該區域的路由變更消息,則將所有的路由變更信息以設定格式保存,構建路由變更圖,以供拓撲管理模塊調用。保存路由變更信息格式如下
參見圖6,介紹步驟(3)實現拓撲管理的流程。管理節點分析路由表獲得網絡連接性信息,得到網絡運行的基本狀態,構建網絡拓撲;如果發生路由變更,則根據每個變更信息記錄中保存的域內路由信息From、To字段,構建邏輯拓撲圖。再根據路由變更信息處理模塊的分析結果,構建反映網絡路由信息變更狀況的路由變更拓撲圖。管理員根據路由變更拓撲圖可以評估網絡運行狀況,及時進行網絡維護或升級,使得網絡運行在健康的狀態。
拓撲呈現是以圖形化方式來查看網絡的拓撲結構和路由變化信息,并通過網絡拓撲變化的動態演示來形象直觀的演示AS域內路由隨時間的連續變化。參見圖7,介紹步驟(4)實現拓撲呈現的操作流程首先管理節點讀取前述步驟中生成的具有標準固定格式文件,從文件名中獲得監測節點路由器的IP地址,并將該路由器作為中心,繪制出全域的網絡拓撲圖;然后管理節點分析文件內容,對應于文件的每一行,生成一個路由變更信息記錄OSPFRecord,保存OSPF路由器的節點信息;再分析每一行的對應字段的值,以OSPFRecord為參數生成各個節點的delta node記錄,然后根據時間排序生成delta鏈表,并綜合所有路由器節點的delta鏈表,生成為可擴展的鄰接表,從而根據該鄰接表呈現出網絡拓撲的變化,并動態反映出路由的變化。
權利要求
1.一種互聯網的開放最短路徑優先OSPF路由協議的監測與分析系統,其特征在于所述系統由管理節點和分布設置在被監測網絡中各個自治域系統AS的一個或多個監測節點所組成,其中監測節點,由鏈路狀態信息采集分析模塊和存儲路由狀態信息的鏈路信息數據庫所組成,用作開放最短路徑優先OSPF網絡中運行OSPF協議的仿真路由器,從其鄰接路由器接收所在區域的各種鏈路狀態和路由變化信息,但不產生自身的通告信息,以盡量減少該監測節點對OSPF網絡運行的影響;對采集的鏈路信息進行分析、處理后,將該所在區域內的路由變化信息發送到管理節點;管理節點,由順序連接的路由變更信息匯總模塊、路由拓撲管理模塊、路由拓撲呈現模塊和節點與鏈路狀態信息數據庫所組成;根據多個監測節點上報的路由變更信息,匯總、整理出整個自治域的路由變更信息,進而構建和呈現網絡邏輯連接與反映路由變更狀況的拓撲圖,并在界面上完成路由拓撲及路由動態變化的可視化呈現,以支持大型復雜多區域網絡的路由性能監測。
2.根據權利要求1所述的路由協議的監測與分析系統,其特征在于所述監測節點的路由狀態信息采集分析模塊負責收集網絡中鄰接路由器對鏈路狀態變化所洪泛的鏈路狀態通告LSA消息,更新本地鏈路狀態信息數據庫LSDB,并對LSA內容進行分析,提取鏈路狀態變更信息,分析路由變更信息,再將分析結果發送到管理節點。
3.根據權利要求2所述的路由協議的監測與分析系統,其特征在于所述監測節點所采集、分析的在區域內洪泛的鏈路狀態通告LSA消息中包括類型1的router_lsa,用于根據router_lsa內容得到產生該lsa消息節點的鄰居,再根據其內容變化得到網絡鏈路變更狀況;類型2的network_lsa,用于根據network_lsa消息中相連路由器的變化得到網絡中是否有新的節點加入或撤出;類型3、4、5的鏈路狀態統計消息,前兩種用于分析區域間路由變動信息,后者用于分析獲得區域與自治域外部關聯的路由變化。
4.根據權利要求1所述的路由協議的監測與分析系統,其特征在于所述系統在網絡中分布設置的監測節點的數量多少取決于網絡規模的大小或組網的不同需求,但在網絡中的骨干區域必須設置監測節點,這些監測節點分別獨立監測其所關注的網絡自治域中的路由變更信息;所述管理節點和監測節點可以運行于不同的主機,也可以根據需要駐留在同一主機內。
5.一種互聯網的開放最短路徑優先路由協議的監測與分析系統的工作方法,其特征在于分布在被監測網絡中的各個區域的監測節點收集網絡中的路由通告信息LSA,采用最短路由算法SPF計算各個節點的最優路徑樹,并判斷是否發生路由變更事件,再將搜集到的路由變更事件的相關信息匯總到管理節點;管理節點對各個監測節點上報的路由變更信息進行整合處理,并維護兩級拓撲圖反映基本連接性的網絡邏輯拓撲圖及在其基礎上反映路由變更的路由變更圖,再根據監測節點反映的路由變更信息對拓撲圖進行實時更新和可視化呈現;該方法包括下列步驟(1)監測節點收集網絡中的路由通告信息LSA,獲得路由變化信息;(2)管理節點將各個監測節點上報的路由變更信息進行整合匯總處理;(3)管理節點對網絡路由拓撲圖進行管理;(4)管理節點對路由拓撲圖進行實時更新和可視化呈現。
6.根據權利要求5所述的路由協議的監測與分析系統的工作方法,其特征在于所述步驟(1)進一步包括下列操作(11)監測節點同步本區域內的鏈路狀態數據庫LSDB,分析該數據庫中的路由器LSA消息,獲得區域內路由器連接狀況;(12)監測節點監聽網絡中發布的LSA消息,如果監聽到未處理的新LSA消息,則將該LSA消息加入到LSDB中;如果監聽到的LSA消息是已處理過的舊LSA消息,則對數據庫中相關的LSA消息執行更新操作;(13)如果域內存在有未處理的節點,則監測節點采用dijkstra算法分別計算域內路由和/或域間路由;(14)監測節點重新采用最短路由算法計算SPF樹,并與原來的SPF樹進行比較,如果沒有變化,則返回步驟(13);如果出現變化,執行后續操作;(15)監測節點根據SPF樹生成新的路由表,再將新生成的路由表與原來的路由表進行比較,獲得所在區域內的路由變動信息。
7.根據權利要求6所述的路由協議的監測與分析系統的工作方法,其特征在于所述步驟(13)中采用SPF算法計算SPF樹時,分為下述兩部分A.域內路由計算遍歷根據Route_LSA生成的區域內路由器節點鏈表router_list,以該鏈表的每個記錄所描述路由器的router id為根節點,分析LSDB中所有Router_LSA消息的內容,將除stub類型以外的鏈路轉化為向量形式,利用Dijstra算法,建立spf樹和按照鏈路價值正序排列的candidate鏈表;每次均選取鏈表的頭部記錄,并根據向量中含有的nexthop信息將該頭部記錄插入到spf樹中;當candidate鏈表為空時,遍歷LSDB中Router_LSA,將所有類型為stub的鏈路作為葉子節點加入到spf樹中,則完成域內路由計算;B.域間路由計算在spf樹中查詢獲得節點到區邊界路由器ABR的最短路徑,將詳細描述summary_lsa中的區域間鏈路增加到spf樹中,同時根據類型4的summary_lsa獲得到自治域邊界路由器ASBR的最短路徑,以備域間路由計算;如果節點是虛鏈路的一個端點,存在不經過另一個虛鏈路端點到達目的鏈路的最短路徑,則修改spf樹,從而獲得域內路由;查詢獲得產生該域外部LSAAS_external_lsa消息的ASBR的最短路徑,根據轉發地址將鏈路直接加入到路由表中。
8.根據權利要求5所述的路由協議的監測與分析系統的工作方法,其特征在于所述步驟(2)進一步包括下列操作(21)對區域內的每個ABR節點,在其他區域中尋找具有相同router id的節點,將該ABR在不同區域內的路由變更消息進行整合匯總;(22)判斷該區域內是否加入路由變更消息,如果沒有該區域的路由變更消息,則保存,以便將不同區域的路由變更信息連接起來,構建網絡拓撲;如果有該區域的路由變更消息,則將所有的路由變更信息以設定格式保存,構建路由變更圖,以供拓撲管理模塊調用。
9.根據權利要求5所述的路由協議的監測與分析系統的工作方法,其特征在于所述步驟(3)進一步包括下列操作(31)管理節點分析路由表獲得網絡連接性信息,獲知網絡運行的基本狀態,構建網絡邏輯拓撲;(32)如果發生路由變更,根據路由變更信息處理模塊的分析結果,構建反映網絡路由信息變更狀況的路由變更拓撲圖,以供管理員根據路由變更拓撲圖評估網絡運行狀況,及時進行網絡維護或升級,使網絡健康運行。
10.根據權利要求5所述的路由協議的監測與分析系統的工作方法,其特征在于所述步驟(4)進一步包括下列操作(41)管理節點從數據庫讀取已經生成的標準格式的路由變更信息,從該信息中獲取監測節點路由器的IP地址;(42)管理節點分析每一條路由變更信息記錄,生成帶路由變更信息的鄰接表,根據該鄰接表呈現出網絡拓撲的變化,并以圖形方式動態反映路由的變化情況。
全文摘要
一種互聯網的OSPF路由協議的監測與分析系統,由管理節點和分布在被監測網絡中各個AS中的一個或多個監測節點所組成。該系統的工作方法是分布在被監測網絡中各區域的監測節點收集網絡中的LSA,采用SPF算法計算各節點的最優路徑樹,并判斷是否發生路由變更事件,再將搜集到的路由變更信息匯總到管理節點;管理節點對各監測節點上報的路由變更信息進行整合,維護兩級拓撲圖反映基本連接的網絡邏輯圖及反映路由變更的路由變更圖,再根據路由變更信息對拓撲圖進行實時更新和可視化呈現。本發明以對網絡影響最小方式完成路由監測,并對多個監測節點獲知的各個區域內的路由變化信息進行匯總,擴大系統監控范圍,能夠支持大型復雜多區域網絡的路由性能監測。
文檔編號H04L12/56GK1905512SQ200610112198
公開日2007年1月31日 申請日期2006年8月17日 優先權日2006年8月17日
發明者王芳, 孫文海, 焦利, 林宇, 崔毅東, 王永貴 申請人:北京郵電大學