基于.NET技術實現的SNMP通信
2 SNMP通信的關鍵
2.1 數據類型的規范定義
在基于SNMP通信的監控系統中,每個被管理設備都維護一個包含統計信息及其他數據的數據庫,被稱作管理信息庫(Management Infor-mation Base,MIB)。每個MIB的每項都包含一個信息:對象類型、語法、訪問及狀態等。MIB中的各項內容由管理信息結構(Structure of Management Information,SMI)來定義,SMI為MIB提供了一個通用框架,同時規定了在MIB中使用時的數據類型,即如何表示和命名MIB對象。一個對象類型的命名明確代表一個對象,成為對象標識符。它是一個由圓點分隔的整數序列,這些對象標識符按照類似DNS域名系統的樹狀結構來排列的,一個對象標識符(OID)唯一標識一個MIB對象。另外,MIB還要嚴格遵守ASN.1(Abstract Syntax Notation One,抽象語法標記)的語法格式,ASN.1提供了一套正規格式用來描述對象結構,而且不管對象數據的具體指代。
本文中最常用到的幾個數據的規范如表1所示。本文引用地址:http://www.j9360.com/article/155318.htm
.NET使用以上幾個函數完成基本的SNMP通信,首先,用RequestAsync函數建立SNMP請求,然后用sendToBegin函數發送此SNMP請求,同時管理代理端有監聽函數,收到SNMP請求后會做出響應并給管理站返回需要的信息,此時,管理站用ReceiveBegin函數接受返回來的信息。在此通信過程中有可能發生數據丟失,RetryAsyncRequest和Request函數就是為此而設計的重傳請求函數和重傳協議函數。
3 .NET技術實現
把UDP的Socket通信封裝好之后,運用.NET技術進行具體的SNMP控制,下面以Get-Request操作和Set-Request操作為例子來演示.NET技術編程的快速、便捷。
評論