国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多源拓?fù)渥詣?dòng)發(fā)現(xiàn)算法研究

2019-10-15 05:04周林鵬何錫點(diǎn)
關(guān)鍵詞:子網(wǎng)網(wǎng)絡(luò)拓?fù)?/a>網(wǎng)關(guān)

◆周林鵬 何錫點(diǎn)

基于多源拓?fù)渥詣?dòng)發(fā)現(xiàn)算法研究

◆周林鵬 何錫點(diǎn)

(中國(guó)電子科技集團(tuán)公司第二十八研究所 江蘇 210000)

經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),傳統(tǒng)拓?fù)浒l(fā)現(xiàn)算法中存在節(jié)點(diǎn)冗余發(fā)現(xiàn)、鏈路關(guān)系不全、網(wǎng)關(guān)和交換機(jī)管理IP無(wú)法區(qū)分等問(wèn)題。本文基于SNMP、OSPF、LLDP和ICMP等協(xié)議,融合多源數(shù)據(jù)分析,提出一種拓?fù)浒l(fā)現(xiàn)改進(jìn)算法。通過(guò)搭建數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)鋵?shí)現(xiàn),發(fā)現(xiàn)新算法較傳統(tǒng)算法而言,拓?fù)浒l(fā)現(xiàn)更全面、更準(zhǔn)確,能夠?yàn)槿W(wǎng)拓?fù)浒l(fā)現(xiàn)提供支撐。

網(wǎng)絡(luò)拓?fù)洌籗NMP;LLDP;多源分析

拓?fù)渥詣?dòng)發(fā)現(xiàn)算法有很多種,但主流主要有兩種:數(shù)據(jù)鏈路層拓?fù)浒l(fā)現(xiàn)和網(wǎng)絡(luò)層拓?fù)浒l(fā)現(xiàn)。從目前研究現(xiàn)狀來(lái)看,兩種傳統(tǒng)的拓?fù)浒l(fā)現(xiàn)算法在使用中存在的局限性,較難適配現(xiàn)有網(wǎng)絡(luò)環(huán)境。通過(guò)搭建實(shí)驗(yàn)研究,發(fā)現(xiàn)其主要存在以下突出問(wèn)題:(1)由于SNMP協(xié)議[1]是基于TCP/IP協(xié)議,使用交換機(jī)管理IP和網(wǎng)關(guān)分別作為目標(biāo)地址時(shí),采集MIB信息時(shí),兩者返回結(jié)果完全一致,故無(wú)法區(qū)分網(wǎng)關(guān)、交換機(jī)設(shè)備,導(dǎo)致拓?fù)湫畔⑷哂?;?)通過(guò)SNMP采集ARP、Route等信息與交換機(jī)系統(tǒng)版本有關(guān),可能導(dǎo)致拓?fù)涔?jié)點(diǎn)發(fā)現(xiàn)不全;(3)同一節(jié)點(diǎn)信息可能存放于多臺(tái)交換機(jī)設(shè)備的ARP、Bridge等信息中,可能導(dǎo)致鏈路重復(fù)發(fā)現(xiàn)或發(fā)現(xiàn)不全。本文以SNMP、OSPF、LLDP和ICMP協(xié)議為基礎(chǔ),對(duì)傳統(tǒng)拓?fù)浒l(fā)現(xiàn)算法進(jìn)行改進(jìn),能夠有效提高拓?fù)浒l(fā)現(xiàn)能力。

1 現(xiàn)有網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)協(xié)議及算法

1.1 常用拓?fù)鋮f(xié)議

常見(jiàn)的拓?fù)浒l(fā)現(xiàn)協(xié)議有如下幾種,如表1:

表1 常見(jiàn)的拓?fù)浒l(fā)現(xiàn)協(xié)議

1.2 傳統(tǒng)網(wǎng)絡(luò)層拓?fù)浒l(fā)現(xiàn)算法

傳統(tǒng)網(wǎng)絡(luò)層拓?fù)浒l(fā)現(xiàn)算法基本思路是:從默認(rèn)網(wǎng)關(guān)路由器開(kāi)始,采用SNMP協(xié)議對(duì)網(wǎng)關(guān)IP進(jìn)行掃描,讀取ipRouteTable信息,獲取其ARP表信息,判定設(shè)備當(dāng)前類型(路由、交換機(jī)或主機(jī))[4]。遍歷當(dāng)前對(duì)象ipRouteDest信息,根據(jù) ipRouteType判定其是否為直接路由,獲取掩碼ipRouteMask信息,確定子網(wǎng)范圍。采用ICMP,對(duì)子網(wǎng)設(shè)備狀態(tài)進(jìn)行判定。獲取ipRouteNextHop下一跳路由,作為新的入口路由器,直到發(fā)現(xiàn)全網(wǎng)設(shè)備[5]。

經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),此類網(wǎng)絡(luò)層拓?fù)浒l(fā)現(xiàn)存在以下不足:

(1)通過(guò)SNMP采集到的ipRouteDest可能同時(shí)包含交換機(jī)設(shè)備IP、網(wǎng)關(guān)IP等,其分別采集的ipRouteNextHop返回結(jié)果完全一致,在進(jìn)行后續(xù)條件判定會(huì)產(chǎn)生節(jié)點(diǎn)發(fā)現(xiàn)冗余;

(2)某些設(shè)備采集不到完整的ipRouteNextHop信息,可能導(dǎo)致網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)不全;

(3)部分設(shè)備的ipRouteType信息中,存在大量冗余信息,會(huì)對(duì)后續(xù)發(fā)現(xiàn)產(chǎn)生干擾。

1.3 傳統(tǒng)鏈路層拓?fù)浒l(fā)現(xiàn)算法

傳統(tǒng)鏈路層拓?fù)浒l(fā)現(xiàn)算法基本思路為:以入口交換機(jī)為出發(fā)點(diǎn),首先通過(guò)SNMP協(xié)議、ARP協(xié)議,獲取入口交換機(jī)中緩存的地址轉(zhuǎn)發(fā)信息。識(shí)別出哪些是有用端口后,通過(guò)模糊匹配獲取到連接主機(jī)和交換機(jī)。通過(guò)采集交換機(jī)CDP鄰居表信息,將新的交換機(jī)作為入口交換機(jī),通過(guò)采用遞歸算法,直至發(fā)現(xiàn)一個(gè)完整的網(wǎng)絡(luò)拓?fù)鋄6]。

經(jīng)實(shí)驗(yàn),此類鏈路層拓?fù)浒l(fā)現(xiàn)存在以下不足:

(1)通過(guò)ARP協(xié)議采集的數(shù)據(jù)可能在多臺(tái)設(shè)備中均存在,導(dǎo)致拓?fù)浒l(fā)現(xiàn)數(shù)據(jù)冗余、鏈路發(fā)現(xiàn)不準(zhǔn)確;

(2)對(duì)于與交換機(jī)邏輯口相連的場(chǎng)景,由于為同一端口接入,MAC地址一致,無(wú)法確認(rèn)設(shè)備連接關(guān)系。

2 基于多源分析拓?fù)浒l(fā)現(xiàn)算法

為了克服傳統(tǒng)網(wǎng)絡(luò)層、鏈路層拓?fù)浒l(fā)現(xiàn)算法的不足,本文提出一種基于多源分析拓?fù)浒l(fā)現(xiàn)算法。其核心思想是基于SNMP協(xié)議,遞歸采集交換機(jī)ARP信息,輔助以LLDP、OSPF、ICMP等多種協(xié)議采集數(shù)據(jù),綜合多源數(shù)據(jù)進(jìn)行分析,確定網(wǎng)絡(luò)拓?fù)潢P(guān)系。

改進(jìn)算法的前提:用戶需要開(kāi)啟交換機(jī)SNMP服務(wù),配置團(tuán)體字。對(duì)支持LLDP協(xié)議的交換機(jī)需要開(kāi)啟LLDP協(xié)議。其核心步驟如下:

(1)獲取設(shè)備IP和MAC映射關(guān)系;

(2)獲取交換機(jī)直連關(guān)系;

(3)分析交換機(jī)管理地址、網(wǎng)關(guān),獲取子網(wǎng)范圍;

(4)綜合分析網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。

本算法中,涉及的主要MIB信息和OID表如表2。

2.1 獲取設(shè)備IP和MAC映射關(guān)系

(1)將入口交換機(jī)作為目的交換機(jī),使用SNMP協(xié)議獲取該設(shè)備ARP和SYS模塊信息,主要包括: ipNetToMediaIfIndex、ipNetToMediaPhysAdress、ipNetToMediaNetAdress、sysDescr、ipNetToMediaType等屬性;

(2)根據(jù)(1)中獲取的ipNetToMediaType、sysDescr屬性以及SNMP協(xié)議是否有返回值等,綜合判定是否為交換機(jī)或路由設(shè)備。若為交換機(jī),則執(zhí)行步驟(3);若不為交換機(jī),則執(zhí)行(3)步驟;

(3)設(shè)置設(shè)備類型為主機(jī)類型。記錄當(dāng)前相連交換機(jī)IP、ipNetToMediaIfIndex;

(4)將以上信息存儲(chǔ)至ArpInfo_List集合中,便于后續(xù)綜合分析。

表2 SNMP相關(guān)主要MIB信息表

2.2 獲取交換機(jī)之間直連關(guān)系

(1)判定目的交換機(jī)當(dāng)前是否支持LLDP協(xié)議,若支持,則獲取交換機(jī)的NeiPortIndex和NeiMac信息。若不支持,則從遍歷ArpInfo_List,將下一個(gè)交換機(jī)作為目的交換機(jī);

(2)截取NeiMac的前13字節(jié)(如:00:00:00:00:0)作為此交換機(jī)的MAC(實(shí)驗(yàn)發(fā)現(xiàn),交換機(jī)各端口MAC地址不相同,但主流交換機(jī)中各端口存在MAC前部分字節(jié)重復(fù),如華為、Cisco等廠商同一設(shè)備端口前14位一致,中興、邁普等設(shè)備端口的前13位一致。故此處采用MAC前13字節(jié));

(3)從ArpInfo_List集合中模糊匹配(2)中的交換機(jī)MAC,獲取新發(fā)現(xiàn)的交換機(jī)IP地址;

(4)將(3)中發(fā)現(xiàn)的交換機(jī)作為目的交換機(jī),遞歸執(zhí)行(1)、(2)、(3)步驟;

(5)將發(fā)現(xiàn)的交換機(jī)記錄至Switches_Queue集合,同時(shí)將交換機(jī)之間的直連關(guān)系記錄至Switches_Lines集合。

圖2 獲取交換機(jī)之間直連關(guān)系

2.3 區(qū)分交換機(jī)管理地址和網(wǎng)關(guān),獲取子網(wǎng)范圍

(1)從目的交換機(jī)為入口,采集其IpAdEntAddr、IpAdEntIfIndex等信息;

(2)通過(guò)IpAdEntAddr和IpAdEntIfIndex對(duì)比匹配,過(guò)濾IP為目的交換機(jī)或IP為“127.0.0.1”的IP,獲取網(wǎng)關(guān)IP。同時(shí),設(shè)置ArpInfo_List集合中對(duì)應(yīng)IP的設(shè)備類型為網(wǎng)關(guān);

(3)獲取目的交換機(jī)IpAdEntNetMask掩碼信息,結(jié)合(2)中的目的交換機(jī)網(wǎng)關(guān),計(jì)算目的交換機(jī)對(duì)應(yīng)子網(wǎng)IP范圍;

(4)遍歷Switches_Queue集合,將下一個(gè)交換機(jī)指定為目的交換機(jī),遞歸執(zhí)行(1)(2)(3)步驟,直至所有交換機(jī)遍歷結(jié)束為止,將所有子網(wǎng)信息存至ChildNet_List集合。

圖3 區(qū)分交換機(jī)管理地址和網(wǎng)關(guān),獲取子網(wǎng)范圍

2.4 綜合分析拓?fù)浣Y(jié)構(gòu)

(1)分析交換機(jī)直連關(guān)系Switches_Lines集合,若某交換機(jī)節(jié)點(diǎn)出現(xiàn)的次數(shù)最多,則設(shè)定其為根節(jié)點(diǎn)交換機(jī);

(2)從根節(jié)點(diǎn)交換機(jī)開(kāi)始,采用深度遍歷算法,分析其直連交換機(jī)。若存在直連交換機(jī),則執(zhí)行(3)步驟;若不存在則,執(zhí)行(4)步驟;

(3)獲取根節(jié)點(diǎn)交換機(jī)對(duì)應(yīng)的Bridge信息,若dot1dTpFdbPort中無(wú)重復(fù),則記錄其對(duì)應(yīng)端口的MAC地址dot1dTpFdbAdress。若dot1dTpFdbPort中出現(xiàn)重復(fù),則根據(jù)ArpInfo_List中端口索引、交換機(jī)直連關(guān)系Switches_Lines、以及dot1dTpFdbPort最小重復(fù)次數(shù)為依據(jù),確定根節(jié)點(diǎn)直連交換機(jī)MAC和IP。記錄交換機(jī)與交換機(jī)端口連線關(guān)系,并將新發(fā)現(xiàn)的交換機(jī)作為新的根節(jié)點(diǎn)交換機(jī),遞歸執(zhí)行(1)(2)(3)步驟;

(4)根據(jù)ArpInfo_List集合、ChildNet_List集合,綜合分析與之相連的子網(wǎng)或主機(jī)設(shè)備;

(5)遍歷ARP表中未連接的離散點(diǎn),獲取其ArpInfo_List集合中的IP、端口索引進(jìn)行匹配,若其交換機(jī)IP、端口索引完全匹配,則記錄其連線關(guān)系;

(6)采用ICMP、OSPF等協(xié)議,驗(yàn)證拓?fù)浞治龅臏?zhǔn)確性,并加以修正。同時(shí),確定設(shè)備節(jié)點(diǎn)的實(shí)時(shí)狀態(tài)。

圖4 綜合分析拓?fù)浣Y(jié)構(gòu)

3 結(jié)果與分析

本實(shí)驗(yàn)環(huán)境主要由9臺(tái)交換機(jī)組成,一個(gè)核心交換機(jī),多臺(tái)接入交換機(jī),在接入交換機(jī)上配置網(wǎng)關(guān),連接各子網(wǎng)。

采用傳統(tǒng)拓?fù)浒l(fā)現(xiàn)算法,其采集拓?fù)潢P(guān)系如下(圖5)。

實(shí)驗(yàn)分析發(fā)現(xiàn),與核心交換機(jī)直連的還有192.168.9.*的子網(wǎng),且存在部分交換機(jī)發(fā)現(xiàn)不全等現(xiàn)象。

采用本文改進(jìn)拓?fù)渌惴ǚ治?,其最終發(fā)現(xiàn)的拓?fù)鋱D如下(圖6)。

實(shí)驗(yàn)結(jié)果與實(shí)際真實(shí)拓?fù)浠疽恢?。?jīng)對(duì)比說(shuō)明,改進(jìn)拓?fù)浒l(fā)現(xiàn)算法能夠更準(zhǔn)確、全面發(fā)現(xiàn)拓?fù)浣Y(jié)構(gòu)。能夠?qū)θW(wǎng)拓?fù)浒l(fā)現(xiàn)起到支撐作用。

圖5 傳統(tǒng)算法拓?fù)浒l(fā)現(xiàn)效果圖

圖6 改進(jìn)算法拓?fù)浒l(fā)現(xiàn)效果圖

4 結(jié)束語(yǔ)

本文給出了一種基于多源拓?fù)渥詣?dòng)發(fā)現(xiàn)算法。能夠基于現(xiàn)有ARP、SNMP等協(xié)議的局限性,盡可能完整發(fā)現(xiàn)全局網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),能夠有效過(guò)濾網(wǎng)關(guān)IP,提供更為高效的拓?fù)浒l(fā)現(xiàn)和分析手段。在今后工作中,要嘗試對(duì)含有防火墻、安全策略的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)進(jìn)行研究,相信會(huì)有更多的優(yōu)秀成果。

[1]張春強(qiáng).深入理解Net-SNMP[M].北京:北京機(jī)械工業(yè)出版社,2015.

[2]薛健.IP 級(jí)網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)技術(shù)的研究與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[3]Nur A Y,Mehmet E T.Cross-AS(X-AS) Internet Topology Mapping[Z].Computer Networks,2018:132.

[4]Motamedi R,Rejaie R,Walter W.A.Survey of Techniques for Internet topo-logy discovery[J].IEEE Communications Surveys & Tutorials,2015,17(02:1044-1065.

[5]Kardes H,Gunes M,Oz T.Cheleby:A Subnet-Level Internet Topology Mapping System[C].Communication Systems and Networks(COMSNETS),2012:1-10.

[6]周長(zhǎng)建.融合多協(xié)議的網(wǎng)絡(luò)層拓?fù)浒l(fā)現(xiàn)算法研究[D]. 哈爾濱:哈爾濱工業(yè)大學(xué),2017.

猜你喜歡
子網(wǎng)網(wǎng)絡(luò)拓?fù)?/a>網(wǎng)關(guān)
基于通聯(lián)關(guān)系的通信網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)方法
基于FPGA的工業(yè)TSN融合網(wǎng)關(guān)設(shè)計(jì)
一種主從冗余網(wǎng)關(guān)的故障模式分析與處理
基于自適應(yīng)學(xué)習(xí)率優(yōu)化的AdaNet改進(jìn)
子網(wǎng)劃分問(wèn)題研究及應(yīng)用
電子制作(2018年23期)2018-12-26
天地一體化網(wǎng)絡(luò)地面軟網(wǎng)關(guān)技術(shù)及其應(yīng)用
航天器多子網(wǎng)時(shí)間同步系統(tǒng)設(shè)計(jì)與驗(yàn)證
車聯(lián)網(wǎng)網(wǎng)關(guān)架構(gòu)的設(shè)計(jì)
2017款捷豹F-PACE網(wǎng)絡(luò)拓?fù)鋱D及圖注