• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于SNMP的網(wǎng)絡(luò)拓?fù)渥詣?dòng)發(fā)現(xiàn)算法的研究和應(yīng)用1

      2010-11-25 02:37:16
      制造業(yè)自動(dòng)化 2010年13期
      關(guān)鍵詞:子網(wǎng)網(wǎng)絡(luò)拓?fù)?/a>網(wǎng)絡(luò)設(shè)備

      聶 明

      (南京信息職業(yè)技術(shù)學(xué)院,南京 210046)

      0 引言

      隨著網(wǎng)絡(luò)規(guī)模的日益擴(kuò)大,復(fù)雜度的不斷增加,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)也隨之變得日益復(fù)雜。一個(gè)好的網(wǎng)絡(luò)管理系統(tǒng)應(yīng)該反映網(wǎng)絡(luò)中所有設(shè)備的布局結(jié)構(gòu),方便用戶全方位地管理網(wǎng)絡(luò),對網(wǎng)絡(luò)異常流量、設(shè)備告警、網(wǎng)絡(luò)攻擊現(xiàn)象等進(jìn)行快速診斷和定位,以減少網(wǎng)絡(luò)異常造成的損失[1]。網(wǎng)絡(luò)拓?fù)涞淖詣?dòng)發(fā)現(xiàn),其目的是獲得被管理網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),主要指互連設(shè)備,如路由器、交換機(jī)、PC設(shè)備等的信息以及它們之間的連接關(guān)系。網(wǎng)絡(luò)拓?fù)涞淖詣?dòng)發(fā)現(xiàn)是網(wǎng)絡(luò)管理系統(tǒng)的重要組成部分,是發(fā)現(xiàn)系統(tǒng)故障和監(jiān)控設(shè)備性能的基礎(chǔ),更是衡量一個(gè)網(wǎng)絡(luò)管理系統(tǒng)成敗的重要標(biāo)準(zhǔn)之一[2]。

      1 網(wǎng)絡(luò)拓?fù)涞淖詣?dòng)發(fā)現(xiàn)

      網(wǎng)絡(luò)拓?fù)涞淖詣?dòng)發(fā)現(xiàn)通過收集網(wǎng)絡(luò)拓?fù)涞母鞣N必要信息,確定網(wǎng)絡(luò)元素之間的互連關(guān)系,并在此基礎(chǔ)上構(gòu)造網(wǎng)絡(luò)拓?fù)鋱D,為網(wǎng)絡(luò)管理人員提供一個(gè)直觀了解全局網(wǎng)絡(luò)狀態(tài)的友好界面。網(wǎng)絡(luò)拓?fù)涞淖詣?dòng)發(fā)現(xiàn)是對大規(guī)模網(wǎng)絡(luò)進(jìn)行有效管理的必不可少的手段,當(dāng)前常用的網(wǎng)絡(luò)拓?fù)渥詣?dòng)發(fā)現(xiàn)方法主要包括基于ARP協(xié)議的拓?fù)浒l(fā)現(xiàn)方法、基于ICMP協(xié)議的拓?fù)浒l(fā)現(xiàn)方法和基于SNMP協(xié)議的拓?fù)浒l(fā)現(xiàn)方法等[3~6]。

      1)基于ARP協(xié)議的拓?fù)浒l(fā)現(xiàn)方法。每個(gè)支持地址協(xié)議的網(wǎng)絡(luò)設(shè)備中都維護(hù)著一張ARP表,該表記錄了該設(shè)備連接的網(wǎng)絡(luò)設(shè)備的IP地址和MAC地址的對應(yīng)關(guān)系。利用ARP表,可以從一臺已知路由器或交換機(jī)的ARP表發(fā)現(xiàn)其連接的其它網(wǎng)絡(luò)設(shè)備,從這些新發(fā)現(xiàn)設(shè)備中區(qū)分出路由器和交換機(jī),并繼續(xù)根據(jù)這些路由器和交換機(jī)的ARP表進(jìn)行設(shè)備發(fā)現(xiàn),從而得到整個(gè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。因?yàn)锳RP表中的網(wǎng)絡(luò)設(shè)備地址都是最近活動(dòng)過的有效設(shè)備的IP地址,幾乎沒有冗余信息,所以該拓?fù)浒l(fā)現(xiàn)方法效率很高。但如果網(wǎng)絡(luò)過大,ARP表中可能無法包括網(wǎng)絡(luò)中實(shí)際存在的所有網(wǎng)絡(luò)設(shè)備,同時(shí)待發(fā)現(xiàn)的網(wǎng)絡(luò)設(shè)備需要支持ARP協(xié)議,所以該方法適合于局域網(wǎng)的拓?fù)浒l(fā)現(xiàn)。

      2)基于ICMP協(xié)議的拓?fù)浒l(fā)現(xiàn)方法。它通過向網(wǎng)絡(luò)設(shè)備發(fā)送ICMP報(bào)文,測試設(shè)備的可達(dá)性。該方法對一個(gè)網(wǎng)段內(nèi)所有設(shè)備的網(wǎng)絡(luò)IP地址依次執(zhí)行ping操作,根據(jù)響應(yīng)就可以發(fā)現(xiàn)當(dāng)前該網(wǎng)段內(nèi)所有活動(dòng)的網(wǎng)絡(luò)設(shè)備。根據(jù)給定的IP區(qū)間逐一進(jìn)行ping操作,根據(jù)結(jié)果,再對上一次操作記錄的活動(dòng)的IP地址逐一進(jìn)行路由跟蹤,記錄下每一次路由跟蹤的操作結(jié)果,根據(jù)前面的操作結(jié)果,再分析所得到的信息,從中得到整個(gè)拓?fù)涞倪B接情況。該拓?fù)浒l(fā)現(xiàn)方法簡單、可靠、快速,但發(fā)現(xiàn)具有一定的盲目性,并在一定程度上加重了網(wǎng)絡(luò)的負(fù)荷等,此方法適用于子網(wǎng)內(nèi)網(wǎng)絡(luò)設(shè)備的發(fā)現(xiàn)。

      3)基于SNMP的拓?fù)浒l(fā)現(xiàn)方法。每個(gè)網(wǎng)絡(luò)設(shè)備都有路由表,路由信息中包含了完整的網(wǎng)絡(luò)拓?fù)湫畔?,包括路由目的網(wǎng)絡(luò)地址、目的網(wǎng)絡(luò)的子網(wǎng)掩碼、該路由的下一站IP地址、對應(yīng)的端口索引和路由協(xié)議類型等。由于路由表中的下一站地址項(xiàng)所標(biāo)識的必然是具有路由功能的網(wǎng)絡(luò)結(jié)點(diǎn),因此從設(shè)定路由器開始,讀取路由器的路由表,可以逐漸向下發(fā)現(xiàn)網(wǎng)絡(luò)中所有基于路由功能的網(wǎng)絡(luò)結(jié)點(diǎn)。再根據(jù)路由表的本地接口的索引標(biāo)識項(xiàng),找到接口表中對應(yīng)的接口索引,由接口表的接口類型就可以了解到所在子網(wǎng)的類型,從而構(gòu)建出整個(gè)網(wǎng)絡(luò)的拓?fù)潢P(guān)系圖。這種方法的拓?fù)浒l(fā)現(xiàn)過程和算法簡單,目標(biāo)明確,發(fā)現(xiàn)效率高,系統(tǒng)和網(wǎng)絡(luò)開銷小,因此得到人們的廣泛應(yīng)用。但是,該方法也存在不足之處,主要表現(xiàn)在:

      (1)無法發(fā)現(xiàn)網(wǎng)絡(luò)中沒有配置IP的網(wǎng)絡(luò)設(shè)備;

      (2)一個(gè)路由器往往配置了多個(gè)IP地址,并且基于路由表的發(fā)現(xiàn)方法算法是基于IP地址的,所以對于路由器多IP現(xiàn)象,可能導(dǎo)致路由器的發(fā)現(xiàn)與實(shí)際情況不合;

      (3)要依次檢測各網(wǎng)絡(luò)設(shè)備的狀態(tài),導(dǎo)致算法運(yùn)行時(shí)間可能過長,同時(shí)設(shè)備的發(fā)現(xiàn)受網(wǎng)絡(luò)時(shí)延等影響,不能完全實(shí)時(shí)反映網(wǎng)絡(luò)狀況;

      (4)路由表中包含了大量冗余信息;

      (5)網(wǎng)絡(luò)設(shè)備必須支持SNMP協(xié)議。

      因此,該方法主要用于大型主干網(wǎng)絡(luò)的拓?fù)浒l(fā)現(xiàn),主要發(fā)現(xiàn)網(wǎng)絡(luò)中的路由設(shè)備,反映網(wǎng)絡(luò)的整體拓?fù)浣Y(jié)構(gòu)狀況。

      可見,當(dāng)前各種拓?fù)浞椒ǜ饔袃?yōu)缺點(diǎn)和局限性,在實(shí)際應(yīng)用中需要根據(jù)具體的情況,有選擇或綜合地應(yīng)用。本文給出了一種基于SNMP的網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)算法,經(jīng)過實(shí)際網(wǎng)絡(luò)管理系統(tǒng)的驗(yàn)證,能夠有效發(fā)現(xiàn)整個(gè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。

      2 基于SNMP的網(wǎng)絡(luò)拓?fù)渥詣?dòng)發(fā)現(xiàn)算法

      2.1 算法思想

      在網(wǎng)絡(luò)中路由器之間的鏈路是由其兩端路由器的端口互聯(lián)構(gòu)成的,根據(jù)TCP/IP的編址原理,鏈路兩端路由器端口的IP地址必然處于同一個(gè)子網(wǎng)中。因此,通過一個(gè)子網(wǎng)中已知的IP地址和這個(gè)IP地址的子網(wǎng)掩碼即可計(jì)算出該子網(wǎng)中所有其他的IP地址。

      根據(jù)以上思路,從某個(gè)節(jié)點(diǎn)開始,訪問其MIB庫,得到該節(jié)點(diǎn)所有接口的IP地址和子網(wǎng)掩碼,該節(jié)點(diǎn)稱為種子節(jié)點(diǎn)。通過計(jì)算得到與每一接口在同一個(gè)子網(wǎng)內(nèi)的其他IP地址。判斷這些IP地址是否屬于路由器信息,如果是則將此路由器信息記錄到待檢測路由設(shè)備鏈表,作為下一層發(fā)現(xiàn)的種子節(jié)點(diǎn)。并同時(shí)記錄兩個(gè)路由器間的鏈路信息到拓?fù)湫畔㈡湵怼V貜?fù)以上步驟直到?jīng)]有種子節(jié)點(diǎn)或者達(dá)到指定的發(fā)現(xiàn)層數(shù),即可完成相應(yīng)的拓?fù)浒l(fā)現(xiàn)過程。

      2.2 算法描述

      算法可具體描述如下:

      1)根據(jù)網(wǎng)絡(luò)管理系統(tǒng)的IP和掩碼,使用路由跟蹤的方法獲取網(wǎng)管終端所在的默認(rèn)路由器網(wǎng)關(guān)地址。訪問該路由器獲取ipAdderssTable地址表信息,將其編號加入AllRouters隊(duì)列(元素包括路由器名、接口號、接口IP、接口號和接口IP等),其中接口號與接口IP的多少依據(jù)各個(gè)不同路由器而不同)和AccessRouters隊(duì)列(待訪問路由器,結(jié)構(gòu)跟AllRouters類似);

      2)從AccessRoutes取出一個(gè)元素設(shè)為當(dāng)前處理的路由器Rx,依次訪問Rx的路由表ipRouteTable表項(xiàng),將目標(biāo)子網(wǎng)信息編號無重復(fù)地放入子網(wǎng)隊(duì)列Subnets(元素包括子網(wǎng)號,子網(wǎng)地址,掩碼等);

      3)判斷路由器與子網(wǎng)連接關(guān)系:依次對Rx的ipRouteTable表項(xiàng)檢查,如果ipRouteType項(xiàng)不為4,表示相應(yīng)子網(wǎng)與Rx直接相連,下一跳地址ipNextHopIpAddress項(xiàng)為空。根據(jù)Rx的ipAddressTable信息確定y端口與該子網(wǎng)z相連接,將連接關(guān)系組(Rx,y,Subnets)無重復(fù)地放入R-links-S隊(duì)列(路由器接口與子網(wǎng)相連的接配對的二元組);

      4)判斷路由器之間的連接關(guān)系:如果ipRouteType為4,下一跳ipNextHopIpAddress地址有效,表明另一個(gè)路由器與Rx直接相連。根據(jù)ipNextHopIpAddress地址信息訪問另一個(gè)路由器的ipAddressTable,判斷AllRouters隊(duì)列中是否己經(jīng)存在該路由器信息,如不存在則把該路由器編號加入隊(duì)列AllRouters和AccessRouters中。很容易確定Rx的y端口與另一個(gè)路由器Ru的v端口直接連接。因此把元素(Rx,y,Ru,v)無重復(fù)地放入隊(duì)列R-links-R(路由器接口與路由器接口相連的二元組)中。

      5)把隊(duì)列R-links-R進(jìn)行去冗處理。因?yàn)樵谝陨系乃惴▽?shí)現(xiàn)中,有可能存相同的連接信息加入到隊(duì)列中。例如:R1的2端口與R4的3端口直接相連,在算法實(shí)現(xiàn)過程中,可能同時(shí)在隊(duì)列中加入了(R1,2,R4,3)和(R4,3,R1,2)的元素組,雖然它們在形式上不一樣,但他們表示同一個(gè)連接信息。

      6)把Rx的元素組從AccessRouters中刪除,如果AccessRouters不為空,轉(zhuǎn)到(2),如果為空,程序中止。

      算法運(yùn)行結(jié)束以后,AllRouters包含了所有活動(dòng)的路由器,子網(wǎng)隊(duì)列Subnets包含了所有活動(dòng)的子網(wǎng),隊(duì)列R-links-S和隊(duì)列R-links-R的信息表示路由器與子網(wǎng)、路由器與路山器之間連接關(guān)系,最終可以準(zhǔn)確而完整地把拓?fù)浣Y(jié)構(gòu)繪制出來。

      2.3 拓?fù)浒l(fā)現(xiàn)中幾個(gè)問題

      1)路由器多IP地址問題

      路由器的每個(gè)接口對應(yīng)著一個(gè)IP地址,一個(gè)接口下可以配置多個(gè)端口。根據(jù)以上拓?fù)浒l(fā)現(xiàn)方法,就會出現(xiàn)重復(fù)訪問同一路由器的現(xiàn)象,嚴(yán)重影響拓?fù)浒l(fā)現(xiàn)算法的準(zhǔn)確性和效率。本文采取的具體解決方法是:路由器MIB庫中的ipAddrTable表中提供了該網(wǎng)絡(luò)設(shè)備所有的IP地址信息,ipAddrEntry表中的每一行是一個(gè)ipAddrEntry,而一個(gè)ipAddrEntry對應(yīng)一個(gè)接口的地址信息。由于ipAddrTable中的對象都是只讀的,所以使用ipAddrTable中的一個(gè)IP地址來標(biāo)識路由器,同時(shí)結(jié)合ifTable表,可以把接口和其IP地址一一對應(yīng)起來。在實(shí)際應(yīng)用時(shí)選擇ipAddTable中的最大的IP作為路由器的標(biāo)識IP地址更合理,由此就解決多IP識別問題。

      2)控制拓?fù)溟撝?/p>

      上述算法利用路由表來從內(nèi)向外發(fā)現(xiàn)路由器,可以發(fā)現(xiàn)的范圍很廣,如果不加以控制,可能造成拓?fù)浒l(fā)現(xiàn)時(shí)間過長,達(dá)不到預(yù)期發(fā)現(xiàn)的效果。通過對路由器的向下發(fā)現(xiàn)Hop數(shù)進(jìn)行控制,并設(shè)置閾值,當(dāng)從某個(gè)路由器向下發(fā)現(xiàn)Hop數(shù)達(dá)到設(shè)定閾值,則停止繼續(xù)向下發(fā)現(xiàn)。這樣得到的拓?fù)浒l(fā)現(xiàn)結(jié)果是以種子節(jié)點(diǎn)為中心向外輻射的星形樹,同一層次的路由器處于同一樹干上。但有時(shí)為簡化程序復(fù)雜度,也可以利用限制拓?fù)浒l(fā)現(xiàn)時(shí)間的辦法來控制發(fā)現(xiàn)的范圍[7]。

      3 算法應(yīng)用

      依據(jù)上述算法思想,在某公司的網(wǎng)絡(luò)綜合管理平臺中成功實(shí)現(xiàn)了網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的自動(dòng)發(fā)現(xiàn),并驗(yàn)證了算法的正確性。該平臺以開源OPENNMS框架為基礎(chǔ)進(jìn)行二次開發(fā),主要功能包括拓?fù)鋱D管理、設(shè)備管理、排程管理、告警管理、報(bào)表管理和性能管理等,可以對網(wǎng)絡(luò)中的各類設(shè)備進(jìn)行全面管理和監(jiān)控,及時(shí)發(fā)現(xiàn)并排除設(shè)備故障。

      網(wǎng)絡(luò)拓?fù)渌惴ú捎玫拈_發(fā)工具為M Y E C L I P S E 7.0,開發(fā)語言是J a v a,使用JDK1.6.5,前臺的拓?fù)鋱D繪制采用Flex技術(shù)實(shí)現(xiàn)。算法對交換機(jī)和路由器的MIB庫的訪問利用了Java SNMP開源開發(fā)包,該開發(fā)包實(shí)現(xiàn)了SNMP協(xié)議的V1和V2版本。

      在校園網(wǎng)的實(shí)驗(yàn)試驗(yàn)環(huán)境下,主干網(wǎng)絡(luò)由1臺路由器和多臺三層交換機(jī)組成,交換機(jī)下掛接了若干PC服務(wù)器,用本算法對此網(wǎng)絡(luò)進(jìn)行探測,所得到的拓?fù)鋱D如圖1所示。

      根據(jù)圖1的顯示結(jié)果分析,本算法已經(jīng)正確地識別出來了路由器172.18.45.1和交換機(jī)172.18.45.118、172.18.45.215、172.18.45.125、192.168.0.47,以及連接在交換機(jī)上的所有服務(wù)器。本發(fā)現(xiàn)算法發(fā)現(xiàn)效率高、實(shí)用性強(qiáng),可廣泛應(yīng)用于網(wǎng)絡(luò)管理軟件的拓?fù)鋱D管理。

      4 結(jié)束語

      網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)對網(wǎng)絡(luò)管理系統(tǒng)非常重要,各個(gè)軟件廠商也采用自己的實(shí)現(xiàn)方法開發(fā)了一些進(jìn)行拓?fù)浒l(fā)現(xiàn)的系統(tǒng)。本文對SNMP網(wǎng)絡(luò)拓?fù)渌惴ㄟM(jìn)行了深入研究,并在此基礎(chǔ)進(jìn)行了改進(jìn),提高了算法的發(fā)現(xiàn)效率,增強(qiáng)了網(wǎng)絡(luò)拓?fù)湫畔@示的直觀性,為網(wǎng)絡(luò)管理、網(wǎng)絡(luò)故障定位和網(wǎng)絡(luò)設(shè)備管理提供了強(qiáng)有力的支持。該方法已成功應(yīng)用于某公司的網(wǎng)絡(luò)綜合管理平臺,取得了良好的效果。

      [1] Y.Breitbart,M.Garofalakis,B.Jai,C.Martin,R.Rastogi,A.Silbe rschatz,"Topology Discovery in Heterogeneous IP Networks:The NetInventory System,"IEEE/ACM Transactions on Networking,vol.12,no.3,June 2004,pp.401-414.

      [2] F.Nazir,T.H.Tarar,F.Javed,H.Suguri,H.F.Ahmad,A.Ali, "Cons tella:A Complete IP Network Topology Discovery Solution,"APNOMS 2007,October 2007,Sapporo,Japan,pp.425-436.

      [3] N.Dufield,F.L.Presti,V.Paxson,D.Towsley,"Network Loss Tomography Using Striped Unicast Probes,"IEEE/ACM Transactions on Networking,August 2006,vol.14,no.4, 697-710.

      [4] 孫德文,高儒振.基于SNMP網(wǎng)絡(luò)拓?fù)鋱D的自動(dòng)構(gòu)造實(shí)現(xiàn)[J].上海交通大學(xué)學(xué)報(bào),1997,31(8):97-101.

      [5] 楊棉.網(wǎng)絡(luò)自動(dòng)拓?fù)浒l(fā)現(xiàn)算法研究[D].武漢:華中師范大學(xué),2003.

      [6] 李玉鵬,王換招,田海燕,等.基于SNMP和JAVA的網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2004,(5):152-154.

      [7] 李子柱,倪春勝等.網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2006,1(2):104-106.

      猜你喜歡
      子網(wǎng)網(wǎng)絡(luò)拓?fù)?/a>網(wǎng)絡(luò)設(shè)備
      一種簡單子網(wǎng)劃分方法及教學(xué)案例*
      基于通聯(lián)關(guān)系的通信網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)方法
      一種基于C# 的網(wǎng)絡(luò)設(shè)備自動(dòng)化登錄工具的研制
      子網(wǎng)劃分問題研究及應(yīng)用
      電子制作(2018年23期)2018-12-26 01:01:16
      勞斯萊斯古斯特與魅影網(wǎng)絡(luò)拓?fù)鋱D
      子網(wǎng)劃分的簡易方法
      電測與儀表(2016年5期)2016-04-22 01:13:46
      數(shù)據(jù)中心唯“快”不破
      基于安全協(xié)議的虛擬專用子網(wǎng)研究
      河南科技(2014年16期)2014-02-27 14:13:04
      崇礼县| 安泽县| 佛教| 广河县| 汤阴县| 洛隆县| 巢湖市| 沁水县| 奉贤区| 浏阳市| 新宾| 延长县| 根河市| 内江市| 德清县| 庄浪县| 商城县| 镇宁| 五原县| 龙州县| 清远市| 泗阳县| 洛南县| 徐汇区| 姜堰市| 蒲城县| 中江县| 藁城市| 武功县| 宁河县| 普宁市| 花莲市| 逊克县| 建湖县| 攀枝花市| 上林县| 武义县| 维西| 沂南县| 清苑县| 瓦房店市|