




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于(jy)SNMP網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)(shj)與實(shí)現(xiàn) 本科畢業(yè)設(shè)計(jì)(shj)(論文)題目:基于SNMP網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)院 (系):專 業(yè):班 級(jí): 學(xué) 生: 學(xué) 號(hào): 指導(dǎo)教師:基于SNMP網(wǎng)絡(luò)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要隨著互聯(lián)網(wǎng)的發(fā)展,計(jì)算機(jī)局域網(wǎng)也在各大中小型企事業(yè)單位得到充分的重視與長(zhǎng)足的發(fā)展。為了使局域網(wǎng)能正常、高效、穩(wěn)定、安全、可靠地運(yùn)行,管理員必須對(duì)局域網(wǎng)絡(luò)進(jìn)行有效的管理。SNMP協(xié)議目前已成為網(wǎng)絡(luò)管理的標(biāo)準(zhǔn)協(xié)議,采用SNMP協(xié)議開發(fā)基于Windows系統(tǒng)的網(wǎng)絡(luò)管理軟件,在實(shí)際工作中有著廣泛的應(yīng)用需求。本論文通過簡(jiǎn)要介紹課題研究的背景和研究意義,并就網(wǎng)絡(luò)管理系統(tǒng)、SNMP協(xié)
2、議、管理信息庫(kù)、信息管理結(jié)構(gòu)等相關(guān)理論及原理進(jìn)行闡述。針對(duì)某局域網(wǎng)絡(luò)的現(xiàn)狀和管理需求,結(jié)合網(wǎng)絡(luò)管理實(shí)際情況,設(shè)計(jì)了一種應(yīng)用于中小型局域網(wǎng)絡(luò)的基于SNMP協(xié)議的C/S模式的網(wǎng)絡(luò)管理系統(tǒng),并對(duì)其中的核心技術(shù)進(jìn)行了詳細(xì)介紹。論文以模塊化的方式,設(shè)計(jì)該網(wǎng)絡(luò)管理系統(tǒng),并對(duì)配置管理、性能管理、故障管理和網(wǎng)絡(luò)可達(dá)性等功能的實(shí)現(xiàn)闡述了其設(shè)計(jì)思路和實(shí)現(xiàn)方法。并給出了部分功能的運(yùn)行效果。關(guān)鍵詞:局域網(wǎng);網(wǎng)絡(luò)管理(gunl);SNMP;管理信息庫(kù);管理信息結(jié)構(gòu)Research and Implementation of Network ManagementSystem based on SNMPAbstractWi
3、th the development of the Internet, the Local Area Network (LAN) has been attached great importance from enterprises and developed significantly. Administrators have to manage the LAN efficiently in order to keep the LAN running properly, effectively, steady and reliably. Simple Network Management P
4、rotocol (SNMP) currently is the standard protocol of the LAN management. Developing the software of the LAN management under SNMP basing on Windows system is highly demanded in reality. This thesis introduces the background and research significance of the LAN management. And it also introduces the
5、LAN management system, SNMP, Management Information Base (MIB), Structure of Management Information(SMI)and related concepts. This thesis focuses on the appearance and management demand of a LAN, combines the reality of LAN management, introduces the develop workflow and design mind of Client/Server
6、 (C/S) management system basing on the SNMP for medium and small LAN and in special the core technology. This thesis illustrates the designing ideas and implementation for configuration management, performance management, fault management and network reachability within the LAN management area. Besi
7、des, it visualized the running effects of modules with screenshots.Keywords: LAN; network management; SNMP;MIB; SMI1 緒論(xln)1.1課題(kt)背景計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)從二十世紀(jì)七十年代開始到現(xiàn)在已經(jīng)經(jīng)歷了四十多年的時(shí)光,從七十年代的廣域網(wǎng)技術(shù)到八十年代的微機(jī)局域網(wǎng)技術(shù)以及九十年代后不斷興起的 Internet 與綜合業(yè)務(wù)數(shù)字網(wǎng) ISDN,直到今天蓬勃發(fā)展的移動(dòng)互聯(lián)網(wǎng),計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)已日趨成熟。今天,計(jì)算機(jī)網(wǎng)絡(luò)作為信息社會(huì)的基礎(chǔ)設(shè)施已經(jīng)日益深入到國(guó)民經(jīng)濟(jì)和社會(huì)生活各個(gè)方面,使人們
8、工作生活方式發(fā)生了巨大變化,計(jì)算機(jī)網(wǎng)絡(luò)已成為人們?nèi)粘I钪斜夭豢缮俚慕浑H工具。與此同時(shí),隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大、多廠商產(chǎn)品的互聯(lián),網(wǎng)絡(luò)復(fù)雜性不斷增加,網(wǎng)絡(luò)的異構(gòu)性越來越高,各種網(wǎng)絡(luò)軟件提供的服務(wù)對(duì)網(wǎng)絡(luò)的性能要求越來越高。如果沒有一個(gè)高效的網(wǎng)絡(luò)管理系統(tǒng)進(jìn)行管理,那么很難保證為廣大用戶(yngh)提供滿意的服務(wù)。網(wǎng)絡(luò)管理和維護(hù)在整個(gè)網(wǎng)絡(luò)運(yùn)行中越來越受到重視,研究與開發(fā)能滿足需要的網(wǎng)絡(luò)管理系統(tǒng)工具有很好的實(shí)用價(jià)值與良好的發(fā)展前景。1.2國(guó)外研究現(xiàn)狀近幾年,隨著網(wǎng)絡(luò)規(guī)模的逐步擴(kuò)大、應(yīng)用的逐漸復(fù)雜,各個(gè)企事業(yè)單位、政府機(jī)構(gòu)都面臨著網(wǎng)絡(luò)的管理難、控制難、維護(hù)難等問題。目前許多企業(yè)都依賴于ERP/CRM等電子信
9、息系統(tǒng),而金融、銀行、保險(xiǎn)等行業(yè)對(duì)網(wǎng)絡(luò)的依賴性就更強(qiáng),如果企業(yè)的網(wǎng)絡(luò)發(fā)生故障或者運(yùn)行狀態(tài)不佳,數(shù)據(jù)流受到阻塞,關(guān)鍵資料就不能得到有效共享,導(dǎo)致運(yùn)營(yíng)效率下降,從而影響企業(yè)的生產(chǎn)效率,甚至?xí)o企業(yè)經(jīng)營(yíng)帶來巨大的損失。與此同時(shí),如何保障網(wǎng)絡(luò)的暢通無誤,如何及早發(fā)現(xiàn)并排除潛在的故障隱患,有效地管理好網(wǎng)絡(luò),保障網(wǎng)絡(luò)的安全穩(wěn)定運(yùn)行,成為IT管理人員甚至是企業(yè)領(lǐng)導(dǎo)層都必須面對(duì)的問題,許多網(wǎng)絡(luò)經(jīng)營(yíng)管理機(jī)構(gòu)或單位不得不付出極大的人力、物力對(duì)網(wǎng)絡(luò)進(jìn)行管理。今天,人們己經(jīng)清楚地意識(shí)到,計(jì)算機(jī)網(wǎng)絡(luò)的管理和運(yùn)行是計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域中的關(guān)鍵技術(shù)之一,特別是大型計(jì)算機(jī)網(wǎng)絡(luò)的建設(shè),更應(yīng)該把網(wǎng)絡(luò)的管理和運(yùn)行作為十分重要的建設(shè)內(nèi)容。
10、網(wǎng)絡(luò)管理,就是監(jiān)視、組織和控制網(wǎng)絡(luò)通信服務(wù)和信息處理所必需的各種活動(dòng)的總稱,確保網(wǎng)絡(luò)長(zhǎng)時(shí)間、正常的運(yùn)行,并當(dāng)其出現(xiàn)故障的時(shí)候盡快的發(fā)現(xiàn)、修復(fù)故障,使其最大限度的發(fā)揮其應(yīng)有的效益。許多廠商開發(fā)出了自己的網(wǎng)絡(luò)管理產(chǎn)品,它們都采用了標(biāo)準(zhǔn)的網(wǎng)絡(luò)管理協(xié)議,提供了具有各自特色的解決方案,比較典型的有Sun公司的NetManager、HP公司的Open View、Cabletron Systems公司的Spectrum Enterprise Manager 5.0、Loran Technologies公司的Kinnetics 2.0。1.3課題意義在互聯(lián)網(wǎng)時(shí)代,如何保證網(wǎng)絡(luò)的安全和業(yè)務(wù)的正常運(yùn)行已經(jīng)是一個(gè)及
11、其重要的問題,這就需要一個(gè)網(wǎng)絡(luò)安全的統(tǒng)一管理平臺(tái)來保證網(wǎng)絡(luò)平臺(tái)的正常運(yùn)行。在這個(gè)信息安全管理平臺(tái)下,實(shí)現(xiàn)設(shè)備協(xié)同工作,優(yōu)化網(wǎng)絡(luò)和系統(tǒng)資源的有效利用,保障網(wǎng)絡(luò)和應(yīng)用系統(tǒng)安全正常地運(yùn)行具有重要的現(xiàn)實(shí)意義。隨著全球網(wǎng)絡(luò)經(jīng)濟(jì)、信息技術(shù)的迅猛發(fā)展,各類基于網(wǎng)絡(luò)的業(yè)務(wù)應(yīng)用平臺(tái)越來越多,網(wǎng)絡(luò)設(shè)備的安全產(chǎn)生了各種各樣的問題,網(wǎng)上泄密、網(wǎng)上詐騙、黑客攻擊、系統(tǒng)崩潰等一系列涉及計(jì)算機(jī)信息安全的事件時(shí)有發(fā)生,計(jì)算機(jī)病毒的侵害更是持續(xù)以極高的速度增長(zhǎng)。一些重要應(yīng)用的計(jì)算機(jī)信息系統(tǒng)在信息安全管理、技術(shù)措施等方面還存在著很多薄弱環(huán)節(jié)。為了解決上述網(wǎng)絡(luò)設(shè)備的安全問題,需要研究設(shè)計(jì)一個(gè)通用的網(wǎng)絡(luò)安全管理平臺(tái),統(tǒng)一的管理各種網(wǎng)
12、絡(luò)設(shè)備和資源,并在統(tǒng)一的模型上實(shí)現(xiàn)安全策略和設(shè)備聯(lián)動(dòng)策略。而本文的研究課題就是對(duì)網(wǎng)絡(luò)中的Windows主機(jī)信息進(jìn)行采集,并在整個(gè)網(wǎng)絡(luò)管理平臺(tái)上實(shí)現(xiàn)對(duì)Windows主機(jī)信息的統(tǒng)一監(jiān)測(cè)和管理。1.4論文(lnwn)結(jié)構(gòu)本論文(lnwn)結(jié)構(gòu)如下:第一章,緒論(xln)。介紹了網(wǎng)絡(luò)管理的概念和發(fā)展歷史,網(wǎng)絡(luò)管理的國(guó)內(nèi)外研究情況以及所面臨的問題,然后介紹本論文的研究意義以及研究的內(nèi)容。第二章,網(wǎng)絡(luò)管理。對(duì)現(xiàn)存的一些網(wǎng)絡(luò)管理體系進(jìn)行介紹,并指出它們存在的問題,引出SNMP技術(shù)。第三章,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議。對(duì)具體SNMP協(xié)議框架進(jìn)行了詳細(xì)的介紹,并介紹了SNMP+技術(shù)和核心類。第四章,基于SNMP網(wǎng)絡(luò)管理的
13、研究。提出對(duì)Windows主機(jī)信息進(jìn)行監(jiān)測(cè)的需求并進(jìn)行分析,對(duì)系統(tǒng)的整體架構(gòu)、系統(tǒng)用到的主要連接,功能服務(wù)等進(jìn)行詳細(xì)設(shè)計(jì)。第五章,基于SNMP的網(wǎng)絡(luò)管理的具體實(shí)現(xiàn)。在上一章的基礎(chǔ)上,對(duì)基于SNMP網(wǎng)絡(luò)管理系統(tǒng)進(jìn)行分析和具體實(shí)現(xiàn),完成設(shè)計(jì)要求的所有功能。第六章,總結(jié)。對(duì)論文的研究工作作了總結(jié),并對(duì)未來進(jìn)行了展望。2 網(wǎng)絡(luò)管理網(wǎng)絡(luò)管理是指對(duì)網(wǎng)絡(luò)的運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè)和控制,使其能夠有效、可靠、安全、經(jīng)濟(jì)地提供服務(wù)。從這個(gè)概括可以看出,網(wǎng)絡(luò)管理可以包括兩個(gè)任務(wù):一是對(duì)網(wǎng)絡(luò)的運(yùn)行狀態(tài)進(jìn)行監(jiān)測(cè);二是對(duì)網(wǎng)絡(luò)的運(yùn)行狀態(tài)進(jìn)行控制。通過監(jiān)測(cè)了解當(dāng)前狀態(tài)是否正常,是否存在瓶頸問題和潛在的危機(jī);通過控制對(duì)網(wǎng)絡(luò)狀態(tài)進(jìn)行合
14、理調(diào)節(jié),提高性能,保證服務(wù)。2.1網(wǎng)絡(luò)管理的發(fā)展(fzhn)與標(biāo)準(zhǔn)化網(wǎng)絡(luò)管理技術(shù)是伴隨著計(jì)算機(jī)、網(wǎng)絡(luò)、通信技術(shù)的發(fā)展而發(fā)展的。信息社會(huì)對(duì)網(wǎng)絡(luò)的依賴程度越來越高,網(wǎng)絡(luò)的高效、可靠的運(yùn)行管理也越來越重要。在 網(wǎng) 絡(luò) 管 理 技 術(shù) 的研究、發(fā)展和標(biāo)準(zhǔn)化方面,國(guó)際標(biāo)準(zhǔn)化組織ISO(International Organization for Standardization)和 Internet 體系結(jié)構(gòu)委員會(huì)IAB(Internet Architecture Board)及其下屬的工作組都作了卓有成效的工作。他們所制定的基于 OSI 參考模型的公共管理信息服務(wù)與協(xié)議 CMIS/CMIP(Common
15、 Management Information Services/Protocol)和基于 TCP/IP 的簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議SNMP(Simple Network Management Protocol)已經(jīng)成為(chngwi)目前網(wǎng)絡(luò)管理系統(tǒng)中運(yùn)用較為廣泛的兩種協(xié)議。(1) CMIS/CMIP 協(xié)議(xiy)CMIP主要針對(duì) OSI七層協(xié)議參考模型而設(shè)計(jì),用來提供標(biāo)準(zhǔn)的公共管理信息服務(wù) CMIS。網(wǎng)絡(luò)管理進(jìn)程使用 ISO 參考模型中的第七層,OSI 的低層沒有特別為網(wǎng)絡(luò)管理定義的協(xié)議。CMIP 管理體系結(jié)構(gòu)如圖2.1 所示。圖 2. 1 CMIP 通信結(jié)構(gòu)圖在 OSI 管理信息通信中,管理者
16、和管理代理調(diào)用公共管理信息服務(wù)元素CMISE 來進(jìn)行管理信息的交換。CMISE 向上提供服務(wù)訪問點(diǎn)與管理者或代理交換原語(yǔ),向下通過聯(lián)系控制服務(wù)元素 ACSE 和遠(yuǎn)程操作服務(wù)元素 ROSE 按照公共管理信息協(xié)議 CMIP 收發(fā) CMIP PDU(協(xié)議數(shù)據(jù)單元)。CMIP PDU 需要傳輸層提供面向連接的傳輸服務(wù)。由于歷史和現(xiàn)實(shí)的原因,國(guó)際標(biāo)準(zhǔn)化組織依據(jù) OSI/RM 模型制定的七層協(xié)議標(biāo)準(zhǔn)始終未能得到業(yè)界和社會(huì)的廣泛支持和應(yīng)用,相應(yīng)地,符合 OSI 網(wǎng)絡(luò)管理標(biāo)準(zhǔn)的可供使用的產(chǎn)品也幾乎沒有。盡管如此,OSI 的網(wǎng)絡(luò)管理標(biāo)準(zhǔn)協(xié)議還是具有十分重要的參考意義。(2) SNMP 協(xié)議80 年代后期,Int
17、ernet 的迅速發(fā)展和網(wǎng)絡(luò)管理的薄弱,使 Internet 體系結(jié)構(gòu)委員會(huì)決心定義自己的一套標(biāo)準(zhǔn)化網(wǎng)絡(luò)管理體系結(jié)構(gòu)與協(xié)議。1988 年,Internet結(jié)構(gòu)委員會(huì)完成了 SNMPv1,1993 年,又發(fā)表了 SNMPv2,管理功能和安全性能都得到了加強(qiáng),后來又發(fā)表了 SNMPv3,使得安全問題徹底解決。與 CMIP 相比,SNMP 最大的特點(diǎn)是簡(jiǎn)單性和可擴(kuò)展性。“Simple is the best”,確實(shí)如此,簡(jiǎn)單化使網(wǎng)絡(luò)管理容易實(shí)施,系統(tǒng)資源占用較少,用戶可以更容易根據(jù)需要對(duì) SNMP 進(jìn)行編程。此外,由于它的設(shè)計(jì)簡(jiǎn)單、協(xié)議容易更新且可以方便的擴(kuò)展,很快得到了各網(wǎng)絡(luò)設(shè)備生產(chǎn)廠家的廣泛支持
18、,并使之成為了事實(shí)上的網(wǎng)絡(luò)管理工業(yè)標(biāo)準(zhǔn)。目前,幾乎所有廠家生產(chǎn)的網(wǎng)絡(luò)設(shè)備都支持 SNMPv1、SNMPv2 管理功能,有很少部分設(shè)備支持 SNMPv3,但 SNMPv3 推廣應(yīng)用的趨勢(shì)是毋庸置疑的。2.2網(wǎng)絡(luò)管理的功能(gngnng)國(guó)際標(biāo)準(zhǔn)化組織 ISO 一直致力于網(wǎng)絡(luò)管理的標(biāo)準(zhǔn)化,定義了網(wǎng)絡(luò)管理的五大功能:配置管理、性能管理、安全管理、計(jì)費(fèi)(j fi)管理和故障管理。通過這五大網(wǎng)絡(luò)管理功能,IP 網(wǎng)管系統(tǒng)就能夠?qū)崟r(shí)調(diào)整網(wǎng)絡(luò)狀態(tài)、充分提高每個(gè)被管對(duì)象的利用率,使網(wǎng)絡(luò)不發(fā)生故障或擁塞、網(wǎng)絡(luò)中的各種資源得到更加高效的利用,在保證網(wǎng)絡(luò)的可用時(shí)間和設(shè)備的利用率、網(wǎng)絡(luò)性能、服務(wù)質(zhì)量的同時(shí),實(shí)現(xiàn)網(wǎng)絡(luò)正常
19、、高效地運(yùn)行。(1) 配置管理配置管理主要是發(fā)現(xiàn)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)關(guān)系、監(jiān)視和管理網(wǎng)絡(luò)設(shè)備的配置情況。目標(biāo)是掌握和控制網(wǎng)絡(luò)和系統(tǒng)(xtng)的配置信息以及網(wǎng)絡(luò)內(nèi)各設(shè)備的狀態(tài)和連接關(guān)系,這些信息對(duì)于維護(hù)一個(gè)穩(wěn)定運(yùn)行的網(wǎng)絡(luò)是十分重要的。配置管理最主要的作用是可以增強(qiáng)網(wǎng)絡(luò)管理者對(duì)網(wǎng)絡(luò)配置的控制,它是通過對(duì)設(shè)備的配置數(shù)據(jù)提供快速的訪問來實(shí)現(xiàn)的。(2) 性能管理性能管理的目標(biāo)是衡量和呈現(xiàn)網(wǎng)絡(luò)特性的各個(gè)方面,使網(wǎng)絡(luò)的性能維持在一個(gè)可以接受的水平上。性能管理使管理人員能夠監(jiān)視網(wǎng)絡(luò)運(yùn)行的關(guān)鍵參數(shù),如吞吐率、利用率、錯(cuò)誤率、響應(yīng)時(shí)間等。此外,性能管理能夠指出網(wǎng)絡(luò)中哪些性能可以改善以及如何改善。從概念上講,性能管理包括
20、監(jiān)視和調(diào)整兩大類功能。監(jiān)視功能主要是指跟蹤網(wǎng)絡(luò)活動(dòng),調(diào)整功能是指通過改變?cè)O(shè)置來改善網(wǎng)絡(luò)的性能。性能管理的最大作用在于幫助管理員減少網(wǎng)絡(luò)中過分擁擠和不可通行的現(xiàn)象,從而為用戶提供穩(wěn)定的服務(wù)。(3) 安全管理安全管理的目標(biāo)是按照一定的策略來控制對(duì)網(wǎng)絡(luò)資源的訪問,以保證網(wǎng)絡(luò)不被侵害,并保證重要的信息不被未授權(quán)的用戶訪問。安全管理是對(duì)網(wǎng)絡(luò)資源以及重要信息的訪問進(jìn)行約束和控制。它包括驗(yàn)證網(wǎng)絡(luò)用戶的訪問權(quán)限和優(yōu)先級(jí)、檢測(cè)和記錄末授權(quán)用戶企圖進(jìn)行的非法操作。安全管理的許多操作都與實(shí)現(xiàn)密切相關(guān),依賴于設(shè)備的類型和所支持的安全等級(jí)。安全管理中涉及的安全機(jī)制有:身份驗(yàn)證、加密、密鑰管理及授權(quán)等。(4) 計(jì)費(fèi)(j
21、fi)管理計(jì)費(fèi)管理(gunl)的目標(biāo)是跟蹤個(gè)人和團(tuán)體用戶對(duì)網(wǎng)絡(luò)資源的使用情況,對(duì)其收取合理的費(fèi)用。這一方面可以促使用戶合理地使用網(wǎng)絡(luò)資源,維持網(wǎng)絡(luò)正常的運(yùn)行和發(fā)展,另一方面,管理者也可以根據(jù)情況更好地為用戶提供所需的資源。計(jì)費(fèi)管理的主要作用是:網(wǎng)絡(luò)管理者能測(cè)量和報(bào)告基于個(gè)人或團(tuán)體用戶的計(jì)費(fèi)信息,分配資源并計(jì)算用戶通過網(wǎng)絡(luò)傳輸數(shù)據(jù)的費(fèi)用,然后給用戶開出賬單。(5) 故障(gzhng)管理故障管理的目標(biāo)是自動(dòng)檢測(cè)網(wǎng)絡(luò)硬件和軟件中的故障并通知用戶,以便網(wǎng)絡(luò)能有效地運(yùn)行。故障管理的步驟包含:判斷故障癥狀;隔離該故障;修復(fù)該故障;記錄故障的檢測(cè)過程及其結(jié)果。故障管理的功能包括:接收差錯(cuò)報(bào)告并做出反應(yīng);建
22、立和維護(hù)差錯(cuò)日志并進(jìn)行分析;對(duì)差錯(cuò)進(jìn)行診斷測(cè)試;對(duì)故障進(jìn)行過濾;同時(shí)對(duì)故障通知進(jìn)行優(yōu)先級(jí)判別;追蹤故障,確定糾正故障的方法措施。2.3網(wǎng)絡(luò)管理軟件的分類(1) 網(wǎng)元管理軟件 一般由設(shè)備廠商提供,各廠商采用專有的管理MIB庫(kù),以實(shí)現(xiàn)對(duì)廠商設(shè)備本身的細(xì)致入微的管理,包括可以顯示出廠商設(shè)備圖形化的面板等,如安奈特公司的AT-View Plus,思科公司的Cisco View和華為網(wǎng)絡(luò)公司的Quidview等。(2) 通用網(wǎng)絡(luò)管理軟件 主要用于掌握全網(wǎng)的狀況,作為底層的網(wǎng)管平臺(tái)來服務(wù)于上層的網(wǎng)元管理軟件等。如安奈特公司的AT-SNMPc,可以提供一個(gè)第三方的網(wǎng)管平臺(tái),支持對(duì)所有 SNMP設(shè)備的發(fā)現(xiàn)和監(jiān)
23、控,可集成廠商設(shè)備的私有MIB庫(kù),實(shí)現(xiàn)對(duì)全網(wǎng)(多廠商)設(shè)備進(jìn)行識(shí)別和統(tǒng)一的管理。從而避免了廠商專用型網(wǎng)絡(luò)管理系統(tǒng)無法實(shí)現(xiàn)對(duì)全網(wǎng)設(shè)備的統(tǒng)一管理,用戶往往采用多臺(tái)網(wǎng)管工作站分別安裝不同的系統(tǒng),進(jìn)行分別管理的局限性,有利于簡(jiǎn)化管理和降低成本。這類產(chǎn)品還有惠普公司的HP OpenView、CA公司的Unicenter、IBM公司的Tivoli NetView等。國(guó)內(nèi)的如游龍科技的SiteView、網(wǎng)強(qiáng)信息技術(shù)公司的網(wǎng)強(qiáng)網(wǎng)管和青鳥網(wǎng)碩等。3 簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議3.1SNMP協(xié)議框架SNMP 管理框架由三部分組成:管理信息結(jié)構(gòu) SMI(Structure of Management Information)
24、、管理信息庫(kù) MIB(Management Information Base)和簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議SNMP(Simple Network Management Protocol)。SNMP屬于 TCP/IP 的應(yīng)用層協(xié)議,用到的傳輸層服務(wù)是面向無連接的用戶數(shù)據(jù)報(bào)協(xié)議 UDP(User Datagram Protocol),UDP 無需建立流控制與建立連接,所以 SNMP 為應(yīng)用實(shí)體間的通信降低了開銷,減輕了網(wǎng)絡(luò)負(fù)擔(dān),不保證報(bào)文的正確到達(dá),但可以(ky)通過輪詢機(jī)制與事件驅(qū)動(dòng)兩種方式訪問,增強(qiáng)了通信的可靠性。SNMP 的網(wǎng)絡(luò)管理體系遵循了 ISO 的網(wǎng)絡(luò)管理模型,是由管理節(jié)點(diǎn) Manage與代理節(jié)
25、點(diǎn) Agent 組成。每個(gè)代理節(jié)點(diǎn)上保存了一個(gè)管理信息庫(kù)和代理進(jìn)程,管理節(jié)點(diǎn)運(yùn)行網(wǎng)絡(luò)管理應(yīng)用進(jìn)程與每個(gè)代理節(jié)點(diǎn)上的代理進(jìn)程通信,進(jìn)行數(shù)據(jù)采集。SNMP 的管理模型如圖3.1:圖 3.1 SNMP 管理(gunl)模型3.1.1管理(gunl)信息結(jié)構(gòu)(SMI)管理信息結(jié)構(gòu) SMI 是 SNMP 的基礎(chǔ)部分,定義了 SNMP 框架所使用的信息的組成、結(jié)構(gòu)和表示,為描述MIB對(duì)象和協(xié)議如何交換信息奠定了基礎(chǔ)。RFC1155與RFC1442分別定義了SNMPv1版的管理信息結(jié)構(gòu)和SNMPv2的管理信息結(jié)構(gòu)。無論哪個(gè)版本的管理信息結(jié)構(gòu)都由三部分組成:對(duì)象標(biāo)識(shí)符 OID(Object Identifie
26、r)、對(duì)象信息的描述和對(duì)象信息的編碼。(1) 對(duì)象標(biāo)識(shí)符 OID對(duì)象標(biāo)識(shí)符也就是被管對(duì)象的命名。ISO 與 ITU-T 提供了一個(gè)全局命名樹,為需要命名的被管對(duì)象分配樹下的一個(gè)節(jié)點(diǎn)。被管對(duì)象占有全局命名的一棵子樹,這棵樹通常稱為 MIB 樹,如圖 3.2 所示。對(duì)于 SNMP 來說,樹狀結(jié)構(gòu)的命名方式最大的好處是便于加入新的網(wǎng)絡(luò)管理對(duì)象,具有良好的可擴(kuò)展性,新加入的被管對(duì)象只是其父節(jié)點(diǎn)子樹的延伸,對(duì)其他節(jié)點(diǎn)不會(huì)產(chǎn)生影響。圖 3.2 MIB-II組織結(jié)構(gòu)SMI 為 MIB 樹上的每個(gè)節(jié)點(diǎn)分配了一個(gè)數(shù)字標(biāo)識(shí),同時(shí)為了便于記憶和理解,又為每個(gè)節(jié)點(diǎn)提供了一個(gè)文本方式的對(duì)象描述符。一個(gè)完整的對(duì)象標(biāo)識(shí)符是
27、從 MIB 庫(kù)的根開始到此被管對(duì)象所對(duì)應(yīng)的節(jié)點(diǎn)沿途上所有節(jié)點(diǎn)的數(shù)字標(biāo)識(shí)或名字標(biāo)識(shí),中間以“”間隔而成的。例如 MIB-II 中的一被管對(duì)象 sysName 的對(duì)象標(biāo)識(shí)符表示如下:名字(mng zi)表示:ernet.mgmt.mib-2.system.sysname數(shù)字(shz)表示:.(2) 對(duì)象(duxing)信息描述SMI 規(guī)定被管對(duì)象的描述必須包括四個(gè)方面的屬性:對(duì)象類型SYNTAX、存取方式 ACCESS、狀態(tài) STAUS 和對(duì)象說明 DESCRIPTION。SMI 規(guī)定的數(shù)據(jù)類型分為兩類:通用數(shù)據(jù)類型(universal data type)和泛用數(shù)據(jù)類型(application-
28、wide data type)。對(duì)象的存取權(quán)限分為四類:只讀 read-only、只寫 write-only、讀寫 read-write和不可訪問 not-accessible。對(duì)象的狀態(tài)有三種:必備 mandatory、可選 optical 和過期 obsolete。 對(duì)象的說明是對(duì)此對(duì)象的意義的一般性文字描述。下面是 MIB-2 中 TCP 功能組的對(duì)象 tcpMaxConn 的完整描述: tcpMaxConn OBJECT-TYPESYSTAXINTEGERACCESS read-onlySTATUS mandatoryDESCRIPTION“The limit on the total
29、 number of TCP connections the entity can support.In entities where the maximum number of connections is dynamic,this object should contain the value -1.”: tcp 5 (3)對(duì)象信息編碼網(wǎng)絡(luò)管理系統(tǒng)和網(wǎng)管代理進(jìn)程之間的通信必須對(duì)對(duì)象信息進(jìn)行統(tǒng)一編碼,SMIl 規(guī)定了對(duì)象信息的編碼采用基本編碼規(guī)則 BER(Basic Encoding Rules)。 BER 編碼有三個(gè)字段:1) 標(biāo)簽(Tag):存儲(chǔ)關(guān)于標(biāo)簽和編碼格式的消息。2) 長(zhǎng)度(Le
30、ngth):記錄內(nèi)容字段的長(zhǎng)度。3) 內(nèi)容(Value):實(shí)際的數(shù)據(jù)。一個(gè) BER 編碼實(shí)際上是一個(gè) TLV 三元組(標(biāo)簽,長(zhǎng)度,內(nèi)容),每個(gè)字段都由一個(gè)或多個(gè) 8 位組成,BER 規(guī)定最高位是比特位的第 8 位,在網(wǎng)上傳輸時(shí)從高位開始。3.1.2管理(gunl)信息庫(kù)(MIB)管理信息庫(kù) MIB 是管理對(duì)象的集合,管理對(duì)象在 MIB 中按照 SMI 的規(guī)定定義,并按樹狀結(jié)構(gòu)(jigu)組織起來,反映被管資源的狀態(tài),通過讀取或設(shè)置這些對(duì)象的值可以監(jiān)視或控制網(wǎng)絡(luò)資源。MIB 中有兩種對(duì)象:標(biāo)量對(duì)象和表對(duì)象。當(dāng)對(duì)一個(gè) MIB 對(duì)象進(jìn)行訪問時(shí),目標(biāo)是特定的對(duì)象實(shí)例而不是對(duì)象類型。SNMP規(guī)定標(biāo)量對(duì)象
31、類型只有一個(gè)對(duì)象實(shí)例,標(biāo)量對(duì)象的標(biāo)識(shí)符 OID 后面加上.0 就構(gòu)成了對(duì)象實(shí)例;表對(duì)象由若干個(gè)列對(duì)象組成,一個(gè)列對(duì)象有多個(gè)實(shí)例,列對(duì)象的 OID 后面加上.x(x 代表一個(gè)順序的整數(shù)序列)構(gòu)成列對(duì)象的多個(gè)實(shí)例。目前獲得(hud)最廣泛支持的標(biāo)準(zhǔn) MIB 是 MIB-II,它定義了十個(gè)功能組,包括了十類非常典型的網(wǎng)絡(luò)信息,MIB-II 功能組如圖 3.3。十個(gè)功能組分別是:(1) 系統(tǒng)組(system gruop):提供了系統(tǒng)得一般信息。(2) 接口組(interface group):包括了關(guān)于主機(jī)接口的配置信息和統(tǒng)計(jì)信息,它是必須實(shí)現(xiàn)的,接口組中的對(duì)象可用于故障管理和性能管理。(3) 地址轉(zhuǎn)
32、換組(address translation gruop):包含一個(gè)表,該表的每一行對(duì)應(yīng)系統(tǒng)的一個(gè)物理接口,表示網(wǎng)絡(luò)地址到物理地址的映像關(guān)系。(4) IP 組(IP group):提供了與 IP 協(xié)議有關(guān)的信息。(5) ICMP 組(icmp group):提供有關(guān) ICMP 實(shí)現(xiàn)和操作的有關(guān)信息。(6) TCP 組(tcp group):提供了有關(guān) TCP 協(xié)議的實(shí)現(xiàn)和操作的信息。(7) UDP 組(udp group):提供了關(guān)于 UDP 數(shù)據(jù)報(bào)和本地接收端點(diǎn)的詳細(xì)信息。(8) EGP 組(egp group):提供了關(guān)于 EGP 路由器發(fā)送和接收的 EGP 報(bào)文的信息,以及關(guān)于 EGP
33、鄰居的詳細(xì)信息等。(9) 傳輸組(transmission group):有關(guān)每個(gè)系統(tǒng)接口的傳輸模式和訪問協(xié)議的信息。(10) SNMP 組(snmp group):提供關(guān)于(guny)系統(tǒng)中 SNMP 的實(shí)現(xiàn)和運(yùn)行(ynxng)信息。圖3.3 MIB-II功能(gngnng)組MIB-II 下面的這十個(gè)功能組的有些對(duì)象已經(jīng)廢棄或者沒有定義,所以在實(shí)際應(yīng)用中只對(duì)部分對(duì)象操作進(jìn)行網(wǎng)絡(luò)管理。3.1.3 SNMP協(xié)議(1) SNMP操作SNMP 協(xié)議是 SNMP 網(wǎng)絡(luò)管理框架的核心部分。SNMP 不允許增加或刪除對(duì)象實(shí)例來改變 MIB 的結(jié)構(gòu),只能通過 SNMP 基本操作來獲取或修改相應(yīng)對(duì)象的值,并
34、且只可以訪問 MIB 中的葉子節(jié)點(diǎn)。在 SNMPv1 中,定義了四種基本的協(xié)議操作方法:1) Get:用于獲取簡(jiǎn)單的標(biāo)量對(duì)象的值??梢韵蚪壎斜碇凶芳佣鄠€(gè)標(biāo)量對(duì)象,一次操作獲取多個(gè)標(biāo)量對(duì)象的值。2) GetNext:可以檢索給定變量 OID 的下一個(gè)對(duì)象實(shí)例的值,主要用于檢索表對(duì)象和遍歷未知對(duì)象。3) Set:用于設(shè)置和更新對(duì)象實(shí)例的值。4)Trap:Trap 是由代理向管理站發(fā)出的異步事件報(bào)告,不需要應(yīng)答報(bào)文。在 SNMPv2 中,增加了兩種協(xié)議操作 GetBulk 和 Inform,前者是用來獲取大批數(shù)據(jù)的,獲取表對(duì)象時(shí)可代替 GetNext,后者提供了管理者與管理者之間傳遞隨機(jī)通報(bào)的途徑
35、。(2) SNMP報(bào)文格式在 SNMP 管理中,管理站和代理之間交換的管理信息構(gòu)成了 SNMP 報(bào)文。SNMP 報(bào)文由三部分組成,即版本號(hào) Version、團(tuán)體名 Community 和協(xié)議數(shù)據(jù)單元 PDU。報(bào)文頭中的版本號(hào)是指 SNMP 的版本,0 代表 SNMPv1,1 代表SNMPv2;團(tuán)體名用于身份認(rèn)證;SNMPv1 中有五種 PDU 類型,但只有三種 PDU格式。SNMP 報(bào)文格式如圖 3.4,關(guān)于 PDU 中各個(gè)字段的含義解釋如下:圖 3. 4 SNMPv1 報(bào)文格式1) PDU 類型(lixng):五種 PDU 之一(GetRequest PDU,GetNextRequest P
36、DU,SetRequest Pdu,GetResponse PDU,Trap PDU)2) 請(qǐng)求標(biāo)識(shí):賦予每個(gè)請(qǐng)求報(bào)文唯一的整數(shù),用于區(qū)分(qfn)不同的請(qǐng)求。3) 錯(cuò)誤狀態(tài)(zhungti):表示代理在處理管理站的請(qǐng)求時(shí)可能出現(xiàn)的各種錯(cuò)誤。4) 錯(cuò)誤索引:當(dāng)錯(cuò)誤狀態(tài)非 0 時(shí)指向出錯(cuò)的變量。5) 變量綁定列表:變量名和對(duì)應(yīng)值的表,說明要檢索或設(shè)置的所有變量及其值,在檢索請(qǐng)求報(bào)文中變量的值為 0。在SNMPv2中報(bào)文的結(jié)構(gòu)與SNMPv1的一樣,只增加了幾種PDU類型,但 PDU 格式仍為三種,PDU 格式如圖 3.5,GetRequest、GetNextRequest、SetRequest、I
37、nformRequest 和 Trap 等 PDU 與 Response PDU 具有相同的格式,減少了 PDU 格式的種類。增加了GetBulkRequest 新PDU類型。圖 3. 5 SNMPv2 PDU 格式3.2 SNMP+開發(fā)包3.2.1 SNMP+簡(jiǎn)述SNMP+是 HP 公司提供的開發(fā)基于 SNMP 協(xié)議的網(wǎng)絡(luò)管理應(yīng)用軟件的編程接口,是為開發(fā)者提供 SNMP 服務(wù)的一系列 C+類。 SNMP+不是協(xié)議的附加層,也不是現(xiàn)有 SNMP 引擎的封裝,而是最小限度地使用現(xiàn)存的 SNMP 庫(kù)使開發(fā)工作更加方便高效。SNMP+的層次結(jié)構(gòu)圖3.6,圖 3. 6 SNMP+參考圖3.2.2 SN
38、MP+核心類根據(jù)簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議 SNMP 的格式和內(nèi)容,SNMP+封裝了如下幾個(gè)類:SNMP 類、對(duì)象標(biāo)識(shí)符類 OID、字符串類 OctetStr、時(shí)鐘類 TimeTicks、32 位計(jì)數(shù)器 Counter32、64 位計(jì)數(shù)器 Counter64、量規(guī)類 Gauge32、地址類 Address、變量綁定類 Vb、協(xié)議數(shù)據(jù)單元類 Pdu、目標(biāo)類 Target 和 SNMP 消息類。 下面介紹一下開發(fā)網(wǎng)絡(luò)管理應(yīng)用程序必需的幾個(gè) SNMP+核心類。(1) 對(duì)象標(biāo)識(shí)符類 OidSMI 中的對(duì)象標(biāo)識(shí)符 Object Identifier 是為 MIB 中每個(gè)特定對(duì)象指定的唯一(wi y)標(biāo)識(shí)符,Oid
39、 類就是(jish)對(duì) SMI 中對(duì)象(duxing)標(biāo)識(shí)符的封裝。Oid 類重載了賦值操作符和各種比較操作符和構(gòu)造函數(shù),并定義了獲取長(zhǎng)度、輸出字符串、判斷有效性的成員函數(shù)。(2) 地址類 AddressAddress 類實(shí)際上是一系列 C+ 類的集合,這些類包括 IpAddress 、IpxAddress、MacAddress、GenAddress,這些類提供了簡(jiǎn)單、安全、具有可移植性的網(wǎng)絡(luò)地址的使用。Address 是一個(gè)抽象類,通過純虛函數(shù)定義了統(tǒng)一的接口,在其派生類中實(shí)現(xiàn)。(3) 變量綁定類 Vb變量綁定就是一系列對(duì)象標(biāo)識(shí)符 Oid 和 SMI 值的組合,Vb 類就是對(duì)變量綁定的封裝,
40、可以表示成一個(gè)關(guān)系,一個(gè) Vb 對(duì)象包括一個(gè) Oid 對(duì)象和一個(gè) SMI值,通過 Vb 提供的接口,可以方便地為 Oid 和 Value 部分賦值,也可以從 Vb對(duì)象中取出 Oid 和 Value 的值。(4) 協(xié)議數(shù)據(jù)單元類 PduPdu 是管理者和代理之間進(jìn)行 SNMP 通信的基本協(xié)議數(shù)據(jù)單元。SNMP 的Pdu 類是對(duì) SMI 協(xié)議數(shù)據(jù)單元的封裝,主要用于 Snmp 類的請(qǐng)求或者以回調(diào)函數(shù)(callback)的參數(shù)形式用于異步的請(qǐng)求和通告。通過 Pdu 類提供的接口可以方便的將 Vb 導(dǎo)入或?qū)С?Pdu。(5) 目標(biāo)類 TargetTarget 對(duì)象表示將要與管理者通信的被管代理。Tar
41、get 對(duì)象不僅包括代理的網(wǎng)絡(luò)地址,同時(shí)還包括重傳次數(shù)、超時(shí)信息、SNMP 協(xié)議版本等。Target 是一個(gè)抽象類,它只有一個(gè)子類 Ctarget,CTarget 類使用 SNMP 基本的共同體信息定義SNMP 代理,這些基本的共同體信息包括讀、寫共同體名以及代理地址等。(6) Snmp 類Snmp 類是 SNMP+中最重要的的類,它是對(duì) SNMP 會(huì)話的封裝。SNMP+會(huì)話的過程包括 Pdu 的構(gòu)造、傳輸和接收,開發(fā)者定義 Snmp 類的對(duì)象來完成會(huì)話的管理。Snmp 類提供了六種基本的方法來完成網(wǎng)絡(luò)管理應(yīng)用:get(), set(),get_next(), get_bulk(), info
42、rm()和 trap(),如函數(shù)名所示,這些方法完成了 SNMP協(xié)議的基本功能,通過訪問和修改被管理代理上面的 MIB 信息來完成網(wǎng)絡(luò)管理。4 基于SNMP網(wǎng)絡(luò)管理的研究在Windows環(huán)境(hunjng)下進(jìn)行SNMP編程,可以(ky)使用WinSNMP API函數(shù)。這些函數(shù)實(shí)現(xiàn)(shxin)了基本的SNMP功能,但直接使用WinSNMP API函數(shù)要復(fù)雜得多,幸運(yùn)的是,目前有許多支持SNMP功能的第三方開發(fā)包,如UCD SNMP,PowerTCP和SNMP+等,使用這些開發(fā)包,可以大大簡(jiǎn)化Windows環(huán)境下的SNMP編程工作。SNMP+是網(wǎng)絡(luò)管理程序與SNMP代理之間的通信協(xié)議,因此SN
43、MP編程也包括兩大部分:網(wǎng)絡(luò)管理程序的開發(fā)和SNMP代理軟件的開發(fā)。SNMP代理運(yùn)行在特定的網(wǎng)絡(luò)設(shè)備中,由設(shè)備生產(chǎn)商負(fù)責(zé)開發(fā)。本論文主要研究在Windows 環(huán)境下開發(fā)基于SNMP的網(wǎng)絡(luò)管理程序,不涉及SNMP代理開發(fā)方面的內(nèi)容。4.1需求分析微軟的Windows系統(tǒng)(包括Windows NT、Windows 2000、Windows XP、Windows 2003等)支持SNMP,默認(rèn)是關(guān)閉的,可以通過添加組件的方式進(jìn)行打開并進(jìn)行簡(jiǎn)單配置。啟動(dòng)后,代理在主機(jī)上啟動(dòng)一個(gè)SNMP代理服務(wù)器進(jìn)程,監(jiān)聽從UDP端口161接收的SNMP操作請(qǐng)求。但是還不能使用SNMP獲取到系統(tǒng)的信息,因?yàn)榇藭r(shí)代理支持
44、的MIB-II中還沒有定義相關(guān)的被管理對(duì)象,因此,還需要安裝第三方支持的軟件。SNMP第三方軟件實(shí)際上是一個(gè)SNMP子代理,系統(tǒng)中原來的代理稱為SNMP主代理,主代理與子代理之間使用特有的協(xié)議進(jìn)行通信。通過安裝子代理,可以在系統(tǒng)中擴(kuò)展主代理不支持的MIB。Net-SNMP就是這樣的一款第三方軟件,安裝后即可為SNMP提供信息。本系統(tǒng)是基于SNMP的網(wǎng)絡(luò)管理系統(tǒng),目標(biāo)是建立一個(gè)局域網(wǎng)網(wǎng)絡(luò)環(huán)境下的對(duì)Windows主機(jī)資源的統(tǒng)一管理和控制。因此系統(tǒng)要求將通過SNMP采集到的信息在界面上統(tǒng)一呈現(xiàn),并對(duì)Windows主機(jī)進(jìn)程及設(shè)備進(jìn)行管理,從而實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)中的Windows主機(jī)(包括Windows NT、
45、Windows 2000、Windows XP、Windows 2003等)及Cisco Router信息的統(tǒng)一監(jiān)測(cè)和管理。4.2功能分析基于SNMP的網(wǎng)絡(luò)管理系統(tǒng)的關(guān)鍵功能之一為采集被管理Windows主機(jī)的信息資源。按照管理人員信息監(jiān)測(cè)和維護(hù)工作的要求,信息采集主要涉及以下幾個(gè)方面,管理人員可以通過采集到的信息數(shù)據(jù)來判斷遠(yuǎn)程主機(jī)的運(yùn)行情況、業(yè)務(wù)狀態(tài)和網(wǎng)絡(luò)安全。(1) 配置管理對(duì)系統(tǒng)的配置有詳細(xì)了解是網(wǎng)絡(luò)管理的一個(gè)重點(diǎn),任何(rnh)時(shí)候都需要。在需要的時(shí)候及時(shí),準(zhǔn)確的查看系統(tǒng)配置,包括基本信息、系統(tǒng)信息、IP地址,路由信息,TCP連接,UDP連接,進(jìn)程信息,軟件安裝信息。(2) 性能(xn
46、gnng)管理主機(jī)的CPU,內(nèi)存的使用情況(qngkung)對(duì)主機(jī)的性能影響很大,如果出現(xiàn)問題,將直接影響到主機(jī)的正常運(yùn)行,進(jìn)而對(duì)服務(wù)器上正在運(yùn)行的重要的應(yīng)用系統(tǒng)帶來不可預(yù)料的后果,所以,對(duì)服務(wù)器主機(jī)的CPU,內(nèi)存資源使用情況進(jìn)行監(jiān)測(cè)是網(wǎng)絡(luò)管理的首要任務(wù)。(3) 故障管理根據(jù)預(yù)先設(shè)置,代理對(duì)網(wǎng)絡(luò)中的異常斷開及時(shí)發(fā)送錯(cuò)誤提示給管理站,使管理者最快發(fā)現(xiàn)網(wǎng)絡(luò)中存在的問題,及時(shí)進(jìn)行處理。(4) 網(wǎng)絡(luò)可達(dá)性在網(wǎng)絡(luò)運(yùn)行過程中,常常有各種各樣的原因,致使網(wǎng)絡(luò)產(chǎn)生中斷,較好的發(fā)現(xiàn)這些問題,并進(jìn)行專業(yè)的測(cè)試,網(wǎng)絡(luò)中一點(diǎn)到一點(diǎn)的連通性很是關(guān)鍵。利用ICMP協(xié)議的請(qǐng)求應(yīng)答報(bào)文的特點(diǎn),適合作為連通性測(cè)試的工具。4.3
47、系統(tǒng)詳細(xì)設(shè)計(jì)通過上面對(duì)系統(tǒng)需求的詳細(xì)分析,對(duì)于基于SNMP的網(wǎng)絡(luò)管理系統(tǒng)的架構(gòu)和主要功能模塊均有了初步模型。下面就要對(duì)基于SNMP的網(wǎng)絡(luò)管理系統(tǒng)的實(shí)現(xiàn)環(huán)境和功能實(shí)現(xiàn)進(jìn)行詳細(xì)的設(shè)計(jì)分析,并主要針對(duì)上面需求分析的各個(gè)關(guān)鍵部分進(jìn)行設(shè)計(jì)。(1) 環(huán)境配置使用windows XP 操作系統(tǒng),軟件使用VC+6.0,測(cè)試設(shè)備,本機(jī),工大瑞普虛擬實(shí)驗(yàn)環(huán)境,可以模擬如幀中繼,路由交換的環(huán)境。從 下載SNMP+開發(fā)包,解壓后進(jìn)行編譯,形成一個(gè)靜態(tài)鏈接庫(kù),下面的步驟將在VC+6.0開發(fā)環(huán)境中將SNMP軟件包編譯成一個(gè)靜態(tài)的鏈接庫(kù)。在VC6中編輯生成snmp_pp.lib文件,操作步驟如下:1) 在開發(fā)環(huán)境下,選擇“
48、File”-“New”項(xiàng),在彈出的窗口中選擇“Win32 Static Library”,工程名為“snmp_pp”,如圖4.1所示。圖 4.1 建立一個(gè)靜態(tài)鏈接庫(kù)工程2) 單擊“OK”按鈕,進(jìn)入下一步,使用缺省選項(xiàng),如圖4.2所示,點(diǎn)擊“Finish”完成,建立一個(gè)沒有(mi yu)文件的靜態(tài)鏈接庫(kù)工程。圖4.2 靜態(tài)鏈接庫(kù)工程(gngchng)建立完成3) 在工作區(qū)內(nèi),為工程添加解壓縮后的所有源文件(即snmp+目錄下的src目錄下的所有后綴(huzhu)為CPP的文件,如圖4.3所示)。圖4.3 向工程中添加源文件為了讓編譯的鏈接庫(kù)支持SNMPV3,用上步同樣方法,要把snmp+目錄下的
49、libdes目錄下的c文件包含進(jìn)來。4) 文件添加完后,設(shè)置工程編譯環(huán)境。主菜單選“Project”-“Settings”項(xiàng),彈出的窗口中,選“C/C+”頁(yè),按照下表進(jìn)行設(shè)置,如圖4.5所示。圖4.5 工程設(shè)置5) 目錄設(shè)置。主菜單“Tools”-“Options”項(xiàng),彈出的窗口中,選“Directories”頁(yè),添加SNMP+頭文件所在的目錄,如圖4.6所示。圖4.6 工程目錄設(shè)置6) 選擇“Build”-“Build snmp_pp.lib”項(xiàng),生成靜態(tài)鏈接庫(kù)文件snmp_pp.lib.7) 將生成的靜態(tài)鏈接庫(kù)文件直接復(fù)制到VC安裝目錄:VC98Lib中去,就可以像使用VC自帶的其他庫(kù)文件
50、一樣使用它了。(2) 配置管理利用MIB對(duì)象組的OID,將感興趣的流量或數(shù)據(jù)進(jìn)行分類,之后再進(jìn)行顯示出來,達(dá)到我們所要的效果。表4.1為與配置管理有關(guān)的MIB對(duì)象與OID的對(duì)應(yīng)關(guān)系表。系統(tǒng)組(System Group)提供了系統(tǒng)的一般信息,對(duì)象的OID如表4.2所示。IP組提供了與IP協(xié)議有關(guān)的信息。IP組包含的對(duì)象如表4.3 所示。路由組提供了本地的路由信息。路由組包含的對(duì)象如表4.4所示。 通過特定的Oid,不斷檢測(cè)(jin c)CPU和內(nèi)存的使用信息,并通過簡(jiǎn)單的公式計(jì)算相應(yīng)數(shù)值,并用圖表進(jìn)行顯示。1) CPU 5秒內(nèi)平均(pngjn)利用率的OID:.1.56.0;2) CPU 利用率
51、的OID:.4.1.960.5.1.48;3) 可用物理(wl)內(nèi)存(Bytes)的OID:.4.1.960.1.0;(4) 故障管理通過SNMP獲取設(shè)備端口的相關(guān)信息需要設(shè)備的SNMP代理對(duì)一些被管對(duì)象的支持。這些被管理對(duì)象有的是通用的,比如MIB-II中的某些被管理對(duì)象;有的是私有的,例如CISCO定義和一些MIB。當(dāng)查詢到某一接口的值時(shí),由索引對(duì)象的值來決定OID,如表4.5所示。Serial0/0的接口變量的OID值為:.1.8.2,即列對(duì)象ifOperStatus的OID(.1.8)+索引對(duì)象ifIndex值(2)。(5) 網(wǎng)絡(luò)可達(dá)性檢測(cè)利用ICMP協(xié)議進(jìn)行相關(guān)的檢測(cè);根據(jù)ICMP報(bào)
52、文的特點(diǎn),當(dāng)報(bào)文的類型部分的值為8,代碼部分值為0,就是一個(gè)回顯請(qǐng)求報(bào)文。4.4系統(tǒng)用到的主要連接功能的設(shè)計(jì)定義一些變量,IP地址,團(tuán)體名,對(duì)象標(biāo)示符,CString ipadd,community,oidstr;獲取IP地址,團(tuán)體名,對(duì)象標(biāo)識(shí),m_ipadd.GetWindowText(ipadd);m_community.GetWindowText(community);m_oid.GetWindowText(oidstr);附加端口信息,ipadd+=:161;初始化Winsocket,Snmp:socket_startup();聲明一個(gè)(y )UdpAddrwss類對(duì)象,UdpAddr
53、ess address(LPCTSTR)ipadd);聲明(shngmng)一個(gè)Oid類對(duì)象,Oid oid(LPCTSTR)oidstr);設(shè)置(shzh)版本為1,snmp_version version=version1;int status;創(chuàng)建一個(gè)Snmp對(duì)象,同時(shí)建立一個(gè)SNMP連接,Snmp snmp(status, 0, false);創(chuàng)建一個(gè)PDU對(duì)象;Pdu pdu;創(chuàng)建一個(gè)Vb對(duì)象,Vb vb;設(shè)置vb的OID部分為用戶輸入的OID串,vb的值部分使用缺省值NULL, vb.set_oid(oid);設(shè)置Vb對(duì)象并將其添加到對(duì)象pdu中,pdu += vb;創(chuàng)建一個(gè)CTa
54、rget對(duì)象,CTarget ctarget(address);設(shè)置CTraget對(duì)象的各屬性,ctarget.set_version(version);ctarget.set_retry(1);ctarget.set_timeout(100);ctarget.set_readcommunity(LPCTSTR)community);聲明一個(gè)指向(zh xin)SnmpTarget類的指針變量,供后面的函數(shù)使用,SnmpTarget *target;target = &ctarget;發(fā)起一個(gè)(y )Get操作,status = snmp.get(pdu, *target);如果(rgu)操作
55、成功,將結(jié)果分別保存到reply_oid和 reply_value中,if (status = SNMP_CLASS_SUCCESS) pdu.get_vb(vb,0);CString reply_oid=vb.get_printable_oid();CString reply_value=vb.get_printable_value();關(guān)閉Winsocket,Snmp:socket_cleanup();4.5本系統(tǒng)的系統(tǒng)結(jié)構(gòu)圖如下本系統(tǒng)實(shí)現(xiàn)了網(wǎng)絡(luò)管理五大管理功能的三大功能,配置管理,性能管理,故障管理,網(wǎng)絡(luò)可達(dá)性檢測(cè)功能。(1) 配置管理和性能管理通過輸入的IP地址,團(tuán)體名和對(duì)象標(biāo)識(shí)符OI
56、D進(jìn)行相應(yīng)信息的采集并進(jìn)行管理;(2) 故障管理通過輸入IP地址和團(tuán)體名進(jìn)行線路選擇,進(jìn)行故障管理。(3) 網(wǎng)絡(luò)可達(dá)性通過輸入IP地址,直接給出網(wǎng)絡(luò)連通性的結(jié)果。具體的結(jié)構(gòu)圖如下圖4.7所示。圖4.7 系統(tǒng)結(jié)構(gòu)圖5 基于SNMP網(wǎng)絡(luò)管理的實(shí)現(xiàn)本章將在上一章詳細(xì)設(shè)計(jì)的基礎(chǔ)上,從技術(shù)選擇(xunz)、程序設(shè)計(jì)等幾個(gè)方面進(jìn)行探討,最后對(duì)基于WMI的網(wǎng)絡(luò)管理系統(tǒng)進(jìn)行詳細(xì)的編程實(shí)現(xiàn),完成系統(tǒng)的各項(xiàng)需求功能?;赟NMP的網(wǎng)絡(luò)管理系統(tǒng)使用C+語(yǔ)言來實(shí)現(xiàn)(shxin),開發(fā)平臺(tái)為V6.0。VC+中使用SNMP+編程的基本步驟為4步:(1) 創(chuàng)建(chungjin)一個(gè)Winsocket;(2) 實(shí)例化一個(gè)S
57、nmp對(duì)象;(3) 實(shí)例化一個(gè)CTarget對(duì)象;(4) 調(diào)用Snmp對(duì)象的操作方法;最后關(guān)閉Winsocket;5.1代理設(shè)備的配置a. windows主機(jī)安裝,啟用SNMP首先查看本地服務(wù),檢查SNMP服務(wù)是否已經(jīng)安裝。如沒有安裝,按下列步驟進(jìn)行安裝。(1) 單擊“開始”“設(shè)置”“控制面板”“添加/刪除程序”“添加/刪除Windows組件”,勾選“管理和監(jiān)視工具”項(xiàng),再單擊“詳細(xì)信息”按鈕,此時(shí)出現(xiàn)如圖5.1所示的界面。圖 5.1 Windows XP操作系統(tǒng)啟用SNMP(2) 勾選“簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議”項(xiàng),單擊“確定”按鈕。安裝SNMP后,默認(rèn)的community字符串是“public”,
58、可以修改為其他字符串,如圖5.2。圖 5.2 修改community字符串(3) 安裝第三方軟件Net-SNMP:如圖5.3所示。圖 5.3 安裝net-snmp 時(shí)選擇安裝目錄b. 可配置網(wǎng)絡(luò)設(shè)備啟用SNMP服務(wù)SNMP 代理是運(yùn)行(ynxng)在可網(wǎng)管設(shè)備中的一個(gè)管理進(jìn)程,在網(wǎng)絡(luò)管理軟件運(yùn)行前要對(duì)其進(jìn)行配置,使它能夠響應(yīng)網(wǎng)絡(luò)管理站的信息請(qǐng)求,發(fā)送 Trap 消息(xio xi),并進(jìn)行權(quán)限限制與身份驗(yàn)證。需要配置的代理設(shè)備主要是網(wǎng)絡(luò)中可網(wǎng)管的路由器與交換機(jī),不同的廠商的不同設(shè)備配置有所區(qū)別,但都大同小異,都可以通過(tnggu) telnet 進(jìn)行命令行設(shè)置,需要配置的內(nèi)容我們通過配置一個(gè)
59、 Cisco7200 路由器的實(shí)例來具體描述:(1) 接受的團(tuán)體名稱和權(quán)限,SNMP 服務(wù)需要至少一個(gè)團(tuán)體名,一般設(shè)備都有默認(rèn)的團(tuán)體名,public 為只讀權(quán)限的團(tuán)體名,private 為可讀寫權(quán)限的團(tuán)體名。這兩個(gè)團(tuán)體名被普遍地使用,每個(gè)人都會(huì)被猜到,為安全起見,配置團(tuán)體名時(shí)盡量為不同權(quán)限使用不同的團(tuán)體名,并要為團(tuán)體名選擇強(qiáng)壯的口令,定期更改。配置命令如下:snmp-server community public RO命令配置了一個(gè) RO 權(quán)限的團(tuán)體名 public,(2) 配置訪問控制列表 ACL。默認(rèn)情況下,在僅配置了團(tuán)體名和權(quán)限后,代理會(huì)接受來自任何主機(jī)的 SNMP 數(shù)據(jù)包,這使得在團(tuán)體
60、名在被破譯或泄漏后任何主機(jī)都可通過代理進(jìn)行讀寫操作,所以必須考慮安全性方面,設(shè)置訪問控制列表,使 SNMP 代理只接受訪問控制中主機(jī)發(fā)出的 SNMP 數(shù)據(jù)包。配置如下:access-list 3 permit 55snmp-server community public RW 3第一個(gè)命令創(chuàng)建了一個(gè)編號(hào)為 3 的訪問控制列表,允許來自網(wǎng)絡(luò) 的信息流量。第二個(gè)命令設(shè)置代理只接受來自于網(wǎng)絡(luò) 的SNMP數(shù)據(jù)包,并且數(shù)據(jù)包中的 commnunity 是可讀寫權(quán)限的團(tuán)體名 public。(3) 發(fā)送身份驗(yàn)證 Trap。身份驗(yàn)證是驗(yàn)證團(tuán)體名或地址是否有效的過程。當(dāng)SNMP 代理收到錯(cuò)誤的團(tuán)體名,或者不是從
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版電氣設(shè)備安全檢測(cè)評(píng)估合同
- 二零二五年度打架事件受害者心理支持與援助協(xié)議書
- 二零二五年餐廳智能點(diǎn)餐系統(tǒng)開發(fā)合同
- 二零二五版水文地質(zhì)勘探及報(bào)告編制合同
- 二零二五年度基礎(chǔ)設(shè)施建設(shè)擔(dān)保代理服務(wù)合同
- 2025房產(chǎn)銷售經(jīng)理房地產(chǎn)市場(chǎng)分析與預(yù)測(cè)聘用合同規(guī)范
- 二零二五年度房地產(chǎn)開發(fā)項(xiàng)目掛靠合作違約責(zé)任合同
- 2025版能源項(xiàng)目工程投標(biāo)居間及能源管理合同
- 二零二五年度個(gè)性化存單質(zhì)押貸款服務(wù)合同
- 2025版?zhèn)€人意外傷害借款合同協(xié)議
- 學(xué)校十五五發(fā)展規(guī)劃【范本模板】
- 2025年小學(xué)英語(yǔ)教師考試試卷及答案
- 智慧農(nóng)業(yè)發(fā)展現(xiàn)狀與上海智慧農(nóng)業(yè)發(fā)展現(xiàn)狀
- 從未來視角看化工設(shè)備的創(chuàng)新設(shè)計(jì)方向
- 戶外探險(xiǎn)旅游項(xiàng)目商業(yè)計(jì)劃書范文
- 供應(yīng)室預(yù)處理課件
- T-DZJN 377-2024 數(shù)據(jù)中心基礎(chǔ)設(shè)施健康程度評(píng)價(jià)規(guī)范
- 臨床藥學(xué)病例匯報(bào)
- 《國(guó)際物流與供應(yīng)鏈管理》教學(xué)大綱
- 基于AI的多媒體內(nèi)容安全與審核機(jī)制研究
- 進(jìn)展性腦卒中的診療策略
評(píng)論
0/150
提交評(píng)論