GENWiki

Premier IT Outsourcing and Support Services within the UK

User Tools

Site Tools


rfc:rfc3287

Network Working Group A. Bierman Request for Comments: 3287 Cisco Systems, Inc. Category: Standards Track July 2002

                Remote Monitoring MIB Extensions for
                      Differentiated Services

Status of this Memo

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

Copyright Notice

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

Abstract

 This memo defines a portion of the Management Information Base (MIB)
 for use with network management protocols in the Internet community.
 In particular, it describes managed objects used for monitoring
 Differentiated Services (DS) Codepoint usage in packets which contain
 a DS field, utilizing the monitoring framework defined in the RMON-2
 (Remote Network Monitoring Management Version 2) MIB.

Table of Contents

 1 The SNMP Network Management Framework ........................... 2
 2 Overview ........................................................ 3
 2.1 Terms ......................................................... 4
 2.2 Relationship to Differentiated Services ....................... 4
 2.3 Relationship to the Remote Monitoring MIBs .................... 5
 3 MIB Structure ................................................... 6
 3.1 DSCP Counter Aggregation ...................................... 7
 3.1.1 Counter Aggregation Configuration ..........................  8
 3.2 MIB Group Overview ...........................................  8
 3.2.1 DSCP Counter Aggregation Control Group .....................  9
 3.2.2 DS Statistics Group ........................................ 10
 3.2.3 DS Protocol Distribution Group ............................. 10
 3.2.4 DS Host Distribution Group ................................. 11
 3.2.5 DSMON Capabilities Group ................................... 12
 3.2.6 DS Matrix Distribution Group ............................... 13
 3.3 RMON vs. DSMON Indexing Structure ............................ 13
 4 Definitions .................................................... 16

Bierman Standards Track [Page 1] RFC 3287 DSMON MIB July 2002

 5 Counter Aggregation Configuration Usage Examples .............. 108
 5.1 Step 1: Unlock the Counter Aggregation Configuration ........ 109
 5.2 Step 2: Check the  Maximum  number  of  Counter  Aggregation
      Groups ..................................................... 109
 5.3  Step  3:  Check if the counter aggregation profiles already
      exist ...................................................... 109
 5.4 Step 4: Create the Counter Aggregation Control Entries ...... 109
 5.5 Step 5: Create the Counter  Aggregation  Group  Descriptions
      ............................................................ 110
 5.6 Step 6: Create the Counter Aggregation Profile Mappings ..... 112
 5.7 Step 7: Lock the Counter Aggregation Configuration .......... 115
 6 Intellectual Property ......................................... 115
 7 Acknowledgements .............................................. 116
 8 References .................................................... 116
 9 Security Considerations ....................................... 118
 10 Author's Address ............................................. 119
 11 Full Copyright Statement ..................................... 120

1. The SNMP Network Management Framework

 The SNMP Management Framework presently consists of five major
 components:
 o  An overall architecture, described in RFC 2571 [RFC2571].
 o  Mechanisms for describing and naming objects and events for the
    purpose of management.  The first version of this Structure of
    Management Information (SMI) is called SMIv1 and is described in
    STD 16, RFC 1155 [RFC1155], STD 16, RFC 1212 [RFC1212] and RFC
    1215 [RFC1215].  The second version, called SMIv2, is described in
    STD 58, RFC 2578 [RFC2578], RFC 2579 [RFC2579] and RFC 2580
    [RFC2580].
 o  Message protocols for transferring management information.  The
    first version of the SNMP message protocol is called SNMPv1 and is
    described in STD 15, RFC 1157 [RFC1157].  A second version of the
    SNMP message protocol, which is not an Internet standards track
    protocol, is called SNMPv2c and is described in RFC 1901 [RFC1901]
    and RFC 1906 [RFC1906].  The third version of the message protocol
    is called SNMPv3 and is described in RFC 1906 [RFC1906], RFC 2572
    [RFC2572] and RFC 2574 [RFC2574].
 o  Protocol operations for accessing management information.  The
    first set of protocol operations and associated PDU formats is
    described in STD 15, RFC 1157 [RFC1157].  A second set of protocol
    operations and associated PDU formats is described in RFC 1905
    [RFC1905].

Bierman Standards Track [Page 2] RFC 3287 DSMON MIB July 2002

 o  A set of fundamental applications described in RFC 2573 [RFC2573]
    and the view-based access control mechanism described in RFC 2575
    [RFC2575].
 A more detailed introduction to the current SNMP Management Framework
 can be found in RFC 2570 [RFC2570].
 Managed objects are accessed via a virtual information store, termed
 the Management Information Base or MIB.  Objects in the MIB are
 defined using the mechanisms defined in the SMI.
 This memo specifies a MIB module that is compliant to the SMIv2.  A
 MIB conforming to the SMIv1 can be produced through the appropriate
 translations.  The resulting translated MIB must be semantically
 equivalent, except where objects or events are omitted because no
 translation is possible (use of Counter64).  Some machine readable
 information in SMIv2 will be converted into textual descriptions in
 SMIv1 during the translation process.  However, this loss of machine
 readable information is not considered to change the semantics of the
 MIB.

2. Overview

 There is a need for a standardized way of monitoring the network
 traffic usage of Differentiated Services (DS) [RFC2474] codepoint
 values.  Each DS codepoint (DSCP) value may be given a different
 treatment by a forwarding device, and this affects which packets get
 dropped or delayed during periods of network congestion.
 The IETF DIFFSERV working group has redefined the semantics of the
 Type of Service (TOS) octet in the IP header, which is now called the
 'DS field'.  The 6-bit Codepoint (DSCP) portion is contained in the
 DS field, which provides for 64 different packet treatments for the
 implementation of differentiated network services.
 By polling DSCP usage counters, an NMS can determine the network
 throughput for traffic associated with different DSCPs.  This data
 can then be analyzed in order to 'tune' DSCP 'allocations' within a
 network, based on the Quality of Service (QoS) policies for that
 network.
 Remote monitoring agents are typically implemented as independent
 software (and sometimes hardware) components, called 'RMON probes'.
 Note that DSMON-capable RMON probes simply collect and aggregate
 statistics, based on criteria (which includes the DSCP value) that
 can be determined by inspecting the contents of monitored packets and
 do not in any way monitor any aspect of a DS forwarding device's
 internal statistics.

Bierman Standards Track [Page 3] RFC 3287 DSMON MIB July 2002

2.1. Terms

 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
 document are to be interpreted as described in BCP 14, RFC 2119.
 [RFC2119]
 This document uses some terms that need introduction:
 DataSource
    A source of data for monitoring purposes.  This term is used
    exactly as defined in the RMON-2 MIB [RFC2021].
 protocol
    A specific protocol encapsulation, as identified for monitoring
    purposes.  This term is used exactly as defined in the RMON
    Protocol Identifiers document [RFC2074].
 Counter Aggregation Group
    A group of statistical counters that are being combined in the
    agent to produce one aggregated counter.  Refer to sections 3.1
    and 3.2.1 for details on counter aggregation groups.
 Counter Aggregation Profile
    Also called 'profile'; A complete set of counter aggregation group
    mappings for DSCP values (i.e., 64 mappings, for each DSCP values
    0 to 63), which are applied to all monitored packets on a
    particular data source and/or DSMON collection.  Refer to sections
    3.1 and 3.2.1 for details on counter aggregation profiles.
 High Capacity Monitoring
    The generic capability to collect and store statistics with an
    internal range of 64 bits (e.g., Counter64).  This term does not
    refer to implementation of the High Capacity RMON MIB [RFC3273].

2.2. Relationship to Differentiated Services

 The DSMON MIB is a product of the RMONMIB WG, not the DIFFSERV WG,
 and it focuses on extending several existing RMON mechanisms to
 support additional packet classification, based on DSCP values
 observed in monitored packets.  This document assumes the reader is
 familiar with the DS Architecture [RFC2475].
 It is expected that complex management applications will use the
 counters in this MIB to help analyze DS-related throughput.  It is
 expected that other metrics, such as delay and jitter, will also be
 analyzed, but support for other metrics is outside the scope of this
 document.

Bierman Standards Track [Page 4] RFC 3287 DSMON MIB July 2002

2.3. Relationship to the Remote Monitoring MIBs

 This MIB is intended to be implemented in Remote Monitoring (RMON)
 probes, which support the RMON-2 MIB [RFC2021].  Such probes may be
 stand-alone devices, or may be co-located with other networking
 devices (e.g., ethernet switches and repeaters).
 The DSMON functions are intended to be implemented in conjunction
 with the associated RMON functions, but the MIB is independent of all
 other RMON data tables.
 Several concepts and even MIB objects from the RMON MIBs are used in
 the DSMON MIB:
 Protocol Directory
    The RMON-2 MIB [RFC2021] defines the protocolDirTable, which is a
    directory of all the protocols that the RMON-2 agent is capable of
    decoding and counting.  The DSMON MIB utilizes this directory to
    identify the protocols detected in monitored packets.  The
    protocolDirLocalIndex MIB object is used to identify protocol
    encapsulations in all DSMON data tables which classify and
    aggregate by protocol type in some manner.  Note that the
    protocolDirTable is used for protocol identification only,
    independent of DSCP classification.
 TimeFilter
    The RMON-2 TimeFilter textual convention provides a mechanism to
    retrieve only rows which have been created or modified since the
    last polling interval (for a particular NMS).  The DSMON MIB uses
    this textual convention in the large data tables, in order to
    minimize polling impact.
 Zero-Based Counters
    Since counters are instantiated by management action, as in the
    RMON MIBs, the DSMON MIB uses zero-based counters in all data
    collection tables.  Specifically, the ZeroBasedCounter32 textual
    convention from the RMON-2 MIB [RFC2021] and the
    ZeroBasedCounter64 textual convention (defined in the HCNUM-TC MIB
    [RFC2856]) are used to define counter objects in this MIB.
 High Capacity Counters
    The DSMON MIB uses the 'SNMPv1 coexistence' strategy adopted by
    the RMONMIB WG.  That is, where a 64-bit counter is provided, a
    32-bit version of the counter, and a 32-bit overflow counter are
    also provided.

Bierman Standards Track [Page 5] RFC 3287 DSMON MIB July 2002

 TopN Reports
    The DSMON MIB uses the same TopN reporting MIB structure as the
    RMON-2 MIB [RFC2021].  TopN reporting can greatly reduce the
    polling overhead required to analyze DSCP usage patterns.
 Some DESCRIPTION clauses for DSMON objects are very similar to those
 for existing RMON-2 or HC-RMON objects.  This is intentional, since
 the semantics of the DSMON features are designed to be as close to
 existing RMON feature as possible, to allow developers and users some
 level of 'MIB re-use'.

3. MIB Structure

            Figure 1: DSMON MIB Functional Structure
     +--------------+     +---------------+
     |              |     |    Counter    |
     |    DSMON     |     |  Aggregation  |
     | Capabilities |     |    Control    |
     |              |     |               |
     +--------------+     +---------------+
                                 |
                                 |
  +------------------------------+----------------------------+
  |                              V                            |
  |                                                           |
  | +-----------+ +-----------+ +-----------+ +------------+  |
  | |           | |           | |           | |            |  |
  | | Data Src  | | Protocol  | | Net. Host | | App Matrix |  |
  | |   Stats   | |  Stats    | |   Stats   | |    Stats   |  |
  | |           | |           | |           | |            |  |
  | +-----------+ +-----------+ +-----------+ +------------+  |
  |                     |             |             |         |
  |                     V             V             V         |
  |               +-----------+ +-----------+ +------------+  |
  |               |           | |           | |            |  |
  |               | Protocol  | | Net. Host | | App Matrix |  |
  |               |   TopN    | |   TopN    | |    TopN    |  |
  |               |           | |           | |            |  |
  |               +-----------+ +-----------+ +------------+  |
  |                                                           |
  |                     Data Collection                       |
  |                                                           |
  +-----------------------------------------------------------+

Bierman Standards Track [Page 6] RFC 3287 DSMON MIB July 2002

 The DSMON MIB can divided into three functional components:
  1. DSMON Capabilities

Describes which DSMON object groups are supported by the agent on

    at least one data source.
  1. Counter Aggregation Control

Controls how individual DIFFSERV codepoint counters are aggregated

    in DSMON data collections.
  1. Data Collection

Controls how individual statistical collections are maintained by

    the agent and reported to management applications.  The individual
    boxes within the Data Collection box represent the DSMON data
    collections (described in section 3.2):
  1. Data Source Statistics
  2. Protocol Statistics
  3. Protocol Statistics TopN Reporting
  4. Network Protocol Host Statistics
  5. Network Protocol Host Statistics TopN Reporting
  6. Application Protocol Matrix Statistics
  7. Application Protocol Matrix Statistics TopN Reporting

3.1. DSCP Counter Aggregation

 A mechanism to configure the agent to internally aggregate counters
 is provided, based on DSCP values.  This is desirable for several
 reasons:
  1. agent data reduction

An agent implementation can potentially reduce the number of

    counters maintained for a given DSMON collection.
  1. agent data collection limitations

Some implementation strategies might provide for a limited number

    of high-speed (e.g., hardware-based) counters for either single or
    aggregated codepoints.
  1. application data retrieval reduction

Applications that would otherwise aggregate counters for

    individual codepoints can move that function to the agent in order
    to reduce the polling overhead on the application, the network,
    and the agent device.
  1. some unused codepoints at this time

Various DSCP values may be expected to remain unused on a given

    network, and may be aggregated for counting purposes.

Bierman Standards Track [Page 7] RFC 3287 DSMON MIB July 2002

  1. some DSCP values are mapped to the same packet treatment

A network administrator may align the counter aggregation

    configuration of the monitoring device with the DS configuration,
    and aggregate statistics for DSCP values which are expected to
    receive the same treatment by the forwarding devices.

3.1.1. Counter Aggregation Configuration

 The configuration of DSCP counter to counter aggregation group
 mappings is managed in a global manner, so that these settings can be
 shared across several DSMON collections and/or data sources.  One
 complete set of DSCP counter mappings is called a counter aggregation
 profile.  The DSMON control tables are very similar to existing
 RMON-2 control tables, except they contain an extra parameter to
 identify the counter aggregation profile the agent should use for the
 collection.
 The appropriate granularity for counter aggregation profile
 assignment may be the data source, but in order to reduce MIB
 complexity (by avoiding an extra layer of tables), an instance of the
 counter aggregation profile parameter exists for each collection.  An
 agent MAY choose to restrict configurations such that all DSMON data
 collections for the same data source must use the same counter
 aggregation profile.
 The DSMON MIB supports the configuration of an arbitrary number of
 counter aggregation profiles.  There is a top-level counter
 aggregation control table, which contains one entry for each counter
 aggregation profile.  A subordinate counter aggregation profile table
 provides information about each DSCP counter to counter aggregation
 group mapping in each profile.  An auxiliary counter aggregation
 group table also provides descriptive information about each counter
 aggregation group in each profile.  Refer to section 3.2.1 for
 details on these MIB objects.

3.2. MIB Group Overview

 The DSMON MIB contains six groups of MIB objects:
  1. dsmonAggregateControl group

Controls the configuration of counter aggregation groups for the

    purpose of reducing the total number of counters maintained by the
    agent.
  1. dsmonStatsObjects group

Report per counter aggregation group distribution statistics for a

    particular RMON dataSource.

Bierman Standards Track [Page 8] RFC 3287 DSMON MIB July 2002

  1. dsmonPdistObjects group

Report per counter aggregation group distribution statistics for

    each application protocol detected on a particular RMON
    dataSource.
  1. dsmonHostObjects group

Report host address distribution statistics for each counter

    aggregation group, detected on a particular RMON dataSource.
  1. dsmonCapsObjects group

Report the static DSMON MIB functional capabilities of the agent

    implementation.
  1. dsmonMatrixObjects group

Report host address pair distribution statistics for each counter

    aggregation group, detected on a particular RMON dataSource.

3.2.1. DSCP Counter Aggregation Control Group

 This group contains 4 scalar objects and three tables, and is used by
 a management station to configure counter aggregation profiles.
 The dsmonMaxAggGroups scalar is a read-only integer which indicates
 the maximum number of counter aggregation groups that the agent will
 allow to be configured into a single aggregation profile.  This value
 SHOULD be equal to 64 (the number of codepoints), but an agent MAY
 limit the number of counter aggregation groups because of resource
 limitations (e.g., small number of hardware-based counters).  At
 least one counter aggregation profile containing at least two counter
 aggregation groups SHOULD be supported by the agent.  (Note that
 classifying all DSCP counters into the same statistical 'bucket' may
 yield a redundant data collection, which can be achieved more easily
 with an HC-RMON or RMON-2 collection instead.)
 The dsmonAggControlLocked scalar is used as a top level switch,
 controlling most write access to the dsmonAggControlTable,
 dsmonAggProfileTable, and dsmonAggGroupTable.  (The
 dsmonAggControlOwner object is the only exception.)  All active DSMON
 collection data is deleted, and collection suspended, while this
 object is equal to 'false', since the meaning of one or more counter
 aggregation control tables may change when it is set back to 'true'.
 The dsmonAggControlChanges counter and dsmonAggControlLastChangeTime
 timestamp can be used by a management station to detect that the
 codepoint to counter aggregation group mappings may have changed
 between polls.

Bierman Standards Track [Page 9] RFC 3287 DSMON MIB July 2002

 The dsmonAggControlTable is a read-create table which contains one
 entry for each counter aggregation profile configured on the agent.
 Each entry is identified by a dsmonAggControlIndex value, which is
 also used as the major index into the dsmonAggProfileTable and
 dsmonAggGroupTable.  The DSMON control tables with DataSource objects
 select a counter aggregation profile by referencing this index value.
 The dsmonAggProfileTable is a read-write table which contains 64 rows
 for each associated entry in the dsmonAggControlTable, which MUST be
 indexed from 0 to 63.  The agent creates this set of 64 instances
 when the associated dsmonAggControlEntry is activated, and deletes
 them when that dsmonAggControlEntry is deactivated.  Each of the 64
 rows represents a conceptual DSCP counter, identified by the same
 dsmonAggProfileDSCP value, and contains the DSCP counter to counter
 aggregation group mapping for that DSCP counter, in the indicated
 profile.  The agent SHOULD use the value zero as the initial counter
 aggregation group assignment for each entry in this table.
 The dsmonAggGroupTable contains an administratively assigned
 descriptive label for each configured counter aggregation group.
 This table is not required to be fully configured in order for data
 collection to occur, since collections are identified by the agent
 with integer indices.  It is provided to allow the agent to store a
 descriptive string for each configured counter aggregation group.
 There is no attempt made to convey any real semantics for each
 counter aggregation group.  A management station MAY choose not to
 configure entries in this table.

3.2.2. DS Statistics Group

 This group contains two tables, the dsmonStatsControlTable and the
 dsmonStatsTable, and supports counter aggregation group distribution
 statistics for half and full-duplex, low and high speed interfaces.
 Packet and octets distributions are maintained in the dsmonStatsTable
 for each active control row in the dsmonStatsControlTable.
 This group provides the lowest statistics granularity in the DSMON
 MIB.  It is expected that a management application will analyze
 certain DS deployment or performance problems by first examining the
 counter aggregation group distribution for an entire data source with
 this group.

3.2.3. DS Protocol Distribution Group

 This group contains two tables for statistics collection,
 (dsmonPdistCtlTable and dsmonPdistStatsTable), and two tables for a
 'Top N' reporting function for the collected statistics
 (dsmonPdistTopNCtlTable and dsmonPdistTopNTable).

Bierman Standards Track [Page 10] RFC 3287 DSMON MIB July 2002

 The dsmonPdistCtlTable and dsmonPdistStatsTable tables provide
 counter aggregation group distribution statistics for each selected
 protocol encapsulation in packets monitored on a particular
 dataSource.  Packet and octets distributions (per counter aggregation
 group per protocol) are maintained in the dsmonPdistStatsTable for
 each active control row in the dsmonPdistCtlTable.
 Due to the potentially large number of entries, the DS Protocol
 Distribution is different from the RMON-2 protocol distribution group
 in several ways:
  1. maximum desired entries parameter added to the control table
  1. inserts and deletes counters added to the control table
  1. support for LRU garbage collection in the dsmonPdistStatsTable
  1. TimeFilter index added to the dsmonPdistStatsTable
  1. the selection of protocols is not configurable. Rather than

select individual protocols to monitor, (e.g., via a

    'supportedOn/Off' extension to the protocolDirTable [RFC 2021]), a
    simplified configuration mechanism is provided.  Since DSCP usage
    statistics are most interesting at the application layer, the
    dsmonPdistStatsTable is 'hardwired' to select only application
    layer (i.e., 'terminal') protocols for statistical analysis.
 The TopN feature requires two additional tables: the
 dsmonPdistTopNCtlTable and the dsmonPdistTopNTable, and supports
 periodic usage reporting for the statistics maintained in the
 dsmonPdistStatsTable.  This feature allows for simple periodic
 retrieval of the most used application/counter aggregation group
 combinations.

3.2.4. DS Host Distribution Group

 This group contains two tables for statistics collection,
 (dsmonHostCtlTable and dsmonHostTable), and two tables for a 'Top N'
 reporting function for the collected statistics
 (dsmonHostTopNCtlTable and dsmonHostTopNTable).
 The dsmonHostCtlTable and dsmonHostTables provide host distribution
 statistics for each counter aggregation group detected in packets
 monitored on a particular dataSource.  The DSMON Host collection is
 similar to the RMON-2 network layer host collection (nlHostTable).
 There is no DSMON application host table defined at this time.

Bierman Standards Track [Page 11] RFC 3287 DSMON MIB July 2002

 It is expected that a management application will analyze certain DS
 deployment or performance problems by first determining the high
 priority DSCP values to examine (beyond the scope of this document)
 and then examining the dsmonHostTable or dsmonHostTopNTable
 statistics to determine which hosts are using the selected counter
 aggregation groups.
 Packet and octets distributions (in and out, per counter aggregation
 group per host) are maintained in the dsmonHostTable for each active
 control row in the dsmonHostCtlTable.
 The DS Host Distribution is different from the RMON-2 network layer
 host group in two ways:
  1. the protocolDirLocalIndex in the INDEX clause MUST identify a

network protocol encapsulation which contains a DS field (e.g.,

    IPv4 or IPv6).  If a protocol encapsulation with multiple network
    layers is specified, then associated entries in this table refer
    to the innermost network protocol layer.
  1. the dsmonHostCtlTable supports limited IPv4 and IPv6 prefix

aggregation by allowing the number of 'monitored address bits' in

    each address to be configured for each collection.  The agent will
    zero out the selected number of rightmost address bits for
    counting purposes.  This configuration parameter can dramatically
    reduce the number of entries which must be maintained by the
    agent, which should reduce CPU and memory resource requirements on
    the agent, and reduce polling overhead on the network and the
    management station.  However, only one mask can be configured for
    each address type, rather than multiple different length masks for
    each address type, based on prefix value.
 The TopN feature requires two additional tables: the
 dsmonHostTopNCtlTable and the dsmonHostTopNTable, and supports
 periodic usage reporting for the statistics maintained in the
 dsmonHostTable.  This feature allows for simple periodic retrieval of
 the most used IP-host/DSCP combinations.

3.2.5. DSMON Capabilities Group

 This group contains a single read-only scalar object,
 dsmonCapabilities, which provides an indication of the MIB groups
 within this MIB that the agent supports.

Bierman Standards Track [Page 12] RFC 3287 DSMON MIB July 2002

3.2.6. DS Matrix Distribution Group

 This group contains three tables for statistics collection,
 (dsmonMatrixCtlTable, dsmonMatrixSDTable, and dsmonMatrixDSTable),
 and two tables for a 'Top N' reporting function for the collected
 statistics (dsmonMatrixTopNCtlTable and dsmonMatrixTopNTable).
 The dsmonMatrixCtlTable, dsmonMatrixSDTable, and dsmonMatrixDSTable
 provide host-pair distribution statistics for each counter
 aggregation group detected in packets monitored on a particular
 dataSource.  The DSMON Matrix collection is similar to the RMON-2
 application layer matrix collection (alMatrixSDTable and
 alMatrixDSTable).  There is no DSMON network layer matrix table
 defined at this time.
 It is expected that a management application will analyze certain DS
 deployment or performance problems by first determining the high
 priority DSCP values to examine (beyond the scope of this document)
 and then examining the dsmonMatrixSDTable, dsmonMatrixDSTable, and/or
 dsmonMatrixTopNTable statistics to determine which host-pairs are
 using the selected counter aggregation groups.
 Packet and octets distributions (source to destination, per counter
 aggregation group per host-pair) are maintained in the
 dsmonMatrixSDTable and dsmonMatrixDSTable for each active control row
 in the dsmonMatrixCtlTable.
 The TopN feature requires two additional tables: the
 dsmonMatrixTopNCtlTable and the dsmonMatrixTopNTable, and supports
 periodic usage reporting for the statistics maintained in the
 dsmonMatrixSDTable.  This feature allows for simple periodic
 retrieval of the most used IP-host-pair/DSCP combinations.

3.3. RMON vs. DSMON Indexing Structure

 The DSMON-MIB control and data tables are very similar in structure
 and look-and-feel to existing RMON-2 and HC-RMON control tables for
 the comparable feature, in order to maintain consistent agent
 behavior and functionality across RMON MIBs.  The DSMON data tables
 are indexed as closely as possible to the comparable RMON-2 or HC-
 RMON tables, with the addition of an index component for DSCP-based
 classification (i.e. dsmonAggGroup).  Refer to Table 1 for a
 comparison of DSMON indexing structure with similar existing RMON
 features.

Bierman Standards Track [Page 13] RFC 3287 DSMON MIB July 2002

                   Table 1: DSMON Indexing Comparison
         Existing RMON                 DSMON
  --------------------------------------------------------------------
                    Full Duplex Interface Statistics
  mediaIndependentEntry            | dsmonStatsControlEntry
     mediaIndependentIndex         |    dsmonStatsControlIndex
                                   | dsmonStatsEntry
                                   |    dsmonStatsControlIndex,
                                   |    dsmonAggGroupIndex
  ---------------------------------+------------------------------
                            Protocol Statistics
  protocolDistControlEntry         | dsmonPdistCtlEntry
     protocolDistControlIndex      |    dsmonPdistCtlIndex
  protocolDistStatsEntry           | dsmonPdistStatsEntry
     protocolDistControlIndex,     |    dsmonPdistCtlIndex,
     protocolDirLocalIndex         |    dsmonPdistTimeMark,
                                   |    dsmonAggGroupIndex,
                                   |    protocolDirLocalIndex
  ---------------------------------+--------------------------------
                       Protocol TopN Distribution
                                   | dsmonPdistTopNCtlEntry
                                   |    dsmonPdistTopNCtlIndex
                none               | dsmonPdistTopNEntry
                                   |    dsmonPdistTopNCtlIndex,
                                   |    dsmonPdistTopNIndex
  ---------------------------------+--------------------------------
                          Network Host Statistics
   hlHostControlEntry              | dsmonHostCtlEntry
      hlHostControlIndex           |    dsmonHostCtlIndex
   nlHostEntry                     | dsmonHostEntry
      hlHostControlIndex,          |    dsmonHostCtlIndex,
      nlHostTimeMark,              |    dsmonHostTimeMark,
      protocolDirLocalIndex,       |    dsmonAggGroupIndex,
      nlHostAddress                |    protocolDirLocalIndex,
                                   |    dsmonHostAddress
  ---------------------------------+--------------------------------

Bierman Standards Track [Page 14] RFC 3287 DSMON MIB July 2002

                Table 1 (Continued): DSMON Indexing Comparison
         Existing RMON                 DSMON
  1. ——————————–+——————————–

Network Host TopN Distribution

                                   | dsmonHostTopNCtlEntry
                                   |    dsmonHostTopNCtlIndex
                none               | dsmonHostTopNEntry
                                   |    dsmonHostTopNCtlIndex,
                                   |    dsmonHostTopNIndex
  ---------------------------------+--------------------------------
                     Application Matrix Statistics
   hlMatrixControlEntry            | dsmonMatrixCtlEntry
      hlMatrixControlIndex         |    dsmonMatrixCtlIndex
   alMatrixSDEntry                 | dsmonMatrixSDEntry
      hlMatrixControlIndex,        |    dsmonMatrixCtlIndex,
      alMatrixSDTimeMark,          |    dsmonMatrixTimeMark,
      protocolDirLocalIndex,       |    dsmonAggGroupIndex,
      nlMatrixSDSourceAddress,     |    dsmonMatrixNLIndex,
      nlMatrixSDDestAddress        |    dsmonMatrixSourceAddress
      protocolDirLocalIndex        |    dsmonMatrixDestAddress
                                   |    dsmonMatrixALIndex
   alMatrixDSEntry                 | dsmonMatrixDSEntry
      hlMatrixControlIndex,        |    dsmonMatrixCtlIndex,
      alMatrixDSTimeMark,          |    dsmonMatrixTimeMark,
      protocolDirLocalIndex,       |    dsmonAggGroupIndex,
      nlMatrixDSDestAddress,       |    dsmonMatrixNLIndex,
      nlMatrixDSSourceAddress      |    dsmonMatrixDestAddress
      protocolDirLocalIndex        |    dsmonMatrixSourceAddress
                                   |    dsmonMatrixALIndex
  ---------------------------------+--------------------------------
                    Application Matrix TopN Distribution
                                   | dsmonMatrixTopNCtlEntry
                none               |    dsmonMatrixTopNCtlIndex
                                   | dsmonMatrixTopNEntry
     (similar to nlMatrixTopN)     |    dsmonMatrixTopNCtlIndex,
                                   |    dsmonMatrixTopNIndex
  ---------------------------------+--------------------------------

Bierman Standards Track [Page 15] RFC 3287 DSMON MIB July 2002

4. Definitions

DSMON-MIB DEFINITIONS ::= BEGIN

IMPORTS

      MODULE-IDENTITY, OBJECT-TYPE, Integer32,
      Counter32, Gauge32
              FROM SNMPv2-SMI
      MODULE-COMPLIANCE, OBJECT-GROUP
              FROM SNMPv2-CONF
      RowStatus, TimeStamp, TEXTUAL-CONVENTION, TruthValue
              FROM SNMPv2-TC
      OwnerString, rmon
              FROM RMON-MIB
      protocolDirLocalIndex, LastCreateTime,
      DataSource, ZeroBasedCounter32, TimeFilter
              FROM RMON2-MIB
      CounterBasedGauge64, ZeroBasedCounter64
              FROM HCNUM-TC
      SnmpAdminString
              FROM SNMP-FRAMEWORK-MIB
      Dscp
              FROM DIFFSERV-DSCP-TC;

dsmonMIB MODULE-IDENTITY

  LAST-UPDATED    "200205310000Z"
  ORGANIZATION    "IETF RMONMIB Working Group"
  CONTACT-INFO
          "        Andy Bierman
                   Cisco Systems, Inc.
                   RMONMIB WG Chair and DSMON MIB Editor
           Postal: 170 West Tasman Drive
                   San Jose, CA USA 95134
              Tel: +1 408 527-3711
           E-mail: abierman@cisco.com
           Send comments to <rmonmib@ietf.org>
           Mailing list subscription info:
               http://www.ietf.org/mailman/listinfo/rmonmib "
  DESCRIPTION
          "This module defines Remote Monitoring MIB extensions for
          Differentiated Services enabled networks.
           RMON DIFFSERV DSCP statistics
            * Per Counter Aggregation Group
            * Per Protocol Per Counter Aggregation Group
            * Per Counter Aggregation Group Per Host

Bierman Standards Track [Page 16] RFC 3287 DSMON MIB July 2002

  • Per Counter Aggregation Group Per Host-Pair
          In order to maintain the RMON 'look-and-feel' and semantic
          consistency, some of the text from the RMON-2 and HC-RMON
          MIBs by Steve Waldbusser has been adapted for use in this
          MIB."
  REVISION        "200205310000Z"
  DESCRIPTION
          "Initial version of the DSMON MIB module.  This version
          published as RFC 3287."
  ::= { rmon 26 }

dsmonObjects OBJECT IDENTIFIER ::= { dsmonMIB 1 } dsmonNotifications OBJECT IDENTIFIER ::= { dsmonMIB 2 } dsmonConformance OBJECT IDENTIFIER ::= { dsmonMIB 3 }

dsmonAggObjects OBJECT IDENTIFIER ::= { dsmonObjects 1 } dsmonStatsObjects OBJECT IDENTIFIER ::= { dsmonObjects 2 } dsmonPdistObjects OBJECT IDENTIFIER ::= { dsmonObjects 3 } dsmonHostObjects OBJECT IDENTIFIER ::= { dsmonObjects 4 } dsmonCapsObjects OBJECT IDENTIFIER ::= { dsmonObjects 5 } dsmonMatrixObjects OBJECT IDENTIFIER ::= { dsmonObjects 6 }

– – Textual Convention to define a – DSMON Counter Aggregation Group Index –

DsmonCounterAggGroupIndex ::= TEXTUAL-CONVENTION

  STATUS current
  DESCRIPTION
          "This TC describes a data type which identifies a DSMON
          counter aggregation group, which is an arbitrary grouping of
          conceptual counters, for monitoring purposes only.  The
          range for this data type begins with zero (instead of
          one), to allow for a direct mapping between counter
          indexing schemes that start at zero (e.g. DSCP values in
          packets) and counter aggregation group values."
  SYNTAX Integer32 (0..2147483647)

– – Textual Convention to define a – DSMON Counter Aggregation Profile Index –

DsmonCounterAggProfileIndex ::= TEXTUAL-CONVENTION

  STATUS current

Bierman Standards Track [Page 17] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "This TC describes a data type which identifies a DSMON
          counter aggregation profile, which is a set of counter
          aggregation group assignments for each of the 64 DSCP
          values, for a particular statistical collection."
  SYNTAX Integer32 (1..2147483647)

* – * * – * D S M O N C A P A B I L I T I E S * – * * – *

dsmonCapabilities OBJECT-TYPE

  SYNTAX      BITS  {
                     dsmonCounterAggControl(0),
                     dsmonStats(1),
                     dsmonStatsOvfl(2),
                     dsmonStatsHC(3),
                     dsmonPdist(4),
                     dsmonPdistOvfl(5),
                     dsmonPdistHC(6),
                     dsmonHost(7),
                     dsmonHostOvfl(8),
                     dsmonHostHC(9),
                     dsmonCaps(10),
                     dsmonMatrix(11),
                     dsmonMatrixOvfl(12),
                     dsmonMatrixHC(13)
                    }
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "This object provides an indication of the DSMON groups
          supported by the agent.  If a bit is set, then the agent
          implements all of the objects in the DSMON object group,
          where bit 'n' represents the MIB group identified by the
          OBJECT IDENTIFIER value { dsmonGroups n+1 }."
  ::= { dsmonCapsObjects 1 }

* – * * – * A G G R E G A T I O N C O N T R O L G R O U P S * – * * – *

Bierman Standards Track [Page 18] RFC 3287 DSMON MIB July 2002

dsmonMaxAggGroups OBJECT-TYPE

  SYNTAX      Integer32 (2..64)
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The maximum number of counter aggregation groups that this
          agent can support.  The agent will allow this number of
          distinct groups to be configured in the
          dsmonAggProfileTable, numbered from '0' to
          'dsmonMaxAggGroups - 1', for each counter aggregation
          profile entry supported by the agent.
          The agent MUST NOT lower this value during system operation,
          and SHOULD set this object to an appropriate value during
          system initialization."
  ::= { dsmonAggObjects 1 }

dsmonAggControlLocked OBJECT-TYPE

  SYNTAX      TruthValue
  MAX-ACCESS  read-write
  STATUS      current
  DESCRIPTION
          "Controls the setup of counter aggregation groups for this
          agent.
          If this object contains the value 'true', then write access
          to the objects in the dsmonAggControlTable (except the
          dsmonAggControlOwner object), dsmonAggProfileTable, and
          dsmonAggGroupTable is not permitted, and data collection is
          possible.  This object only controls write access to these
          MIB objects.  The DSMON data collection control tables
          (e.g., dsmonHostCtlTable) can be configured at any time,
          regardless of the value of this object.
          If this object contains the value 'false', write access to
          the objects in the dsmonAggControlTable,
          dsmonAggProfileTable, and dsmonAggGroupTable is permitted,
          and data collection is not possible.  In addition, all
          objects in all DSMON data tables (e.g., dsmonStatsTable)
          shall be deleted.
          An agent is not required to process SNMP Set Requests for
          this object in conjunction with other objects from this MIB.
          This is intended to simplify the processing of Set Requests
          for tables such as the dsmonAggProfileTable, by eliminating
          the possibility that a single Set PDU will contain multiple
          varbinds which are in conflict, such as a PDU which both
          modifies the dsmonAggProfileTable and locks the

Bierman Standards Track [Page 19] RFC 3287 DSMON MIB July 2002

          dsmonAggProfileTable at the same time.
          Note that the agent is not required to validate the entire
          counter aggregation configuration when an attempt is made to
          transition an instance of this object from 'true' to
          'false'.  That validation is done if and when a DSMON data
          collection is activated.
          An agent is required to reactivate any suspended data
          collections when this object transitions to 'true', Each
          active data control entry (e.g., dsmonStatsControlEntry),
          will be validated with respect to the new counter
          aggregation configuration.  If the counter aggregation
          profile referenced in the data collection is valid, then
          that collection will be restarted.  Otherwise, the RowStatus
          object (e.g., dsmonStatsControlStatus) will be set to
          'notReady' for that collection control entry."
  ::= { dsmonAggObjects 2 }

dsmonAggControlChanges OBJECT-TYPE

  SYNTAX      Counter32
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "This object counts the number of times the value of the
          dsmonAggControlLocked object has changed.  A management
          station can use this object to detect if counters in the
          DSMON data tables (e.g., dsmonStatsEntry) have been deleted
          and recreated between polls.
          This object shall be incremented by one each time the
          dsmonAggControlLocked object changes from 'false' to 'true',
          or from 'true' to 'false'."
  ::= { dsmonAggObjects 3 }

dsmonAggControlLastChangeTime OBJECT-TYPE

  SYNTAX      TimeStamp
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "This object identifies the value of sysUpTime at the moment
          the dsmonAggControlLocked object was last modified.  A
          management station can use this object to detect if counters
          in the DSMON data tables (e.g., dsmonStatsEntry) have been
          deleted and recreated between polls.
          This object shall be updated with the current value of
          sysUpTime, if the dsmonAggControlLocked object changes from

Bierman Standards Track [Page 20] RFC 3287 DSMON MIB July 2002

          'false' to 'true', or from 'true' to 'false'.
          Upon system initialization, this object shall contain the
          value zero."
  ::= { dsmonAggObjects 4 }

– – Counter Aggregation Control Table –

dsmonAggControlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonAggControlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "This table provides an overall description and control
          point for all dsmonAggProfileEntries with the same
          dsmonAggControlIndex value.
          A management application SHOULD create a counter aggregation
          profile by first creating and activating an entry in this
          table.  This will cause the agent to create a set of 64
          dsmonAggProfileEntries on behalf of this control entry.  An
          application can then set the individual counter aggregation
          group assignments for each of the 64 DSCP values,
          This table MUST NOT be modified if the dsmonAggControlLocked
          object is equal to 'true'.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table, and
          (independently) the number of counter aggregation profiles
          which may be applied to a particular data source.  In this
          case, the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905].
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.  Otherwise, each
          potential counter aggregation group description string
          SHOULD contain the empty string."
  ::= { dsmonAggObjects 5 }

dsmonAggControlEntry OBJECT-TYPE

  SYNTAX      DsmonAggControlEntry
  MAX-ACCESS  not-accessible

Bierman Standards Track [Page 21] RFC 3287 DSMON MIB July 2002

  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonAggControlTable."
  INDEX { dsmonAggControlIndex }
  ::= { dsmonAggControlTable 1 }

DsmonAggControlEntry ::= SEQUENCE {

  dsmonAggControlIndex         DsmonCounterAggProfileIndex,
  dsmonAggControlDescr         SnmpAdminString,
  dsmonAggControlOwner         OwnerString,
  dsmonAggControlStatus        RowStatus

}

dsmonAggControlIndex OBJECT-TYPE

  SYNTAX      DsmonCounterAggProfileIndex
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "An arbitrary integer index value used to identify the
          counter aggregation profile specified by this control
          entry."
  ::= { dsmonAggControlEntry 1 }

dsmonAggControlDescr OBJECT-TYPE

  SYNTAX      SnmpAdminString (SIZE (0..64))
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "An administratively assigned description of the counter
          aggregation profile identified by this entry.
          Upon first creation of an instance of this object, the agent
          SHOULD set this object to the empty string.  If the agent
          supports non-volatile storage, then this object SHOULD be
          re-initialized with its stored value after a system reboot.
          This object MUST NOT be modified if the associated
          dsmonAggControlStatus object is equal to 'active', or the
          dsmonAggControlLocked object is equal to 'true'."
  ::= { dsmonAggControlEntry 2 }

dsmonAggControlOwner 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."

Bierman Standards Track [Page 22] RFC 3287 DSMON MIB July 2002

  ::= { dsmonAggControlEntry 3 }

dsmonAggControlStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this row.
          An entry MUST NOT exist in the active state unless all
          objects in the entry have an appropriate value.
          Upon setting this object to active(1), the agent will create
          a complete set of 64 associated entries in the
          dsmonAggProfileTable.
          If this object is not equal to active(1), all associated
          entries in the dsmonAggProfileTable shall be deleted.
          This object MUST NOT be modified if the
          dsmonAggControlLocked object is equal to 'true'."
  ::= { dsmonAggControlEntry 4 }

– – Counter Aggregation Profile Table –

dsmonAggProfileTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonAggProfileEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "Controls the setup of counter aggregation profiles for this
          agent.  For each such profile, every DSCP value MUST be
          configured into exactly one counter aggregation group.
          This table MUST NOT be modified if the dsmonAggControlLocked
          object is equal to 'true'.
          The agent will create a set of 64 entries in this table
          (with the same dsmonAggControlIndex value) when the
          associated dsmonAggControlEntry is activated.
          If the agent supports non-volatile configuration of this
          table, then upon system initialization, this table SHOULD be
          initialized with the saved values."
  ::= { dsmonAggObjects 6 }

Bierman Standards Track [Page 23] RFC 3287 DSMON MIB July 2002

dsmonAggProfileEntry OBJECT-TYPE

  SYNTAX      DsmonAggProfileEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonAggProfileTable.  The
          dsmonAggControlIndex value in the index identifies the
          dsmonAggControlEntry associated with each entry in this
          table."
  INDEX { dsmonAggControlIndex, dsmonAggProfileDSCP }
  ::= { dsmonAggProfileTable 1 }

DsmonAggProfileEntry ::= SEQUENCE {

  dsmonAggProfileDSCP          Dscp,
  dsmonAggGroupIndex           DsmonCounterAggGroupIndex

}

dsmonAggProfileDSCP OBJECT-TYPE

  SYNTAX      Dscp
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The specific DSCP value for the DSCP counter which is
          configured in a counter aggregation group by this entry."
  ::= { dsmonAggProfileEntry 1 }

dsmonAggGroupIndex OBJECT-TYPE

  SYNTAX      DsmonCounterAggGroupIndex
  MAX-ACCESS  read-write
  STATUS      current
  DESCRIPTION
          "The counter aggregation group which contains this DSCP
          value.  Upon creation of a new sub-tree (set of 64 entries
          with the same dsmonAggControlIndex value) in this table, the
          agent SHOULD initialize all related instances of this object
          to the value zero.
          This object MUST NOT be modified if the
          dsmonAggControlLocked object is equal to 'true'."
  DEFVAL { 0 }
  ::= { dsmonAggProfileEntry 2 }

– – Counter Aggregation Group Table –

Bierman Standards Track [Page 24] RFC 3287 DSMON MIB July 2002

dsmonAggGroupTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonAggGroupEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "This table provides a description of each counter
          aggregation group configured on this system.  Note that the
          semantics of a particular counter aggregation group are only
          relevant within the scope of a particular counter
          aggregation profile.
          This table MUST NOT be modified if the dsmonAggControlLocked
          object is equal to 'true'.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table, and
          (independently) the number of counter aggregation profiles
          which may be applied to a particular data source.  In this
          case, the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905].
          If the agent supports non-volatile configuration of this
          table, then upon system initialization, this table SHOULD be
          initialized with the saved values.  Otherwise, each
          potential counter aggregation group description string
          SHOULD contain the empty string.
          An agent SHOULD allow entries to be created or modified in
          this table, even if the specified dsmonAggControlIndex value
          does not identify a valid dsmonAggControlEntry or a complete
          set of valid dsmonAggProfileEntries, to reduce row creation
          order dependencies."
  ::= { dsmonAggObjects 7 }

dsmonAggGroupEntry OBJECT-TYPE

  SYNTAX      DsmonAggGroupEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonAggGroupTable.  The
          dsmonAggGroupIndex value in the INDEX identifies the counter
          aggregation group associated with each entry.
          The dsmonAggControlIndex in the index identifies the counter
          aggregation profile associated with each entry, identified
          by the dsmonAggControlEntry and dsmonAggProfileEntries with
          the same index value.

Bierman Standards Track [Page 25] RFC 3287 DSMON MIB July 2002

          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          The dsmonAggGroupIndex in the index identifies the counter
          aggregation group associated with each entry.  This object
          SHOULD be indexed from zero to 'N', where 'N' is less than
          the value of the dsmonMaxAggGroups for this agent."
  INDEX { dsmonAggControlIndex, dsmonAggGroupIndex }
  ::= { dsmonAggGroupTable 1 }

DsmonAggGroupEntry ::= SEQUENCE {

  dsmonAggGroupDescr         SnmpAdminString,
  dsmonAggGroupStatus        RowStatus

}

dsmonAggGroupDescr OBJECT-TYPE

  SYNTAX      SnmpAdminString (SIZE (0..64))
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "An administratively assigned description of the counter
          aggregation group identified by this entry.
          Upon first creation of an instance of this object, the agent
          SHOULD set this object to the empty string.
          This object MUST NOT be modified if the associated
          dsmonAggGroupStatus object is equal to 'active', or the
          dsmonAggControlLocked object is equal to 'true'."
  ::= { dsmonAggGroupEntry 1 }

dsmonAggGroupStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this row.
          An entry MUST NOT exist in the active state unless all
          objects in the entry have an appropriate value.
          This object MUST NOT be modified if the
          dsmonAggControlLocked object is equal to 'true'."
  ::= { dsmonAggGroupEntry 2 }

Bierman Standards Track [Page 26] RFC 3287 DSMON MIB July 2002

* – * * – * P E R - D A T A S O U R C E C O L L E C T I O N S * – * * – *

– – Per-DataSource Statistics Control Table –

dsmonStatsControlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonStatsControlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "Controls the setup of per data source per counter
          aggregation group distribution statistics.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonStatsObjects 1 }

dsmonStatsControlEntry OBJECT-TYPE

  SYNTAX      DsmonStatsControlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonStatsControlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonStatsControlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonStatsTable to be created and maintained by
          the agent."
  INDEX { dsmonStatsControlIndex }
  ::= { dsmonStatsControlTable 1 }

DsmonStatsControlEntry ::= SEQUENCE {

  dsmonStatsControlIndex                Integer32,

Bierman Standards Track [Page 27] RFC 3287 DSMON MIB July 2002

  dsmonStatsControlDataSource           DataSource,
  dsmonStatsControlAggProfile           DsmonCounterAggProfileIndex,
  dsmonStatsControlDroppedFrames        Counter32,
  dsmonStatsControlCreateTime           LastCreateTime,
  dsmonStatsControlOwner                OwnerString,
  dsmonStatsControlStatus               RowStatus

}

dsmonStatsControlIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..65535)
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "An arbitrary and unique index for this
          dsmonStatsControlEntry."
  ::= { dsmonStatsControlEntry 1 }

dsmonStatsControlDataSource OBJECT-TYPE

  SYNTAX      DataSource
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The data source of this per protocol per counter
          aggregation group distribution.
          Note that only packets that contain a network protocol
          encapsulation which contains a DS field [RFC2474] will be
          counted in this table.
          This object MUST NOT be modified if the associated
          dsmonStatsControlStatus object is equal to active(1)."
  ::= { dsmonStatsControlEntry 2 }

dsmonStatsControlAggProfile OBJECT-TYPE

  SYNTAX      DsmonCounterAggProfileIndex
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The dsmonAggControlIndex value identifying the counter
          aggregation profile which should be used on behalf of this
          dsmonStatsControlEntry.
          The associated dsmonAggControlEntry and
          dsmonAggProfileEntries, identified by the same
          dsmonAggControlIndex index value, MUST be active in order
          for this entry to remain active.  It is possible for the
          counter aggregation configuration to change from a valid to
          invalid state for this dsmonStats collection.  In this case,

Bierman Standards Track [Page 28] RFC 3287 DSMON MIB July 2002

          the associated dsmonStatsControlStatus object will be
          changed to the 'notReady' state, and data collection will
          not occur on behalf of this control entry.
          Note that an agent MAY choose to limit the actual number of
          counter aggregation profiles which may be applied to a
          particular data source.
          This object MUST NOT be modified if the associated
          dsmonStatsControlStatus object is equal to active(1)."
  ::= { dsmonStatsControlEntry 3 }

dsmonStatsControlDroppedFrames OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "frames"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The total number of frames which were received by the probe
          and therefore not accounted for in the *StatsDropEvents, but
          for which the probe chose not to count for this entry for
          whatever reason.  Most often, this event occurs when the
          probe is out of some resources and decides to shed load from
          this collection.
          This count does not include packets that were not counted
          because they had MAC-layer errors.
          Note that, unlike the dropEvents counter, this number is the
          exact number of frames dropped."
  ::= { dsmonStatsControlEntry 4 }

dsmonStatsControlCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this control entry was last
          activated.  This can be used by the management station to
          detect if the table has been deleted and recreated between
          polls."
  ::= { dsmonStatsControlEntry 5 }

dsmonStatsControlOwner OBJECT-TYPE

  SYNTAX      OwnerString
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION

Bierman Standards Track [Page 29] RFC 3287 DSMON MIB July 2002

          "The entity that configured this entry and is therefore
          using the resources assigned to it."
  ::= { dsmonStatsControlEntry 6 }

dsmonStatsControlStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this row.
          An entry MUST 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 dsmonStatsTable shall be deleted."
  ::= { dsmonStatsControlEntry 7 }

– – Per-DataSource Statistics Table –

dsmonStatsTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonStatsEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A list of information on counter aggregation group usage
          for each monitored data source.
          The following table defines per counter aggregation group
          statistics for full and/or half-duplex links as well as high
          capacity links.
          For half-duplex links, or full-duplex-capable links
          operating in half-duplex mode, the dsmonStatsIn* objects
          shall be used and the dsmonStatsOut* objects will not
          increment.
          For full-duplex links, the dsmonStatsOut* objects will be
          present.  Whenever possible, the probe SHOULD count packets
          moving away from the closest terminating equipment as output
          packets.  Failing that, the probe SHOULD count packets
          moving away from the DTE as output packets.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table will be deleted and the agent
          will not process packets on behalf of any

Bierman Standards Track [Page 30] RFC 3287 DSMON MIB July 2002

          dsmonStatsControlEntry."
  ::= { dsmonStatsObjects 2 }

dsmonStatsEntry OBJECT-TYPE

  SYNTAX      DsmonStatsEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A list of information on Differentiated Services DSCP
          usage, containing inbound and outbound packet and octet
          counters for each counter aggregation group configured for
          collection.
          The dsmonStatsControlIndex value in the index identifies the
          dsmonStatsControlEntry on whose behalf this entry was
          created.
          The dsmonAggGroupIndex value in the index is determined by
          examining the DSCP value in each monitored packet, and the
          dsmonAggProfileTable entry for that DSCP value.
          Note that only packets that contain a network protocol
          encapsulation which contains a DS field [RFC2474] will be
          counted in this table.
          An example of the indexing of this entry is
          dsmonStatsOutPkts.1.16"
   INDEX { dsmonStatsControlIndex, dsmonAggGroupIndex }
  ::= { dsmonStatsTable 1 }

DsmonStatsEntry ::= SEQUENCE {

  dsmonStatsInPkts            ZeroBasedCounter32,
  dsmonStatsInOctets          ZeroBasedCounter32,
  dsmonStatsInOvflPkts        ZeroBasedCounter32,
  dsmonStatsInOvflOctets      ZeroBasedCounter32,
  dsmonStatsInHCPkts          ZeroBasedCounter64,
  dsmonStatsInHCOctets        ZeroBasedCounter64,
  dsmonStatsOutPkts           ZeroBasedCounter32,
  dsmonStatsOutOctets         ZeroBasedCounter32,
  dsmonStatsOutOvflPkts       ZeroBasedCounter32,
  dsmonStatsOutOvflOctets     ZeroBasedCounter32,
  dsmonStatsOutHCPkts         ZeroBasedCounter64,
  dsmonStatsOutHCOctets       ZeroBasedCounter64

}

dsmonStatsInPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"

Bierman Standards Track [Page 31] RFC 3287 DSMON MIB July 2002

  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets using one of the DSCP values in the
          indicated counter aggregation group, received on a half-
          duplex link or on the inbound connection of a full-duplex
          link."
  ::= { dsmonStatsEntry 1 }

dsmonStatsInOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in packets, using one of the DSCP
          values in the indicated counter aggregation group, received
          on a half-duplex link or on the inbound connection of a
          full-duplex link."
  ::= { dsmonStatsEntry 2 }

dsmonStatsInOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonStatsInPkts counter
          has overflowed.  Note that this object will only be
          instantiated if the associated dsmonStatsInHCPkts object is
          also instantiated for a particular dataSource."
  ::= { dsmonStatsEntry 3 }

dsmonStatsInOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonStatsInOctets
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonStatsInHCOctets object
          is also instantiated for a particular dataSource."
  ::= { dsmonStatsEntry 4 }

dsmonStatsInHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current

Bierman Standards Track [Page 32] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "The 64-bit version of the dsmonStatsInPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonStatsEntry 5 }

dsmonStatsInHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonStatsInOctets object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonStatsEntry 6 }

dsmonStatsOutPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets using one of the DSCP values in the
          indicated counter aggregation group, received on a full-
          duplex link in the direction of the network."
  ::= { dsmonStatsEntry 7 }

dsmonStatsOutOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in packets, using one of the DSCP
          values in the indicated counter aggregation group, received
          on a full-duplex link in the direction of the network."
  ::= { dsmonStatsEntry 8 }

dsmonStatsOutOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION

Bierman Standards Track [Page 33] RFC 3287 DSMON MIB July 2002

          "The number of times the associated dsmonStatsOutPkts
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonStatsOutHCPkts object is
          also instantiated for a particular dataSource."
  ::= { dsmonStatsEntry 9 }

dsmonStatsOutOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonStatsOutOctets
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonStatsOutHCOctets object
          is also instantiated for a particular dataSource."
  ::= { dsmonStatsEntry 10 }

dsmonStatsOutHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonStatsOutPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonStatsEntry 11 }

dsmonStatsOutHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonStatsOutOctets object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonStatsEntry 12 }

* – * * – * P E R - P R O T O C O L C O L L E C T I O N S * – * * – *

Bierman Standards Track [Page 34] RFC 3287 DSMON MIB July 2002

– – DSCP Per-Protocol Statistics Control Table –

dsmonPdistCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonPdistCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "Controls the setup of per application per counter
          aggregation group distribution statistics.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonPdistObjects 1 }

dsmonPdistCtlEntry OBJECT-TYPE

  SYNTAX      DsmonPdistCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonPdistCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonPdistCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonPdistStatsTable to be created and maintained
          by the agent."
  INDEX { dsmonPdistCtlIndex }
  ::= { dsmonPdistCtlTable 1 }

DsmonPdistCtlEntry ::= SEQUENCE {

  dsmonPdistCtlIndex                Integer32,
  dsmonPdistCtlDataSource           DataSource,
  dsmonPdistCtlAggProfile           DsmonCounterAggProfileIndex,
  dsmonPdistCtlMaxDesiredEntries    Integer32,
  dsmonPdistCtlDroppedFrames        Counter32,
  dsmonPdistCtlInserts              Counter32,
  dsmonPdistCtlDeletes              Counter32,

Bierman Standards Track [Page 35] RFC 3287 DSMON MIB July 2002

  dsmonPdistCtlCreateTime           LastCreateTime,
  dsmonPdistCtlOwner                OwnerString,
  dsmonPdistCtlStatus               RowStatus

}

dsmonPdistCtlIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..65535)
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "An arbitrary and unique index for this dsmonPdistCtlEntry."
  ::= { dsmonPdistCtlEntry 1 }

dsmonPdistCtlDataSource OBJECT-TYPE

  SYNTAX      DataSource
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The source of data for the this per protocol counter
          aggregation group distribution.
          This object MUST NOT be modified if the associated
          dsmonPdistCtlStatus object is equal to active(1)."
  ::= { dsmonPdistCtlEntry 2 }

dsmonPdistCtlAggProfile OBJECT-TYPE

  SYNTAX      DsmonCounterAggProfileIndex
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The dsmonAggControlIndex value identifying the counter
          aggregation profile which should be used on behalf of this
          dsmonPdistCtlEntry.
          The associated dsmonAggControlEntry and
          dsmonAggProfileEntries, identified by the same
          dsmonAggControlIndex index value, MUST be active in order
          for this entry to remain active.  It is possible for the
          counter aggregation configuration to change from a valid to
          invalid state for this dsmonPdist collection.  In this case,
          the associated dsmonPdistCtlStatus object will be changed to
          the 'notReady' state, and data collection will not occur on
          behalf of this control entry.
          Note that an agent MAY choose to limit the actual number of
          counter aggregation profiles which may be applied to a
          particular data source.

Bierman Standards Track [Page 36] RFC 3287 DSMON MIB July 2002

          This object MUST NOT be modified if the associated
          dsmonPdistCtlStatus object is equal to active(1)."
  ::= { dsmonPdistCtlEntry 3 }

dsmonPdistCtlMaxDesiredEntries OBJECT-TYPE

  SYNTAX      Integer32 (-1 | 1..2147483647)
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The maximum number of entries that are desired in the
          dsmonPdistStatsTable on behalf of this control entry.  The
          probe will not create more than this number of associated
          entries in the table, but MAY choose to create fewer entries
          in this table for any reason including the lack of
          resources.
          If this value is set to -1, the probe MAY create any number
          of entries in this table.
          This object MUST NOT be modified if the associated
          dsmonPdistCtlStatus object is equal to active(1)."
  ::= { dsmonPdistCtlEntry 4 }

dsmonPdistCtlDroppedFrames OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "frames"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The total number of frames which were received by the probe
          and therefore not accounted for in the *StatsDropEvents, but
          for which the probe chose not to count for this entry for
          whatever reason.  Most often, this event occurs when the
          probe is out of some resources and decides to shed load from
          this collection.
          This count does not include packets that were not counted
          because they had MAC-layer errors.
          Note that, unlike the dropEvents counter, this number is the
          exact number of frames dropped."
  ::= { dsmonPdistCtlEntry 5 }

dsmonPdistCtlInserts OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current

Bierman Standards Track [Page 37] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "The number of times a dsmonPdist entry has been inserted
          into the dsmonPdistTable.  If an entry is inserted, then
          deleted, and then inserted, this counter will be incremented
          by 2.
          To allow for efficient implementation strategies, agents MAY
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.
          Note that the table size can be determined by subtracting
          dsmonPdistCtlDeletes from dsmonPdistCtlInserts."
  ::= { dsmonPdistCtlEntry 6 }

dsmonPdistCtlDeletes OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of times a dsmonPdist entry has been deleted
          from the dsmonPdist table (for any reason).  If an entry is
          deleted, then inserted, and then deleted, this counter will
          be incremented by 2.
          To allow for efficient implementation strategies, agents MAY
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.
          Note that the table size can be determined by subtracting
          dsmonPdistCtlDeletes from dsmonPdistCtlInserts."
  ::= { dsmonPdistCtlEntry 7 }

dsmonPdistCtlCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this control entry was last
          activated.  This can be used by the management station to
          detect if the table has been deleted and recreated between
          polls."

Bierman Standards Track [Page 38] RFC 3287 DSMON MIB July 2002

  ::= { dsmonPdistCtlEntry 8 }

dsmonPdistCtlOwner 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."
  ::= { dsmonPdistCtlEntry 9 }

dsmonPdistCtlStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this row.
          An entry MUST 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 dsmonPdistStatsTable shall be deleted."
  ::= { dsmonPdistCtlEntry 10 }

– – Per-Protocol Statistics Table –

dsmonPdistStatsTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonPdistStatsEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A list of information on a per protocol per counter
          aggregation group usage.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table will be deleted and the agent
          will not process packets on behalf of any
          dsmonPdistCtlEntry."
  ::= { dsmonPdistObjects 2 }

dsmonPdistStatsEntry OBJECT-TYPE

  SYNTAX      DsmonPdistStatsEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION

Bierman Standards Track [Page 39] RFC 3287 DSMON MIB July 2002

          "A list of information on Differentiated Services DSCP
          usage, containing packet and octet counters for each counter
          aggregation group configured for collection, and each
          protocol (as identified by the protocolDirLocalIndex for the
          protocol) identified in each monitored packet.
          The dsmonPdistCtlIndex value in the index identifies the
          dsmonPdistCtlEntry on whose behalf this entry was created.
          Note that only packets that contain a network protocol
          encapsulation which contains a DS field [RFC2474] will be
          counted in this table.
          The dsmonAggGroupIndex value in the index is determined by
          examining the DSCP value in each monitored packet, and the
          dsmonAggProfileTable entry for that value.
          The protocolDirLocalIndex in the index identifies the
          protocolDirEntry for the protocol encapsulation of each
          monitored packet.  The agent will include only application
          layer protocols in the associated dsmonPdistStatsTable.  Any
          'terminal' protocol is considered to be an application
          protocol.
          An example of the indexing of this entry is
          dsmonPdistStatsPkts.9.29943.0.42."
   INDEX { dsmonPdistCtlIndex,
           dsmonPdistTimeMark,
           dsmonAggGroupIndex,
           protocolDirLocalIndex }
  ::= { dsmonPdistStatsTable 1 }

DsmonPdistStatsEntry ::= SEQUENCE {

  dsmonPdistTimeMark             TimeFilter,
  dsmonPdistStatsPkts            ZeroBasedCounter32,
  dsmonPdistStatsOctets          ZeroBasedCounter32,
  dsmonPdistStatsOvflPkts        ZeroBasedCounter32,
  dsmonPdistStatsOvflOctets      ZeroBasedCounter32,
  dsmonPdistStatsHCPkts          ZeroBasedCounter64,
  dsmonPdistStatsHCOctets        ZeroBasedCounter64,
  dsmonPdistStatsCreateTime      LastCreateTime

}

dsmonPdistTimeMark OBJECT-TYPE

  SYNTAX      TimeFilter
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION

Bierman Standards Track [Page 40] RFC 3287 DSMON MIB July 2002

          "The Time Filter index for this table.  This object may be
          used by a management station to retrieve only rows which
          have been created or modified since a particular time.  Note
          that the current value for a row are always returned and the
          TimeFilter is not a historical data archiving mechanism.
          Refer to RFC 2021 [RFC2021] for a detailed description of
          TimeFilter operation."
  ::= { dsmonPdistStatsEntry 1 }

dsmonPdistStatsPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets, using one of the DSCP values in the
          indicated counter aggregation group, for the protocol
          identified by the associated protocolDirLocalIndex value."
  ::= { dsmonPdistStatsEntry 2 }

dsmonPdistStatsOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in packets, using one of the DSCP
          values in the indicated counter aggregation group, for the
          protocol identified by the associated protocolDirLocalIndex
          value.
          Note that this object doesn't count just those octets in the
          particular protocol frames, but includes the entire packet
          that contained the protocol."
  ::= { dsmonPdistStatsEntry 3 }

dsmonPdistStatsOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonPdistStatsPkts
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonPdistStatsHCPkts object
          is also instantiated for a particular dataSource."
  ::= { dsmonPdistStatsEntry 4 }

dsmonPdistStatsOvflOctets OBJECT-TYPE

Bierman Standards Track [Page 41] RFC 3287 DSMON MIB July 2002

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonPdistStatsOctets
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonPdistStatsHCOctets
          object is also instantiated for a particular dataSource."
  ::= { dsmonPdistStatsEntry 5 }

dsmonPdistStatsHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonPdistStatsPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonPdistStatsEntry 6 }

dsmonPdistStatsHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonPdistStatsOctets object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonPdistStatsEntry 7 }

dsmonPdistStatsCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this dsmonPdistStats entry was
          last instantiated by the agent.  This can be used by the
          management station to detect if the entry has been deleted
          and recreated between polls."
  ::= { dsmonPdistStatsEntry 8 }

Bierman Standards Track [Page 42] RFC 3287 DSMON MIB July 2002

– – Per-Protocol Statistics TopN Control Table –

dsmonPdistTopNCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonPdistTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A set of parameters that control the creation of a report
          of the top N dsmonPdist entries according to a particular
          metric.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonPdistObjects 3 }

dsmonPdistTopNCtlEntry OBJECT-TYPE

  SYNTAX      DsmonPdistTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonPdistTopNCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonPdistTopNCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonPdistTopNTable to be created and maintained
          by the agent."
  INDEX { dsmonPdistTopNCtlIndex }
  ::= { dsmonPdistTopNCtlTable 1 }

DsmonPdistTopNCtlEntry ::= SEQUENCE {

  dsmonPdistTopNCtlIndex            Integer32,
  dsmonPdistTopNCtlPdistIndex       Integer32,
  dsmonPdistTopNCtlRateBase         INTEGER,
  dsmonPdistTopNCtlTimeRemaining    Integer32,
  dsmonPdistTopNCtlGeneratedReprts  Counter32,
  dsmonPdistTopNCtlDuration         Integer32,

Bierman Standards Track [Page 43] RFC 3287 DSMON MIB July 2002

  dsmonPdistTopNCtlRequestedSize    Integer32,
  dsmonPdistTopNCtlGrantedSize      Integer32,
  dsmonPdistTopNCtlStartTime        TimeStamp,
  dsmonPdistTopNCtlOwner            OwnerString,
  dsmonPdistTopNCtlStatus           RowStatus

}

dsmonPdistTopNCtlIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonPdistTopNCtlTable, with the same dsmonPdistTopNCtlIndex
          value as this object.  Each entry in this table defines one
          Top N report prepared on behalf of the dsmonPdistStatsEntry
          collection with the same dsmonPdistCtlIndex as this object."
  ::= { dsmonPdistTopNCtlEntry 1 }

dsmonPdistTopNCtlPdistIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The dsmonPdistTable for which a top N report will be
          prepared on behalf of this entry.  The dsmonPdistTable is
          identified by the value of the dsmonPdistCtlIndex for that
          table - that value is used here to identify the particular
          table.
          This object MUST NOT be modified if the associated
          dsmonPdistTopNCtlStatus object is equal to active(1)."
  ::= { dsmonPdistTopNCtlEntry 2 }

dsmonPdistTopNCtlRateBase OBJECT-TYPE

  SYNTAX     INTEGER {
                dsmonPdistTopNPkts(1),
                dsmonPdistTopNOctets(2),
                dsmonPdistTopNHCPkts(3),
                dsmonPdistTopNHCOctets(4)
             }
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The variable for each dsmonPdist that the
          dsmonPdistTopNRate and dsmonPdistTopNHCRate variables are
          based upon.  Each dsmonPdistTopN report generated on behalf
          of this control entry will be ranked in descending order,

Bierman Standards Track [Page 44] RFC 3287 DSMON MIB July 2002

          based on the associated dsmonPdistStatsTable counter,
          identified by this object.
          The following table identifies the dsmonPdistTable counter
          associated with each enumeration:
          Enumeration              RateBase MIB Object
          -----------              -------------------
          dsmonPdistTopNPkts          dsmonPdistStatsPkts
          dsmonPdistTopNOctets        dsmonPdistStatsOctets
          dsmonPdistTopNHCPkts        dsmonPdistStatsHCPkts
          dsmonPdistTopNHCOctets      dsmonPdistStatsHCOctets
          Note that the dsmonPdistTopNHCPkts and
          dsmonPdistTopNHCOctets enumerations are only available if
          the agent supports High Capacity monitoring.
          This object MUST NOT be modified if the associated
          dsmonPdistTopNCtlStatus object is equal to active(1)."
  ::= { dsmonPdistTopNCtlEntry 3 }

dsmonPdistTopNCtlTimeRemaining OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The number of seconds left in the report currently being
          collected.  When this object is modified by the management
          station, a new collection is started, possibly aborting a
          currently running report.  The new value is used as the
          requested duration of this report, and is immediately loaded
          into the associated dsmonPdistTopNCtlDuration object.
          When the report finishes, the probe will automatically start
          another collection with the same initial value of
          dsmonPdistTopNCtlTimeRemaining.  Thus the management station
          may simply read the resulting reports repeatedly, checking
          the startTime and duration each time to ensure that a report
          was not missed or that the report parameters were not
          changed.
          While the value of this object is non-zero, it decrements by
          one per second until it reaches zero.  At the time that this
          object decrements to zero, the report is made accessible in
          the dsmonPdistTopNTable, overwriting any report that may be
          there.

Bierman Standards Track [Page 45] RFC 3287 DSMON MIB July 2002

          When this object is modified by the management station, any
          associated entries in the dsmonPdistTopNTable shall be
          deleted."
  DEFVAL { 1800 }
  ::= { dsmonPdistTopNCtlEntry 4 }

dsmonPdistTopNCtlGeneratedReprts OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "reports"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of reports that have been generated by this
          entry."
  ::= { dsmonPdistTopNCtlEntry 5 }

dsmonPdistTopNCtlDuration OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of seconds that this report has collected during
          the last sampling interval.
          When the associated dsmonPdistTopNCtlTimeRemaining object is
          set, this object shall be set by the probe to the same value
          and shall not be modified until the next time the
          dsmonPdistTopNCtlTimeRemaining is set.
          This value shall be zero if no reports have been requested
          for this dsmonPdistTopNCtlEntry."
  ::= { dsmonPdistTopNCtlEntry 6 }

dsmonPdistTopNCtlRequestedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonPdist entries requested for this
          report.
          When this object is created or modified, the probe SHOULD
          set dsmonPdistTopNCtlGrantedSize as closely to this object
          as is possible for the particular probe implementation and
          available resources."
  DEFVAL { 150 }

Bierman Standards Track [Page 46] RFC 3287 DSMON MIB July 2002

  ::= { dsmonPdistTopNCtlEntry 7 }

dsmonPdistTopNCtlGrantedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonPdist entries in this report.
          When the associated dsmonPdistTopNCtlRequestedSize object is
          created or modified, the probe SHOULD set this object as
          closely to the requested value as is possible for the
          particular implementation and available resources.  The
          probe MUST NOT lower this value except as a result of a
          set to the associated dsmonPdistTopNCtlRequestedSize
          object.
          Protocol entries with the highest value of
          dsmonPdistTopNRate or dsmonPdistTopNHCRate (depending on the
          value of the associated dsmonPdistTopNCtlRateBase object)
          shall be placed in this table in decreasing order of this
          rate until there is no more room or until there are no more
          dsmonPdist entries."
  ::= { dsmonPdistTopNCtlEntry 8 }

dsmonPdistTopNCtlStartTime OBJECT-TYPE

  SYNTAX     TimeStamp
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this top N report was last
          started.  In other words, this is the time that the
          associated dsmonPdistTopNCtlTimeRemaining object was
          modified to start the requested report or the time the
          report was last automatically (re)started.
          This object may be used by the management station to
          determine if a report was missed or not."
  ::= { dsmonPdistTopNCtlEntry 9 }

dsmonPdistTopNCtlOwner 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."

Bierman Standards Track [Page 47] RFC 3287 DSMON MIB July 2002

  ::= { dsmonPdistTopNCtlEntry 10 }

dsmonPdistTopNCtlStatus OBJECT-TYPE

  SYNTAX     RowStatus
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The status of this dsmonPdistTopNCtlEntry.
          An entry MUST 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 dsmonPdistTopNTable shall be deleted by the
          agent."
  ::= { dsmonPdistTopNCtlEntry 11 }

– – dsmonPdist TopN Table –

dsmonPdistTopNTable OBJECT-TYPE

  SYNTAX     SEQUENCE OF DsmonPdistTopNEntry
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "A set of statistics for those protocol distribution entries
          that have counted the highest number of octets or packets.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table SHALL be deleted, and the
          agent will not process TopN reports on behalf of any
          dsmonPdistTopNCtlEntry.
          When the dsmonAggControlLocked object is set to 'true', then
          particular reports SHOULD be restarted from the beginning,
          on behalf of all active rows in the dsmonPdistTopNCtlTable.
          Note that dsmonPdist entries which did not increment at all
          during the report interval SHOULD NOT be included in
          dsmonPdistTopN reports."
  ::= { dsmonPdistObjects 4 }

dsmonPdistTopNEntry OBJECT-TYPE

  SYNTAX     DsmonPdistTopNEntry
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION

Bierman Standards Track [Page 48] RFC 3287 DSMON MIB July 2002

          "A conceptual row in the dsmonPdistTopNTable.
          The dsmonPdistTopNCtlIndex value in the index identifies the
          dsmonPdistTopNCtlEntry on whose behalf this entry was
          created.  Entries in this table are ordered from 1 to 'N',
          where lower numbers represent higher values of the rate base
          object, over the report interval."
  INDEX { dsmonPdistTopNCtlIndex, dsmonPdistTopNIndex }
  ::= { dsmonPdistTopNTable 1 }

DsmonPdistTopNEntry ::= SEQUENCE {

  dsmonPdistTopNIndex                      Integer32,
  dsmonPdistTopNPDLocalIndex               Integer32,
  dsmonPdistTopNAggGroup                   DsmonCounterAggGroupIndex,
  dsmonPdistTopNRate                       Gauge32,
  dsmonPdistTopNRateOvfl                   Gauge32,
  dsmonPdistTopNHCRate                     CounterBasedGauge64

}

dsmonPdistTopNIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonPdistTopNTable among those in the same report.  This
          index is between 1 and N, where N is the number of entries
          in this report.  Note that 'N' may change over time, and may
          also be less than the dsmonPdistTopNCtlGrantedSize value
          associated with this entry."
  ::= { dsmonPdistTopNEntry 1 }

dsmonPdistTopNPDLocalIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The protocolDirLocalIndex value which identifies the
          protocol associated with this entry.
          If the protocolDirEntry associated with the
          protocolDirLocalIndex with the same value as this object is
          de-activated or deleted, then the agent MUST delete this
          dsmonPdistTopN entry."
  ::= { dsmonPdistTopNEntry 2 }

dsmonPdistTopNAggGroup OBJECT-TYPE

  SYNTAX      DsmonCounterAggGroupIndex

Bierman Standards Track [Page 49] RFC 3287 DSMON MIB July 2002

  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The DSCP counter aggregation group index value associated
          with protocol identified in this entry.  This object
          identifies the dsmonAggGroupEntry with the same
          dsmonAggControlIndex value as the associated
          dsmonPdistCtlAggProfile object and the same
          dsmonAggGroupIndex value as this object."
  ::= { dsmonPdistTopNEntry 3 }

dsmonPdistTopNRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The amount of change in the selected variable during this
          sampling interval.  The selected variable is this protocol's
          instance of the object selected by
          dsmonPdistTopNCtlRateBase.
          If the associated dsmonPdistTopNCtlRateBase is equal to
          'dsmonPdistTopNHCPkts' or 'dsmonPdistTopNHCOctets', then
          this object will contain the the least significant 32 bits
          of the associated dsmonPdistTopNHCRate object."
  ::= { dsmonPdistTopNEntry 4 }

dsmonPdistTopNRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonPdistTopNHCRate object.
          If the associated dsmonPdistTopNCtlRateBase is equal to
          'dsmonPdistTopNHCPkts' or 'dsmonPdistTopNHCOctets', then
          this object will contain the upper 32 bits of the associated
          dsmonPdistTopNHCRate object.
          If the associated dsmonPdistTopNCtlRateBase is equal to
          'dsmonPdistTopNPkts' or 'dsmonPdistTopNOctets', then this
          object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonPdistTopNEntry 5 }

Bierman Standards Track [Page 50] RFC 3287 DSMON MIB July 2002

dsmonPdistTopNHCRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The amount of change in the selected variable during this
          sampling interval.  The selected variable is this protocol's
          instance of the object selected by
          dsmonPdistTopNCtlRateBase.
          If the associated dsmonPdistTopNCtlRateBase is equal to
          'dsmonPdistTopNPkts' or 'dsmonPdistTopNOctets', then this
          object will contain the value zero, and the associated
          dsmonPdistTopNRate object will contain the change in the
          selected variable during the sampling interval.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonPdistTopNEntry 6 }

* – * * – * P E R - H O S T C O L L E C T I O N S * – * * – *

– – NL Host Statistics Control Table –

dsmonHostCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonHostCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "Controls setup of per counter aggregation group, per
          network layer host distribution statistics.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonHostObjects 1 }

dsmonHostCtlEntry OBJECT-TYPE

Bierman Standards Track [Page 51] RFC 3287 DSMON MIB July 2002

  SYNTAX      DsmonHostCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonHostCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonHostCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonHostTable to be created and maintained by
          the agent."
  INDEX { dsmonHostCtlIndex }
  ::= { dsmonHostCtlTable 1 }

DsmonHostCtlEntry ::= SEQUENCE {

  dsmonHostCtlIndex                Integer32,
  dsmonHostCtlDataSource           DataSource,
  dsmonHostCtlAggProfile           DsmonCounterAggProfileIndex,
  dsmonHostCtlMaxDesiredEntries    Integer32,
  dsmonHostCtlIPv4PrefixLen        Integer32,
  dsmonHostCtlIPv6PrefixLen        Integer32,
  dsmonHostCtlDroppedFrames        Counter32,
  dsmonHostCtlInserts              Counter32,
  dsmonHostCtlDeletes              Counter32,
  dsmonHostCtlCreateTime           LastCreateTime,
  dsmonHostCtlOwner                OwnerString,
  dsmonHostCtlStatus               RowStatus

}

dsmonHostCtlIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..65535)
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "An arbitrary and unique index for this dsmonHostCtlEntry."
  ::= { dsmonHostCtlEntry 1 }

dsmonHostCtlDataSource OBJECT-TYPE

  SYNTAX      DataSource
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION

Bierman Standards Track [Page 52] RFC 3287 DSMON MIB July 2002

          "The source of data for the associated dsmonHostTable.
          Note that only packets that contain a network protocol
          encapsulation which contains a DS field [RFC2474] will be
          counted in this table.
          This object MUST NOT be modified if the associated
          dsmonHostCtlStatus object is equal to active(1)."
  ::= { dsmonHostCtlEntry 2 }

dsmonHostCtlAggProfile OBJECT-TYPE

  SYNTAX      DsmonCounterAggProfileIndex
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The dsmonAggControlIndex value identifying the counter
          aggregation profile which should be used on behalf of this
          dsmonHostCtlEntry.
          The associated dsmonAggControlEntry and
          dsmonAggProfileEntries, identified by the same
          dsmonAggControlIndex index value, MUST be active in order
          for this entry to remain active.  It is possible for the
          counter aggregation configuration to change from a valid to
          invalid state for this dsmonHost collection.  In this case,
          the associated dsmonHostCtlStatus object will be changed to
          the 'notReady' state, and data collection will not occur on
          behalf of this control entry.
          Note that an agent MAY choose to limit the actual number of
          counter aggregation profiles which may be applied to a
          particular data source.
          This object MUST NOT be modified if the associated
          dsmonHostCtlStatus object is equal to active(1)."
  ::= { dsmonHostCtlEntry 3 }

dsmonHostCtlMaxDesiredEntries OBJECT-TYPE

  SYNTAX      Integer32 (-1 | 1..2147483647)
  UNITS       "table entries"
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The maximum number of entries that are desired in the
          dsmonHostTable on behalf of this control entry.  The probe
          will not create more than this number of associated entries
          in the table, but MAY choose to create fewer entries in this
          table for any reason including the lack of resources.

Bierman Standards Track [Page 53] RFC 3287 DSMON MIB July 2002

          If this value is set to -1, the probe MAY create any number
          of entries in this table.
          This object MUST NOT be modified if the associated
          dsmonHostCtlStatus object is equal to active(1)."
  ::= { dsmonHostCtlEntry 4 }

dsmonHostCtlIPv4PrefixLen OBJECT-TYPE

  SYNTAX      Integer32 (8..32)
  UNITS       "bits"
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The number of 'leftmost' contiguous bits in the host
          address field for encapsulations of IPv4, that should be
          maintained in this collection.  This object controls how the
          dsmonHostAddress object is derived for packets which contain
          an encapsulation of IPv4.
          If this object has a value less than 32, then 'm' rightmost
          bits, where 'm' is equal to '32 -
          dsmonHostCtlIPv4PrefixLen', will be cleared to zero for
          counting purposes only.  The 'leftmost' bit is the most
          significant bit of the first network-byte-order octet of the
          address.
          If this object is equal to 32, then no bits are cleared in
          each dsmonHostAddress field.
          This object MUST NOT be modified if the associated
          dsmonHostCtlStatus object is equal to active(1)."
  DEFVAL { 32 }
  ::= { dsmonHostCtlEntry 5 }

dsmonHostCtlIPv6PrefixLen OBJECT-TYPE

  SYNTAX      Integer32 (8..128)
  UNITS       "bits"
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The number of 'leftmost' contiguous bits in the host
          address field for encapsulations of IPv6, that should be
          maintained in this collection.  This object controls how the
          dsmonHostAddress object is derived for packets which contain
          an encapsulation of IPv6.
          If this object has a value less than 128, then 'm' rightmost
          bits, where 'm' is equal to '128 -

Bierman Standards Track [Page 54] RFC 3287 DSMON MIB July 2002

          dsmonHostCtlIPv6PrefixLen', will be cleared to zero for
          counting purposes only.  The 'leftmost' bit is the most
          significant bit of the first network-byte-order octet of the
          address.
          If this object is equal to 128, then no bits are cleared in
          each dsmonHostAddress field.
          This object MUST NOT be modified if the associated
          dsmonHostCtlStatus object is equal to active(1)."
  DEFVAL { 128 }
  ::= { dsmonHostCtlEntry 6 }

dsmonHostCtlDroppedFrames OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "frames"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The total number of frames which were received by the probe
          and therefore not accounted for in the *StatsDropEvents, but
          for which the probe chose not to count for the associated
          dsmonHost entries for whatever reason.  Most often, this
          event occurs when the probe is out of some resources and
          decides to shed load from this collection.
          This count does not include packets that were not counted
          because they had MAC-layer errors.
          Note that if the dsmonHostTable is inactive because no
          appropriate protocols are enabled in the protocol directory,
          this value SHOULD be 0.
          Note that, unlike the dropEvents counter, this number is the
          exact number of frames dropped."
  ::= { dsmonHostCtlEntry 7 }

dsmonHostCtlInserts OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of times a dsmonHost entry has been inserted
          into the dsmonHost table.  If an entry is inserted, then
          deleted, and then inserted, this counter will be incremented
          by 2.

Bierman Standards Track [Page 55] RFC 3287 DSMON MIB July 2002

          To allow for efficient implementation strategies, agents MAY
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.
          Note that the table size can be determined by subtracting
          dsmonHostCtlDeletes from dsmonHostCtlInserts."
  ::= { dsmonHostCtlEntry 8 }

dsmonHostCtlDeletes OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of times a dsmonHost entry has been deleted from
          the dsmonHost table (for any reason).  If an entry is
          deleted, then inserted, and then deleted, this counter will
          be incremented by 2.
          To allow for efficient implementation strategies, agents MAY
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.
          Note that the table size can be determined by subtracting
          dsmonHostCtlDeletes from dsmonHostCtlInserts."
  ::= { dsmonHostCtlEntry 9 }

dsmonHostCtlCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this control entry was last
          activated.  This can be used by the management station to
          detect if the table has been deleted and recreated between
          polls."
  ::= { dsmonHostCtlEntry 10 }

dsmonHostCtlOwner OBJECT-TYPE

  SYNTAX      OwnerString
  MAX-ACCESS  read-create
  STATUS      current

Bierman Standards Track [Page 56] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "The entity that configured this entry and is therefore
          using the resources assigned to it."
  ::= { dsmonHostCtlEntry 11 }

dsmonHostCtlStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this dsmonHostCtlEntry.
          An entry MUST 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 dsmonHostTable shall be deleted."
  ::= { dsmonHostCtlEntry 12 }

– – NL Host Statistics Table –

dsmonHostTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonHostEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A collection of statistics for particular network protocols
          which contain a DS field, and that has been discovered on a
          particular dataSource.
          The probe will add to this table all appropriate network
          protocols, for each network address seen as the source or
          destination address in all packets with no MAC errors, and
          will increment octet and packet counts in the table for all
          packets with no MAC errors.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table will be deleted, and the
          agent will not process packets on behalf of any
          dsmonHostCtlEntry."
  ::= { dsmonHostObjects 2 }

dsmonHostEntry OBJECT-TYPE

  SYNTAX      DsmonHostEntry
  MAX-ACCESS  not-accessible
  STATUS      current

Bierman Standards Track [Page 57] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "A list of information on Differentiated Services DSCP
          usage, containing packet and octet counters for each counter
          aggregation group index configured for collection per host
          address, as identified in the dsmonAggProfileTable.
          The dsmonHostCtlIndex value in the index identifies the
          dsmonHostCtlEntry on whose behalf this entry was created.
          The protocolDirLocalIndex value in the index identifies the
          specific network layer protocol encapsulation associated
          with each entry, and the network protocol type of the
          dsmonHostAddress object.  It MUST identify a
          protocolDirEntry which contains a DS field (e.g., IPv4 or
          IPv6).  Note that if a protocol encapsulation with multiple
          network layers is specified, then associated entries in this
          table refer to the innermost network protocol layer host
          address.
          The dsmonAggGroupIndex value in the index is determined by
          examining the DSCP value in each monitored packet, and the
          dsmonAggProfileTable entry configured for that value.
          An example of the indexing of this entry is
          dsmonHostOutPkts.1.27273.3.200.4.171.69.120.0"
  INDEX { dsmonHostCtlIndex,
          dsmonHostTimeMark,
          dsmonAggGroupIndex,
          protocolDirLocalIndex,
          dsmonHostAddress }
  ::= { dsmonHostTable 1 }

DsmonHostEntry ::= SEQUENCE {

  dsmonHostTimeMark              TimeFilter,
  dsmonHostAddress               OCTET STRING,
  dsmonHostInPkts                ZeroBasedCounter32,
  dsmonHostInOctets              ZeroBasedCounter32,
  dsmonHostInOvflPkts            ZeroBasedCounter32,
  dsmonHostInOvflOctets          ZeroBasedCounter32,
  dsmonHostInHCPkts              ZeroBasedCounter64,
  dsmonHostInHCOctets            ZeroBasedCounter64,
  dsmonHostOutPkts               ZeroBasedCounter32,
  dsmonHostOutOctets             ZeroBasedCounter32,
  dsmonHostOutOvflPkts           ZeroBasedCounter32,
  dsmonHostOutOvflOctets         ZeroBasedCounter32,
  dsmonHostOutHCPkts             ZeroBasedCounter64,
  dsmonHostOutHCOctets           ZeroBasedCounter64,
  dsmonHostCreateTime            LastCreateTime

Bierman Standards Track [Page 58] RFC 3287 DSMON MIB July 2002

}

dsmonHostTimeMark OBJECT-TYPE

  SYNTAX      TimeFilter
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The Time Filter index for this table.  This object may be
          used by a management station to retrieve only rows which
          have been created or modified since a particular time.  Note
          that the current value for a row are always returned and the
          TimeFilter is not a historical data archiving mechanism.
          Refer to RFC 2021 [RFC2021] for a detailed description of
          TimeFilter operation."
  ::= { dsmonHostEntry 1 }

dsmonHostAddress OBJECT-TYPE

  SYNTAX      OCTET STRING (SIZE (0..110))
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The network address for this dsmonHostEntry.
          This object is encoded according to the protocol type
          indicated by the protocolDirLocalIndex value in the index.
          In addition, this object may have some 'rightmost' bits
          cleared to zero for counting purposes, as indicated by the
          associated dsmonHostCtlIPv4PrefixLen or
          dsmonHostCtlIPv6PrefixLen objects."
  ::= { dsmonHostEntry 2 }

dsmonHostInPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets without errors, using one of the DSCP
          values in the indicated counter aggregation group, and
          transmitted to this address, since this entry was added to
          the dsmonHostTable.  Note that this is the number of link-
          layer packets, so if a single network-layer packet is
          fragmented into several link-layer frames, this counter is
          incremented several times."
  ::= { dsmonHostEntry 3 }

dsmonHostInOctets OBJECT-TYPE

Bierman Standards Track [Page 59] RFC 3287 DSMON MIB July 2002

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in all packets, transmitted to this
          address and using one of the DSCP values in the indicated
          counter aggregation group, since this entry was added to the
          dsmonHostTable (excluding framing bits but including FCS
          octets), excluding those octets in packets that contained
          errors.
          Note this doesn't count just those octets in the particular
          protocol frames, but includes the entire packet that
          contained the protocol."
  ::= { dsmonHostEntry 4 }

dsmonHostInOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonHostInPkts counter
          has overflowed.  Note that this object will only be
          instantiated if the associated dsmonHostInHCPkts object is
          also instantiated for a particular dataSource."
  ::= { dsmonHostEntry 5 }

dsmonHostInOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonHostInOctets
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonHostInHCOctets object is
          also instantiated for a particular dataSource."
  ::= { dsmonHostEntry 6 }

dsmonHostInHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonHostInPkts object.
          Note that this object will only be instantiated if the RMON

Bierman Standards Track [Page 60] RFC 3287 DSMON MIB July 2002

          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonHostEntry 7 }

dsmonHostInHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonHostInOctets object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonHostEntry 8 }

dsmonHostOutPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets without errors, using one of the DSCP
          values in the indicated counter aggregation group, and
          transmitted by this address, since this entry was added to
          the dsmonHostTable.  Note that this is the number of link-
          layer packets, so if a single network-layer packet is
          fragmented into several link-layer frames, this counter is
          incremented several times."
  ::= { dsmonHostEntry 9 }

dsmonHostOutOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets, transmitted by this address and using
          one of the DSCP values in the identified counter aggregation
          group, since this entry was added to the dsmonHostTable
          (excluding framing bits but including FCS octets), excluding
          those octets in packets that contained errors.
          Note this doesn't count just those octets in the particular
          protocol frames, but includes the entire packet that
          contained the protocol."
  ::= { dsmonHostEntry 10 }

Bierman Standards Track [Page 61] RFC 3287 DSMON MIB July 2002

dsmonHostOutOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonHostOutPkts counter
          has overflowed.  Note that this object will only be
          instantiated if the associated dsmonHostOutHCPkts object is
          also instantiated for a particular dataSource."
  ::= { dsmonHostEntry 11 }

dsmonHostOutOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonHostOutOctets
          counter has overflowed.  Note that this object will only be
          instantiated if the associated dsmonHostOutHCOctets object
          is also instantiated for a particular dataSource."
  ::= { dsmonHostEntry 12 }

dsmonHostOutHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonHostOutPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonHostEntry 13 }

dsmonHostOutHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonHostOutOctets object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonHostEntry 14 }

Bierman Standards Track [Page 62] RFC 3287 DSMON MIB July 2002

dsmonHostCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this dsmonHost entry was last
          instantiated by the agent.  This can be used by the
          management station to ensure that the entry has not been
          deleted and recreated between polls."
  ::= { dsmonHostEntry 15 }

– – Per-Protocol Per-Host NL Statistics TopN Control Table –

dsmonHostTopNCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonHostTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A set of parameters that control the creation of a report
          of the top N dsmonHost entries according to a selected
          metric.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonHostObjects 3 }

dsmonHostTopNCtlEntry OBJECT-TYPE

  SYNTAX      DsmonHostTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonHostTopNCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonHostTopNCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an

Bierman Standards Track [Page 63] RFC 3287 DSMON MIB July 2002

          associated dsmonHostTopNTable to be created and maintained
          by the agent."
  INDEX { dsmonHostTopNCtlIndex }
  ::= { dsmonHostTopNCtlTable 1 }

DsmonHostTopNCtlEntry ::= SEQUENCE {

  dsmonHostTopNCtlIndex            Integer32,
  dsmonHostTopNCtlHostIndex        Integer32,
  dsmonHostTopNCtlRateBase         INTEGER,
  dsmonHostTopNCtlTimeRemaining    Integer32,
  dsmonHostTopNCtlGeneratedReports Counter32,
  dsmonHostTopNCtlDuration         Integer32,
  dsmonHostTopNCtlRequestedSize    Integer32,
  dsmonHostTopNCtlGrantedSize      Integer32,
  dsmonHostTopNCtlStartTime        TimeStamp,
  dsmonHostTopNCtlOwner            OwnerString,
  dsmonHostTopNCtlStatus           RowStatus

}

dsmonHostTopNCtlIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonHostTopNCtlTable.  Each such entry defines one Top N
          report prepared for one RMON dataSource."
  ::= { dsmonHostTopNCtlEntry 1 }

dsmonHostTopNCtlHostIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The dsmonHostTable for which a top N report will be
          prepared on behalf of this entry.  The dsmonHostTable is
          identified by the value of the dsmonHostCtlIndex for that
          table - that value is used here to identify the particular
          table.
          This object MUST NOT be modified if the associated
          dsmonHostTopNCtlStatus object is equal to active(1)."
  ::= { dsmonHostTopNCtlEntry 2 }

dsmonHostTopNCtlRateBase OBJECT-TYPE

  SYNTAX     INTEGER {
                dsmonHostTopNInPkts(1),
                dsmonHostTopNInOctets(2),

Bierman Standards Track [Page 64] RFC 3287 DSMON MIB July 2002

                dsmonHostTopNOutPkts(3),
                dsmonHostTopNOutOctets(4),
                dsmonHostTopNTotalPkts(5),
                dsmonHostTopNTotalOctets(6),
                dsmonHostTopNInHCPkts(7),
                dsmonHostTopNInHCOctets(8),
                dsmonHostTopNOutHCPkts(9),
                dsmonHostTopNOutHCOctets(10),
                dsmonHostTopNTotalHCPkts(11),
                dsmonHostTopNTotalHCOctets(12)
             }
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The variable(s) for each dsmonHost that the
          dsmonHostTopNRate and dsmonHostTopNHCRate variables are
          based upon.  Each dsmonHostTopN report generated on behalf
          of this control entry will be ranked in descending order,
          based on the associated dsmonHostTable counter(s),
          identified by this object.
          The following table identifies the dsmonHostTable counters
          associated with each enumeration:
          Enumeration              RateBase MIB Objects
          -----------              --------------------
          dsmonHostTopNInPkts         dsmonHostInPkts
          dsmonHostTopNInOctets       dsmonHostInOctets
          dsmonHostTopNOutPkts        dsmonHostOutPkts
          dsmonHostTopNOutOctets      dsmonHostOutOctets
          dsmonHostTopNTotalPkts      dsmonHostInPkts +
                                        dsmonHostOutPkts
          dsmonHostTopNTotalOctets    dsmonHostInOctets +
                                        dsmonHostOutOctets
          dsmonHostTopNInHCPkts       dsmonHostInHCPkts
          dsmonHostTopNInHCOctets     dsmonHostInHCOctets
          dsmonHostTopNOutHCPkts      dsmonHostOutHCPkts
          dsmonHostTopNOutHCOctets    dsmonHostOutHCPkts
          dsmonHostTopNTotalHCPkts    dsmonHostInHCPkts +
                                        dsmonHostOutHCPkts
          dsmonHostTopNTotalHCOctets  dsmonHostInHCOctets +
                                        dsmonHostOutHCOctets
          The following enumerations are only available if the agent
          supports High Capacity monitoring:
          dsmonHostTopNInHCPkts
          dsmonHostTopNInHCOctets

Bierman Standards Track [Page 65] RFC 3287 DSMON MIB July 2002

          dsmonHostTopNOutHCPkts
          dsmonHostTopNOutHCOctets
          dsmonHostTopNTotalHCPkts
          dsmonHostTopNTotalHCOctets
          It is an implementation-specific matter whether an agent can
          detect an overflow condition resulting from the addition of
          two counter delta values for the following enumerations:
          dsmonHostTopNTotalPkts
          dsmonHostTopNTotalOctets
          dsmonHostTopNTotalHCPkts
          dsmonHostTopNTotalHCOctets
          In the event such an overflow condition can be detected by
          the agent, the associated dsmonHostTopNRate,
          dsmonHostTopNRateOvfl, and/or dsmonHostTopNHCRate objects
          should be set to their maximum value.
          This object MUST NOT be modified if the associated
          dsmonHostTopNCtlStatus object is equal to active(1)."
  ::= { dsmonHostTopNCtlEntry 3 }

dsmonHostTopNCtlTimeRemaining OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The number of seconds left in the report currently being
          collected.  When this object is modified by the management
          station, a new collection is started, possibly aborting a
          currently running report.  The new value is used as the
          requested duration of this report, and is immediately loaded
          into the associated dsmonHostTopNCtlDuration object.
          When the report finishes, the probe will automatically start
          another collection with the same initial value of
          dsmonHostTopNCtlTimeRemaining.  Thus the management station
          may simply read the resulting reports repeatedly, checking
          the startTime and duration each time to ensure that a report
          was not missed or that the report parameters were not
          changed.
          While the value of this object is non-zero, it decrements by
          one per second until it reaches zero.  At the time that this
          object decrements to zero, the report is made accessible in
          the dsmonHostTopNTable, overwriting any report that may be

Bierman Standards Track [Page 66] RFC 3287 DSMON MIB July 2002

          there.
          When this object is modified by the management station, any
          associated entries in the dsmonHostTopNTable shall be
          deleted."
  DEFVAL { 1800 }
  ::= { dsmonHostTopNCtlEntry 4 }

dsmonHostTopNCtlGeneratedReports OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "reports"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of reports that have been generated by this
          entry."
  ::= { dsmonHostTopNCtlEntry 5 }

dsmonHostTopNCtlDuration OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of seconds that this report has collected during
          the last sampling interval.
          When the associated dsmonHostTopNCtlTimeRemaining object is
          set, this object shall be set by the probe to the same value
          and shall not be modified until the next time the
          dsmonHostTopNCtlTimeRemaining is set.
          This value shall be zero if no reports have been requested
          for this dsmonHostTopNCtlEntry."
  ::= { dsmonHostTopNCtlEntry 6 }

dsmonHostTopNCtlRequestedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonHost entries requested for this
          report.
          When this object is created or modified, the probe SHOULD
          set dsmonHostTopNCtlGrantedSize as closely to this object as
          is possible for the particular probe implementation and

Bierman Standards Track [Page 67] RFC 3287 DSMON MIB July 2002

          available resources."
  DEFVAL { 150 }
  ::= { dsmonHostTopNCtlEntry 7 }

dsmonHostTopNCtlGrantedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonHost entries in this report.
          When the associated dsmonHostTopNCtlRequestedSize object is
          created or modified, the probe SHOULD set this object as
          closely to the requested value as is possible for the
          particular implementation and available resources.  The
          probe MUST NOT lower this value except as a result of a
          set to the associated dsmonHostTopNCtlRequestedSize
          object.
          Protocol entries with the highest value of dsmonHostTopNRate
          or dsmonHostTopNHCRate (depending on the value of the
          associated dsmonHostTopNCtlRateBase object) shall be placed
          in this table in decreasing order of this rate until there
          is no more room or until there are no more dsmonHost
          entries."
  ::= { dsmonHostTopNCtlEntry 8 }

dsmonHostTopNCtlStartTime OBJECT-TYPE

  SYNTAX     TimeStamp
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this top N report was last
          started.  In other words, this is the time that the
          associated dsmonHostTopNCtlTimeRemaining object was modified
          to start the requested report or the time the report was
          last automatically (re)started.
          This object may be used by the management station to
          determine if a report was missed or not."
  ::= { dsmonHostTopNCtlEntry 9 }

dsmonHostTopNCtlOwner OBJECT-TYPE

  SYNTAX     OwnerString
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION

Bierman Standards Track [Page 68] RFC 3287 DSMON MIB July 2002

          "The entity that configured this entry and is therefore
          using the resources assigned to it."
  ::= { dsmonHostTopNCtlEntry 10 }

dsmonHostTopNCtlStatus OBJECT-TYPE

  SYNTAX     RowStatus
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The status of this dsmonHostTopNCtlEntry.
          An entry MUST 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 dsmonHostTopNTable shall be deleted by the
          agent."
  ::= { dsmonHostTopNCtlEntry 11 }

– – dsmonHost TopN Table –

dsmonHostTopNTable OBJECT-TYPE

  SYNTAX     SEQUENCE OF DsmonHostTopNEntry
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "A set of statistics for those dsmonHost entries that have
          counted the highest number of octets or packets.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table SHALL be deleted, and the
          agent will not process TopN reports on behalf of any
          dsmonHostTopNCtlEntry.
          When the dsmonAggControlLocked object is set to 'true', then
          particular reports SHOULD be restarted from the beginning,
          on behalf of all active rows in the dsmonHostTopNCtlTable.
          Note that dsmonHost entries which did not increment at all
          during the report interval SHOULD NOT be included in
          dsmonHostTopN reports."
  ::= { dsmonHostObjects 4 }

dsmonHostTopNEntry OBJECT-TYPE

  SYNTAX     DsmonHostTopNEntry
  MAX-ACCESS not-accessible

Bierman Standards Track [Page 69] RFC 3287 DSMON MIB July 2002

  STATUS     current
  DESCRIPTION
          "A conceptual row in the dsmonHostTopNTable.
          The dsmonHostTopNCtlIndex value in the index identifies the
          dsmonHostTopNCtlEntry on whose behalf this entry was
          created.
          Entries in this table are ordered from 1 to 'N', where lower
          numbers represent higher values of the rate base object,
          over the report interval."
  INDEX { dsmonHostTopNCtlIndex, dsmonHostTopNIndex }
  ::= { dsmonHostTopNTable 1 }

DsmonHostTopNEntry ::= SEQUENCE {

  dsmonHostTopNIndex                Integer32,
  dsmonHostTopNPDLocalIndex         Integer32,
  dsmonHostTopNAddress              OCTET STRING,
  dsmonHostTopNAggGroup             DsmonCounterAggGroupIndex,
  dsmonHostTopNRate                 Gauge32,
  dsmonHostTopNRateOvfl             Gauge32,
  dsmonHostTopNHCRate               CounterBasedGauge64
}

dsmonHostTopNIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonHostTopNTable among those in the same report.  This
          index is between 1 and N, where N is the number of entries
          in this report."
  ::= { dsmonHostTopNEntry 1 }

dsmonHostTopNPDLocalIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The protocolDirLocalIndex value which identifies the
          protocol associated with the dsmonHostTopNAddress object in
          this entry.
          If the protocolDirEntry associated with the
          protocolDirLocalIndex with the same value as this object is
          de-activated or deleted, then the agent MUST delete this
          dsmonHostTopN entry."

Bierman Standards Track [Page 70] RFC 3287 DSMON MIB July 2002

  ::= { dsmonHostTopNEntry 2 }

dsmonHostTopNAddress OBJECT-TYPE

  SYNTAX     OCTET STRING
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The dsmonHostAddress value for the network host identified
          in this entry.  The associated dsmonHostTopNPDLocalIndex
          object identifies the network protocol type and the encoding
          rules for this object."
  ::= { dsmonHostTopNEntry 3 }

dsmonHostTopNAggGroup OBJECT-TYPE

  SYNTAX      DsmonCounterAggGroupIndex
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The counter aggregation group index value associated with
          host identified in this entry.  This object identifies the
          dsmonAggGroupEntry with the same dsmonAggControlIndex value
          as the associated dsmonHostCtlAggProfile object and the same
          dsmonAggGroupIndex value as this object."
  ::= { dsmonHostTopNEntry 4 }

dsmonHostTopNRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The amount of change in the selected variable during this
          sampling interval.  The selected variable is this host's
          instance of the object selected by dsmonHostTopNCtlRateBase.
          If the associated dsmonHostTopNCtlRateBase indicates a High
          Capacity monitoring enumeration, (e.g.
          'dsmonHostTopNInHCPkts'), then this object will contain the
          the least significant 32 bits of the associated
          dsmonHostTopNHCRate object."
  ::= { dsmonHostTopNEntry 5 }

dsmonHostTopNRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonHostTopNHCRate object.

Bierman Standards Track [Page 71] RFC 3287 DSMON MIB July 2002

          If the associated dsmonHostTopNCtlRateBase is equal to any
          of the High Capacity monitoring enumerations (e.g.
          'dsmonHostTopNInHCPkts'), then this object will contain the
          upper 32 bits of the associated dsmonHostTopNHCRate object.
          If the associated dsmonHostTopNCtlRateBase is not equal to
          any of High Capacity monitoring enumerations, then this
          object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonHostTopNEntry 6 }

dsmonHostTopNHCRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The amount of change in the selected variable during this
          sampling interval.  The selected variable is this host's
          instance of the object selected by dsmonHostTopNCtlRateBase.
          If the associated dsmonHostTopNCtlRateBase is not equal to
          any of the High Capacity monitoring enumerations (e.g.,
          'dsmonHostTopNInPkts'), then this object will contain the
          value zero, and the associated dsmonHostTopNRate object will
          contain the change in the selected variable during the
          sampling interval.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonHostTopNEntry 7 }

– * * – * P E R - C O N V E R S I O N C O L L E C T I O N S * – * * –

– – AL Matrix Statistics Control Table –

dsmonMatrixCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonMatrixCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current

Bierman Standards Track [Page 72] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "Controls setup of per counter aggregation group, per host-
          pair, application protocol distribution statistics.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonMatrixObjects 1 }

dsmonMatrixCtlEntry OBJECT-TYPE

  SYNTAX      DsmonMatrixCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonMatrixCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonMatrixCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonMatrixSDTable and dsmonMatrixDSTable to be
          created and maintained by the agent."
  INDEX { dsmonMatrixCtlIndex }
  ::= { dsmonMatrixCtlTable 1 }

DsmonMatrixCtlEntry ::= SEQUENCE {

  dsmonMatrixCtlIndex                Integer32,
  dsmonMatrixCtlDataSource           DataSource,
  dsmonMatrixCtlAggProfile           DsmonCounterAggProfileIndex,
  dsmonMatrixCtlMaxDesiredEntries    Integer32,
  dsmonMatrixCtlDroppedFrames        Counter32,
  dsmonMatrixCtlInserts              Counter32,
  dsmonMatrixCtlDeletes              Counter32,
  dsmonMatrixCtlCreateTime           LastCreateTime,
  dsmonMatrixCtlOwner                OwnerString,
  dsmonMatrixCtlStatus               RowStatus

}

dsmonMatrixCtlIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..65535)
  MAX-ACCESS  not-accessible

Bierman Standards Track [Page 73] RFC 3287 DSMON MIB July 2002

  STATUS      current
  DESCRIPTION
          "An arbitrary and unique index for this
          dsmonMatrixCtlEntry."
  ::= { dsmonMatrixCtlEntry 1 }

dsmonMatrixCtlDataSource OBJECT-TYPE

  SYNTAX      DataSource
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The source of data for the associated dsmonMatrixSDTable
          and dsmonMatrixDSTable.
          Note that only packets that contain a network protocol
          encapsulation which contains a DS field [RFC2474] will be
          counted in this table.
          This object MUST NOT be modified if the associated
          dsmonMatrixCtlStatus object is equal to active(1)."
  ::= { dsmonMatrixCtlEntry 2 }

dsmonMatrixCtlAggProfile OBJECT-TYPE

  SYNTAX      DsmonCounterAggProfileIndex
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The dsmonAggControlIndex value identifying the counter
          aggregation profile which should be used on behalf of this
          dsmonMatrixCtlEntry.
          The associated dsmonAggControlEntry and
          dsmonAggProfileEntries, identified by the same
          dsmonAggControlIndex index value, MUST be active in order
          for this entry to remain active.  It is possible for the
          counter aggregation configuration to change from a valid to
          invalid state for this dsmonMatrix collection.  In this
          case, the associated dsmonMatrixCtlStatus object will be
          changed to the 'notReady' state, and data collection will
          not occur on behalf of this control entry.
          Note that an agent MAY choose to limit the actual number of
          counter aggregation profiles which may be applied to a
          particular data source.
          This object MUST NOT be modified if the associated
          dsmonMatrixCtlStatus object is equal to active(1)."
  ::= { dsmonMatrixCtlEntry 3 }

Bierman Standards Track [Page 74] RFC 3287 DSMON MIB July 2002

dsmonMatrixCtlMaxDesiredEntries OBJECT-TYPE

  SYNTAX      Integer32 (-1 | 1..2147483647)
  UNITS       "table entries"
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The maximum number of entries that are desired in the
          dsmonMatrix tables on behalf of this control entry.  The
          probe will not create more than this number of associated
          entries in these tables, but may choose to create fewer
          entries in this table for any reason including the lack of
          resources.
          If this value is set to -1, the probe may create any number
          of entries in this table.
          This object MUST NOT be modified if the associated
          dsmonMatrixCtlStatus object is equal to active(1)."
  ::= { dsmonMatrixCtlEntry 4 }

dsmonMatrixCtlDroppedFrames OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "frames"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The total number of frames which were received by the probe
          and therefore not accounted for in the *StatsDropEvents, but
          for which the probe chose not to count for the associated
          dsmonMatrixSD and dsmonMatrixDS entries for whatever reason.
          Most often, this event occurs when the probe is out of some
          resources and decides to shed load from this collection.
          This count does not include packets that were not counted
          because they had MAC-layer errors.
          Note that if the dsmonMatrix tables are inactive because no
          appropriate protocols are enabled in the protocol directory,
          this value SHOULD be 0.
          Note that, unlike the dropEvents counter, this number is the
          exact number of frames dropped."
  ::= { dsmonMatrixCtlEntry 5 }

dsmonMatrixCtlInserts OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only

Bierman Standards Track [Page 75] RFC 3287 DSMON MIB July 2002

  STATUS     current
  DESCRIPTION
          "The number of times a dsmonMatrix entry has been inserted
          into the dsmonMatrix tables.  If an entry is inserted, then
          deleted, and then inserted, this counter will be incremented
          by 2.  The addition of a conversation into both the
          dsmonMatrixSDTable and dsmonMatrixDSTable shall be counted
          as two insertions (even though every addition into one table
          must be accompanied by an insertion into the other).
          To allow for efficient implementation strategies, agents may
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.  Note that the
          sum of the dsmonMatrixSDTable and dsmonMatrixDSTable sizes
          can be determined by subtracting dsmonMatrixCtlDeletes from
          dsmonMatrixCtlInserts."
  ::= { dsmonMatrixCtlEntry 6 }

dsmonMatrixCtlDeletes OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "table entries"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of times a dsmonMatrix entry has been deleted
          from the dsmonMatrix tables (for any reason).  If an entry
          is deleted, then inserted, and then deleted, this counter
          will be incremented by 2.  The deletion of a conversation
          from both the dsmonMatrixSDTable and dsmonMatrixDSTable
          shall be counted as two deletions (even though every
          deletion from one table must be accompanied by a deletion
          from the other).
          To allow for efficient implementation strategies, agents MAY
          delay updating this object for short periods of time.  For
          example, an implementation strategy may allow internal data
          structures to differ from those visible via SNMP for short
          periods of time.  This counter may reflect the internal data
          structures for those short periods of time.
          Note that the sum of the dsmonMatrixSDTable and
          dsmonMatrixDSTable sizes can be determined by subtracting
          dsmonMatrixCtlDeletes from dsmonMatrixCtlInserts."
  ::= { dsmonMatrixCtlEntry 7 }

Bierman Standards Track [Page 76] RFC 3287 DSMON MIB July 2002

dsmonMatrixCtlCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this control entry was last
          activated.  This can be used by the management station to
          detect if the table has been deleted and recreated between
          polls."
  ::= { dsmonMatrixCtlEntry 8 }

dsmonMatrixCtlOwner 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."
  ::= { dsmonMatrixCtlEntry 9 }

dsmonMatrixCtlStatus OBJECT-TYPE

  SYNTAX      RowStatus
  MAX-ACCESS  read-create
  STATUS      current
  DESCRIPTION
          "The status of this dsmonMatrixCtlEntry.
          An entry MUST 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 dsmonMatrixSDTable and dsmonMatrixDSTable
          shall be deleted."
  ::= { dsmonMatrixCtlEntry 10 }

– – AL Matrix SD Statistics Table –

dsmonMatrixSDTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonMatrixSDEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A list of application traffic matrix entries which collect
          statistics for conversations of a particular application
          protocol between two network-level addresses.  This table is
          indexed first by the source address and then by the

Bierman Standards Track [Page 77] RFC 3287 DSMON MIB July 2002

          destination address to make it convenient to collect all
          statistics from a particular address.
          The probe will add to this table all pairs of addresses for
          all protocols seen in all packets with no MAC errors, and
          will increment octet and packet counts in the table for all
          packets with no MAC errors."
  ::= { dsmonMatrixObjects 2 }

dsmonMatrixSDEntry OBJECT-TYPE

  SYNTAX      DsmonMatrixSDEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonMatrixSDTable.
          The dsmonMatrixCtlIndex value in the index identifies the
          dsmonMatrixCtlEntry on whose behalf this entry was created.
          The dsmonAggGroupIndex value in the index is determined by
          examining the DSCP value in each monitored packet, and the
          dsmonAggProfileTable entry configured for that value."
  INDEX { dsmonMatrixCtlIndex,
          dsmonMatrixTimeMark,
          dsmonAggGroupIndex,
          dsmonMatrixNLIndex,
          dsmonMatrixSourceAddress,
          dsmonMatrixDestAddress,
          dsmonMatrixALIndex
         }
  ::= { dsmonMatrixSDTable 1 }

DsmonMatrixSDEntry ::= SEQUENCE {

  dsmonMatrixTimeMark                 TimeFilter,
  dsmonMatrixNLIndex                  Integer32,
  dsmonMatrixSourceAddress            OCTET STRING,
  dsmonMatrixDestAddress              OCTET STRING,
  dsmonMatrixALIndex                  Integer32,
  dsmonMatrixSDPkts                   ZeroBasedCounter32,
  dsmonMatrixSDOvflPkts               ZeroBasedCounter32,
  dsmonMatrixSDHCPkts                 ZeroBasedCounter64,
  dsmonMatrixSDOctets                 ZeroBasedCounter32,
  dsmonMatrixSDOvflOctets             ZeroBasedCounter32,
  dsmonMatrixSDHCOctets               ZeroBasedCounter64,
  dsmonMatrixSDCreateTime             LastCreateTime

}

dsmonMatrixTimeMark OBJECT-TYPE

Bierman Standards Track [Page 78] RFC 3287 DSMON MIB July 2002

  SYNTAX      TimeFilter
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The Time Filter index for this table.  This object may be
          used by a management station to retrieve only rows which
          have been created or modified since a particular time.  Note
          that the current value for a row are always returned and the
          TimeFilter is not a historical data archiving mechanism.
          Refer to RFC 2021 [RFC2021] for a detailed description of
          TimeFilter operation."
  ::= { dsmonMatrixSDEntry 1 }

dsmonMatrixNLIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..2147483647)
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The protocolDirLocalIndex value of a protocolDirEntry
          representing the specific network layer protocol
          encapsulation associated with each entry, and the network
          protocol type of the dsmonMatrixSourceAddress and
          dsmonMatrixDestAddress objects."
  ::= { dsmonMatrixSDEntry 2 }

dsmonMatrixSourceAddress OBJECT-TYPE

  SYNTAX      OCTET STRING (SIZE (0..54))
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The network source address for this dsmonMatrix entry.
          This is represented as an octet string with specific
          semantics and length as identified by the dsmonMatrixNLIndex
          component of the index.
          For example, if the dsmonMatrixNLIndex 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."
  ::= { dsmonMatrixSDEntry 3 }

dsmonMatrixDestAddress OBJECT-TYPE

  SYNTAX      OCTET STRING (SIZE (0..54))
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The network destination address for this dsmonMatrix entry.

Bierman Standards Track [Page 79] RFC 3287 DSMON MIB July 2002

          This is represented as an octet string with specific
          semantics and length as identified by the dsmonMatrixNLIndex
          component of the index.
          For example, if the dsmonMatrixNLIndex 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."
  ::= { dsmonMatrixSDEntry 4 }

dsmonMatrixALIndex OBJECT-TYPE

  SYNTAX      Integer32 (1..2147483647)
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "The protocolDirLocalIndex value of the protocolDirEntry
          representing the specific application layer protocol
          associated with each entry.
          It MUST identify an protocolDirEntry which is a direct or
          indirect descendant of the protocolDirEntry identified by
          the associated dsmonMatrixNLIndex object."
  ::= { dsmonMatrixSDEntry 5 }

dsmonMatrixSDPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets of this protocol type (indicated by
          the associated dsmonMatrixALIndex object) without errors
          transmitted from the source address to the destination
          address since this entry was added to the
          dsmonMatrixSDTable.  Note that this is the number of link-
          layer packets, so if a single network-layer packet is
          fragmented into several link-layer frames, this counter is
          incremented several times."
  ::= { dsmonMatrixSDEntry 6 }

dsmonMatrixSDOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonMatrixSDPkts
          counter has overflowed, since this entry was added to the
          dsmonMatrixSDTable."

Bierman Standards Track [Page 80] RFC 3287 DSMON MIB July 2002

  ::= { dsmonMatrixSDEntry 7 }

dsmonMatrixSDHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonMatrixSDPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonMatrixSDEntry 8 }

dsmonMatrixSDOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in packets of this protocol type
          transmitted from the source address to the destination
          address since this entry was added to the dsmonMatrixSDTable
          (excluding framing bits but including FCS octets), excluding
          those octets in packets that contained errors.
          Note this doesn't count just those octets in the particular
          protocol frames, but includes the entire packet that
          contained the protocol."
  ::= { dsmonMatrixSDEntry 9 }

dsmonMatrixSDOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonMatrixSDOctets
          counter has overflowed, since this entry was added to the
          dsmonMatrixSDTable."
  ::= { dsmonMatrixSDEntry 10 }

dsmonMatrixSDHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION

Bierman Standards Track [Page 81] RFC 3287 DSMON MIB July 2002

          "The 64-bit version of the dsmonMatrixSDPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonMatrixSDEntry 11 }

dsmonMatrixSDCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this entry was last activated.
          This can be used by the management station to ensure that
          the entry has not been deleted and recreated between polls."
  ::= { dsmonMatrixSDEntry 12 }

– – AL Matrix DS Statistics Table –

dsmonMatrixDSTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonMatrixDSEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A list of application traffic matrix entries which collect
          statistics for conversations of a particular application
          protocol between two network-level addresses.  This table is
          indexed first by the destination address and then by the
          source address to make it convenient to collect all
          statistics from a particular address.
          The probe will add to this table all pairs of addresses for
          all protocols seen in all packets with no MAC errors, and
          will increment octet and packet counts in the table for all
          packets with no MAC errors."
  ::= { dsmonMatrixObjects 3 }

dsmonMatrixDSEntry OBJECT-TYPE

  SYNTAX      DsmonMatrixDSEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonMatrixDSTable.  Note that this
          table is conceptually a re-ordered version of the
          dsmonMatrixSDTable.  Therefore, all of the index values from

Bierman Standards Track [Page 82] RFC 3287 DSMON MIB July 2002

          that table are used by reference, and their semantics are
          exactly as described in the dsmonMatrixSDTable.
          The dsmonMatrixCtlIndex value in the index identifies the
          dsmonMatrixCtlEntry on whose behalf this entry was created.
          The dsmonMatrixTimeMark value in the index identifies the
          Time Filter index for this table.
          The dsmonAggGroupIndex value in the index is determined by
          examining the DSCP value in each monitored packet, and the
          dsmonAggProfileTable entry configured for that value.
          The dsmonMatrixNLIndex value in the index identifies the
          protocolDirLocalIndex value of a protocolDirEntry
          representing the specific network layer protocol
          encapsulation associated with each entry, and the network
          protocol type of the dsmonMatrixSourceAddress and
          dsmonMatrixDestAddress objects.
          The dsmonMatrixDestAddress value in the index identifies the
          network destination address for this dsmonMatrix entry.
          The dsmonMatrixSourceAddress value in the index identifies
          the network source address for this dsmonMatrix entry.
          The dsmonMatrixALIndex value in the index identifies the
          protocolDirLocalIndex value of the protocolDirEntry
          representing the specific application layer protocol
          associated with each entry."
  INDEX { dsmonMatrixCtlIndex,
          dsmonMatrixTimeMark,
          dsmonAggGroupIndex,
          dsmonMatrixNLIndex,
          dsmonMatrixDestAddress,
          dsmonMatrixSourceAddress,
          dsmonMatrixALIndex
         }
  ::= { dsmonMatrixDSTable 1 }

DsmonMatrixDSEntry ::= SEQUENCE {

  dsmonMatrixDSPkts                   ZeroBasedCounter32,
  dsmonMatrixDSOvflPkts               ZeroBasedCounter32,
  dsmonMatrixDSHCPkts                 ZeroBasedCounter64,
  dsmonMatrixDSOctets                 ZeroBasedCounter32,
  dsmonMatrixDSOvflOctets             ZeroBasedCounter32,
  dsmonMatrixDSHCOctets               ZeroBasedCounter64,
  dsmonMatrixDSCreateTime             LastCreateTime

Bierman Standards Track [Page 83] RFC 3287 DSMON MIB July 2002

}

dsmonMatrixDSPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of packets of this protocol type (indicated by
          the associated dsmonMatrixALIndex object) without errors
          transmitted from the source address to the destination
          address since this entry was added to the
          dsmonMatrixDSTable.  Note that this is the number of link-
          layer packets, so if a single network-layer packet is
          fragmented into several link-layer frames, this counter is
          incremented several times."
  ::= { dsmonMatrixDSEntry 1 }

dsmonMatrixDSOvflPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonMatrixDSPkts
          counter has overflowed, since this entry was added to the
          dsmonMatrixDSTable."
  ::= { dsmonMatrixDSEntry 2 }

dsmonMatrixDSHCPkts OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "packets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonMatrixDSPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonMatrixDSEntry 3 }

dsmonMatrixDSOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The number of octets in packets of this protocol type

Bierman Standards Track [Page 84] RFC 3287 DSMON MIB July 2002

          transmitted from the source address to the destination
          address since this entry was added to the dsmonMatrixDSTable
          (excluding framing bits but including FCS octets), excluding
          those octets in packets that contained errors.
          Note this doesn't count just those octets in the particular
          protocol frames, but includes the entire packet that
          contained the protocol."
  ::= { dsmonMatrixDSEntry 4 }

dsmonMatrixDSOvflOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter32
  MAX-ACCESS  read-only
  STATUS      deprecated
  DESCRIPTION
          "The number of times the associated dsmonMatrixDSOctets
          counter has overflowed, since this entry was added to the
          dsmonMatrixDSTable."
  ::= { dsmonMatrixDSEntry 5 }

dsmonMatrixDSHCOctets OBJECT-TYPE

  SYNTAX      ZeroBasedCounter64
  UNITS       "octets"
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The 64-bit version of the dsmonMatrixDSPkts object.
          Note that this object will only be instantiated if the RMON
          agent supports High Capacity monitoring for a particular
          dataSource."
  ::= { dsmonMatrixDSEntry 6 }

dsmonMatrixDSCreateTime OBJECT-TYPE

  SYNTAX     LastCreateTime
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this entry was last activated.
          This can be used by the management station to ensure that
          the entry has not been deleted and recreated between polls."
  ::= { dsmonMatrixDSEntry 7 }

– – Per-Protocol Per-Matrix Statistics TopN Control Table –

Bierman Standards Track [Page 85] RFC 3287 DSMON MIB July 2002

dsmonMatrixTopNCtlTable OBJECT-TYPE

  SYNTAX      SEQUENCE OF DsmonMatrixTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A set of parameters that control the creation of a report
          of the top N dsmonMatrix entries according to a selected
          metric.
          Note that an agent MAY choose to limit the actual number of
          entries which may be created in this table.  In this case,
          the agent SHOULD return an error-status of
          'resourceUnavailable(13)', as per section 4.2.5 of the
          'Protocol Operations for SNMPv2' specification [RFC1905]."
  ::= { dsmonMatrixObjects 4 }

dsmonMatrixTopNCtlEntry OBJECT-TYPE

  SYNTAX      DsmonMatrixTopNCtlEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
          "A conceptual row in the dsmonMatrixTopNCtlTable.
          Entries are created and deleted from this table by
          management action only, using the dsmonMatrixTopNCtlStatus
          RowStatus object.
          The agent SHOULD support non-volatile configuration of this
          table, and upon system initialization, the table SHOULD be
          initialized with the saved values.
          Activation of a control row in this table will cause an
          associated dsmonMatrixTopNTable to be created and maintained
          by the agent."
  INDEX { dsmonMatrixTopNCtlIndex }
  ::= { dsmonMatrixTopNCtlTable 1 }

DsmonMatrixTopNCtlEntry ::= SEQUENCE {

  dsmonMatrixTopNCtlIndex            Integer32,
  dsmonMatrixTopNCtlMatrixIndex      Integer32,
  dsmonMatrixTopNCtlRateBase         INTEGER,
  dsmonMatrixTopNCtlTimeRemaining    Integer32,
  dsmonMatrixTopNCtlGeneratedRpts    Counter32,
  dsmonMatrixTopNCtlDuration         Integer32,
  dsmonMatrixTopNCtlRequestedSize    Integer32,
  dsmonMatrixTopNCtlGrantedSize      Integer32,
  dsmonMatrixTopNCtlStartTime        TimeStamp,
  dsmonMatrixTopNCtlOwner            OwnerString,

Bierman Standards Track [Page 86] RFC 3287 DSMON MIB July 2002

  dsmonMatrixTopNCtlStatus           RowStatus

}

dsmonMatrixTopNCtlIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonMatrixTopNCtlTable.  Each such entry defines one Top N
          report prepared for one RMON dataSource."
  ::= { dsmonMatrixTopNCtlEntry 1 }

dsmonMatrixTopNCtlMatrixIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..65535)
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The dsmonMatrixSDTable for which a top N report will be
          prepared on behalf of this entry.  The dsmonMatrixSDTable is
          identified by the same value of the dsmonMatrixCtlIndex
          object.
          This object MUST NOT be modified if the associated
          dsmonMatrixTopNCtlStatus object is equal to active(1)."
  ::= { dsmonMatrixTopNCtlEntry 2 }

dsmonMatrixTopNCtlRateBase OBJECT-TYPE

  SYNTAX     INTEGER {
                dsmonMatrixTopNPkts(1),
                dsmonMatrixTopNOctets(2),
                dsmonMatrixTopNHCPkts(3),
                dsmonMatrixTopNHCOctets(4)
             }
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The variable for each dsmonMatrixSD entry that the
          dsmonMatrixTopNRate and dsmonMatrixTopNHCRate variables are
          based upon.  Each dsmonMatrixTopN report generated on behalf
          of this control entry will be ranked in descending order,
          based on the associated dsmonMatrixSDTable counter,
          identified by this object.
          The following table identifies the dsmonMatrixSDTable
          counters associated with each enumeration:
          Enumeration                 RateBase MIB Objects

Bierman Standards Track [Page 87] RFC 3287 DSMON MIB July 2002

  1. ———- ——————–

dsmonMatrixTopNPkts dsmonMatrixSDPkts

          dsmonMatrixTopNOctets       dsmonMatrixSDOctets
          dsmonMatrixTopNHCPkts       dsmonMatrixSDHCPkts
          dsmonMatrixTopNHCOctets     dsmonMatrixSDHCOctets
          The following enumerations are only available if the agent
          supports High Capacity monitoring:
          dsmonMatrixTopNHCPkts
          dsmonMatrixTopNHCOctets
          This object MUST NOT be modified if the associated
          dsmonMatrixTopNCtlStatus object is equal to active(1)."
  ::= { dsmonMatrixTopNCtlEntry 3 }

dsmonMatrixTopNCtlTimeRemaining OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The number of seconds left in the report currently being
          collected.  When this object is modified by the management
          station, a new collection is started, possibly aborting a
          currently running report.  The new value is used as the
          requested duration of this report, and is immediately loaded
          into the associated dsmonMatrixTopNCtlDuration object.
          When the report finishes, the probe will automatically start
          another collection with the same initial value of
          dsmonMatrixTopNCtlTimeRemaining.  Thus the management
          station may simply read the resulting reports repeatedly,
          checking the startTime and duration each time to ensure that
          a report was not missed or that the report parameters were
          not changed.
          While the value of this object is non-zero, it decrements by
          one per second until it reaches zero.  At the time that this
          object decrements to zero, the report is made accessible in
          the dsmonMatrixTopNTable, overwriting any report that may be
          there.
          When this object is modified by the management station, any
          associated entries in the dsmonMatrixTopNTable shall be
          deleted."
  DEFVAL { 1800 }
  ::= { dsmonMatrixTopNCtlEntry 4 }

Bierman Standards Track [Page 88] RFC 3287 DSMON MIB July 2002

dsmonMatrixTopNCtlGeneratedRpts OBJECT-TYPE

  SYNTAX     Counter32
  UNITS      "reports"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of reports that have been generated by this
          entry."
  ::= { dsmonMatrixTopNCtlEntry 5 }

dsmonMatrixTopNCtlDuration OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "seconds"
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of seconds that this report has collected during
          the last sampling interval.
          When the associated dsmonMatrixTopNCtlTimeRemaining object
          is set, this object shall be set by the probe to the same
          value and shall not be modified until the next time the
          dsmonMatrixTopNCtlTimeRemaining is set.
          This value shall be zero if no reports have been requested
          for this dsmonMatrixTopNCtlEntry."
  ::= { dsmonMatrixTopNCtlEntry 6 }

dsmonMatrixTopNCtlRequestedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-create
  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonMatrix entries requested for
          this report.
          When this object is created or modified, the probe SHOULD
          set dsmonMatrixTopNCtlGrantedSize as closely to this object
          as is possible for the particular probe implementation and
          available resources."
  DEFVAL { 150 }
  ::= { dsmonMatrixTopNCtlEntry 7 }

dsmonMatrixTopNCtlGrantedSize OBJECT-TYPE

  SYNTAX     Integer32 (0..2147483647)
  UNITS      "table entries"
  MAX-ACCESS read-only

Bierman Standards Track [Page 89] RFC 3287 DSMON MIB July 2002

  STATUS     current
  DESCRIPTION
          "The maximum number of dsmonMatrix entries in this report.
          When the associated dsmonMatrixTopNCtlRequestedSize object
          is created or modified, the probe SHOULD set this object as
          closely to the requested value as is possible for the
          particular implementation and available resources.  The
          probe MUST NOT lower this value except as a result of a
          set to the associated dsmonMatrixTopNCtlRequestedSize
          object.
          Protocol entries with the highest value of
          dsmonMatrixTopNRate or dsmonMatrixTopNHCRate (depending on
          the value of the associated dsmonMatrixTopNCtlRateBase
          object) shall be placed in this table in decreasing order of
          this rate until there is no more room or until there are no
          more dsmonMatrix entries."
  ::= { dsmonMatrixTopNCtlEntry 8 }

dsmonMatrixTopNCtlStartTime OBJECT-TYPE

  SYNTAX     TimeStamp
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The value of sysUpTime when this top N report was last
          started.  In other words, this is the time that the
          associated dsmonMatrixTopNCtlTimeRemaining object was
          modified to start the requested report or the time the
          report was last automatically (re)started.
          This object may be used by the management station to
          determine if a report was missed or not."
  ::= { dsmonMatrixTopNCtlEntry 9 }

dsmonMatrixTopNCtlOwner 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."
  ::= { dsmonMatrixTopNCtlEntry 10 }

dsmonMatrixTopNCtlStatus OBJECT-TYPE

  SYNTAX     RowStatus
  MAX-ACCESS read-create
  STATUS     current

Bierman Standards Track [Page 90] RFC 3287 DSMON MIB July 2002

  DESCRIPTION
          "The status of this dsmonMatrixTopNCtlEntry.
          An entry MUST 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 dsmonMatrixTopNTable shall be deleted by the
          agent."
  ::= { dsmonMatrixTopNCtlEntry 11 }

– – dsmonMatrix TopN Table –

dsmonMatrixTopNTable OBJECT-TYPE

  SYNTAX     SEQUENCE OF DsmonMatrixTopNEntry
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "A set of statistics for those dsmonMatrix entries that have
          counted the highest number of octets or packets.
          If the dsmonAggControlLocked object is equal to 'false',
          then all entries in this table SHALL be deleted, and the
          agent will not process TopN reports on behalf of any
          dsmonMatrixTopNCtlEntry.
          When the dsmonAggControlLocked object is set to 'true', then
          particular reports SHOULD be restarted from the beginning,
          on behalf of all active rows in the dsmonMatrixTopNCtlTable.
          Note that dsmonMatrix entries which did not increment at all
          during the report interval SHOULD NOT be included in
          dsmonMatrixTopN reports."
  ::= { dsmonMatrixObjects 5 }

dsmonMatrixTopNEntry OBJECT-TYPE

  SYNTAX     DsmonMatrixTopNEntry
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "A conceptual row in the dsmonMatrixTopNTable.
          The dsmonMatrixTopNCtlIndex value in the index identifies
          the dsmonMatrixTopNCtlEntry on whose behalf this entry was
          created.

Bierman Standards Track [Page 91] RFC 3287 DSMON MIB July 2002

          Entries in this table are ordered from 1 to 'N', where lower
          numbers represent higher values of the rate base object,
          over the report interval."
  INDEX { dsmonMatrixTopNCtlIndex, dsmonMatrixTopNIndex }
  ::= { dsmonMatrixTopNTable 1 }

DsmonMatrixTopNEntry ::= SEQUENCE {

  dsmonMatrixTopNIndex                Integer32,
  dsmonMatrixTopNAggGroup             DsmonCounterAggGroupIndex,
  dsmonMatrixTopNNLIndex              Integer32,
  dsmonMatrixTopNSourceAddress        OCTET STRING,
  dsmonMatrixTopNDestAddress          OCTET STRING,
  dsmonMatrixTopNALIndex              Integer32,
  dsmonMatrixTopNPktRate              Gauge32,
  dsmonMatrixTopNPktRateOvfl          Gauge32,
  dsmonMatrixTopNHCPktRate            CounterBasedGauge64,
  dsmonMatrixTopNRevPktRate           Gauge32,
  dsmonMatrixTopNRevPktRateOvfl       Gauge32,
  dsmonMatrixTopNHCRevPktRate         CounterBasedGauge64,
  dsmonMatrixTopNOctetRate            Gauge32,
  dsmonMatrixTopNOctetRateOvfl        Gauge32,
  dsmonMatrixTopNHCOctetRate          CounterBasedGauge64,
  dsmonMatrixTopNRevOctetRate         Gauge32,
  dsmonMatrixTopNRevOctetRateOvfl     Gauge32,
  dsmonMatrixTopNHCRevOctetRate       CounterBasedGauge64
}

dsmonMatrixTopNIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS not-accessible
  STATUS     current
  DESCRIPTION
          "An index that uniquely identifies an entry in the
          dsmonMatrixTopNTable among those in the same report.  This
          index is between 1 and N, where N is the number of entries
          in this report."
  ::= { dsmonMatrixTopNEntry 1 }

dsmonMatrixTopNAggGroup OBJECT-TYPE

  SYNTAX      DsmonCounterAggGroupIndex
  MAX-ACCESS  read-only
  STATUS      current
  DESCRIPTION
          "The counter aggregation group index value associated with
          host identified in this entry.  This object identifies the
          dsmonAggGroupEntry with the same dsmonAggControlIndex value
          as the associated dsmonMatrixCtlAggProfile object and the
          same dsmonAggGroupIndex value as this object."

Bierman Standards Track [Page 92] RFC 3287 DSMON MIB July 2002

  ::= { dsmonMatrixTopNEntry 2 }

dsmonMatrixTopNNLIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The protocolDirLocalIndex value which identifies the
          protocol associated with the dsmonMatrixTopNSourceAddress
          and dsmonMatrixTopNDestAddress objects in this entry.
          If the protocolDirEntry associated with the
          protocolDirLocalIndex with the same value as this object is
          de-activated or deleted, then the agent MUST delete this
          dsmonMatrixTopN entry."
  ::= { dsmonMatrixTopNEntry 3 }

dsmonMatrixTopNSourceAddress OBJECT-TYPE

  SYNTAX     OCTET STRING
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The dsmonMatrixSDSourceAddress value for the source network
          host identified in this entry.  The associated
          dsmonMatrixTopNNLIndex object identifies the network
          protocol type and the encoding rules for this object."
  ::= { dsmonMatrixTopNEntry 4 }

dsmonMatrixTopNDestAddress OBJECT-TYPE

  SYNTAX     OCTET STRING
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The dsmonMatrixSDDestAddress value for the destination
          network host identified in this entry.  The associated
          dsmonMatrixTopNNLIndex object identifies the network
          protocol type and the encoding rules for this object."
  ::= { dsmonMatrixTopNEntry 5 }

dsmonMatrixTopNALIndex OBJECT-TYPE

  SYNTAX     Integer32 (1..2147483647)
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The protocolDirLocalIndex value which identifies the
          application protocol associated with this entry.
          If the protocolDirEntry associated with the

Bierman Standards Track [Page 93] RFC 3287 DSMON MIB July 2002

          protocolDirLocalIndex with the same value as this object is
          de-activated or deleted, then the agent MUST delete this
          dsmonMatrixTopN entry."
  ::= { dsmonMatrixTopNEntry 6 }

dsmonMatrixTopNPktRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of packets seen of this protocol from the source
          host to the destination host during this sampling interval,
          counted using the rules for counting the dsmonMatrixSDPkts
          object.
          If the value of dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNPkts, this variable will be used to sort this
          report.
          If the value of the dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOctets, then this
          object will contain the the least significant 32 bits of the
          associated dsmonMatrixTopNHCPktRate object."
  ::= { dsmonMatrixTopNEntry 7 }

dsmonMatrixTopNPktRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonMatrixTopNHCPktRate object.
          If the associated dsmonMatrixTopNCtlRateBase is equal to
          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOctets, then this
          object will contain the most significant 32 bits of the
          associated dsmonMatrixTopNHCPktRate object, otherwise this
          object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 8 }

dsmonMatrixTopNHCPktRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION

Bierman Standards Track [Page 94] RFC 3287 DSMON MIB July 2002

          "The number of packets seen of this protocol from the source
          host to the destination host during this sampling interval,
          counted using the rules for counting the dsmonMatrixSDHCPkts
          object.
          If the value of dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNHCPkts, this variable will be used to sort
          this report.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 9 }

dsmonMatrixTopNRevPktRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of packets seen of this protocol from the
          destination host to the source host during this sampling
          interval, counted using the rules for counting the
          dsmonMatrixDSPkts object  (note that the corresponding
          dsmonMatrixSDPkts object selected is the one whose source
          address is equal to dsmonMatrixTopNDestAddress and whose
          destination address is equal to
          dsmonMatrixTopNSourceAddress.)"
  ::= { dsmonMatrixTopNEntry 10 }

dsmonMatrixTopNRevPktRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonMatrixTopNHCRevPktRate object.
          If the associated dsmonMatrixTopNCtlRateBase is equal to
          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOCtets, then this
          object will contain the most significant 32 bits of the
          associated dsmonMatrixTopNHCRevPktRate object, otherwise
          this object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 11 }

dsmonMatrixTopNHCRevPktRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64

Bierman Standards Track [Page 95] RFC 3287 DSMON MIB July 2002

  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of packets seen of this protocol from the
          destination host to the source host during this sampling
          interval, counted using the rules for counting the
          dsmonMatrixDSHCPkts object  (note that the corresponding
          dsmonMatrixSDHCPkts object selected is the one whose source
          address is equal to dsmonMatrixTopNDestAddress and whose
          destination address is equal to
          dsmonMatrixTopNSourceAddress.)
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 12 }

dsmonMatrixTopNOctetRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of octets seen of this protocol from the source
          host to the destination host during this sampling interval,
          counted using the rules for counting the dsmonMatrixSDOctets
          object.
          If the value of dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNOctets, this variable will be used to sort
          this report.
          If the value of the dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOctets, then this
          object will contain the the least significant 32 bits of the
          associated dsmonMatrixTopNHCPktRate object."
  ::= { dsmonMatrixTopNEntry 13 }

dsmonMatrixTopNOctetRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonMatrixTopNHCOctetRate object.
          If the associated dsmonMatrixTopNCtlRateBase is equal to
          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOctets, then this
          object will contain the most significant 32 bits of the
          associated dsmonMatrixTopNHCOctetRate object, otherwise this

Bierman Standards Track [Page 96] RFC 3287 DSMON MIB July 2002

          object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 14 }

dsmonMatrixTopNHCOctetRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of octets seen of this protocol from the source
          host to the destination host during this sampling interval,
          counted using the rules for counting the
          dsmonMatrixSDHCOctets object.
          If the value of dsmonMatrixTopNCtlRateBase is
          dsmonMatrixTopNHCOctets, this variable will be used to sort
          this report.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 15 }

dsmonMatrixTopNRevOctetRate OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of octets seen of this protocol from the
          destination host to the source host during this sampling
          interval, counted using the rules for counting the
          dsmonMatrixDSOctets object  (note that the corresponding
          dsmonMatrixSDOctets object selected is the one whose source
          address is equal to dsmonMatrixTopNDestAddress and whose
          destination address is equal to
          dsmonMatrixTopNSourceAddress.)"
  ::= { dsmonMatrixTopNEntry 16 }

dsmonMatrixTopNRevOctetRateOvfl OBJECT-TYPE

  SYNTAX     Gauge32
  MAX-ACCESS read-only
  STATUS     deprecated
  DESCRIPTION
          "The most significant 32 bits of the associated
          dsmonMatrixTopNHCRevOctetRate object.
          If the associated dsmonMatrixTopNCtlRateBase is equal to

Bierman Standards Track [Page 97] RFC 3287 DSMON MIB July 2002

          dsmonMatrixTopNHCPkts or dsmonMatrixTopNHCOCtets, then this
          object will contain the most significant 32 bits of the
          associated dsmonMatrixTopNHCRevPktRate object, otherwise
          this object will contain the value zero.
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 17 }

dsmonMatrixTopNHCRevOctetRate OBJECT-TYPE

  SYNTAX     CounterBasedGauge64
  MAX-ACCESS read-only
  STATUS     current
  DESCRIPTION
          "The number of octets seen of this protocol from the
          destination host to the source host during this sampling
          interval, counted using the rules for counting the
          dsmonMatrixDSHCOctets object  (note that the corresponding
          dsmonMatrixSDHCOctets object selected is the one whose
          source address is equal to dsmonMatrixTopNDestAddress and
          whose destination address is equal to
          dsmonMatrixTopNSourceAddress.)
          The agent MAY choose not to instantiate this object if High
          Capacity monitoring is not supported."
  ::= { dsmonMatrixTopNEntry 18 }

– – Conformance Section –

dsmonCompliances OBJECT IDENTIFIER ::= { dsmonConformance 1 } dsmonGroups OBJECT IDENTIFIER ::= { dsmonConformance 2 }

– – Compliance for agents that do not support HC or Counter64 –

dsmonCompliance MODULE-COMPLIANCE

  STATUS  current
  DESCRIPTION
          "Describes the requirements for conformance to the
          Differentiated Services Monitoring MIB."
  MODULE  -- this module
      MANDATORY-GROUPS {
                         dsmonCounterAggControlGroup,
                         dsmonStatsGroup,
                         dsmonCapsGroup

Bierman Standards Track [Page 98] RFC 3287 DSMON MIB July 2002

                       }
      GROUP   dsmonStatsHCGroup
      DESCRIPTION
          "The dsmonStatsHCGroup is mandatory for systems which
          implement High Capacity monitoring."
      GROUP   dsmonPdistGroup
      DESCRIPTION
          "The dsmonPdistGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring."
      GROUP  dsmonPdistHCGroup
      DESCRIPTION
          "The dsmonPdistHCGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring on high capacity interfaces."
      GROUP  dsmonHostGroup
      DESCRIPTION
          "The dsmonHostGroup is mandatory for systems which implement
          RMON-2 nlHostTable based network protocol monitoring."
      GROUP  dsmonHostHCGroup
      DESCRIPTION
          "The dsmonHostHCGroup is mandatory for systems which
          implement RMON-2 nlHostTable based network protocol
          monitoring, on high capacity interfaces."
      GROUP  dsmonMatrixGroup
      DESCRIPTION
          "The dsmonMatrixGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol
          monitoring."
      GROUP  dsmonMatrixHCGroup
      DESCRIPTION
          "The dsmonMatrixHCGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol
          monitoring, on high capacity interfaces."
  ::= { dsmonCompliances 1 }

– – Compliance for agents that support HC and Counter64 –

Bierman Standards Track [Page 99] RFC 3287 DSMON MIB July 2002

dsmonHCCompliance MODULE-COMPLIANCE

  STATUS  current
  DESCRIPTION
          "Describes the requirements for conformance to the
          Differentiated Services Monitoring MIB for agents which also
          support High Capacity monitoring and the Counter64 data
          type."
  MODULE  -- this module
      MANDATORY-GROUPS {
                         dsmonCounterAggControlGroup,
                         dsmonStatsGroup,
                         dsmonStatsHCGroup,
                         dsmonCapsGroup
                       }
      GROUP   dsmonPdistGroup
      DESCRIPTION
          "The dsmonPdistGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring."
      GROUP  dsmonPdistHCGroup
      DESCRIPTION
          "The dsmonPdistHCGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring."
      GROUP  dsmonHostGroup
      DESCRIPTION
          "The dsmonHostGroup is mandatory for systems which implement
          RMON-2 nlHostTable based network protocol monitoring."
      GROUP  dsmonHostHCGroup
      DESCRIPTION
          "The dsmonHostHCGroup is mandatory for systems which
          implement RMON-2 nlHostTable based network protocol
          monitoring."
      GROUP  dsmonMatrixGroup
      DESCRIPTION
          "The dsmonMatrixGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol
          monitoring."
      GROUP  dsmonMatrixHCGroup
      DESCRIPTION
          "The dsmonMatrixHCGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol

Bierman Standards Track [Page 100] RFC 3287 DSMON MIB July 2002

          monitoring."
  ::= { dsmonCompliances 2 }

– – Compliance for agents that support HC, but not Counter64 –

dsmonHCNoC64Compliance MODULE-COMPLIANCE

  STATUS  deprecated
  DESCRIPTION
          "Describes the requirements for conformance to the
          Differentiated Services Monitoring MIB for an agent which
          supports high capacity monitoring, but does not support the
          Counter64 data type (e.g., only supports the SNMPv1
          protocol)."
  MODULE  -- this module
      MANDATORY-GROUPS {
                         dsmonCounterAggControlGroup,
                         dsmonStatsGroup,
                         dsmonStatsOvflGroup,
                         dsmonCapsGroup
                       }
      GROUP   dsmonStatsHCGroup
      DESCRIPTION
          "Implementation of the dsmonStatsHCGroup is not required.
          High Capacity monitoring."
      GROUP   dsmonPdistGroup
      DESCRIPTION
          "The dsmonPdistGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring."
      GROUP   dsmonPdistOvflGroup
      DESCRIPTION
          "The dsmonPdistGroup is mandatory for systems which
          implement RMON-2 protocolDirTable based protocol
          distribution monitoring."
      GROUP  dsmonPdistHCGroup
      DESCRIPTION
          "Implementation of the dsmonPdistHCGroup is not required."
      GROUP  dsmonHostGroup
      DESCRIPTION
          "The dsmonHostGroup is mandatory for systems which implement

Bierman Standards Track [Page 101] RFC 3287 DSMON MIB July 2002

          RMON-2 nlHostTable based network protocol monitoring."
      GROUP  dsmonHostOvflGroup
      DESCRIPTION
          "The dsmonHostGroup is mandatory for systems which implement
          RMON-2 nlHostTable based network protocol monitoring."
      GROUP  dsmonHostHCGroup
      DESCRIPTION
          "Implementation of the dsmonHostHCGroup is not required."
      GROUP  dsmonMatrixGroup
      DESCRIPTION
          "The dsmonMatrixGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol
          monitoring."
      GROUP  dsmonMatrixOvflGroup
      DESCRIPTION
          "The dsmonMatrixGroup is mandatory for systems which
          implement RMON-2 alMatrix based application protocol
          monitoring."
      GROUP  dsmonMatrixHCGroup
      DESCRIPTION
          "Implementation of the dsmonMatrixHCGroup is not required."
  ::= { dsmonCompliances 3 }

– Object Groups

dsmonCounterAggControlGroup OBJECT-GROUP

  OBJECTS {
           dsmonMaxAggGroups,
           dsmonAggControlLocked,
           dsmonAggControlChanges,
           dsmonAggControlLastChangeTime,
           dsmonAggControlDescr,
           dsmonAggControlOwner,
           dsmonAggControlStatus,
           dsmonAggGroupIndex,
           dsmonAggGroupDescr,
           dsmonAggGroupStatus
  }
  STATUS  current
  DESCRIPTION

Bierman Standards Track [Page 102] RFC 3287 DSMON MIB July 2002

          "A collection of objects used to configure and manage
          counter aggregation groups for DSMON collection purposes."
  ::= { dsmonGroups 1 }

dsmonStatsGroup OBJECT-GROUP

  OBJECTS {
           dsmonStatsControlDataSource,
           dsmonStatsControlAggProfile,
           dsmonStatsControlDroppedFrames,
           dsmonStatsControlCreateTime,
           dsmonStatsControlOwner,
           dsmonStatsControlStatus,
           dsmonStatsInPkts,
           dsmonStatsInOctets,
           dsmonStatsOutPkts,
           dsmonStatsOutOctets
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per DSCP statistics."
  ::= { dsmonGroups 2 }

dsmonStatsOvflGroup OBJECT-GROUP

  OBJECTS {
          dsmonStatsInOvflPkts,
          dsmonStatsInOvflOctets,
          dsmonStatsOutOvflPkts,
          dsmonStatsOutOvflOctets
  }
  STATUS  deprecated
  DESCRIPTION
          "A collection of objects providing per-DSCP overflow
          counters for systems with high capacity data sources, but
          without support for the Counter64 data type."
  ::= { dsmonGroups 3 }

dsmonStatsHCGroup OBJECT-GROUP

  OBJECTS {
          dsmonStatsInHCPkts,
          dsmonStatsInHCOctets,
          dsmonStatsOutHCPkts,
          dsmonStatsOutHCOctets
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per DSCP statistics for
          high capacity data sources."
  ::= { dsmonGroups 4 }

Bierman Standards Track [Page 103] RFC 3287 DSMON MIB July 2002

dsmonPdistGroup OBJECT-GROUP

  OBJECTS {
          dsmonPdistCtlDataSource,
          dsmonPdistCtlAggProfile,
          dsmonPdistCtlMaxDesiredEntries,
          dsmonPdistCtlDroppedFrames,
          dsmonPdistCtlInserts,
          dsmonPdistCtlDeletes,
          dsmonPdistCtlCreateTime,
          dsmonPdistCtlOwner,
          dsmonPdistCtlStatus,
          dsmonPdistStatsPkts,
          dsmonPdistStatsOctets,
          dsmonPdistStatsCreateTime,
          dsmonPdistTopNCtlPdistIndex,
          dsmonPdistTopNCtlRateBase,
          dsmonPdistTopNCtlTimeRemaining,
          dsmonPdistTopNCtlGeneratedReprts,
          dsmonPdistTopNCtlDuration,
          dsmonPdistTopNCtlRequestedSize,
          dsmonPdistTopNCtlGrantedSize,
          dsmonPdistTopNCtlStartTime,
          dsmonPdistTopNCtlOwner,
          dsmonPdistTopNCtlStatus,
          dsmonPdistTopNPDLocalIndex,
          dsmonPdistTopNAggGroup,
          dsmonPdistTopNRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per protocol DSCP
          monitoring extensions to the RMON-2 MIB."
  ::= { dsmonGroups 5 }

dsmonPdistOvflGroup OBJECT-GROUP

  OBJECTS {
          dsmonPdistStatsOvflPkts,
          dsmonPdistStatsOvflOctets,
          dsmonPdistTopNRateOvfl
  }
  STATUS  deprecated
  DESCRIPTION
          "A collection of objects providing per-protocol DSCP
          overflow counters for systems with high capacity data
          sources, but without support for the Counter64 data type."
  ::= { dsmonGroups 6 }

dsmonPdistHCGroup OBJECT-GROUP

Bierman Standards Track [Page 104] RFC 3287 DSMON MIB July 2002

  OBJECTS {
          dsmonPdistStatsHCPkts,
          dsmonPdistStatsHCOctets,
          dsmonPdistTopNHCRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per protocol DSCP
          monitoring extensions to the RMON-2 MIB for High Capacity
          networks."
  ::= { dsmonGroups 7 }

dsmonHostGroup OBJECT-GROUP

  OBJECTS {
          dsmonHostCtlDataSource,
          dsmonHostCtlAggProfile,
          dsmonHostCtlMaxDesiredEntries,
          dsmonHostCtlIPv4PrefixLen,
          dsmonHostCtlIPv6PrefixLen,
          dsmonHostCtlDroppedFrames,
          dsmonHostCtlInserts,
          dsmonHostCtlDeletes,
          dsmonHostCtlCreateTime,
          dsmonHostCtlOwner,
          dsmonHostCtlStatus,
          dsmonHostInPkts,
          dsmonHostInOctets,
          dsmonHostOutPkts,
          dsmonHostOutOctets,
          dsmonHostCreateTime,
          dsmonHostTopNCtlHostIndex,
          dsmonHostTopNCtlRateBase,
          dsmonHostTopNCtlTimeRemaining,
          dsmonHostTopNCtlGeneratedReports,
          dsmonHostTopNCtlDuration,
          dsmonHostTopNCtlRequestedSize,
          dsmonHostTopNCtlGrantedSize,
          dsmonHostTopNCtlStartTime,
          dsmonHostTopNCtlOwner,
          dsmonHostTopNCtlStatus,
          dsmonHostTopNPDLocalIndex,
          dsmonHostTopNAddress,
          dsmonHostTopNAggGroup,
          dsmonHostTopNRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per Host monitoring

Bierman Standards Track [Page 105] RFC 3287 DSMON MIB July 2002

          functions."
  ::= { dsmonGroups 8 }

dsmonHostOvflGroup OBJECT-GROUP

  OBJECTS {
          dsmonHostInOvflPkts,
          dsmonHostInOvflOctets,
          dsmonHostOutOvflPkts,
          dsmonHostOutOvflOctets,
          dsmonHostTopNRateOvfl
  }
  STATUS  deprecated
  DESCRIPTION
          "A collection of objects providing per host DSCP overflow
          counters for systems with high capacity data sources, but
          without support for the Counter64 data type."
  ::= { dsmonGroups 9 }

dsmonHostHCGroup OBJECT-GROUP

  OBJECTS {
          dsmonHostInHCPkts,
          dsmonHostInHCOctets,
          dsmonHostOutHCPkts,
          dsmonHostOutHCOctets,
          dsmonHostTopNHCRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per Host monitoring
          functions for High Capacity networks."
  ::= { dsmonGroups 10 }

dsmonCapsGroup OBJECT-GROUP

  OBJECTS {
          dsmonCapabilities
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing an indication of the
          DSMON monitoring functions supported by the agent."
  ::= { dsmonGroups 11 }

dsmonMatrixGroup OBJECT-GROUP

  OBJECTS {
          dsmonMatrixCtlDataSource,
          dsmonMatrixCtlAggProfile,
          dsmonMatrixCtlMaxDesiredEntries,
          dsmonMatrixCtlDroppedFrames,

Bierman Standards Track [Page 106] RFC 3287 DSMON MIB July 2002

          dsmonMatrixCtlInserts,
          dsmonMatrixCtlDeletes,
          dsmonMatrixCtlCreateTime,
          dsmonMatrixCtlOwner,
          dsmonMatrixCtlStatus,
          dsmonMatrixSDPkts,
          dsmonMatrixSDOctets,
          dsmonMatrixSDCreateTime,
          dsmonMatrixDSPkts,
          dsmonMatrixDSOctets,
          dsmonMatrixDSCreateTime,
          dsmonMatrixTopNCtlMatrixIndex,
          dsmonMatrixTopNCtlRateBase,
          dsmonMatrixTopNCtlTimeRemaining,
          dsmonMatrixTopNCtlGeneratedRpts,
          dsmonMatrixTopNCtlDuration,
          dsmonMatrixTopNCtlRequestedSize,
          dsmonMatrixTopNCtlGrantedSize,
          dsmonMatrixTopNCtlStartTime,
          dsmonMatrixTopNCtlOwner,
          dsmonMatrixTopNCtlStatus,
          dsmonMatrixTopNAggGroup,
          dsmonMatrixTopNNLIndex,
          dsmonMatrixTopNSourceAddress,
          dsmonMatrixTopNDestAddress,
          dsmonMatrixTopNALIndex,
          dsmonMatrixTopNPktRate,
          dsmonMatrixTopNRevPktRate,
          dsmonMatrixTopNOctetRate,
          dsmonMatrixTopNRevOctetRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per conversation
          monitoring functions."
  ::= { dsmonGroups 12 }

dsmonMatrixOvflGroup OBJECT-GROUP

  OBJECTS {
          dsmonMatrixSDOvflPkts,
          dsmonMatrixSDOvflOctets,
          dsmonMatrixDSOvflPkts,
          dsmonMatrixDSOvflOctets,
          dsmonMatrixTopNPktRateOvfl,
          dsmonMatrixTopNRevPktRateOvfl,
          dsmonMatrixTopNOctetRateOvfl,
          dsmonMatrixTopNRevOctetRateOvfl
  }

Bierman Standards Track [Page 107] RFC 3287 DSMON MIB July 2002

  STATUS  deprecated
  DESCRIPTION
          "A collection of objects providing per conversation
          monitoring functions for systems with high capacity data
          sources, but without support for the Counter64 data type."
  ::= { dsmonGroups 13 }

dsmonMatrixHCGroup OBJECT-GROUP

  OBJECTS {
          dsmonMatrixSDHCPkts,
          dsmonMatrixSDHCOctets,
          dsmonMatrixDSHCPkts,
          dsmonMatrixDSHCOctets,
          dsmonMatrixTopNHCPktRate,
          dsmonMatrixTopNHCRevPktRate,
          dsmonMatrixTopNHCOctetRate,
          dsmonMatrixTopNHCRevOctetRate
  }
  STATUS  current
  DESCRIPTION
          "A collection of objects providing per conversation
          monitoring functions for High Capacity networks."
  ::= { dsmonGroups 14 }

END

5. Counter Aggregation Configuration Usage Examples

 This section contains an example of the steps that may be followed by
 a management station to configure the objects in the
 dsmonCounterAggControlGroup.
 A note about these examples:
  1. they do not define a standard
  1. an agent is not obligated to support them
  1. a management application is not constrained by them
  1. the SET(object = value [, …]) notation is only conceptual, and

is not meant to represent an actual SNMP Set PDU.

Bierman Standards Track [Page 108] RFC 3287 DSMON MIB July 2002

5.1. Step 1: Unlock the Counter Aggregation Configuration

 Before any write operations to the tabular objects in this group can
 be made, the counter aggregation configuration must be unlocked by
 setting the dsmonAggControlLocked scalar to false:
    SET(dsmonAggControlLocked.0 = false(2));

5.2. Step 2: Check the Maximum number of Counter Aggregation Groups

 Make sure the desired counter aggregation groups have a chance of
 being configured on the agent.
    maxGroups = GET(dsmonAggMaxAggGroups.0);
 For this example, maxGroups is greater or equal to 64.

5.3. Step 3: Check if the counter aggregation profiles already exist

 Make sure the desired counter aggregation profiles have not already
 been configured, or perhaps recreated after an agent restart.  The
 following example is oversimplified, in that the entire counter
 aggregation configuration should actually be verified.
    profile1Descr = GET(dsmonAggControlDescr.1);
    profile1Owner = GET(dsmonAggControlOwner.1);
    profile1Status = GET(dsmonAggControlStatus.1);
 For this example, none of the counter aggregation profiles already
 exist.

5.4. Step 4: Create the Counter Aggregation Control Entries

 The management station should create one entry in the
 dsmonAggControlTable for each counter aggregation profile to be
 configured on the agent.
 Steps 4, 5, and 6 are repeated for each counter aggregation profile
 to be configured on the agent.  There are 3 example counter
 aggregation profiles shown in each of these steps.
 Example 1: Each DSCP in its own counter aggregation group.
    SET(dsmonAggControlStatus.1 = createAndGo(4),
        dsmonAggControlOwner.1 = "Example App 1",
        dsmonAggControlDescr.1 = "1 DSCP Per Group");

Bierman Standards Track [Page 109] RFC 3287 DSMON MIB July 2002

 Example 2: a collection of DIFFSERV PHBs.
    SET(dsmonAggControlStatus.2 = createAndGo(4),
        dsmonAggControlOwner.2 = "Example App 2",
        dsmonAggControlDescr.2 = "June 2000 DIFFSERV PHBs");
 Example 3: an aggregated collection of DIFFSERV PHBs.
    SET(dsmonAggControlStatus.3 = createAndGo(4),
        dsmonAggControlOwner.3 = "Example App 3",
        dsmonAggControlDescr.3 = "Limited June 2000 PHBs");

5.5. Step 5: Create the Counter Aggregation Group Descriptions

 Example 1: Each DSCP in its own counter aggregation group.  One group
 is created for each codepoint, for a total of 64 rows.
    SET(dsmonAggGroupStatus.1.0 = createAndGo(4),
        dsmonAggGroupDescr.1.0 = "DSCP 0");
    SET(dsmonAggGroupStatus.1.1 = createAndGo(4),
        dsmonAggGroupDescr.1.1 = "DSCP 1");
    SET(dsmonAggGroupStatus.1.2 = createAndGo(4),
        dsmonAggGroupDescr.1.2 = "DSCP 2");
    SET(dsmonAggGroupStatus.1.3 = createAndGo(4),
        dsmonAggGroupDescr.1.3 = "DSCP 3");
    ...
    SET(dsmonAggGroupStatus.1.63 = createAndGo(4),
        dsmonAggGroupDescr.1.63 = "DSCP 63");

Bierman Standards Track [Page 110] RFC 3287 DSMON MIB July 2002

 Example 2: a collection of current DIFFSERV PHBs.  One group is
 created for each PHB to be monitored.
    SET(dsmonAggGroupStatus.2.0 = createAndGo(4),
        dsmonAggGroupDescr.2.0 = "CS0");
    SET(dsmonAggGroupStatus.2.1 = createAndGo(4),
        dsmonAggGroupDescr.2.1 = "CS1");
    SET(dsmonAggGroupStatus.2.2 = createAndGo(4),
        dsmonAggGroupDescr.2.2 = "CS2");
    SET(dsmonAggGroupStatus.2.3 = createAndGo(4),
        dsmonAggGroupDescr.2.3 = "CS3");
    SET(dsmonAggGroupStatus.2.4 = createAndGo(4),
        dsmonAggGroupDescr.2.4 = "CS4");
    SET(dsmonAggGroupStatus.2.5 = createAndGo(4),
        dsmonAggGroupDescr.2.5 = "CS5");
    SET(dsmonAggGroupStatus.2.6 = createAndGo(4),
        dsmonAggGroupDescr.2.6 = "CS6");
    SET(dsmonAggGroupStatus.2.7 = createAndGo(4),
        dsmonAggGroupDescr.2.7 = "CS7");
    SET(dsmonAggGroupStatus.2.8 = createAndGo(4),
        dsmonAggGroupDescr.2.8 = "EF");
    SET(dsmonAggGroupStatus.2.9 = createAndGo(4),
        dsmonAggGroupDescr.2.9 = "AF11");
    SET(dsmonAggGroupStatus.2.10 = createAndGo(4),
        dsmonAggGroupDescr.2.10 = "AF12");
    SET(dsmonAggGroupStatus.2.11 = createAndGo(4),
        dsmonAggGroupDescr.2.11 = "AF13");
    SET(dsmonAggGroupStatus.2.12 = createAndGo(4),
        dsmonAggGroupDescr.2.12 = "AF21");
    SET(dsmonAggGroupStatus.2.13 = createAndGo(4),
        dsmonAggGroupDescr.2.13 = "AF22");
    SET(dsmonAggGroupStatus.2.14 = createAndGo(4),
        dsmonAggGroupDescr.2.14 = "AF23");
    SET(dsmonAggGroupStatus.2.15 = createAndGo(4),
        dsmonAggGroupDescr.2.15 = "AF31");
    SET(dsmonAggGroupStatus.2.16 = createAndGo(4),
        dsmonAggGroupDescr.2.16 = "AF32");
    SET(dsmonAggGroupStatus.2.17 = createAndGo(4),
        dsmonAggGroupDescr.2.17 = "AF33");
    SET(dsmonAggGroupStatus.2.18 = createAndGo(4),
        dsmonAggGroupDescr.2.18 = "AF41");
    SET(dsmonAggGroupStatus.2.19 = createAndGo(4),
        dsmonAggGroupDescr.2.19 = "AF42");
    SET(dsmonAggGroupStatus.2.20 = createAndGo(4),
        dsmonAggGroupDescr.2.20 = "AF43");
    SET(dsmonAggGroupStatus.2.21 = createAndGo(4),
        dsmonAggGroupDescr.2.21 = "Nonzero Default");

Bierman Standards Track [Page 111] RFC 3287 DSMON MIB July 2002

 Example 3: an aggregated representation of current DIFFSERV PHBs.
 One group is created for each counter aggregation to be monitored (8
 rows in this example).
    SET(dsmonAggGroupStatus.3.0 = createAndGo(4),
        dsmonAggGroupDescr.3.0 = "Zero CS");
    SET(dsmonAggGroupStatus.3.1 = createAndGo(4),
        dsmonAggGroupDescr.3.1 = "Nonzero CS");
    SET(dsmonAggGroupStatus.3.2 = createAndGo(4),
        dsmonAggGroupDescr.3.2 = "EF");
    SET(dsmonAggGroupStatus.3.3 = createAndGo(4),
        dsmonAggGroupDescr.3.3 = "AF1");
    SET(dsmonAggGroupStatus.3.4 = createAndGo(4),
        dsmonAggGroupDescr.3.4 = "AF2");
    SET(dsmonAggGroupStatus.3.5 = createAndGo(4),
        dsmonAggGroupDescr.3.5 = "AF3");
    SET(dsmonAggGroupStatus.3.6 = createAndGo(4),
        dsmonAggGroupDescr.3.6 = "AF4");
    SET(dsmonAggGroupStatus.3.7 = createAndGo(4),
        dsmonAggGroupDescr.3.7 = "Nonzero Default");

5.6. Step 6: Create the Counter Aggregation Profile Mappings

 After the dsmonAggControlEntries are activated, the associated read-
 write dsmonAggProfileEntries will be created.  The management station
 must create 64 entries in the dsmonAggProfileTable for each counter
 aggregation profile configured in the dsmonAggControlTable.
 Example 1: Each DSCP in its own counter aggregation group
    SET(dsmonAggGroupIndex.1.0 = 0,
        dsmonAggGroupIndex.1.1 = 1,
        dsmonAggGroupIndex.1.2 = 2,
        dsmonAggGroupIndex.1.3 = 3,
        ...
        dsmonAggGroupIndex.1.63 = 63);
 Example 2: a collection of current DIFFSERV PHBs.
    SET(dsmonAggGroupIndex.2.0 = 0,         -- CS0
        dsmonAggGroupIndex.2.1 = 21,        -- Nonzero Default
        dsmonAggGroupIndex.2.2 = 21,
        dsmonAggGroupIndex.2.3 = 21,
        dsmonAggGroupIndex.2.4 = 21,
        dsmonAggGroupIndex.2.5 = 21,
        dsmonAggGroupIndex.2.6 = 21,
        dsmonAggGroupIndex.2.7 = 21,
        dsmonAggGroupIndex.2.8 = 1,         -- CS1

Bierman Standards Track [Page 112] RFC 3287 DSMON MIB July 2002

        dsmonAggGroupIndex.2.9 = 21,
        dsmonAggGroupIndex.2.10 = 9,        -- AF11
        dsmonAggGroupIndex.2.11 = 21,
        dsmonAggGroupIndex.2.12 = 10,       -- AF12
        dsmonAggGroupIndex.2.13 = 21,
        dsmonAggGroupIndex.2.14 = 11,       -- AF13
        dsmonAggGroupIndex.2.15 = 21,
        dsmonAggGroupIndex.2.16 = 2,        -- CS2
        dsmonAggGroupIndex.2.17 = 21,
        dsmonAggGroupIndex.2.18 = 12,       -- AF21
        dsmonAggGroupIndex.2.19 = 21,
        dsmonAggGroupIndex.2.20 = 13,       -- AF22
        dsmonAggGroupIndex.2.21 = 21,
        dsmonAggGroupIndex.2.22 = 14,       -- AF23
        dsmonAggGroupIndex.2.23 = 21,
        dsmonAggGroupIndex.2.24 = 3,        -- CS3
        dsmonAggGroupIndex.2.25 = 21,
        dsmonAggGroupIndex.2.26 = 15,       -- AF31
        dsmonAggGroupIndex.2.27 = 21,
        dsmonAggGroupIndex.2.28 = 16,       -- AF32
        dsmonAggGroupIndex.2.29 = 8,        -- EF
        dsmonAggGroupIndex.2.30 = 17,       -- AF33
        dsmonAggGroupIndex.2.31 = 21,
        dsmonAggGroupIndex.2.32 = 4,        -- CS4
        dsmonAggGroupIndex.2.33 = 21,
        dsmonAggGroupIndex.2.34 = 18,       -- AF41
        dsmonAggGroupIndex.2.35 = 21,
        dsmonAggGroupIndex.2.36 = 19,       -- AF42
        dsmonAggGroupIndex.2.37 = 21,
        dsmonAggGroupIndex.2.38 = 20,       -- AF43
        dsmonAggGroupIndex.2.39 = 21,
        dsmonAggGroupIndex.2.40 = 5,        -- CS5
        dsmonAggGroupIndex.2.41 = 21,
        dsmonAggGroupIndex.2.42 = 21,
        dsmonAggGroupIndex.2.43 = 21,
        dsmonAggGroupIndex.2.44 = 21,
        dsmonAggGroupIndex.2.45 = 21,
        dsmonAggGroupIndex.2.46 = 21,
        dsmonAggGroupIndex.2.47 = 21,
        dsmonAggGroupIndex.2.48 = 6,        -- CS6
        dsmonAggGroupIndex.2.49 = 21,
        dsmonAggGroupIndex.2.50 = 21,
        dsmonAggGroupIndex.2.51 = 21,
        dsmonAggGroupIndex.2.52 = 21,
        dsmonAggGroupIndex.2.53 = 21,
        dsmonAggGroupIndex.2.54 = 21,
        dsmonAggGroupIndex.2.55 = 21,
        dsmonAggGroupIndex.2.56 = 7,        -- CS7

Bierman Standards Track [Page 113] RFC 3287 DSMON MIB July 2002

        dsmonAggGroupIndex.2.57 = 21,
        dsmonAggGroupIndex.2.58 = 21,
        dsmonAggGroupIndex.2.59 = 21,
        dsmonAggGroupIndex.2.60 = 21,
        dsmonAggGroupIndex.2.61 = 21,
        dsmonAggGroupIndex.2.62 = 21,
        dsmonAggGroupIndex.2.63 = 21);
 Example 3: an aggregated collection of current DIFFSERV PHBs.
    SET(dsmonAggGroupIndex.3.0 = 0,         -- Zero CS
        dsmonAggGroupIndex.3.1 = 7,         -- Nonzero Default
        dsmonAggGroupIndex.3.2 = 7,
        dsmonAggGroupIndex.3.3 = 7,
        dsmonAggGroupIndex.3.4 = 7,
        dsmonAggGroupIndex.3.5 = 7,
        dsmonAggGroupIndex.3.6 = 7,
        dsmonAggGroupIndex.3.7 = 7,
        dsmonAggGroupIndex.3.8 = 1,         -- Nonzero CS
        dsmonAggGroupIndex.3.9 = 7,
        dsmonAggGroupIndex.3.10 = 3,        -- AF1
        dsmonAggGroupIndex.3.11 = 7,
        dsmonAggGroupIndex.3.12 = 3,
        dsmonAggGroupIndex.3.13 = 7,
        dsmonAggGroupIndex.3.14 = 3,
        dsmonAggGroupIndex.3.15 = 7,
        dsmonAggGroupIndex.3.16 = 1,
        dsmonAggGroupIndex.3.17 = 7,
        dsmonAggGroupIndex.3.18 = 4,        -- AF2
        dsmonAggGroupIndex.3.19 = 7,
        dsmonAggGroupIndex.3.20 = 4,
        dsmonAggGroupIndex.3.21 = 7,
        dsmonAggGroupIndex.3.22 = 4,
        dsmonAggGroupIndex.3.23 = 7,
        dsmonAggGroupIndex.3.24 = 1,
        dsmonAggGroupIndex.3.25 = 7,
        dsmonAggGroupIndex.3.26 = 5,        -- AF3
        dsmonAggGroupIndex.3.27 = 7,
        dsmonAggGroupIndex.3.28 = 5,
        dsmonAggGroupIndex.3.29 = 2,        -- EF
        dsmonAggGroupIndex.3.30 = 5,
        dsmonAggGroupIndex.3.31 = 7,
        dsmonAggGroupIndex.3.32 = 1,
        dsmonAggGroupIndex.3.33 = 7,
        dsmonAggGroupIndex.3.34 = 6,        -- AF4
        dsmonAggGroupIndex.3.35 = 7,
        dsmonAggGroupIndex.3.36 = 6,
        dsmonAggGroupIndex.3.37 = 7,

Bierman Standards Track [Page 114] RFC 3287 DSMON MIB July 2002

        dsmonAggGroupIndex.3.38 = 6,
        dsmonAggGroupIndex.3.39 = 7,
        dsmonAggGroupIndex.3.40 = 1,
        dsmonAggGroupIndex.3.41 = 7,
        dsmonAggGroupIndex.3.42 = 7,
        dsmonAggGroupIndex.3.43 = 7,
        dsmonAggGroupIndex.3.44 = 7,
        dsmonAggGroupIndex.3.45 = 7,
        dsmonAggGroupIndex.3.46 = 7,
        dsmonAggGroupIndex.3.47 = 7,
        dsmonAggGroupIndex.3.48 = 1,
        dsmonAggGroupIndex.3.49 = 7,
        dsmonAggGroupIndex.3.50 = 7,
        dsmonAggGroupIndex.3.51 = 7,
        dsmonAggGroupIndex.3.52 = 7,
        dsmonAggGroupIndex.3.53 = 7,
        dsmonAggGroupIndex.3.54 = 7,
        dsmonAggGroupIndex.3.55 = 7,
        dsmonAggGroupIndex.3.56 = 1,
        dsmonAggGroupIndex.3.57 = 7,
        dsmonAggGroupIndex.3.58 = 7,
        dsmonAggGroupIndex.3.59 = 7,
        dsmonAggGroupIndex.3.60 = 7,
        dsmonAggGroupIndex.3.61 = 7,
        dsmonAggGroupIndex.3.62 = 7,
        dsmonAggGroupIndex.3.63 = 7);

5.7. Step 7: Lock the Counter Aggregation Configuration

 Before any existing collections can be activated by the agent, the
 counter aggregation configuration must be locked, by setting the
 dsmonAggControlLocked scalar to 'true'.
    SET(dsmonAggControlLocked.0 = true(1));

6. Intellectual Property

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

Bierman Standards Track [Page 115] RFC 3287 DSMON MIB July 2002

 such proprietary rights by implementors or users of this
 specification can be obtained from the IETF Secretariat.
 The IETF invites any interested party to bring to its attention any
 copyrights, patents or patent applications, or other proprietary
 rights which may cover technology that may be required to practice
 this standard.  Please address the information to the IETF Executive
 Director.

7. Acknowledgements

 This memo is a product of the RMONMIB WG.  It is based on an Internet
 Draft that was produced with a great deal of assistance from Keith
 McCloghrie and Bijendra Jain.

8. References

 [RFC1155] Rose, M. and K. McCloghrie, "Structure and Identification
           of Management Information for TCP/IP-based Internets", STD
           16, RFC 1155, May 1990.
 [RFC1157] Case, J., Fedor, M., Schoffstall, M. and C. Davin, "Simple
           Network Management Protocol", STD 15, RFC 1157, May 1990.
 [RFC1212] Rose, M. and K. McCloghrie, "Concise MIB Definitions", STD
           16, RFC 1212, March 1991.
 [RFC1215] Rose, M., "A Convention for Defining Traps for use with the
           SNMP", RFC 1215, March 1991.
 [RFC1901] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
           "Introduction to Community-based SNMPv2", RFC 1901, January
           1996.
 [RFC1905] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
           "Protocol Operations for Version 2 of the Simple Network
           Management Protocol (SNMPv2)", RFC 1905, January 1996.
 [RFC1906] Case, J., McCloghrie, K., Rose, M. and S. Waldbusser,
           "Transport Mappings for Version 2 of the Simple Network
           Management Protocol (SNMPv2)", RFC 1906, January 1996.
 [RFC2021] Waldbusser, S., "Remote Network Monitoring Management
           Information Base Version 2 using SMIv2", RFC 2021, January
           1997.
 [RFC2026] Bradner, S., "The Internet Standards Process -- Revision
           3", BCP 9, RFC 2026, October 1996.

Bierman Standards Track [Page 116] RFC 3287 DSMON MIB July 2002

 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
           Requirement Levels", BCP 14, RFC 2119, March 1997.
 [RFC2474] Nichols, K., Blake, S., Baker, F. and D. Black, "Definition
           of the Differentiated Services Field (DS Field) in the IPv4
           and IPv6 Headers", RFC 2474, December 1998.
 [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z. and
           W. Weiss, "An Architecture for Differentiated Services",
           RFC 2475, December 1998.
 [RFC2570] Case, J., Mundy, R., Partain, D. and B. Stewart,
           "Introduction to Version 3 of the Internet-standard Network
           Management Framework", RFC 2570, April 1999.
 [RFC2571] Wijnen, B., Harrington, D. and R. Presuhn, "An Architecture
           for Describing SNMP Management Frameworks", RFC 2571, April
           1999.
 [RFC2572] Case, J., Harrington D., Presuhn R. and B. Wijnen, "Message
           Processing and Dispatching for the Simple Network
           Management Protocol (SNMP)", RFC 2572, April 1999.
 [RFC2573] Levi, D., Meyer, P. and B. Stewart, "SNMPv3 Applications",
           RFC 2573, April 1999.
 [RFC2574] Blumenthal, U. and B. Wijnen, "User-based Security Model
           (USM) for version 3 of the Simple Network Management
           Protocol (SNMPv3)", RFC 2574, April 1999.
 [RFC2575] Wijnen, B., Presuhn, R. and K. McCloghrie, "View-based
           Access Control Model (VACM) for the Simple Network
           Management Protocol (SNMP)", RFC 2575, April 1999.
 [RFC2578] McCloghrie, K., Perkins, D. and J. Schoenwaelder,
           "Structure of Management Information Version 2 (SMIv2)",
           STD 58, RFC 2578, April 1999.
 [RFC2579] McCloghrie, K., Perkins, D.and J. Schoenwaelder, "Textual
           Conventions for SMIv2", STD 58, RFC 2579, April 1999.
 [RFC2580] McCloghrie, K., Perkins, D. and J. Schoenwaelder,
           "Conformance Statements for SMIv2", STD 58, RFC 2580, April
           1999.
 [RFC2856] Bierman, A., McCloghrie, K., and R. Presuhn, "Textual
           Conventions for Additional High Capacity Data Types", RFC
           2856, June 2000.

Bierman Standards Track [Page 117] RFC 3287 DSMON MIB July 2002

 [RFC2895] Bierman, A., Bucci, C. and R. Iddon, "Remote Network
           Monitoring MIB Protocol Identifier Reference", RFC 2895,
           August 2000.
 [RFC3273] Waldbusser, S., "Remote Monitoring Management Information
           Base for High Capacity Networks", RFC 3273, May 2002.

9. Security Considerations

 In order to implement this MIB, a probe must capture all packets on
 the locally-attached network, including packets between third
 parties.  These packets are analyzed to collect network addresses,
 protocol usage information, and conversation statistics.  Data of
 this nature may be considered sensitive in some environments.  In
 such environments the administrator may wish to restrict SNMP access
 to the probe.
 There are a number of management objects defined in this MIB that
 have a MAX-ACCESS clause of read-write and/or read-create.  Such
 objects may be considered sensitive or vulnerable in some network
 environments.  The support for SET operations in a non-secure
 environment without proper protection can have a negative effect on
 network operations.
 SNMPv1 by itself is not a secure environment.  Even if the network
 itself is secure (for example by using IPSec), even then, there is no
 control as to who on the secure network is allowed to access and
 GET/SET (read/change/create/delete) the objects in this MIB.
 It is recommended that the implementors consider the security
 features as provided by the SNMPv3 framework.  Specifically, the use
 of the User-based Security Model RFC 2574 [RFC2574] and the View-
 based Access Control Model RFC 2575 [RFC2575] is recommended.
 It is then a customer/user responsibility to ensure that the SNMP
 entity giving access to an instance of this MIB, is properly
 configured to give access to the objects only to those principals
 (users) that have legitimate rights to indeed GET or SET
 (change/create/delete) them.

Bierman Standards Track [Page 118] RFC 3287 DSMON MIB July 2002

10. Author's Address

 Andy Bierman
 Cisco Systems, Inc.
 170 West Tasman Drive
 San Jose, CA USA 95134
 Phone: +1 408-527-3711
 EMail: abierman@cisco.com

Bierman Standards Track [Page 119] RFC 3287 DSMON MIB July 2002

11. Full Copyright Statement

 Copyright (C) The Internet Society (2002).  All Rights Reserved.
 This document and translations of it may be copied and furnished to
 others, and derivative works that comment on or otherwise explain it
 or assist in its implementation may be prepared, copied, published
 and distributed, in whole or in part, without restriction of any
 kind, provided that the above copyright notice and this paragraph are
 included on all such copies and derivative works.  However, this
 document itself may not be modified in any way, such as by removing
 the copyright notice or references to the Internet Society or other
 Internet organizations, except as needed for the purpose of
 developing Internet standards in which case the procedures for
 copyrights defined in the Internet Standards process must be
 followed, or as required to translate it into languages other than
 English.
 The limited permissions granted above are perpetual and will not be
 revoked by the Internet Society or its successors or assigns.
 This document and the information contained herein is provided on an
 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

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

Bierman Standards Track [Page 120]

/data/webs/external/dokuwiki/data/pages/rfc/rfc3287.txt · Last modified: 2002/07/03 18:47 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki