基于Java、SNMP技术采集各种SNMP数据、MIB数据的产品

ObjectSNMP是一个面向对象的SNMP开发组件,与关系数据库流行的O-R Mapping技术类似,实现了Object到SNMP MIB的操作映射(简称O-M Mapping),系统提供了Java/SNMP网关、RMI/SNMP网关 、Web Service/SNMP网关服务。开发者无需理解SNMP协议和MIB细节,只需要定义普通数据对象,然后将数据对象按添加、删除、修改、查询等模式提交给网关即可。ObjectSNMP网关会自动将数据对象按开发者的期望发送到SNMP设备,并返回用户需要的数据对象。

ObjectSNMP提供如下常用数据采集服务,使用者可直接使用:
一、 系统类MIB描述
1. SNMP Agent系统信息(MibSystem)
2. 系统IP地址信息(MibIPAddrEntry)
3. SNMP Agent统计信息(MibSNMP)
二、 IP网络类MIB描述
1. 网络接口/端口信息(MibIfEntry)
2. 网络接口流量和数据包信息(MibIfEntry)
3. IP层流量和输入输出统计信息(MibIP)
4. 路由表信息(MibIPRouterEntry)
5. TCP连接资源和统计信息(MibTCPConnEntry)
6. UDP监听信息(MibUDPEntry)
7. IP-MAC关联表(MibMacIP)
三、 交换机MIB描述
1. 交换机端口基本信息(Dot1dBasePortEntry)
2. 交换机转发MAC地址和状态(Dot1dTpFdbEntry)
四、 硬件设施类MIB描述
1. 硬件设施和工作状态(MibDeviceEntry)
2. 存储系统状态(MibDiskAndMemoEntry)
3. CPU负载信息(MibProcessorEntry)
五、 软件类MIB描述
1. 软件进程状态信息(MibSoftwareRunEntry)
2. 已安装的软件信息(MibSoftwareInstallEntry)
六、 Java类MIB描述
1. Java服务器基本信息(MibJvmOS)
2. JVM基本信息(MibJvmRuntime)
3. Java内存和堆栈状态(MibJvmMemory)
4. Java线程和资源消耗情况(MibJvmThreading)
 

一、           前言

本文档提供的MIB描述,为基于ObjectSNMP组件技术创建的Java对象和MIB含义描述。ObjectSNMP组件提供了Java对象与SNMP MIB之间的1对1映射关系:SNMP MIB文件中的一个MIB组或一个MIB表,可以被映射为一个Java对象。
Java对象的属性名与MIB组/表中的OID描述名完全一样,对Java对象的描述说明就是对MIB组/表的描述说明。考虑到此文档主要是Java开发人员使用,本文中的描述全部基于对Java对象的描述。
关于如何使用Java对象以及如何通过Java对象获取MIB数据,请参见ObjectSNMP软件的用户手册。
 
二、           系统类MIB描述

1.     SNMP Agent系统信息(MibSystem)

         描述:SNMP设备的基本描述信息,如系统名称、启动时间、描述等信息。所有支持SNMP
    的设备都应该支持此信息。
         Mib 类型:Mib组
支持的设备:路由器、交换机、防火墙、服务器、计算机等所有支持SNMP的设备。
MIB获取方法:MibSystem mibResult=SNMPAPI. getMibObject(new MibSystem(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibSystem
Java对象描述

属性名
中文名
是否可写
描述
sysDescr
系统描述
只读
系统的描述信息。描述信息可作为识别设备类型的补充手段。
sysObjectID
系统的私有OID
只读
如果系统申请了企业私有OID,显示系统私有OID。私有OID可以作为识别设备类型的方法。
sysUpTime
启动时间
只读
系统SNMP Agent模块运行的时间,一般可认为是系统的运行时间。单位:百分之一秒
sysContact
系统联系人
可写
系统的管理员或联系人
sysName
系统名称
可写
系统的名称
sysLocation
系统位置
可写
系统的物理位置
sysServices
服务类型
只读
系统提供的服务类型。OSI划分的服务类型。目前很少用到。
 
 
2.     系统IP地址信息(MibIPAddrEntry)

         描述:设备的IP地址、掩码、网关等
         Mib 类型:Mib表。设备有多个IP地址。
支持的设备:路由器、交换机、防火墙、服务器等支持IP协议的设备
MIB获取方法:MibIPAddrEntry mibResult=SNMPAPI. getMibObject(new MibIPAddrEntry(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibIPAddrEntry
 
 
3.     SNMP Agent统计信息(MibSNMP)

         描述:SNMP Agent模块统计的SNMP 请求、应答、错误等统计数据
         Mib 类型:Mib组
支持的设备:大部分支持SNMP的设备,都提供此信息。
MIB获取方法:MibSNMP mibResult=SNMPAPI. getMibObject(new MibSNMP(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibSNMP
 
三、           IP网络类MIB描述

1.     网络接口/端口信息(MibIfEntry)
         描述:网络设备、计算机均是多网口、多网络接口设备。通过此信息可以了解设备上有
多少个网卡、交换机接口、路由器端口、网络接口;并进一步知道每个接口/端口的详
细信息。
         Mib 类型:Mib表。设备有多个网络接口。
支持的设备:路由器、交换机、防火墙、服务器等端口/接口设备
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibIfEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibIfEntry

2.2     网络接口流量和数据包信息(MibIfEntry)
      
 
描述:网络设备、计算机均是多网口、多网络接口设备。比如交换机有多个接口,每个
    接口有独立的流量和数据出入统计信息。
         Mib 类型:Mib表
支持的设备:路由器、交换机、防火墙、服务器等端口/接口设备
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibIfEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibIfEntry
 
3.     IP层流量和输入输出统计信息(MibIP)

         描述:通过整个设备系统的的流量信息、整个设备系统的输入统计信息和输出统计信息。
         Mib 类型:Mib组
支持的设备:路由器、交换机、防火墙、服务器等支持IP协议的设备。
MIB获取方法:MibIP mibResult=SNMPAPI. getMibObject(new MibIP(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibIP

 
4.     路由表信息(MibIPRouterEntry)
         描述:IP设备的路由表信息。
         Mib 类型:Mib表。多项路由表信息。
支持的设备:路由器、计算机、防火墙、服务器等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibIPRouterEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibIPRouterEntry
 
5.     TCP连接资源和统计信息(MibTCPConnEntry)

         描述:系统中所有TCP网络连接的信息,包含本地TCP监听和远程TCP连接。
         Mib 类型:Mib表。有多条TCP连接。
支持的设备:路由器、交换机、防火墙、服务器等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibTCPConnEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibTCPConnEntry
 
6.     UDP监听信息(MibUDPEntry)

         描述:系统中所有UDP监听信息。
         Mib 类型:Mib表。
支持的设备:路由器、交换机、防火墙、服务器等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibUDPEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibUDPEntry
7.     IP-MAC关联表(IpAdEntAddr)

         描述:IP地址和MAC地址的学习表。设备学习到的MAC地址和IP地址成对显示出来。
         Mib 类型:Mib表。多个IP-MAC地址对。
支持的设备:路由器、交换机、计算机等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibIpAdEntAddr.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. IpAdEntAddr

四、           硬件设施类MIB描述

1
1.     
硬件设施和工作状态(MibDeviceEntry)
       
 
描述:计算机中的硬件设施列表,以及设备的状态。如键盘、CPU、网卡、鼠标等
         Mib 类型:Mib表。系统有多种设施。
支持的设备:计算机、服务器、操作系统
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibDeviceEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibDeviceEntry

2.     存储系统状态(MibDiskAndMemoEntry)
         描述:物理磁盘、逻辑磁盘、内存、虚拟内存的使用情况。
         Mib 类型:Mib表。
支持的设备:计算机、服务器、操作系统
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibDisskAndMemoEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib.MibDiskAndMemoEntry
 
3.     CPU负载信息(MibProcessorEntry)
         描述:系统中CPU的负载情况。
         Mib 类型:Mib表。
支持的设备:计算机、服务器、操作系统、高端网络设备
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibProcessorEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibProcessorEntry
 
五、           软件类MIB描述

1.     软件进程状态信息(MibSoftwareRunEntry)

         描述:系统中正在运行的进程信息,如:进程名、进程路径、运行状态等。
         Mib 类型:Mib表
支持的设备:计算机、服务器、操作系统等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibSoftwareRunEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib.MibSoftwareRunEntry
 
2.     已安装的软件信息(MibSoftwareInstallEntry)
        
描述
:系统中已安装的软件信息。
         Mib 类型:Mib表
支持的设备:计算机、服务器、操作系统等
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibSoftwareInstallEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibSoftwareInstallEntry
 
六、           Java类MIB描述

1.     Java服务器基本信息(MibJvmOS)

         描述:Java系统的基础操作系统信息。
         Mib 类型:Mib组
支持的设备:使用SUN JDK/JRE的Java/J2EE软件、服务器。如:Tomcat、JBoss、SUN ONE
Server、Oracle OC4J Server等。
MIB获取方法:MibJvmOS mibResult=SNMPAPI. getMibObject(new MibJvmOS(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibJvmOS

2.     JVM基本信息(MibJvmRuntime)

         描述:Java虚拟机的全局基本信息。
         Mib 类型:Mib组
支持的设备:使用SUN JDK/JRE的Java/J2EE软件、服务器。如:Tomcat、JBoss、SUN ONE
Server、Oracle OC4J Server等。
MIB获取方法:MibJvmRuntime mibResult=SNMPAPI. getMibObject(new MibJvmRuntime(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibJvmRuntime

3.     Java内存和堆栈状态(MibJvmMemory)

         描述:JVM的垃圾回收、内存、堆栈情况。
         Mib 类型:Mib组
支持的设备:使用SUN JDK/JRE的Java/J2EE软件、服务器。如:Tomcat、JBoss、SUN ONE
Server、Oracle OC4J Server等。
MIB获取方法:MibJvmMemory mibResult=SNMPAPI. getMibObject(new MibJvmMemory(),target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibJvmMemory
 
4.     Java线程和资源消耗情况(MibJvmThreading)

         描述:Java系统中全部线程的信息,包含线程的名称、运行状态、CPU时间等。
         Mib 类型:Mib表
支持的设备:使用SUN JDK/JRE的Java/J2EE软件、服务器。如:Tomcat、JBoss、SUN ONE
Server、Oracle OC4J Server等。
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (MibJvmThread.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. MibJvmThreading
七、           交换机MIB描述

1.     交换机端口基本信息(Dot1dBasePortEntry)
       
 
描述:查看交换机所有的物理端口,物理端口与网络接口之间的对应关系,端口的基本
信息
         Mib 类型:Mib表
支持的设备:二层/三层交换机
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (Dot1dBasePortEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. Dot1dBasePortEntry
 
 
2.     交换机转发MAC地址和状态(Dot1dTpFdbEntry)

         描述:交换机每个端口学习到的物理地址和地址状态。可用于搜索和发现交换机下设备。
         Mib 类型:Mib表
支持的设备:二层/三层交换机
MIB获取方法:List mibResultList=SNMPAPI. getAllTableData (Dot1dTpFdbEntry.class,target);
对应的Java对象:com.zhtelecom.common.snmp.mib. Dot1dTpFdbEntry

转自:http://sugarnms.blog.51cto.com/72950/449762

你可能感兴趣的:(网络编程,snmp,网络)