1.一種數(shù)據(jù)中心內(nèi)獲取路由表的方法,其特征在于,包括:
獲取OSPF網(wǎng)絡(luò)路由表步驟,獲取Router LSA與Network LSA,根據(jù)Router LSA與Network LSA計(jì)算OSPF網(wǎng)絡(luò)的域內(nèi)路由,獲取Summary LSA,并計(jì)算區(qū)域路由間路由,獲取AS External LSA,計(jì)算自治域外部路由;
獲取ISIS網(wǎng)絡(luò)路由表步驟,獲取數(shù)據(jù)表Link_state_main與數(shù)據(jù)表Link_state_attach,查詢Link_state_main中所有路由設(shè)備的設(shè)備名稱,以設(shè)備名稱為id并插入圖形數(shù)據(jù)庫(kù)Neo4j,從而獲取所有的路由設(shè)備,為所有路由設(shè)備建立鏈接關(guān)系,獲取所有偽節(jié)點(diǎn)生成的LSP,遍歷所有路由設(shè)備偽節(jié)點(diǎn)生成的LSP,將所有路由設(shè)備之間的連接關(guān)系插入圖形數(shù)據(jù)庫(kù)Neo4j,并為連接關(guān)系添加距離值metric,根據(jù)所有路由器設(shè)備生成的集合,獲取路由表。
2.如權(quán)利要1所述的數(shù)據(jù)中心內(nèi)獲取路由表的方法,其特征在于,所述OSPF網(wǎng)絡(luò)路由表步驟中計(jì)算OSPF網(wǎng)絡(luò)的域內(nèi)路由步驟包括a.遍歷Router LSA,查找出所有路由設(shè)備并以路由設(shè)備為節(jié)點(diǎn)插入圖形數(shù)據(jù)庫(kù)Neo4j中;遍歷Network LSA,查找出所有路由設(shè)備之間的連接關(guān)系并以連接關(guān)系為節(jié)點(diǎn)關(guān)系插入圖形數(shù)據(jù)庫(kù)Neo4j中;
b.生成所有路由器集合Group,遍歷路由器集合Group中路由器,查詢?cè)绰酚善髦谅酚善骷现新酚善鱥d的路徑、下一跳與metric值,從而完成到達(dá)其它網(wǎng)絡(luò)設(shè)備的路由;
c.根據(jù)Network LSA查詢出所有地址段,以二元組<network,netmask>標(biāo)識(shí),生成集合NetGroup,遍歷集合NetGroup,對(duì)于任意地址段<network、netmask>查詢所述任意地址段相對(duì)應(yīng)的子網(wǎng)相連的路由器,查詢?cè)绰酚善髦了鋈我獾刂范蝺?nèi)路由器的最短路徑,判斷所述任意地址段是否處于最短路徑中,如果是則metric就是最短路徑值,否則metric就是最短路徑metric與<network,netmask>鏈路metric相加,選擇metric值最小的路徑作為源路由器到所述任意地址段的最短路徑。
3.如權(quán)利要1所述的數(shù)據(jù)中心內(nèi)獲取路由表的方法,其特征在于,所述所述OSPF網(wǎng)絡(luò)路由表步驟中計(jì)算區(qū)域路由間路由的步驟為依次遍歷Summary LSA,在Area 0中查找某地址段所在的Summary LSA到Summary LSA的發(fā)布者的距離值metric,將距離值metric與Summary LSA的發(fā)布者的相連的源路由器的距離值相加,結(jié)果作為Summary LSA的發(fā)布者的距離值。
4.如權(quán)利要1所述的數(shù)據(jù)中心內(nèi)獲取路由表的方法,其特征在于,所述獲取ISIS網(wǎng)絡(luò)路由表步驟中獲取路由表的步驟包括遍歷所有路由器設(shè)備生成的集合,查詢?cè)绰酚善髦了新酚善髟O(shè)備生成的集合中routerB的路徑、下一跳與metric值;
根據(jù)Network LSA查詢出所有地址段,以二元組<network,netmask>標(biāo)識(shí),生成集合NetGroup,遍歷集合NetGroup,對(duì)于特定地址段<network,netmas k>查詢所述特定地址段相連的路由器,查詢自身路由器至所述特定地址段相連路由器的最短路徑;判斷所述特定地址段所在路徑是否存在于最短路徑中,如果存在則所述特定地址段的metric就是最短路徑值,否則所述特定地址段的metric就是最短路徑metric與network、netmask所在鏈路metric相加,選擇metric值最小的路徑作為源路由器到所述特定地址段的最短路徑。
5.一種數(shù)據(jù)中心內(nèi)獲取路由表的系統(tǒng),其特征在于,包括:
獲取OSPF網(wǎng)絡(luò)路由表模塊,用于獲取Router LSA與Network LSA,根據(jù)Router LSA與Network LSA計(jì)算OSPF網(wǎng)絡(luò)的域內(nèi)路由,獲取Summary LSA,并計(jì)算區(qū)域路由間路由,獲取AS External LSA,計(jì)算自治域外部路由;
獲取ISIS網(wǎng)絡(luò)路由表模塊,用于獲取數(shù)據(jù)表Link_state_main與數(shù)據(jù)表Link_state_attach,查詢Link_state_main中所有路由設(shè)備的設(shè)備名稱,以設(shè)備名稱為id并插入圖形數(shù)據(jù)庫(kù)Neo4j,從而獲取所有的路由設(shè)備,為所有路由設(shè)備建立鏈接關(guān)系,獲取所有偽節(jié)點(diǎn)生成的LSP,遍歷所有路由設(shè)備偽節(jié)點(diǎn)生成的LSP,將所有路由設(shè)備之間的連接關(guān)系插入圖形數(shù)據(jù)庫(kù)Neo4j,并為連接關(guān)系添加距離值metric,根據(jù)所有路由器設(shè)備生成的集合,獲取路由表。
6.如權(quán)利要5所述的數(shù)據(jù)中心內(nèi)獲取路由表的系統(tǒng),其特征在于,所述OSPF網(wǎng)絡(luò)路由表模塊中計(jì)算OSPF網(wǎng)絡(luò)的域內(nèi)路由步驟包括a.遍歷Router LSA,查找出所有路由設(shè)備并以路由設(shè)備為節(jié)點(diǎn)插入圖形數(shù)據(jù)庫(kù)Neo4j中;遍歷Network LSA,查找出所有路由設(shè)備之間的連接關(guān)系并以連接關(guān)系為節(jié)點(diǎn)關(guān)系插入圖形數(shù)據(jù)庫(kù)Neo4j中;
b.生成所有路由器集合Group,遍歷路由器集合Group中路由器,查詢?cè)绰酚善髦谅酚善骷现新酚善鱥d的路徑、下一跳與metric值,從而完成到達(dá)其它網(wǎng)絡(luò)設(shè)備的路由;
c.根據(jù)Network LSA查詢出所有地址段,以二元組<network,netmask>標(biāo)識(shí),生成集合NetGroup,遍歷集合NetGroup,對(duì)于任意地址段<network、netmask>查詢所述任意地址段相對(duì)應(yīng)的子網(wǎng)相連的路由器,查詢?cè)绰酚善髦了鋈我獾刂范蝺?nèi)路由器的最短路徑,判斷所述任意地址段是否處于最短路徑中,如果是則metric就是最短路徑值,否則metric就是最短路徑metric與<network,netmask>鏈路metric相加,選擇metric值最小的路徑作為源路由器到所述任意地址段的最短路徑。
7.如權(quán)利要5所述的數(shù)據(jù)中心內(nèi)獲取路由表的系統(tǒng),其特征在于,所述所述OSPF網(wǎng)絡(luò)路由表模塊中計(jì)算區(qū)域路由間路由的步驟為依次遍歷Summary LSA,在Area 0中查找某地址段所在的Summary LSA到Summary LSA的發(fā)布者的距離值metric,將距離值metric與Summary LSA的發(fā)布者的相連的源路由器的距離值相加,結(jié)果作為Summary LSA的發(fā)布者的距離值。
8.如權(quán)利要7所述的數(shù)據(jù)中心內(nèi)獲取路由表的系統(tǒng),其特征在于,所述獲取ISIS網(wǎng)絡(luò)路由表模塊中獲取路由表的步驟包括遍歷所有路由器設(shè)備生成的集合,查詢?cè)绰酚善髦了新酚善髟O(shè)備生成的集合中routerB的路徑、下一跳與metric值;
根據(jù)Network LSA查詢出所有地址段,以二元組<network,netmask>標(biāo)識(shí),生成集合NetGroup,遍歷集合NetGroup,對(duì)于特定地址段<network,netmas k>查詢所述特定地址段相連的路由器,查詢自身路由器至所述特定地址段相連路由器的最短路徑;判斷所述特定地址段所在路徑是否存在于最短路徑中,如果存在則所述特定地址段的metric就是最短路徑值,否則所述特定地址段的metric就是最短路徑metric與network、netmask所在鏈路metric相加,選擇metric值最小的路徑作為源路由器到所述特定地址段的最短路徑。