




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上基于SNMP的校園網(wǎng)拓撲發(fā)現(xiàn)系統(tǒng)的設(shè)計與實現(xiàn)劉家樂,雷顯臻,周興旺(湖南交通工程職業(yè)技術(shù)學院計算機系,湖南衡陽,)摘要:網(wǎng)絡(luò)拓撲信息的發(fā)現(xiàn)是校園網(wǎng)絡(luò)管理軟件中非常重要的功能。論文文基于SNMP協(xié)議,設(shè)計了一個校園網(wǎng)拓撲發(fā)現(xiàn)系統(tǒng),提出了系統(tǒng)的總體架構(gòu)和功能模塊,研究了網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)技術(shù)和鏈路層拓撲發(fā)現(xiàn)技術(shù),實現(xiàn)了網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)功能和鏈路層拓撲發(fā)現(xiàn)功能,并給出了系統(tǒng)的實際運行效果。關(guān)鍵字:網(wǎng)絡(luò)拓撲發(fā)現(xiàn); SNMP; 校園網(wǎng); 網(wǎng)絡(luò)管理中圖分類號:TP315。Design and Implementation of Campus Network Topology Disco
2、very System Based on SNMPLIU Jia-le,LEI Xian-zhen(Hunan Technical College of Communication&Engineering Department of Computer Technology, Hengyang, , China) Abstract:The discovery of Network topology information is a very important function of the campus network management software. In this pape
3、r, we have designed a campus network topology discovery system, based on the SNMP protocol,and have proposed the general framework and functional modules of the network layer topology discovery techniques, we also have studied link-layer topology discovery technology. And thus it has relized the fun
4、ction of network layer topology discovery and the function of link layer topology discovery, and has presented the system's actual operating effects.Keywords:Network Topology Discovery; SNMP; Campus Network; Network Management1 引言網(wǎng)絡(luò)拓撲結(jié)構(gòu)的獲得對于校園網(wǎng)的網(wǎng)絡(luò)管理具有十分重要的意義,是校園網(wǎng)絡(luò)管理軟件中一項非?;A(chǔ)的功能,校園網(wǎng)拓撲發(fā)現(xiàn)系統(tǒng)就是為了解決校園
5、網(wǎng)絡(luò)中的拓撲發(fā)現(xiàn)問題而開發(fā)的。SNMP協(xié)議在當前的校園網(wǎng)環(huán)境中廣泛應(yīng)用,利用SNMP的相關(guān)技術(shù)進行校園網(wǎng)拓撲結(jié)構(gòu)的獲取具有技術(shù)成熟,可行性強的特點。本系統(tǒng)的主要功能就是利用SNMP協(xié)議自動發(fā)現(xiàn)校園網(wǎng)絡(luò)環(huán)境中的各種網(wǎng)絡(luò)設(shè)備,并確定它們的連接信息,繪制出校園網(wǎng)絡(luò)的拓撲結(jié)構(gòu)圖。2 拓撲發(fā)現(xiàn)系統(tǒng)的總體設(shè)計2.1 系統(tǒng)體系結(jié)構(gòu)校園網(wǎng)絡(luò)拓撲發(fā)現(xiàn)系統(tǒng)的體系結(jié)構(gòu)如圖1所示,劃分為三個層次:最下層是拓撲信息獲取層,負責網(wǎng)絡(luò)設(shè)備基礎(chǔ)拓撲信息的采集,然后以一定的形式送到中間層;中間層是拓撲信息分析層,負責從收集到的基礎(chǔ)拓撲數(shù)據(jù)中分析出網(wǎng)絡(luò)拓撲結(jié)構(gòu);最上層為拓撲圖形顯示層,負責拓撲圖的繪制和展示。圖1拓撲發(fā)現(xiàn)系統(tǒng)體系
6、結(jié)構(gòu)2.2 功能模塊系統(tǒng)的功能模塊分為5個部分,如圖2所示圖2拓撲發(fā)現(xiàn)系統(tǒng)總體功能模塊2.3 系統(tǒng)開發(fā)環(huán)境本系統(tǒng)采用Eclipse集成環(huán)境、ObjectSNMP及AdventNet SNMP API軟件開發(fā)包在Java平臺上進行開發(fā)。AdventNet SNMP API是美國AdventNet公司推出的一個開發(fā)包,它提供了全面的API用于開發(fā)基于SNMP的網(wǎng)絡(luò)管理應(yīng)用。ObjectSNMP是智和信通公司推出的一個面向?qū)ο蟮腟NMP開發(fā)組件,實現(xiàn)了Object到SNMP MIB的映射。3 網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)3.1 網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)的基本原理網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)的主要任務(wù)是發(fā)現(xiàn)網(wǎng)絡(luò)層節(jié)點設(shè)備之間的連接關(guān)系,主
7、要是指路由器與路由器、路由器與子網(wǎng)之間的連接關(guān)系。SNMP通過管理站/代理的模式對網(wǎng)絡(luò)設(shè)備進行管理,實質(zhì)上是對網(wǎng)絡(luò)設(shè)備中的管理信息庫MIB進行管理。IETF規(guī)定的MIB中定義了可訪問的網(wǎng)絡(luò)設(shè)備及其屬性,由對象識別符OID唯一指定。MIB是一個樹形結(jié)構(gòu),SNMP協(xié)議消息通過遍歷MIB樹形目錄中的節(jié)點來訪問網(wǎng)絡(luò)中的設(shè)備?;赟NMP協(xié)議的網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)的基本原理是:利用SNMP協(xié)議,從設(shè)備的MIB庫中提取出與網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)相關(guān)的信息,如接口地址表和路由轉(zhuǎn)發(fā)表,然后將這些信息安裝一定的算法歸納、整理,從而得出網(wǎng)絡(luò)的邏輯拓撲結(jié)構(gòu)。3.2 網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)相關(guān)的MIB本系統(tǒng)網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)功能主要基于RFC
8、-1213定義的MIB-II是標準。MIB-II由很多不同的部分組成,本文的主干拓撲發(fā)現(xiàn)算法用到的組包括:System組,Interfaces組和IP組。在算法中需要使用的對象描述如下:(1)system組的sysService對象,表示設(shè)備服務(wù)層次。(2)interfaces組的ifNumber對象,表示系統(tǒng)中的網(wǎng)絡(luò)接口數(shù)量。(3)算法中用到的IP組的對象有三個:簡單對象ipFowrarding和兩個表對象,接口地址表ipAddrTable、路由轉(zhuǎn)發(fā)表ipRouteTable。簡單對象ipFowrarding用來表示設(shè)備是否具有轉(zhuǎn)發(fā)功能,它的值只能為1或2,為1代表系統(tǒng)開啟了路由功能,正在進
9、行數(shù)據(jù)轉(zhuǎn)發(fā),2則代表關(guān)閉了轉(zhuǎn)發(fā)功能。路由轉(zhuǎn)發(fā)表ipRouterTable是對路由器的路由信息的相關(guān)描述,其中ipRouteNextHop表示下一條地址,有可能就是鄰近路由器的接口地址。3.3 網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)的算法描述網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)算法從當前管理站的網(wǎng)關(guān)地址開始,使用SNMP協(xié)議對網(wǎng)關(guān)IP地址進行探測。如果ipForwarding=1且sysServices>3,則判斷該節(jié)點是一個三層設(shè)備。如果設(shè)備具有dot1dBaseBridgeAddress則是三層交換機,否則便是路由器。如果ipForwarding=2且sysServices值為2、3,則該節(jié)點是一個二層設(shè)備。既不是二層設(shè)備、也不是
10、三層設(shè)備的節(jié)點可以判定它是普通的PC主機。對于三層設(shè)備,可以獲得它的IP地址表ipAddrTable,并根據(jù)其中的ipRouteNextHop來確定下一個發(fā)現(xiàn)的三層設(shè)備。網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)算法的偽代碼描述如下:初始化網(wǎng)關(guān)路由器集合routerVector;初始化路由器連接集合routerConnectVector;獲取指定起始網(wǎng)關(guān)的標識和指定的IP地址,實例化一個Rouer類對象,設(shè)定其processFlag值為false,將該對象放入RouterVector中;while(RouterVector中還有processFlag為false的路由器)從RouterVector中讀取一個Router對
11、象,記為currentRouter;獲取currentRouter的ipAddrTable信息,填入其addrVector中;獲取currentRouter的ipRouterTable信息,除去其中ipRouteType為“無效”的條目;for(ipRouterTable表中各項路由記錄)if(路由記錄為直連網(wǎng)段)以ipRouteDest及ipRouteMask等實例化一個Subnet類對象;將該對象無重復地放入currentRouter的subnetVector中;else判斷當前條目的ipRouteNextHop不同于currentRouter的所有IP地址;獲取ipRouterNextH
12、op對應(yīng)網(wǎng)關(guān)路由器的RouterID;以ipRouteNextHop和currentRouter的標識和IP地址值實例化一個RouterConnect類對象routerConn;If(routerConn沒有在ConnectVector中存在) 將routerConn填入ConnectVector中;ipRouteNextHop等信息實例化一個Router類對象aRouter;設(shè)置aRouter的processFlag為false,將其放入RouterVector中;設(shè)置currentRouter標志為“已處理”;算法完成后,結(jié)果信息保存在全局變量routerVector和routerConn
13、ectVector中。4 鏈路層拓撲發(fā)現(xiàn)4.1 鏈路層拓撲發(fā)現(xiàn)的基本原理本系統(tǒng)采用基于地址轉(zhuǎn)發(fā)表(AFT)的鏈路層拓撲發(fā)現(xiàn)技術(shù),通過分析交換機的AFT表來推算交換機及其與主機、路由器之間的連接關(guān)系。貝爾實驗室的Yuri Breitbart給出了基本算法,通過分析交換機端口對應(yīng)的AFT中的MAC地址集合關(guān)系來確定交換機和交換機,交換機和路由器、主機之間的連接關(guān)系。此算法在實際應(yīng)用中要求每臺交換機的地址轉(zhuǎn)發(fā)表必須完整,即每臺交換機必須知道其他交換機所連接的端口。為此本系統(tǒng)采取了一項改進措施,對每個交換機作一次Ping操作,使得地址轉(zhuǎn)發(fā)表中的記錄完整。4.2 鏈路層拓撲發(fā)現(xiàn)相關(guān)的MIB 交換機MIB
14、對應(yīng)的標準是Bridge-MIB。在Bridge-MIB中定義了dot1dTpFdbAddress(OID:1.3.6.1.2.1.17.4.3.1.1)來存放地址交換機的地址轉(zhuǎn)發(fā)表,其對應(yīng)的端口存放在端口信息表dot1dTpFdbPort(OID:1.3.6.1.2.1.17.4.3.1.2)上。通過查詢dot1dTpFdbAddress和dot1dTpFdbPort便可以找到發(fā)現(xiàn)交換機MAC的端口。4.3 鏈路層拓撲發(fā)現(xiàn)算法鏈路層拓撲發(fā)現(xiàn)算法主要分成兩步,首先是收集交換機AFT原始記錄信息,然后在此基礎(chǔ)上對AFT記錄進行分析,得出交換機之間的連接關(guān)系。(1)鏈路層AFT信息收集獲取網(wǎng)絡(luò)所有
15、交換機列表,確定可以通過SNMP讀取MIB庫信息的交換機集合switchVector,并且確定其IP地址與MAC地址的對應(yīng)關(guān)系,以及標志節(jié)點(運行算法的主機或目標子網(wǎng)中轉(zhuǎn)發(fā)運行算法主機發(fā)出的數(shù)據(jù)報文的路由器)。對集合switchVector中所有設(shè)備進行ping操作。讀取集合switchVector中所有設(shè)備和標志節(jié)點的MAC地址是否在其他所有交換機的端口上出現(xiàn),得到三元組(switchA,switchB,switchportB),表示在switchB的端口switchportB上發(fā)現(xiàn)了switchA的MAC地址。將三元組存放在集合swConnTemp中。(2)鏈路層拓撲連接信息分析根據(jù)得到的
16、三元組(switchA,switchB,switchportB)集合,推導出所有設(shè)備端口之間的連接關(guān)系,得到交換機端口連接四元組(switchA,switchportA,switchB,switchportB)。表示switchA的端口switchportA與switchB的端口switchportB直連,并存放在集合swConnVector中,這樣就得到了子網(wǎng)內(nèi)交換機的鏈接關(guān)系。具體的推導發(fā)現(xiàn)算法偽代碼描述如下:根據(jù)主干拓撲發(fā)現(xiàn)的結(jié)果構(gòu)造子網(wǎng)集合subnetVector;for(子網(wǎng)集合subnetVector中的每一個子網(wǎng))初始化交換機集合switchVector;確定子網(wǎng)內(nèi)可以通過SNM
17、P讀取的交換機集合到switchVector中;確定標志節(jié)點到rootDevice;Ping集合switchVector中的每個交換機for(switchVector中的每個交換機switchA)If(switchA的MAC出現(xiàn)在switchB的MAC表中)查找switchA對應(yīng)的端口號switchportB;swConnTemp.add(switchA,switchB,switchportB);根據(jù)三元組集合發(fā)現(xiàn)交換機間的連接關(guān)系;輸出發(fā)現(xiàn)結(jié)果四元組集合swConnVector;5 系統(tǒng)的測試與運行5.1 運行環(huán)境系統(tǒng)在真實的高校校園網(wǎng)絡(luò)環(huán)境中測試和運行。校園網(wǎng)環(huán)境:目前共有核心交換機1臺,
18、匯聚層交換機7臺,接入層交換機30臺,出口路由器一個,用戶自行購買的啞設(shè)備近百個。5.2 網(wǎng)絡(luò)設(shè)備的配置為使用本系統(tǒng)對網(wǎng)絡(luò)拓撲進行發(fā)現(xiàn),需要開啟網(wǎng)絡(luò)設(shè)備的SNMP代理功能,并作相應(yīng)的配置。具體以Cisco3640路由器為例配置如下:R3640(config):snmp-service enable /開啟SNMP功能R3640(config):snmp-server community public RO /配置只讀共同體為public5.3 系統(tǒng)的運行效果系統(tǒng)開發(fā)完成后,在校園網(wǎng)絡(luò)上進行了試運行,對主干網(wǎng)絡(luò)的拓撲發(fā)現(xiàn)效果如圖3所示。圖3 在校園網(wǎng)中的系統(tǒng)運行效果(主干網(wǎng)絡(luò))經(jīng)過試用,證實系統(tǒng)運行穩(wěn)定,能夠高效、準確地發(fā)現(xiàn)校園網(wǎng)絡(luò)拓撲結(jié)構(gòu),基本實現(xiàn)了所需功能,達到了預(yù)定設(shè)計目的。6 結(jié)束語本文以校園網(wǎng)的網(wǎng)絡(luò)管理工作為背景,設(shè)計和實現(xiàn)了基于SNMP協(xié)議的校園網(wǎng)絡(luò)拓撲發(fā)現(xiàn)系統(tǒng)。該系統(tǒng)采用了比較成熟的網(wǎng)絡(luò)層拓撲發(fā)現(xiàn)和鏈路層拓撲發(fā)現(xiàn)技術(shù),比較好的解決了校園網(wǎng)絡(luò)拓
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能與大數(shù)據(jù)2025:互聯(lián)網(wǎng)廣告精準投放算法效果與行業(yè)應(yīng)用趨勢報告
- 人工智能在影像診斷中的多源數(shù)據(jù)融合與分析報告
- 初中信息技術(shù)課件公眾號
- 教育創(chuàng)新策略下的教師角色轉(zhuǎn)變探討
- 好吃的豆制品健康教案
- 2025版信息安全保密協(xié)議企業(yè)個人專享
- 二零二五年金融行業(yè)客戶信息保密協(xié)議合同模板
- 二零二五版醫(yī)療設(shè)備區(qū)域代理銷售合同大全
- 二零二五版草原草種研發(fā)與應(yīng)用承包合同
- 二零二五年度暖通設(shè)備安裝勞務(wù)分包服務(wù)協(xié)議
- 湖北省黃岡市2024-2025學年高一下學期期末質(zhì)量監(jiān)測數(shù)學試卷
- 撤資合同范本:投資撤資協(xié)議書
- 醫(yī)保drg付費課件培訓
- 彩妝知識培訓
- 羊水栓塞護理
- 云南省曲靖市宣威市民中2025屆高一化學第二學期期末檢測試題含解析
- 2024年寧夏銀川金鳳區(qū)社區(qū)專職工作者考試真題
- 2025至2030全球及中國帆船行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 北京海淀街道社區(qū)衛(wèi)生服務(wù)中心招聘筆試真題2024
- 新疆天富能源股份有限公司2024年度商譽減值測試資產(chǎn)評估報告
-
評論
0/150
提交評論