基于.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所示。本文引用地址:https://www.eepw.com.cn/article/155318.htm
.NET使用以上几个函数完成基本的SNMP通信,首先,用RequestAsync函数建立SNMP请求,然后用sendToBegin函数发送此SNMP请求,同时管理代理端有监听函数,收到SNMP请求后会做出响应并给管理站返回需要的信息,此时,管理站用ReceiveBegin函数接受返回来的信息。在此通信过程中有可能发生数据丢失,RetryAsyncRequest和Request函数就是为此而设计的重传请求函数和重传协议函数。
3 .NET技术实现
把UDP的Socket通信封装好之后,运用.NET技术进行具体的SNMP控制,下面以Get-Request操作和Set-Request操作为例子来演示.NET技术编程的快速、便捷。
评论