One document matched: draft-cole-manet-report-mib-02.xml
<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc1757 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1757.xml">
<!ENTITY rfc2021 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2021.xml">
<!ENTITY rfc2863 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2863.xml">
<!ENTITY rfc3418 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3418.xml">
<!ENTITY rfc2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY rfc2578 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2578.xml">
<!ENTITY rfc2579 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2579.xml">
<!ENTITY rfc2580 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2580.xml">
<!ENTITY rfc3410 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3410.xml">
]>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc strict="no"?>
<?rfc rfcedstyle="yes"?>
<rfc category="std" docName="draft-cole-manet-report-mib-02" ipr="trust200902">
<front>
<title abbrev="The REPORT-MIB">Definition of Managed Objects for
Performance Reporting</title>
<author fullname="Robert G. Cole" initials="R.G." surname="Cole">
<organization>Johns Hopkins University</organization>
<address>
<postal>
<street>3400 North Charles Street</street>
<city>Baltimore</city>
<region>Maryland</region>
<code>21218</code>
<country>USA</country>
</postal>
<phone>+1 443 910 4420</phone>
<email>rgcole01@comcast.net</email>
<uri>http://www.cs.jhu.edu/~rgcole/</uri>
</address>
</author>
<author fullname="Joseph Macker" initials="J.M." surname="Macker">
<organization>Naval Research Laboratory</organization>
<address>
<postal>
<street></street>
<city>Washington</city>
<region>D.C.</region>
<code>20375</code>
<country>USA</country>
</postal>
<email>macker@itd.nrl.navy.mil</email>
</address>
</author>
<author fullname="Al Morton" initials="A." surname="Morton">
<organization>AT&T Laboratories</organization>
<address>
<postal>
<street></street>
<city>Middletown</city>
<region>N.J.</region>
<code>07724</code>
<country>USA</country>
</postal>
<email>amorton@att.com</email>
</address>
</author>
<date />
<area>Operations and Management</area>
<workgroup>Internet Engineering Task Force</workgroup>
<keyword>Network Management</keyword>
<keyword>Management Information Base</keyword>
<keyword>MIB</keyword>
<keyword>SMIv2</keyword>
<keyword>Reporting</keyword>
<keyword>MANET</keyword>
<abstract>
<t>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 objects for configuring autonomous
report generation on any device that supports MIBs containing
counter and gauge objects for performance monitoring. This allows a management station
to instruct a device to build off-line reports to be collected asynchronously by
the management station.</t>
</abstract>
</front>
<middle>
<section title="Introduction">
<t>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 objects for configuring autonomous, off-line report
generation for performance monitoring on any device supporting
MIBs containing variables that resolve to type Integer32
(i.e., Integer32, Counter, Gauge, or TimeTicks).
This should be useful to devices or networks where efficient use
of bandwidth is of concern or where intermittent connectivity
is common. Hence, the REPORT-MIB is useful for devices managed over
some Mobile Ad-Hoc Networks (MANETs) or Disruption Tolerant Networks (DTNs).</t>
<t>The REPORT-MIB offers three types of off-line reporting. One type offering
reports which present statistical analysis of the objects being
tracked; found within the reportStatsGroup. The second type
offering a means to collect sampled data related to defined
MIB objects. This second type of reporting is contained in
the reportSampledGroup. The third offering
reports which present (collect) raw data values and their
time of change from the objects
being tracked; found within the reportHistoryGroup.</t>
<t>For statistical reporting, the REPORT-MIB borrows
from the RMON <xref target="RFC1757"></xref> ReportsControl and Reports Tables.
Here the reportStatsCapabilitiesGroup defines the capabilities
of the device with respect performance monitoring and
statistical analysis. Some analysis is hard-coded into
the definition of the reportStatsDataGroup while the device
can also advertise extended statistical reporting via the
reportMetricExtDefTable. The reportsControlTable
specifies the report metrics, the
Object ID to monitor and other aspects of the statistical
report development and storage.</t>
<t>For the collection of sampled data, the REPORT-MIB
draws directly from the usrHistoryGroup from RMON 2
<xref target="RFC2021"></xref>.
Here the reportSampledControlTable allows the user to
define aspects of the report for sampled data, including
the number of MIB objects to be sampled and the nature of the
sampling frequency and overall report duration. This
group uses the notion of buckets, which contained sampled data
from a set of idetified MIB objects sampled at the same time point.
The report consists of the buckets each containing sets of sampled
data from the same MIB objects but at differing sampling times.
The reportSampledObjectTable allows the user to identify
the multiple MIB objects to be sampled. The reportSampledDataTable
contains the storage of the reported sampled data contained within
buckets, one for each sampling instance.</t>
<t>For the collection of raw data, the REPORT-MIB
contains a reportHistoryGroup comprised of the
reportHistoryControlTable for control of historical data
reports and the reportHistoryDataTable for the storage of the
historical reports.</t>
<t>Various compliance groups which allow for development of
raw data collection reports, collection of sampled data
reports or only statistical data
reports, or all combinations.</t>
</section>
<section title="The Internet-Standard Management Framework">
<t>For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to section 7 of RFC
3410 <xref target="RFC3410"></xref>.</t>
<t>Managed objects are accessed via a virtual information store, termed
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 defined 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 <xref
target="RFC2578"></xref>, STD 58, RFC 2579 <xref
target="RFC2579"></xref> and STD 58, RFC 2580 <xref
target="RFC2580"></xref>.</t>
</section>
<section title="Conventions">
<t>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 <xref
target="RFC2119"></xref>.</t>
</section>
<section title="Overview">
<t>The Reporting MIB ...
and notifications.</t>
<section title="REPORT-MIB Management Model">
<t>This section describes the management model for the Reporting
MIB process. First, the model for the reportStatsGroup is presented.
Then the model for the reportSampledGroup and the
reportHistoryGroup are presented.</t>
<t>Figure 1 illustrates a potential use of the REPORT-MIB
for the generation of off-line, remotely generated reports.
The management station on the left hand side of the illustration
instructs the remote device to create reports through manipulation
of the ReportCntrl Objects in the REPORT-MIB resident on the
remote device. The reports instruct the device to monitor the
status of specified counters (on other MIBs) periodically
and to generate a set of metrics describing the temporal
behavior of those counter values. The reports are stored locally
until the management station decides to pull them off the
device. The figure shows a case where the REPORT-MIB generates
a notification that Report_2 has completed, prompting the management
station to pull Report_2 from the device.</t>
<figure>
<preamble />
<artwork><![CDATA[
Mgmt Device
Station
REPORT-MIB MIB_1
+---------+ +-----+
| | | |
Build_Rep_1 |+-------+| +--+ |
+----------------->||cntrl_1||<------>|PC| |
|+-------+|<-+ +--+--+
| | |
| | | MIB_2
| | | +-----+
| | | |
| | | +--+ |
| | +---->|PC| |
Build_Rep_2 |+-------+| +-->+--+--+
+----------------->||cntrl_2||<---+
|+-------+|
| |
| |
Build_Rep_3 |+-------+|
+----------------->||cntrl_3||<---+ MIB_n
|+-------+| | +-----+
| | | | |
|+-----+ | | +--+ |
||Rep_1| | +-->|PC| |
|+-----+ | +--+--+
| |
|+-----+ |
<------------------||Rep_2| |
Notf_Rep_2 |+-----+ |
| |
|+-----+ |
||Rep_3| |
|+-----+ |
Get_Rep_2 | |
+----------------->| |
| |
<-----------------+| |
Send_Rep_2 +---------+
Figure 1: REPORT-MIB front-end report generation process.
]]></artwork>
<postamble />
</figure>
<t>The REPORT-MIB's reportStatsGroup defines specifically a set of metrics which are
computed within all reports. It also allows for the specification
of metric extensions which are local to the specific implementation
of the REPORT-MIB. These are identified in the reportStatsCapabilitiesGroup
metricExtension Table.</t>
<t>Each metric has an associated Object ID of type counter associated
with it. The control table specifies a report interval and a
bin interval. The report interval is an integral multiple
of the bin interval. For each bin interval, the device
identifies the change in the counter value over the bin interval (called x_i)
and then computes the associated metric, e.g., sum, sum of the square,
etc, over the set {x_i}. It maintains the sum of these computations within the metric
objects in the 'reportStatsDataTable'. Once the report interval
is complete, the management station has enough information
to compute a set of interesting and useful statistics.</t>
<t>The computational model of the reportStatsGroup of the
REPORT-MIB is illustrated in the figure below.
The important controls are a) the contrlInterval, b) the cntrlBinInterval,
c) the specific counterObjectId, and d) the metric. In the figure
x_i represents the ith value of the counter change, i.e.,
x_i = counterValue(t_i+1) - counterValue(t_i). The metrics reported
are then computed from the set (x_i). Three examples are identified
in the figure, e.g., StatSumX, StatSumSq and StatMaxX. Other existing and
potential metrics are discussed below.</t>
<figure>
<preamble />
<artwork><![CDATA[
|
|<--------------------- cntrlInterval ---------------------------->|
| |
| | | | | | | |
| x_0 | x_1 | x_2 | x_3 | ... |x_n-2|x_n-1|
+-----+-----+-----+-----+--- ---+-----+-----+
^ ^ ^ ^ ^ ^ ^ ^
t_0 t_1 t_2 t_3 t_4 t_n-2 t_n-1 t_n
where t_i - t_i-1 = cntrlBinInterval
n = cntrlInterval / cntrlBinInterval
StatSumX = Sum(x_i) from i=0, ..., n-1
StatSumSq = Sum((x_i)^2) from i=0, ..., n-1
StatMaxX = Max(x_i) for i=0, ..., n-1
Figure 2: REPORT-MIB statistical analysis computation process.
]]></artwork>
<postamble />
</figure>
<t>The following observations and analysis techniques are not all
inclusive. Rather these are the ones we have come up with at the
time of writing this document.</t>
<t><list style="symbols">
<t>Number - </t>
<t>Frequency - </t>
<t>The time interval is that specified in the control table. It
is not a metric datum, but it is associated with the metric
sample - </t>
<t>Maximum - </t>
<t>Minimum - </t>
<t>Range - </t>
<t>Arithmetic Mean - </t>
<t>Root Mean Square - </t>
<t>Variance - </t>
<t>Standard Deviation - </t>
<t>Slope of a least-squares line - </t>
<t>These are accessible from the statistical datum provided by this MIB
module.</t>
</list></t>
<t>The REPORT-MIB also provides for the collection of sampled data
instead of statistical data. It does this by importing (copying)
the usrHistory group from RMON2
<xref target="RFC2021"></xref> which allows for the
generation of reports collecting the sampled object values binned
for the purpose of aggregation and efficiency of collection.
These are defined within the reportSampledGroup. The model
used for this type of report generation is based upon three
tables. The reportSampledControlTable defines aspects of the
report generation related to duration of the reporting interval,
the bin (or bucket) sizes for the report, and the number of object
values collected for each bucket. The reportUsrHistoryObjectTable
identifies the specific MIB objects whose values and binned
within the report. And the reportSampledDataTable contains
the binned data values collected for the report.</t>
<t>The REPORT-MIB also provides for the collection of historical data
instead of statistical or sampled data. It does this by defining
the reportHistoryControlTable for the control of the historical
reports and the reportHistoryDataTable for the storage of the
historical reports.</t>
</section>
<section title="Terms">
<t>The following definitions apply throughout this document:</t>
<t><list style="symbols">
<t>Capabilities - Objects related to the capabilities of the device and
MIB implemented on the device. Some objects are explicitly defined
within the REPORT-MIB. Other capabilities can be exposed through
the REPORT-MIB, but which are not explicitly defined within this
document. These later capabilities include objects, e.g., for
new metrics.</t>
<t>Control - Objects defined within this document which set the
parameters for specific reports to be generated offline on the
the remote managed device.</t>
<t>Data - Objects which hold the report data, either statistical, sampled
or raw history data.</t>
</list></t>
</section>
</section>
<section title="Structure of the MIB Module">
<t>This section presents the structure of the REPORT-MIB module. The
objects are arranged into the following groups:</t>
<t><list style="symbols">
<t>reportMIBNotifications - defines the notifications associated with the
REPORT-MIB.</t>
<t>reportMIBObjects - defines the objects forming the basis for the REPORT
MIB. These objects are divided up by function into the following
groups:</t>
<t><list style="symbols">
<t>Statistics Group - This group contains the objects which
support the generation of reports of a statistical nature.</t>
<t>Sampled Group - This group contains the objects which
support the generation (collection) of reports exposing
sampled data values.</t>
<t>History Group - This group contains the objects which
support the generation (collection) of historical reports exposing
raw data values.</t>
</list></t>
<t>reportMIBConformance - Defines a variety of conformance of
implementations of this REPORT-MIB.</t>
</list></t>
<section title="Textual Conventions">
<!--Generic and Common Textual Conventions
can be found summarized at
http://www.ops.ietf.org/mib-common-tcs.html-->
<t>The textual conventions used in the REPORT-MIB are as follows. The
RowStatus textual convention is imported from
RFC 2579 <xref target="RFC2579" />.</t>
</section>
<section title="The Statistics Group">
<t>The REPORT-MIB device has a ....</t>
<t><list style="symbols">
<t>StatsCapabilities - ...</t>
<t>StatsControl - ...</t>
<t>StatsData - ...</t>
</list></t>
<t> The reportStatsCapabilitiesGroup contains .....</t>
<t> The reportStatsControlGroup contains .....</t>
<t>The reportStatsDataGroup contains ...
As and example of how the metrics are to be computed
within the REPORT-MIB, consider the standard metric
object 'reportStatsDataStatSumX'. For each bin interval
defined by the object reportCntrlReportsBinInterval, the
change in the value of the counter pointed to by the Object ID
reportCntrlReportsPriObjID is calculated. Then this (delta) value
is added to the current value of the value contained in the
object 'reportStatsDataStatSumX'. Then, if interested in
computing the average change in this object (sampled each
bin interval) for the duration of the report, the management
station simply divides reportStatsDataStatSumX by
reportStatsDataStatN. Although this is a trivial
example because the value of reportAggrReportStatSumX
is simple the difference in the counter reportCntrolReportsPriObjID
at the start and the end of the total report interval, the
other metrics defined are not as trivial.</t>
<t>The objects 'reportStatsDataOverflowStatSumX' and
'reportStatsDataHCSumX' are borrowed from RMON and
exist to handle integer overflow situations where, e.g.,
'reportStatsDataStatSumX' overruns its maximum vary
numerous times.</t>
<t>Computations and utility of the other standard metrics are
as follows:</t>
<t><list style="symbols">
<t>reportStatsDataStatSumXSq - </t>
<t>reportStatsDataStatMaximum - </t>
<t>reportStatsDataStatMinimum - </t>
<t>reportStatsDataStatSumSq - </t>
<t>reportStatsDataStatSumIX - </t>
<t>reportStatsDataStatSumIXSq - </t>
</list></t>
</section>
<section title="The Sampled Group">
<t>The Sampled Group contains tables which ....</t>
<t><list style="symbols">
<t>reportSampledControlTable - </t>
<t>reportSampledObjectTable - </t>
<t>reportSampledDataTable - </t>
</list></t>
<t> The reportSampledControlTable contains .....</t>
<t> The reportSampledObjectsTable contains .....</t>
<t> The reportSampledDataTable contains .....</t>
</section>
<section title="The History Group">
<t>The History Group contains tables which ....</t>
<t><list style="symbols">
<t>reportHistoryControlTable - </t>
<t>reportHistoryDataTable - </t>
</list></t>
<t> The reportHistoryControlTable contains .....</t>
<t> The reportHistoryDataTable contains .....</t>
</section>
<section title="The Notifications Group">
<t>The Notifications Subtree contains the list of notifications
supported within the REPORT-MIB and their intended purpose or utility.
This group is currently empty.</t>
</section>
</section>
<section title="Relationship to Other MIB Modules">
<t>[TODO]: The text of this section specifies the relationship of the
MIB modules contained in this document to other standards, particularly
to standards containing other MIB modules. Definitions imported from
other MIB modules and other MIB modules that SHOULD be implemented in
conjunction with the MIB module contained within this document are
identified in this section.</t>
<section title="Relationship to the SNMPv2-MIB">
<t>The 'system' group in the SNMPv2-MIB <xref target="RFC3418"></xref>
is defined as being mandatory for all systems, and the objects apply
to the entity as a whole. The 'system' group provides identification
of the management entity and certain other system-wide data. The
REPORT-MIB does not duplicate those objects.</t>
</section>
<section title="Relationship to the IF-MIB">
<t>[TODO] This section is included as an example; If the MIB module is
not an adjunct of the Interface MIB, then this section should be
removed.</t>
</section>
<section title="MIB modules required for IMPORTS">
<t>[TODO]: Citations are not permitted within a MIB module, but any
module mentioned in an IMPORTS clause or document mentioned in a
REFERENCE clause is a Normative reference, and must be cited someplace
within the narrative sections. If there are imported items in the MIB
module, such as Textual Conventions, that are not already cited, they
can be cited in text here. Since relationships to other MIB modules
should be described in the narrative text, this section is typically
used to cite modules from which Textual Conventions are imported.</t>
<t>The following REPORT-MIB module IMPORTS objects from SNMPv2-SMI <xref
target="RFC2578"></xref>, SNMPv2-TC <xref target="RFC2579"></xref>,
SNMPv2-CONF <xref target="RFC2580"></xref>, and IF-MIB <xref
target="RFC2863"></xref></t>
</section>
</section>
<!-- Definitions section -->
<!-- This section contains the MIB module(s) defined by the specification.
These MIB modules MUST be written in SMIv2 [RFC2578] [RFC2579]
[RFC2580].
See Section 4 of RFC 4181 for guidelines on SMIv2 usage.
See Appendix C of RFC 4181 for suggested naming conventions
A list of tools that can help automate the process of
checking mib definitions can be found at
http://www.ops.ietf.org/mib-review-tools.html
-->
<section title="Definitions">
<t></t>
<figure>
<artwork><![CDATA[
REPORT-MIB DEFINITIONS ::= BEGIN
IMPORTS
ZeroBasedCounter32
FROM RMON2-MIB -- [RFC2021]
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
Counter32, Gauge32, Unsigned32, Integer32, mib-2
FROM SNMPv2-SMI -- [RFC2578]
TEXTUAL-CONVENTION, RowStatus, TruthValue,
TimeStamp, StorageType
FROM SNMPv2-TC -- [RFC2579]
MODULE-COMPLIANCE, OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF -- [RFC2580]
OwnerString
FROM RMON-MIB -- [RFC2819]
InterfaceIndexOrZero
FROM IF-MIB -- [RFC2863]
ZeroBasedCounter64
FROM HCNUM-TC -- [RFC2856]
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB -- [RFC3411]
InetAddress, InetAddressType,
InetAddressPrefixLength
FROM INET-ADDRESS-MIB -- [RFC4001]
SspmClockSource, SspmClockMaxSkew,
SspmMicroSeconds
FROM SSPM-MIB -- [RFC4149]
;
reportMIB MODULE-IDENTITY
LAST-UPDATED "201003021300Z" -- March 02, 2010
ORGANIZATION "IETF MANET Working Group"
CONTACT-INFO
"WG E-Mail: manet@ietf.org
WG Chairs: ian.chakeres@gmail.com
jmacker@nrl.navy.mil
Editors: Robert G. Cole
Johns Hopkins University
Department of Computer Science
3400 N. Charles Street
Baltimore, MD 21218
USA
+1 443 910-4420
rgcole01@comcast.net
Joseph Macker
Naval Research Laboratory
Washington, D.C. 20375
USA
macker@itd.nrl.navy.mil
Al Morton
AT&T Laboratories
Middletown, N.J. 07724
USA
amorton@att.com"
DESCRIPTION
"This MIB module contains managed object definitions for
the autonmous reporting of performance object counters.
Copyright (C) The IETF Trust (2009). This version
of this MIB module is part of RFC xxxx; see the RFC
itself for full legal notices."
-- Revision History
REVISION "201003021300Z" -- March 02, 2010
DESCRIPTION
"The third draft of this MIB module published as
draft-cole-manet-report-mib-02.txt. Significant
revisions to this draft include a) changed naming
of usrHistoryGroup to sampledGroup and b) added
a historyGroup."
REVISION "200910251300Z" -- October 25, 2009
DESCRIPTION
"The second draft of this MIB module published as
draft-cole-manet-report-mib-01.txt. Significant
revisions to this draft include a) the inclusion of
raw data collection borrow blatently from the
usrHistory Group within RMON2, b) the deletion of
the CurrentHistoryTable from version -00,
c) modifications to the overall structure of the
MIB, and d) the definition of various Compliance
options for implementations related to this MIB."
REVISION "200904281300Z" -- April 28, 2009
DESCRIPTION
"Initial draft of this MIB module published as
draft-cole-manet-report-mib-00.txt."
-- RFC-Editor assigns XXXX
::= { mib-2 998 } -- to be assigned by IANA
-- TEXTUAL CONVENTIONs
ReportMetricDefID ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION
"An index that identifies through reference to a specific
statistical metrics.
"
SYNTAX Unsigned32 (1..2147483647)
--
-- Top-Level Object Identifier Assignments
--
reportMIBNotifications OBJECT IDENTIFIER ::= { reportMIB 0 }
reportMIBObjects OBJECT IDENTIFIER ::= { reportMIB 1 }
reportMIBConformance OBJECT IDENTIFIER ::= { reportMIB 2 }
-- The reportMIBObjects Assignments:
-- reportStatsGroup - 1
-- reportSampledGroup - 2
-- reportHistoryGroup - 3
reportStatsGroup OBJECT IDENTIFIER ::= { reportMIBObjects 1 }
-- Then, the reportStatsGroup assignments are :
-- reportStatsCapabilitiesGroup - 1
-- reportStatsControlGroup - 2
-- reportStatsDataGroup - 3
-- reportStatsCapabilitiesGroup
-- This group contains the REPORT objects that identify specific
-- capabilities within this device related to REPORT functions.
reportCapabilitiesGroup OBJECT IDENTIFIER ::= { reportStatsGroup 1 }
reportClockResolution OBJECT-TYPE
SYNTAX SspmMicroSeconds
MAX-ACCESS read-only
STATUS current
-- UNITS Microseconds
DESCRIPTION
"A read-only variable indicating the resolution
of the measurements possible by this device."
::= { reportCapabilitiesGroup 1 }
reportClockMaxSkew OBJECT-TYPE
SYNTAX SspmClockMaxSkew
MAX-ACCESS read-only
STATUS current
-- UNITS Seconds
DESCRIPTION
"A read-only variable indicating the maximum
offset error due to skew of the local clock
over the time interval 86400 seconds, in seconds."
::= { reportCapabilitiesGroup 2 }
reportClockSource OBJECT-TYPE
SYNTAX SspmClockSource
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A read-only variable indicating the source of the clock.
This is provided to allow a user to determine how accurate
the timing mechanism is compared with other devices."
::= { reportCapabilitiesGroup 3 }
reportMetricDirLastChange OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the time the
reportTransMetricDirTable was last modified, through
modifications of the reportTransMetricDirConfig object."
::= { reportCapabilitiesGroup 4 }
-- REPORT Metric Extensions Definition Table
reportMetricExtDefTable OBJECT-TYPE
SYNTAX SEQUENCE OF ReportMetricExtDefEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The reportMetricExtDefTable describes the metrics
available to the REPORT-MIB. The reportMetricExtDefTable
can define metrics by referencing existing IETF,
ITU, and other standards organizations' documents,
including enterprise-specific documents.
Examples of appropriate references include the
ITU-T Recommendation Y.1540 [Y.1540] on IP
packet transfer performance metrics and the
IETF documents from the IPPM WG; e.g., RFC2681
on the round trip delay metric [RFC2681] or
RFC3393 on the delay variation metric [RFC3393].
Other examples include RFC2679 [RFC2679], RFC2680
[RFC2680], and RFC3432 [RFC3432]. Although no
specific metric is mandatory, implementations
should, at a minimum, support a round-trip delay
and a round-trip loss metric.
This table contains one row per metric supported by this
agent, and it should be populated during system
initialization."
::= { reportCapabilitiesGroup 5 }
reportMetricExtDefEntry OBJECT-TYPE
SYNTAX ReportMetricExtDefEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Information about a particular metric."
INDEX { reportMetricExtDefID }
::= { reportMetricExtDefTable 1 }
ReportMetricExtDefEntry ::= SEQUENCE {
reportMetricExtDefID ReportMetricDefID,
reportMetricExtDefType INTEGER,
reportMetricExtDefName SnmpAdminString,
reportMetricExtDefOperation SnmpAdminString,
reportMetricExtDefReference SnmpAdminString
}
reportMetricExtDefID OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index for this entry. This object identifies
the particular metric in this MIB module."
::= { reportMetricExtDefEntry 1 }
reportMetricExtDefType OBJECT-TYPE
SYNTAX INTEGER {
other(1),
singleObjMetric(2),
multipleObjMetric(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The basic type of metric indicated by this entry.
The value 'other(1)' indicates that this metric cannot be
characterized by any of the remaining enumerations specified
for this object.
The value 'connectMetric(2)' indicates that this metric
measures connectivity characteristics.
The value 'delayMetric(3)' indicates that this metric
measures delay characteristics.
"
::= { reportMetricExtDefEntry 2 }
reportMetricExtDefName OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The textual name of this metric. For example, if
this reportMetricDefEntry identified the IPPM metric for
round trip delay, then this object should contain
the value, e.g., 'Type-P-Round-Trip-Delay'."
::= { reportMetricExtDefEntry 3 }
reportMetricExtDefOperation OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The textual description of the operations necessary
to compute this metric. For example, if
this reportMetricDefEntry identified the IPPM metric for
round trip delay, then this object should contain
the value, e.g., 'Type-P-Round-Trip-Delay'."
::= { reportMetricExtDefEntry 4 }
reportMetricExtDefReference OBJECT-TYPE
SYNTAX SnmpAdminString
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains a reference to the document that
defines this metric. If this document is available online
via electronic download, then a de-referencable URL
should be specified in this object. The implementation
must support an HTTP URL type and may support additional
types of de-referencable URLs such as an FTP type.
For example, if this reportMetricDefName identified the IPPM
metric 'Type-P-Round-Trip-Delay', then this object should
contain the value, e.g.,
'http://www.ietf.org/rfc/rfc2681.txt'."
::= { reportMetricExtDefEntry 5 }
-- Stats Control Group
-- This and the following tables are modeled
-- after the report control and collection
-- capabilities found in RMON II, RFC XXXX
reportStatsControlGroup OBJECT IDENTIFIER ::= {reportStatsGroup 2}
reportStatsControlTable OBJECT-TYPE
SYNTAX SEQUENCE OF ReportStatsControlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The reportStatsControlTable is the controlling entry
that manages the population of studies in the
Report for selected time intervals.
Note that this is not like the typical RMON
controlTable and dataTable in which each entry creates
its own data table. Each entry in this table enables the
creation of multiple data tables on a study basis. For each
interval, the study is updated in place, and the current
data content of the table becomes invalid.
The control table entries are persistent across
system reboots."
::= { reportStatsControlGroup 1 }
reportStatsControlEntry OBJECT-TYPE
SYNTAX ReportStatsControlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row in the reportStatsControlTable.
An example of the indexing of this entry is
reportGenReportCntrInterval.1"
INDEX { reportStatsControlIndex }
::= { reportStatsControlTable 1 }
ReportStatsControlEntry ::= SEQUENCE {
reportStatsControlIndex Unsigned32,
reportStatsControlInterval Unsigned32,
reportStatsControlBinInterval Unsigned32,
reportStatsControlPriObjID OBJECT IDENTIFIER,
reportStatsControlSecObj1ID OBJECT IDENTIFIER,
reportStatsControlSecObj2ID OBJECT IDENTIFIER,
reportStatsControlSecObj3ID OBJECT IDENTIFIER,
reportStatsControlSecObj4ID OBJECT IDENTIFIER,
reportStatsControlSecObj5ID OBJECT IDENTIFIER,
reportStatsControlMetricExt1 ReportMetricDefID,
reportStatsControlMetricExt2 ReportMetricDefID,
reportStatsControlMetricExt3 ReportMetricDefID,
reportStatsControlMetricExt4 ReportMetricDefID,
reportStatsControlMetricExt5 ReportMetricDefID,
reportStatsControlReqReports Unsigned32,
reportStatsControlGrantedReports Unsigned32,
reportStatsControlStartTime TimeStamp,
reportStatsControlReportNumber Unsigned32,
reportStatsControlInsertsDenied Counter32,
reportStatsControlOwner OwnerString,
reportStatsControlStorageType StorageType,
reportStatsControlStatus RowStatus
}
reportStatsControlIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index that uniquely identifies an entry in the
reportStatsControlTable. Each such entry defines a unique
report whose results are placed in the reportGenReportTable
on behalf of this reportStatsControlEntry."
::= { reportStatsControlEntry 1 }
reportStatsControlInterval OBJECT-TYPE
SYNTAX Unsigned32
UNITS "Seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The interval in seconds over which data is accumulated before
being aggregated into a report in the reportGenReportTable.
All reports with the same reportStatsControlIndex will be
based on the same interval.
The value of the reportStatsControlInterval should be
an integral multiple of the value of the
reportStatsControlBinInterval.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
DEFVAL { 3600 }
::= { reportStatsControlEntry 2 }
reportStatsControlBinInterval OBJECT-TYPE
SYNTAX Unsigned32
UNITS "Seconds"
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The interval in seconds between which the value of the
reportStatsControlPriObjID and SecObjIDs are polled
for the purpose of generating the metric values associated
with this report. All reports with the same
reportStatsControlIndex will be based on the
same bin interval.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
DEFVAL { 3600 }
::= { reportStatsControlEntry 3 }
reportStatsControlPriObjID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the primary counter object to be
monitored within this report.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 4 }
reportStatsControlSecObj1ID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the secondary counter object to be
monitored within this report associated with the
specified reportStatsControlMetricExt1. If the
reportStatsControlMetricExt1 is a simple metric, then
the value of this reportStatsControlSecObj1ID is
set to '0'.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 5 }
reportStatsControlSecObj2ID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the secondary counter object to be
monitored within this report associated with the
specified reportStatsControlMetricExt2. If the
reportStatsControlMetricExt2 is a simple metric, then
the value of this reportStatsControlSecObj2ID is
set to '0'.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 6 }
reportStatsControlSecObj3ID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the secondary counter object to be
monitored within this report associated with the
specified reportStatsControlMetricExt3. If the
reportStatsControlMetricExt3 is a simple metric, then
the value of this reportStatsControlSecObj3ID is
set to '0'.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 7 }
reportStatsControlSecObj4ID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the secondary counter object to be
monitored within this report associated with the
specified reportStatsControlMetricExt4. If the
reportStatsControlMetricExt4 is a simple metric, then
the value of this reportStatsControlSecObj4ID is
set to '0'.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 8 }
reportStatsControlSecObj5ID OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the secondary counter object to be
monitored within this report associated with the
specified reportStatsControlMetricExt5. If the
reportStatsControlMetricExt5 is a simple metric, then
the value of this reportStatsControlSecObj5ID is
set to '0'.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 9 }
reportStatsControlMetricExt1 OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the first metric extension placed
in the reportGenReportTable. If no metric extension
is requested, then this object value is set to '0'.
If this metric is defined on a single counter object,
then only the reportStatsControlPriObjID is set, while
the value of the reportStatsControlSecObjID is
set to '0'. Else, the reportStatsControlSecObjID
is set in accoradance with the instruction in the
definition of the metric extension found in the
reportCapabilitiesMetwircExtTable above.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 10 }
reportStatsControlMetricExt2 OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the first metric extension placed
in the reportGenReportTable. If no metric extension
is requested, then this object value is set to '0'.
If this metric is defined on a single counter object,
then only the reportStatsControlPriObjID is set, while
the value of the reportStatsControlSecObjID is
set to '0'. Else, the reportStatsControlSecObjID
is set in accoradance with the instruction in the
definition of the metric extension found in the
reportCapabilitiesMetwircExtTable above.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 11 }
reportStatsControlMetricExt3 OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the first metric extension placed
in the reportGenReportTable. If no metric extension
is requested, then this object value is set to '0'.
If this metric is defined on a single counter object,
then only the reportStatsControlPriObjID is set, while
the value of the reportStatsControlSecObjID is
set to '0'. Else, the reportStatsControlSecObjID
is set in accoradance with the instruction in the
definition of the metric extension found in the
reportCapabilitiesMetwircExtTable above.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 12 }
reportStatsControlMetricExt4 OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the first metric extension placed
in the reportGenReportTable. If no metric extension
is requested, then this object value is set to '0'.
If this metric is defined on a single counter object,
then only the reportStatsControlPriObjID is set, while
the value of the reportStatsControlSecObjID is
set to '0'. Else, the reportStatsControlSecObjID
is set in accoradance with the instruction in the
definition of the metric extension found in the
reportCapabilitiesMetwircExtTable above.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 13 }
reportStatsControlMetricExt5 OBJECT-TYPE
SYNTAX ReportMetricDefID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This identifies the first metric extension placed
in the reportGenReportTable. If no metric extension
is requested, then this object value is set to '0'.
If this metric is defined on a single counter object,
then only the reportStatsControlPriObjID is set, while
the value of the reportStatsControlSecObjID is
set to '0'. Else, the reportStatsControlSecObjID
is set in accoradance with the instruction in the
definition of the metric extension found in the
reportCapabilitiesMetwircExtTable above.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 14 }
reportStatsControlReqReports OBJECT-TYPE
SYNTAX Unsigned32 (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The number of saved reports requested to be allocated on
behalf of this entry.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 15 }
reportStatsControlGrantedReports OBJECT-TYPE
SYNTAX Unsigned32 (0..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of saved reports the agent has allocated based
on the requested amount in reportStatsControlReqReports.
Because each report can have many entries, the total number
of entries allocated will be this number multiplied by the
value of reportStatsControlGrantedSize, or by 1 if that
object doesn't exist.
When the associated reportStatsControlReqReports object is
created or modified, the agent should set this object as
closely to the requested value as is possible for the
particular implementation and available resources. When
considering available resources, the agent must consider its
ability to allocate this many reports, each with the number
of entries represented by reportStatsControlGrantedSize, or
by 1 if that object doesn't exist.
Note that although the storage required for each report may
fluctuate due to changing conditions, the agent must continue
to have storage available to satisfy the full report size for
all reports, when necessary. Further, the agent must not
lower this value except as a result of a set to the
associated reportStatsControlReqSize object."
::= { reportStatsControlEntry 16 }
reportStatsControlStartTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime when the system began processing the
report in progress. Note that the report in progress is not
available.
This object may be used by the management station to figure
out the start time for all previous reports saved for this
reportStatsControlEntry, as reports are started at fixed
intervals."
::= { reportStatsControlEntry 17 }
reportStatsControlReportNumber OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of the report in progress. When an
reportStatsControlEntry is activated, the first report will
be numbered zero."
::= { reportStatsControlEntry 18 }
reportStatsControlInsertsDenied OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of attempts to add an entry to reports for
this ReportStatsControlEntry that failed because the
number of entries would have exceeded
reportStatsControlGrantedSize.
This number is valuable in determining if enough
entries have been allocated for reports
in light of fluctuating network
usage. Note that an entry that is denied will
often be attempted again, so this number will
not predict the exact number of additional entries
needed, but it can be used to
understand the relative magnitude of the problem.
Also note that there is no ordering specified for
the entries in the report;
thus, there are no rules for which entries
will be omitted when not enough entries are available.
As a consequence, the agent is not required
to delete 'least valuable' entries first."
::= { reportStatsControlEntry 19 }
reportStatsControlOwner OBJECT-TYPE
SYNTAX OwnerString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The entity that configured this entry and is
therefore using the resources assigned to it.
This object may not be modified if the associated
reportStatsControlStatus object is equal to active(1)."
::= { reportStatsControlEntry 20 }
reportStatsControlStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The storage type of this reportStatsControlEntry. If the
value of this object is 'permanent', no objects in this row
need to be writable."
::= { reportStatsControlEntry 21 }
reportStatsControlStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The status of this performance control entry.
An entry may not exist in the active state unless each
object in the entry has an appropriate value.
Once this object is set to active(1), no objects in the
reportStatsControlTable can be changed.
If this object is not equal to active(1), all associated
entries in the reportGenReportTable shall be deleted."
::= { reportStatsControlEntry 22 }
-- Stats Data Group
reportStatsDataGroup OBJECT IDENTIFIER ::= { reportStatsGroup 3 }
-- Report Stats Data Table
reportStatsDataTable OBJECT-TYPE
SYNTAX SEQUENCE OF ReportStatsDataEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains completed
studies for each of the control table entries in
reportAggrReportCntrlTable. These studies are
provided based on the selections and parameters
found for the entry in the
reportAggregateReportsCntrlTable.
The performance statistics are specified in the
reportTransMetricDirTable associated with the
application in question and indexed by
appLocalIndex and reportTransMetricIndex."
::= { reportStatsDataGroup 1 }
reportStatsDataEntry OBJECT-TYPE
SYNTAX ReportStatsDataEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A conceptual row in the reportStatsDataTable.
The reportStatsControlIndex value in the
index identifies the reportStatsControlEntry
on whose behalf this entry was created.
The reportStatsDataIndex value in the index
identifies which report
(in the series of reports) this entry is a part of.
The reportStatsDataServerAddress value in the
index identifies the network layer address of the
device generatung this report.
An example of the indexing of this entry is
reportStatsDataStatN.3.15.34.262.18.4.128.2.6.7.3256521"
INDEX { reportStatsControlIndex,
reportStatsDataIndex
}
::= { reportStatsDataTable 1 }
ReportStatsDataEntry ::= SEQUENCE {
reportStatsDataIndex Unsigned32,
reportStatsDataServerAddress OCTET STRING,
reportStatsDataStatN ZeroBasedCounter32,
reportStatsDataStatSumX ZeroBasedCounter32,
reportStatsDataOverflowStatSumX ZeroBasedCounter32,
reportStatsDataHCStatSumX ZeroBasedCounter64,
reportStatsDataStatMaximum ZeroBasedCounter32,
reportStatsDataStatMinimum ZeroBasedCounter32,
reportStatsDataStatSumSq ZeroBasedCounter32,
reportStatsDataOverflowStatSumSq ZeroBasedCounter32,
reportStatsDataHCStatSumSq ZeroBasedCounter64,
reportStatsDataStatSumIX ZeroBasedCounter32,
reportStatsDataOverflowStatSumIX ZeroBasedCounter32,
reportStatsDataHCStatSumIX ZeroBasedCounter64,
reportStatsDataStatSumIXSq ZeroBasedCounter32,
reportStatsDataOverflowStatSumIXSq ZeroBasedCounter32,
reportStatsDataHCStatSumIXSq ZeroBasedCounter64,
reportStatsDataStatMetricExt1 ZeroBasedCounter32,
reportStatsDataStatMetricExt2 ZeroBasedCounter32,
reportStatsDataStatMetricExt3 ZeroBasedCounter32,
reportStatsDataStatMetricExt4 ZeroBasedCounter32,
reportStatsDataStatMetricExt5 ZeroBasedCounter32
}
reportStatsDataIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The value of reportAggrReportCntrlNumber for the report to
which this entry belongs."
::= { reportStatsDataEntry 1 }
-- [Note: Need to revisit the syntax for this object of type 'address'.]
reportStatsDataServerAddress OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (0..108))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The network layer address of the server host in this
conversation.
This is represented as an octet string with specific
semantics and length as identified by the
protocolDirLocalIndex component of the index.
Because this object is an index variable, it is encoded in
the index according to the index encoding rules. For
example, if the protocolDirLocalIndex indicates an
encapsulation of IPv4, this object is encoded as a length
octet of 4, followed by the 4 octets of the IPv4 address,
in network byte order.
If the associated reportAggrReportCntrlAggrType is equal to
application(4) or client(2), then this object will be a null
string and will be encoded simply as a length octet of 0."
::= { reportStatsDataEntry 2 }
reportStatsDataStatN OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The count of the total number of data points for the
specified metric. This number is simply the value of
reportCntrlReportsInterval divided by the value of
reportCntrlReportsBinInterval, which should be integer
valued.
"
::= { reportStatsDataEntry 3 }
reportStatsDataStatSumX OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The sum of all the data point values for the specified
metric. This number always represents the total values
of the statistical datum analyzed. Each metric
specifies the exact meaning of this object.
This value represents the results of one metric and is
related directly to the specific parameters of the metric
and the Server and Client addresses involved."
::= { reportStatsDataEntry 4 }
reportStatsDataOverflowStatSumX OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the associated
reportAggrReportStatSumX counter has overflowed.
Note that this object will only be instantiated if the
associated reportAggrReportHCStatSumX object is also
instantiated for a particular dataSource."
::= { reportStatsDataEntry 5 }
reportStatsDataHCStatSumX OBJECT-TYPE
SYNTAX ZeroBasedCounter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The high-capacity version of reportAggrReportStatSumX.
Note that this object will only be instantiated if the
agent supports High Capacity monitoring for a particular
dataSource."
::= { reportStatsDataEntry 6 }
reportStatsDataStatMaximum OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The single maximum data point value observed during the
study period for the specified metric. This number always
represents the maximum value of any single statistical
datum analyzed. Each metric specifies the exact meaning
of this object.
This value represents the results of one metric and is
related directly to the specific parameters of the metric
and the Server and Client addresses involved."
::= { reportStatsDataEntry 7 }
reportStatsDataStatMinimum OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The single minimum data point value observed during the
study period for the specified metric. This number always
represents the minimum value of any single statistical
datum analyzed. Each metric specifies the exact meaning
of this object.
This value represents the results of one metric and is
related directly to the specific parameters of the metric
and the Server and Client addresses involved."
::= { reportStatsDataEntry 8 }
reportStatsDataStatSumSq OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The sum of all the squared data point values for the
specified metric. This number always represents the
total of the squared values of the statistical datum
analyzed. Each metric specifies the exact meaning of
this object.
This value represents the results of one metric and is
related directly to the specific parameters of the metric
and the Server and Client addresses involved."
::= { reportStatsDataEntry 9 }
reportStatsDataOverflowStatSumSq OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the associated
reportAggrReportStatSumSq counter has overflowed.
Note that this object will only be instantiated if
the associated reportAggrReportHCStatSumSq object
is also instantiated for a particular dataSource."
::= { reportStatsDataEntry 10 }
reportStatsDataHCStatSumSq OBJECT-TYPE
SYNTAX ZeroBasedCounter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The high-capacity version of reportAggrReportStatSumSq.
Note that this object will only be instantiated if the
agent supports High Capacity monitoring for a particular
dataSource."
::= { reportStatsDataEntry 11 }
reportStatsDataStatSumIX OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"For each interval, each data point is associated with a
value I, I = 1..N where N is the number of data points;
reportAggrReportStatSumIX is the multiplication of the
data point value with the current I. This value
along with the other statistics values allow the
calculation of the slope of the least-squares line
through the data points."
::= { reportStatsDataEntry 12 }
reportStatsDataOverflowStatSumIX OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the associated
reportAggrReportStatSumIX counter has overflowed.
Note that this object will only be instantiated if the
associated reportAggrReportHCStatSumIX object is also
instantiated for a particular dataSource."
::= { reportStatsDataEntry 13 }
reportStatsDataHCStatSumIX OBJECT-TYPE
SYNTAX ZeroBasedCounter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The high-capacity version of reportAggrReportStatSumIX.
Note that this object will only be instantiated if the
agent supports High Capacity monitoring for a particular
dataSource."
::= { reportStatsDataEntry 14 }
reportStatsDataStatSumIXSq OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"For each interval, each data point is associated with a
value I, I = 1..N where N is the number of data points;
reportAggrReportStatSumIXSq is the multiplication
of the data point value squared with the current I.
This value along with the other statistics
values allow the calculation of the slope of
the least-squares line through the data points."
::= { reportStatsDataEntry 15 }
reportStatsDataOverflowStatSumIXSq OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of times the associated
reportAggrReportStatSumIXSq counter has overflowed.
Note that this object will only be instantiated if the
associated reportAggrReportHCStatSumIXSq object is also
instantiated for a particular dataSource."
::= { reportStatsDataEntry 16 }
reportStatsDataHCStatSumIXSq OBJECT-TYPE
SYNTAX ZeroBasedCounter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The high-capacity version of reportAggrReportStatSumIXSq.
Note that this object will only be instantiated if the
agent supports High Capacity monitoring for a particular
dataSource."
::= { reportStatsDataEntry 17 }
reportStatsDataStatMetricExt1 OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The .... for the MetricExt1.
"
::= { reportStatsDataEntry 18 }
reportStatsDataStatMetricExt2 OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The .... for the MetricExt2.
"
::= { reportStatsDataEntry 19 }
reportStatsDataStatMetricExt3 OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The .... for the MetricExt3.
"
::= { reportStatsDataEntry 20 }
reportStatsDataStatMetricExt4 OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The .... for the MetricExt4.
"
::= { reportStatsDataEntry 21 }
reportStatsDataStatMetricExt5 OBJECT-TYPE
SYNTAX ZeroBasedCounter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The .... for the MetricExt5.
"
::= { reportStatsDataEntry 22 }
reportSampledGroup OBJECT IDENTIFIER ::= { reportMIBObjects 2 }
-- Then, the reportSampledGroup assignments are :
-- reportSampledControlTable - 1
-- reportSampledObjectTable - 2
-- reportSampledDataTable - 3
-- REPORT-MIB Editors' Note:
-- The reportSampledGroup is copied from the usrHistory
-- group documented in RMON2 [RFC2021]. We have perserved all of
-- the annotations and object descriptions, as any changes would
-- only diminish the quality of the development. The only changes
-- made were to the naming of the objects themselves. Here we have
-- merely prefixed the original names with 'report' and changed the
-- 'usrHistory' to 'Sampled' as we felt this better reflected the
-- the nature of the capability being offered by this group.
-- The remainder of this group development is essentially
-- copied from [RFC2021]:
--
-- Sampled Collection Group (reportSampledGroup)
--
-- The reportSampled group combines mechanisms seen in the alarm and
-- history groups to provide user-specified samplying collection,
-- utilizing two additional control tables and one additional data
-- table. This function has traditionally been done by NMS
-- applications, via periodic polling. The reportSampled group allows
-- this task to be offloaded to a remote managed device.
--
-- Data (an ASN.1 INTEGER based object) is collected in the same
-- manner as any data table (e.g. etherHistoryTable) except
-- that the user specifies the MIB instances to be collected and their
-- sampling frequency. Objects are collected in
-- bucket-groups, with the intent that all MIB
-- instances in the same bucket-group are collected as atomically as
-- possible by the remote managed device.
--
-- The reportSampledControlTable is a one-dimensional read-create table.
-- Each row configures a collection of sampling buckets; the creation of a
-- row in this table will cause one or more associated instances in
-- the reportSampledObjectTable to be created. The user specifies the
-- number of bucket elements (rows in the reportSampledObjectTable)
-- requested, as well as the number of buckets requested.
--
-- The reportSampledObjectTable is a 2-d read-write table.
-- Each row configures a single MIB instance to be collected.
-- All rows with the same major index constitute a bucket-group.
--
-- The reportSampledTable is a 3-d read-only table containing
-- the data of associated reportSampledControlEntries. Each
-- entry represents the value of a single MIB instance
-- during a specific sampling interval (or the rate of
-- change during the interval).
--
-- A sample value is stored in two objects - an absolute value and
-- a status object. This allows numbers from -(2G-1) to +4G to be
-- stored. The status object also indicates whether a sample is
-- valid. This allows data collection to continue if periodic
-- retrieval of a particular instance fails for any reason.
--
-- Row Creation Order Relationships
--
-- The static nature of the reportSampledObjectTable creates
-- some row creation/modification issues. The rows in this
-- table need to be set before the associated
-- reportSampledControlEntry can be activated.
--
-- Note that the reportSampledObject entries associated with a
-- particular reportSampledControlEntry are not required to
-- be active before the control entry is activated. However,
-- the reportSampled data entries associated with an inactive
-- reportSampledObject entry will be inactive (i.e.
-- reportSampledValStatus == valueNotAvailable).
--
reportSampledControlTable OBJECT-TYPE
SYNTAX SEQUENCE OF SampledControlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of data-collection configuration entries."
::= { reportSampledGroup 1 }
reportSampledControlEntry OBJECT-TYPE
SYNTAX SampledControlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of parameters that set up a group of user-defined
MIB objects to be sampled periodically (called a
bucket-group).
For example, an instance of reportSampledControlInterval
might be named reportSampledControlInterval.1"
INDEX { reportSampledControlIndex }
::= { reportSampledControlTable 1 }
SampledControlEntry ::= SEQUENCE {
reportSampledControlIndex Integer32,
reportSampledControlObjects Integer32,
reportSampledControlBucketsRequested Integer32,
reportSampledControlBucketsGranted Integer32,
reportSampledControlInterval Integer32,
reportSampledControlOwner OwnerString,
reportSampledControlStatus RowStatus
}
reportSampledControlIndex OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index that uniquely identifies an entry in the
reportSampledControlTable. Each such entry defines a
set of samples at a particular interval for a specified
set of MIB instances available from the managed system."
::= { reportSampledControlEntry 1 }
reportSampledControlObjects OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The number of MIB objects to be collected
in the portion of reportSampledTable associated with this
reportSampledControlEntry.
This object may not be modified if the associated instance
of reportSampledControlStatus is equal to active(1)."
::= { reportSampledControlEntry 2 }
reportSampledControlBucketsRequested OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The requested number of discrete time intervals
over which data is to be saved in the part of the
reportSampledTable associated with this
reportSampledControlEntry.
When this object is created or modified, the probe
should set reportSampledControlBucketsGranted as closely to
this object as is possible for the particular probe
implementation and available resources."
DEFVAL { 50 }
::= { reportSampledControlEntry 3 }
reportSampledControlBucketsGranted OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of discrete sampling intervals
over which data shall be saved in the part of
the reportSampledTable associated with this
reportSampledControlEntry.
When the associated reportSampledControlBucketsRequested
object is created or modified, the probe should set
this object as closely to the requested value as is
possible for the particular probe implementation and
available resources. The probe must not lower this
value except as a result of a modification to the associated
reportSampledControlBucketsRequested object.
The associated reportSampledControlBucketsRequested object
should be set before or at the same time as this object
to allow the probe to accurately estimate the resources
required for this reportSampledControlEntry.
There will be times when the actual number of buckets
associated with this entry is less than the value of
this object. In this case, at the end of each sampling
interval, a new bucket will be added to the
reportSampledTable.
When the number of buckets reaches the value of this object
and a new bucket is to be added to the reportSampledTable,
the oldest bucket associated with this
reportSampledControlEntry shall be deleted by the agent
so that the new bucket can be added.
When the value of this object changes to a value less than
the current value, entries are deleted from the
reportSampledTable associated with this
reportSampledControlEntry. Enough of the oldest
of these entries shall be deleted by the
agent so that their number remains less than or equal to the
new value of this object.
When the value of this object changes to a value greater
than the current value, the number of associated
reportSampled entries may be allowed to grow."
::= { reportSampledControlEntry 4 }
reportSampledControlInterval OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The interval in seconds over which the data is
sampled for each bucket in the part of the reportSampled
table associated with this reportSampledControlEntry.
Because the counters in a bucket may overflow at their
maximum value with no indication, a prudent manager will
take into account the possibility of overflow in any of
the associated counters. It is important to consider the
minimum time in which any counter could overflow on a
particular media type and set the
reportSampledControlInterval object to a value less
than this interval.
This object may not be modified if the associated
reportSampledControlStatus object is equal to active(1)."
DEFVAL { 1800 }
::= { reportSampledControlEntry 5 }
reportSampledControlOwner OBJECT-TYPE
SYNTAX OwnerString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The entity that configured this entry and is
therefore using the resources assigned to it."
::= { reportSampledControlEntry 6 }
reportSampledControlStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The status of this variable history control entry.
An entry may not exist in the active state unless all
objects in the entry have an appropriate value.
If this object is not equal to active(1), all associated
entries in the reportSampledTable shall be deleted."
::= { reportSampledControlEntry 7 }
-- Object table
reportSampledObjectTable OBJECT-TYPE
SYNTAX SEQUENCE OF SampledObjectEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of data-collection configuration entries."
::= { reportSampledGroup 2 }
reportSampledObjectEntry OBJECT-TYPE
SYNTAX SampledObjectEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of MIB instances to be sampled periodically.
Entries in this table are created when an associated
reportSampledControlObjects object is created.
The reportSampledControlIndex value in the index is
that of the associated reportSampledControlEntry.
For example, an instance of reportSampledObjectVariable
might be reportSampledObjectVariable.1.3"
INDEX { reportSampledControlIndex, reportSampledObjectIndex }
::= { reportSampledObjectTable 1 }
SampledObjectEntry ::= SEQUENCE {
reportSampledObjectIndex Integer32,
reportSampledObjectVariable OBJECT IDENTIFIER,
reportSampledObjectSampleType INTEGER
}
reportSampledObjectIndex OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index used to uniquely identify an entry in the
reportSampledObject table. Each such entry defines a
MIB instance to be collected periodically."
::= { reportSampledObjectEntry 1 }
reportSampledObjectVariable OBJECT-TYPE
SYNTAX OBJECT IDENTIFIER
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The object identifier of the particular variable to be
sampled.
Only variables that resolve to an ASN.1 primitive type of
Integer32 (Integer32, Counter, Gauge, or TimeTicks) may be
sampled.
Because SNMP access control is articulated entirely in terms
of the contents of MIB views, no access control mechanism
exists that can restrict the value of this object to identify
only those objects that exist in a particular MIB view.
Because there is thus no acceptable means of restricting the
read access that could be obtained through the user history
mechanism, the probe must only grant write access to this
object in those views that have read access to all objects on
the probe.
During a set operation, if the supplied variable name is not
available in the selected MIB view, a badValue error must be
returned.
This object may not be modified if the associated
reportSampledControlStatus object is equal to active(1)."
::= { reportSampledObjectEntry 2 }
reportSampledObjectSampleType OBJECT-TYPE
SYNTAX INTEGER {
absoluteValue(1),
deltaValue(2)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The method of sampling the selected variable for storage in
the reportSampledTable.
If the value of this object is absoluteValue(1), the value of
the selected variable will be copied directly into the history
bucket.
If the value of this object is deltaValue(2), the value of the
selected variable at the last sample will be subtracted from
the current value, and the difference will be stored in the
history bucket. If the associated reportSampledObjectVariable
instance could not be obtained at the previous sample
interval, then a delta sample is not possible, and the value
of the associated reportSampledValStatus object for this
interval will be valueNotAvailable(1).
This object may not be modified if the associated
reportSampledControlStatus object is equal to active(1)."
::= { reportSampledObjectEntry 3 }
-- data table
reportSampledTable OBJECT-TYPE
SYNTAX SEQUENCE OF SampledEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of user defined history entries."
::= { reportSampledGroup 3 }
reportSampledEntry OBJECT-TYPE
SYNTAX SampledEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A historical sample of user-defined variables. This sample
is associated with the reportSampledControlEntry which set
up the parameters for a regular collection of these samples.
The reportSampledControlIndex value in the index identifies
the reportSampledControlEntry on whose behalf this entry
was created.
The reportSampledObjectIndex value in the index identifies
the reportSampledObjectEntry on whose behalf this entry
was created.
For example, an instance of reportSampledAbsValue, which
represents the 14th sample of a variable collected as
specified by reportSampledControlEntry.1 and
reportSampledObjectEntry.1.5, would be named
reportSampledAbsValue.1.14.5"
INDEX { reportSampledControlIndex, reportSampledSampleIndex,
reportSampledObjectIndex }
::= { reportSampledTable 1 }
SampledEntry ::= SEQUENCE {
reportSampledSampleIndex Integer32,
reportSampledIntervalStart TimeStamp,
reportSampledIntervalEnd TimeStamp,
reportSampledAbsValue Gauge32,
reportSampledValStatus INTEGER
}
reportSampledSampleIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index that uniquely identifies the particular sample this
entry represents among all samples associated with the same
reportSampledControlEntry. This index starts at 1 and
increases by one as each new sample is taken."
::= { reportSampledEntry 1 }
reportSampledIntervalStart OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the start of the interval over
which this sample was measured. If the probe keeps track of
the time of day, it should start the first sample of the
history at a time such that when the next hour of the day
begins, a sample is started at that instant.
Note that following this rule may require the probe to delay
collecting the first sample of the history, as each sample
must be of the same interval. Also note that the sample which
is currently being collected is not accessible in this table
until the end of its interval."
::= { reportSampledEntry 2 }
reportSampledIntervalEnd OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the end of the interval over which
this sample was measured."
::= { reportSampledEntry 3 }
reportSampledAbsValue OBJECT-TYPE
SYNTAX Gauge32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The absolute value (i.e. unsigned value) of the
user-specified statistic during the last sampling period. The
value during the current sampling period is not made available
until the period is completed.
To obtain the true value for this sampling interval, the
associated instance of reportSampledValStatus must
be checked, and reportSampledAbsValue adjusted as necessary.
If the MIB instance could not be accessed during the sampling
interval, then this object will have a value of zero and the
associated instance of reportSampledValStatus will be set to
'valueNotAvailable(1)'."
::= { reportSampledEntry 4 }
reportSampledValStatus OBJECT-TYPE
SYNTAX INTEGER {
valueNotAvailable(1),
valuePositive(2),
valueNegative(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the validity and sign of the data in
the associated instance of reportSampledAbsValue.
If the MIB instance could not be accessed during the sampling
interval, then 'valueNotAvailable(1)' will be returned.
If the sample is valid and actual value of the sample is
greater than or equal to zero then 'valuePositive(2)' is
returned.
If the sample is valid and the actual value of the sample is
less than zero, 'valueNegative(3)' will be returned. The
associated instance of reportSampledAbsValue should be
multiplied by -1 to obtain the true sample value."
::= { reportSampledEntry 5 }
-- REPORT-MIB Editors' Note: This ends the copy of definitions from
-- the usrHistory group from RMON2 [RFC 2021].
reportHistoryGroup OBJECT IDENTIFIER ::= { reportMIBObjects 3 }
-- Then, the reportHistoryGroup assignments are :
-- reportHistoryControlTable - 1
-- reportHistoryDataTable - 2
-- Notes: The history group is intended to track changes in
-- identified objects ot type counter, gauge, other. Each,
-- time the object is updated in the associated MIB, the
-- history group stores a table entry in the associated
-- historyDataTable capturing the time the change was
-- made to the identified object.
-- The historyControl Table ...
--
-- The historyData Table ....
reportHistoryControlEntry OBJECT-TYPE
SYNTAX HistoryControlEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of parameters that set up the collection
of a history of changes
in the user-defined MIB objects.
For example, an instance of reportHistoryControlInterval
might be named reportHistoryControlInterval.1"
INDEX { reportHistoryControlIndex }
::= { reportHistoryControlTable 1 }
HistoryControlEntry ::= SEQUENCE {
reportHistoryControlIndex Integer32,
reportHistoryControlObject Integer32,
reportHistoryControlSizeRequested Integer32,
reportHistoryControlSizeGranted Integer32,
reportHistoryControlInterval Integer32,
reportHistoryControlOwner OwnerString,
reportHistoryControlStatus RowStatus
}
reportHistoryControlIndex OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index that uniquely identifies an entry in the
reportHistoryControlTable. Each such entry defines a
set of histories at a particular interval for a specified
MIB object instance available from the managed system."
::= { reportHistoryControlEntry 1 }
reportHistoryControlObject OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The MIB object to be monitored for the collection
histories in the reportHistoryDataTable associated with this
reportHistoryControlEntry.
This object may not be modified if the associated instance
of reportHistoryControlStatus is equal to active(1)."
::= { reportHistoryControlEntry 2 }
reportHistoryControlRequested OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The requested maximum number of history entries
to be saved in the
reportHistoryDataTable associated with this
reportHistoryControlEntry.
When this object is created or modified, the device
should set reportHistoryControlSizeGranted as closely to
this object as is possible for the particular device
implementation and available resources."
DEFVAL { 50 }
::= { reportHistoryControlEntry 3 }
reportHistoryControlSizeGranted OBJECT-TYPE
SYNTAX Integer32 (1..65535)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum allowed number of discrete history entries
in the reportHistoryTable associated with this
reportHistoryControlEntry.
When the associated reportHistoryControlSizeRequested
object is created or modified, the device should set
this object as closely to the requested value as is
possible for the particular device implementation and
available resources. The device must not lower this
value except as a result of a modification to the associated
reportHistoryControlSizeRequested object.
The associated reportHistoryControlSizeRequested object
should be set before or at the same time as this object
to allow the device to accurately estimate the resources
required for this reportHistoryControlEntry.
When the number of histories reaches the value of this object
and a new history is to be added to the reportHistoryTable,
the oldest history associated with this
reportHistoryControlEntry shall be deleted by the agent
so that the new history can be added."
::= { reportHistoryControlEntry 4 }
reportHistoryControlInterval OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The interval in seconds over which the data histories
are to be re4corded in the part of the reportHistory
table associated with this reportHistoryControlEntry.
This object may not be modified if the associated
reportHistoryControlStatus object is equal to active(1)."
DEFVAL { 1800 }
::= { reportHistoryControlEntry 5 }
reportHistoryControlOwner OBJECT-TYPE
SYNTAX OwnerString
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The entity that configured this entry and is
therefore using the resources assigned to it."
::= { reportHistoryControlEntry 6 }
reportHistoryControlStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The status of this variable history control entry.
An entry may not exist in the active state unless all
objects in the entry have an appropriate value.
If this object is not equal to active(1), all associated
entries in the reportHistoryTable shall be deleted."
::= { reportHistoryControlEntry 7 }
-- data table
reportHistoryTable OBJECT-TYPE
SYNTAX SEQUENCE OF HistoryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A list of user defined history entries."
::= { reportHistoryGroup 3 }
reportHistoryEntry OBJECT-TYPE
SYNTAX HistoryEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A historical trail of user-defined variables. This list
is associated with the reportHistoryControlEntry which set
up the parameters for a regular collection of these samples.
The reportHistoryControlIndex value in the index identifies
the reportHistoryControlEntry on whose behalf this entry
was created. This also identifies the MIB object
being tracked by this reportHistoryEntry.
For example, an instance of reportHistory...
"
INDEX { reportHistoryControlIndex,
reportHistoryDataIndex }
::= { reportHistoryTable 1 }
HistoryEntry ::= SEQUENCE {
reportHistoryDataIndex Integer32,
reportHistoryDataChangeTime TimeStamp,
reportHistoryDataValueType INTEGER,
reportHistoryDataValue string,
reportHistoryDataValStatus INTEGER
}
reportHistoryDataIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An index that uniquely identifies the particular sample this
entry represents among all historical entries
associated with the same
reportHistoryControlEntry. This index starts at 1 and
increases by one as each new sample is taken."
::= { reportHistoryEntry 1 }
reportHistoryDataChangeTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime at the time that the MIB object was
updated."
::= { reportHistoryEntry 2 }
-- Note: May want to move this to the reportHistoryControlTable,
-- as it is too redundant in this table. Also, need to reconsider
-- the best way to indicate type and to represent values.
reportHistoryDataValueType OBJECT-TYPE
SYNTAX INTEGER
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The type of the data value stored in the
reportHistoryDataValue string. The user identifies
the MIB object to be tracked by this table.
Various types of objects can be track, so the
application needs to know the data type being
stored. Types supported include counter, gauge,
integer, float.
"
::= { reportHistoryEntry 3 }
reportHistoryDataValue OBJECT-TYPE
SYNTAX string,
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The absolute value of the
user-specified MIB object tracked by this
table entry.
If the MIB instance could not be accessed ....
"
::= { reportHistoryEntry 4 }
-- Note: Need to consider in detail the ability of the
-- device to track the times of object change in
-- enough detial to be useful. What happens if the
-- device gets too busy and delays updating MIB object
-- values tracked by this table entry. Needs more work.
reportHistoryDataValStatus OBJECT-TYPE
SYNTAX INTEGER {
valueAvailable(1),
valueDelayed(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the validity of the data in
the associated instance of reportHistoryAbsValue.
If the MIB instance could not be accessed promptely,
then 'valueDelayed(2)' will be returned.
If the sample is valid and actual value of the sample
was promptly recorded, then 'valueAvailable(1)' is
returned.
"
::= { reportHistoryEntry 5 }
--
-- Notifications
--
-- Note: What notifications do we want for this MIB?
-- Checkout what is done in the APM-MIB for Notifications?
--
-- Compliance Statements
--
-- [Note: Current thoughts on Conformance follow:
-- Mandatory for Stats will include no extensions,
-- or high capacity objects.
-- Hence, the reports will have only the hard-coded statistics.
-- Optional for Stats will be extensions definition table and high
-- capacity objects.
--
-- Mandatory for Sampled will include all.
--
-- Mandatory for History will include all.]
reportCompliances OBJECT IDENTIFIER ::= { reportMIBConformance 1 }
reportMIBGroups OBJECT IDENTIFIER ::= { reportMIBConformance 2 }
reportStatsBasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The Stats basic implementation requirements for
managed network entities that implement
the REPORT process."
MODULE -- this module
MANDATORY-GROUPS {reportStatsCapabilitiesBaseObjectsGroup,
reportStatsControlBaseObjectsGroup,
reportStatsDataBaseObjectsGroup }
::= { reportCompliances 1 }
reportStatsHCCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The HC implementation requirements for
managed network entities that implement
the REPORT process."
MODULE -- this module
MANDATORY-GROUPS {reportStatsCapabilitiesBaseObjectsGroup,
reportStatsControlBaseObjectsGroup,
reportStatsDataBaseObjectsGroup,
reportStatsDataHCObjectsGroup }
::= { reportCompliances 2 }
reportStatsExtendedMetricsCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The extended metrics implementation requirements for
managed network entities that implement
the REPORT process."
MODULE -- this module
MANDATORY-GROUPS {reportStatsCapabilitiesBaseObjectsGroup,
reportStatsControlBaseObjectsGroup,
reportStatsDataBaseObjectsGroup,
reportStatsExtendedMetricsCapabilitiesObjectsGroup,
reportStatsExtendedMetricsControlObjectsGroup,
reportStatsExtendedMetricsDataObjectsGroup }
::= { reportCompliances 3 }
reportSampledBasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The Sampled basic implementation requirements for
managed network entities that implement
the REPORT process."
MODULE -- this module
MANDATORY-GROUPS {reportSampledCapabilitiesBaseObjectsGroup,
reportSampledControlBaseObjectsGroup,
reportSampledObjectIDBaseObjectsGroup,
reportSampledDataBaseObjectsGroup }
::= { reportCompliances 4 }
reportHistoryBasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The History basic implementation requirements for
managed network entities that implement
the REPORT process."
MODULE -- this module
MANDATORY-GROUPS {reportHistoryControlBaseObjectsGroup,
reportHistoryDataBaseObjectsGroup }
::= { reportCompliances 5 }
-- Units of Conformance
reportStatsCapabilitiesBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportClockResolution,
reportClockMaxSkew,
reportClockSource
}
STATUS current
DESCRIPTION
"Set of REPORT configuration objects implemented
in this module."
::= { reportMIBGroups 1 }
reportStatsControlBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportStatsControlInterval,
reportStatsControlBinInterval,
reportStatsControlPriObjID,
reportStatsControlReqReports,
reportStatsControlGrantedReports,
reportStatsControlStartTime,
reportStatsControlReportNumber,
reportStatsControlInsertsDenied,
reportStatsControlOwner,
reportStatsControlStorageType,
reportStatsControlStatus
}
STATUS current
DESCRIPTION
"Set of REPORT Stats Control base objects implemented
in this module."
::= { reportMIBGroups 2 }
reportStatsDataBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportStatsDataServerAddress,
reportStatsDataStatN,
reportStatsDataStatSumX,
reportStatsDataOverflowStatSumX,
reportStatsDataStatMaximum,
reportStatsDataStatMinimum,
reportStatsDataStatSumSq,
reportStatsDataOverflowStatSumSq,
reportStatsDataStatSumIX,
reportStatsDataOverflowStatSumIX,
reportStatsDataStatSumIXSq,
reportStatsDataOverflowStatSumIXSq
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 3 }
reportStatsDataHCObjectsGroup OBJECT-GROUP
OBJECTS {
reportStatsDataHCStatSumX,
reportStatsDataHCStatSumSq,
reportStatsDataHCStatSumIX,
reportStatsDataHCStatSumIXSq
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 4 }
reportStatsExtendedMetricsCapabilitiesObjectsGroup OBJECT-GROUP
OBJECTS {
reportMetricExtDefType,
reportMetricExtDefName,
reportMetricExtDefOperation,
reportMetricExtDefReference,
reportMetricDirLastChange
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 5 }
reportStatsExtendedMetricsControlObjectsGroup OBJECT-GROUP
OBJECTS {
reportStatsControlSecObj1ID,
reportStatsControlSecObj2ID,
reportStatsControlSecObj3ID,
reportStatsControlSecObj4ID,
reportStatsControlSecObj5ID,
reportStatsControlMetricExt1,
reportStatsControlMetricExt2,
reportStatsControlMetricExt3,
reportStatsControlMetricExt4,
reportStatsControlMetricExt5
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 6 }
reportStatsExtendedMetricsDataObjectsGroup OBJECT-GROUP
OBJECTS {
reportStatsDataStatMetricExt1,
reportStatsDataStatMetricExt2,
reportStatsDataStatMetricExt3,
reportStatsDataStatMetricExt4,
reportStatsDataStatMetricExt5
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 7 }
reportSampledControlBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportSampledControlObjects,
reportSampledControlBucketsRequested,
reportSampledControlBucketsGranted,
reportSampledControlInterval,
reportSampledControlOwner,
reportSampledControlStatus
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 8 }
reportSampledObjectIDBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportSampledObjectVariable,
reportSampledObjectSampleType
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 9 }
reportSampledDataBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportSampledIntervalStart,
reportSampledIntervalEnd,
reportSampledAbsValue,
reportSampledValStatus
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 10 }
reportHistoryControlBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportHistoryControlObjects,
reportHistoryControlSizeRequested,
reportHistoryControlSizeGranted,
reportHistoryControlInterval,
reportHistoryControlOwner,
reportHistoryControlStatus
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 11 }
reportHistoryDataBaseObjectsGroup OBJECT-GROUP
OBJECTS {
reportHistoryDataChangeTime,
reportHistoryDataValueType,
reportHistoryDataValue,
reportHistoryDataValStatus
}
STATUS current
DESCRIPTION
"Set of REPORT state objects implemented
in this module."
::= { reportMIBGroups 12 }
END
]]></artwork>
</figure>
</section>
<section title="Security Considerations">
<!--[TODO] Remember to consider security from the start. -->
<t>[TODO] Each specification that defines one or more MIB modules MUST
contain a section that discusses security considerations relevant to
those modules. This section MUST be patterned after the latest approved
template (available at http://www.ops.ietf.org/mib-security.html).
Remember that the objective is not to blindly copy text from the
template, but rather to think and evaluate the risks/vulnerabilities and
then state/document the result of this evaluation.</t>
<t></t>
<t>[TODO] if you have any read-write and/or read-create objects, please
include the following boilerplate paragraph.</t>
<t>There are a number of management objects defined in this MIB module
with 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.
These are the tables and objects and their
sensitivity/vulnerability:</t>
<t><list style="symbols">
<t>[TODO] writable MIB objects that could be especially disruptive
if abused MUST be explicitly listed by name and the associated
security risks MUST be spelled out; RFC 2669 has a very good
example.</t>
<t>[TODO] list the writable tables and objects and state why they
are sensitive.</t>
</list></t>
<t>[TODO] else if there are no read-write objects in your MIB module,
use the following boilerplate paragraph.</t>
<t>There are no management objects defined in this MIB module that have
a MAX-ACCESS clause of read-write and/or read-create. So, if this MIB
module is implemented correctly, then there is no risk that an intruder
can alter or create any management objects of this MIB module via direct
SNMP SET operations.</t>
<t>[TODO] if you have any sensitive readable objects, please include the
following boilerplate paragraph.</t>
<t>Some of the readable objects in this MIB module (i.e., objects with a
MAX-ACCESS other than not-accessible) may be considered sensitive or
vulnerable in some network environments. It is thus important to control
even GET and/or NOTIFY access to these objects and possibly to even
encrypt the values of these objects when sending them over the network
via SNMP. These are the tables and objects and their
sensitivity/vulnerability: <list style="symbols">
<t>[TODO] you must explicitly list by name any readable objects that
are sensitive or vulnerable and the associated security risks MUST
be spelled out (for instance, if they might reveal customer
information or violate personal privacy laws such as those of the
European Union if exposed to unauthorized parties)</t>
<t>[TODO] list the tables and objects and state why they are
sensitive.</t>
</list></t>
<t>[TODO] discuss what security the protocol used to carry the
information should have. The following three boilerplate paragraphs
should not be changed without very good reason. Changes will almost
certainly require justification during IESG review.</t>
<t>SNMP versions prior to SNMPv3 did not include adequate security. 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
module.</t>
<t>It is RECOMMENDED that implementers consider the security features as
provided by the SNMPv3 framework (see <xref target="RFC3410"></xref>,
section 8), including full support for the SNMPv3 cryptographic
mechanisms (for authentication and privacy).</t>
<t>Further, deployment of SNMP versions prior to SNMPv3 is NOT
RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable
cryptographic security. It is then a customer/operator responsibility to
ensure that the SNMP entity giving access to an instance of this MIB
module 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.</t>
</section>
<section title="IANA Considerations">
<t>[TODO] In order to comply with IESG policy as set forth in
http://www.ietf.org/ID-Checklist.html, every Internet-Draft that is
submitted to the IESG for publication MUST contain an IANA
Considerations section. The requirements for this section vary depending
what actions are required of the IANA. see RFC4181 section 3.5 for more
information on writing an IANA clause for a MIB module document.</t>
<t>[TODO] select an option and provide the necessary details.</t>
<t>Option #1:</t>
<figure>
<preamble></preamble>
<artwork><![CDATA[
The MIB module in this document uses the following IANA-assigned
OBJECT IDENTIFIER values recorded in the SMI Numbers registry:
Descriptor OBJECT IDENTIFIER value
---------- -----------------------
sampleMIB { mib-2 XXX }
]]></artwork>
<postamble></postamble>
</figure>
<t></t>
<t>Option #2:</t>
<t>Editor's Note (to be removed prior to publication): the IANA is
requested to assign a value for "XXX" under the 'mib-2' subtree and to
record the assignment in the SMI Numbers registry. When the assignment
has been made, the RFC Editor is asked to replace "XXX" (here and in the
MIB module) with the assigned value and to remove this note.</t>
<t>Note well: prior to official assignment by the IANA, a draft document
MUST use placeholders (such as "XXX" above) rather than actual numbers.
See RFC4181 Section 4.5 for an example of how this is done in a draft
MIB module.</t>
<t>Option #3:</t>
<!-- If no IANA work is required, an explicit note must be included.-->
<t>This memo includes no request to IANA.</t>
</section>
<!-- The Author's Addresses section will be generated
automatically by XML2RFC from the front information -->
<section title="Contributors">
<t>This MIB document uses the template authored by D. Harrington which
is based on contributions from the MIB Doctors, especially Juergen
Schoenwaelder, Dave Perkins, C.M.Heard and Randy Presuhn.</t>
<t><!--[TODO] Change this section to mention contributors to your
MIB module document.--></t>
</section>
<section title="Acknowledgements">
<t>We would like to thank Bert Wijnen and Andy Bierman for
pointing out the existence of the usrHistory group within
RMON2 and in answering our numerous
questions on the usrHistory group. Further, we wish to
thank U. Herberg for his forcing additions to this MIB through
his thoughtful consideration of performance monitoring
requirements for other MIBs, e.g., NHDP and OLSR MIBs.</t>
</section>
</middle>
<back>
<!-- References Section -->
<!-- Section 4.7f of [RFC2223bis] specifies the requirements for the
references sections. In particular, there MUST be separate lists of
normative and informative references, each in a separate section.
The style SHOULD follow that of recently published RFCs.
The standard MIB boilerplate available at
http://www.ops.ietf.org/mib-boilerplate.html includes lists of
normative and informative references that MUST appear in all IETF
specifications that contain MIB modules. If items from other MIB
modules appear in an IMPORTS statement in the Definitions section,
then the specifications containing those MIB modules MUST be included
in the list of normative references. When items are imported from an
IANA-maintained MIB module the corresponding normative reference
SHALL point to the on-line version of that MIB module. It is the
policy of the RFC Editor that all references must be cited in the
text; such citations MUST appear in the overview section where
documents containing imported definitions (other those already
mentioned in the MIB boilerplate) are required to be mentioned (cf.
Section 3.2).
In general, each normative reference SHOULD point to the most recent
version of the specification in question.
-->
<references title="Normative References">
&rfc2863;
&rfc3418;
<!-- <t>[TODO] rfc2119, 2578, 2579, and 2580 are required to support MIB
module boilerplate text.</t> -->
&rfc2119;
&rfc2578;
&rfc2579;
&rfc2580;
<!-- <t>[TODO]: Add your own normative references.</t>-->
</references>
<references title="Informative References">
<!-- <t>[TODO] RFC3410 is required to support the boilerplate text.</t>-->
&rfc3410;
<!-- <t>[TODO] Add your own informative references</t>-->
&rfc1757;
&rfc2021;
&smf;
</references>
<!--
<section anchor="appendix" title="Appendix A">
<t>You can add appendices just as regular sections, the only
difference is that they go under "back" element, and get letters
instead of numbers</t>
</section>
-->
<section title="Change Log ">
<t>Changes from -01 to -02 draft.</t>
<t>
<list style="numbers">
<t>Restructured the MIB somewhat to now offer the three
reporting capabilities in increasing order of detail:
a) statistical reports, b) sampled reports, and
c) historical reports.</t>
<t>Renamed the usrHistoryGroup and elements to
samplingGroup. This is in line with its actual capabilities.</t>
<t>Added a new historyGroup which provides a history of change events.</t>
<t>Updated the4 Conformance section to reflect the above changes and
additions. But did not yet run smilint to check MIB syntax.</t>
</list>
</t>
<t>Changes from -00 to -01 draft.</t>
<t>
<list style="numbers">
<t>Added (copied) the usrHistory group from RMON2 into the REPORT-MIB.</t>
<t>Restructured the MIB to account for the inclusion of the
reportSampledGroup.</t>
<t>Dropped the reportCurReportsTable as this did not make sense within the
context of the REPORT-MIB.</t>
<t>Added the Compliance and Conformance material. Defined several Compliance
Groups to all for base implementations of the REPORT-MIB for only statistical
reports, for only historical reports or for both. Allow for enhanced
implementations to address higher capacity issues and
extension to metric reporting for statistical reporting.</t>
<t>Ran the MIB through the smilint checker and in the process corrected numerous
typos, ommisions, TEXTUAL CONVENTIONS, IMPORTS, etc.</t>
<t>Updated main text to reflect changes.</t>
</list>
</t>
</section>
<section title="Open Issues">
<t>This section contains the set of open issues related to the
development and design of the REPORT-MIB. This section will not be present
in the final version of the MIB and will be removed once all the open
issues have been resolved.</t>
<t>
<list style="numbers">
<t>Need to add an index associated with object IDs of interest which
are conatined within a table, e.g., IfPacketsIn in an InterfaceTable
which is indexed by IfIndex.</t>
<t>Specify the set of metrics for default support. Done.</t>
<t>Clean up the Table indexing. Specifically, what uniquely defines a report?</t>
<t>Complete notification group.</t>
<t>Complete conformance group. Done but not yet checked by smilint.</t>
<t>Work on the relationship to other MIBs, IF-MIB, NHDP-MIB.</t>
<t>Update the text of the document to reflect the final state of the MIB.</t>
<t>Identify all objects requiring non-volatile storage in their
DESCRIPTION clauses.</t>
<t>Incorporate parameter relationship conditions into their
DESCRIPTION clauses.</t>
<t>Complete the security analysis and section.</t>
<t>Cleanup all the [TODOs] from the MIB template.</t>
</list>
</t>
</section>
<section title="">
<figure>
<preamble />
<artwork><![CDATA[
***************************************************************
* Note to the RFC Editor (to be removed prior to publication) *
* *
* 1) The reference to RFCXXXX within the DESCRIPTION clauses *
* of the MIB module point to this draft and are to be *
* assigned by the RFC Editor. *
* *
* 2) The reference to RFCXXX2 throughout this document point *
* to the current draft-ietf-manet-report-xx.txt. This *
* need to be replaced with the XXX RFC number. *
* *
***************************************************************
]]></artwork>
<postamble></postamble>
</figure>
</section>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-24 04:53:20 |