Skip to main content

Remote Monitoring MIB Extensions for Differentiated Services
RFC 3287

Document Type RFC - Proposed Standard (July 2002)
Author Andy Bierman
Last updated 2015-10-14
RFC stream Internet Engineering Task Force (IETF)
Formats
Additional resources Mailing list discussion
IESG Responsible AD Bert Wijnen
Send notices to (None)
RFC 3287
"
    ::= { 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

            -----------                 --------------------
            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:

   -  they do not define a standard

   -  an agent is not obligated to support them

   -  a management application is not constrained by them

   -  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]