版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于 SNMP 協(xié)議的簡單網(wǎng)絡(luò)流量監(jiān)控管理系統(tǒng)的設(shè)計(jì) 摘要:隨著網(wǎng)絡(luò)通信技術(shù)的不斷進(jìn)步,網(wǎng)絡(luò)應(yīng)用越來越廣泛,網(wǎng)絡(luò)流量形式變得 復(fù)雜,內(nèi)容變得龐大,因此網(wǎng)絡(luò)流量統(tǒng)一監(jiān)控與管理是非常必要的。本設(shè)計(jì)介紹 了 SNMP 的基本原理,提出了在 Linux 下實(shí)現(xiàn)基于 SNMP 的網(wǎng)絡(luò)流量監(jiān)控系統(tǒng)方 案,結(jié)合某網(wǎng)絡(luò)管理中的實(shí)際問題,闡述了這一方案的具體實(shí)施,并對該系統(tǒng)提 出了展望。關(guān)鍵詞:流量監(jiān)控; SNMP(簡單網(wǎng)絡(luò)管理協(xié)議 );MIB(管理信息庫 );WBM (基于 Web 的網(wǎng)絡(luò)管理 ) 在校園網(wǎng)及其他大型企業(yè)網(wǎng)的復(fù)雜應(yīng)用環(huán)境中,網(wǎng)絡(luò)面臨的攻擊及威脅主要來源 于網(wǎng)絡(luò)部,如大量病毒、網(wǎng)內(nèi)主機(jī)的主動攻擊
2、及網(wǎng)絡(luò)異常流量的突增都將引起網(wǎng) 絡(luò)設(shè)備負(fù)荷過重,從而導(dǎo)致網(wǎng)絡(luò)擁塞,并可能進(jìn)一步導(dǎo)致網(wǎng)絡(luò)癱瘓。因此,基于 全網(wǎng)所有網(wǎng)絡(luò)設(shè)備、服務(wù)器群組的流量狀況的 24 h實(shí)時監(jiān)控和日志及流量分析統(tǒng) 計(jì),將對于保障復(fù)雜環(huán)境下的整個網(wǎng)絡(luò)的安全、設(shè)備穩(wěn)定,以及防止服務(wù)器群組 被攻擊有極大的意義。目前網(wǎng)絡(luò)管理標(biāo)準(zhǔn)主要有兩大體系: OSI 的 CMIS(Common Management Information Service。公共管理信息服務(wù) ) CMIP(Common ManagementInformation Protocol,公共管理信息協(xié)議 ) 和 IETF 的 SNMP(Simple Network Man
3、agement Protocol,簡單網(wǎng)絡(luò)管理協(xié)議 ) 。由于 CMIP 實(shí) 現(xiàn)復(fù)雜、結(jié)構(gòu)龐大,占用資源多,目前還沒有開發(fā)出實(shí)際可用的產(chǎn)品。 SNMP 由 于易于實(shí)現(xiàn)和廣泛的 TCP IP應(yīng)用基礎(chǔ)而獲得支持。隨著 SNM2Pv2和 SNMPv3 的相繼出現(xiàn),改善了 SNMP中的安全問題,使 SNMP 得到快速發(fā)展。一、SNMP 原理SNMP 由 IAB(Internet Activities Board) 制定,是基于 TCPIP 協(xié)議的各種互聯(lián)網(wǎng) 絡(luò)的管理標(biāo)準(zhǔn)。由于它本身簡單明了,實(shí)現(xiàn)較容易,占用系統(tǒng)資源少,所以得到 了眾多網(wǎng)絡(luò)廠家的青睞,而成為工業(yè)標(biāo)準(zhǔn)投入使用?,F(xiàn)已被廣泛接受,差不多所 有
4、的網(wǎng)絡(luò)產(chǎn)品,包括交換機(jī) (Switch)、路由器 (Router)、集線器(HUB) 、不間斷電 源(UPS)及調(diào)制解調(diào)器 (Modem)等網(wǎng)絡(luò)硬件及許多軟件均支持 SNMP。幾乎所有的 網(wǎng)絡(luò)廠商推出的針對硬件管理的網(wǎng)絡(luò)管理系統(tǒng)都支持 SNMP,如 HP 公司的 Open view、 IBM 公司的 Net View 、Cabletron公司的 Spectrum都是基于 SNMP 標(biāo)準(zhǔn)設(shè) 計(jì)的。它的管理體系結(jié)構(gòu)包括 4個部分:管理站 (SNMP manager)、管理代理 (SNMP agent)、管理信息庫 (MIB ,management information base和) 網(wǎng)絡(luò)管理協(xié)
5、議。1.1 管理站 管理站發(fā)出命令,實(shí)現(xiàn)對網(wǎng)絡(luò)設(shè)備的管理。管理站中有管理應(yīng)用程序,按照 SNMP 協(xié)議實(shí)現(xiàn)與管理代理的通信,完成對 MIB 數(shù)據(jù)的讀取和設(shè)置。1.2 管理代理管理代理是駐留在網(wǎng)絡(luò)設(shè)備中的軟件模塊,它的主要作用:(1) 獲取本地設(shè)備的運(yùn)行狀態(tài)、設(shè)備特性、系統(tǒng)配置等相關(guān)信息,存人MIB 庫;(2) 和管理站通過 SNMP 協(xié)議通信,使管理站獲取并能設(shè)置 MIB 庫中網(wǎng)絡(luò)設(shè)備的 管理信息。1.3 管理信息庫 管理信息庫是網(wǎng)絡(luò)管理變量的集合,包含有關(guān)網(wǎng)絡(luò)設(shè)備的信息,它是存儲網(wǎng)絡(luò)設(shè) 備配置、性能、運(yùn)行狀態(tài)等參數(shù)的數(shù)據(jù)庫。它根據(jù) SNMP 協(xié)議定義了一系列數(shù)據(jù)對象,每個 對象代表被管設(shè)備
6、某方面的管理信息,如設(shè)備的數(shù)量或者接口狀況等,網(wǎng)絡(luò)管理系統(tǒng)通過網(wǎng)絡(luò)管理 代理軟件來管理 MIB 數(shù)據(jù)對象。1.4 網(wǎng)絡(luò)管理協(xié)議SNMP 是 TCP IP協(xié)議組的一部分, SNMP 協(xié)議是一系列網(wǎng)絡(luò)管理的文件定義, 規(guī)范統(tǒng)一了網(wǎng)絡(luò)管理的標(biāo)準(zhǔn)。 SNMPvl 由4個文件組成: RFC1155定義了管理信息結(jié)構(gòu) (SMI), 即規(guī)定了管理對象的語法和語義,主要說明了怎樣定義和訪問管理對象; RFC1212說明了定義 MIB 模塊的方法; RFC1213定義了 MIB 一 2 管理對象的核 心集合; RFC1 157是 SNMP vl 協(xié)議的規(guī)范文件 。網(wǎng)絡(luò)管理協(xié)議可提供以下 3 個功能:(1)get
7、:管理站可以通過獲取 SNMP 代理的 MIB 值,了解到整個網(wǎng)絡(luò)設(shè)備的配置 信息,如交換機(jī)的系統(tǒng)信息等;(2)set:管理站可以通過設(shè)定 SNMP 代理的 MIB 值,修改網(wǎng)絡(luò)設(shè)備的配置信息;(3) trap:在一些緊急情況下,如突然關(guān)閉交換機(jī),交換機(jī)上的某一個端口的狀態(tài) 發(fā)生變化,網(wǎng)絡(luò)出現(xiàn)故障等, SNMP 代理都會向管理站反饋相應(yīng)的信息。二、流量監(jiān)控系統(tǒng)的分析設(shè)計(jì)與實(shí)現(xiàn)2.1 分析設(shè)計(jì)2.1.1 網(wǎng)絡(luò)流量分類 網(wǎng)絡(luò)流量類型相當(dāng)復(fù)雜,為了便于監(jiān)控與管理,需要把不同類型的流量組合起 來,分為兩大類別:源節(jié)點(diǎn)到一個或多個目的節(jié)點(diǎn)之間的基于 IP 層的網(wǎng)絡(luò)端到端的流量, IP 層的 每一設(shè)備都可
8、以作為源和目的結(jié)點(diǎn),如路由器、交換機(jī)、服務(wù)器和工作站,這種 類別流量是從實(shí)際網(wǎng)絡(luò)中所測量的流量數(shù)據(jù),通??梢杂脕砼c網(wǎng)絡(luò)最大負(fù)載能力 比較以表現(xiàn)當(dāng)前網(wǎng)絡(luò)鏈路的繁忙狀況; 發(fā)生在節(jié)點(diǎn)間的應(yīng)用層業(yè)務(wù)流量,包括 Http、P2P、Ftp、Email、Print、視頻等多種不同的業(yè)務(wù),每種業(yè)務(wù)都可由其相應(yīng) 的屬性參數(shù)來描述,如對于 Http 業(yè)務(wù),可通過屬性組: page rate(pages hour)page size(objectspage), average object size(bytes object) 來表示。通過將 上述這些參數(shù)組合后,形成具體流量信息 。第一種類別流量收集 IP 層及
9、以下各層的性能參數(shù),第二種類別主要收集應(yīng)用層的 性能數(shù)。如果只采集其中任何一種類別的流量,都不能得到關(guān)于網(wǎng)絡(luò)整體性能的 分析,因此在實(shí) 際應(yīng)用中,為了反映網(wǎng)絡(luò)整體性能,需要由各個層次的性能參數(shù)來體現(xiàn),所以, 通常在一個完整的流量模型中,兩種類別流量的收集都很重要。2.1.2 網(wǎng)絡(luò)流量測量方法與選擇 對比于目前常被使用的流量測量方式,主要有兩種。 (1)專門使用計(jì)算機(jī)在網(wǎng)絡(luò)中偵聽,例如俗稱為 “嗅控器 ”的 Sniffer 工具,但是此種 方式不能保證所有到達(dá)對象的流量都能監(jiān)聽到,以路由器為例,必須保證路由器 和偵聽計(jì)算機(jī)在同一個物理網(wǎng)段。(2)直接從網(wǎng)絡(luò)對象中獲得流量。通過使用 SNMP 協(xié)議
10、,利用它提供的基本功能中 的 Get Request和 Get。NextReq 遍歷整個 MIB 數(shù)據(jù)庫表得到所需要的信息。 免費(fèi)工具軟件METG(Multi RouterTraffic Grapher) 就是這樣一個分析工具,它將監(jiān)控結(jié)果產(chǎn)生為 GIF 或者 PNG 格式的圖形文件,而且這些圖形文件可以很方便的植入到標(biāo)準(zhǔn)的 HTML 頁面中。 校園網(wǎng)絡(luò)的特點(diǎn)是用戶量大,但是建設(shè)投人相對比較少,為了能夠獲得自己所需 要的細(xì)節(jié),增強(qiáng)系統(tǒng)的靈活性和可擴(kuò)展性,并且降低成本,廣東某高校選擇了通 過直接讀取 MIB 對象的流量信息 方式來實(shí)現(xiàn)。并且由于 SNMP 的方案保證了流量測量系統(tǒng)的通用性和可重用
11、性。 在其系統(tǒng)中,使用 了 SNMP 來采集數(shù)據(jù)。在實(shí)際應(yīng)用中,管理人員可根據(jù)實(shí)際流量合理地設(shè)定采集 時問間隔,定時采 集相關(guān)信息以便準(zhǔn)確監(jiān)控流量數(shù)據(jù) 。2.1.3 具體校園網(wǎng)網(wǎng)絡(luò)環(huán)境 目前某高校校園網(wǎng)采用以太網(wǎng)結(jié)構(gòu),主干 1 000 Mbps,到達(dá)桌面 100 Mbps,為滿 足教學(xué)與管理的需要,不僅提供了全院師生的接人 Intemet 服務(wù),還基于校園網(wǎng) 建立了網(wǎng)絡(luò)教學(xué)、教務(wù)管理、辦公自動化、郵件系統(tǒng)、一卡通等應(yīng)用系統(tǒng)。這些 系統(tǒng)的上線,對網(wǎng)絡(luò)的高可用性,提出了更高的要求。該校網(wǎng)絡(luò)結(jié)構(gòu)拓樸如圖 1 所示:圖 1 網(wǎng)絡(luò)拓?fù)鋱D2.2 具體實(shí)現(xiàn) 根據(jù)該校實(shí)際需求,監(jiān)控系統(tǒng)的功能模塊可以分為數(shù)據(jù)采
12、集與存儲、故障處理模 塊、用戶查詢與交互和統(tǒng)計(jì)分析。該監(jiān)控系統(tǒng)的功能模塊如圖2 所示。圖 2 功能模塊圖 在開發(fā)流量監(jiān)控管理系統(tǒng)時,采用 Linux AS4。 0作為操作系統(tǒng)平臺,用 JAVA 語 言編程實(shí)現(xiàn),通過 ucd。 snmp軟件包實(shí)現(xiàn)對網(wǎng)絡(luò)設(shè)備 MIB 信息的獲取。 UCD 。 SNMP 軟件包括多個 SNMP 工具:可擴(kuò)展代理、 SNMP 庫、查詢或設(shè)置 SNMP 代 理消息、產(chǎn)生和處理 SNMP陷阱的工具、使用 SNMP的 netstat命令、TkPerl管 理系統(tǒng)庫瀏覽器。在 ucdsnmp軟件包安裝完成后,在 shell 下 面使用 usrlocalsnmpsbinsnmpd
13、,或直接加在 etcrc。drc。1ocal 當(dāng) 中,在開機(jī)后自動啟動 。判斷校園網(wǎng)的流量狀況,經(jīng)常需要與歷史數(shù)據(jù)進(jìn)行對 比,因此需要保存大量數(shù)據(jù)。一般來說,數(shù)據(jù)的存儲有基于文件和基于數(shù)據(jù)庫兩 種?;谖募到y(tǒng)的方式在小數(shù)據(jù)量的情況下,可以獲得較高的存儲效率和存取 數(shù)據(jù)的速度,但不利于數(shù)據(jù)關(guān)系和復(fù)雜結(jié)構(gòu)的表示,難以實(shí)現(xiàn)對數(shù)據(jù)的完整性控制,因而不利于數(shù)據(jù)規(guī)模大、類型混雜的校園網(wǎng)應(yīng)用。因此,我們在設(shè)計(jì)數(shù)據(jù)的 管理和存儲策略時,選擇的是對系統(tǒng)性能要求不高的 Mysql 數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)采 集流程如圖 3 所示。圖 3 數(shù)據(jù)采集流程圖2.2.2 故障處理模塊 通過對數(shù)據(jù)進(jìn)行采集與存儲后,將數(shù)據(jù)與規(guī)則庫
14、中的閾值進(jìn)行比較,當(dāng)發(fā)現(xiàn)異常 后提交信息給故障處理模塊。故障處理模塊啟動告警功能通過創(chuàng)建包含響應(yīng) SET 請求的 SNMP Agent,設(shè)置 SET值為 start或 stop,使得 SNMP Agent對相應(yīng)的服 務(wù)啟動或關(guān)閉 。2.2.3 Web服務(wù)器提供用戶查詢與交互模塊傳統(tǒng)的基于 C S架構(gòu)的管理模式存在著諸多不足,隨著 Web 技術(shù)的成熟及廣泛 應(yīng)用,作為一種全新的網(wǎng)絡(luò)管理模式,基于 Web的網(wǎng)絡(luò)管理 WBM(Web Based Management),以特有的靈活性、易操作性等特點(diǎn),被譽(yù)為 “將改變用戶網(wǎng)絡(luò)管理 方式的革命 I 生網(wǎng)絡(luò)管理解決方案 ”。我們在本系統(tǒng)設(shè)計(jì)中,將網(wǎng)絡(luò)管理
15、信息的數(shù) 據(jù)由 SNMP 從 MIB 庫中收集到,經(jīng)過網(wǎng)絡(luò)管理系統(tǒng)應(yīng)用程序的過濾、分析、加 工處理后,存儲于 Web服務(wù)器的數(shù)據(jù)庫中。管理員通過 Web 技術(shù)可從瀏覽器本 地或遠(yuǎn)程訪問流量監(jiān)控系統(tǒng), WBM 技術(shù)與傳統(tǒng)的網(wǎng)絡(luò)及設(shè)備管理系統(tǒng)相比,在 分布性、用戶界面等方面都有獨(dú)到的優(yōu)勢。動態(tài)網(wǎng)頁 PHP 的函數(shù)集中提供了使用 SNMP 協(xié)議的網(wǎng)管函數(shù)的接口: snmpgetquickprint 、snmpsetquick print snmpget sm realwalk、snmpwalk 等,因此使用 PHP 來實(shí)現(xiàn)輪詢操作,通 過 PHP提供的網(wǎng)管函數(shù)庫與數(shù)據(jù)采集模塊的 Agent 交互獲得
16、流量監(jiān)控的數(shù)據(jù)。使 用 PHP語言和 Ajax 技術(shù)創(chuàng)建 Web 管理頁面,通過標(biāo)準(zhǔn)的接口,可將用戶的 HTTP 格式的請求轉(zhuǎn)換成 SNMP 協(xié)議的格式,或?qū)?SNMP 協(xié)議數(shù)據(jù)單元轉(zhuǎn)換成 HTTP 格式顯示到用戶的瀏覽器界面。同時采用 ajax( “ Asynchronous JavaScript andXML”,即異步 JavaScript和 XML) 窗體技術(shù)。 Ajax 技術(shù)之中,最核心的技術(shù) 就是 xMLHttpRequest,它為運(yùn)行于瀏覽器中的 JavaScript腳本提供了一種在頁面 之內(nèi)與服務(wù)器通信的手段,這使得頁面內(nèi)的 JavaSeript可以在不刷新頁面的情況 下從服務(wù)器
17、獲取數(shù)據(jù),而不是刷新整個頁面。三、基于 SNMP 網(wǎng)管系統(tǒng)的開發(fā)步驟 開發(fā)環(huán)境準(zhǔn)備:將 zhtelecombasis.jar文件加載到 Java開發(fā)環(huán)境的 ClassPath中。 3.1 初始化 ObjectSNMP API 本地初始化:SNMPFactory.init(SNMPFactory.Mode_Local, null);/ 本地初始化 SNMPAPI snmpapi = SNMPFactory.getSNMPAPI();/本地獲取 SNMP API 服務(wù) RMI 服務(wù)端初始化:SNMPFactory.init(SNMPFactory.Mode_Server_Local, null);
18、/ 啟用 RMI 服務(wù) SNMPAPI snmpapi = SNMPFactory.getSNMPAPI();/服務(wù)端在本地獲取 SNMP API 服務(wù) RMI 客戶端初始化:SNMPFactory.init(SNMPFactory.Mode_Client, rmiServerIP);/ 連接到 RMI 服務(wù)端。 SNMPAPI snmpapi = SNMPFactory.getSNMPAPI();/從 RMI 服務(wù)端獲取 SNMP API 服務(wù)3.2 加載 MIB 文件Mib 文件需要放在 classpath的 mibs 文件中,如 mibs/RFC1213-MIB 。SNMPFactory
19、.loadMib(RFC1213-MIB)/ 在 classpath的 mibs目錄中加載 mib 文 件。 系統(tǒng)默認(rèn)已經(jīng)加載 RFC1213-MIB 和 HOST-RESOURCES-MIB ,無需重復(fù)加 載。本地模式和服務(wù)端模式需要加載 MIB 文件;客戶端不需要加載 MIB 文件。3.3 定義 Java對象 推薦使用 GenJavaCodeTool代碼生成工具自動生成 Java對象,示例如下: String packageName = mon.snmp.mib;String codeDirectory = F:/networkmanager/src/src_common/com/zhtelecom/common/snmp/mib/; GenJavaCodeTool.setJavaCodeDirectory(codeDirectory, packageName); /生成 snmp mib system組的代碼GenJavaCodeTool.genJavaCode(MibSystem, .2.1.1);提/ 供 Java對象名和 要映射的 OID也可以手工生成 Java對象。提示:如果不需要對 MIB 組或表下的全部節(jié)點(diǎn)進(jìn)行操作,可以在 Java對象中定 義部分屬性。3.4 通過 ObjectSNM
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024丁方物業(yè)管理與維護(hù)合同
- 雇傭合同案例寶庫
- 住宿管理承包合同范本
- 2024建設(shè)工程設(shè)計(jì)合同(專業(yè)建設(shè)工程設(shè)計(jì)合同)新版
- 舊物品買賣合同格式
- 化妝品店轉(zhuǎn)讓合同樣本
- 2024年采購管理程序
- 建材加盟合同范本大全
- 全面合伙合同模板集合
- 就業(yè)協(xié)議書填寫指南與示例
- 2024-2025學(xué)年浙教版八年級上冊科學(xué)期中模擬卷
- (正式版)HGT 6313-2024 化工園區(qū)智慧化評價導(dǎo)則
- 智能制造工程生涯發(fā)展報告
- 二級公立醫(yī)院績效考核三級手術(shù)目錄(2020版)
- 《個人防護(hù)用品PPE》ppt課件
- 國際貿(mào)易SimTrade外貿(mào)實(shí)習(xí)報告
- 導(dǎo)師帶徒實(shí)施辦法6、30
- 《Fishing with Grandpa》RAZ分級閱讀繪本pdf資源
- 水穩(wěn)施工方案(完整版)
- 跨海大橋施工方案
- MATLAB語言課程論文 基于MATLAB的電磁場數(shù)值圖像分析
評論
0/150
提交評論