搜档网
当前位置:搜档网 › SNMP从入门到开发:进阶篇 (转)

SNMP从入门到开发:进阶篇 (转)

SNMP从入门到开发:进阶篇 (转)
SNMP从入门到开发:进阶篇 (转)

SNMP从入门到开发:进阶篇(转)

管理信息库:MIB

我们要扩展mib首先必须清楚mib是如何定义的,用的什么语言,有哪些约定,遵循哪些规则等等。这些基本东西掌握过后,我们就可以很轻松的来写自己的mib文件了。

所谓管理信息库,或者MIB,就是所有代理进程包含的、并且能够被管理进程进行查询和设置的信息的集合,或者叫管理对象的集合,在RFC 1213 [McColghrie 和Rose 1991]中定义了MIB-II,即第二版的MIB库。MIB是采用SMI(RFC 1155)来定义的。SMI全称为Structure Management Information,管理信息结构。SMI规范定义了一个基本框架,使用框架内的规范可以定义MIB,而SMI同时又是ASN.1的一个子集,它主要约定了使用到的语法、类型、宏、数据格式等。

本节知识相对来说有些枯燥,但是没办法,如果你要看懂mib的定义文件,并且能很灵活自如的对其进行扩展,那么这些基础是必须夯实的。俗话说“磨刀不误砍柴工”。

ASN.1语法 ASN.1(Abstract Syntax Notification 1),抽象语法描述语言,是一种独立于机器的描述语言,用于描述在网络上传递的消息。在SNMP中ANS.1主要用于MIB的定义,另一方面也用于协议的定义。所以理解ASN.1是理解协议、读懂SNMP国际规范RFC、进行SNMP开发的前提。在SNMP开发中,不但要用ASN.1编写MIB文件,还要使用ASN.1中的BER进行编解码。

ASN.1 可分为两个部分:

●语法规则:从数据类型、内容顺序或结构等方面来描述消息的内容

●编码规则:如何编码、解码实际消息中的数据

语法部分用于对数据结构、类型、顺序进行描述。编码则将语法部分描述的数据进行编码,变为二进制比特流,以便在网络上传输,或反方向地将接收到的数据流进行解码。这使得编码流可以跨平台、跨设备进行传输。

ASN.1的记法规则,ASN.1的结构、类型和取值的表示方法和编程语言的表示法相似:

多个空格和空行都看作是一个空格。

注释用成对的连字符(--)在注释的每行开始处表示,或者将一对连字符用在注释的开始处和注释行结束的结尾处。

标识符(取值和字段的名称)、类型引用(类型的名称)和模块名称由大写字母、小写字母、数字和连字符组成。

标识符、类型引用或模块名以由大写字母开始。

内建类型都由大写字母组成。内建类型一般用作标准表示法提供的类型。

Octet(字节)表示一个8bit的无符号整数。bit8表示最高位,bit1标识最低位。下列元语用于定义ASN.1符号:

●BIT 类型和值用等宽字体表示。它通畅表示一个十六进制的字节值。

●n1 粗斜体表示变量

●[] 粗的方括号标示该值为可选项

●{} 粗的大括号表示一组相关项。

●| 粗体竖杠表示一组之中的内容可任选其一。

●… 粗体省略号表示重复出现

●= 粗体等号,用一个子项表示该项

1 ASN.1术语1.抽象语法(Abstract Syntax)

●描述通用数据结构

●允许定义数据类型和值

2.数据类型(Data Type)

●值的集合,可以是简单类型或结构类型可以对数据类型命名

3.编码(Encoding)

●用于表示数据值的字节序列

4.编码规则(Encoding Rules)

●给出从一种语法到另一种的映射方法

5.传输语法(Transfer Syntax)

●位模式(Bits pattern):描述数据是在传输时是如何表示的

2 ASN.1模块定义模块(module)是ASN.1规范中的基本构造块,定义一个名为modulereference的模块,其格式如下:

DEFINITIONS ::=

BEGIN

EXPORTS

IMPORTS

AssignmentList

END

其中:EXPORTS 这个模块中的定义可能被其他模块引入,用的比较少;IMPORTS 定义将要由其他模块引入的对象或子模块;AssignmentList 这个模块中将定义类型分配、值分配及宏定义。

3 ASN.1数据类型 1. 基本类型:

ASN.1语法中有六种基本类型,分别如下,基本已经做到见名知意了:

BOOLEAN,INTEGER,ENUMERATED,REAL,BIT STRING,OCTET STRING

2. 字符串类型(ISO10646-1的子集):

NumericString (0-9,)

PrintableString (0-9,A-Z,a-z,,])

VisibleString

GraphicString

UTF8String

IA5String (ASCII)

3. 对象类型:

OBJECT IDENTIFIER

ObjectDescriptor:一个任意长的非负整数序列,用于标记对象(如算法等)

4. 其它类型:

NULL 空值

UTCTime: yymmdd hhmm[ss]

GeneralizedTime:yyyymmdd hhmm[ss] ,强制始于2050年

4 ASN.1类型定义ASN.1灵活之处在于,除了它内置的一些数据类型外,用户还可以自定义自己想要的任何类型,一般都是通过现有类型来组合来实现。

新类型定义的语法: ::=

示例:

Counter ::= INTEGER

IpAddress ::= OCTET STRING

Months ::= ENUMERATED {

january (1), february (2), march (3), april (4), may (5), june (6), july (7), august (8), september (9),october (10), november (11), december(12)

}

上面的定义过程中,INTEGER太常见了,就用Counter来作为它的一种别名,注意是一种,以后就可以用Counter来定义新变量了。同理,IpAddress就是OCTE STRING类型一种别名。

5 ASN.1子类型定义

子类型是在类型的定义基础上增加更明确限制条件,如设定新类型的取值范围,缺省值等等。

语法: ::= ()

示例:

Counter ::= INTEGER (0..65536)

IpAddress ::= OCTET STRING ( SIZE(4) )

Spring ::= Months (march | april | may)

Summer ::= Months (june | july | august )

SmallPrime ::= INTEGER ( 2 | 3 | 5 | 7 | 11 )

ExportKey ::= BIT STRING ( SIZE(40) )

这样定义过后,以后用Counter定义的任何变量都被限定大于0小于65536。IpAddress定义变量长度都是4字节,等等。

6 ASN.1赋值赋值在MIB库文件中的定义是最常见的一部分。

语法: ::=

value name :由用户自定义,但一般最好不要重名;

type:就是前面ASN.1的内置数据类型,或用户自定义类型;

value:当然就是该变量的值,一般要和变量类型所限定的范围一致。

示例:

ipInReceives Counter ::= 2450

ipRouteMask IpAddress::= ‘FFFFFF00’H

currentMonth Months ::= july

currentTime UTCTime::= “030708094018+0800”

name VisibleString::= “John”

married BOOLEAN ::= TRUE

faxMessage BIT STRING::= ‘01100001101’B

internet OBJECT IDENTIFIER::= { iso(1) org(3) dod(6) 1 }

private OBJECT IDENTIFIER ::= { internet 4 }

最后两种赋值格式,我们后面再讲。

7 ASN.1的结构体类型 SEQUENCE一个或多个类型的有序集合,类似于

C语言中的struct 类型定义:

UserAccount ::= SEQUENCE {

username PrintableString,

password PrintableString,

accountNr INTEGER

}

赋值

myAccount UserAccount ::= {

username “tly”,

password “guesswhat”,

accountNr 2345

}

●SEQUENCE OF 0个或多个某个给定类型多次出现的有序集合,对应于C语

言中的数组:

定义

MemberCountries ::= SEQUENCE OF PrintableString

AccountRegistry ::= SEQUENCE OF UserAccount

赋值

eastAsia MemberCountries ::= {

“China”, “Japan”, “Korean”, “DPR”

}

●SET一个或多个类型的无序集合,类似于SEQUENCE,但其中的组件不考

虑分量顺序:

定义

UserAccount ::= SET {

username [0] PrintableString,

password [1] PrintableString,

accountNr [2] INTEGER

}

赋值

myAccount UserAccount ::= {

accountNr 2345,

username “tly”,

password “guesswhat”

}

●SET OF 0个或多个某个给定类型多次出现的无序集合,每一分量(组件)类

型必须相同,但不考虑顺序要求。

类型定义

Keywords ::= SET OF PrintableString

赋值

someASN1Keywords Keywords ::= {

“INTEGER”, “BOOLEAN”, “REAL”

}

●CHOICE多个类型其中的一个,类似于C语言中的枚举型:

例如:

SimpleSyntax ::=

CHOICE{

number

INTEGER,

string

OCTER STRING,

object

OBJECT IDENTIFIER, empty

NULL

}

SimpleSyntax可以是INTEGER、OCTER STRING、OBJECT IDENTIFIER、NULL 中的一个类型的变量。上述结构类型允许有可选组件。可选组件可能有默认值。SNMP中使用到的结构类型包括SEQUENCE、SEQUENCE OF和CHOICE。

8 ANS.1标签类型标签用于区分不同的类型,并且在结构类型SEQUENCE 和SET中,组件类型可能引起混淆,可以为它们的组件(分量)指定

Context-specific标签,清晰指示组件的类型。除了CHOICE和ANY外,每种ASN.1

类型都有一个标签,由一个类和一个非负的标签数组成。标签值可以唯一区分ASN.1类型。也就是说,ASN.1类型的名字并不影响它的抽象含义,只有标签才有这个作用。

标签用在编码中,可以唯一地标示类型,便于编码。ASN.1提供了4中标签:

●Universal:标识ISO和ITU定义的类型,ASN.1定义的类型均有Universal

值,该值在所有的程序里都一致。

●Application:应用程序自定义类型。本标识可以唯一地标识自定义类型。

类型名在ASN.1中可以相同,所以Application就成为唯一标识自定义类

型的方法。类型的含义由制定者自己定义。例如:

name ::=[APPLICATION 0] VisibleString

Name ::=[APPLICATION 1] SEQUENCE

{

givenname VisibleString,

initial VisibleString,

familiyName VisibleString

}

●Private:该类型的含义根据具体的企业而不同。Private标识不会被用在

国际规范中。企业提供的程序一般经常使用application和

context-specific标识。在特殊场合下,一个企业的技术规范想要扩展

成为一个国际规范时,使用private标识在企业规范成为国际规范的过

程中可以较好地保护该企业的规范。例如:

CompanyNumber ::=[PRIVATE 2] INTEGER

companyNumber CompanyNumber ::=5651

●Context-specific:专用于结构类型中。该类型的含义根据给定的结构类

型而不同。对于SET和SEQUENCE,为了避免里面的组件混淆,一般情况

下给予不同的Context-specific标签。如:

CustomerRecord ::=SET{

name [0] VisibleString

mailingAddress [1] VisibleString

accountNumber [2] INTEGER,

balanceDue [3] INTEGER -- in cents--

}

SET和CHOICE中的分量顺序可能不同,例如name和mailingAddress都拥有同样的类型VisibleString,且它们的顺序可能颠倒,如果不指定一个context-specific标签就不知道一个VisibleString类型的值究竟是赋给name还是mailingAddress的。使用标签值就可以区分开,标签0是name,标签1是mailingAddress。

9 宏定义 ASN.1提供一种用户可以将符号扩展为自己使用的或别人使用的符号的机制,这就允许设计者去扩展语言定义一个“对象”,比如定义一个调制解调器或定义一个交换机。这些对象有普通的ASN.1属性和条件属性,比如父母和物理位置等。例如一个一部的调制解调器可以以普通调制解调器作为父类,从父类处继承属性。使用ASN.1可以定义为:

mode ::=SEQUENCE{

speed INTEGER,

modulation IA5String,

manufacturer IA5String

}

一个宏定义可以被导入和导出。ASN.1中的宏模板为:

MACRO ::=

BEGIN

TYPE NOTATION ::=

VALUE NOTATION ::=

END

下面是一个使用宏模板定义类型的例子:

ERROR MACRO ::=

BEGIN

TYPE NOTATION ::= Parameter

VALUE NOTATION ::=value(VALUE CHOICE

{

localValue INTEGER,

globalValue OBJECT INDENTIFIER

})

Parameter ::=“PARAMETER”N amedType | empty

NamedType ::=identifier type | type

END

PS:宏在1994年从ASN.1中移除,取而代之的是Information Object Class。2002年X.680和X.690系列标准中已经使用Information Object Class代替。SNMPv1在1990年发布,所以SNMPv1中使用ASN.1宏。而SNMPv2 SMI的RFC中明确指出,SNMPv2中使用1998版ASN.1,所以SNMPv2还是使用ASN.1中的宏定义管理对象和通告。

实战演练之MIB文件分析请自己分析rfc-1303.mib、rfc1065-SMI.mib、rfc1155-SMI.mib、rfc1213-MIB.mib,以及SNMPv2-SMI.mib(rfc2578)、SNMPv2-TC.mib(rfc2579)和SNMPv2-TM.mib(rfc3417)。

本章内容理论性较强,但是如果很好掌握了ASN.1语法50%的基础知识就可以读懂现有80%的MIB文件,同时可以编写初中级的简单MIB文件了。

未完,待续…

基于SNMP的网络管理软件的配置与使用

华北电力大学 实验报告 实验名称基于SNMP的网络管理软件的配置与使用课程名称网络管理 专业班级:学生姓名: 学号:成绩: 指导教师:实验日期:

(一)基于SNMP的网络管理软件的配置与使用 一、实验目的 1.熟悉路由器和交换机并掌握路由器和交换机的基本配置方法和配置命令。 2.练习构建一个由四个路由器和四台主机构成的网络。 3.操作SiteView NNM管理系统,掌握如何添加网元,构建管理系统,并每 一个可被管理的设备进行操作。 4.掌握网络管理软件的使用方法,实现对网络的拓扑发现实时监控,告警设置: 1).应用Siteview软件进行拓扑发现。通过自动和手动两种方式实现。 2).基于SNMP的实时监控。对设备,链路,端口等进行相应的监控。 3).进行告警设置(告警方式)。通过对不同设备,条件等进行告警设置。 二、实验环境 计算机4台、路由器4台、交换机4台、SiteView NNM网络管理软件系统。 三、实验原理 网络设备只有配置了SNMP协议以后,才能够通过SNMP进行监控和管理,因 此,使用网络管理软件之前,需要对所有设备进行配置。主要包括: 1)主机SNMP配置; 2)路由器SNMP配置; 3)交换机SNMP配置。 四、实验步骤: 1、局域网的实现与配置: 网络拓扑图:

路由配置: 1)IP分配: 四台PC的本地连接2的IP分别为: PC1:222.1.3.5 PC2:222.1.2.5 PC3:222.1.1.5 PC4:222.1.4.5 本地连接1 IP: PC51:192.168.1.21 PC52:192.168.1.22 PC53:192.168.1.23 PC54:192.168.1.24 2)地址分配: 路由器R1 S2端地址:222.1.6.1 路由器R1 S3端地址:222.1.7.1 路由器R1与路由器R2间的地址:222.1.6.0 路由器R1与两层交换机1间接口G1 地址:222.1.3.1 路由器R2 S2端地址:222.1.6.2 路由器R2 S3端地址:222.1.5.1 路由器R2与路由器R3间的地址:222.1.5.0 路由器R2与两层交换机2间的地址:222.1.2.1 路由器R3 S2端地址:222.1.5.2 路由器R3 S3端地址:222.1.8.1 路由器R3与路由器R4间的地址:222.1.8.0 路由器R3与两层交换机2间的地址:222.1.1.1 路由器R4 S2端地址:222.1.8.2 路由器R4 S3端地址:222.1.7.2 路由器R4与路由器R1间的地址:222.1.7.0 路由器R4与交换机间的地址:222.1.4.1 PC1地址:222.1.3.5 网关:222.1.3.2 PC2地址:222.1.2.5 网关:222.1.2.2 PC3地址:222.1.1.5 网关:222.1.1.2 PC4地址:222.1.4.5 网关:222.1.4.2

snmp介绍

什么是SNMP协议 简单网络管理协议(SNMP)首先是由Internet工程任务组织(Internet Engineering Task Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。许多人认为SNMP在IP上运行的原因是Internet运行的是TCP/IP协议,然而事实并不是这样。 SNMP被设计成与协议无关,所以它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。 SNMP是一系列协议组和规范(见下表),它们提供了一种从网络上的设备中收集网络管理信息的方法。S NMP也为设备向网络管理工作站报告问题和错误提供了一种方法。 名字说明 MIB 管理信息库 SMI 管理信息的结构和标识 SNMP 简单网络管理协议 从被管理设备中收集数据有两种方法:一种是只轮询(polling-only)的方法,另一种是基于中断(interrupt -based)的方法。 如果你只使用只轮询的方法,那么网络管理工作站总是在控制之下。而这种方法的缺陷在于信息的实时性,尤其是错误的实时性。你多久轮询一次,并且在轮询时按照什么样的设备顺序呢?如果轮询间隔太小,那么将产生太多不必要的通信量。如果轮询间隔太大,并且在轮询时顺序不对,那么关于一些大的灾难性的事件的通知又会太馒。这就违背了积极主动的网络管理目的。 当有异常事件发生时,基于中断的方法可以立即通知网络管理工作站(在这里假设该设备还没有崩溃,并且在被管理设备和管理工作站之间仍有一条可用的通信途径)。然而,这种方法也不是没有他的缺陷的,首先,产生错误或自陷需要系统资源。如果自陷必须转发大量的信息,那么被管理设备可能不得不消耗更多的时间和系统资源来产生自陷,从而影响了它执行主要的功能(违背了网络管理的原则2)。 而且,如果几个同类型的自陷事件接连发生,那么大量网络带宽可能将被相同的信息所占用(违背了网络管理的原则1)。尤其是如果自陷是关于网络拥挤问题的时候,事情就会变得特别糟糕。克服这一缺陷的一种方法就是对于被管理设备来说,应当设置关于什么时候报告问题的阈值(threshold)。但不幸的是这种方法可能再一次违背了网络管理的原则2,因为设备必须消耗更多的时间和系统资源,来决定一个自陷是否应该被产生。 结果,以上两种方法的结合:面向自陷的轮询方法(trap-directed polling)可能是执行网络管理最为有效的方法了。一般来说,网络管理工作站轮询在被管理设备中的代理来收集数据,并且在控制台上用数字或图形的表示方式来显示这些数据。这就允许网络管理员分析和管理设备以及网络通信量了。 被管理设备中的代理可以在任何时候向网络管理工作站报告错误情况,例如预制定阈值越界程度等等。代理并不需要等到管理工作站为获得这些错误情况而轮询他的时候才会报告。这些错误情况就是众所周知的SNMP自陷(trap)。

基于SNMP网络管理的研究与应用

基于SNMP网络管理的研究与应用 基于SNMP网络管理是保障网络运行稳定的重要条件,同时也是有效发挥网络利用率的重要前提。文章介绍了基于SNMP网络管理的基本机构,在此基础上设计了一个网络管理系统。在设计出来的网络管理系统中,对传统的SNMP 网络搜索设备的基础上进行了改进,并找出了唯一标识路由器的方法,最后分析了临界区的相关使用。 标签:SNMP网络管理;体系结构;临界区;接口类型;子网系统 SNMP是Simple Network Management Protocol的简称,即简单网络管理协议,它是由简单网关监控协议(即SGMP)转化而来的,它主要的功能就是管理通信线路。随着技术的不断发展与进步,人们开始逐渐修改SGMP,改进后的SGMP就成了现在的SNMP。SNMP具有结构简单、方便实用等优点。技术飞速发展促进了SNMP的发展,其版本也在不断改进和升级。文章主要根据我国中小型企业在管理网络方面的情况,设计了符合我国企业应用的网络管理软件。 1 SNMP网络管理体系结构 SNMP的设计模型是ISO的网络管理模型,一般由两个部分组成,即管理节点和代理节点。在代理节点上,一般都会有一个管理信息库,这个管理信息库是针对被管理对象而设置的,它主要负责数据的采集与传输,最后将所得的信息递交给网管系统。另外,SNMP的优点之一就是简单性,所以它可以监督网络管理的工作,降低系统资源对系统的占用。SNMP的管理模型可以以图表的形式展现出来,具体如图1: 图1 另外,SNMP对操作进行了限制和说明,主要有以下三种模式:(1)Get操作,SNMP主要通过GET语句获得管理对象的具体值;(2)Set操作,通过SET 语句设置管理对象的具体值;(3)Trap操作,通过TRAP语句设置阈值。 另外,SNMP有一个显著特点,它不能通过对象的实例操作改变管理信息库机构,它只能在对象的标志数中进行操作,这就在很大程度上促使SNMP由简单走向更简单。 2 关于网络管理软件的设计 2.1 相关的体系框架 网络管理软件的体系结构一般由四个层次组成。其一,被管网络设备,顾名思义,这个层次主要由一些被管理的相关设备组成。这些设备包括路由器、核心交换机等;其二,数据采集层,它采集的数据覆盖所有被管设备,完成数据采集

基于snmp网络管理系统的设计与实现

本科毕业设计(论文) 题目:基于SNMP网络管理系统 的设计与实现 院(系):计算机科学与工程学院 专业: 班级: 学生: 学号: 指导教师: 2014年6月

1 基于SNMP网络管理的研究 在Windows环境下进行SNMP编程,可以使用WinSNMP API函数。这些函数实现了基本的SNMP功能,但直接使用WinSNMP API函数要复杂得多,幸运的是,目前有许多支持SNMP功能的第三方开发包,如UCD SNMP,PowerTCP 和SNMP++等,使用这些开发包,可以大大简化Windows环境下的SNMP编程工作。 SNMP++是网络管理程序与SNMP代理之间的通信协议,因此SNMP编程也包括两大部分:网络管理程序的开发和SNMP代理软件的开发。 SNMP代理运行在特定的网络设备中,由设备生产商负责开发。本文主要研究在Windows 环境下开发基于SNMP的网络管理程序,不涉及SNMP代理开发方面的内容。 微软的Windows系统(包括Windows NT、Windows 2000、Windows XP、Windows 2003等)支持SNMP,默认是关闭的,可以通过添加组件的方式进行打开并进行简单配置。启动后,代理在主机上启动一个SNMP代理服务器进程,监听从UDP端口161接收的SNMP操作请求。但是还不能使用SNMP获取到系统的信息,因为此时代理支持的MIB-II中还没有定义相关的被管理对象,因此,还需要安装第三方支持的软件。 SNMP第三方软件实际上是一个SNMP子代理,系统中原来的代理称为SNMP主代理,主代理与子代理之间使用特有的协议进行通信。通过安装子代理,可以在系统中扩展主代理不支持的MIB。Net-SNMP就是这样的一款第三方软件,安装后即可为SNMP提供信息。 2 环境配置 使用windows XP 操作系统,软件使用VC++6.0,测试设备,本机,工大瑞普虚拟实验环境,可以模拟如帧中继,路由交换的环境。 从https://www.sodocs.net/doc/756186194.html, 下载SNMP++开发包,解压后进行编译,形成一个静态链接库,下面的步骤将在VC++6.0开发环境中将SNMP软件包编译成一个静态的链接库。 在VC6中编辑生成snmp_pp.lib文件,操作步骤如下: 1) 在开发环境下,选择“File”->“New…”项,在弹出的窗口中选择“Win32 Static Library”,工程名为“snmp_pp”,如图2.1所示。

什么是SNMP

什么是SNMP 文档版本01 发布日期2019-05-31

版权所有 ? 华为技术有限公司 2019。保留一切权利。 非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。 商标声明 和其他华为商标均为华为技术有限公司的商标。 本文档提及的其他所有商标或注册商标,由各自的所有人拥有。 注意 您购买的产品、服务或特性等应受华为公司商业合同和条款的约束,本文档中描述的全部或部分产品、服务或特性可能不在您的购买或使用范围之内。除非合同另有约定,华为公司对本文档内容不做任何明示或默示的声明或保证。 由于产品版本升级或其他原因,本文档内容会不定期进行更新。除非另有约定,本文档仅作为使用指导,本文档中的所有陈述、信息和建议不构成任何明示或暗示的担保。 华为技术有限公司 地址:深圳市龙岗区坂田华为总部办公楼邮编:518129 网址:https://www.sodocs.net/doc/756186194.html,

什么是SNMP目录 目录 1 简介 (1) 2 SNMP系统组成 (2) 3 SNMP查询 (5) 4 SNMP设置 (10) 5 SNMP Traps (12) 6 SNMP端口号 (16) 7 使用SNMP的相关信息 (17)

什么是SNMP 1 简介 1简介简单网络管理协议SNMP(Simple Network Management Protocol)用于网络设备的管 理。网络设备种类多种多样,不同设备厂商提供的管理接口(如命令行接口)各不相 同,这使得网络管理变得愈发复杂。为解决这一问题,SNMP应运而生。SNMP作为广 泛应用于TCP/IP网络的网络管理标准协议,提供了统一的接口,从而实现了不同种类 和厂商的网络设备之间的统一管理。 SNMP协议分为三个版本:SNMPv1、SNMPv2c和SNMPv3。 l SNMPv1是SNMP协议的最初版本,提供最小限度的网络管理功能。SNMPv1基于团体名认证,安全性较差,且返回报文的错误码也较少。 l SNMPv2c也采用团体名认证。在SNMPv1版本的基础上引入了GetBulk和Inform操作,支持更多的标准错误码信息,支持更多的数据类型(Counter64、 Counter32)。 l SNMPv3主要在安全性方面进行了增强,提供了基于USM(User Security Module)的认证加密和基于V ACM(View-based Access Control Model)的访问控制。 SNMPv3版本支持的操作和SNMPv2c版本支持的操作一样。

基于SNMP的网络管理系统设计与实现

基于SNMP的网络管理系统设计与实现 【摘要】SNMP系统一般情况下采用的客户机或者服务器结构,在系统结构中包含很多种元素,并且十分重要,包括有NMS网路管理工作站、设备和代理等,通常,用其来描述被管理的对象状态或者是NMS和Agent之间的SNMP。NMS特性独立,能将网络管理员和网络管理系统很好的联系起来。工作站需要具备全套的管理软件,管理员获取数据的途径可以通过MIB和用户接口,与此同时,管理员也可以发出相关的管理命令。代理由主机、路由器和网桥等组成,为了使平台更好的让工作站进行管理。当工作站发出信息请求时,代理的职责就是自动应答,这时相关的数据信息就可以自动快速的传达到网管工作站了,网管工作站在对代理提交的数据进行修改,代理此时也可以对一些来自工作站的重要数据信息进行记录报告。 【关键词】网络管理SNMP 信息网络技术信息数据传输 当代信息发展的速度越来越快,计算机网络的应用也随之越来越广泛。网络管理技术作为计算机网络管理领域的重要一员,其研究也被提上日程。现在的网络管理系统仍然存在一些弊端,例如运行不稳定等,因此,必须强化对网络系

统的管理,才能使其稳定发展。SNMP是一种简单的网络管理协议,它是由IETF在SGMP的基础上所研发出来的。在TCP 的应用层管理协议的基础上,其传输层协议使用UDP。其核心在于用一个网络节点进行存放管理信息以及进行代理维护。 1现在的网络信息安全性 自2009年起,互联网在全国的普及范围扩展迅速,使用宽带的用户也逐年增加,但据相关数据表明,互联网发展迅速的同时,病毒的入侵也更加肆虐,浏览器被修改、系统受限的情况也越来越多,甚至达到所有问题的百分之二十以上,同时还伴有信息被盗、计算机被控制等情况。大量的问题现象的出现,更加需要网络从根本上来解决其安全性的问题,包括其软硬件设备和数据的安全,以及在数据传输、储存和使用中的安全。 2对SNMP的简单介绍 SNMP是一种简单的网络管理协议,它是一种网络设备,作用是管理支持代理进程。其核心在于用一个网络节点进行存放管理信息以及通过代理进行维护,通过应用层的管理协议来进行信息库的管理。通过SNMP系统,可以利用远程控制的方式来管理工作站的协议,例如定时检验网络状态,修改一些网络的设备问题,还能及时的对将要出现的问题进行警告。

基于SNMP协议的网络管理系统(数据采集及分析)

摘要 近年来,随着网络技术的发展,计算机网络在我们的日常生活中的作用越来越普遍。我们已经到了如此依赖计算机网络的地步,以至于网络的崩溃可能意味着生意或日常生活的崩溃。因此保持良好的良好运行状态是至关重要的,这就是网络管理的由来。SNMP 是专门设计用在 IP 网络管理网络节点的一种标准协议,它是一种应用层协议。 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告),网络管理系统就可获知网络出现了问题。 本系统即是一个基于SNMP协议的网络管理系统。它通过获取各网络设备的参数并存入数据库,从而帮助网络管理员实现对网络性能的管理。 关键词:网络管理SNMP协议网络设备 Abstract

Along with the development of cross-domain communication technology, the effect in our day-to-day life of computer network was more and more universal in recent years. We had arrived so relying on the condition of computer network, to such an extent as to cross-domain communication collapses probably to signify collapsing of business or day-to-day life. Therefore the good running status that keeps good is essentional, this is the origin of network management.SNMP is one kind of standard agreement specially using at IP's network management network node, and it is one kind of agreement to with application layer. SNMP makes network managemers can manage cross-domain communication efficacy, and discovery and settlement cross-domain communication question as well as the planning cross-domain communication increases. Receiving random news ( and incident report ) by way of SNMP, the network management system can be learned that the cross-domain communication had appeared the question. Namely this system is baseding on the network management system of agreement to with SNMP's. It exists side by side into the data base by way of the parameter to procure each cross-domain communication equipment, thus helps network managers realize the management to the network performance. Keywords: net management SNMP protocol network devices

基于SNMP的网络拓扑发现

基于SNMP的网络拓扑发现 一、SNMP简介 SNMP(Simple Network Management Protocol,简单网络管理协议)是一种基于TCP/IP协议的互连网管理协议。 SNMP诞生于1988年,当时只想把它作为一个短期的网络管理框架,临时用于管理连接到Internet上的设备。但随着SNMP的发展和大量应用,其使用范围已大为扩展,超出了Internet的范围。SNMP逐渐作为一种标准的协议在网络管理领域得到了普遍的接受和支持,成为了事实上的国际标准。 SNMP采用“管理进程/代理进程”模型来监视和控制各种可管理网络设备。其核心思想是在每个网络节点上设置一个管理信息库MIB(Manage Information Base),由节点上的代理负责维护,管理进程通过应用层协议对这些信息库进行访问。 图3.1说明了SNMP网络管理框架的一般体系结构,它由四个主要部件构成,分别是:通信网络、网络协议、网络管理进程和被管网络实体。 网络管理进程被管网络实体

图3.1 简单网络管理协议(SNMP )体系结构 二、 基于SNMP 协议的网络层拓扑发现 SNMP 已经成为网络管理的标准,为网络拓扑自动发现带来了巨大的方 便,同时也大大提高了网络拓扑发现的速度。 路由器 子网 图3.2 网络拓扑结构模型 网络层拓扑发现算法的任务就是发现被管网络中的子网、路由器以及它 们之间的连接关系。图3.2是网络拓扑结构的一个模型。其中,各子网通过各自的路由器与其他子网通信,它们都连接到路由器的一个端口上。路由器的一个端口可以连接一个子网,也可以同其他路由器相连。当子网内的某一机器向别的子网发送数据时,数据包首先到达本子网的缺省路由器,缺省路由器检测数据包中的目的地址,根据其路由表确定该目的地址是否在与自己相连的子网中。如果是,则把数据包直接发往目的地,否则转发给路由表中规定的下一个路由器,下一个路由器再进行类似处理,依次类推,数据包将最终到达目的地。可见,通过分析路由器上的路由表,就可以知道网络层的拓扑结构。 2.1 网络层拓扑发现用到的MIB 组 MIB-II(RFC-1213)是标准的SNMP MIB ,所有的路由器都必须实现它。拓扑发现程序为了具有通用性的特点,必然选择MIB-II 作为拓扑发现工具。MIB-II 由很多不同的组组成,本节的拓扑发现算法用到的组包括:system ,interfaces ,和ip 。下面详细介绍这三个组中包含的对象。

snmp trap 介绍

COM1000-SNMP Traps Simple Network Management Protocol (SNMP) is a popular network management tool. Traditionally, SNMP was designed and used to gather statistics for network management and capacity planning. For example, the number of packets sent and received on each network interface could be obtained. But because of its simplicity, SNMP use has expanded into areas of interest to embedded systems. It is now used for many applications such as network and site security, remote alarming, access control, and outage notification. Since the COM1000 is most often used as an alarm appliance, it is somewhat impractical for a Network Manager to poll for information from every object on every interface. It is far more appropriate to use the COM1000 as a Report-By-Exception (RBX) appliance. This allows the embedded agent within the COM1000 to notify the manager without solicitation. It does this by sending a message known as an SNMP TRAP. Trap notifications offer substantial savings of network and agent resources by eliminating the need for repetitive SNMP information poll requests. However, it is never possible to completely eliminate the need for SNMP polling. Such requests are often required for device discovery and network topology changes. They are also required for reading and writing configuration values, such date, time, location, alarm set points, etc. For that reason the COM1000 supports both traps and GET/SET requests. Enabling Traps The COM1000 allows you to ENABLE or DISBALE traps on each interface. This includes traps for Cold Start, Heartbeat, the Analog Input, each of the Digital Inputs and the internal Temperature Sensor. Each interface can be enabled separately from all others so you can choose to only get the alarms you need to receive. Trap Message Format All COM1000 traps are based on a single Trap Message Format. This is a global setting that lays out the structure for ALL trap messages. The Trap Message Format may include any or all of the (11) below listed optional variables. These variables can be presented in any order you wish, but once the order is selected – all traps will follow the same order. While all messages will have a similar message parameter layout, each message can have completely unique message content. Trap messages can be as concise (terse) or detailed (verbose) as you like, and since each individual system event and input alarm has uniquely configurable parameters, each message can contain unique detail pertaining to that specific interface or alarm. Here are the trap message variables that can be included in the Trap Message Format: 0 = No data 1 = Hostname 2 = Date/Time 3 = Location 4 = Device Description 5 = Input Name 6 = Current Input Value 7 = Input State Message 8 = Alarm Severity 9 = Alarm Category 10 = Alarm Number 11 = Alarm Type For example: A Trap Message Format of “1,3,5,7,8,9,11” would result in trap messages with the following (7) parameters: [Hostname, Location, Input Name, Input State Message, Input Severity, Alarm Category, and Alarm Type]

一种基于SNMP的中间网络管理系统解决方案

225 2007年第11期,第40卷 通 信 技 术 Vol.40,No.11,2007 总第191期 Communications Technology No.191,Totally 一种基于SNMP 的中间网络管理系统解决方案 毛期俭, 陈恒志, 肖寒春 (重庆邮电大学,重庆 400065) 【摘 要】文中针对现有光收发设备管理系统的现状和测控技术的发展趋势,提出了多台设备数据集中打包、代理软件化的基于SNMP 的中间网络管理解决思路。同时详细地规划了网络管理层次架构,给出了硬件组成结构设计和软件系统的整体架构。经过测试,该系统解决方案完全满足设计需求。 【关键词】简单网络管理协议;光传输设备网络管理系统;管理信息库 【中图分类号】TP391 【文献标识码】B 【文章编号】1002-0802(2007)11-0225-02 A Solution of Mid-layer Network Management System Based on SNMP MAO Qi-jian, CHEN Heng-zhi, XIAO Han-chun (Chongqing University of Posts & Telecommunications, Chongqing 400065, China) 【Abstract】Considering the trends of Measurement and Control Technology and the status of management system for optical transmission equipments, a solution of Mid-layer network management system based on SNMP, with data together-packed and softwarized agent, is suggested in this paper. The network topology connection is d planned indetail,and the structures of the hardware and the software system are given. The result of the test proves that the solution exactly satisfies requirements of the design. 【Key words 】SNMP;network management of the optical transmission equipment;MIB 0 引言 网络技术的发展,引发了测控领域的深刻技术变革;测控系统沿着网络化方向与可开发性方向的发展是目前控制技术发展的主流。鉴于目前国内光收发器的网管现状以及网络集中管理的理念,引入新的符合监控领域的发展主流的新光收发机的监控方式便成为当务之急。 文中提出了一种管理代理端(SNMP Agent)外置化集中化采用了多台设备数据集中打包(IP 包)、代理软件化解决思路的网络管理方案。首先给出了整个管理体系的网络架构,然后分析了硬件组成结构设计和软件系统的整体架构;随后着重研究了软件系统中的信息管理层次、双地址定位机制和系统与设备间通信的要点。最后,对管理系统分别进行了功能性测试和压力测试,并根据测试的结果对系统做出了优化改进。 1 网络管理层次架构 为了达到工程管理网络的规模,每个代理中心设计网元 管理容量可达500台。每个代理与其所管理的设备同处于一个子网内(局域网),在该局域网内不限制网段与IP。各代理端平等地连接于公网上,在公网上以SNMP 协议的方式与中心网管进行双向管理通信。 网络管理拓扑图如图1所示。在图1中没有标出串口转换设备,从公网向下,各代理端下连接的网元设备均视为并联;但在实际中,这些设备是分组连接在不同的串口转换设 收稿日期:2007-06-12。 基金项目:重庆市科委科技攻关项目(编号:CSTC,2005AC2089)。 作者简介:毛期俭(1946-),男,教授,硕士生导师,主要研究方向为第三代移动通信技术、多媒体通信;陈恒志(1983-),男,硕士研究生, 主要研究方向为第三代移动通信技术、光通信技术;肖寒春(1973-)男,高工,硕士研究生导师,主要研究方向为下一代网络技术。

snmp-oid详解

SNMP常用OID Linux SNMP OID?s for CPU,Memory and Disk Statistics SNMP stands for Simple Network Management Protocol and consists of three key components: managed devices, agents, and network-management systems (NMSs). A managed device is a node that has an SNMP agent and resides on a managed network. These devices can be routers and access server, switches and bridges, hubs, computer hosts, or printers. An agent is a software module residing within a device. This agent translates information into a compatible format with SNMP. An NMS runs monitoring applications. They provide the bulk of processing and memory resources required for network management. SNMP MIBs, OIDs Overview MIB stands for Management Information Base and is a collection of information organized hierarchically. These are accessed using a protocol such as SNMP. There are two types of MIBs: scalar and tabular. Scalar objects define a single object instance whereas tabular objects define multiple related object instances grouped in MIB tables. MIB files for specific devices or systems can be downloaded from here OIDs or Object Identifiers uniquely identify manged objects in a MIB hierarchy. This can be depicted as a tree, the levels of which are assigned by different organizations. Top level MIB object IDs (OIDs) belong to different standard organizations. V endors define private branches including managed objects for their own products. Here is a sample structure of an OID Iso (1).org(3).dod(6).internet(1).private(4).transition(868).products(2).chassis(4).card(1).slotCps(2)- .-cpsSlotSummary(1).cpsModuleTable(1).cpsModuleEntry(1).cpsModuleModel(3).3562.3 Most of the people may be looking for OID’s for Linux OID’s for CPU,Memory and Disk Statistics for this first you need to install SNMP server and clients. If you want to install SNMP server and client installation in linux学习check here CPU Statistics Load 1 minute Load: .1.3.6.1.4.1.2021.10.1.3.1

基于SNMP网络管理的研究与应用

原创性声明 本人郑重声明:所呈交的学位论文是本人在导师的指导下独立进行研究工作所取得的成果,论文中有关资料和数据是实事求是的。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。 若有不实之处,本人愿意承担相关法律责任。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 学位论文作者完全了解北京服装学院有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属北京服装学院。学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许学位论文被查阅、借阅和复印;学校可以将学位论文的全部或部分内容公开或编入有关数据库进行检索,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。 保密的学位论文在解密后适用本授权书。 学位论文作者签名: 日期:年月日 导师签名:日期:年月日

基于SNMP网络管理的研究与应用 摘 要 随着网络的普及,计算机网络己经渗透到社会经济的各个领域,对社会经济的发展起着越来越重要的作用。与此同时,网络的规模日趋扩大,网络结构日趋复杂,以及当前网络安全形势的日益严竣,这些因素都极大地增加了整个网络的安全运行和日常管理的难度,构建一个稳定可靠的网络管理系统对网络进行管理,成为一个重要的研究方向。 本文首先介绍了计算机网络发展的相关背景和网络管理的发展历史。对网络管理的相关理论、体系结构、管理协议和发展趋势作了一个阐述。 通过详细分析简单网络管理协议中的网络管理模型、管理信息结构、管理信息库、通信编码规则、传输的报文格式和简单网络管理协议规定的基本操作,为软件的开发提供了理论依据。简单网络管理协议(SNMP),由于其简单和易于实现,己经成为网络管理领域事实上的行业标准,有着广泛的应用。 论文针对当前随着网络应用的普及所带来了网络规模日趋扩大,结构日趋复杂,安全形势日益严竣的现状,并通过分析网络管理的相关理论、体系结构、管理协议和发展趋势,提出自主开发一个实用和稳定的网络管理系统,对网络实际运行和维护有重要意义,本文所开发的系统采用了基于SNMP的网络管理协议模型,应用惠普的SNMP++软件开发包和VC6.0开发平台,实现的功能包括:网络设备接口的流量数据采集、动态在线测量、实时监控、网络异常报警等功能。并且通过对收集的数据分析实现了网络拓朴图发现、网络故障定位。从而为网络的稳定可靠运行和性能优化提供依据。本文所开发的平台为进一步扩充、完善成实用的网络管理系统提供了有益的尝试。 关键词:网络管理;简单网络管理协议;SNMP++;网络流量测量;网络拓朴发现

SNMP MIB 介绍

SNMP MIB 介紹 對MIB檔中一些常見的巨集定義的描述 1.DEFINITIONS ::= BEGIN SNMP始終使用ASN.1概念中的描述塊(module)來組織ASN.1對象的,ASN.1的描述塊是一些相關描述語句的集合,module的結構如下 <> DEFINITIONS ::= BEGIN <> <> END 2.<> ::= TEXTUAL-CONVENTION 定義了對標準資料類型的進行擴展的語法 很多MIB定義中都會先定義一些基於標準類型的擴展類型,如: CiFlowDirection ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The direction of data flow thru a circuit. transmit(1) - Only transmitted data receive(2) - Only received data both(3) - Both transmitted and received data." SYNTAX INTEGER { transmit(1), receive(2), both(3) } CiFlowDirection 是基於INTEGER的枚舉類型 3.<> MODULE-IDENTITY 該定義添加了一個公共的標示段來對整個資訊描述塊進行頂層的文字描述,以加強對管理MIB描述塊的文檔管理和控制,每個MIB定義中都會有該定義。 如: circuitIfMIB MODULE-IDENTITY 4.OBJECT-IDENTIFIFIER 聲明一個節點

SNMP AGENT介绍

SNMP AGENT介绍 一、SNMP AGENT在SNMP框架中的位置 SNMP是被广泛接受并投入使用的工业标准,它采用轮询机制,便于网络管理员检索任何节点的信息,进行修改,寻找故障;完成故障诊断,容量规划和报告生成。 SNMP的结构分为NMS和AGENT两部分(如图1.1.1),NMS(Network Management Station,目前常用的网管平台有SunNetManager和IBM NetView)向Agent发请求,Agent是驻留在被管设备上的一个进程或任务,接受到NMS的请求报文后,进行解码,分析,然后从相关模块中得到管理变量的值,生成Response 报文,编码返送回NMS。SNMP就是用来规定NMS和Agent之间是如何传递管理信息的应用层协议。 图1 SNMP结构 为了简化Agent一侧的开发,SNMP规定只有两种操作Get, Set,前者用于从被管设备获取管理信息。后者通过设置变量值来起到配置被管设备的作用。 NMS和Agent之间通过发送报文来传递管理信息,SNMPv1规定只有五种报文: Get Request报文:用于获取指定管理变量的值。 GetNext Request报文:用于连续获取一组管理变量的值。

GetResponse报文:用于响应请求,返回请求值或错误类型等。 Set Request报文:用于设置指定的管理变量。 Trap报文:用于在紧急情况下由被管设备向NMS主动发信息 二、SNMP AGENT的作用和流程 SNMP AGENT在网管站和设备上相关应用模块之间起到了一个翻译传递的作用。具体说包含两个部分:一是接收来自网管站的请求,对报文进行解码,验证团体名合法后,搜索MIB树并调用相应访问函数通知相关模块进行相应操作,并根据相关模块发回的操作结果构造响应报文,编码并发回网管站。二是提供向网管站主动报警的功能,由相关模块发起,在AGENT构造TRAP报文,并编码发送。 SNMP AGENT流程如下(以基于PSOS SNMP协议栈的AGENT为例进行介绍): 图2:SNMP_AGENT主函数流程图

相关主题