Network Working Group                                            D. Levi
Request for Comments: 3231                               Nortel Networks
Obsoletes: 2591                                         J. Schoenwaelder
Category: Standards Track                                TU Braunschweig
                                                            January 2002
        
Network Working Group                                            D. Levi
Request for Comments: 3231                               Nortel Networks
Obsoletes: 2591                                         J. Schoenwaelder
Category: Standards Track                                TU Braunschweig
                                                            January 2002
        

Definitions of Managed Objects for Scheduling Management Operations

用于计划管理操作的托管对象的定义

Status of this Memo

本备忘录的状况

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。

Copyright Notice

版权公告

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

Abstract

摘要

This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes a set of managed objects that are used to schedule management operations periodically or at specified dates and times.

此备忘录定义了管理信息库(MIB)的一部分,用于Internet社区中的网络管理协议。特别是,它描述了一组用于定期或在指定日期和时间安排管理操作的托管对象。

This document obsoletes RFC 2591.

本文件废除了RFC 2591。

Table of Contents

目录

   1 Introduction .................................................    2
   2 The SNMP Management Framework ................................    2
   3 Overview .....................................................    3
   3.1 Periodic Schedules .........................................    4
   3.2 Calendar Schedules .........................................    4
   3.3 One-shot Schedules .........................................    5
   3.4 Time Transitions ...........................................    5
   3.5 Actions ....................................................    5
   4 Definitions ..................................................    6
   5 Usage Examples ...............................................   20
   5.1 Starting a script to ping devices every 20 minutes .........   20
   5.2 Starting a script at the next Friday the 13th ..............   21
   5.3 Turning an interface off during weekends ...................   22
        
   1 Introduction .................................................    2
   2 The SNMP Management Framework ................................    2
   3 Overview .....................................................    3
   3.1 Periodic Schedules .........................................    4
   3.2 Calendar Schedules .........................................    4
   3.3 One-shot Schedules .........................................    5
   3.4 Time Transitions ...........................................    5
   3.5 Actions ....................................................    5
   4 Definitions ..................................................    6
   5 Usage Examples ...............................................   20
   5.1 Starting a script to ping devices every 20 minutes .........   20
   5.2 Starting a script at the next Friday the 13th ..............   21
   5.3 Turning an interface off during weekends ...................   22
        
   6 Security Considerations ......................................   23
   7 Intellectual Property ........................................   25
   8 Changes from RFC 2591 ........................................   25
   9 Acknowledgments ..............................................   26
   10 References ..................................................   26
   11 Editors' Addresses ..........................................   28
   12 Full Copyright Statement ....................................   29
        
   6 Security Considerations ......................................   23
   7 Intellectual Property ........................................   25
   8 Changes from RFC 2591 ........................................   25
   9 Acknowledgments ..............................................   26
   10 References ..................................................   26
   11 Editors' Addresses ..........................................   28
   12 Full Copyright Statement ....................................   29
        
1. Introduction
1. 介绍

This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes a set of managed objects that are used to schedule management operations periodically or at specified dates and times.

此备忘录定义了管理信息库(MIB)的一部分,用于Internet社区中的网络管理协议。特别是,它描述了一组用于定期或在指定日期和时间安排管理操作的托管对象。

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].

本文件中的关键词“必须”、“不得”、“要求”、“应”、“不应”、“应”、“不应”、“建议”、“可”和“可选”应按照RFC 2119[RFC2119]中所述进行解释。

2. The SNMP Management Framework
2. SNMP管理框架

The SNMP Management Framework presently consists of five major components:

SNMP管理框架目前由五个主要组件组成:

o An overall architecture, described in RFC 2571 [RFC2571].

o RFC 2571[RFC2571]中描述的总体架构。

o Mechanisms for describing and naming objects and events for the purpose of management. The first version of this Structure of Management Information (SMI) is called SMIv1 and described in STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC 1215 [RFC1215]. The second version, called SMIv2, is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580].

o 为管理目的描述和命名对象和事件的机制。这种管理信息结构(SMI)的第一个版本称为SMIv1,并在STD 16、RFC 1155[RFC1155]、STD 16、RFC 1212[RFC1212]和RFC 1215[RFC1215]中进行了描述。第二个版本称为SMIv2,在STD 58、RFC 2578[RFC2578]、STD 58、RFC 2579[RFC2579]和STD 58、RFC 2580[RFC2580]中进行了描述。

o Message protocols for transferring management information. The first version of the SNMP message protocol is called SNMPv1 and described in STD 15, RFC 1157 [RFC1157]. A second version of the SNMP message protocol, which is not an Internet standards track protocol, is called SNMPv2c and described in RFC 1901 [RFC1901] and RFC 1906 [RFC1906]. The third version of the message protocol is called SNMPv3 and described in RFC 1906 [RFC1906], RFC 2572 [RFC2572] and RFC 2574 [RFC2574].

o 用于传输管理信息的消息协议。SNMP消息协议的第一个版本称为SNMPv1,在STD 15 RFC 1157[RFC1157]中进行了描述。SNMP消息协议的第二个版本不是Internet标准跟踪协议,称为SNMPv2c,在RFC 1901[RFC1901]和RFC 1906[RFC1906]中进行了描述。消息协议的第三个版本称为SNMPv3,在RFC 1906[RFC1906]、RFC 2572[RFC2572]和RFC 2574[RFC2574]中进行了描述。

o Protocol operations for accessing management information. The first set of protocol operations and associated PDU formats is described in STD 15, RFC 1157 [RFC1157]. A second set of protocol operations and associated PDU formats is described in RFC 1905 [RFC1905].

o 访问管理信息的协议操作。STD 15、RFC 1157[RFC1157]中描述了第一组协议操作和相关PDU格式。RFC 1905[RFC1905]中描述了第二组协议操作和相关PDU格式。

o A set of fundamental applications described in RFC 2573 [RFC2573] and the view-based access control mechanism described in RFC 2575 [RFC2575].

o RFC 2573[RFC2573]中描述的一组基本应用程序和RFC 2575[RFC2575]中描述的基于视图的访问控制机制。

A more detailed introduction to the current SNMP Management Framework can be found in RFC 2570 [RFC2570].

有关当前SNMP管理框架的更详细介绍,请参见RFC 2570[RFC2570]。

Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. Objects in the MIB are defined using the mechanisms defined in the SMI.

托管对象通过虚拟信息存储(称为管理信息库或MIB)进行访问。MIB中的对象是使用SMI中定义的机制定义的。

This memo specifies a MIB module that is compliant to the SMIv2. A MIB conforming to the SMIv1 can be produced through the appropriate translations. The resulting translated MIB must be semantically equivalent, except where objects or events are omitted because no translation is possible (use of Counter64). Some machine readable information in SMIv2 will be converted into textual descriptions in SMIv1 during the translation process. However, this loss of machine readable information is not considered to change the semantics of the MIB.

此备忘录指定了符合SMIv2的MIB模块。通过适当的翻译,可以生成符合SMIv1的MIB。生成的已翻译MIB必须在语义上等效,除非由于无法翻译而省略了对象或事件(使用计数器64)。在翻译过程中,SMIv2中的一些机器可读信息将转换为SMIv1中的文本描述。但是,这种机器可读信息的丢失不被认为会改变MIB的语义。

3. Overview
3. 概述

The MIB defined in this memo provides the scheduling of actions periodically or at specified dates and times. The actions can be used to realize on-duty / off-duty schedules or to trigger management functions in a distributed management application.

本备忘录中定义的MIB定期或在指定日期和时间提供行动计划。这些操作可用于实现值班/下班计划,或触发分布式管理应用程序中的管理功能。

Schedules can be enabled or disabled by modifying a control object. This allows for pre-configured schedules which are activated or deactivated by some other management functions.

可以通过修改控件对象来启用或禁用明细表。这允许通过一些其他管理功能激活或停用预先配置的计划。

The term `scheduler' is used throughout this memo to refer to the entity which implements the scheduling MIB and which invokes the actions at the specified points in time.

本备忘录中使用的术语“调度器”是指实现调度MIB并在指定时间点调用操作的实体。

3.1. Periodic Schedules
3.1. 定期时间表

Periodic schedules are based on fixed time periods between the initiation of scheduled actions. Periodic schedules are defined by specifying the number of seconds between two initiations. The time needed to complete the action is usually not known by the scheduler and does therefore not influence the next scheduling point.

定期计划基于启动计划行动之间的固定时间段。定期计划通过指定两次启动之间的秒数来定义。调度程序通常不知道完成操作所需的时间,因此不会影响下一个调度点。

Implementations must guarantee that action invocations will not occur before their next scheduled time. However, implementations may be forced to delay invocations in the face of local constraints (e.g., a heavy load on higher-priority tasks). An accumulation of such delays would result in a drift of the scheduling interval with respect to time, and should be avoided.

实现必须保证操作调用不会在下一个计划时间之前发生。然而,在面对局部约束(例如,高优先级任务的繁重负载)时,实现可能会被迫延迟调用。此类延迟的累积将导致调度间隔相对于时间的漂移,应予以避免。

Scheduled actions collecting statistical data should retrieve time stamps from the data source and not rely on the accuracy of the periodic scheduler in order to obtain accurate statistics.

收集统计数据的计划操作应该从数据源检索时间戳,而不是依赖周期计划程序的准确性来获得准确的统计数据。

3.2. Calendar Schedules
3.2. 日历时间表

Calendar schedules trigger scheduled actions at specified days of the week and days of the month. Calendar schedules are therefore aware of the notion of months, days, weekdays, hours and minutes.

日历计划在一周的指定日期和一个月的指定日期触发计划的操作。因此,日历时间表了解月、日、工作日、小时和分钟的概念。

It is possible to specify multiple values for each calendar item. This provides a mechanism for defining complex schedules. For example, a schedule could be defined which triggers an action every 15 minutes on a given weekday.

可以为每个日历项指定多个值。这提供了一种定义复杂计划的机制。例如,可以定义一个时间表,在给定的工作日每15分钟触发一次操作。

Months, days and weekdays are specified using the objects schedMonth, schedDay and schedWeekDay of type BITS. Setting multiple bits to one in these objects causes an OR operation. For example, setting the bits monday(1) and friday(5) in schedWeekDay restricts the schedule to Mondays and Fridays.

使用BITS类型的对象schedMonth、schedDay和schedWeekDay指定月、日和工作日。将这些对象中的多个位设置为一会导致OR操作。例如,在schedWeekDay中设置位monday(1)和friday(5)将日程限制为周一和周五。

The bit fields for schedMonth, schedDay and schedWeekDay are combined using an AND operation. For example, setting the bits june(5) and july(6) in schedMonth and combining it with the bits monday(1) and friday(5) set in schedWeekDay will result in a schedule which is restricted to every Monday and Friday in the months June and July. Wildcarding of calendar items is achieved by setting all bits to one.

schedMonth、schedDay和schedWeekDay的位字段使用and操作组合。例如,在schedMonth中设置bits june(5)和july(6),并将其与schedWeekDay中设置的bits monday(1)和friday(5)相结合,将生成一个仅限于6月和7月的每个周一和周五的计划。通过将所有位设置为一,可以实现日历项的通配符。

It is possible to define calendar schedules that will never trigger an action. For example, one can define a calendar schedule which should trigger an action on February 31st. Schedules like this will simply be ignored by the scheduler.

可以定义永远不会触发操作的日历计划。例如,可以定义一个日历计划,该计划应在2月31日触发一个操作。这样的计划将被调度器忽略。

Finally, calendar schedules are always expressed in local time. A scalar, schedLocalTime, is provided so that a manager can retrieve the notion of local time and the offset to GMT time.

最后,日历时间表总是以当地时间表示。提供了一个标量schedLocalTime,以便管理器可以检索本地时间的概念和GMT时间的偏移量。

3.3. One-shot Schedules
3.3. 一次性时间表

One-shot Schedules are similar to calendar schedules. The difference between a calendar schedule and a one-shot schedule is that a one-shot schedule will automatically disable itself once an action has been invoked.

一次性计划类似于日历计划。日历计划和一次性计划之间的区别在于,一旦调用某个操作,一次性计划将自动禁用自身。

3.4. Time Transitions
3.4. 时间转换

A time transition occurs when the Schedule MIB's notion of time (as reported by schedLocalTime) is changed so that time continuity is lost. Time transitions may be caused by daylight savings times or administrative changes of the system's notion of time.

当Schedule MIB的时间概念(如schedLocalTime所报告的)发生更改,导致时间连续性丢失时,就会发生时间转换。时间转换可能由夏令时或系统时间概念的管理更改引起。

There are two possible situations when a time transition occurs.

发生时间转换时有两种可能的情况。

First, time may be set backwards, in which case particular times will appear to occur twice. These are called 'ambiguous times'. Second, time may be set forwards, in which case particular times will not occur. These are called 'nonexistent times'.

首先,时间可以向后设置,在这种情况下,特定时间将出现两次。这些被称为“模糊时间”。第二,时间可以向前设置,在这种情况下,不会出现特定的时间。这些被称为“不存在的时间”。

When an action is configured in the Schedule MIB to occur at an ambiguous time, the action will be invoked at all occurrences of the ambiguous time. For example, if an action is scheduled to occur at 2:10 am, and a time transition occurs at 3:00 am which sets the clock back to 2:00 am, the action will be invoked twice.

当在Schedule MIB中将某个操作配置为在不明确的时间发生时,该操作将在该不明确的时间的所有事件中调用。例如,如果某个操作计划在凌晨2:10发生,并且在凌晨3:00发生时间转换,将时钟设置回凌晨2:00,则该操作将被调用两次。

When an action is configured in the Schedule MIB to occur at a nonexistent time, the action will not be invoked at all. For example, if an action is scheduled to occur at 2:10 am, and a time transition occurs at 2:00 am which sets the clock to 3:00 am, the action will not be invoked.

当在ScheduleMIB中配置一个操作在不存在的时间发生时,将根本不会调用该操作。例如,如果某个操作计划在凌晨2:10发生,并且在凌晨2:00发生时间转换,将时钟设置为凌晨3:00,则不会调用该操作。

3.5. Actions
3.5. 行动

Scheduled actions are modeled by SNMP set operations on local MIB variables. Scheduled actions described in this MIB are further restricted to objects of type INTEGER. This restriction does not limit the usefulness of the MIB. Simple schedules such as on-duty / off-duty schedules for resources that have a status MIB object (e.g. ifAdminStatus) are possible.

计划的操作由对本地MIB变量的SNMP集操作建模。此MIB中描述的计划操作进一步限制为INTEGER类型的对象。此限制并不限制MIB的用途。对于具有状态MIB对象(例如ifAdminStatus)的资源,可以使用简单的时间表,例如值班/下班时间表。

More complex actions can be realized by triggering a management script which is responsible for performing complex state transitions. A management script can also be used to perform SNMP set operations on remote SNMP engines.

通过触发负责执行复杂状态转换的管理脚本,可以实现更复杂的操作。管理脚本还可用于在远程SNMP引擎上执行SNMP集操作。

4. Definitions
4. 定义
   DISMAN-SCHEDULE-MIB DEFINITIONS ::= BEGIN
        
   DISMAN-SCHEDULE-MIB DEFINITIONS ::= BEGIN
        

IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Unsigned32, Counter32, mib-2, zeroDotZero FROM SNMPv2-SMI

从SNMPv2 SMI导入MODULE-IDENTITY、OBJECT-TYPE、NOTIFICATION-TYPE、Integer32、Unsigned32、Counter32、mib-2、zeroDotZero

TEXTUAL-CONVENTION, DateAndTime, RowStatus, StorageType, VariablePointer FROM SNMPv2-TC

文本约定、日期和时间、行状态、存储类型、SNMPv2 TC中的变量指针

MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF

来自SNMPv2 CONF的MODULE-COMPLIANCE、OBJECT-GROUP、NOTIFICATION-GROUP

SnmpAdminString FROM SNMP-FRAMEWORK-MIB;

SNMP-FRAMEWORK-MIB的snmpadmin安装;

schedMIB MODULE-IDENTITY LAST-UPDATED "200201070000Z" ORGANIZATION "IETF Distributed Management Working Group" CONTACT-INFO "WG EMail: disman@dorothy.bmc.com Subscribe: disman-request@dorothy.bmc.com

schedMIB模块标识最后更新的“200201070000Z”组织“IETF分布式管理工作组”联系方式工作组电子邮件:disman@dorothy.bmc.com订阅:Deman-request@dorothy.bmc.com

Chair: Randy Presuhn BMC Software, Inc. Postal: Office 1-3141 2141 North First Street San Jose, California 95131 USA EMail: rpresuhn@bmc.com Phone: +1 408 546-1006

主席:Randy Presohn BMC Software,Inc.邮政编码:1-3141 2141美国加利福尼亚州圣何塞北第一街95131电子邮件:rpresuhn@bmc.com电话:+1408 546-1006

Editor: David B. Levi Nortel Networks Postal: 4401 Great America Parkway Santa Clara, CA 95052-8185 USA EMail: dlevi@nortelnetworks.com Phone: +1 865 686 0432

编辑:David B.Levi Nortel Networks邮政:美国加利福尼亚州圣克拉拉大美洲大道4401号95052-8185电子邮件:dlevi@nortelnetworks.com电话:+18656860432

Editor: Juergen Schoenwaelder TU Braunschweig Postal: Bueltenweg 74/75 38106 Braunschweig Germany EMail: schoenw@ibr.cs.tu-bs.de Phone: +49 531 391-3283" DESCRIPTION "This MIB module defines a MIB which provides mechanisms to schedule SNMP set operations periodically or at specific points in time." REVISION "200201070000Z" DESCRIPTION "Revised version, published as RFC 3231.

编辑:Juergen Schoenwaelder TU Braunchweig邮政:Bueltenweg 74/75 38106 Braunchweig Germany电子邮件:schoenw@ibr.cs.tu-bs.de电话:+49 531 391-3283“说明”此MIB模块定义了一个MIB,该MIB提供定期或在特定时间点安排SNMP集操作的机制。“修订版”200201070000Z“说明”修订版,作为RFC 3231出版。

This revision introduces a new object type called schedTriggers. Created new conformance and compliance statements that take care of the new schedTriggers object.

此修订版引入了一种称为schedTriggers的新对象类型。创建了新的符合性和符合性语句,用于处理新的schedTriggers对象。

            Several clarifications have been added to remove ambiguities
            that were discovered and reported by implementors."
       REVISION    "199811171800Z"
       DESCRIPTION
           "Initial version, published as RFC 2591."
       ::= { mib-2 63 }
        
            Several clarifications have been added to remove ambiguities
            that were discovered and reported by implementors."
       REVISION    "199811171800Z"
       DESCRIPTION
           "Initial version, published as RFC 2591."
       ::= { mib-2 63 }
        

-- -- The various groups defined within this MIB definition: --

----在此MIB定义中定义的各种组:--

   schedObjects       OBJECT IDENTIFIER ::= { schedMIB 1 }
   schedNotifications OBJECT IDENTIFIER ::= { schedMIB 2 }
   schedConformance   OBJECT IDENTIFIER ::= { schedMIB 3 }
        
   schedObjects       OBJECT IDENTIFIER ::= { schedMIB 1 }
   schedNotifications OBJECT IDENTIFIER ::= { schedMIB 2 }
   schedConformance   OBJECT IDENTIFIER ::= { schedMIB 3 }
        

-- -- Textual Conventions: --

----文本约定:--

   SnmpPduErrorStatus ::= TEXTUAL-CONVENTION
       STATUS       current
       DESCRIPTION
           "This TC enumerates the SNMPv1 and SNMPv2 PDU error status
            codes as defined in RFC 1157 and RFC 1905.  It also adds a
            pseudo error status code `noResponse' which indicates a
            timeout condition."
       SYNTAX      INTEGER {
                       noResponse(-1),
                       noError(0),
        
   SnmpPduErrorStatus ::= TEXTUAL-CONVENTION
       STATUS       current
       DESCRIPTION
           "This TC enumerates the SNMPv1 and SNMPv2 PDU error status
            codes as defined in RFC 1157 and RFC 1905.  It also adds a
            pseudo error status code `noResponse' which indicates a
            timeout condition."
       SYNTAX      INTEGER {
                       noResponse(-1),
                       noError(0),
        

tooBig(1), noSuchName(2), badValue(3), readOnly(4), genErr(5), noAccess(6), wrongType(7), wrongLength(8), wrongEncoding(9), wrongValue(10), noCreation(11), inconsistentValue(12), resourceUnavailable(13), commitFailed(14), undoFailed(15), authorizationError(16), notWritable(17), inconsistentName(18) }

tooBig(1)、noSuchName(2)、badValue(3)、readOnly(4)、genErr(5)、noAccess(6)、ErrorType(7)、ErrorLength(8)、ErrorEncoding(9)、ErrorValue(10)、noCreation(11)、inconsistentValue(12)、resourceUnavailable(13)、commitFailed(14)、undoFailed(15)、authorizationError(16)、notWritable(17)、inconsistentName(18)})

-- -- Some scalars which provide information about the local time zone. --

----提供本地时区信息的一些标量--

   schedLocalTime OBJECT-TYPE
       SYNTAX      DateAndTime (SIZE (11))
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The local time used by the scheduler.  Schedules which
            refer to calendar time will use the local time indicated
            by this object.  An implementation MUST return all 11 bytes
            of the DateAndTime textual-convention so that a manager
            may retrieve the offset from GMT time."
       ::= { schedObjects 1 }
        
   schedLocalTime OBJECT-TYPE
       SYNTAX      DateAndTime (SIZE (11))
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The local time used by the scheduler.  Schedules which
            refer to calendar time will use the local time indicated
            by this object.  An implementation MUST return all 11 bytes
            of the DateAndTime textual-convention so that a manager
            may retrieve the offset from GMT time."
       ::= { schedObjects 1 }
        

-- -- The schedule table which controls the scheduler. --

----控制调度程序的调度表--

   schedTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF SchedEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "This table defines scheduled actions triggered by
            SNMP set operations."
       ::= { schedObjects 2 }
        
   schedTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF SchedEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "This table defines scheduled actions triggered by
            SNMP set operations."
       ::= { schedObjects 2 }
        

schedEntry OBJECT-TYPE SYNTAX SchedEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry describing a particular scheduled action.

schedEntry对象类型语法schedEntry MAX-ACCESS不可访问状态当前描述“描述特定计划操作的条目。

            Unless noted otherwise, writable objects of this row
            can be modified independent of the current value of
            schedRowStatus, schedAdminStatus and schedOperStatus.
            In particular, it is legal to modify schedInterval
            and the objects in the schedCalendarGroup when
            schedRowStatus is active and schedAdminStatus and
            schedOperStatus are both enabled."
       INDEX { schedOwner, schedName }
       ::= { schedTable 1 }
        
            Unless noted otherwise, writable objects of this row
            can be modified independent of the current value of
            schedRowStatus, schedAdminStatus and schedOperStatus.
            In particular, it is legal to modify schedInterval
            and the objects in the schedCalendarGroup when
            schedRowStatus is active and schedAdminStatus and
            schedOperStatus are both enabled."
       INDEX { schedOwner, schedName }
       ::= { schedTable 1 }
        
   SchedEntry ::= SEQUENCE {
       schedOwner          SnmpAdminString,
       schedName           SnmpAdminString,
       schedDescr          SnmpAdminString,
       schedInterval       Unsigned32,
       schedWeekDay        BITS,
       schedMonth          BITS,
       schedDay            BITS,
       schedHour           BITS,
       schedMinute         BITS,
       schedContextName    SnmpAdminString,
       schedVariable       VariablePointer,
       schedValue          Integer32,
       schedType           INTEGER,
       schedAdminStatus    INTEGER,
       schedOperStatus     INTEGER,
       schedFailures       Counter32,
       schedLastFailure    SnmpPduErrorStatus,
       schedLastFailed     DateAndTime,
       schedStorageType    StorageType,
       schedRowStatus      RowStatus,
       schedTriggers       Counter32
   }
        
   SchedEntry ::= SEQUENCE {
       schedOwner          SnmpAdminString,
       schedName           SnmpAdminString,
       schedDescr          SnmpAdminString,
       schedInterval       Unsigned32,
       schedWeekDay        BITS,
       schedMonth          BITS,
       schedDay            BITS,
       schedHour           BITS,
       schedMinute         BITS,
       schedContextName    SnmpAdminString,
       schedVariable       VariablePointer,
       schedValue          Integer32,
       schedType           INTEGER,
       schedAdminStatus    INTEGER,
       schedOperStatus     INTEGER,
       schedFailures       Counter32,
       schedLastFailure    SnmpPduErrorStatus,
       schedLastFailed     DateAndTime,
       schedStorageType    StorageType,
       schedRowStatus      RowStatus,
       schedTriggers       Counter32
   }
        

schedOwner OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..32)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The owner of this scheduling entry. The exact semantics of this string are subject to the security policy defined by

schedOwner对象类型语法SnmpAdminString(大小(0..32))MAX-ACCESS not accessible STATUS current DESCRIPTION“此调度条目的所有者。此字符串的确切语义受

            the security administrator."
       ::= { schedEntry 1 }
        
            the security administrator."
       ::= { schedEntry 1 }
        
   schedName OBJECT-TYPE
       SYNTAX      SnmpAdminString (SIZE(1..32))
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The locally-unique, administratively assigned name for this
            scheduling entry.  This object allows a schedOwner to have
            multiple entries in the schedTable."
       ::= { schedEntry 2 }
        
   schedName OBJECT-TYPE
       SYNTAX      SnmpAdminString (SIZE(1..32))
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The locally-unique, administratively assigned name for this
            scheduling entry.  This object allows a schedOwner to have
            multiple entries in the schedTable."
       ::= { schedEntry 2 }
        
   schedDescr OBJECT-TYPE
       SYNTAX      SnmpAdminString
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The human readable description of the purpose of this
            scheduling entry."
       DEFVAL      { "" }
       ::= { schedEntry 3 }
        
   schedDescr OBJECT-TYPE
       SYNTAX      SnmpAdminString
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The human readable description of the purpose of this
            scheduling entry."
       DEFVAL      { "" }
       ::= { schedEntry 3 }
        

schedInterval OBJECT-TYPE SYNTAX Unsigned32 UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The number of seconds between two action invocations of a periodic scheduler. Implementations must guarantee that action invocations will not occur before at least schedInterval seconds have passed.

schedInterval对象类型语法Unsigned32个单位“秒”MAX-ACCESS read create STATUS current DESCRIPTION“周期计划程序的两次操作调用之间的秒数。实现必须保证在至少超过schedInterval秒之前不会发生操作调用。

The scheduler must ignore all periodic schedules that have a schedInterval value of 0. A periodic schedule with a scheduling interval of 0 seconds will therefore never invoke an action.

计划程序必须忽略schedInterval值为0的所有定期计划。因此,计划间隔为0秒的定期计划将永远不会调用操作。

Implementations may be forced to delay invocations in the face of local constraints. A scheduled management function should therefore not rely on the accuracy provided by the scheduler implementation.

面对局部约束,实现可能被迫延迟调用。因此,计划管理功能不应依赖于调度器实现提供的准确性。

Note that implementations which maintain a list of pending activations must re-calculate them when this object is changed." DEFVAL { 0 }

请注意,维护挂起激活列表的实现必须在更改此对象时重新计算它们。“deffal{0}”

       ::= { schedEntry 4 }
        
       ::= { schedEntry 4 }
        
   schedWeekDay OBJECT-TYPE
       SYNTAX      BITS {
                       sunday(0),
                       monday(1),
                       tuesday(2),
                       wednesday(3),
                       thursday(4),
                       friday(5),
                       saturday(6)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of weekdays on which the scheduled action should
            take place.  Setting multiple bits will include several
            weekdays in the set of possible weekdays for this schedule.
            Setting all bits will cause the scheduler to ignore the
            weekday.
        
   schedWeekDay OBJECT-TYPE
       SYNTAX      BITS {
                       sunday(0),
                       monday(1),
                       tuesday(2),
                       wednesday(3),
                       thursday(4),
                       friday(5),
                       saturday(6)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of weekdays on which the scheduled action should
            take place.  Setting multiple bits will include several
            weekdays in the set of possible weekdays for this schedule.
            Setting all bits will cause the scheduler to ignore the
            weekday.
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 5 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 5 }
        
   schedMonth OBJECT-TYPE
       SYNTAX      BITS {
                       january(0),
                       february(1),
                       march(2),
                       april(3),
                       may(4),
                       june(5),
                       july(6),
                       august(7),
                       september(8),
                       october(9),
                       november(10),
                       december(11)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of months during which the scheduled action should
            take place.  Setting multiple bits will include several
            months in the set of possible months for this schedule.
        
   schedMonth OBJECT-TYPE
       SYNTAX      BITS {
                       january(0),
                       february(1),
                       march(2),
                       april(3),
                       may(4),
                       june(5),
                       july(6),
                       august(7),
                       september(8),
                       october(9),
                       november(10),
                       december(11)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of months during which the scheduled action should
            take place.  Setting multiple bits will include several
            months in the set of possible months for this schedule.
        

Setting all bits will cause the scheduler to ignore the month.

设置所有位将导致计划程序忽略月份。

            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 6 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 6 }
        
   schedDay OBJECT-TYPE
       SYNTAX      BITS {
                       d1(0),   d2(1),   d3(2),   d4(3),   d5(4),
                       d6(5),   d7(6),   d8(7),   d9(8),   d10(9),
                       d11(10), d12(11), d13(12), d14(13), d15(14),
                       d16(15), d17(16), d18(17), d19(18), d20(19),
                       d21(20), d22(21), d23(22), d24(23), d25(24),
                       d26(25), d27(26), d28(27), d29(28), d30(29),
                       d31(30),
                       r1(31),  r2(32),  r3(33),  r4(34),  r5(35),
                       r6(36),  r7(37),  r8(38),  r9(39),  r10(40),
                       r11(41), r12(42), r13(43), r14(44), r15(45),
                       r16(46), r17(47), r18(48), r19(49), r20(50),
                       r21(51), r22(52), r23(53), r24(54), r25(55),
                       r26(56), r27(57), r28(58), r29(59), r30(60),
                       r31(61)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of days in a month on which a scheduled action
            should take place.  There are two sets of bits one can
            use to define the day within a month:
        
   schedDay OBJECT-TYPE
       SYNTAX      BITS {
                       d1(0),   d2(1),   d3(2),   d4(3),   d5(4),
                       d6(5),   d7(6),   d8(7),   d9(8),   d10(9),
                       d11(10), d12(11), d13(12), d14(13), d15(14),
                       d16(15), d17(16), d18(17), d19(18), d20(19),
                       d21(20), d22(21), d23(22), d24(23), d25(24),
                       d26(25), d27(26), d28(27), d29(28), d30(29),
                       d31(30),
                       r1(31),  r2(32),  r3(33),  r4(34),  r5(35),
                       r6(36),  r7(37),  r8(38),  r9(39),  r10(40),
                       r11(41), r12(42), r13(43), r14(44), r15(45),
                       r16(46), r17(47), r18(48), r19(49), r20(50),
                       r21(51), r22(52), r23(53), r24(54), r25(55),
                       r26(56), r27(57), r28(58), r29(59), r30(60),
                       r31(61)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of days in a month on which a scheduled action
            should take place.  There are two sets of bits one can
            use to define the day within a month:
        

Enumerations starting with the letter 'd' indicate a day in a month relative to the first day of a month. The first day of the month can therefore be specified by setting the bit d1(0) and d31(30) means the last day of a month with 31 days.

以字母“d”开头的枚举表示一个月中的某一天相对于一个月的第一天。因此,可以通过设置位d1(0)来指定月份的第一天,d31(30)表示一个月的最后一天(31天)。

Enumerations starting with the letter 'r' indicate a day in a month in reverse order, relative to the last day of a month. The last day in the month can therefore be specified by setting the bit r1(31) and r31(61) means the first day of a month with 31 days.

以字母“r”开头的枚举表示一个月中的一天,其顺序与一个月的最后一天相反。因此,可以通过设置位r1(31)来指定月份的最后一天,并且r31(61)表示一个月的第一天(31天)。

Setting multiple bits will include several days in the set of possible days for this schedule. Setting all bits will cause the scheduler to ignore the day within a month.

设置多个位将在此计划的可能天数集中包括几天。设置所有位将导致计划程序忽略一个月内的一天。

Setting all bits starting with the letter 'd' or the letter 'r' will also cause the scheduler to ignore the day within a month.

设置以字母“d”或字母“r”开头的所有位也会导致计划程序忽略一个月内的某一天。

            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 7 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 7 }
        
   schedHour OBJECT-TYPE
       SYNTAX      BITS {
                       h0(0),   h1(1),   h2(2),   h3(3),   h4(4),
                       h5(5),   h6(6),   h7(7),   h8(8),   h9(9),
                       h10(10), h11(11), h12(12), h13(13), h14(14),
                       h15(15), h16(16), h17(17), h18(18), h19(19),
                       h20(20), h21(21), h22(22), h23(23)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of hours within a day during which the scheduled
            action should take place.
        
   schedHour OBJECT-TYPE
       SYNTAX      BITS {
                       h0(0),   h1(1),   h2(2),   h3(3),   h4(4),
                       h5(5),   h6(6),   h7(7),   h8(8),   h9(9),
                       h10(10), h11(11), h12(12), h13(13), h14(14),
                       h15(15), h16(16), h17(17), h18(18), h19(19),
                       h20(20), h21(21), h22(22), h23(23)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The set of hours within a day during which the scheduled
            action should take place.
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 8 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 8 }
        
   schedMinute OBJECT-TYPE
       SYNTAX      BITS {
                       m0(0),   m1(1),   m2(2),   m3(3),   m4(4),
                       m5(5),   m6(6),   m7(7),   m8(8),   m9(9),
                       m10(10), m11(11), m12(12), m13(13), m14(14),
                       m15(15), m16(16), m17(17), m18(18), m19(19),
                       m20(20), m21(21), m22(22), m23(23), m24(24),
                       m25(25), m26(26), m27(27), m28(28), m29(29),
                       m30(30), m31(31), m32(32), m33(33), m34(34),
                       m35(35), m36(36), m37(37), m38(38), m39(39),
                       m40(40), m41(41), m42(42), m43(43), m44(44),
                       m45(45), m46(46), m47(47), m48(48), m49(49),
                       m50(50), m51(51), m52(52), m53(53), m54(54),
                       m55(55), m56(56), m57(57), m58(58), m59(59)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
        
   schedMinute OBJECT-TYPE
       SYNTAX      BITS {
                       m0(0),   m1(1),   m2(2),   m3(3),   m4(4),
                       m5(5),   m6(6),   m7(7),   m8(8),   m9(9),
                       m10(10), m11(11), m12(12), m13(13), m14(14),
                       m15(15), m16(16), m17(17), m18(18), m19(19),
                       m20(20), m21(21), m22(22), m23(23), m24(24),
                       m25(25), m26(26), m27(27), m28(28), m29(29),
                       m30(30), m31(31), m32(32), m33(33), m34(34),
                       m35(35), m36(36), m37(37), m38(38), m39(39),
                       m40(40), m41(41), m42(42), m43(43), m44(44),
                       m45(45), m46(46), m47(47), m48(48), m49(49),
                       m50(50), m51(51), m52(52), m53(53), m54(54),
                       m55(55), m56(56), m57(57), m58(58), m59(59)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
        

"The set of minutes within an hour when the scheduled action should take place.

“应在一小时内执行计划操作的分钟数。

            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 9 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { {} }
       ::= { schedEntry 9 }
        
   schedContextName OBJECT-TYPE
       SYNTAX      SnmpAdminString (SIZE(0..32))
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The context which contains the local MIB variable pointed
            to by schedVariable."
       DEFVAL      { "" }
       ::= { schedEntry 10 }
        
   schedContextName OBJECT-TYPE
       SYNTAX      SnmpAdminString (SIZE(0..32))
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The context which contains the local MIB variable pointed
            to by schedVariable."
       DEFVAL      { "" }
       ::= { schedEntry 10 }
        
   schedVariable OBJECT-TYPE
       SYNTAX      VariablePointer
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "An object identifier pointing to a local MIB variable
            which resolves to an ASN.1 primitive type of INTEGER."
       DEFVAL      { zeroDotZero }
       ::= { schedEntry 11 }
        
   schedVariable OBJECT-TYPE
       SYNTAX      VariablePointer
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "An object identifier pointing to a local MIB variable
            which resolves to an ASN.1 primitive type of INTEGER."
       DEFVAL      { zeroDotZero }
       ::= { schedEntry 11 }
        

schedValue OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "The value which is written to the MIB object pointed to by schedVariable when the scheduler invokes an action. The implementation shall enforce the use of access control rules when performing the set operation on schedVariable. This is accomplished by calling the isAccessAllowed abstract service interface as defined in RFC 2571.

schedValue对象类型语法整数32 MAX-ACCESS读取创建状态当前描述“调度程序调用操作时,写入schedVariable指向的MIB对象的值。在schedVariable上执行set操作时,实现应强制使用访问控制规则。这是通过调用RFC2571中定义的isAccessAllowed抽象服务接口来实现的。

            Note that an implementation may choose to issue an SNMP Set
            message to the SNMP engine and leave the access control
            decision to the normal message processing procedure."
       DEFVAL      { 0 }
       ::= { schedEntry 12 }
        
            Note that an implementation may choose to issue an SNMP Set
            message to the SNMP engine and leave the access control
            decision to the normal message processing procedure."
       DEFVAL      { 0 }
       ::= { schedEntry 12 }
        

schedType OBJECT-TYPE

schedType对象类型

       SYNTAX      INTEGER {
                       periodic(1),
                       calendar(2),
                       oneshot(3)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The type of this schedule.  The value periodic(1) indicates
            that this entry specifies a periodic schedule.  A periodic
            schedule is defined by the value of schedInterval.  The
            values of schedWeekDay, schedMonth, schedDay, schedHour
            and schedMinute are ignored.
        
       SYNTAX      INTEGER {
                       periodic(1),
                       calendar(2),
                       oneshot(3)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The type of this schedule.  The value periodic(1) indicates
            that this entry specifies a periodic schedule.  A periodic
            schedule is defined by the value of schedInterval.  The
            values of schedWeekDay, schedMonth, schedDay, schedHour
            and schedMinute are ignored.
        

The value calendar(2) indicates that this entry describes a calendar schedule. A calendar schedule is defined by the values of schedWeekDay, schedMonth, schedDay, schedHour and schedMinute. The value of schedInterval is ignored. A calendar schedule will trigger on all local times that satisfy the bits set in schedWeekDay, schedMonth, schedDay, schedHour and schedMinute.

值calendar(2)表示此条目描述日历计划。日历计划由schedWeekDay、schedMonth、schedDay、schedHour和schedMinute的值定义。schedInterval的值被忽略。日历日程表将在满足schedWeekDay、schedMonth、schedDay、schedHour和schedMinute中设置的位的所有本地时间触发。

The value oneshot(3) indicates that this entry describes a one-shot schedule. A one-shot schedule is similar to a calendar schedule with the additional feature that it disables itself by changing in the `finished' schedOperStatus once the schedule triggers an action.

值oneshot(3)表示此条目描述了一个一次性计划。一次性计划类似于日历计划,它还有一个附加功能,即一旦计划触发操作,它会通过在“完成”计划状态中更改来禁用自身。

            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { periodic }
       ::= { schedEntry 13 }
        
            Note that implementations which maintain a list of pending
            activations must re-calculate them when this object is
            changed."
       DEFVAL      { periodic }
       ::= { schedEntry 13 }
        
   schedAdminStatus OBJECT-TYPE
       SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The desired state of the schedule."
       DEFVAL      { disabled }
       ::= { schedEntry 14 }
        
   schedAdminStatus OBJECT-TYPE
       SYNTAX      INTEGER {
                       enabled(1),
                       disabled(2)
                   }
       MAX-ACCESS  read-create
       STATUS      current
       DESCRIPTION
           "The desired state of the schedule."
       DEFVAL      { disabled }
       ::= { schedEntry 14 }
        

schedOperStatus OBJECT-TYPE SYNTAX INTEGER {

schedOperStatus对象类型语法整数{

enabled(1), disabled(2), finished(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The current operational state of this schedule. The state enabled(1) indicates this entry is active and that the scheduler will invoke actions at appropriate times. The disabled(2) state indicates that this entry is currently inactive and ignored by the scheduler. The finished(3) state indicates that the schedule has ended. Schedules in the finished(3) state are ignored by the scheduler. A one-shot schedule enters the finished(3) state when it deactivates itself.

enabled(1)、disabled(2)、finished(3)}MAX-ACCESS只读状态current DESCRIPTION“此计划的当前操作状态。状态enabled(1)表示此条目处于活动状态,并且计划程序将在适当的时间调用操作。disabled(2)状态表示此项当前处于非活动状态,并被计划程序忽略。完成(3)状态表示计划已结束。处于完成(3)状态的计划将被计划程序忽略。一次性计划在自身停用时将进入完成(3)状态。

            Note that the operational state must not be enabled(1)
            when the schedRowStatus is not active."
       ::= { schedEntry 15 }
        
            Note that the operational state must not be enabled(1)
            when the schedRowStatus is not active."
       ::= { schedEntry 15 }
        
   schedFailures OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "This variable counts the number of failures while invoking
            the scheduled action.  This counter at most increments once
            for a triggered action."
       ::= { schedEntry 16 }
        
   schedFailures OBJECT-TYPE
       SYNTAX      Counter32
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "This variable counts the number of failures while invoking
            the scheduled action.  This counter at most increments once
            for a triggered action."
       ::= { schedEntry 16 }
        
   schedLastFailure OBJECT-TYPE
       SYNTAX      SnmpPduErrorStatus
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The most recent error that occurred during the invocation of
            a scheduled action.  The value noError(0) is returned
            if no errors have occurred yet."
       DEFVAL      { noError }
       ::= { schedEntry 17 }
        
   schedLastFailure OBJECT-TYPE
       SYNTAX      SnmpPduErrorStatus
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
           "The most recent error that occurred during the invocation of
            a scheduled action.  The value noError(0) is returned
            if no errors have occurred yet."
       DEFVAL      { noError }
       ::= { schedEntry 17 }
        

schedLastFailed OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The date and time when the most recent failure occurred.

schedLastFailed对象类型语法DateAndTime MAX-ACCESS只读状态当前描述“最近发生故障的日期和时间。

            The value '0000000000000000'H is returned if no failure
            occurred since the last re-initialization of the scheduler."
       DEFVAL      { '0000000000000000'H }
       ::= { schedEntry 18 }
        
            The value '0000000000000000'H is returned if no failure
            occurred since the last re-initialization of the scheduler."
       DEFVAL      { '0000000000000000'H }
       ::= { schedEntry 18 }
        

schedStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "This object defines whether this scheduled action is kept in volatile storage and lost upon reboot or if this row is backed up by non-volatile or permanent storage.

schedStorageType对象类型语法StorageType MAX-ACCESS读取创建状态当前描述“此对象定义此计划操作是否保存在易失性存储中,并在重新启动时丢失,或者此行是否由非易失性或永久性存储备份。

            Conceptual rows having the value `permanent' must allow
            write access to the columnar objects schedDescr,
            schedInterval, schedContextName, schedVariable, schedValue,
            and schedAdminStatus.  If an implementation supports the
            schedCalendarGroup, write access must be also allowed to
            the columnar objects schedWeekDay, schedMonth, schedDay,
            schedHour, schedMinute."
       DEFVAL      { volatile }
       ::= { schedEntry 19 }
        
            Conceptual rows having the value `permanent' must allow
            write access to the columnar objects schedDescr,
            schedInterval, schedContextName, schedVariable, schedValue,
            and schedAdminStatus.  If an implementation supports the
            schedCalendarGroup, write access must be also allowed to
            the columnar objects schedWeekDay, schedMonth, schedDay,
            schedHour, schedMinute."
       DEFVAL      { volatile }
       ::= { schedEntry 19 }
        

schedRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this scheduled action. A control that allows entries to be added and removed from this table.

schedRowStatus对象类型语法RowStatus MAX-ACCESS read create STATUS current DESCRIPTION“此计划操作的状态。允许在此表中添加和删除项的控件。

Note that the operational state must change to enabled when the administrative state is enabled and the row status changes to active(1).

请注意,当管理状态为enabled且行状态更改为active(1)时,操作状态必须更改为enabled。

Attempts to destroy(6) a row or to set a row notInService(2) while the operational state is enabled result in inconsistentValue errors.

在启用操作状态时尝试销毁(6)行或将行设置为notInService(2)会导致不一致的值错误。

            The value of this object has no effect on whether other
            objects in this conceptual row can be modified."
       ::= { schedEntry 20 }
        
            The value of this object has no effect on whether other
            objects in this conceptual row can be modified."
       ::= { schedEntry 20 }
        

schedTriggers OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current

schedTriggers对象类型语法计数器32 MAX-ACCESS只读状态当前

       DESCRIPTION
           "This variable counts the number of attempts (either
            successful or failed) to invoke the scheduled action."
       ::= { schedEntry 21 }
        
       DESCRIPTION
           "This variable counts the number of attempts (either
            successful or failed) to invoke the scheduled action."
       ::= { schedEntry 21 }
        
   --
   -- Notifications that are emitted to indicate failures.  The
   -- definition of schedTraps makes notification registrations
   -- reversible (see STD 58, RFC 2578).
   --
        
   --
   -- Notifications that are emitted to indicate failures.  The
   -- definition of schedTraps makes notification registrations
   -- reversible (see STD 58, RFC 2578).
   --
        
   schedTraps OBJECT IDENTIFIER ::= { schedNotifications 0 }
        
   schedTraps OBJECT IDENTIFIER ::= { schedNotifications 0 }
        
   schedActionFailure NOTIFICATION-TYPE
       OBJECTS     { schedLastFailure, schedLastFailed }
       STATUS      current
       DESCRIPTION
           "This notification is generated whenever the invocation of a
            scheduled action fails."
       ::= { schedTraps 1 }
        
   schedActionFailure NOTIFICATION-TYPE
       OBJECTS     { schedLastFailure, schedLastFailed }
       STATUS      current
       DESCRIPTION
           "This notification is generated whenever the invocation of a
            scheduled action fails."
       ::= { schedTraps 1 }
        

-- conformance information

--一致性信息

   schedCompliances OBJECT IDENTIFIER ::= { schedConformance 1 }
   schedGroups      OBJECT IDENTIFIER ::= { schedConformance 2 }
        
   schedCompliances OBJECT IDENTIFIER ::= { schedConformance 1 }
   schedGroups      OBJECT IDENTIFIER ::= { schedConformance 2 }
        

-- compliance statements

--合规声明

   schedCompliance2 MODULE-COMPLIANCE
       STATUS      current
       DESCRIPTION
           "The compliance statement for SNMP entities which implement
            the scheduling MIB."
       MODULE      -- this module
       MANDATORY-GROUPS {
              schedGroup2, schedNotificationsGroup
       }
       GROUP  schedCalendarGroup
       DESCRIPTION
           "The schedCalendarGroup is mandatory only for those
            implementations that support calendar based schedules."
       OBJECT schedType
       DESCRIPTION
           "The values calendar(2) or oneshot(3) are not valid for
            implementations that do not implement the
            schedCalendarGroup.  Such an implementation must return
            inconsistentValue error responses for attempts to set
            schedAdminStatus to calendar(2) or oneshot(3)."
        
   schedCompliance2 MODULE-COMPLIANCE
       STATUS      current
       DESCRIPTION
           "The compliance statement for SNMP entities which implement
            the scheduling MIB."
       MODULE      -- this module
       MANDATORY-GROUPS {
              schedGroup2, schedNotificationsGroup
       }
       GROUP  schedCalendarGroup
       DESCRIPTION
           "The schedCalendarGroup is mandatory only for those
            implementations that support calendar based schedules."
       OBJECT schedType
       DESCRIPTION
           "The values calendar(2) or oneshot(3) are not valid for
            implementations that do not implement the
            schedCalendarGroup.  Such an implementation must return
            inconsistentValue error responses for attempts to set
            schedAdminStatus to calendar(2) or oneshot(3)."
        
       ::= { schedCompliances 2 }
        
       ::= { schedCompliances 2 }
        
   schedGroup2 OBJECT-GROUP
       OBJECTS {
           schedDescr, schedInterval, schedContextName,
           schedVariable, schedValue, schedType,
           schedAdminStatus, schedOperStatus, schedFailures,
           schedLastFailure, schedLastFailed, schedStorageType,
           schedRowStatus, schedTriggers
       }
       STATUS      current
       DESCRIPTION
           "A collection of objects providing scheduling capabilities."
       ::= { schedGroups 4 }
        
   schedGroup2 OBJECT-GROUP
       OBJECTS {
           schedDescr, schedInterval, schedContextName,
           schedVariable, schedValue, schedType,
           schedAdminStatus, schedOperStatus, schedFailures,
           schedLastFailure, schedLastFailed, schedStorageType,
           schedRowStatus, schedTriggers
       }
       STATUS      current
       DESCRIPTION
           "A collection of objects providing scheduling capabilities."
       ::= { schedGroups 4 }
        
   schedCalendarGroup OBJECT-GROUP
       OBJECTS {
           schedLocalTime, schedWeekDay, schedMonth,
           schedDay, schedHour, schedMinute
       }
       STATUS      current
       DESCRIPTION
           "A collection of objects providing calendar based schedules."
       ::= { schedGroups 2 }
        
   schedCalendarGroup OBJECT-GROUP
       OBJECTS {
           schedLocalTime, schedWeekDay, schedMonth,
           schedDay, schedHour, schedMinute
       }
       STATUS      current
       DESCRIPTION
           "A collection of objects providing calendar based schedules."
       ::= { schedGroups 2 }
        
   schedNotificationsGroup NOTIFICATION-GROUP
       NOTIFICATIONS {
           schedActionFailure
       }
       STATUS      current
       DESCRIPTION
           "The notifications emitted by the scheduler."
       ::= { schedGroups 3 }
        
   schedNotificationsGroup NOTIFICATION-GROUP
       NOTIFICATIONS {
           schedActionFailure
       }
       STATUS      current
       DESCRIPTION
           "The notifications emitted by the scheduler."
       ::= { schedGroups 3 }
        
   --
   -- Deprecated compliance and conformance group definitions
   -- from RFC 2591.
   --
        
   --
   -- Deprecated compliance and conformance group definitions
   -- from RFC 2591.
   --
        
   schedCompliance MODULE-COMPLIANCE
       STATUS      deprecated
       DESCRIPTION
           "The compliance statement for SNMP entities which implement
            the scheduling MIB."
       MODULE      -- this module
       MANDATORY-GROUPS {
              schedGroup, schedNotificationsGroup
       }
        
   schedCompliance MODULE-COMPLIANCE
       STATUS      deprecated
       DESCRIPTION
           "The compliance statement for SNMP entities which implement
            the scheduling MIB."
       MODULE      -- this module
       MANDATORY-GROUPS {
              schedGroup, schedNotificationsGroup
       }
        
       GROUP  schedCalendarGroup
       DESCRIPTION
           "The schedCalendarGroup is mandatory only for those
            implementations that support calendar based schedules."
       OBJECT schedType
       DESCRIPTION
           "The values calendar(2) or oneshot(3) are not valid for
            implementations that do not implement the
            schedCalendarGroup.  Such an implementation must return
            inconsistentValue error responses for attempts to set
            schedAdminStatus to calendar(2) or oneshot(3)."
       ::= { schedCompliances 1 }
        
       GROUP  schedCalendarGroup
       DESCRIPTION
           "The schedCalendarGroup is mandatory only for those
            implementations that support calendar based schedules."
       OBJECT schedType
       DESCRIPTION
           "The values calendar(2) or oneshot(3) are not valid for
            implementations that do not implement the
            schedCalendarGroup.  Such an implementation must return
            inconsistentValue error responses for attempts to set
            schedAdminStatus to calendar(2) or oneshot(3)."
       ::= { schedCompliances 1 }
        
   schedGroup OBJECT-GROUP
       OBJECTS {
           schedDescr, schedInterval, schedContextName,
           schedVariable, schedValue, schedType,
           schedAdminStatus, schedOperStatus, schedFailures,
           schedLastFailure, schedLastFailed, schedStorageType,
           schedRowStatus
       }
       STATUS      deprecated
       DESCRIPTION
           "A collection of objects providing scheduling capabilities."
       ::= { schedGroups 1 }
        
   schedGroup OBJECT-GROUP
       OBJECTS {
           schedDescr, schedInterval, schedContextName,
           schedVariable, schedValue, schedType,
           schedAdminStatus, schedOperStatus, schedFailures,
           schedLastFailure, schedLastFailed, schedStorageType,
           schedRowStatus
       }
       STATUS      deprecated
       DESCRIPTION
           "A collection of objects providing scheduling capabilities."
       ::= { schedGroups 1 }
        

END

终止

5. Usage Examples
5. 用法示例

This section presents some examples how the scheduling MIB can be used to schedule scripts with the Script MIB [RFC3165] or to realize on-duty/off-duty schedules by modifying status objects of other MIB modules.

本节给出了一些示例,说明如何使用调度MIB使用脚本MIB[RFC3165]调度脚本,或通过修改其他MIB模块的状态对象来实现值班/下班调度。

5.1. Starting a script to ping devices every 20 minutes
5.1. 每20分钟启动一个脚本以ping设备

It is assumed that the schedule entry is owned by schedOwner = "joe" and its name is schedName = "ping". The instance identifier for the scheduling entry is therefore 3.106.111.101.4.112.105.110.103.

假设计划条目为schedOwner=“joe”所有,其名称为schedName=“ping”。因此,调度条目的实例标识符为3.106.111.101.4.112.105.110.103。

It is further assumed that the smLaunchTable entry is owned by smLaunchOwner = "joe" and its name is smLaunchName = "ping-devs". The complete object identifier for the smLaunchStart object is therefore smLaunchStart.3.106.111.101.9.112.105.110.103.45.100.101.118.115. The script lives in the context identified by the string "engine1".

进一步假设smLaunchTable条目由smLaunchOwner=“joe”所有,其名称为smLaunchName=“ping devs”。因此,smLaunchStart对象的完整对象标识符为smLaunchStart.3.106.111.101.9.112.105.110.103.45.100.101.118.115。脚本位于字符串“engine1”标识的上下文中。

The configuration of the scheduler entry which launches the script every 20 minutes would look as follows:

每20分钟启动脚本的调度程序条目的配置如下所示:

schedInterval.3.106.111.101.4.112.105.110.103 = 1200

schedInterval.3.106.111.101.4.112.105.110.103=1200

schedValue.3.106.111.101.4.112.105.110.103 = 0 schedContextName.3.106.111.101.4.112.105.110.103 = "engine1" schedVariable.3.106.111.101.4.112.105.110.103 = smLaunchStart.3.106.111.101.9.112.105.110.103.45.100.101.118.115

schedValue.3.106.111.101.4.112.105.110.103=0 schedContextName.3.106.111.101.4.112.105.110.103=“engine1”schedVariable.3.106.111.101.4.112.105.110.103=smLaunchStart.3.106.111.101.9.112.105.110.103.45.100.101.118.115

      schedType.3.106.111.101.4.112.105.110.103 = periodic(1)
      schedAdminStatus.3.106.111.101.4.112.105.110.103 = enabled(1)
      schedStorageType.3.106.111.101.4.112.105.110.103 = nonVolatile(3)
      schedRowStatus.3.106.111.101.4.112.105.110.103 = active(1)
        
      schedType.3.106.111.101.4.112.105.110.103 = periodic(1)
      schedAdminStatus.3.106.111.101.4.112.105.110.103 = enabled(1)
      schedStorageType.3.106.111.101.4.112.105.110.103 = nonVolatile(3)
      schedRowStatus.3.106.111.101.4.112.105.110.103 = active(1)
        

All the remaining columns in the schedTable represent status information and are not shown here.

schedTable中的所有剩余列表示状态信息,此处不显示。

5.2. Starting a script at the next Friday the 13th
5.2. 在下周五13号开始写剧本

It is assumed that the schedule entry is owned by schedOwner = "joe" and its name is schedName = "13th". The instance identifier for the scheduling entry is therefore 3.106.111.101.4.49.51.116.104.

假设计划条目为schedOwner=“joe”所有,其名称为schedName=“13th”。因此,调度条目的实例标识符为3.106.111.101.4.49.51.116.104。

It is further assumed that the smLaunchTable entry is owned by smLaunchOwner = "joe" and its name is smLaunchName = "ghost". The complete object identifier for the smLaunchStart object is therefore smLaunchStart.3.106.111.101.5.103.104.111.115.116. The script lives in the context identified by the string "engine1".

进一步假设smLaunchTable条目由smLaunchOwner=“joe”所有,其名称为smLaunchName=“ghost”。因此,smLaunchStart对象的完整对象标识符为smLaunchStart.3.106.111.101.5.103.104.111.115.116。脚本位于字符串“engine1”标识的上下文中。

The configuration of the scheduler entry which launches the script on the next Friday 13th at midnight would look as follows:

在下周五13日午夜启动脚本的调度程序条目的配置如下所示:

      schedWeekDay.3.106.111.101.4.49.51.116.104 = { friday }
      schedMonth.3.106.111.101.4.49.51.116.104 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.106.111.101.4.49.51.116.104 = { d13 }
      schedHour.3.106.111.101.4.49.51.116.104 = { h0 }
      schedMinute.3.106.111.101.4.49.51.116.104 = { m0 }
        
      schedWeekDay.3.106.111.101.4.49.51.116.104 = { friday }
      schedMonth.3.106.111.101.4.49.51.116.104 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.106.111.101.4.49.51.116.104 = { d13 }
      schedHour.3.106.111.101.4.49.51.116.104 = { h0 }
      schedMinute.3.106.111.101.4.49.51.116.104 = { m0 }
        

schedValue.3.106.111.101.4.49.51.116.104 = 0 schedContextName.3.106.111.101.4.49.51.116.104 = "engine1" schedVariable.3.106.111.101.4.49.51.116.104 = smLaunchStart.3.106.111.101.5.103.104.111.115.116

schedValue.3.106.111.101.4.49.51.116.104=0 schedContextName.3.106.111.101.4.49.51.116.104=“engine1”schedVariable.3.106.111.101.4.49.51.116.104=smLaunchStart.3.106.111.101.5.103.104.111.115.116

      schedType.3.106.111.101.4.49.51.116.104 = oneshot(3)
      schedAdminStatus.3.106.111.101.4.49.51.116.104 = enabled(2)
      schedStorageType.3.106.111.101.4.49.51.116.104 = nonVolatile(3)
      schedRowStatus.3.106.111.101.4.49.51.116.104 = active(1)
        
      schedType.3.106.111.101.4.49.51.116.104 = oneshot(3)
      schedAdminStatus.3.106.111.101.4.49.51.116.104 = enabled(2)
      schedStorageType.3.106.111.101.4.49.51.116.104 = nonVolatile(3)
      schedRowStatus.3.106.111.101.4.49.51.116.104 = active(1)
        

All the remaining columns in the schedTable represent status information and are not shown here.

schedTable中的所有剩余列表示状态信息,此处不显示。

5.3. Turning an interface off during weekends
5.3. 在周末关闭界面

This example assumes that a network interface should be taken down during weekends. The interface table (ifTable) of the IF-MIB [RFC2863] is assumed to exist in the context identified by an empty string and the index of the interface is ifIndex = 6.

本例假设网络接口应在周末关闭。假设IF-MIB[RFC2863]的接口表(ifTable)存在于由空字符串标识的上下文中,接口的索引为ifIndex=6。

The scheduling entry which brings the interface down on every Friday evening at 20:30 (8:30 pm) is owned by schedOwner = "bob" and its name is schedName = "if-off". The instance identifier for the scheduling entry is therefore 3.98.111.98.6.105.102.45.111.102.102.

每周五晚上20:30(晚上8:30)将界面关闭的调度条目由schedOwner=“bob”所有,其名称为schedName=“if off”。因此,调度条目的实例标识符为3.98.111.98.6.105.102.45.111.102.102。

      schedWeekDay.3.98.111.98.6.105.102.45.111.102.102 = { friday }
      schedMonth.3.98.111.98.6.105.102.45.111.102.102 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.98.111.98.6.105.102.45.111.102.102 = {
            d1, d2, d3, d4, d5, d6, d7, d8, d9, d10,
            d11, d12, d13, d14, d15, d16, d17, d18, d19, d20,
            d21, d22, d23, d24, d25, d26, d27, d28, d29, d30, d31
      }
      schedHour.3.98.111.98.6.105.102.45.111.102.102 = { h20 }
      schedMinute.3.98.111.98.6.105.102.45.111.102.102 = { m30 }
      schedValue.3.98.111.98.6.105.102.45.111.102.102 = down(2)
      schedContextName.3.98.111.98.6.105.102.45.111.102.102 = ""
      schedVariable.3.98.111.98.6.105.102.45.111.102.102 =
        ifAdminStatus.6
        
      schedWeekDay.3.98.111.98.6.105.102.45.111.102.102 = { friday }
      schedMonth.3.98.111.98.6.105.102.45.111.102.102 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.98.111.98.6.105.102.45.111.102.102 = {
            d1, d2, d3, d4, d5, d6, d7, d8, d9, d10,
            d11, d12, d13, d14, d15, d16, d17, d18, d19, d20,
            d21, d22, d23, d24, d25, d26, d27, d28, d29, d30, d31
      }
      schedHour.3.98.111.98.6.105.102.45.111.102.102 = { h20 }
      schedMinute.3.98.111.98.6.105.102.45.111.102.102 = { m30 }
      schedValue.3.98.111.98.6.105.102.45.111.102.102 = down(2)
      schedContextName.3.98.111.98.6.105.102.45.111.102.102 = ""
      schedVariable.3.98.111.98.6.105.102.45.111.102.102 =
        ifAdminStatus.6
        
      schedType.3.98.111.98.6.105.102.45.111.102.102 = calendar(2)
      schedAdminStatus.3.98.111.98.6.105.102.45.111.102.102 = enabled(1)
      schedStorageType.3.98.111.98.6.105.102.45.111.102.102 =
        nonVolatile(3)
      schedRowStatus.3.98.111.98.6.105.102.45.111.102.102 = active(1)
        
      schedType.3.98.111.98.6.105.102.45.111.102.102 = calendar(2)
      schedAdminStatus.3.98.111.98.6.105.102.45.111.102.102 = enabled(1)
      schedStorageType.3.98.111.98.6.105.102.45.111.102.102 =
        nonVolatile(3)
      schedRowStatus.3.98.111.98.6.105.102.45.111.102.102 = active(1)
        

The scheduling entry which brings the interface up on every Monday morning at 5:30 is owned by schedOwner = "bob" and its name is schedName = "if-on". The instance identifier for the scheduling entry is therefore 3.98.111.98.5.105.102.45.111.110.

每周一早上5:30打开界面的调度条目属于schedOwner=“bob”,其名称为schedName=“if on”。因此,调度条目的实例标识符为3.98.111.98.5.105.102.45.111.110。

The entry in the schedTable which brings the interface up again on every Monday morning at 5:30 looks as follows:

schedTable中的条目在每周一早上5:30再次显示界面,如下所示:

      schedWeekDay.3.98.111.98.5.105.102.45.111.110 = { monday }
      schedMonth.3.98.111.98.5.105.102.45.111.110 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.98.111.98.5.105.102.45.111.110 = {
            d1, d2, d3, d4, d5, d6, d7, d8, d9, d10,
            d11, d12, d13, d14, d15, d16, d17, d18, d19, d20,
            d21, d22, d23, d24, d25, d26, d27, d28, d29, d30, d31
      }
      schedHour.3.98.111.98.5.105.102.45.111.110 = { h5 }
      schedMinute.3.98.111.98.5.105.102.45.111.110 = { m30 }
        
      schedWeekDay.3.98.111.98.5.105.102.45.111.110 = { monday }
      schedMonth.3.98.111.98.5.105.102.45.111.110 = {
            january, february, march, april, may, june,
            july, august, september, october, november, december
      }
      schedDay.3.98.111.98.5.105.102.45.111.110 = {
            d1, d2, d3, d4, d5, d6, d7, d8, d9, d10,
            d11, d12, d13, d14, d15, d16, d17, d18, d19, d20,
            d21, d22, d23, d24, d25, d26, d27, d28, d29, d30, d31
      }
      schedHour.3.98.111.98.5.105.102.45.111.110 = { h5 }
      schedMinute.3.98.111.98.5.105.102.45.111.110 = { m30 }
        

schedValue.3.98.111.98.5.105.102.45.111.110 = up(1) schedContextName.3.98.111.98.5.105.102.45.111.110 = "" schedVariable.3.98.111.98.5.105.102.45.111.110 = ifAdminStatus.6

schedValue.3.98.111.98.5.105.102.45.111.110=向上(1)schedContextName.3.98.111.98.5.105.102.45.111.110=“”schedVariable.3.98.111.98.5.105.102.45.111.110=ifAdminStatus.6

      schedType.3.98.111.98.5.105.102.45.111.110 = calendar(2)
      schedAdminStatus.3.98.111.98.5.105.102.45.111.110 = enabled(1)
      schedStorageType.3.98.111.98.5.105.102.45.111.110 = nonVolatile(3)
      schedRowStatus.3.98.111.98.5.105.102.45.111.110 = active(1)
        
      schedType.3.98.111.98.5.105.102.45.111.110 = calendar(2)
      schedAdminStatus.3.98.111.98.5.105.102.45.111.110 = enabled(1)
      schedStorageType.3.98.111.98.5.105.102.45.111.110 = nonVolatile(3)
      schedRowStatus.3.98.111.98.5.105.102.45.111.110 = active(1)
        

A similar configuration could be used to control other schedules. For example, one could change the "if-on" and "if-off" schedules to enable and disable the periodic scheduler defined in the first example.

类似的配置可用于控制其他计划。例如,可以更改“if on”和“if off”计划,以启用和禁用第一个示例中定义的定期计划程序。

6. Security Considerations
6. 安全考虑

There are a number of management objects defined in this MIB that have a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations.

此MIB中定义了许多管理对象,它们的MAX-ACCESS子句为read-write和/或read-create。在某些网络环境中,此类对象可能被视为敏感或易受攻击。在没有适当保护的非安全环境中支持SET操作可能会对网络操作产生负面影响。

SNMPv1 by itself is not a secure environment. Even if the network itself is secure (for example by using IPSec), even then, there is no control as to who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in this MIB.

SNMPv1本身不是一个安全的环境。即使网络本身是安全的(例如通过使用IPSec),即使如此,也无法控制安全网络上的谁可以访问和获取/设置(读取/更改/创建/删除)此MIB中的对象。

It is recommended that the implementers consider the security features as provided by the SNMPv3 framework. Specifically, the use of the User-based Security Model RFC 2574 [RFC2574] and the View-based Access Control Model RFC 2575 [RFC2575] is recommended.

建议实施者考虑SNMPv3框架提供的安全特性。具体而言,建议使用基于用户的安全模型RFC 2574[RFC2574]和基于视图的访问控制模型RFC 2575[RFC2575]。

It is then a customer/user responsibility to ensure that the SNMP entity giving access to an instance of this MIB, is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/create/delete) them.

然后,客户/用户有责任确保授予对此MIB实例访问权限的SNMP实体被正确配置为仅授予那些拥有确实获取或设置(更改/创建/删除)对象的合法权限的主体(用户)对对象的访问权限。

Scheduled SNMP set operations must use the security credentials that were present when the corresponding row in the scheduling entry was created. An implementation must therefore record and maintain the credentials for every scheduling entry.

计划的SNMP集操作必须使用创建计划项中相应行时存在的安全凭据。因此,实现必须记录和维护每个调度条目的凭据。

An implementation must ensure that access control rules are applied when doing the set operation. This is accomplished by calling the isAccessAllowed abstract service interface defined in RFC 2571 [RFC2571]:

实现必须确保在执行set操作时应用访问控制规则。这是通过调用RFC 2571[RFC2571]中定义的isAccessAllowed抽象服务接口来实现的:

      statusInformation =          -- success or errorIndication
        isAccessAllowed(
        IN   securityModel         -- Security Model in use
        IN   securityName          -- principal who wants to access
        IN   securityLevel         -- Level of Security
        IN   viewType              -- read, write, or notify view
        IN   contextName           -- context containing variableName
        IN   variableName          -- OID for the managed object
             )
        
      statusInformation =          -- success or errorIndication
        isAccessAllowed(
        IN   securityModel         -- Security Model in use
        IN   securityName          -- principal who wants to access
        IN   securityLevel         -- Level of Security
        IN   viewType              -- read, write, or notify view
        IN   contextName           -- context containing variableName
        IN   variableName          -- OID for the managed object
             )
        

The securityModel, securityName and securityLevel parameters are set to the values that were recorded when the scheduling entry was created. The viewType parameter must select the write view and the contextName and variableName parameters are taken from the schedContextName and schedVariableName values of the scheduling entry.

securityModel、securityName和securityLevel参数设置为创建调度条目时记录的值。viewType参数必须选择写入视图,contextName和variableName参数取自调度条目的schedContextName和schedVariableName值。

This MIB limits scheduled actions to objects in the local MIB. This avoids security problems with the delegation of access rights. However, it might be possible for a user of this MIB to own some schedules that might trigger far in the future. This can cause security risks if the security administrator did not properly update the access control lists when a user is withdrawn from an SNMP engine. Therefore, entries in the schedTable SHOULD be cleaned up whenever a user is removed from an SNMP engine.

此MIB将计划的操作限制为本地MIB中的对象。这样就避免了访问权委托的安全问题。但是,此MIB的用户可能拥有一些在将来可能触发的计划。如果安全管理员在用户从SNMP引擎中退出时未正确更新访问控制列表,则可能会导致安全风险。因此,每当从SNMP引擎中删除用户时,应清除schedTable中的条目。

To facilitate the provisioning of access control by a security administrator using the View-Based Access Control Model (VACM) defined in RFC 2575 [RFC2575] for tables in which multiple users may need to independently create or modify entries, the initial index is used as an "owner index". Such an initial index has a syntax of

为了方便安全管理员使用RFC 2575[RFC2575]中定义的基于视图的访问控制模型(VACM)为多个用户可能需要独立创建或修改条目的表提供访问控制,初始索引用作“所有者索引”。这种初始索引的语法为

SnmpAdminString, and can thus be trivially mapped to a securityName or groupName as defined in VACM, in accordance with a security policy.

SNMPAdministring,因此可以根据安全策略简单地映射到VACM中定义的securityName或groupName。

All entries in related tables belonging to a particular user will have the same value for this initial index. For a given user's entries in a particular table, the object identifiers for the information in these entries will have the same subidentifiers (except for the "column" subidentifier) up to the end of the encoded owner index. To configure VACM to permit access to this portion of the table, one would create vacmViewTreeFamilyTable entries with the value of vacmViewTreeFamilySubtree including the owner index portion, and vacmViewTreeFamilyMask "wildcarding" the column subidentifier. More elaborate configurations are possible.

相关表中属于特定用户的所有条目对此初始索引具有相同的值。对于特定表中的给定用户项,这些项中信息的对象标识符在编码的所有者索引结束之前将具有相同的子标识符(除了“列”子标识符)。要将VACM配置为允许访问表的这一部分,可以创建vacmViewTreeFamilyTable条目,其值为vacmViewTreeFamilySubtree,包括所有者索引部分,以及VACMVIEWTREEFAMILYMAK“通配符”列子标识符。更复杂的配置是可能的。

7. Intellectual Property
7. 知识产权

The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP 11, RFC 2028. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat.

IETF对可能声称与本文件所述技术的实施或使用有关的任何知识产权或其他权利的有效性或范围,或此类权利下的任何许可可能或可能不可用的程度,不采取任何立场;它也不表示它已作出任何努力来确定任何此类权利。有关IETF在标准跟踪和标准相关文件中权利的程序信息,请参见BCP 11,RFC 2028。可从IETF秘书处获得可供发布的权利声明副本和任何许可证保证,或本规范实施者或用户试图获得使用此类专有权利的一般许可证或许可的结果。

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director.

IETF邀请任何相关方提请其注意任何版权、专利或专利申请,或其他可能涉及实施本标准所需技术的专有权利。请将信息发送给IETF执行董事。

8. Changes from RFC 2591
8. RFC 2591的变更

The following list documents major changes from the previous version of this document, published as RFC 2591:

以下列表记录了本文件先前版本(RFC 2591)的主要变化:

- Updated the SNMP Management Framework boilerplate and the references.

- 更新了SNMP管理框架样板和参考资料。

- Added revision clauses to the module identity macro.

- 在模块标识宏中添加了修订子句。

- Clarified the behavior during time transitions.

- 阐明了时间转换期间的行为。

- Clarified that schedInterval and schedCalendarGroup objects can be modified regardless of the current value of schedRowStatus, schedAdminStatus and schedOperStatus.

- 阐明了无论schedRowStatus、schedAdminStatus和schedOperStatus的当前值如何,都可以修改schedInterval和schedCalendarGroup对象。

- Added some additional boilerplate text to the security considerations section.

- 在“安全注意事项”部分添加了一些额外的样板文本。

- Clarified that implementations must re-calculate any pending action invocations when scheduling parameters are modified.

- 阐明了在修改调度参数时,实现必须重新计算任何挂起的操作调用。

- Clarified that schedOperStatus must not be enabled while the schedRowStatus is not active.

- 阐明当schedRowStatus未激活时,不得启用schedOperStatus。

- Clarified that schedRowStatus can not be changed as long as the schedOperStatus is enabled.

- 阐明只要启用schedOperStatus,就不能更改schedRowStatus。

- Clarified that implementations can delegate the isAccessAllowed check by sending themself an SNMP Set message.

- 阐明了实现可以通过向自身发送SNMP设置消息来委托isAccessAllowed检查。

- Added the schedTriggers object which counts the total number of triggers.

- 添加了统计触发器总数的schedTriggers对象。

- Added DEFVALs for schedContextName, schedVariable, and schedValue and updated the schedRowStatus description.

- 添加了schedContextName、schedVariable和schedValue的定义,并更新了schedRowStatus描述。

- Deprecated schedCompliance, schedGroup and created schedCompliance2 and schedGroup2 that take care of the new schedTriggers object.

- 不推荐使用的schedCompliance、schedGroup和创建的schedCompliance2和schedGroup2负责新的schedTriggers对象。

9. Acknowledgments
9. 致谢

This document was produced by the IETF Distributed Management (DISMAN) working group.

本文件由IETF分布式管理(DISMAN)工作组编制。

10. References
10. 工具书类

[RFC2571] Harrington, D., Presuhn, R. and B. Wijnen, "An Architecture for Describing SNMP Management Frameworks", RFC 2571, April 1999.

[RFC2571]Harrington,D.,Presohn,R.和B.Wijnen,“描述SNMP管理框架的体系结构”,RFC 2571,1999年4月。

[RFC1155] Rose, M. and K. McCloghrie, "Structure and Identification of Management Information for TCP/IP-based Internets", STD 16, RFC 1155, May 1990.

[RFC1155]Rose,M.和K.McCloghrie,“基于TCP/IP的互联网管理信息的结构和识别”,STD 16,RFC 1155,1990年5月。

[RFC1212] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD 16, RFC 1212, March 1991.

[RFC1212]Rose,M.和K.McCloghrie,“简明MIB定义”,STD 16,RFC 1212,1991年3月。

[RFC1215] Rose, M., "A Convention for Defining Traps for use with the SNMP", RFC 1215, March 1991.

[RFC1215]Rose,M.,“定义用于SNMP的陷阱的约定”,RFC1215,1991年3月。

[RFC2578] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.

[RFC2578]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“管理信息的结构版本2(SMIv2)”,STD 58,RFC 2578,1999年4月。

[RFC2579] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999.

[RFC2579]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“SMIv2的文本约定”,STD 58,RFC 2579,1999年4月。

[RFC2580] McCloghrie, K., Perkins, D., Schoenwaelder, J., Case, J., Rose, M. and S. Waldbusser, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999.

[RFC2580]McCloghrie,K.,Perkins,D.,Schoenwaeld,J.,Case,J.,Rose,M.和S.Waldbusser,“SMIv2的一致性声明”,STD 58,RFC 25801999年4月。

[RFC1157] Case, J., Fedor, M., Schoffstall, M. and J. Davin, "Simple Network Management Protocol", STD 15, RFC 1157, May 1990.

[RFC1157]Case,J.,Fedor,M.,Schoffstall,M.和J.Davin,“简单网络管理协议”,STD 15,RFC 1157,1990年5月。

[RFC1901] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, January 1996.

[RFC1901]Case,J.,McCloghrie,K.,Rose,M.和S.Waldbusser,“基于社区的SNMPv2简介”,RFC 19011996年1月。

[RFC1906] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Transport Mappings for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1906, January 1996.

[RFC1906]Case,J.,McCloghrie,K.,Rose,M.和S.Waldbusser,“简单网络管理协议(SNMPv2)版本2的传输映射”,RFC 1906,1996年1月。

[RFC2572] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message Processing and Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2572, April 1999.

[RFC2572]Case,J.,Harrington D.,Presohn R.和B.Wijnen,“简单网络管理协议(SNMP)的消息处理和调度”,RFC 2572,1999年4月。

[RFC2574] Blumenthal, U. and B. Wijnen, "User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2574, April 1999.

[RFC2574]Blumenthal,U.和B.Wijnen,“简单网络管理协议(SNMPv3)第3版基于用户的安全模型(USM)”,RFC 2574,1999年4月。

[RFC1905] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser, "Protocol Operations for Version 2 of the Simple Network Management Protocol (SNMPv2)", RFC 1905, January 1996.

[RFC1905]Case,J.,McCloghrie,K.,Rose,M.和S.Waldbusser,“简单网络管理协议(SNMPv2)版本2的协议操作”,RFC 1905,1996年1月。

[RFC2573] Levi, D., Meyer, P. and B. Stewart, "SNMPv3 Applications", RFC 2573, April 1999.

[RFC2573]Levi,D.,Meyer,P.和B.Stewart,“SNMPv3应用”,RFC 2573,1999年4月。

[RFC2575] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP)", RFC 2575, April 1999.

[RFC2575]Wijnen,B.,Presohn,R.和K.McCloghrie,“用于简单网络管理协议(SNMP)的基于视图的访问控制模型(VACM)”,RFC 2575,1999年4月。

[RFC2570] Case, J., Mundy, R., Partain, D. and B. Stewart, "Introduction to Version 3 of the Internet-standard Network Management Framework", RFC 2570, April 1999.

[RFC2570]Case,J.,Mundy,R.,Partain,D.和B.Stewart,“互联网标准网络管理框架第3版简介”,RFC 25701999年4月。

[RFC2028] Hovey, R. and S. Bradner, "The Organizations Involved in the IETF Standards Process", BCP 11, RFC 2028, October 1996.

[RFC2028]Hovey,R.和S.Bradner,“参与IETF标准过程的组织”,BCP 11,RFC 2028,1996年10月。

[RFC3165] Levi, D. and J. Schoenwaelder, "Definitions of Managed Objects for the Delegation of Management Scripts", RFC 3165, August 2001.

[RFC3165]Levi,D.和J.Schoenwaeld,“管理脚本委托的托管对象定义”,RFC 3165,2001年8月。

[RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", RFC 2863, June 2000.

[RFC2863]McCloghrie,K.和F.Kastenholz,“接口组MIB”,RFC 28632000年6月。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。

11. Editors' Addresses
11. 编辑地址

David B. Levi Nortel Networks 4401 Great America Parkway Santa Clara, CA 95052-8185 USA

David B.Levi Nortel Networks 4401美国加利福尼亚州圣克拉拉大美洲大道95052-8185

   Phone: +1 865 686 0432
   EMail: dlevi@nortelnetworks.com
        
   Phone: +1 865 686 0432
   EMail: dlevi@nortelnetworks.com
        

Juergen Schoenwaelder TU Braunschweig Bueltenweg 74/75 38106 Braunschweig Germany

德国布埃尔滕韦格布伦瑞克大学74/75 38106

   Phone: +49 531 391-3283
   EMail: schoenw@ibr.cs.tu-bs.de
        
   Phone: +49 531 391-3283
   EMail: schoenw@ibr.cs.tu-bs.de
        
12. Full Copyright Statement
12. 完整版权声明

Copyright (C) The Internet Society (2002). All Rights Reserved.

版权所有(C)互联网协会(2002年)。版权所有。

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.

本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。

The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.

上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。

This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。

Acknowledgement

确认

Funding for the RFC Editor function is currently provided by the Internet Society.

RFC编辑功能的资金目前由互联网协会提供。