- 浏览: 388297 次
- 性别:
- 来自: 北京
最新评论
-
liuzhongzhou2721:
不错啊
Snmp4j编程简介之三:Snmp -
ahong520:
我在Keystore.getInstance("JK ...
java实现 SSL双向认证 -
tanghanlin:
好吧,还是支持下
Snmp4j编程简介之三:Snmp -
sjp524617477:
mark
java实现 SSL双向认证 -
dikesky:
您好,看了您的这篇文章学到很多东西。希望您提供一个QQ号(发到 ...
httpclient笔记(二)
(4),SNMP的基本原理
一个SNMP管理的网络包含三个主要部分: 被管理设备、代理和网络管理系统(NMSs).图1-1 描述了这三个组成的关系。
图 1-1:SNMP被管理网络包含被管理设备、代理和网络管理系统
一个被管理设备是一个包含一个SNMP代理并处于被管理的网络中的一个网络结点。被管理设备收集和存储管理信息,并使用SNMP使这些信息对网络管理系统有用。被管理设备有时被称为网络元素,可能是路由器和访问服务器,交换机和网桥,集线器,计算机主机或打印机。
网络管理系统执行应用程序监控被管理设备。网络管理系统为网络管理提供大量的处理和内存资源。在任何被管理的网络中至少存在一个网络管理系统。
代理(agent)是一种特殊的软件(或固件),它包含了关于一个特殊设备和/或该设备所处环境的信息。当一个代理被安装到一个设备上时,上述的设备就被列为“被管理的”。换句话说,代理就是一个数据库。
数据库中所包含的数据随被安装设备的不同而不同。举例来说,在一个路由器上,代理将包含关于路由选择表、接收和发送包的总数等信息。而对于一个网桥来说,数据库可能包含关于转发包数目和过滤表等信息。代理是与网络管理控制台通信的软件或固件。在这个控制台的“链路”上可以执行以下任务:网络管理工作站可以从代理中获得关于设备的信息。
网络管理工作站可以修改、增加或者删除代理中的表项,例如在由代理所维护的数据库中的路由选择表表项。网络管理工作站可以为一个特定的自陷设置阈值。 可以向网络管理工作站发送自陷。请记住,在被管理设备中的代理并不是自愿提供信息的,除非当有一个阈值被超过的事件发生时。 在一些偶然的情况下,在一个特定的设备上可能因为系统资源的缺乏,或者因为该设备不支持SNMP代理所需要的传输协议,而不能实现一个SNMP代理。这是否就意味着你不能监视这个设备呢?答案并不是这样的,在这种情况下并不是完全没有办法的。你可以使用受托代理(proxy agent),它相当于外部设备(foreign device)。
受托代理并非在被管理的外部设备上运行,而是在另一个设备上运行。网络管理工作站首先与受托代理联系,并且指出(通过某种方法)受托代理与外部设备的一致性。然后受托代理把它接收到的协议命令翻译成任何一种外部设备所支持的管理协议。在这种情况下,受托代理就被称为应用程序网关(application gateway)。
如果外部设备不支持任何管理协议,那么受托代理必须使用一些被动的方法来监视这个设备。举例来说,一个令牌环网桥的受托代理可以监视它的性能,并且如果它检测到任何由网桥所报告的拥挤错误时,它就会产生自陷。幸运的是,目前大多数网际互联设备类型都是支持SNMP可管理设备的,所以你可以很容易地使用一个SNMP可管理设备,例如集线器、网桥和路由器。有一些厂商甚至还在他们的网卡上提供SNMP代理。
2,管理信息库MIB
每个受管理的SNMP设备均维护包含统计信息及其他数据的数据库。我们称之为管理信息基或MIB。 MIB的每一项包含一种信息:对象类型、语法、访问字段及状态字段等。 MIB的项通常由协议规定,并且严格遵守抽象语法规则1(ASN.1)的格式。
对象类型为项的名称,通常为简单的名字。语法是一个值字段,通常为字符串或整型,并不是所有的MIB的项均包含值字段。访问字段用于定义项的访问权限,通常有以下四类:只读、可读/写、只可写或不可访问。状态字段包含指示值,标明MIB项是否为命令、可选或作废。命令表示受管理的设备必须执行该项。可选表示受管理的设备可以选择执行该项,作废表示不执行。
目前执行的MIB有两种,MIB-1和MIB-2。两者结构不同,MIB-1创建于1988年,其表中包含114项,分为两组,支持MIB-1的受管理的设备必须支持所有的适用于该设备的组。例如:受管理的打印机不能执行处理外部网关协议的项,与外部网关协议 (EGP)相关的项用于路由器或类似的设备。打印机需要指明它可处理的项。
MIB-2是MIB-1的扩展,于1990年提出。它包含171项共分为10组。除了扩展了原有的组外,又新增加了组。与MIB-1类似,支持MIB-2的设备必须执行所有适用于该类型的组。用户将会发现许多设备仅支持MIB-1而不支持MIB-2。
除了MIB-1和MIB-2外,还有许多正在测试的MIB,它们包含许多不同的组和项。但它们并未被广泛使用。某些公司开发 MIB以供自己使用,某些厂商也提供对这些 MIB的支持。
图3画的是管理信息库的一部分,它又称为对象命名(object naming tree)。
对象命名树的顶级对象有三个,即ISO、ITU-T和这两个组织的联合体。在ISO的下面有4个结点,其中的饿一个(标号3)是被标识的组织。在其下面有一个美国国防部(Department of Defense)的子树(标号是6),再下面就是Internet(标号是1)。在只讨论Internet中的对象时,可只画出Internet以下的子树(图中带阴影的虚线方框),并在Internet结点旁边标注上{1.3.6.1}即可。
在Internet结点下面的第二个结点是mgmt(管理),标号是2。再下面是管理信息库,原先的结点名是mib。1991年定义了新的版本MIB-II,故结点名现改为mib-2,其标识为{1.3.6.1.2.1},或{Internet(1) .2.1}。这种标识为对象标识符。
MIB-I中定义了114种管理对象,并分为8个组,分别为system组,interface组,at组,ip组,icmp组,tcp组,udp组,egp组。MIB-II与MIB-I兼容,电脑但增加了三个新的管理对象。分别时cmot组,transmission组和snmp组,其中:
1) system:有关系统的整体信息。
2) interface: 关于每一个从系统到子网接口的信息。
3) at: (地址转换,被替换):Internet到子网地址映射地址转化表的描述。
4) icmp: 与系统种ICMP实现与执行经历有关的信息。
5) tcp:与系统TCP实现和执行经历有关的信息。
6) udp:与系统UDP实现和执行经历有关的信息。
7) egp:与系统EGP实现和执行经历有关的信息。
8) dot3(传输):有关每个系统接口的传输方案和访问协议的信息。
9) snmp:与系统SNMP实现和执行经历有关的信息。
下面介绍几个重要的几个组:
表1-1:system表
对象 |
语法 |
访问 |
说明 |
sysDescr |
DisplayString |
RO |
对硬件,操作系统等实体的说明 |
SysObjectID |
OBJECT IDENTIFIER |
RO |
实体包含的网络管理子系统的供应商授权身份 |
sysUpTime |
TimeTicks |
RO |
自系统的网络管理部分最近一次重启的时间 |
sysContact |
DisplayString (SIZE(0…255)) |
RW |
被管理节点联系人的身份和联系信息 |
System |
DisplayString (SIZE(0…255)) |
RW |
在管理商赋予被管理节点的名称 |
SysServices |
INTEGER(0…127) |
RO |
该节点的物理位置 |
SysLocation |
DisplayString (SIZE(0…255)) |
RW |
该节点的物理位置 |
表1-2:Interfaces表
<td style="border-right: windowtext 1pt solid; padding-right: 5.4pt; border-top: #f4f4f4; padding-left: 5.4pt; padding-bottom: 0cm; border-left: #f4f4f4; width: 53.4pt; padding-top: 0cm; border-bottom: wi
对象 |
语法 |
访问 |
说明 |
ifNumber |
INTEGER |
RO |
网络接口的数量 |
ifTable |
SEQUENCE OF ifEntry |
NA |
接口条目的列表 |
ifIndex |
INTEGER |
NA |
每一个接口的唯一取值 |
ifDescr |
DisplayString(SIZE(0`255) |
RO |
关于接口的信息,包括制造商的名称,产品名称和硬件接口版本 |
ifType |
INTEGER |
RO |
接口的类型,按照物理,链路协议进行区分 |
ifMtu |
INTEGER |
RO |
最大协议数据单元的大小。按字节算 |
ifSpeed |
Gauge |
RO |
接口的当前数据速率容量的估计 |
ifPhysAddress |
PhysAdress |
发表评论
-
你可能不知道的10个JavaScript小技巧
2010-09-07 17:05 1076“梦想天空”(网名)曾发表一篇博文,为我们介绍了10个Java ... -
监控利器nagios
2009-04-01 17:32 3070我的Nagios的艰辛.....网络监控之神(一)本贴原创,转 ... -
Tomcat配置指南(转载)
2009-03-11 10:54 1150Tomcat配置指南(转载) 一 ... -
谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词
2009-02-27 14:33 1244这是一篇程序员写给程 ... -
SnmpHibernate
2008-12-18 14:44 1793SnmpHibernate is a MIB/Object ... -
常用的数字编码格式
2008-12-17 17:39 2601常用数字编码1.BCD编码 在数字系统中,各种数据要转换为二进 ... -
Java中四种XML解析技术之不完全测试
2008-12-16 11:00 1016测试环境: AMD毒龙1.4G ... -
Javascript闭包技术
2008-11-24 09:46 1386一、什么是闭包?“官 ... -
多线程
2008-07-25 16:35 1480线程:是指进程中的 ... -
Apache,Resin,JVM 状态监控
2008-07-24 13:21 3261不管你是网站系统管理员,还是WEB开发人员,了解你的WEB应用 ... -
使用Jconsole对java的内存使用情况(JVM)进行监控
2008-07-24 11:26 2818JDK1.5提供JMX remote的管理工具Jconsole ... -
Linux下网络流量监控
2008-07-24 10:23 2018(一) 系统环境:redhat9.0 必备软件: (这些软件都 ... -
net-snmp安装手记
2008-07-23 11:45 4769对于更多的net-snmp的资料,可以去www.net-snm ... -
net-snmp安装手记
2008-07-23 11:36 7564Installing /usr/share/man/man3/ ... -
RFC1155基于TCP/IP网络的管理结构和标记
2008-07-10 10:37 2305组织:中国互动出版网(http://www.china-pub ... -
Snmp4j编程简介之三:Snmp
2008-07-03 13:03 9533Class Snmp java.lang.Object o ... -
Snmp4j编程简介之二:PDU
2008-07-03 13:00 6707PDU(协议数据单元),用来表示管理站跟代理站点进行通信的数据 ... -
Snmp4j编程简介之一:Target
2008-07-03 12:57 4744关于Snmp4j包,最重要三个概念,也是三个类:Snmp、Ta ... -
Java远程通讯可选技术及原理
2008-06-23 11:45 1352Java远程通讯可选技术及原理 在分布式服务框架中 ... -
基于Spring的远程访问与Web Service(二)
2008-06-20 16:33 5016Spring框架对远程访问技 ...
相关推荐
基于SNMP/MIB的网络数据获取系统设计与实现
【基于SNMP/MIB的网络数据获取系统设计与实现】 简单网络管理协议(SNMP,Simple Network Management Protocol)是互联网工程任务组(IETF)定义的一套标准协议,主要用于管理和监控IP网络上的设备。SNMP协议允许...
《基于SNMP/MIB的网络数据获取系统设计与实现》 SNMP(简单网络管理协议)和MIB(管理信息库)是网络管理和监控领域的核心工具。本系统设计旨在通过SNMP协议,从网络设备中收集数据,并利用MIB进行信息的组织和管理...
在这个"SNMP.zip"压缩包中,我们可以看到一个关于"基于SNMP MIB的网络数据获取系统设计与实现"的项目。这个系统利用Java语言开发,其目标是通过SNMP协议从网络设备中收集和处理数据,这些数据可能包括设备状态、性能...
本篇研究与设计基于SNMP的网络管理系统,详细阐述了SNMP协议的组成、工作模型以及网络管理系统的构成和总体设计。 SNMP的网络管理框架主要由三个部分组成:SMI(管理信息结构)、MIB(管理信息库)和SNMP协议本身。...
基于SNMP_MIB的网络数据获取系统设计与实现,包括源代码实现以及文件说明。
### 基于SNMP/Web的园区网络管理系统中配置模块的实现方法 #### 一、概述 随着互联网技术的快速发展,网络系统变得越来越复杂且多样化,这对网络管理提出了更高的要求。为了有效地管理和监控网络,Internet核心...
标题中的“JAVA基于SNMP网络设备MIB信息采集”是一个典型的IT计算机领域的研究主题,它涉及到网络管理、Java编程和SNMP(简单网络管理协议)技术。这篇毕业论文设计可能是关于如何使用Java语言来实现一个SNMP客户端...
标题中的“JAVA基于SNMP网络设备MIB信息采集(论文源代码).rar”表明这是一个关于使用Java编程语言实现SNMP(简单网络管理协议)来采集网络设备MIB(管理信息库)信息的毕业答辩项目。SNMP是互联网标准协议,用于管理...
该系统设计的核心在于如何有效利用SNMP(Simple Network Management Protocol,简单网络管理协议)来实现网络状态的实时监控和故障处理。 SNMP是一种广泛应用于网络管理的协议,它基于Client/Server模型,采用代理/...
首先,"基于SNMP网络设备MIB信息采集项目说明报告.doc"应该是项目的设计文档,详细介绍了系统的目标、功能、架构和实现方法。这份文档可能会涵盖以下几个关键点: 1. **项目目标**:系统旨在自动收集网络设备的MIB...
基于SNMP的网络流量监控系统的设计与实现是一种利用简单网络管理协议(Simple Network Management Protocol,简称SNMP)来收集网络设备信息,并对网络流量进行监控的技术方案。这种监控系统主要用于网络管理和故障...
在此背景下,基于SNMP(简单网络管理协议)的FTTH网络管理系统的设计与实现显得尤为重要。 首先,需要了解SNMP的基本原理。SNMP是一种广泛使用的网络管理协议,它允许网络管理员监控网络设备的状态、配置和性能,并...
SNMP源自简单网关监视协议(SGMP,Simple Gateway Monitor Protocol),其主要功能是使管理工作站能够远程管理和监控所有支持SNMP协议的网络设备,如路由器、交换机、服务器等,以实现网络状态的监视、设备配置的...
标题中的“Java 开发JAVA基于SNMP网络设备MIB信息采集”是指使用Java编程语言来实现SNMP(简单网络管理协议)对网络设备上的MIB(Management Information Base,管理信息库)信息进行采集的一种技术实践。...
《基于SNMP的通信网络性能管理模块设计与实现》 通信网络的性能管理是网络管理中的核心环节,其目标在于优化网络性能,提升运行质量。ISO定义的网络管理五大功能域中,性能管理负责测试网络各单元的性能,包括网络...