01-MIB概述
本章节下载: 01-MIB概述 (318.04 KB)
本文档介绍了设备支持的管理信息库(MIB,Management Information Base)信息,包括公有MIB和私有MIB。
设备不支持的MIB模块、表节点、和全局节点会标注为“不支持”。为避免出现未知问题,请勿访问文档标注为不支持的MIB。
对于不支持的MIB,设备也不支持该MIB包含的告警。
为保证兼容以及与第三方设备互通,软件版本可能包含已废弃或已过时的MIB或MIB节点。
用户可通过设置MIB节点来配置设备。为保证MIB节点中的设置能够通过CLI正确恢复,请遵循以下注意事项:
· 建议使用0x21到0x7E的可见字符(代表问号的字符0x3F除外)。如需使用特殊字符,请确保CLI支持该字符。例如,CLI使用空格做分隔符,使用问号显示帮助信息,如果某个值含有空格或问号,CLI可能无法恢复该值。
· 请确保MIB节点中设置的值在CLI支持的取值范围内。在某些特殊情况下,MIB节点支持的取值范围可能与CLI不同。例如,OCTET STRING类型的MIB节点支持的字符串长度可能大于CLI支持的最大范围。如果MIB节点中指定的取值超出CLI支持范围,CLI则无法恢复该取值。反之,如果通过CLI设置的值超出了MIB节点支持的取值范围,系统则无法在MIB中设置该取值。
用户可以通过如下配置,将告警信息发送到NMS(Network Management System,网络管理系统):
· 如果使用SNMP v1/v2c版本通信,请使用snmp-agent community命令配置团体名;如果使用SNMPv3版本通信,请使用snmp-agent group命令配置组、snmp-agent usm-user v3命令创建SNMPv3用户。具体配置请参见配置指导中的“SNMP”手册。
· 通过snmp-agent trap enable命令开启告警开关,对于某些模块,例如linkUp/linkDown、NQA等,需要使用其它命令开启其告警开关。模块告警功能的配置请参见对应模块的配置指导。
· 使用snmp-agent target-host命令配置接收告警信息的NMS的属性,比如NMS的IP地址以及认证参数等。
告警信息分为以下三种类型:
· 故障告警:是指由于硬件设备故障或某些重要功能异常而产生的告警。
· 恢复告警:是指故障设备或异常功能恢复正常时产生的告警。
· 事件告警:是指提示性的通知,一般不需要用户采取任何处理措施。
告警的级别表示该告警信息的严重程度,按严重性从高到低依次分为:紧急->重要->次要->警告。
恢复告警的级别默认为警告(可填写为“-”),或者根据一致性原则,与对应的故障告警的级别保持一致。
事件告警的级别默认为警告(可填写为“-”),仅特殊情况下才定义为其他级别。
告警级别说明如下:
严重等级 |
描述 |
紧急 |
故障影响到系统提供的服务,需要立即采取相应动作。比如某设备或资源完全不可用,需要进行恢复,即使该故障在非工作时间内发生,也需立即采取措施 |
重要 |
故障影响到服务质量,需要采取紧急动作。比如某设备或资源服务质量下降,需要对其进行还原,恢复全部能力,需在工作时间内立即采取措施 |
次要 |
故障还未影响到服务质量,但为了避免更严重的故障,需要在适当时候进行处理或进一步观察 |
警告 |
故障可能产生潜在的错误从而影响提供的服务,需要评估是否采取相应的措施 |
文档中定义的告警级别是网络设备对网管平台收到告警后进行呈现及处理的一种建议。
设备输出的告警信息中并不携带类型字段和级别字段,本文定义的告警信息类型和级别供网络管理员参考。
MIB定义了被管理对象之间的层次关系以及对象的一系列属性,如下图所示的树状结构进行存储。MIB树的每个节点都是一个被管理对象,每个节点都由从根开始的一条路径唯一地识别,并用一个OID(Object Identifier,对象标识符)唯一确定。
MIB文件记录了设备上所有节点的MIB信息。网络管理员在设备的网管系统上编译这些MIB文件,就能生成设备的MIB树,以便对设备进行可视化管理。
管理员通过网管系统访问设备时,需要操作的是MIB节点的某一个具体实例。根据网管系统对MIB节点使用方式的不同,我们将MIB节点分为三大类:全局节点、表节点和告警节点。
全局节点为仅有单实例值的MIB节点。例如,sysUpTime(SNMP Agent启动时间)是一个全局节点,它在当前Agent中仅存在唯一的一个实例值。网络管理员在访问该全局节点时,必须为其添加固定的索引0,以sysUpTime.0这样的形式对其进行读写操作,如下所示:
Protocol version: SNMPv2c
Operation: Get
Request binding: # 网管请求报文
1: sysUpTime.0 (TimeTicks) null
Response binding: # 设备应答报文
1: sysUpTime.0 (TimeTicks) 29 days 15h:25m:15s.64th (256111564)
表节点为支持多实例值的MIB节点。例如,ifDescr(接口描述信息)是一个表节点,不同接口对应不同的实例,拥有各自的实例值。网络管理员在访问该表节点时,必须为其添加相应的索引值,以便对不同实例下的值进行读写操作,如下所示:
Protocol version: SNMPv2c
Operation: Get
Request binding: # 网管请求报文
1: ifDescr.17 (DisplayString) null
Response binding: # 设备应答报文
1: ifDescr.17 (DisplayString) Aux0 [41.75.78.30 (hex)]
为了准确地添加表节点的索引值,请您阅读对应MIB手册中表节点信息表上方提供的“索引节点”信息。
告警节点用于描述设备主动发送的事件通告或者故障发生/故障恢复通知。
例如,下图所示的linkUp和linkDown分别为设备接口UP、DOWN时对应的告警节点信息:
每个MIB文档中均以MIB节点OID的字典序对各类MIB节点进行排序。
全局节点和表节点信息均以如下表格形式呈现:
节点名称及OID |
最大访问权限 |
数据类型 |
有效范围 |
含义 |
实现规格 |
ifIndex (1.3.6.1.2.1.2.2.1.1) |
read-only |
Integer32 |
Integer32 (1..2147483647) |
接口索引 |
实现与MIB文件定义一致 |
以上表格中的各项含义如下:
项目 |
说明 |
节点名称及OID |
该节点的OID值及节点名称 |
最大访问权限 |
该节点在MIB文件中定义的最大访问权限,对应MIB文件中的max-access子句 |
数据类型 |
该节点在MIB文件中定义的数据类型,对应MIB文件中的SYNTAX子句 |
有效范围 |
该节点在MIB文件中定义的数据有效范围,对应MIB文件中的SYNTAX子句 |
含义 |
该节点的功能简述 |
实现规格 |
该节点的功能支持情况及实现规格说明,包括以下取值; · 实现与MIB文件定义一致:表示实现完全同MIB文件中的定义 · 不支持:表示MIB节点可以访问但是并不支持或者其支持情况未进行过测试。为避免出现未知问题,请勿访问此类节点 · 该MIB节点具体的实现规格说明 |
表节点的操作支持情况以如下的表格形式呈现:
创建约束 |
修改约束 |
删除约束 |
读取约束 |
支持 |
支持 |
支持 |
支持 |
以上表格中的各项含义如下:
项目 |
说明 |
创建约束 |
该表对创建操作约束情况说明,可以为“支持”、“不支持”或者具体限制说明 |
修改约束 |
该表对修改操作约束情况说明,可以为“支持”、“不支持”或者具体限制说明 |
删除约束 |
该表对删除操作约束情况说明,可以为“支持”、“不支持”或者具体限制说明 |
读取约束 |
该表对读取操作约束情况说明,可以为“支持”、“不支持”或者具体限制说明 |
告警节点信息以如下的表格形式呈现:
OID |
告警标题 |
类型 |
级别 |
清除告警 |
缺省状态 |
1.3.6.1.6.3.1.1.5.3 |
接口链路故障 |
故障告警 |
重要 |
1.3.6.1.6.3.1.1.5.4 (linkUp) |
开启 |
以上表格中的各项含义如下:
项目 |
说明 |
OID |
该告警节点的OID值 |
告警标题 |
该告警的功能简述,可以直接呈现在网管用户界面上 |
类型 |
该告警信息的类型 |
级别 |
该告警信息的严重等级,如果是恢复告警或者事件告警,此处可能为“-”以表示“警告”级别 |
清除告警 |
该告警对应的恢复告警,如果是恢复告警或者事件告警,此处为“-” |
缺省状态 |
该告警信息缺省情况下的开关状态 |
每个告警节点拥有唯一的OID,同时,在告警消息中该告警节点可能包含0个或多个绑定变量。告警节点通过绑定变量来提供当前告警的具体信息内容,比如告警产生于哪个接口,是哪个业务触发的告警等。网管系统通过解析告警OID以及对应的告警绑定变量来实现对设备的故障管理。
每个告警节点的绑定变量由若干个MIB节点实例来描述,每个实例由“OID+索引”标识。例如,SNMPv2版本的linkUp告警节点中包括下图所示的5个绑定变量。
组成绑定变量的MIB节点有两类:协议固定类及自定义类。上图所示的linkUp告警节点包含了2个协议固定类绑定变量和3个自定义类绑定变量,其中:
· 协议固定类绑定变量包括:
¡ sysUpTime.0:表示该告警产生时间,其值为88308。
¡ snmpTrapOID.0:表示该告警的OID,其值为linkUp这个MIB节点的OID。
· 自定义类绑定变量包括:
¡ ifIndex.2:表示该告警所在接口实例(索引值为2)的接口索引,其值为2
¡ ifAdminStatus.2:表示该告警所在接口实例(索引值为2)的管理状态,其值为1
¡ ifOperStatus.2:表示该告警所在接口实例(索引值为2)的操作状态,其值为1
需要特别说的是,上文示例的linkUp告警节点绑定变量截图为网管软件对告警及其绑定变量进行过OID翻译、枚举值转换后的呈现效果,可读性好,而实际SNMP报文中携带的MIB绑定变量形式更接近于下图(一般可以通过修改网管软件的配置来切换不同的呈现效果):
自定义类绑定变量的绑定形式灵活多样,例如可以绑定多级索引变量。下图所示的teTunnelUp告警节点中未绑定索引节点,但是通过绑定变量自身携带的索引信息体现了告警所表述的具体实例:
teTunnelUp告警节点的自定义部分包括:
· teTunnelName.1:表示该告警所在隧道实例(索引值为1)的隧道名称,其值为“Tunnel1”。
· tePathName.1.0:表示该告警所在实例(有两个索引,其值分别为1和0)的管理状态,其值为一个空字符串。
关于teTunnelName.1以及tePathName.1.0的索引部分,需要结合如下两个表节点中索引节点的说明进行理解。
该表的索引节点是teTunnelIndex。
节点名称及OID |
最大访问权限 |
数据类型 |
有效范围 |
含义 |
实现规格 |
teTunnelIndex (1.3.6.1.2.1.122.1.2.1.1) |
not-accessible |
Unsigned32 |
Unsigned32 (1..2147483647) |
隧道索引 |
实现与MIB文件定义一致 |
teTunnelName (1.3.6.1.2.1.122.1.2.1.2) |
read-create |
OCTET STRING |
OCTET STRING (1..32 |
隧道名称 |
实现与MIB文件定义一致 |
通过teTunnelName表节点的描述,可以了解到该表节点的索引由teTunnelIndex组成,即teTunnelName.1中的“.1”表示当前绑定变量的实例为teTunnelIndex = 1。
该表的索引节点是teTunnelIndex、tePathIndex。
节点名称及OID |
最大访问权限 |
数据类型 |
有效范围 |
含义 |
实现规格 |
tePathIndex (1.3.6.1.2.1.122.1.3.1.1) |
not-accessible |
Unsigned32 |
Unsigned32 (1..2147483647) |
应用路径索引 |
实现与MIB文件定义一致 |
tePathName (1.3.6.1.2.1.122.1.3.1.2) |
read-create |
OCTET STRING |
OCTET STRING (1..32 |
应用路径名称 |
仅支持读操作 |
通过tePathName表节点的描述,可以了解到该表节点的索引由teTunnelIndex、tePathIndex两级组成,即tePathName.1.0中的“.1.0”表示当前绑定变量的实例为teTunnelIndex = 1且tePathIndex = 0。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!