RFC 3878
Alarm Reporting Control Management Information Base (MIB)
RFC 3878: Alarm Reporting Control Management Information Base (MIB) ๐ฆ (part 1 of 3)
okay bestie, this one is all about the Alarm Reporting Control MIB ๐ It's basically a way for a manager to tell a device "hey, hold off on yelling about alarms for a bit" ๐
The title block tea โ
- Working group: Network Working Group โจ
- RFC number: 3878
- Category: Standards Track ๐ฅ
- Authors: H. Lam (Lucent Technologies), A. Huynh (Cetus Networks) and D. Perkins (SNMPinfo) ๐
- Date: September 2004 ๐
- Obsoletes and updates: the header doesn't list anything this one obsoletes or updates ๐
Status of this Memo ๐
This doc is an Internet standards track protocol spec for the Internet community, and it's asking for discussion and suggestions for improvements ๐ซถ If you want the current standardization state and status of this protocol, check the "Internet Official Protocol Standards" (STD 1) edition that's current. And distribution of this memo is unlimited, so share away ๐ฆ
Copyright Notice ๐ธ
Copyright (C) The Internet Society (2004).
Abstract โจ
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in TCP/IP-based internets. Specifically, it defines objects for controlling the reporting of alarm conditions ๐ฅ
Table of Contents ๐ง
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. The Internet-Standard Management Framework . . . . . . . . . . 2
3. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 2
4. ARC MIB Overview . . . . . . . . . . . . . . . . . . . . . . . 2
4.1. Relationship between ARC mode and Alarm Reporting. . . . 4
5. ARC MIB Object Definitions . . . . . . . . . . . . . . . . . . 4
6. Security Considerations. . . . . . . . . . . . . . . . . . . . 13
7. Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . 14
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14
8.1. Normative References . . . . . . . . . . . . . . . . . . 14
8.2. Informative References . . . . . . . . . . . . . . . . . 15
9. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 15
10. Full Copyright Statement . . . . . . . . . . . . . . . . . . . 16
1. Introduction ๐ธ
The main audience here is network operators who are responsible for running network resources ๐ This document defines an alarm reporting control (ARC) MIB module, which gives a manager a mechanism to suppress or defer the reporting of alarm conditions, based on the resource ID and the alarm condition type ๐
2. The Internet-Standard Management Framework ๐ฆ
Want the full overview of the Internet-Standard Management Framework docs? Go look at section 7 of RFC 3410 [RFC3410] ๐ง
Managed objects are accessed through a virtual information store called the Management Information Base, or MIB ๐ MIB objects are generally accessed through the Simple Network Management Protocol (SNMP) โจ Objects in the MIB are defined using the mechanisms in the Structure of Management Information (SMI) ๐ฅ This memo specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580] ๐
3. Conventions ๐
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 BCP 14, RFC 2119 [RFC2119] ๐
4. ARC MIB Overview ๐ธ
There's a real need for a way to control the reporting of alarm conditions for resources in a network device ๐ญ For example, a manager might want to (a) inhibit the reporting of alarm conditions of a resource until the resource is problem-free, (b) inhibit the reporting of alarm conditions of a resource for a specified time period, or (c) inhibit the reporting of alarm conditions of a resource indefinitely, until the managing system explicitly allows it later on ๐
The alarm reporting control (ARC) feature gives you automatic in-service provisioning ๐ It leaves enough time for service setup, customer testing and other maintenance stuff while everything sits in an "alarm-free" state ๐ซถ Once a resource is "problem-free", alarm reporting can be turned back on automatically or manually (aka allowed) โจ
When a network resource is in ARC mode (i.e., in nalm, nalmTI, nalmQI or nalmQICD states, as described in the MIB), technicians and managing systems don't get flooded with unnecessary work items during things like service provisioning and network setup/teardown ๐ That cuts maintenance costs and makes operating and maintaining these systems way smoother ๐ฅ Putting a network resource in ARC mode shall not affect the availability of active alarm condition information for potential retrieval ๐
ITU-T Recommendation M.3100 Amendment 3 [M.3100 Amd3] covers the business requirements, analysis and design of the Alarm Reporting Control feature ๐ง
This document defines the MIB objects that support a subset of the ARC functions described in M.3100 Amd3 ๐ Specifically, it defines a table that can be used to specify the ARC settings for the resources in a system ๐
M.3100 Amendment 3 [M.3100 Amd3] defines five ARC states: alm, nalm, nalmQI, nalmQICD and nalmTI ๐ In the ARC MIB module, the arcState object models those M.3100 ARC states. Note that the alm state (alarm reporting is allowed) is not in the enumeration for this object's value, but the MIB implicitly supports it anyway ๐ฆ Once a resource enters normal reporting mode (i.e., into the alm state) for the specified alarm type, the matching row is automatically deleted from the arc table ๐ญ You can also set arcState to alm manually, by setting the RowStatus object to 'destroy' ๐
The ARC MIB module in this document gives you a way to control the reporting of alarm conditions ๐ A set of applicable alarm conditions is defined in ITU-T Recommendation M.3100 [M.3100] and they're called "probable causes" ๐ซถ These probable causes (alarm conditions) are included in the IANAItuProbableCause TC, which is defined in the IANA-ITU-ALARM-TC MIB module [RFC3877]. The IANA-ITU-ALARM-TC MIB module is maintained on the IANA web-site [ITUALARMTC]. [RFC3877]. โจ
The ARC MIB module defines an IANAItuProbableCauseOrZero TC, which can take any value of IANAItuProbableCause or 0 ๐ฅ The ARC MIB module also uses IANAItuProbableCauseOrZero to define the ARC settings for the managed resource in the network elements ๐ Defining and storing alarms (active and history alarms, standing and transient alarms, and alarm notifications) is out of scope for this document ๐ธ
4.1. Relationship between ARC mode and alarm reporting ๐
When the ARC MIB module is used in a managed system, these rules apply ๐ง
- For an alarm condition raised before entering ARC mode, the alarm raised and alarm cleared reports get sent as usual ๐
- For an alarm condition raised after entering ARC mode and also cleared before exiting ARC mode, no alarm raised report gets sent and no alarm cleared report gets sent either ๐
- For an alarm condition raised after entering ARC mode and not cleared when exiting ARC mode, the alarm raised report is deferred until the moment ARC mode is exited ๐ญ The alarm cleared report gets sent as usual (i.e., at the time the alarm is cleared) ๐
Further details of the ARC function are in M.3100 Amd3 [M.3100 Amd3] ๐ฆ
5. ARC MIB Object Definition ๐
Here's the actual MIB module, copied exactly as written ๐ซถ Don't mess with a single character in here, implementers rely on every bit of it ๐
ARC-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, mib-2
FROM SNMPv2-SMI -- [RFC2578]
TEXTUAL-CONVENTION, RowStatus, StorageType
FROM SNMPv2-TC -- [RFC2579]
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF -- [RFC2580]
ResourceId
FROM ALARM-MIB; -- [RFC3877]
arcMibModule MODULE-IDENTITY
LAST-UPDATED "200409090000Z" -- September 09, 2004
ORGANIZATION "IETF Distributed Management Working Group"
CONTACT-INFO
"WG EMail: disman@ietf.org
Subscribe: disman-request@ietf.org
http://www.ietf.org/html.charters/disman-charter.html
Chair: Randy Presuhn
E-mail: randy_presuhn@mindspring.com
Editor: Hing-Kam Lam
Lucent Technologies, 4C-616
101 Crawfords Corner Road
Holmdel, NJ 07733
USA
Tel: +1 732 949 8338
E-mail: hklam@lucent.com"
DESCRIPTION
"The MIB module describes the objects for controlling a resource
in reporting alarm conditions that it detects.
Copyright (C) The Internet Society (2004). This version
of this MIB module is part of RFC 3878; see the RFC
itself for full legal notices."
REVISION "200409090000Z" -- September 09, 2004
DESCRIPTION
"Initial version, published as RFC 3878."
::={ mib-2 117 }
------------------
-- TEXTUAL-CONVENTION
------------------
IANAItuProbableCauseOrZero ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This TC can take any value of IANAItuProbableCause or 0.
IANAItuProbableCause is defined in the IANA-ITU-ALARM-TC
module, which is maintained at the IANA web site and
published in the Alarm MIB document (see RFC 3877)."
REFERENCE
"IANA-ITU-ALARM-TC MIB module as maintained at the IANA web site.
The initial module was also published in RFC 3877."
--
SYNTAX INTEGER (0..2147483647)
------------------
-- MIB Objects
------------------
arcTimeIntervals OBJECT IDENTIFIER ::= { arcMibModule 1 }
arcObjects OBJECT IDENTIFIER ::= { arcMibModule 2 }
arcTITimeInterval OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This variable indicates the time interval used for the nalmTI
state, in units of second. It is a pre-defined length of time
in which the resource will stay in the nalmTI state before
transition into the alm state.
Instances of this object SHOULD persist across agent restarts."
::= { arcTimeIntervals 1 }
arcCDTimeInterval OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This variable indicates the time interval used for the nalmQICD
state, in units of second. It is a pre-defined length of time
in which the resource will stay in the nalmQICD state before
transition into the alm state after it is problem-free.
Instances of this object SHOULD persist across agent restarts."
::= { arcTimeIntervals 2 }
Okay bestie, the MIB objects are where things get spicy ๐ ๐ฆ. Each block below is copied exactly, and my notes are right under it so you can vibe with the logic โจ
arcTable OBJECT-TYPE
SYNTAX SEQUENCE OF ArcEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table of Alarm Reporting Control (ARC) settings on the system.
Alarm Reporting Control is a feature that provides an automatic
in-service provisioning capability. Alarm reporting is turned
off on a per-resource basis for a selective set of potential
alarm conditions to allow sufficient time for customer testing
and other maintenance activities in an 'alarm free' state.
Once a resource is ready for service, alarm reporting is
automatically or manually turned on.
Functional description and requirements of Alarm Reporting
Control are defined in ITU-T Recommendation M.3100 Amendment 3
[M.3100 Amd3]."
REFERENCE
"ITU Recommendation M.3100 Amendment 3, 'Generic Network
Information Model', January 2001."
::= { arcObjects 1 }
arcTable is the whole ARC settings table ๐. Alarm Reporting Control is basically automatic in-service provisioning: alarm reporting gets switched off for a resource on a selective set of alarm conditions, so testing and maintenance can happen in an "alarm free" state ๐ธ. Once the resource is ready for service, reporting gets turned on automatically or manually. The full functional description lives in ITU-T M.3100 Amendment 3, so that's your go-to source ๐.
arcEntry OBJECT-TYPE
SYNTAX ArcEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row that contains information about an ARC setting
of a resource in the system.
Implementation need to be aware that if the total size of
arcIndex and arcNotificationId exceeds 114 sub-IDs, then OIDs
of column instances in this table will have more than 128
sub-IDs and cannot be access using SNMPv1, SNMPv2c, or snmpv3."
INDEX { arcIndex, arcAlarmType, arcNotificationId }
::= { arcTable 1 }
ArcEntry ::=
SEQUENCE {
arcIndex ResourceId,
arcAlarmType IANAItuProbableCauseOrZero,
arcNotificationId OBJECT IDENTIFIER,
arcState INTEGER,
arcNalmTimeRemaining Unsigned32,
arcRowStatus RowStatus,
arcStorageType StorageType
}
arcEntry is one conceptual row holding one ARC setting for one resource ๐ฆ. Heads up: the index is arcIndex, arcAlarmType, and arcNotificationId together. If arcIndex and arcNotificationId add up to more than 114 sub-IDs, the column OIDs go past 128 sub-IDs, and then they can't be accessed over SNMPv1, SNMPv2c, or snmpv3 ๐ญ. That's the kind of detail implementers need to know about, so keep it on your radar ๐ซถ. The ArcEntry SEQUENCE just lists the seven columns in order.
arcIndex OBJECT-TYPE
SYNTAX ResourceId
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object uniquely identifies a resource, which is under the
arcState's control for the associated arcAlarmType.
For example, if the resource is an interface, this object will
point to an instance of interface, e.g., ifIndex.1."
::= { arcEntry 1 }
arcIndex picks out the resource that arcState is in charge of for the matching arcAlarmType ๐ง. Example time: if the resource is an interface, this points at an instance of interface, like ifIndex.1 ๐.
arcAlarmType OBJECT-TYPE
SYNTAX IANAItuProbableCauseOrZero
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object identifies the alarm condition type controlled by the
arcState. It specifies the value 0 or a value of
IANAItuProbableCause that is applicable to the resource.
IANAItuProbableCause is defined in the IANA-ITU-ALARM-TC
module in the Alarm MIB document.
The value of zero (0) implies any probable causes that are
applicable to the resource. Usually, the applicable probable
causes of a resource are specified in the resource-specific mib."
::= { arcEntry 2 }
arcAlarmType names the alarm condition that arcState controls ๐ฎ. It's either 0 or an IANAItuProbableCause value that fits the resource. That type is defined in the IANA-ITU-ALARM-TC module over in the Alarm MIB document. Zero is the wildcard: it covers any probable causes that apply to the resource, and usually those causes get spelled out in the resource-specific MIB ๐.
arcNotificationId OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object identifies the type of notification to be suppressed.
The notification type identified should be the one normally used
by the resource for reporting its alarms. When the value of 0.0 is
specified for this object, it implies all applicable notification
types."
::= { arcEntry 3 }
arcNotificationId is the notification type you want suppressed ๐. Ideally it's the one the resource normally uses for its alarms. Setting it to 0.0 means every applicable notification type gets the hush treatment ๐คซ.
arcState OBJECT-TYPE
SYNTAX INTEGER {
nalm (1),
nalmQI (2),
nalmTI (3),
nalmQICD (4)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Defined in M.3100 Amendment 3 [M.3100 Amd3], there are five
ARC states: alm, nalm, nalmQI, nalmQICD, and nalmTI.
alm: Alarm reporting is turned on (i.e., is allowed).
nalm: Alarm reporting is turned off (i.e., not allowed).
nalmQI: nalm - Qualified Inhibit. Alarm reporting is
turned off until the managed entity is qualified
problem-free for an optional persistence interval.
Problem-free means that the condition corresponding
to the specified alarm type is cleared.
nalmQICD: nalmQI - Count down. This is a substate of nalmQI
and performs the persistence timing countdown
function after the managed entity is qualified
problem-free.
nalmTI: nalm - Timed Inhibit. Alarm reporting is turned
off for a specified time interval.
alm may transition to nalm, nalmQI or nalmTI by management request.
nalm may transition to alm, nalmQI or nalmTI by management request.
nalmQI may transition to nalm or alm by management request.
nalmQI may transition to alm automatically
if qualified problem-free (if nalmQICD is not supported) or
if the CD timer expired (if nalmQICD is supported)
nalmTI may transition to alm or nalm by management request.
nalmTI may transition to alm automatically if the TI timer expired.
Further details of ARC state transitions are defined in Figure 3
of M.3100 Amd3 [M.3100 Amd3].
According to the requirements in M.3100 Amd3, a resource
supporting the ARC feature shall support the alm state and at
least one of the nalm, nalmTI, and nalmQI states. The nalmQICD
state is an optional substate of nalmQI.
The arcState object controls the alarm reporting state of a
resource. Note that the state alm (alarm reporting is allowed) is
not listed in the enumeration of the value of this object. However,
this state is implicitly supported by the mib.
Once a resource enters the normal reporting mode (i.e., in the alm
state) for the specified alarm type, the corresponding
row will be automatically deleted from the arc table.
Also the manual setting of arcState to alm can be achieved through
setting the RowStatus object to 'destroy'.
The nalamQICD state is a transitional state from nalmQI to alm. It
is optional depending on the resource type and the implementation
of the resource. If it is supported, before the state
transitions from nalmQI to alm, a count down period is activated
for a duration set by the object arcNalmCDTimeInterval. When the
time is up, the arcState transitions to alm."
::= { arcEntry 4 }
arcState is the big one, bestie ๐๐ฅ. There are five ARC states in M.3100 Amendment 3: alm, nalm, nalmQI, nalmQICD, and nalmTI ๐ . Here's the tea:
- alm: alarm reporting is on, aka allowed ๐
- nalm: alarm reporting is off, aka not allowed ๐
- nalmQI: Qualified Inhibit. Reporting stays off until the managed entity is qualified problem-free for an optional persistence interval ๐ง
- nalmQICD: a substate of nalmQI that runs the persistence countdown once the entity is qualified problem-free โณ
- nalmTI: Timed Inhibit, where reporting stays off for a set time interval โฐ
Transitions are where it gets iconic ๐. alm can move to nalm, nalmQI, or nalmTI on a management request. nalm can go to alm, nalmQI, or nalmTI on request. nalmQI can go to nalm or alm on request, and it can also flip to alm automatically once it's qualified problem-free (or when the CD timer expires, if nalmQICD is supported). nalmTI can go to alm or nalm on request, and it goes to alm automatically when the TI timer expires ๐ฆ. Full state diagrams live in Figure 3 of M.3100 Amd3.
Now the conformance vibes: a resource supporting ARC has to support alm, plus at least one of nalm, nalmTI, and nalmQI. nalmQICD is optional ๐ธ. Notice alm isn't in the enumeration because the MIB handles it implicitly โจ. When a resource goes back to normal reporting (alm), its row gets auto-deleted from the arc table. Setting arcState to alm by hand can also be done by setting RowStatus to 'destroy' ๐งน. Last thing: nalmQICD is a transitional state from nalmQI to alm, and if it's supported, a countdown runs for the duration in arcNalmCDTimeInterval ๐ฐ๏ธ.
arcNalmTimeRemaining OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the time remaining in the nalmTI state
or the nalmQICD state, in units of second.
At the moment the resource enters the nalmTI state, this variable
will have the initial value equal to the value of
arcNalmTITimeInterval and then starts decrementing as time goes by.
Similarly at the moment the resource enters the nalmQICD state,
this variable will have the initial value equal to the value of
arcNalmCDTimeInterval and then starts decrementing as time goes by.
This variable is read-create and thus will allow the manager to
write (extend or shorten), as needed, the remaining time when the
resource is in the nalmTI or nalmQICD state.
If this variable is supported and the resource is currently not in
the nalmTI nor nalmQICD state, the value of this variable shall
equal to zero."
::= { arcEntry 5 }
arcNalmTimeRemaining is a countdown clock in seconds โฑ๏ธ. When a resource enters nalmTI or nalmQICD, it starts at the matching interval value and ticks down from there ๐ซ. Managers can write to it, so they can extend or shorten the remaining time while the resource is in one of those two states ๐. If it's supported and the resource isn't in nalmTI or nalmQICD, the value sits at zero ๐ด.
arcRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This columnar object is used for creating and deleting a conceptual
row of the arcTable. It is used to create and delete an arc
setting.
Setting RowStatus to createAndGo or createAndWait implies creating
a new ARC setting for the specified resource and alarm type.
Setting RowStatus to destroy implies removing the ARC setting and
thus has the effect of resuming normal reporting behaviour of the
resource for the alarm type.
Only the objects arcState, arcNalmTimeRemaining, and arcRowStatus
can be updated when a row is active. All the objects, except
arcNalmTimeRemaining, must be set before the row can be activated."
::= { arcEntry 6 }
arcRowStatus is the create-and-delete switch for rows ๐ฌ. createAndGo or createAndWait makes a new ARC setting for that resource and alarm type ๐ฑ. destroy removes the setting and puts normal reporting back in place ๐๏ธ. Once a row is active, only arcState, arcNalmTimeRemaining, and arcRowStatus can change. Everything except arcNalmTimeRemaining has to be set before the row can be activated, so no skipping steps ๐.
arcStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The storage type for this conceptual row.
Conceptual rows having the value 'permanent' must
allow write-access at a minimum to arcState.
Note that arcState must allow change by management request.
Therefore, no row can be created with 'readOnly'.
If a set operation tries to set the value to 'readOnly',
then an 'inconsistentValue' error must be returned."
DEFVAL { nonVolatile }
::= { arcEntry 7}
arcStorageType is where the row's storage type lives ๐พ. Rows marked 'permanent' still need write access to arcState at minimum, since arcState has to stay changeable by management โ๏ธ. That's why no row can be created as 'readOnly'. If someone tries to set 'readOnly', the answer is an 'inconsistentValue' error ๐ โโ๏ธ. The default is nonVolatile ๐.
--------------------------
-- conformance information
--------------------------
arcConformance OBJECT IDENTIFIER ::= { arcMibModule 3 }
arcCompliances OBJECT IDENTIFIER ::= { arcConformance 1 }
arcCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for systems supporting
the ARC MIB module."
MODULE -- this module
MANDATORY-GROUPS {
arcSettingGroup
}
OBJECT arcStorageType
WRITE-SYNTAX StorageType {
volatile(2),
nonVolatile(3),
permanent(4)
}
DESCRIPTION
"Support for value 'other' is not required.
The arcState object must allow change by management
request. Therefore, no row can be created with
'readOnly'."
GROUP arcTIGroup
DESCRIPTION
"This group is REQUIRED for ARC settings
that provide the Time Inhibit (TI) function."
GROUP arcQICDGroup
DESCRIPTION
"This group is REQUIRED for ARC settings
that provide the Quality Inhibit (QI) Count Down (CD)
function."
::= { arcCompliances 1 }
Conformance time! ๐ This part spells out what a system needs to do to claim compliance. arcSettingGroup is mandatory. Support for the 'other' value of arcStorageType isn't required, and WRITE-SYNTAX accepts volatile, nonVolatile, and permanent ๐งพ. The TI group is REQUIRED for ARC settings that provide Time Inhibit, and the QICD group is REQUIRED for ARC settings that provide the Quality Inhibit Count Down function ๐ซถ.
arcGroups OBJECT IDENTIFIER ::= { arcConformance 2 }
arcSettingGroup OBJECT-GROUP
OBJECTS {
arcState,
arcRowStatus,
arcStorageType
}
STATUS current
DESCRIPTION
"A collection of objects applicable to
basic ARC setting."
::= { arcGroups 1}
arcTIGroup OBJECT-GROUP
OBJECTS {
arcTITimeInterval,
arcNalmTimeRemaining
}
STATUS current
DESCRIPTION
"A collection of objects applicable to
ARC setting that support the Time Inhibit (TI)
function."
::= { arcGroups 2}
arcQICDGroup OBJECT-GROUP
OBJECTS {
arcCDTimeInterval,
arcNalmTimeRemaining
}
STATUS current
DESCRIPTION
"A collection of objects applicable to
ARC setting that support the Quality Inhibit (QI)
Count Down (CD) function."
::= { arcGroups 3}
END
Groups time ๐งฉ. arcSettingGroup covers arcState, arcRowStatus, and arcStorageType for basic ARC settings ๐. arcTIGroup covers arcTITimeInterval and arcNalmTimeRemaining for the Time Inhibit function โฐ. arcQICDGroup covers arcCDTimeInterval and arcNalmTimeRemaining for the Quality Inhibit Count Down function ๐ฎ. And that's the module wrapped up, END ๐
6. Security Considerations ๐
okay bestie, security is serious, so this section gets the full drama ๐ญ๐ this MIB module has a bunch of management objects marked read-write and/or read-create. In some network environments those objects can be sensitive or vulnerable, and SET operations on an unprotected, non-secure network can really mess with network operations ๐จ These are the tables and objects, and their sensitivity/vulnerability:
arcTITimeInterval,
arcCDTimeInterval,
arcState,
arcNalmTimeRemaining,
arcRowStatus,
arcStorageType.
Changing these can be disruptive โจ The effects can range from alarm notifications getting dropped all the way to a flood of unwanted alarm notifications coming from the network. And if reporting of an alarm gets suppressed or deferred, important diagnostic information might not arrive in time, including info that could help you spot an attack ๐
Some of the readable objects in this MIB module (the ones whose MAX-ACCESS is anything other than not-accessible) can also be sensitive or vulnerable in some environments ๐ซฃ So it matters a lot to control even GET and/or NOTIFY access to them, and possibly even encrypt their values when they travel over the network via SNMP. Same objects as before:
arcTITimeInterval,
arcCDTimeInterval,
arcState,
arcNalmTimeRemaining,
arcRowStatus,
arcStorageType.
Reading these tells you about the setting that controls how alarm notifications get generated, so yes, they're worth guarding ๐
Here's the tea ๐ต SNMP versions before SNMPv3 didn't include adequate security. Even if the network itself is secure (for example by using IPSec), there's no control over who on that secure network gets to access and GET/SET (read/change/create/delete) the objects in this MIB module. Not it ๐
It is RECOMMENDED that implementers consider the security features provided by the SNMPv3 framework (see [RFC3410], section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy) ๐
Also, deployment of SNMP versions prior to SNMPv3 is NOT RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and turn on cryptographic security ๐ก๏ธ After that, it's on the customer/operator to make sure that the SNMP entity giving access to an instance of this MIB module is configured so that only the principals (users) with legitimate rights can access the objects and actually GET or SET (change/create/delete) them. Locking the door is the main character move ๐
7. Acknowledgements ๐ซถ
The authors wish to thank Brian Teer and Sharon Chisholm for reviewing and commenting on this document. Shoutout to them, they're the real MVPs ๐ธ
8. References โจ
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirements Levels", BCP 14, RFC 2119, March 1997.
[RFC2578] McCloghrie, K., Perkins, D., and J. Schoenwaelder,
"Structure of Management Information Version 2
(SMIv2)", STD 58, RFC 2578, April 1999.
[RFC2579] McCloghrie, K., Perkins, D., and J. Schoenwaelder,
"Textual Conventions for SMIv2", STD 58, RFC 2579,
April 1999.
[RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder,
"Conformance Statements for SMIv2", STD 58, RFC 2580,
April 1999.
[RFC3877] Chisholm, S. and D. Romascanu, "Alarm Management
Information Base (MIB)", RFC 3877, September 2004.
[ITUALARMTC] http://www.iana.org/assignments/ianaitualarmtc-mib
[M.3100] ITU Recommendation M.3100, "Generic Network Information
Model", July 1995.
[M.3100 Amd3] ITU Recommendation M.3100 Amendment 3, "Generic Network
Information Model", January 2001.
8.2. Informative References
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for
Internet-Standard Management Framework", RFC 3410,
December 2002.
9. Authors' Addresses ๐ฎ
Hing-Kam Lam
Lucent Technologies
101 Crawfords Corner Road, Room 4C-616
Holmdel, NJ 07733
USA
Phone: +1 732-949-8338
EMail: hklam@lucent.com
An-ni Huynh
Cetus Networks
USA
EMail: a_n_huynh@yahoo.com
David T. Perkins
548 Quailbrook Ct
San Jose, CA 95110
USA
Phone: +1 408-394-8702
EMail: dperkins@snmpinfo.com
10. Full Copyright Statement โ๏ธ
Copyright (C) The Internet Society (2004). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property ๐งพ
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights 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; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat 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 implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.
Acknowledgement ๐
Funding for the RFC Editor function is currently provided by the Internet Society. โจ
๐ฆ where this page comes from
- ietf: rfc3878 2004-09
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms