專利名稱:一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法
技術領域:
本發(fā)明涉及網絡監(jiān)測技術領域,特別是涉及一種多自治系統(tǒng)路由器級拓撲 處理系統(tǒng)和方法。
背景技術:
今天的國際互聯(lián)網(Internet)和較大的網絡服務提供商(Internet Service Provider, ISP)被分成大量的自治系統(tǒng)(Autonomous System, AS)。自治系 統(tǒng)設置了管理控制的區(qū)域和作用于自治系統(tǒng)范圍的路由策略。所以Internet級 的路由結構常被劃分為域間和域內兩種。
對于域間路由,邊界網關協(xié)議(Border Gateway Protocol, BGP)是目前 常用的標準協(xié)議,它通過運行在各自治系統(tǒng)的邊界路由器上,相互交換自治系 統(tǒng)級的路由可達性信息來完成域間的路由。
對于域內路由,有多種域內路由協(xié)議,包括開放最短路徑優(yōu)先協(xié)議(Open Shortest Path First, OSPF),路由信息協(xié)議(Routing Information Protocol, RIP), 中間系統(tǒng)到中間系統(tǒng)協(xié)議(Intermediate System to Intermediate System, IS-IS ) 和內部網關路由協(xié)議(Interior Gateway Routing Protocol , IGRP )等,其中OSPF 協(xié)議有較廣泛的應用。
OSPF是Open Shortest Path First (即"開放最短路由優(yōu)先協(xié)議")的縮寫。 它是正TF組織開發(fā)的一個基于鏈路狀態(tài)的自治系統(tǒng)內部路由協(xié)議。在IP網絡 上,它通過收集和傳遞自治系統(tǒng)的鏈路狀態(tài)來動態(tài)地發(fā)現(xiàn)并傳播路由。
每一臺運行OSPF協(xié)議的路由器總是將本地網絡的連接狀態(tài),(如可用接 口信息、可達鄰居信息等)用鏈路狀態(tài)廣播(Link—State Advertisement, LSA) 描述,并廣播到整個自治系統(tǒng)中去。這樣,每臺路由器都收到了自治系統(tǒng)中所 有路由器生成的鏈路狀態(tài)廣播,這些鏈路狀態(tài)廣播的集合組成了鏈路狀態(tài)數(shù)據 庫(Link State Database, LSDB)。由于每一條鏈路狀態(tài)廣播是對一臺路由器 周邊網絡拓撲的描述,則整個鏈路狀態(tài)數(shù)據庫就是對該自治系統(tǒng)網絡拓撲的真實反映。網絡拓撲是指網絡元素之間的一種連接性信息,它對于網絡管理和運營者 有著重要的意義。路由器級網絡拓撲就是指網絡中各路由器之間的連接關系, 以及路由器和子網的連接關系,路由器級拓撲又分為多區(qū)域路由器級拓撲和單 區(qū)域路由器級拓撲,其分別指示網絡中路由器之間的連接關系,以及路由器和 子網之間的連接關系?,F(xiàn)有技術中,對于多區(qū)域路由器級拓撲構建是基于路由表信息,就是通過簡單網絡管理協(xié)議(Simple Network Management Protocol, SNMP)周期性獲取路由器上路由表信息來推斷路由器之間的關系。但是該方法獲取路由表本身是一種通過輪詢的主動式進行的網絡測量方 法,所以不同避免地有著非實時性以及向網絡中注入較大流量的缺陷,加重了 網絡的負載。發(fā)明內容本發(fā)明所要解決的問題在于提供一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng) 和方法。其基于路由報文構建和更新路由器級拓撲,使拓撲與網絡中的路由器 連接關系保持一致,降低了對網絡的影響。為實現(xiàn)本發(fā)明目的而提供的一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng),包括 至少一個BGP邊界路由器和多個單自治系統(tǒng),還包括路由信息采集探針和分 析處理單元,其中所述路由信息采集探針,用于通過對邊界網關協(xié)議的模擬,與網絡中的BGP邊界路由器建立對等關系會話,采集網絡中的BGP路由更新報文,并將 采集到的BGP路由信息更新報文發(fā)送給分析處理單元;所述分析處理單元,用于分析處理所述路由信息采集探針采集到的BGP 路由更新報文,以及所述單自治系統(tǒng)采集到的OSPF路由更新報文,更新接口 信息數(shù)據庫,將單自治系統(tǒng)生成的拓撲連接成完整的路由器級拓撲。所述路由信息采集探針與BGP邊界路由器建立起B(yǎng)GP對待關系會話之 后,只是被動地接受對方發(fā)送過來的BGP路由更新報文。所述路由更新報文包括兩種類型的報文宣告報文和撤銷報文。所述路由信息采集探針還用于記錄與其建立BGP對等關系會話的BGP邊界路由器的IP地址和所屬的單自治系統(tǒng),并將這些信息與所采集到的每一個 路由更新報文一同發(fā)送給上層的分析處理單元。所述路由信息采集探針還用于當路由信息采集探針與BGP邊界路由器的 對等關系會話丟失或者建立的時候,向上層的分析處理單元發(fā)送鄰居丟失或者 鄰居建立的控制消息。所述分析處理單元,包括OSPF報文處理單元和BGP報文處理單元,其中所述OSPF報文處理單元,用于根據每一個由單自治系統(tǒng)收集到的OSPF 路由報文,為每個路由器更新報文加上自治系統(tǒng)標號,然后為該自治系統(tǒng)標號 的所有路由器建立一個和相應的接口信息對應的路由器標識,并保存在接口信 息數(shù)據庫中;所述BGP報文處理單元,用于通過分析處理由路由信息采集探針采集到 的BGP路由信息更新報文,為每個與路由信息采集探針建立對等關系會話的 BGP邊界路由器維護一個前綴數(shù)據,以及到達這個前綴的下一跳路由器標識; 為每個邊界路由器通過該下一跳所能到達的前綴個數(shù)進行計數(shù),并維護每個自 治系統(tǒng)中每個路由器的標識和相應路由器的接口信息,從而將孤立的單自治系 統(tǒng)生成的路由器級拓撲連接成一個完整的路由器級拓撲。所述前綴數(shù)據中的每條記錄代表該BGP邊界路由器所能到達的一個前,所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),還包括報文區(qū)分模塊,用于區(qū)分路由信息采集探針采集到的報文類型;所述報文類型一類是路由信息采集探針通過與網絡中的BGP路由器建立鄰居關系而得到的路由更新報文,另一類是路由信息采集探針所發(fā)送的與網絡中BGP路由器之間的鄰居關系建立或者丟失的應用層控制報文。所述單自治系統(tǒng)生成的拓撲是通過單自治系統(tǒng)拓撲生成算法生成的。 為實現(xiàn)本發(fā)明目的還提供一種多自治系統(tǒng)路由器級拓撲處理方法,包括如下步驟步驟A,路由信息采集探針與網絡中的BGP邊界路由器建立會話,實時 地采集BGP路由更新報文;步驟B,分析處理路由信息采集探針采集到的BGP路由更新報文,以及單自治系統(tǒng)采集到的OSPF路由更新報文,建立接口信息數(shù)據庫,將單自治系 統(tǒng)生成的拓撲連接成完整的路由器級拓撲。所述步驟A中,所述采集BGP路由更新報文,是通過被動式的網絡測量方式實現(xiàn)的。所述步驟B中,所述單自治系統(tǒng)生成的拓撲是通過單自治系統(tǒng)拓撲生成 算法生成的。所述歩驟A還包括下列步驟路由信息采集探針區(qū)分采集到的報文類型一類是路由信息采集探針通過與網絡中的BGP路由器建立鄰居關系而得到的路由更新報文,另一類是路由 信息采集探針所發(fā)送的與網絡中BGP路由器之間的鄰居關系建立或者丟失的 應用層控制報文。所述步驟B中,所述分析處理單自治系統(tǒng)收集到的OSPF報文,包括如下 步驟步驟B1,對于每一個由單自治系統(tǒng)收集到的OSPF路由報文,為每個路 由器更新報文加上自治系統(tǒng)標號,然后為該自治系統(tǒng)標號的所有路由器建立一 個和相應的接口信息對應的路由器標識,并保存在接口信息數(shù)據庫中。所述步驟B1包括下列步驟步驟Bll,如果LSA Update報文類型為1,即報文是RouterLSA,則進入 步驟B12;否則結束返回,處理下一個報文信息;步驟B12,從RouterLSA報文中取出自治系統(tǒng)標號信息,以及報文頭部中 的Advertising Router字段和AreadID字段信息;檢索接口信息數(shù)據庫中的數(shù)據,如果該接口信息數(shù)據庫中有該 〈ASNum,AreadlD,AdvertisingRouter〉的信息,則進行清除;進入步驟B13;步驟B13 ,如果LSA Update報文中的Link類型為3 ,則取出報文中的linkID 和 linkData 字段與歩驟 B12 中的信息組成 〈ASNum,ArealD,AdvertisingRouter,LinklD,linkData〉的信息存入接口信息數(shù)據庫,然后進入步驟B15;否則進入步驟B14;步驟B14,如果LSA Update報文中的Link的類型為其他類型,則取出報 文中的 linkData 字段與步驟 B12 中信息組成 〈ASNum,ArealD,AdvertisingRouter,LinkData,255.255.255.255〉的信息,存入接口信息數(shù)據庫;然后進入步驟B15;步驟B15,如果還有未遍歷的LSA Update報文中的link類型,則轉到步 驟B13;否則分析下一個更新報文。所述步驟B中,所述利用路由信息采集探針采集到的BGP路由更新報文, 更新接口信息數(shù)據庫,包括下列步驟步驟B2,通過分析處理由路由信息采集探針采集到的BGP路由信息更新 報文,為每個與路由信息采集探針建立對等關系會話的BGP邊界路由器維護 一個前綴數(shù)據,以及到達這個前綴的下一跳路由器標識,為每個邊界路由器通 過該下一跳所能到達的前綴個數(shù)進行計數(shù),并維護每個自治系統(tǒng)中每個路由器 的標識和相應路由器的接口信息,從而將孤立的單自治系統(tǒng)生成的拓撲連接成 一個完整的路由器級拓撲。所述步驟B2包括如下步驟步驟B21,分析路由信息采集探針所發(fā)送上來的下一條信息,若為BGP 路由更新報文,設為UpdateNew,則轉步驟B22;若為鄰居丟失的控制消息, 則轉步驟B214 ;否則繼續(xù)分析路由信息采集探針所發(fā)送上來的下一條信息;步驟B22,若Update New是路由宣告類型的報文,轉步驟B23;否則轉 步驟B212;步驟B23,提取UpdateNew中的AS-Path屬性信息,如果AS-Path為空, 則轉步驟B21;否則轉步驟B24;步驟B24,提取Update New中的下一條前綴Prefix信息,若已經取完, 則轉步驟B21;否則轉步驟B25;步驟B25 ,根據該前綴Prefix信息檢索該Update New所來自的BGP邊界 路由器Peer IP的接口信息數(shù)據庫,如果該接口信息數(shù)據庫中沒有該前綴 Prefix,則在該接口信息數(shù)據庫中添加該前綴Prefix,以及到達這個前綴Prefix 的下一跳路由器Next-hop和到達這個前綴Prefix所需要經過的自治系統(tǒng)路徑, 轉步驟B26;否則轉步驟B29;步驟B26,從接口信息數(shù)據庫中檢索每一條目信息,在路由拓撲中査找以 AdvertisingRouteri和AdvertisingRouterj為兩個端點的路由器級拓撲邊,若查 找到,轉步驟B27;否則轉步驟B28;步驟B27,將此邊的權重增l,轉步驟B24;歩驟B28,路由拓撲中增加一條以AdvertisingRouteri和AdvertisingRouterj 為兩個端點的路由器之間的連線,并將其權重置為l,轉步驟B24;步驟B29,此時表明Update New是在隱式地撤銷一條已經存在的路由, 則從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取到達該前綴Prefix的原下 一跳路由器,設為Next-hop Old,轉步驟B210;步驟B210,在路由拓撲中將以AdvertisingRouteri和AdvertisingRouterj為 兩個端點的路由拓撲邊上的權重減l,若該邊的權重被減為零了,則從路由拓 撲中刪除該邊,轉步驟B211;步驟B211,將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴 Prefix的下一跳路由器改為Update New中的下一跳路由器Next-hop;以及到 達這個前綴Prefix所需經過的自治系統(tǒng)路徑AS-Path改為Update New中的自 治系統(tǒng)路徑AS-Path,轉步驟B26;步驟B212,此時表明Update New是路由撤銷(Withdraw)類型的報文, 提取Update New中的下一條前綴Prefix信息,若己經取完,則轉步驟B21; 否則轉步驟B213;步驟B2B,從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取到達該前 綴Prefix的原下一跳路由器,設為Next-hop Old;利用步驟B26中方法找出 Peer IP接口所在的路由器AdvertisingRouteri和接口 Next-Hop old所在的路由 器 AdvertisingRouterj , 并在路由拓撲中將以 AdvertisingRouteri 和 AdvertisingRouterj為兩個端點的路由器邊上的權重減1 ,若該邊的權重被減為 零了,則從路由拓撲中刪除該邊;將該BGP邊界路由器PeerIP的前綴數(shù)據庫 中關于該前綴Prefix的記錄刪除,轉步驟B212;歩驟B214,此時表明采集探針與該BGP邊界路由器的鄰居關系丟失,則 來自該BGP邊界路由器的所有路由信息均已失效;從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取下一條前綴,設為Prefix Current和到達該前綴的下一 跳路由器,設為Next-hop Current;如果已經取完,則轉步驟B21;否則轉步 驟B215;步驟B215,利用歩驟B26中方法找出Peer IP接口所在的路由器 AdvertisingRouteri禾卩接口 Next-hop Current所在的路由器AdvertisingRouterj, 并將路由拓撲中將以AdvertisingRouteri禾卩AdvertisingRouterj為兩個端點的路由器邊上的權重減l,若權重減為0,則從路由器級拓撲中刪除該邊;同時將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴Prefix Current的記錄刪除,轉步驟B214。所述歩驟B26中,所述從接口信息數(shù)據庫中檢索每一條目信息,包括下 列步驟步驟B261,從報文中讀取ASNum,作為Peer IP所在的自治系統(tǒng)號; 歩驟B262,再遍歷分析處理OSPF報文時所建立的接口信息數(shù)據庫,設 其中一個條目為〈ASNum一i,AreaIDi,AdvertisingRouteri,InterfaceIpi, maski>;找出所有滿足條件ASNum—i==ASNum, PeerIP&maski==InterfaceIpi的條目;步驟B263,把maski最大的條目當作有效條目,則取出該條目 AdvertisingRouteri {乍為Peer IP的RouterID;步驟B264,從報文的As-Path字段中取出最后一個元素作為NextHop接 口地址所在的自治系統(tǒng)號,并從接口信息數(shù)據庫中檢索出NextHop的 RouterID,艮卩AdvertisingRouterj 。本發(fā)明的有益效果是本發(fā)明的多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法,通過路由探針與網絡中的BGP邊界路由器建立會話,通過被動式的網絡測量方式,在不加重網絡負載的情況下,實時地采集到BGP路由更新消息,然后再分析處理采集到的OSPF更新報文,將單自治系統(tǒng)拓撲生成算法生成的拓撲連接成完整的路由器級拓撲。這種完整性主要體現(xiàn)在以下兩點第一,可 以使任何時刻網絡中所有自治系統(tǒng)路由器級拓撲連接成一個完整的拓撲;第二,可以體現(xiàn)所監(jiān)測多自治系統(tǒng)網絡中路由器連接關系,并能夠實時根據網絡 的變化而變化。其能夠保證網絡拓撲根據網絡的變化進行實時的更新,保證了 與實際網絡拓撲的一致性。
圖1為本發(fā)明多自治系統(tǒng)路由器級拓撲處理系統(tǒng)結構示意圖; 圖2為本發(fā)明路由信息采集探針在網絡中的部署示意圖; 圖3為本發(fā)明多自治系統(tǒng)路由器級拓撲處理方法流程圖; 圖4為OSPF報文分析處理流程圖;圖5為根據BGP路由更新報文進行將單自治系統(tǒng)連接成完整的路由拓撲 過程流程圖。
具體實施方式
為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實 施例,對本發(fā)明的一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法進行進一步詳 細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于 限定本發(fā)明。本發(fā)明的多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法,通過使路由信息采集探針與網絡中的BGP邊界路由器建立會話,通過被動的方式實時采集BGP路 由更新報文,然后根據對單自治系統(tǒng)采集到的OSPF路由更新報文進行分析處 理,將多個根據單自治系統(tǒng)算法生成的拓撲連接成一個完整的路由拓撲。本發(fā)明是建立在單自治系統(tǒng)路由器級拓撲算法基礎上,依賴于根據該單自 治系統(tǒng)路由器級拓撲算法所接收到的OSPF報文的分析處理,來建立接口信息 數(shù)據庫,并利用通過路由信息采集探針與網絡中的BGP邊界路由器建立會話 而被動地采集到的BGP路由更新報文,將多個單自治系統(tǒng)路由器級拓撲連接 成一個完整的路由拓撲。本發(fā)明應用的前提是每一個邊界路由的每一個接口都要運行OSPF協(xié)議, 從而能夠向網絡中宣告該接口信息。下面詳細說明本發(fā)明的一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其包括至 少一個BGP邊界路由器5,多個單自治系統(tǒng)l,以及路由信息采集探針4和分 析處理單元2,其中所述路由信息采集探針4,用于通過對邊界網關協(xié)議(BGP)的模擬,與 網絡中的BGP邊界路由器5建立對等關系會話,被動地采集網絡中的BGP路 由更新報文(BGP Update),并將采集到的BGP路由信息更新報文發(fā)送給分 析處理單元2。所述路由更新報文(BGP Update)包括但不限于下列兩種類型的報文宣 告(Announce)報文和撤銷(Withdraw)報文。此外,路由信息采集探針4還用于記錄與其建立BGP對等關系會話的BGP邊界路由器5的IP地址(Peer IP)和所屬的單自治系統(tǒng)l(Peer AS),并將這些信 息與所采集到的每一個路由更新報文一同發(fā)送給上層的分析處理單元2。此外,進一步地,路由信息采集探針4還用于當路由信息采集探針4與 BGP邊界路由器5的對等關系會話丟失或者建立的時候,向上層的分析處理 單元2發(fā)送鄰居丟失(NeighborLost)或者鄰居建立(Neighbor Gain)的控制消息, 以便上層分析處理單元2做相應的處理,以保證網絡拓撲的實時性。所述分析處理單元2,用于分析處理路由信息采集探針4采集到的BGP 路由更新報文,以及單自治系統(tǒng)l采集到的OSPF路由更新報文,更新接口信 息數(shù)據庫,將單自治系統(tǒng)生成的拓撲連接成完整的路由器級拓撲。較佳地,所述分析處理單元2,包括OSPF報文處理單元21和BGP報文 處理單元22,其中所述OSPF報文處理單元21,用于根據每一個由單自治系統(tǒng)1收集到的 OSPF路由報文,為每個路由器更新報文加上自治系統(tǒng)標號(ASnum),然后 為該自治系統(tǒng)標號(ASnum)的所有路由器建立一個路由器標識,和相應的接 口信息對應起來,并保存在接口信息數(shù)據庫中。所述BGP報文處理單元22,用于通過分析處理由路由信息采集探針4采 集到的BGP路由信息更新報文,為每個與路由信息采集探針4建立對等關系 會話的BGP邊界路由器5(Peer IP)維護一個前綴(Prefnc)數(shù)據,以及到達這個前 綴(Prefix)的下一跳路由器(Next-hop)標識,為每個邊界路由器通過該下一跳所 能到達的前綴個數(shù)進行計數(shù),并維護每個自治系統(tǒng)中每個路由器的標識和相應 路由器的接口信息,從而將孤立的單自治系統(tǒng)1路由器級拓撲連接成一個完整 的路由器級拓撲。該前綴(PrefDc)數(shù)據中的每條記錄代表該BGP邊界路由器5所能到達的 一個前綴(Prefix)。路由信息采集探針4需要模擬實現(xiàn)完整的邊界網關協(xié)議BGP,能夠運行 邊界網關協(xié)議BGP的狀態(tài)機,能夠與真實路由器建立BGP會話并交換BGP 路由更新報文。這個可以通過現(xiàn)有的開源路由軟件GNU Zebm來實現(xiàn),這是 本領域的慣用手段,因此,在本發(fā)明中不再一一詳細描述。路由信息采集探針4與真實的BGP邊界路由器5建立起B(yǎng)GP對等關系會 話之后,只是被動地接受對方發(fā)送過來的BGP路由更新報文。除了按照BGP協(xié)議規(guī)范,為了維持與對方路由器的鄰居關系而發(fā)送的周期性Keep Alive報文 外,不向網絡中注入其他任何報文,不影響網絡現(xiàn)有的路由狀況,從而達到被 動采集的目的。在實際網絡部署時,路由信息采集探針4可以物理上分布式地部署到每個 自治系統(tǒng)(AS)中,參與到該自治系統(tǒng)的內部BGP全耦合(IBGP Full Mesh)中去, 即每一個路由信息采集探針4會與其所在的自治系統(tǒng)(AS)中的所有運行BGP 的邊界路由器或者該自治系統(tǒng)的路由反射器(如果有的話)建立內部BGP(IBGP) 對等會話。也可以在網絡中集中式地部署一臺路由信息采集探針4,并在其上 啟動多個BGP虛擬模擬進程或者多個BGP模擬線程,每個BGP模擬進程或 者線程以同樣的方式參與到每個自治系統(tǒng)(AS)的內部BGP全耦合(IBGP Full Mesh)中去來采集網絡中的路由更新報文(BGPUpdate)。圖2是路由信息采 集探針4在網絡中的部署示意圖。較佳地,本發(fā)明所述多自治系統(tǒng)路由器級拓撲處理系統(tǒng)還包括報文區(qū)分模 塊3,用于區(qū)分路由信息采集探針4采集到的報文類型。所述報文類型一類是 路由信息采集探針4通過與網絡中的BGP路由器建立鄰居關系而得到的路由 更新報文,另一類是路由信息采集探針4所發(fā)送的與網絡中BGP路由器之間 的鄰居關系建立或者丟失的應用層控制報文。所述的分析處理單元2和報文區(qū)分模塊3,可以是設置在路由信息采集探 針4中的軟件模塊單元,也可以是設置在真實BGP邊界路由器5中的軟件模 塊單元,也可以是獨立的硬件芯片模塊單元。本發(fā)明實施例只是作為一種可實 施方式而對其功能模塊進行區(qū)分說明,其并不是對本發(fā)明權利要求保護范圍的 限制。為了達到本發(fā)明目的,本發(fā)明的多自治系統(tǒng)路由器級拓撲處理方法,包括 如下步驟歩驟SIOO,路由信息采集探針與網絡中的BGP邊界路由器建立會話,通 過被動式的網絡測量方式,實時地采集BGP路由更新報文;路由信息采集探針4通過對邊界網關協(xié)議(BGP)的模擬,可以與網絡中 的BGP邊界路由器5建立對等關系會話,同時通過使路由信息采集探針4不 發(fā)送任何路由更新報文,可以讓路由信息采集探針4實時被動的采集到網絡中的BGP路由更新報文(BGP Update)。所述路由更新報文(BGP Update)包含兩種類型宣告(Announce)報文和 撤銷(Withdraw)報文。路由信息采集探針4采集并記錄與其建立BGP對等關系會話的BGP邊界 路由器5IP地址(Peer IP)和所屬的自治系統(tǒng)(Peer AS),并將這些信息與所采集 到的每一個路由更新報文一同發(fā)送給上層的分析處理單元2。此外,當路由信息采集探針4與BGP邊界路由器5的對等關系丟失的或 者建立的時候,路由信息采集探針4會向上層的分析處理單元2發(fā)送鄰居丟失 (Neighbor Lost)或者鄰居建立(Neighbor Gain)的控制消息,以便上層分析處理單 元2做相應的處理,以保證網絡拓撲的實時性。路由信息采集探針4還區(qū)分采集到的報文類型 一類是路由信息采集探針 4通過與網絡中的BGP路由器建立鄰居關系而得到的路由更新報文,另一類 是路由信息采集探針4所發(fā)送的與網絡中BGP路由器之間的鄰居關系建立或 者丟失的應用層控制報文。對于前者,為了滿足上層"一跳式"分析程序的需 求,路由信息采集探針4需要為每個收到并且發(fā)送上去的路由更新報文增添該 報文所來自的BGP對等體路由器IP地址(Peer IP)和該BGP對等體路由器所屬 的自治系統(tǒng)號(PeerAS)字段;對于后者,需要給出發(fā)生本次鄰居關系建立或者 丟失的BGP對等體路由器IP地址(Peer IP)和該BGP對等體路由器所屬的自治 系統(tǒng)號(PeerAS)信息。這樣,路由信息采集探針4能夠達到與上層分析程序有 效結合的目的。步驟S200,分析處理路由信息采集探針采集到的BGP路由更新報文,以 及單自治系統(tǒng)1采集到的OSPF路由更新報文,建立接口信息數(shù)據庫,將單自 治系統(tǒng)拓撲生成算法生成的拓撲連接成完整的路由器級拓撲。通過OSPF路由報文和BGP路由更新報文的處理,進行多自治系統(tǒng)路由 拓撲構建,可以實時地給出所監(jiān)測網絡中路由拓撲,并能夠根據網絡變化進行 實時更新。在利用如單自治系統(tǒng)路由器級拓撲算法,通過采集每一個單自治系統(tǒng)1 內的信息并建立單自治系統(tǒng)拓撲的基礎上,分析處理采集到的OSPF路由報 文,以及利用路由信息采集探針4采集到的BGP路由更新報文,更新接口信 息數(shù)據庫,將孤立的單自治系統(tǒng)1路由器級拓撲連接成一個完整的拓撲。采集每一個自治系統(tǒng)內的信息并建立單自治系統(tǒng)拓撲,得到OSPF路由報文,是一種現(xiàn)有技術,如在美國專利US7200120,名稱為"Packet-switched network topology tracking method and system "的公開文獻公開的單自治系統(tǒng)路 由器級拓撲算法,或者本申請人在200810102704.4公開的"一種自治系統(tǒng)內 的拓撲處理系統(tǒng)和方法",都可以實現(xiàn)所述方法,因此,在本發(fā)明中不再一一 詳細描述。所述分析處理單自治系統(tǒng)1收集到的OSPF報文,包括如下步驟對于每一個由單自治系統(tǒng)1收集到的OSPF路由報文,為每個路由器更新 報文加上自治系統(tǒng)標號(ASnum),然后進行為該自治系統(tǒng)標號(ASnum)的 所有路由器建立一個路由器標識,和相應的接口信息對應起來,并保存在接口 信息數(shù)據庫中。具體地,所述接口信息數(shù)據庫中條目信息如下<ASNum,AreaID,Advertising Router,Interfacelp, mask〉其中,ASNum是指接口所在的自治系統(tǒng)號;AreaID是指接口所在的區(qū)域號;Advertising—Router是指接口所在的路由器的ID;Interfacelp為接口的IP地址,或者IP前綴;Mask為接口的掩碼;進一步地,所述分析處理單自治系統(tǒng)l收集到的OSPF報文,具體包括如 下步驟1 )如果LSA Update報文類型為1 ,即報文是RouterLSA,則進入步驟2); 否則結束返回,處理下一個報文信息;2) 從RouterLSA報文中取出自治系統(tǒng)標號(ASNum)信息,以及報文頭 部中的Advertising Router字段和AreadID字段信息。檢索接口信息數(shù)據庫中的數(shù)據,如果該接口信息數(shù)據庫中有該 <ASNum,AreadID,Advertising Router〉的信息,則進行清除。3) 如果LSA Update報文中的Link類型為3,則取出報文中的linkID和 linkData 字段與步驟 2 ) 中的信息組成 〈ASNum,ArealD,AdvertisingRouter,LinklD,LinkData〉的信息存入接口信息數(shù)據庫,然后進入步驟5);否則進入步驟4);4) 如果LSA Update報文中的Link的類型為其他類型,則取出報文中的 linkData 字段 與 步 驟 2 ) 中 信 息 組 成 <ASNum,AreaID,AdvertisingRouter,LinkData,255.255.255.255>的信息,存入接口信息數(shù)據庫;然后進入步驟5);5) 如果還有未遍歷的LSA Update報文中的link類型,則轉到步驟3); 否則分析下一個更新報文。所述利用路由信息采集探針4采集到的BGP路由更新報文,更新接口信 息數(shù)據庫,是通過分析處理由路由信息采集探針4采集到的BGP路由信息更 新報文,為每個與路由信息采集探針4建立對等關系會話的BGP邊界路由器 5(PeerlP)維護一個前綴(Prefix)數(shù)據,該前綴(Prefix)數(shù)據中的每條記錄代表 該BGP邊界路由器5所能到達的一個前綴(Prefix),以及到達這個前綴(Prefix) 的下一跳路由器(Next-hop)標識,為每個邊界路由器通過該下一跳所能到達的 前綴個數(shù)進行計數(shù),并維護每個自治系統(tǒng)中每個路由器的標識和相應路由器的 接口信息,從而將孤立的單自治系統(tǒng)路由器級拓撲連接成一個完整的路由器級 拓撲。進一步地,所述利用路由信息采集探針4采集到的BGP路由更新報文, 更新接口信息數(shù)據庫,將單自治系統(tǒng)拓撲生成算法生成的拓撲連接成完整的路 由器級拓撲,具體包括如下步驟l,).分析路由信息采集探針所發(fā)送上來的下一條信息,若為BGP路由更 新報文,設為Update New,則轉2,);若為鄰居丟失(Neighbor Lost)的控制 消息,則轉14,);否則繼續(xù)分析路由信息采集探針所發(fā)送上來的下一條信息;2,).若Update New是路由宣告(Announce)類型的報文,轉3,);否則轉 12,);3,).提取Update New中的AS-Path屬性信息,如果AS-Path為空,則表示這是在宣告一條本自治系統(tǒng)內部前綴的信息,這樣的報文對于拓撲構建沒有 用處,轉l,);否則轉4');4,).提取UpdateNew中的下一條前綴Prefix信息,若已經取完,則轉l,); 否則轉5,);5').根據該前綴Prefix信息檢索該Update New所來自的BGP邊界路由器 PeerIP的接口信息數(shù)據庫,如果該接口信息數(shù)據庫中沒有該前綴Prefix,則表 示這是一條全新的路由,則在該接口信息數(shù)據庫中添加該前綴Prefix,以及到 達這個前綴Prefix的下一跳路由器Next-hop和到達這個前綴Prefix所需要經 過的自治系統(tǒng)路徑(AS-Path),轉6,);否則轉9');6').從接口信息數(shù)據庫中檢索每一條目信息艮P,首先,從報文中讀取ASNum,作為PeerIP所在的自治系統(tǒng)號; 再遍歷前述分析處理OSPF報文時的所建立的接口信息數(shù)據庫,設其中一 個條目為〈ASNum—i,ArealDi,AdvertisingRouteri,Interfacelpi, maski>;找出所有滿足條件ASNum—i==ASNum, PeerIP&maski==InterfaceIpi的條目;把maski最大的條目當作有效條目,則取出該條目AdvertisingRouteri作為 Peer IP的RouterID;然后從報文的As-Path字段中取出最后一個元素作為NextH叩接口地址所 在的自治系統(tǒng)號,同理從接口信息數(shù)據庫中檢索出NextHop的RouterID,即 AdvertisingRouterj;在路由拓撲中査找以AdvertisingRouteri禾B AdvertisingRouterj為兩個端點 的路由器級拓撲邊,若查找到,轉7');否則轉8');7,).將此邊的權重增1,轉4');8,).在路由拓撲中增加一條以AdvertisingRouteri禾B AdvertisingRouterj為 兩個端點的路由器之間的連線,并將其權重置為l,轉4');9,).此時表明Update New是在隱式地撤銷一條已經存在的路由,則從該 BGP邊界路由器Peer IP的前綴數(shù)據庫中提取到達該前綴Prefix的原下一跳路 由器,設為Next-hop Old,轉10,);IO,).在路由拓撲中將以AdvertisingRouteri和AdvertisingRouterj為兩個端 點的路由拓撲邊上的權重減l,若該邊的權重被減為零了,則從路由拓撲中刪除該邊,轉ir);11').將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴Prefix的 下一跳路由器改為Update New中的下一跳路由器Next-hop;以及到達這個前 綴Prefix所需經過的自治系統(tǒng)路徑AS-Path改為Update New中的自治系統(tǒng)路徑AS-Path,轉6,);12,).此時表明Update New是路由撤銷(Withdraw)類型的報文,提取 Update New中的下一條前綴Prefix信息,若已經取完,則轉l,);否則轉13');13,).從該BGP邊界路由器PeerIP的前綴數(shù)據庫中提取到達該前綴Prefix 的原下一跳路由器,設為Next-hop Old;利用步驟6')中方法找出PeerIP接 口所在的路由器AdvertisingRouteri和接口 Next-H叩old所在的路由器 AdvertisingRouterj , 并在路由拓撲中將以 AdvertisingRouteri 和 AdvertisingRouterj為兩個端點的路由器邊上的權重減1,若該邊的權重被減為 零了,則從路由拓撲中刪除該邊;將該BGP邊界路由器PeerIP的前綴數(shù)據庫 中關于該前綴Prefix的記錄刪除,轉12');14').此時表明采集探針與該BGP邊界路由器的鄰居關系丟失,則來自該 BGP邊界路由器的所有路由信息均已失效;從該BGP邊界路由器Peer IP的前 綴數(shù)據庫中提取下一條前綴,設為Prefix Current和到達該前綴的下一跳路由 器,設為Next-hop Current;如果已經取完,則轉l,);否則轉15,);15,).利用步驟6)中方法找出Peer IP接口所在的路由器AdvertisingRouteri 和接口 Next-hop Current所在的路由器AdvertisingRouterj,并將路由拓撲中將 以AdvertisingRouteri和AdvertisingRouterj為兩個端點的路由器邊上的權重減 1,若權重減為0,則從路由器級拓撲中刪除該邊;同時將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴Prefix Current的記錄刪除,轉14')。本發(fā)明的多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法,通過路由探針與網絡 中的BGP邊界路由器建立會話,通過被動式的網絡測量方式,在不加重網絡 負載的情況下,實時地采集到BGP路由更新消息,然后再分析處理采集到的 OSPF更新報文,將單自治系統(tǒng)拓撲生成算法生成的拓撲連接成完整的路由器 級拓撲。這種完整性主要體現(xiàn)在以下兩點第一,可以使任何時刻網絡中所有 自治系統(tǒng)路由器級拓撲連接成一個完整的拓撲;第二,可以體現(xiàn)所監(jiān)測多自治 系統(tǒng)網絡中路由器連接關系,并能夠實時根據網絡的變化而變化。其能夠保證 網絡拓撲根據網絡的變化進行實時的更新,保證了與實際網絡拓撲的一致性。通過以上結合附圖對本發(fā)明具體實施例的描述,本發(fā)明的其它方面及特征 對本領域的技術人員而言是顯而易見的。以上對本發(fā)明的具體實施例進行了描述和說明,這些實施例應被認為其只 是示例性的,并不用于對本發(fā)明進行限制,本發(fā)明應根據所附的權利要求進行 解釋。
權利要求
1、一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng),包括至少一個BGP邊界路由器和多個單自治系統(tǒng),其特征在于,還包括路由信息采集探針和分析處理單元,其中所述路由信息采集探針,用于通過對邊界網關協(xié)議的模擬,與網絡中的BGP邊界路由器建立對等關系會話,采集網絡中的BGP路由更新報文,并將采集到的BGP路由信息更新報文發(fā)送給分析處理單元;所述分析處理單元,用于分析處理所述路由信息采集探針采集到的BGP路由更新報文,以及所述單自治系統(tǒng)采集到的OSPF路由更新報文,更新接口信息數(shù)據庫,將單自治系統(tǒng)生成的拓撲連接成完整的路由器級拓撲。
2、 根據權利要求1所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述路由信息采集探針與BGP邊界路由器建立起B(yǎng)GP對等關系會話之后, 只是被動地接受對方發(fā)送過來的BGP路由更新報文。
3、 根據權利要求1所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述路由更新報文包括兩種類型的報文宣告報文和撤銷報文。
4、 根據權利要求1所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述路由信息采集探針還用于記錄與其建立BGP對等關系會話的BGP邊 界路由器的IP地址和所屬的單自治系統(tǒng),并將這些信息與所采集到的每一個 路由更新報文一 同發(fā)送給上層的分析處理單元。
5、 根據權利要求4所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述路由信息采集探針還用于當路由信息采集探針與BGP邊界路由器的 對等關系會話丟失或者建立的時候,向上層的分析處理單元發(fā)送鄰居丟失或者 鄰居建立的控制消息。
6、 根據權利要求1或4或5所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng), 其特征在于,所述分析處理單元,包括OSPF報文處理單元和BGP報文處理 單元,其中所述OSPF報文處理單元,用于根據每一個由單自治系統(tǒng)收集到的OSPF 路由報文,為每個路由器更新報文加上自治系統(tǒng)標號,然后為該自治系統(tǒng)標號的所有路由器建立一個和相應的接口信息對應的路由器標識,并保存在接口信 息數(shù)據庫中;所述BGP報文處理單元,用于通過分析處理由路由信息采集探針采集到 的BGP路由信息更新報文,為每個與路由信息采集探針建立對等關系會話的BGP邊界路由器維護一個前綴數(shù)據,以及到達這個前綴的下一跳路由器標識;為每個邊界路由器通過該下一跳所能到達的前綴個數(shù)進行計數(shù),并維護每個自 治系統(tǒng)中每個路由器的標識和相應路由器的接口信息,從而將孤立的單自治系 統(tǒng)生成的拓撲連接成一個完整的路由器級拓撲。
7、 根據權利要求6所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述前綴數(shù)據中的每條記錄代表該BGP邊界路由器所能到達的一個前綴。
8、 根據權利要求1所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在于,還包括報文區(qū)分模塊,用于區(qū)分路由信息采集探針采集到的報文類型;所述報文類型一類是路由信息采集探針通過與網絡中的BGP路由器建立 鄰居關系而得到的路由更新報文,另一類是路由信息采集探針所發(fā)送的與網絡 中BGP路由器之間的鄰居關系建立或者丟失的應用層控制報文。
9、 根據權利要求1所述的多自治系統(tǒng)路由器級拓撲處理系統(tǒng),其特征在 于,所述單自治系統(tǒng)生成的拓撲是通過單自治系統(tǒng)拓撲生成算法生成的。
10、 一種多自治系統(tǒng)路由器級拓撲處理方法,其特征在于,包括如下步驟 步驟A,路由信息采集探針與網絡中的BGP邊界路由器建立會話,實時地采集BGP路由更新報文;步驟B,分析處理路由信息采集探針采集到的BGP路由更新報文,以及 單自治系統(tǒng)采集到的OSPF路由更新報文,建立接口信息數(shù)據庫,將單自治系 統(tǒng)生成的拓撲連接成完整的路由器級拓撲。
11、 根據權利要求IO所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述步驟A中,所述采集BGP路由更新報文,是通過被動式的網絡測 量方式實現(xiàn)的。
12、 根據權利要求IO所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述步驟B中,所述單自治系統(tǒng)生成的拓撲是通過單自治系統(tǒng)拓撲生 成算法生成的。
13、 根據權利要求IO所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征在于,所述步驟A還包括下列歩驟路由信息采集探針區(qū)分采集到的報文類型一類是路由信息采集探針通過 與網絡中的BGP路由器建立鄰居關系而得到的路由更新報文,另一類是路由 信息采集探針所發(fā)送的與網絡中BGP路由器之間的鄰居關系建立或者丟失的 應用層控制報文。
14、根據權利要求IO所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述歩驟B中,所述分析處理單自治系統(tǒng)收集到的OSPF報文,包括如 下歩驟步驟B1,對于每一個由單自治系統(tǒng)收集到的OSPF路由報文,為每個路 由器更新報文加上自治系統(tǒng)標號,然后為該自治系統(tǒng)標號的所有路由器建立一 個和相應的接口信息對應的路由器標識,并保存在接口信息數(shù)據庫中。
15,根據權利要求14所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述步驟B1包括下列步驟步驟Bll,如果LSA Update報文類型為1,即報文是RouterLSA,則進入 步驟B12;否則結束返回,處理下一個報文信息;步驟B12,從RouterLSA報文中取出自治系統(tǒng)標號信息,以及報文頭部中 的Advertising Router字段和AreadID字段《言息;檢索接口信息數(shù)據庫中的數(shù)據,如果該接口信息數(shù)據庫中有該 〈ASNum,AreadlD,AdvertisingRouter〉的信息,則進行清除;進入步驟B13;歩驟B13 ,如果LSA Update報文中的Link類型為3 ,則取出報文中的linkID 和 linkData 字段與步驟 B12 中的信息組成 〈ASNum,ArealD,AdvertisingRouter,LinklD,LinkData〉的信息存入接口信息數(shù)據庫,然后進入步驟B15;否則進入步驟B14;步驟B14,如果LSA Update報文中的Link的類型為其他類型,則取出報 文中的 linkData 字段與步驟 B12 中信息組成 〈ASNum,AreaID,AdvertisingRouter,LinkData,255.255.255.255>的信息,存入接 口信息數(shù)據庫;然后進入步驟B15;步驟B15,如果還有未遍歷的LSA Update報文中的link類型,則轉到步 驟B13;否則分析下一個更新報文。
16、根據權利要求14所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征在于,所述步驟B中,所述利用路由信息采集探針采集到的BGP路由更新報文,更新接口信息數(shù)據庫,包括下列步驟步驟B2,通過分析處理由路由信息采集探針采集到的BGP路由信息更新 報文,為每個與路由信息采集探針建立對等關系會話的BGP邊界路由器維護 一個前綴數(shù)據,以及到達這個前綴的下一跳路由器標識,為每個邊界路由器通 過該下一跳所能到達的前綴個數(shù)進行計數(shù),并維護每個自治系統(tǒng)中每個路由器 的標識和相應路由器的接口信息,從而將孤立的單自治系統(tǒng)生成的拓撲連接成 一個完整的路由器級拓撲。
17、根據權利要求16所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述步驟B2包括如下步驟步驟B21,分析路由信息采集探針所發(fā)送上來的下一條信息,若為BGP 路由更新報文,設為Update New,則轉步驟B22;若為鄰居丟失的控制消息, 則轉步驟B214;否則繼續(xù)分析路由信息采集探針所發(fā)送上來的下一條信息;步驟B22,若Update New是路由宣告類型的報文,轉步驟B23;否則轉 步驟B212;步驟B23,提取Update New中的AS-Path屬性信息,如果AS-Path為空, 則轉步驟B21;否則轉步驟B24;步驟B24,提取Update New中的下一條前綴PrefDc信息,若已經取完, 則轉步驟B21;否則轉步驟B25;步驟B25,根據該前綴Prefix信息檢索該Update New所來自的BGP邊界 路由器Peer IP的接口信息數(shù)據庫,如果該接口信息數(shù)據庫中沒有該前綴 Prefix,則在該接口信息數(shù)據庫中添加該前綴Prefix,以及到達這個前綴Prefix 的下一跳路由器Next-hop和到達這個前綴Prefcc所需要經過的自治系統(tǒng)路徑, 轉步驟B26;否則轉步驟B29;步驟B26,從接口信息數(shù)據庫中檢索每一條目信息,在路由拓撲中査找以 AdvertisingRouteri禾B AdvertisingRouterj為兩個端點的路由器級拓撲邊,若查 找到,轉歩驟B27;否則轉步驟B28;步驟B27,將此邊的權重增l,轉步驟B24;步驟B28,路由拓撲中增加一條以AdvertisingRouteri和AdvertisingRouterj為兩個端點的路由器之間的連線,并將其權重置為l,轉步驟B24;步驟B29,此時表明Update New是在隱式地撤銷一條已經存在的路由, 則從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取到達該前綴Prefix的原下 一跳路由器,設為Next-hop Old,轉步驟B210;歩驟B210,在路由拓撲中將以AdvertisingRouteri和AdvertisingRouterj為 兩個端點的路由拓撲邊上的權重減l,若該邊的權重被減為零了,則從路由拓 撲中刪除該邊,轉步驟B211;步驟B211,將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴 Prefix的下一跳路由器改為Update New中的下一跳路由器Next-hop;以及到 達這個前綴Prefix所需經過的自治系統(tǒng)路徑AS-Path改為Update New中的自 治系統(tǒng)路徑AS-Path,轉步驟B26;步驟B212,此時表明Update New是路由撤銷(Withdraw)類型的報文, 提取Update New中的下一條前綴Prefix信息,若已經取完,則轉步驟B21; 否則轉步驟B213;步驟B213,從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取到達該前 綴Prefix的原下一跳路由器,設為Next-hop Old;利用步驟B26中方法找出 Peer IP接口所在的路由器AdvertisingRouteri和接口 Next-Hop old所在的路由 器 AdvertisingRouterj , 并在路由拓撲中將以 AdvertisingRouteri和 AdvertisingRouterj為兩個端點的路由器邊上的權重減1,若該邊的權重被減為 零了,則從路由拓撲中刪除該邊;將該BGP邊界路由器PeerIP的前綴數(shù)據庫 中關于該前綴Prefix的記錄刪除,轉步驟B212;步驟B214,此時表明采集探針與該BGP邊界路由器的鄰居關系丟失,則 來自該BGP邊界路由器的所有路由信息均已失效;從該BGP邊界路由器Peer IP的前綴數(shù)據庫中提取下一條前綴,設為Prefix Current和到達該前綴的下一 跳路由器,設為Next-hop Current;如果已經取完,則轉步驟B21;否則轉步 驟B215;歩驟B215,利用步驟B26中方法找出Peer IP接口所在的路由器 AdvertisingRouteri禾卩t妾口 Next-hop Current所在的足各由器AdvertisingRouterj, 并將路由拓撲中將以AdvertisingRouteri禾B AdvertisingRouterj為兩個端點的路 由器邊上的權重減l,若權重減為0,則從路由器級拓撲中刪除該邊;同時將該BGP邊界路由器Peer IP的前綴數(shù)據庫中關于該前綴PrefixCurrent的記錄刪除,轉歩驟B214。
18、根據權利要求17所述的多自治系統(tǒng)路由器級拓撲處理方法,其特征 在于,所述歩驟B26中,所述從接口信息數(shù)據庫中檢索每一條目信息,包括 下列步驟步驟B261,從報文中讀取ASNum,作為Peer IP所在的自治系統(tǒng)號; 歩驟B262,再遍歷分析處理OSPF報文時所建立的接口信息數(shù)據庫,設 其中一個條目為〈ASNum—i,ArealDi,AdvertisingRouteri,Interfacelpi, maski>;找出所有滿足條件ASNum—i==ASNum, PeerIP&maski==InterfaceIpi的條目;步驟B263 ,把maski最大的條目當作有效條目,取出該條目 AdvertisingRouteri作為Peer IP的RouterID;步驟B264,從報文的As-Path字段中取出最后一個元素作為NextHop接 口地址所在的自治系統(tǒng)號,并從接口信息數(shù)據庫中檢索出NextHop的 RouterID,艮卩AdvertisingRouterj 。
全文摘要
本發(fā)明公開了一種多自治系統(tǒng)路由器級拓撲處理系統(tǒng)和方法。該系統(tǒng)包括至少一個BGP邊界路由器和多個單自治系統(tǒng),還包括路由信息采集探針,用于通過對邊界網關協(xié)議的模擬,與網絡中的BGP邊界路由器建立對等關系會話,采集到網絡中的BGP路由更新報文,并將采集到的BGP路由信息更新報文發(fā)送給分析處理單元;分析處理單元,用于分析處理所述路由信息采集探針采集到的BGP路由更新報文,以及所述單自治系統(tǒng)采集到的OSPF路由更新報文,更新接口信息數(shù)據庫,將單自治系統(tǒng)生成的拓撲連接成完整的路由器級拓撲。其基于路由報文構建和更新路由器級拓撲,使拓撲與網絡中的路由器連接關系保持一致,降低了對網絡的影響。
文檔編號H04L29/06GK101252488SQ20081010410
公開日2008年8月27日 申請日期2008年4月15日 優(yōu)先權日2008年4月15日
發(fā)明者劉大鵬, 丹 李, 偉 梁, 畢經平, 振 謝, 沫 陳 申請人:中國科學院計算技術研究所