新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 基于.NET技術(shù)實(shí)現(xiàn)的SNMP通信

基于.NET技術(shù)實(shí)現(xiàn)的SNMP通信

作者: 時(shí)間:2012-02-06 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)大和復(fù)雜性的提高,網(wǎng)絡(luò)安全越來(lái)越受到網(wǎng)絡(luò)管理者的重視,以設(shè)計(jì)簡(jiǎn)單為最大優(yōu)勢(shì),得到了廣大廠商的支持和應(yīng)用。開(kāi)發(fā)一個(gè)功能健全的網(wǎng)絡(luò)監(jiān)控系統(tǒng)為目的,利用.支持下的-SharpNet開(kāi)發(fā)包提供的接口不斷進(jìn)行實(shí)驗(yàn)研究,最終從請(qǐng)求的建立、發(fā)送和接受以及SNMP請(qǐng)求的超時(shí)和重傳都了函數(shù)封裝,同時(shí)了管理站和管理代理之間的SNMP,為監(jiān)控系統(tǒng)后續(xù)功能的開(kāi)發(fā)奠定了良好基礎(chǔ)。
關(guān)鍵詞:SNMP;.;SNMPSharpNet開(kāi)發(fā)包;SNMP

隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,網(wǎng)絡(luò)結(jié)構(gòu)越來(lái)越復(fù)雜,通信網(wǎng)絡(luò)使用的設(shè)備也越來(lái)越復(fù)雜,由于網(wǎng)絡(luò)的大型化和復(fù)雜化,如何有效地進(jìn)行網(wǎng)絡(luò)管理日益成為們普遍關(guān)注的問(wèn)題。網(wǎng)絡(luò)管理的目標(biāo)是最大限度地增加網(wǎng)絡(luò)的可用時(shí)間,提高網(wǎng)絡(luò)設(shè)備的利用率、網(wǎng)絡(luò)性能、服務(wù)質(zhì)量和安全性,簡(jiǎn)化多廠商混合網(wǎng)絡(luò)環(huán)境下的管理和控制網(wǎng)絡(luò)運(yùn)行成本,提供網(wǎng)絡(luò)的長(zhǎng)期規(guī)劃。
SNMP(Simple Network Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)易于和廣泛的TCP/IP應(yīng)用基礎(chǔ),可以在多廠商混合網(wǎng)絡(luò)環(huán)境下,通過(guò)提供單一的網(wǎng)絡(luò)操作控制環(huán)境來(lái)管理所有子網(wǎng)和被管理設(shè)備,以集中的、統(tǒng)一的方式遠(yuǎn)程控制網(wǎng)絡(luò),以排除故障和重新配置網(wǎng)絡(luò)設(shè)備而獲得廠商的支持。
然而,實(shí)現(xiàn)SNMP編程常見(jiàn)方法是使用網(wǎng)絡(luò)管理應(yīng)用SNMP的API,大多數(shù)API都提供了一個(gè)很大的函數(shù)庫(kù),比如WinsNMP。由于.有豐富的、可復(fù)用的標(biāo)準(zhǔn)類庫(kù),采用.NET開(kāi)發(fā)越來(lái)越受到開(kāi)發(fā)人員的青睞。為了簡(jiǎn)化SNMP網(wǎng)絡(luò)管理系統(tǒng)的開(kāi)發(fā)復(fù)雜度、開(kāi)發(fā)出高效易擴(kuò)展的代碼,采用把復(fù)雜的WinSNMP的API函數(shù)封裝成一個(gè)個(gè)相關(guān)的.NET類,從而簡(jiǎn)化了SNMP網(wǎng)絡(luò)管理軟件開(kāi)發(fā)的復(fù)雜性。用于它把SNMP編程中的核心部分都面向?qū)ο蠡庋b起來(lái),因此開(kāi)發(fā)人員不必了解SNMP底層機(jī)制,只要了解.NET的編程知識(shí)和SNMP編程的流程,就可以快速開(kāi)發(fā)出高效的SNMP程序。

1 SNMP概述
SNMP(Simple Network Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)首先是有IETF的研究小組為了解決Internet上的路由器的管理問(wèn)題而提出的。1989年SNMPv1發(fā)行時(shí),雖然能顯示出管理大部分Internet設(shè)備的強(qiáng)大能力,但是也暴露出明顯不足:給網(wǎng)絡(luò)帶來(lái)沉重負(fù)擔(dān)、網(wǎng)絡(luò)中數(shù)據(jù)的安全性差。1993年IETF發(fā)布了新的SNMP v2,然后再增加了安全機(jī)制的同時(shí),也增加了實(shí)施的復(fù)雜性。隨著網(wǎng)絡(luò)安全重要性的發(fā)展,SNMPv3誕生了,其體系結(jié)構(gòu)不僅體現(xiàn)了模塊化的設(shè)計(jì)思想,還能簡(jiǎn)單地實(shí)現(xiàn)功麓模塊的增加和修改。從總體上說(shuō),SNMP的設(shè)計(jì)原則是簡(jiǎn)單性和可擴(kuò)展性。簡(jiǎn)單性是通過(guò)信息類型限制、請(qǐng)求響應(yīng)或協(xié)議而實(shí)現(xiàn)的;可擴(kuò)展性是通過(guò)將管理信息模型與協(xié)議、被管理對(duì)象的詳細(xì)規(guī)定(MIB)分離而實(shí)現(xiàn)的。
1.1 SNMP通信模型
SNMP通信管理模型采用的是管理站/管理代理模型,共有4個(gè)組成部分:管理站、管理代理、管理信息庫(kù)和網(wǎng)絡(luò)管理協(xié)議,如圖1所示。

本文引用地址:http://butianyuan.cn/article/155318.htm

a.jpg


它們之間的關(guān)系是:管理站通過(guò)與管理代理發(fā)送/接受/響應(yīng)SNMP請(qǐng)求來(lái)完成對(duì)管理代理的監(jiān)控管理工作、所有管理設(shè)備的信息都被儲(chǔ)存在管理代理實(shí)體的管理信息庫(kù)中、管理站和管理代理之間交互的數(shù)據(jù)格式和規(guī)則都由SNMP來(lái)規(guī)范。每個(gè)部分的具體介紹如下:
1)管理站 一個(gè)單獨(dú)的設(shè)備或者是共享網(wǎng)絡(luò)中的一員,為管理站和網(wǎng)絡(luò)管理系統(tǒng)提供接口。
2)管理代理 一般的網(wǎng)絡(luò)終端如路由器、交換機(jī)等在設(shè)備出廠時(shí)都已經(jīng)配置好相關(guān)的SNMP管理代理,對(duì)于不支持SNMP協(xié)議的設(shè)備,如果網(wǎng)絡(luò)終端是主機(jī)的話,可以在“控制面板”的“添加/刪除程序”的“添加/刪除windows組件”。安裝“簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議”。
3)管理信息庫(kù)(MIB) 存放了網(wǎng)絡(luò)設(shè)備上被管對(duì)象資源的所有信息,每個(gè)被管對(duì)象有一個(gè)惟一對(duì)象的對(duì)象標(biāo)識(shí)符(OID)。管理信息庫(kù)本身就是一個(gè)定義如何把對(duì)象標(biāo)識(shí)符組合成邏輯相關(guān)的集合。
4)網(wǎng)絡(luò)管理協(xié)議(SNMP) 主要有以下3個(gè)功能:取值(Get)使網(wǎng)管站能讀取代理處對(duì)象的值;設(shè)置值(Set)使網(wǎng)管站能設(shè)置管理代理處對(duì)象的值;告警信息(Trap)使管理代理能夠向管理站通報(bào)重要事件。
1.2 SNMP協(xié)議數(shù)據(jù)單元
在SNMP中,信息按照SNMP報(bào)文格式在管理站和管理代理之間進(jìn)行交換,一共有Get-Request操作、Get-Next-Request操作、Set-Request操作、Get-Response操作、Trap操作一共5種報(bào)文類型。如圖2所示。

b.jpg


前面3個(gè)操作是由管理站向管理代理發(fā)出的,后面2個(gè)操作是管理代理發(fā)給管理站的。這里值得注意的一點(diǎn)是,在管理代理一端使用熟知端口161來(lái)接受get或set報(bào)文,而在管理站一端是用熟知端口162來(lái)接受trap報(bào)文。


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉