📄 rfc3014.txt
字号:
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:oyelel(oyelel )
译文发布时间:2001-12-28
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须
保留本文档的翻译及版权信息。
Network Working Group Editor of this version:
Request for Comments: 3014 R. Kavasseri
Category: Standards Track Cisco Systems, Inc.
Author of previous version:
B. Stewart
November 2000
提示日志管理信息库
(RFC3014——Notification Log MIB)
本备忘录的状态
本文档为Internet社区提供了一个详细的Internet标准通道协议,欢迎大家讨论和提出
建议。为使本协议的声明和状态符合标准化的要求,请参阅“Internet 官方协议标准”(STD
1)。此文档发布不受任何限制。
版权声明
Copyright (C) The Internet Society (2001).
摘要
本备忘录定义了在Internet社区中与网络管理协议一起使用的管理信息库(MIB)的一
部分。特别的,它对那些用于把简单网络管理协议(SNMP)的提示记入日志的管理对象进
行了描述。
本文档中的关键字“必须”,“禁止”,“要求”,“将要”,“将不会”,“应该”,“不应该”,“推
荐”,“可能”,“可以选择”等均按照在RFC2119中描述的那样理解。
目录
1. SNMP管理框架 2
2.概述 3
2.1 环境 3
2.2.结构 4
2.3.举例 5
3.定义 5
4.知识产权 20
5.参考 21
6.安全考虑 22
7.作者地址 22
8.全部版权说明 23
1. SNMP管理框架
SNMP管理框架现在主要有五个部分组成:
o总结构,在RFC 2571中描述。
o描述和命名对象与事件的机制。这些对象与事件用于管理目的。管理信息结构(SMI)
的原始版本被称为SMIv1,它在STD 16,RFC 1155,STD 16,RFC 1212和RFC 1215中作了描
述。SMI的第二版被称为SMIv2,它在STD 58, RFC 2578 , STD 58, RFC 2579和STD 58, RFC
2580 中作了描述。.
o用于传输管理信息的通信协议。SNMP通信协议的第一版本被称为SNMPv1,它在
STD 15,RFC1157中作了描述。SNMP的第二版本SNMPv2c并不是一个Internet标
准信道协议,它在RFC 1901与RFC 1906中作了描述。第三版本SNMPv3在
RFC1906,RFC 2572与RFC2572中作了描述。
o访问管理信息的协议操作。第一组协议操作以及相关的PDU格式在STD15,RFC1157
中作了描述。第二组协议操作以及相关的PDU格式在RFC1905中作了描述。
o一组基本应用与基于观察的存取控制机制,他们分别在RFC2573和RFC2575中作
了描述。
RFC2570对现在的SNMP管理框架作了更详细的介绍。
管理对象的访问要通过一个叫“管理信息库”(MIB)的虚拟信息存储库才能进行。MIB
中的对象按照SMI中的机制进行定义。
本备忘录详细说明了一个遵守SMIv2的MIB模块。遵守SMIv1的MIB可以通过适当的
翻译产生。通过翻译产生的MIB必须在语义上是等同的,只有对象和事件才能因为无法翻
译(使用Counter64)而被省略。在翻译过程中SMIv1里某些机器可读信息应该转换成用文
本描述。但是,这些机器可读信息的损失不能改变MIB的语义。
2.概述
支持SNMP的系统通常需要一个记录提示信息的机制,这样可以防止丢失提示,不管
这些信息是陷阱还是超过返送限制的通知(RFC1905)。因此,这种MIB以本地记录功能的
形式作为其它的MIB的共同基础。它主要用于提示的发送者,但是也能为接收者所利用。
在有MIB提示日志的情况下,每个MIB承担的记录与事件相关的暂时信息的责任比较
小,相比之下,承担丢失提示信息的责任还要大一些。而且,应用程序能够向日志核对是否
丢失了重要的提示。
2.1 环境
MIB的环境主要关注:
o SNMP引擎及其背景
o安全
2.1.1 SNMP引擎与背景
一共有两种不同的信息流。这些信息流来源于可以产生多个提示的发生器,能
够记入日志。第一种信息流被记录成SNMP通知和陷阱(从一个或者多个SNMP引擎),另
一种信息流以不同于SNMP通知与陷阱的提示机制在提示发生器的接口被传送到SNMP引
擎。后一种信息流在这里作为向自己发送提示的SNMP引擎模型。此部分的剩余部分将讨
论第一种信息流(来自多个SNMP引擎的提示)的处理。
正如在SNMP基础结构(RFC2571)中所描述的那样,一个给定的系统可以支
持多个SNMP引擎,这些引擎能够独立地操作,并且都拥有自己的引擎标志。而且,在给
定的引擎范围内,可以有多个已经命名的管理背景,这些背景可以支持由MIB对象和提示
组成的有交集或者没有交集的集合。因此,理解一个特定的提示需要知道SNMP引擎以及
这个提示从何而来的管理背景。
为了给已经记入日志的提示提供必要的信息资源,MIB包含了记录提示的资源
SNMP引擎号和管理背景名字的对象。
2.1.2.安全
提示的安全比较笨拙,因为提示里的对象的访问控制只有在提示产生时才能被检测
到。因而只有本地产生的提示才能被检测出来,也只有在这时候安全许可证才是可行的。
就现在讨论的目的而言,,安全许可证是指抽象服务接口函数isAccessAllowed[RFC2571]
的输入值,而使用这些许可证意味着概念地使用isAccessAllowed去观察这些许可证是否允
许访问正在讨论的MIB对象,就像提示发生器(RFC2573)操作地那样。
提示日志管理信息库是一种命名日志。通过使用日志名字和基于观察的访问控制
(RFC2575),网络管理源可以为不同的用户提供不同的访问路径。当应用程序产生一个命名
日志时,产生者的安全许可证将与这个日志保持联系。
只拥有少量资源的管理系统可能不允许产生新的命名日志,它只提供缺省的日
志,即没有命名的日志。这样的日志没有隐含的安全许可证控制访问提示对象,提示也不会
被进一步核对。
如果把本地产生的提示记入命名日志,管理系统必须使用与这个日志相关的安全
许可证,必须应用与描述提示发生器(RFC2573)相同的访问控制规则.
不管把远程产生的提示加入命名日志还是加入缺省的没有命名的提示,管理系统
都不应该申请访问控制。在这种情况下,日志里信息的安全应该交给日志本身的访问控制,
这种访问控制是正常的,全面的。
MIB提示日志允许应用程序用nlmConfigGlobalEntryLimit来设置日志里提示数
量的最大值。类似地,应用程序可以用nlmConfigGlobalAgeOut来设置提示有效的最大时间,
在这个时间以后的提示可能就会过时。请注意多个应用程序之间的竞争:这些应用程序会试
着给对象赋不同的值。而这可能会影响单个程序运行时数据的可靠性和完整性。譬如说,一
种可能的情况是应用程序可能改变在另一个程序里设置的对象的值,这将导致一些提示在其
它应用程序访问之前就被删除。这可以被用来实施拒绝服务攻击。防止这种攻击还有待于进
一步研究。
2.2.结构
MIB由下列几部分组成:
o组成——控制日志的大小与提示的种类。
o统计——日志活动性表示。
o日志——提示本身。
2.2.1.组成
本部分包括MIB用来管理资源的对象。
本部分也包括一个详细说明哪种日志存在和这些日志怎样运作的表格。哪种提示
被记入日志决定于在标准SNMP提示MIB里snmpNotifyFilterTable定义的过滤
器,MIB由表格里的初始索引确定。
2.2.2.统计
本部分包括用于记录提示记入和丢弃的计数器,这样就提供了一种方法去理解
因为日志容量设置和资源问题而产生的问题。
2.2.3.日志
日志包括提示和来自提示变量捆绑列表的对象,当访问提示时会产生一个对应
的整数型索引。如果一个应用程序想收集日志里所有的提示,或者想知道是否丢
失了提示,它可以留意找回的最大索引,从这里开始再次查询,以检查因为已经
重新设置索引而可能不能访问的sysUpTime的中断性。
变量都保存在一个表格中,表格的索引是提示指针和提示里的变量指针。变量
的值被保存为“区别对待的公用体”,每个变量都有一个值对象。哪一种值对象
被例示决定于变量的SNMP数据类型,每一个不同的SNMP数据类型都有一个
分离的具有合适类型的对象。
因此,应用程序能够根据提示PDU(协议数据单元)和日志的记录重建信息。
2.3.举例
以下是只记录linkUp和linkDown提示的命名日志的典型结构:
In nlmConfigLogTable:
nlmConfigLogFilterName.5."links" = "link-status"
nlmConfigLogEntryLimit.5."links" = 0
nlmConfigLogAdminStatus.5."links" = enabled
nlmConfigLogOperStatus.5."links" = operational
nlmConfigLogStorageType.5."links" = nonVolatile
nlmConfigLogEntryStatus.5."links" = active
Note that snmpTraps is:
iso.org.dod.internet.snmpV2.snmpModules.snmpMIB.snmpMIBObjects.5
或者用数字表示:
1.3.6.1.6.3.1.1.5
linkDown 是 snmpTraps.3 , linkUp 是 snmpTraps.4。
snmpNotifyFilterTable允许的两个提示:
snmpNotifyFilterMask.11."link-status".1.3.6.1.6.3.1.1.5.3 = ''H
snmpNotifyFilterType.11."link-status".1.3.6.1.6.3.1.1.5.3 = include
snmpNotifyFilterStorageType.11."link-status".1.3.6.1.6.3.1.1.5.3
= nonVolatile
snmpNotifyFilterRowStatus.11."link-status".1.3.6.1.6.3.1.1.5.3
= active
snmpNotifyFilterMask.11."link-status".1.3.6.1.6.3.1.1.5.4 = ''H
snmpNotifyFilterType.11."link-status".1.3.6.1.6.3.1.1.5.4 = include
snmpNotifyFilterStorageType.11."link-status".1.3.6.1.6.3.1.1.5.4
= nonVolatile
snmpNotifyFilterRowStatus.11."link-status".1.3.6.1.6.3.1.1.5.4
= active
3.定义
NOTIFICATION-LOG-MIB DEFINITIONS ::= BEGIN
引入
MODULE-IDENTITY, OBJECT-TYPE,
Integer32, Unsigned32,
TimeTicks, Counter32, Counter64,
IpAddress, Opaque, mib-2 FROM SNMPv2-SMI
TimeStamp, DateAndTime,
StorageType, RowStatus,
TAddress, TDomain FROM SNMPv2-TC
SnmpAdminString, SnmpEngineID FROM SNMP-FRAMEWORK-MIB
MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF;
notificationLogMIB MODULE-IDENTITY
LAST-UPDATED "200011270000Z" -- 27 November 2000
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO "Ramanathan Kavasseri
Cisco Systems, Inc.
170 West Tasman Drive,
San Jose CA 95134-1706.
Phone: +1 408 527 2446
Email: ramk@cisco.com"
描述
“用于记录SNMP提示的MIB模块,也就是陷阱与通知。”
--修改历史
修改 "200011270000Z" ——2000年11月27日
描述 “这是MIB的第一版本,发表于RFC3014。”
::= { mib-2 92 }
notificationLogMIBObjects OBJECT IDENTIFIER ::= { notificationLogMIB 1 }
nlmConfig OBJECT IDENTIFIER ::= { notificationLogMIBObjects 1 }
nlmStats OBJECT IDENTIFIER ::= { notificationLogMIBObjects 2 }
nlmLog OBJECT IDENTIFIER ::= { notificationLogMIBObjects 3 }
--
-- 设置部分
--
nlmConfigGlobalEntryLimit OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-write
STATUS current
描述
“在命名日志中nlmLogTable能容纳的最大提示数。特殊的设置并不能保证容纳
更多的数据。
如果应用程序在日志里有提示时改变了提示的限制,最早的提示必须删除以接受
新设置的限制。因此nlmConfigGlobalEntryLimit的值必须优先于
nlmConfigGlobalAgeOut 和 nlmConfigLogEntryLimit的值,即使正在删除的提示
存在的时间没有超过nlmConfigGlobalAgeOut的值或者命名日志的条目比
nlmConfigLogEntryLimit规定的数目要少也是如此。
0值表示没有限制。
请注意多个管理者之间的竞争:这些管理者会试着给对象赋不同的值。而这可能
会影响单个管理者所见到的数据的可靠性和完整性。”
DEFVAL { 0 }
::= { nlmConfig 1 }
nlmConfigGlobalAgeOut OBJECT-TYPE
SYNTAX Unsigned32
UNITS "minutes"
MAX-ACCESS read-write
STATUS current
描述
“日志中提示应该保存的时间。如果超过这个时间,提示会自动删除。
如果应用程序改变nlmConfigGlobalAgeOut的值,在新时间之前创建的提示可
能被删除。
0只表示没有提示过时。
请注意多个管理者之间的竞争:这些管理者会试着给对象赋不同的值。而这可
能会影响单个管理者所见到的数据的可靠性和完整性。”
DEFVAL { 1440 } -- 24 hours
::= { nlmConfig 2 }
--
-- 基本日志提示表
--
nlmConfigLogTable OBJECT-TYPE
SYNTAX SEQUENCE OF NlmConfigLogEntry
MAX-ACCESS not-accessible
STATUS current
描述
“记入控制条目表格。”
::= { nlmConfig 3 }
nlmConfigLogEntry OBJECT-TYPE
SYNTAX NlmConfigLogEntry
MAX-ACCESS not-accessible
STATUS current
描述
“记入控制条目。根据存储类型的不同,条目可以由系统提供,也可以有应用
程序使用nlmConfigLogEntryStatus创建和删除。”
INDEX { nlmLogName }
::= { nlmConfigLogTable 1 }
NlmConfigLogEntry ::= SEQUENCE {
nlmLogName SnmpAdminString,
nlmConfigLogFilterName SnmpAdminString,
nlmConfigLogEntryLimit Unsigned32,
nlmConfigLogAdminStatus INTEGER,
nlmConfigLogOperStatus INTEGER,
nlmConfigLogStorageType StorageType,
nlmConfigLogEntryStatus RowStatus
}
nlmLogName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS not-accessible
STATUS current
描述
“日志名。
执行程序可以访问多个命名日志,命名日志的数目决定于具体的执行程序设置
的极限(也可能没有)。零长度日志名保留给管理系统创建和删除日志时使用,不支持命名
日志的系统必须把零长度日志名作为缺省的日志名。”
::= { nlmConfigLogEntry 1 }
nlmConfigLogFilterName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE(0..32))
MAX-ACCESS read-create
STATUS current
描述
“snmpNotifyFilterProfileName的值。SnmpNotifyFilterProfileName用作SNMP
提示MIB里的snmpNotifyFilterTable的索引,它决定本地或者远程产生的提示中哪些被过滤
不能记入日志中。
如果snmpNotifyFilterProfileName的值为零长度,或者名字没有指向
snmpNotifyFilterTable已经存在的条目,这就表明没有日志需要记入这个日志中。”
DEFVAL { ''H }
::= { nlmConfigLogEntry 2 }
nlmConfigLogEntryLimit OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-create
STATUS current
描述
“命名日志中nlmLogTable能容纳的提示条目的最大值。特殊的设置并不能
保证容纳更多的数据。
如果应用程序在日志里有提示时改变了提示的限制,最早的提示必须删除
以接受新设置的限制。
0值表示没有限制。
请注意多个管理者之间的竞争:这些管理者会试着给对象赋不同的值。而
这可能会影响单个管理者所见到的数据的可靠性和完整性。”
DEFVAL { 0 }
::= { nlmConfigLogEntry 3 }
nlmConfigLogAdminStatus OBJECT-TYPE
SYNTAX INTEGER { enabled(1), disabled(2) }
MAX-ACCESS read-create
STATUS current
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -