努爾木拉提·熱合木別爾德 王業(yè)
摘要:隨著高校校園網(wǎng)絡(luò)的規(guī)模和用戶的不斷擴(kuò)大,網(wǎng)絡(luò)設(shè)備管理日趨復(fù)雜。針對(duì)該情況,該文結(jié)合學(xué)校實(shí)際情況,詳細(xì)分析網(wǎng)絡(luò)設(shè)備管理的需求,并基于SNMP、Java EE及MySQL等技術(shù)基礎(chǔ)上,設(shè)計(jì)并實(shí)現(xiàn)了基于SNMP的網(wǎng)絡(luò)設(shè)備管理平臺(tái),旨在簡(jiǎn)化網(wǎng)絡(luò)設(shè)備管理難度,提高管理效率,降低管理成本。
關(guān)鍵詞:SNMP;網(wǎng)絡(luò)設(shè)備管理
隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅速發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)已漸漸滲入到我們生活的各個(gè)角落,成為繼水、電之后的生活剛需。近幾年高校的招生數(shù)量、校區(qū)建設(shè)等規(guī)模的擴(kuò)展,使得學(xué)校網(wǎng)絡(luò)結(jié)構(gòu)越來(lái)越復(fù)雜,網(wǎng)絡(luò)設(shè)備規(guī)模日益擴(kuò)大。如何有效地對(duì)設(shè)備進(jìn)行運(yùn)維管理,為在校師生提供良好的服務(wù)體驗(yàn),已逐漸成為網(wǎng)絡(luò)服務(wù)部門急需解決的頭等大事。
1 網(wǎng)絡(luò)設(shè)備管理的現(xiàn)狀
1.1 網(wǎng)絡(luò)設(shè)備管理的現(xiàn)狀
學(xué)校最初網(wǎng)絡(luò)設(shè)備只有100多臺(tái),以手動(dòng)方式管理網(wǎng)絡(luò)設(shè)備。近幾年,學(xué)校對(duì)整個(gè)校園網(wǎng)進(jìn)行改造,達(dá)到所有樓宇都滿配網(wǎng)絡(luò)設(shè)備,交換機(jī)、路由器等設(shè)備數(shù)量達(dá)500余臺(tái),并且隨著無(wú)線網(wǎng)絡(luò)的建設(shè),設(shè)備規(guī)模還將不斷擴(kuò)大。
1.2 網(wǎng)絡(luò)設(shè)備管理存在的問(wèn)題
網(wǎng)絡(luò)設(shè)備的種類繁多,設(shè)備管理相對(duì)復(fù)雜。當(dāng)設(shè)備數(shù)量少且集中的時(shí)候,手動(dòng)管理網(wǎng)絡(luò)設(shè)備是可行的,但到達(dá)一定規(guī)模后,管理成本直線上升。同時(shí),網(wǎng)絡(luò)出現(xiàn)故障后,由網(wǎng)絡(luò)用戶報(bào)告,然后再去排查,維護(hù)效率很低且很被動(dòng),嚴(yán)重影響用戶體驗(yàn)。
1.3 解決方案
校園網(wǎng)絡(luò)中的交換機(jī)和路由器,雖然設(shè)備廠商不同,采用的協(xié)議也不盡相同,但絕大多數(shù)的網(wǎng)絡(luò)設(shè)備支持SNMP協(xié)議。SNMP協(xié)議允許網(wǎng)絡(luò)及設(shè)備管理員收集設(shè)備相關(guān)管理信息和設(shè)備信息。通過(guò)SNMP獲得設(shè)備的物理特性、數(shù)據(jù)吞吐量、端口流量等信息,加以分析,顯示到圖形化界面。因此可以通過(guò)SNMP的網(wǎng)絡(luò)設(shè)備管理平臺(tái),來(lái)幫助網(wǎng)絡(luò)管理員及時(shí)的發(fā)現(xiàn)設(shè)備問(wèn)題并進(jìn)行運(yùn)維,提高管理效率,降低管理成本和時(shí)間成本,有效提升用戶的服務(wù)體驗(yàn)。
2 SNMP協(xié)議
2.1 SNMP協(xié)議
SNMP(Simple Network Management Protocol)即簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議。由于SNMP設(shè)計(jì)簡(jiǎn)單、容易更新、擴(kuò)展性高的優(yōu)點(diǎn),使其很快得到各網(wǎng)絡(luò)設(shè)備生產(chǎn)廠家的認(rèn)同?;赟NMP協(xié)議,可以實(shí)現(xiàn)一個(gè)管理工作站遠(yuǎn)程管理所有支持SNMP協(xié)議的網(wǎng)絡(luò)設(shè)備,包括監(jiān)視網(wǎng)絡(luò)狀態(tài)、修改網(wǎng)絡(luò)設(shè)備配置、接收網(wǎng)絡(luò)事件警告等。
2.2 管理信息庫(kù)(MIB)
任何一個(gè)被管理的資源都表示成一個(gè)對(duì)象,稱為被管理的對(duì)象,MIB是被管理對(duì)象的集合。MIB提供數(shù)字化OID到可讀文本的映射,提供一張從某個(gè)SNMP代理中獲得的可用OID的各種值的地圖。
3 需求分析
3.1 人員管理
參與該網(wǎng)絡(luò)設(shè)備管理的人員主要有:系統(tǒng)管理員、設(shè)備管理員、維護(hù)人員、普通用戶。設(shè)備管理員可以進(jìn)行設(shè)備管理操作,可以處理告警消息。維護(hù)人員可以查看、處理告警消息。普通用戶只能查看設(shè)備數(shù)據(jù)。
3.2設(shè)備管理
設(shè)備位置具有層次性,按:區(qū)域-樓宇-樓層-分組-設(shè)備的規(guī)則。需要能夠查看某一層次位置下的所有設(shè)備,并統(tǒng)計(jì)出總個(gè)數(shù)、正常個(gè)數(shù)、故障個(gè)數(shù)。需要能查看某一具體設(shè)備的相關(guān)信息:設(shè)備的基本信息,CPU、內(nèi)存、SWAP、buffer、cached使用狀況,以及當(dāng)前的設(shè)備接收、發(fā)送的字節(jié)數(shù)和數(shù)據(jù)包數(shù)目等。有時(shí),設(shè)備位置能會(huì)有變動(dòng),如某一樓已廢棄或新建了一個(gè)宿舍,就需要對(duì)設(shè)備位置節(jié)點(diǎn)進(jìn)行改動(dòng)。因此設(shè)備管理要包含查看設(shè)備列表及詳情,增刪設(shè)備,位置節(jié)點(diǎn)調(diào)整。
3.3告警管理
能夠查看并處理當(dāng)前未處理的告警消息,提醒管理員及時(shí)處理,同時(shí)記錄處理過(guò)程。
3.4數(shù)據(jù)分析
能夠通過(guò)獲取的設(shè)備運(yùn)行情況數(shù)據(jù),以及故障處理記錄,有效分析網(wǎng)絡(luò)故障分布情況、人員維護(hù)效率、人員績(jī)效考核等,從而通過(guò)數(shù)據(jù)反饋,不斷優(yōu)化管理手段。
4 總體設(shè)計(jì)
4.1 設(shè)計(jì)思想
網(wǎng)絡(luò)設(shè)備管理平臺(tái)的總目標(biāo)是開(kāi)發(fā)一個(gè)基于SNMP4j的易擴(kuò)充、易維護(hù)、具有良好圖形化界面的網(wǎng)絡(luò)設(shè)備管理系統(tǒng),以幫助管理員及時(shí)了解各設(shè)備的物理特性、數(shù)據(jù)吞吐量等性能數(shù)據(jù),和及時(shí)發(fā)現(xiàn)端口流量、通信能力是否已經(jīng)超載,并能自動(dòng)輪詢,找出有問(wèn)題的設(shè)備信息報(bào)告給管理員;另外還要有權(quán)限管理功能,即為不同角色的用戶分配不同的權(quán)限。
根據(jù)平臺(tái)所要完成的任務(wù),結(jié)合當(dāng)前情況,平臺(tái)采用Browser/Server結(jié)構(gòu)。Web應(yīng)用可以主動(dòng)輪詢?cè)L問(wèn)設(shè)備數(shù)據(jù),保存在MySQL數(shù)據(jù)庫(kù)中便于查詢。
4.2 平臺(tái)功能設(shè)計(jì)
平臺(tái)功能結(jié)構(gòu),如圖1所示。
5詳細(xì)設(shè)計(jì)
5.1查詢當(dāng)前設(shè)備組的狀態(tài)
查看某一分組下所有設(shè)備的列表,需要顯示當(dāng)前設(shè)備狀態(tài)(是否連通),所以需要get該設(shè)備的一項(xiàng)數(shù)據(jù)(設(shè)定獲取設(shè)備的運(yùn)行時(shí)間),如果能獲得,說(shuō)明設(shè)備正常,否則說(shuō)明該設(shè)備出了問(wèn)題,連通不了。而要通過(guò)SNMP去訪問(wèn)該設(shè)備,需要先從數(shù)據(jù)庫(kù)中獲取IP、Community數(shù)據(jù),然后再get。每當(dāng)SNMP獲取了設(shè)備的運(yùn)行時(shí)間后,把該數(shù)據(jù)和當(dāng)前時(shí)間存入數(shù)據(jù)庫(kù)。需要訪問(wèn)設(shè)備狀態(tài)時(shí),先訪問(wèn)數(shù)據(jù)庫(kù),調(diào)出數(shù)據(jù)更新時(shí)間和設(shè)備運(yùn)行時(shí)間,如果設(shè)備運(yùn)行時(shí)間為空或者更新時(shí)間與當(dāng)前時(shí)間間隔超過(guò)了10分鐘,那就需要通過(guò)SNMP來(lái)get得到運(yùn)行時(shí)間,然后主線程將該數(shù)據(jù)放入結(jié)果集,同時(shí)創(chuàng)建新線程,將數(shù)據(jù)和當(dāng)前時(shí)間放到數(shù)據(jù)庫(kù)中。在SNMP get得不到數(shù)據(jù)時(shí),檢查該設(shè)備的狀態(tài)位,如果是1則記錄告警消息,并修改狀態(tài)位為0,如果得到了數(shù)據(jù),而原先設(shè)備狀態(tài)位是0,則改為1即可。獲取設(shè)備流程如圖2所示。
5.2 網(wǎng)絡(luò)設(shè)備管理模塊設(shè)計(jì)
1)獲取網(wǎng)絡(luò)設(shè)備的私有MIB信息