ENTERASYS-PIM-EXT-MIB DEFINITIONS ::= BEGIN

--  enterasys-pim-ext-mib.txt
--
--  Part Number:
--
--

--  This module provides authoritative definitions for Enterasys 
--  Networks' PIM protocol.  This module extends the PIM-MIB.

--
--  This module will be extended, as needed.

--  Enterasys Networks reserves the right to make changes in this
--  specification and other information contained in this document
--  without prior notice.  The reader should consult Enterasys Networks
--  to determine whether any such changes have been made.
--
--  In no event shall Enterasys Networks be liable for any incidental,
--  indirect, special, or consequential damages whatsoever (including
--  but not limited to lost profits) arising out of or related to this
--  document or the information contained in it, even if Enterasys
--  Networks has been advised of, known, or should have known, the
--  possibility of such damages.
--
--  Enterasys Networks grants vendors, end-users, and other interested
--  parties a non-exclusive license to use this Specification in 
--  connection with the management of Enterasys Networks products.

--  Copyright February, 2009 Enterasys Networks, Inc.

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter32, Gauge32
        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, TruthValue
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    InetVersion
        FROM INET-ADDRESS-MIB
    pimInterfaceEntry, pimStaticRPEntry, pimAnycastRPSetEntry,
    pimGroupMappingEntry, pimNeighborEntry, pimInterfaceEntry
        FROM PIM-STD-MIB
    etsysModules
        FROM ENTERASYS-MIB-NAMES;

etsysPimExtMIB MODULE-IDENTITY
    LAST-UPDATED "200902242232Z"  -- Tue Feb 24 22:32 UTC 2009
    ORGANIZATION "Enterasys Networks, Inc"
    CONTACT-INFO
        "Postal:  Enterasys Networks
                  50 Minuteman Rd.
                  Andover, MA 01810-1008
                  USA
         Phone:   +1 978 684 1000
         E-mail:  support@enterasys.com
         WWW:     http://www.enterasys.com"
    DESCRIPTION
        "This MIB module defines a portion of the SNMP MIB under
         the Enterasys Networks enterprise OID pertaining to the
         PIM configuration.

         This MIB was designed to be used in conjunction with the
         PIM-MIB (RFC 5060) for configuring the PIM protocol
         parameters.  Additional statistical tables are provided
         for monitoring the PIM protocol."

    REVISION     "200902242232Z"  -- Tue Feb 24 22:32 UTC 2009
    DESCRIPTION  "The initial version of this MIB module"
    ::= { etsysModules 67 }


-- Textual Conventions


-- -------------------------------------------------------------
-- Branches
-- -------------------------------------------------------------
etsysPimExtObjects  OBJECT IDENTIFIER ::= { etsysPimExtMIB 1 }
etsysPimExtGlobals  OBJECT IDENTIFIER ::= { etsysPimExtObjects 1 }
etsysPimExtTables   OBJECT IDENTIFIER ::= { etsysPimExtObjects 2 }

-- -------------------------------------------------------------
-- MIB Objects
-- -------------------------------------------------------------

--
-- Enterasys PIM Interface Table (augments pimInterfaceTable)
--
etsysPimExtIfTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtIfEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to
        PIM interfaces for Enterasys PIM systems.  This table
        augments the pimInterfaceTable from RFC 5060."
    ::= { etsysPimExtTables 1 }

etsysPimExtIfEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtIfEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtIfTable."
    AUGMENTS     { pimInterfaceEntry }
    ::= { etsysPimExtIfTable 1 }

EtsysPimExtIfEntry ::= SEQUENCE {
    etsysPimExtIfAdminStatus                 INTEGER,
    etsysPimExtIfOperStatus                  INTEGER,
    etsysPimExtIfP2PNoHellos                 TruthValue,
    etsysPimExtIfNeighborCount               Gauge32,
    etsysPimExtIfStarGStateLimit             Unsigned32,
    etsysPimExtIfStarGStateWarnThold         Unsigned32,
    etsysPimExtIfStarGStateStored            Gauge32,
    etsysPimExtIfSGStateLimit                Unsigned32,
    etsysPimExtIfSGStateWarnThold            Unsigned32,
    etsysPimExtIfSGStateStored               Gauge32,
    etsysPimExtIfAssertInterval              Unsigned32,
    etsysPimExtIfAssertHoldtime              Unsigned32
}

etsysPimExtIfAdminStatus OBJECT-TYPE
    SYNTAX       INTEGER {
                     adminStatusUp(1),
                     adminStatusDown(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The administrative state of PIM on this interface.

        When the status of this object is set to 'adminStatusDown', no
        PIM messages will be sent or received on this interface.  The
        TIB state pertaining to this interface is cleared, resulting in
        the removal of the associated routes from the MFIB.

        When the status of this object is set to 'adminStatusUp', normal
        PIM operation will proceed, and multicast state is stored in the
        TIB when it is learned."
    DEFVAL { adminStatusUp }
    ::= { etsysPimExtIfEntry 1 }

etsysPimExtIfOperStatus OBJECT-TYPE
    SYNTAX       INTEGER {
                     operStatusUp(1),          -- active
                     operStatusDown(2),        -- inactive
                     operStatusGoingUp(3),     -- activating
                     operStatusGoingDown(4),   -- deactivating
                     operStatusActFailed(5),   -- activation failed
                     operStatusFailed(8),      -- failed, will recover
                                               -- when possible
                     operStatusFailedPerm(10), -- operator intervention
                                               -- required
                     operStatusFailing(11)     -- failure in progress
                 }
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The current operational state of PIM on this interface."
    ::= { etsysPimExtIfEntry 2 }

etsysPimExtIfP2PNoHellos OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "Indicates whether this interface is a point-to-point interface.

        If the value of this object is 'true', neighbors are not
        required to send PIM-Hello messages.  This is provided for
        backward-compatibility with some older implementations that do
        not send PIM-Hellos on point-to-point links.

        Changing the value of this object while the interface is
        operationally active MAY cause the interface to be deactivated
        and then reactivated."
    DEFVAL { false }
    ::= { etsysPimExtIfEntry 3 }

etsysPimExtIfNeighborCount OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM neighbors on this interface."
    ::= { etsysPimExtIfEntry 4 }

etsysPimExtIfStarGStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The maximum number of groups for which the PIM TIB Manager is
        allowed to store (*,G,I) state specific to this interface.  A
        value of zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtIfEntry 5 }

etsysPimExtIfStarGStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of groups
        for which it is storing (*,G,I) state specific to this interface
        exceeds this value.  A value of zero means that there is no
        warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtIfEntry 6 }

etsysPimExtIfStarGStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of groups for which the PIM TIB Manager is storing
        (*,G,I) state specific to this interface."
    ::= { etsysPimExtIfEntry 7 }

etsysPimExtIfSGStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The maximum number of {source, group} pairs for which the PIM
        TIB Manager is allowed to store (S,G,I) state specific to this
        interface.  A value of zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtIfEntry 8 }

etsysPimExtIfSGStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of
        {source, group} pairs for which it is storing (S,G,I) state
        specific to this interface exceeds this value.  A value of zero
        means that there is no warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtIfEntry 9 }

etsysPimExtIfSGStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of {source, group} pairs for which the PIM TIB
        Manager is storing (S,G,I) state specific to this interface."
    ::= { etsysPimExtIfEntry 10 }

etsysPimExtIfAssertInterval OBJECT-TYPE
    SYNTAX       Unsigned32 (0..65535)
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The frequency at which this router sends PIM Assert messages
        on this interface when it is the assert winner.

        This object corresponds to the 'Assert_Time' (180 seconds)
        minus the 'Assert_Override_Interval' (3 seconds) defined in
        PIM-SM [RFC 4601].

        This value MUST be less than etsysPimExtIfAssertHoldtime."
    DEFVAL { 177 }
    ::= { etsysPimExtIfEntry 11 }

etsysPimExtIfAssertHoldtime OBJECT-TYPE
    SYNTAX       Unsigned32 (0..65535)
    UNITS        "seconds"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The interval before this router leaves assert loser state on
        this interface, unless it receives a PIM Assert message that
        refreshes this state.

        This object corresponds to the 'Assert_Time' timer value defined
        in PIM-SM [RFC 4601].

        Note:  Configuring different values for this object for
               different routers on the same interface may lead to
               incorrect protocol operation."
    DEFVAL { 180 }
    ::= { etsysPimExtIfEntry 12 }


--
-- Enterasys PIM Static RP Table (augments pimStaticRPTable)
--
etsysPimExtStaticRPTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtStaticRPEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to
        PIM static rendezvous points for Enterasys PIM systems.  This
        table augments the pimStaticRPTable from RFC 5060."
    ::= { etsysPimExtTables 2 }

etsysPimExtStaticRPEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtStaticRPEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtStaticRPTable."
    AUGMENTS     { pimStaticRPEntry }
    ::= { etsysPimExtStaticRPTable 1 }

EtsysPimExtStaticRPEntry ::= SEQUENCE {
    etsysPimExtStaticRPAdminStatus           INTEGER
}

etsysPimExtStaticRPAdminStatus OBJECT-TYPE
    SYNTAX       INTEGER {
                     adminStatusUp(1),
                     adminStatusDown(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The administrative state of this entry.

        When the status of this object is set to 'adminStatusDown', the
        static rendezvous point will no longer accept PIM messages and
        is removed from the pimGroupMappingTable.  This MAY cause the
        TIB to be updated.

        When the status of this object is set to 'adminStatusUp', this
        static rendezvous point is added to the pimGroupMappingTable and
        will start accepting PIM messages.  This MAY cause the TIB to be
        updated."
    DEFVAL { adminStatusUp }
    ::= { etsysPimExtStaticRPEntry 1 }

--
-- Enterasys PIM Anycast Set RP Table (augments pimAnycastRPSetTable)
--
etsysPimExtAnycastRPSetTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtAnycastRPSetEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to
        PIM anycast rendezvous point sets for Enterasys PIM systems.
        This table augments the pimAnycastRPSetTable from RFC 5060."
    ::= { etsysPimExtTables 3 }

etsysPimExtAnycastRPSetEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtAnycastRPSetEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtAnycastRPSetTable."
    AUGMENTS     { pimAnycastRPSetEntry }
    ::= { etsysPimExtAnycastRPSetTable 1 }

EtsysPimExtAnycastRPSetEntry ::= SEQUENCE {
    etsysPimExtAnycastRPSetAdminStatus       INTEGER
}

etsysPimExtAnycastRPSetAdminStatus OBJECT-TYPE
    SYNTAX       INTEGER {
                     adminStatusUp(1),
                     adminStatusDown(2)
                 }
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
        "The administrative state of this entry.

        When the status of this object is set to 'adminStatusDown', the
        router is removed from the corresponding anycast rendezvous
        point set.  This MAY cause the TIB to be updated.

        When the status of this object is set to 'adminStatusUp', the
        router is added to the anycast rendezvous point and will start
        handling PIM messages.  This MAY cause the TIB to be updated.

        Note:  If the status is set to 'adminStatusDown' and the
               pimAnycastRPSetLocalRouter object is 'true' (this entry
               corresponds to the local router), the entire set is
               invalidated.  The Anycast-RP Set is only valid if the
               local router is a member of the set."
    DEFVAL { adminStatusUp }
    ::= { etsysPimExtAnycastRPSetEntry 1 }


--
-- Enterasys PIM Group Mapping RP Table (augments pimGroupMappingTable)
--
etsysPimExtGroupMappingTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtGroupMappingEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to
        PIM group mapping for Enterasys PIM systems.  This table
        augments the pimGroupMappingTable from RFC 5060."
    ::= { etsysPimExtTables 4 }

etsysPimExtGroupMappingEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtGroupMappingEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtGroupMappingTable."
    AUGMENTS     { pimGroupMappingEntry }
    ::= { etsysPimExtGroupMappingTable 1 }

EtsysPimExtGroupMappingEntry ::= SEQUENCE {
    etsysPimExtGroupMappingIsInactive        TruthValue
}

etsysPimExtGroupMappingIsInactive OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "Indicates whether this Group Mapping is currently inactive.

        If this flag is set to 'true' then this group mapping is
        currently not in use.  In other words, no group addresses will
        be matched to this Group Mapping."
    ::= { etsysPimExtGroupMappingEntry 1 }


--
-- Enterasys PIM Neighbor Stats Table (augments pimNeighborTable)
--
etsysPimExtNbrStatsTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtNbrStatsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to PIM
        neighbor statistics for Enterasys PIM systems.  This table
        augments the pimNeighborTable.

        Note:  If a Neighbor expires and is removed from the
               pimNeighborTable and is reconnected shortly thereafter,
               these statistics are reset due to the row deletion.  The
               statistics MAY also reset on receipt of a PIM Hello
               message with a zero holdtime."
    ::= { etsysPimExtTables 5 }

etsysPimExtNbrStatsEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtNbrStatsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtNbrStatsTable."
    AUGMENTS     { pimNeighborEntry }
    ::= { etsysPimExtNbrStatsTable 1 }

EtsysPimExtNbrStatsEntry ::= SEQUENCE {
    etsysPimExtNbrStatsNumRecvHello          Counter32,
    etsysPimExtNbrStatsNumRecvJoinPrune      Counter32,
    etsysPimExtNbrStatsNumRecvAssert         Counter32,
    etsysPimExtNbrStatsNumRecvBSM            Counter32,
    etsysPimExtNbrStatsNumErrJoinPrune       Counter32,
    etsysPimExtNbrStatsNumErrAssert          Counter32,
    etsysPimExtNbrStatsNumErrBSM             Counter32
}

etsysPimExtNbrStatsNumRecvHello OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Hello messages that have been
        received from this neighbor."
    ::= { etsysPimExtNbrStatsEntry 1 }

etsysPimExtNbrStatsNumRecvJoinPrune OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Join/Prune messages that have been
        received from this neighbor."
    ::= { etsysPimExtNbrStatsEntry 2 }

etsysPimExtNbrStatsNumRecvAssert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Assert messages that have been
        received from this neighbor."
    ::= { etsysPimExtNbrStatsEntry 3 }

etsysPimExtNbrStatsNumRecvBSM OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Bootstrap messages that have been
        received from this neighbor."
    ::= { etsysPimExtNbrStatsEntry 4 }

etsysPimExtNbrStatsNumErrJoinPrune OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Join/Prune messages that have been
        received from this neighbor that have contained errors.

        Note: This does not include messages for which the RP in the
              message differs from the RP known by the local router,
              nor does it include (*,G) messages received for SSM
              groups."
    ::= { etsysPimExtNbrStatsEntry 5 }

etsysPimExtNbrStatsNumErrAssert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Assert messages that have been received
        from this neighbor that have contained errors."
    ::= { etsysPimExtNbrStatsEntry 6 }

etsysPimExtNbrStatsNumErrBSM OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Bootstrap messages that have been received
        from this neighbor that have contained errors."
    ::= { etsysPimExtNbrStatsEntry 7 }


--
-- Enterasys PIM Interface Stats Table (augments pimInterfaceTable)
--
etsysPimExtIfStatsTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtIfStatsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides additional information pertaining to PIM
        interface statistics for Enterasys PIM systems.  This table
        augments the pimInterfaceTable."
    ::= { etsysPimExtTables 6 }

etsysPimExtIfStatsEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtIfStatsEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtIfStatsTable."
    AUGMENTS     { pimInterfaceEntry }
    ::= { etsysPimExtIfStatsTable 1 }

EtsysPimExtIfStatsEntry ::= SEQUENCE {
    etsysPimExtIfStatsNumSentHello           Counter32,
    etsysPimExtIfStatsNumSentJoinPrune       Counter32,
    etsysPimExtIfStatsNumSentAssert          Counter32,
    etsysPimExtIfStatsNumSentBsm             Counter32,
    etsysPimExtIfStatsNumErrHello            Counter32,
    etsysPimExtIfStatsNumRecvUnknownNbr      Counter32,
    etsysPimExtIfStatsNumUnknownHelloOpt     Counter32
}

etsysPimExtIfStatsNumSentHello OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Hello messages that have been sent out
        this interface."
    ::= { etsysPimExtIfStatsEntry 1 }

etsysPimExtIfStatsNumSentJoinPrune OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Join/Prune messages that have been sent out
        this interface."
    ::= { etsysPimExtIfStatsEntry 2 }

etsysPimExtIfStatsNumSentAssert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Assert messages that have been sent out
        this interface."
    ::= { etsysPimExtIfStatsEntry 3 }

etsysPimExtIfStatsNumSentBsm OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Bootstrap Router messages that have been sent
        out this interface.  PIM always multicasts this type of
        message."
    ::= { etsysPimExtIfStatsEntry 4 }

etsysPimExtIfStatsNumErrHello OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Hello messages that have been received on
        this interface that have contained errors."
    ::= { etsysPimExtIfStatsEntry 5 }

etsysPimExtIfStatsNumRecvUnknownNbr OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Join/Prune, Assert and multicast Bootstrap 
        Router messages that have been received on this interface from
        a neighbor in which we had not previously received a valid PIM
        Hello message (and for which etsysPimExtIfP2PNoHellos was
        'false').

        Bootstrap Router messages which are sent to a unicast address 
        are not included in this count."
    ::= { etsysPimExtIfStatsEntry 6 }

etsysPimExtIfStatsNumUnknownHelloOpt OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of unknown options that have been received in PIM
        Hello messages on this interface."
    ::= { etsysPimExtIfStatsEntry 7 }


--
-- Enterasys PIM Neighbor Manager Table
--
etsysPimExtNbrMgrTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtNbrMgrEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides objects that manipulate the operation of
        PIM in order to accept additional types of messages.
        Statistical objects are provided as well."
    ::= { etsysPimExtTables 7 }

etsysPimExtNbrMgrEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtNbrMgrEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtNbrMgrTable."
    INDEX       { etsysPimExtNbrMgrIndex }
    ::= { etsysPimExtNbrMgrTable 1 }

EtsysPimExtNbrMgrEntry ::= SEQUENCE {
    etsysPimExtNbrMgrIndex                   InetVersion,
    etsysPimExtNbrMgrEnableUnicastMessages   TruthValue,
    etsysPimExtNbrMgrAcceptUnicastBsms       TruthValue,
    etsysPimExtNbrMgrNumSentCRPAdvert        Counter32,
    etsysPimExtNbrMgrNumSentRegister         Counter32,
    etsysPimExtNbrMgrNumSentRegisterStop     Counter32,
    etsysPimExtNbrMgrNumRecvCRPAdvert        Counter32,
    etsysPimExtNbrMgrNumRecvRegister         Counter32,
    etsysPimExtNbrMgrNumRecvRegisterStop     Counter32,
    etsysPimExtNbrMgrNumErrCRPAdvert         Counter32,
    etsysPimExtNbrMgrNumErrRegister          Counter32,
    etsysPimExtNbrMgrNumErrRegisterStop      Counter32,
    etsysPimExtNbrMgrNumRecvIgnoredType      Counter32,
    etsysPimExtNbrMgrNumRecvUnknownType      Counter32,
    etsysPimExtNbrMgrNumRecvUnknownVer       Counter32,
    etsysPimExtNbrMgrNumRecvBadChecksum      Counter32,
    etsysPimExtNbrMgrNumRecvBadLength        Counter32
}

etsysPimExtNbrMgrIndex OBJECT-TYPE
    SYNTAX       InetVersion
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "The Internet address version of this Neighbor Manager."
    ::= { etsysPimExtNbrMgrEntry 1 }

etsysPimExtNbrMgrEnableUnicastMessages OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "Indicates whether the PIM Neighbor Manager sends and receives
        unicast PIM messages.

        This object MUST only be set to 'false' if the local router will
        never be an RP for any multicast group, and it will never be the
        downstream router for any connected source that sends data to
        any ASM group.  This will always be the case if the local router
        only performs the SSM subset of PIM-SM."
    DEFVAL { true }
    ::= { etsysPimExtNbrMgrEntry 2 }

etsysPimExtNbrMgrAcceptUnicastBsms OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "Indicates whether the PIM Neighbor manager accepts PIM Boostrap
        Messages (BSMs) which are sent as unicast messages.

        Setting the value of this object to 'false' means that BSMs are
        ignored if they are sent as unicast messages.

        This object can only be set to 'true' if the
        etsysPimExtNbrMgrEnableUnicastMessages object is 'true'."
    DEFVAL { false }
    ::= { etsysPimExtNbrMgrEntry 3 }

etsysPimExtNbrMgrNumSentCRPAdvert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Candidate-RP-Advertisement messages that have
        been sent."
    ::= { etsysPimExtNbrMgrEntry 4 }

etsysPimExtNbrMgrNumSentRegister OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Register messages that have been sent

        Note:  This only includes PIM Register messages forwarded to
               other members of Anycast-RP sets, and Null-Register 
               messages.  It does not include Register-encapsulated data
               packets sent from the downstream router to the RP."
    ::= { etsysPimExtNbrMgrEntry 5 }

etsysPimExtNbrMgrNumSentRegisterStop OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of PIM Register-Stop messages that have been sent."
    ::= { etsysPimExtNbrMgrEntry 6 }

etsysPimExtNbrMgrNumRecvCRPAdvert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Candidate-RP Advertisement messages
        that have been received."
    ::= { etsysPimExtNbrMgrEntry 7 }

etsysPimExtNbrMgrNumRecvRegister OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Register messages that have been
        received."
    ::= { etsysPimExtNbrMgrEntry 8 }

etsysPimExtNbrMgrNumRecvRegisterStop OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of valid PIM Register-Stop messages that have been
        received."
    ::= { etsysPimExtNbrMgrEntry 9 }

etsysPimExtNbrMgrNumErrCRPAdvert OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM Candidate-RP Advertisement messages
        that have contained errors."
    ::= { etsysPimExtNbrMgrEntry 10 }

etsysPimExtNbrMgrNumErrRegister OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM Register messages that have
        contained errors."
    ::= { etsysPimExtNbrMgrEntry 11 }

etsysPimExtNbrMgrNumErrRegisterStop OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM Register-Stop messages that have
        contained errors."
    ::= { etsysPimExtNbrMgrEntry 12 }

etsysPimExtNbrMgrNumRecvIgnoredType OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM messages with a known but
        unsupported PIM message type."
    ::= { etsysPimExtNbrMgrEntry 13 }

etsysPimExtNbrMgrNumRecvUnknownType OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM messages with an unknown PIM message
        type."
    ::= { etsysPimExtNbrMgrEntry 14 }

etsysPimExtNbrMgrNumRecvUnknownVer OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM messages with an unknown PIM
        version."
    ::= { etsysPimExtNbrMgrEntry 15 }

etsysPimExtNbrMgrNumRecvBadChecksum OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM messages with an incorrect PIM
        checksum that."
    ::= { etsysPimExtNbrMgrEntry 16 }

etsysPimExtNbrMgrNumRecvBadLength OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of received PIM messages with a length too short to
        contain a common PIM header."
    ::= { etsysPimExtNbrMgrEntry 17 }


--
-- Enterasys PIM Tree Information Base (TIB) Manager Table
--
etsysPimExtTibMgrTable OBJECT-TYPE
    SYNTAX       SEQUENCE OF EtsysPimExtTibMgrEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "This table provides objects that manipulate the operation of
        the PIM Tree Information Base (TIB) Manager in order control
        the acceptable limits for the TIB."
    ::= { etsysPimExtTables 8 }

etsysPimExtTibMgrEntry OBJECT-TYPE
    SYNTAX       EtsysPimExtTibMgrEntry
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "An entry (conceptual row) in the etsysPimExtTibMgrTable."
    INDEX       { etsysPimExtTibMgrIndex }
    ::= { etsysPimExtTibMgrTable 1 }

EtsysPimExtTibMgrEntry ::= SEQUENCE {
    etsysPimExtTibMgrIndex                   InetVersion,
    etsysPimExtTibMgrGStateLimit             Unsigned32,
    etsysPimExtTibMgrGStateWarnThold         Unsigned32,
    etsysPimExtTibMgrGStateStored            Gauge32,
    etsysPimExtTibMgrSGStateLimit            Unsigned32,
    etsysPimExtTibMgrSGStateWarnThold        Unsigned32,
    etsysPimExtTibMgrSGStateStored           Gauge32,
    etsysPimExtTibMgrStarGIStateLimit        Unsigned32,
    etsysPimExtTibMgrStarGIStateWarnThold    Unsigned32,
    etsysPimExtTibMgrStarGIStateStored       Gauge32,
    etsysPimExtTibMgrSGIStateLimit           Unsigned32,
    etsysPimExtTibMgrSGIStateWarnThold       Unsigned32,
    etsysPimExtTibMgrSGIStateStored          Gauge32,
    etsysPimExtTibMgrRegSuppressionTime      Unsigned32,
    etsysPimExtTibMgrRegProbeTime            Unsigned32,
    etsysPimExtTibMgrKeepalivePeriod         Unsigned32
}

etsysPimExtTibMgrIndex OBJECT-TYPE
    SYNTAX       InetVersion
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
        "The Internet address version of this PIM TIB Manager."
    ::= { etsysPimExtTibMgrEntry 1 }

etsysPimExtTibMgrGStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The maximum number of groups for which the PIM TIB Manager
        is allowed to store non-interface specific (*,G) and/or (S,G)
        state.  A value of zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 2 }

etsysPimExtTibMgrGStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of groups
        for which it is storing non-interface specific (*,G) and/or
        (S,G) state exceeds this value.  A value of zero means that
        there is no warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 3 }

etsysPimExtTibMgrGStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of groups for which the PIM TIB Manager is storing
        non-interface specific (*,G) and/or (S,G) state."
    ::= { etsysPimExtTibMgrEntry 4 }

etsysPimExtTibMgrSGStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The maximum number of {source, group} pairs for which the PIM
         TIB Manager is allowed to store non-interface specific (S,G)
         state.  A value of zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 5 }

etsysPimExtTibMgrSGStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of
        {source, group} pairs for which it is storing non-interface
        specific (S,G) state exceeds this value.  A value of zero means
        that there is no warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 6 }

etsysPimExtTibMgrSGStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of {source, group} pairs for which the PIM TIB
        Manager is storing non-interface specific (S,G) state."
    ::= { etsysPimExtTibMgrEntry 7 }

etsysPimExtTibMgrStarGIStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The maximum number of {group, interface} pairs for which the
        PIM TIB Manager is allowed to store (*,G,I) state.  A value of
        zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 8 }

etsysPimExtTibMgrStarGIStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of
        {group, interface} pairs for which it is storing (*,G,I) state
        exceeds this value.  A value of zero means that there is no
        warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 9 }

etsysPimExtTibMgrStarGIStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of {group, interface} pairs for which the PIM TIB
        Manager is storing (*,G,I) state."
    ::= { etsysPimExtTibMgrEntry 10 }

etsysPimExtTibMgrSGIStateLimit OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The maximum number of {source, group, interface} triplets for
        which the PIM TIB Manager is allowed to store (S,G,I) state.  A
        value of zero means that there is no limit."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 11 }

etsysPimExtTibMgrSGIStateWarnThold OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The PIM TIB Manager logs an exception if the number of
        {source, group, interface} triplets for which it is storing
        (S,G,I) state exceeds this value.  A value of zero means that
        there is no warning threshold."
    DEFVAL { 0 }
    ::= { etsysPimExtTibMgrEntry 12 }

etsysPimExtTibMgrSGIStateStored OBJECT-TYPE
    SYNTAX       Gauge32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "The number of {source, group, interface} triplets for which the
        PIM TIB Manager is storing (S,G,I) state."
    ::= { etsysPimExtTibMgrEntry 13 }

etsysPimExtTibMgrRegSuppressionTime OBJECT-TYPE
    SYNTAX       Unsigned32 (0..65535)
    UNITS        "seconds"
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The mean value of the randomized interval during which a
        downstream router stops Register-encapsulation after receiving
        a PIM Register-Stop message.

        This object corresponds to the 'Register_Suppression_Time'
        defined in PIM-SM [RFC 4601].

        Note:  Configuring different values for this object for
               different routers in the PIM domain may lead to
               incorrect protocol operation."
    DEFVAL { 60 }
    ::= { etsysPimExtTibMgrEntry 14 }

etsysPimExtTibMgrRegProbeTime OBJECT-TYPE
    SYNTAX       Unsigned32 (0..65535)
    UNITS        "seconds"
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The time to wait for a PIM Register-Stop message after sending
        a PIM Null-Register message, before resuming
        Register-encapsulation at a downstream router.

        This object corresponds to the 'Register_Probe_Time' defined in
        PIM-SM [RFC 4601]."
    DEFVAL { 5 }
    ::= { etsysPimExtTibMgrEntry 15 }

etsysPimExtTibMgrKeepalivePeriod OBJECT-TYPE
    SYNTAX       Unsigned32 (0..65535)
    UNITS        "seconds"
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "The amount of time to keep (S,G) state alive in the absence of
        PIM (S,G) Join messages, (S,G) local membership or (S,G) data
        packets.

        This object corresponds to the 'Keepalive_Period' defined in
        PIM-SM [RFC 4601].

        Note:  Configuring different values for this object for 
               different routers in the PIM domain may lead to
               incorrect protocol operation."
    DEFVAL { 210 }
    ::= { etsysPimExtTibMgrEntry 16 }


-- -------------------------------------------------------------
-- Conformance Information
-- -------------------------------------------------------------

etsysPimExtConformance OBJECT IDENTIFIER ::= { etsysPimExtMIB 3 }

etsysPimExtGroups
    OBJECT IDENTIFIER ::= { etsysPimExtConformance 1 }
etsysPimExtCompliances
    OBJECT IDENTIFIER ::= { etsysPimExtConformance 2 }

-- -------------------------------------------------------------
-- Units of conformance
-- -------------------------------------------------------------

etsysPimExtIfGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtIfAdminStatus,
        etsysPimExtIfOperStatus,
        etsysPimExtIfP2PNoHellos,
        etsysPimExtIfNeighborCount,
        etsysPimExtIfStarGStateLimit,
        etsysPimExtIfStarGStateWarnThold,
        etsysPimExtIfStarGStateStored,
        etsysPimExtIfSGStateLimit,
        etsysPimExtIfSGStateWarnThold,
        etsysPimExtIfSGStateStored,
        etsysPimExtIfAssertInterval,
        etsysPimExtIfAssertHoldtime
    }
    STATUS      current
    DESCRIPTION
        "This group defines interface controls for Enterasys PIM
        systems."
    ::= { etsysPimExtGroups 1 }

etsysPimExtStaticRPGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtStaticRPAdminStatus
    }
    STATUS      current
    DESCRIPTION
        "This group defines the static rendezvous point controls for
        Enterasys PIM systems."
    ::= { etsysPimExtGroups 2 }

etsysPimExtAnycastRPSetGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtAnycastRPSetAdminStatus
    }
    STATUS      current
    DESCRIPTION
        "This group defines the anycast rendezvous point controls for
        Enterasys PIM systems."
    ::= { etsysPimExtGroups 3 }

etsysPimExtGroupMappingGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtGroupMappingIsInactive
    }
    STATUS      current
    DESCRIPTION
        "This group defines the group mapping controls for Enterasys
        PIM systems."
    ::= { etsysPimExtGroups 4 }

etsysPimExtNbrStatsGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtNbrStatsNumRecvHello,
        etsysPimExtNbrStatsNumRecvJoinPrune,
        etsysPimExtNbrStatsNumRecvAssert,
        etsysPimExtNbrStatsNumRecvBSM,
        etsysPimExtNbrStatsNumErrJoinPrune,
        etsysPimExtNbrStatsNumErrAssert,
        etsysPimExtNbrStatsNumErrBSM
    }
    STATUS      current
    DESCRIPTION
        "This group defines the neighbor statistic objects for Enterasys
        PIM systems."
    ::= { etsysPimExtGroups 5 }

etsysPimExtIfStatsGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtIfStatsNumSentHello,
        etsysPimExtIfStatsNumSentJoinPrune,
        etsysPimExtIfStatsNumSentAssert,
        etsysPimExtIfStatsNumSentBsm,
        etsysPimExtIfStatsNumErrHello,
        etsysPimExtIfStatsNumRecvUnknownNbr,
        etsysPimExtIfStatsNumUnknownHelloOpt
    }
    STATUS      current
    DESCRIPTION
        "This group defines the interface statistic objects for
        Enterasys PIM systems."
    ::= { etsysPimExtGroups 6 }

etsysPimExtNbrMgrGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtNbrMgrIndex,
        etsysPimExtNbrMgrEnableUnicastMessages,
        etsysPimExtNbrMgrAcceptUnicastBsms,
        etsysPimExtNbrMgrNumSentCRPAdvert,
        etsysPimExtNbrMgrNumSentRegister,
        etsysPimExtNbrMgrNumSentRegisterStop,
        etsysPimExtNbrMgrNumRecvCRPAdvert,
        etsysPimExtNbrMgrNumRecvRegister,
        etsysPimExtNbrMgrNumRecvRegisterStop,
        etsysPimExtNbrMgrNumErrCRPAdvert,
        etsysPimExtNbrMgrNumErrRegister,
        etsysPimExtNbrMgrNumErrRegisterStop,
        etsysPimExtNbrMgrNumRecvIgnoredType,
        etsysPimExtNbrMgrNumRecvUnknownType,
        etsysPimExtNbrMgrNumRecvUnknownVer,
        etsysPimExtNbrMgrNumRecvBadChecksum,
        etsysPimExtNbrMgrNumRecvBadLength
    }
    STATUS      current
    DESCRIPTION
        "This group defines the neighbor manager objects for Enterasys
        PIM systems."
    ::= { etsysPimExtGroups 7 }

etsysPimExtTibMgrGroup OBJECT-GROUP
    OBJECTS {
        etsysPimExtTibMgrIndex,
        etsysPimExtTibMgrGStateLimit,
        etsysPimExtTibMgrGStateWarnThold,
        etsysPimExtTibMgrGStateStored,
        etsysPimExtTibMgrSGStateLimit,
        etsysPimExtTibMgrSGStateWarnThold,
        etsysPimExtTibMgrSGStateStored,
        etsysPimExtTibMgrStarGIStateLimit,
        etsysPimExtTibMgrStarGIStateWarnThold,
        etsysPimExtTibMgrStarGIStateStored,
        etsysPimExtTibMgrSGIStateLimit,
        etsysPimExtTibMgrSGIStateWarnThold,
        etsysPimExtTibMgrSGIStateStored,
        etsysPimExtTibMgrRegSuppressionTime,
        etsysPimExtTibMgrRegProbeTime,
        etsysPimExtTibMgrKeepalivePeriod
    }
    STATUS      current
    DESCRIPTION
        "This group defines the Tree Information Base (TIB) manager objects
        for Enterasys PIM systems."
    ::= { etsysPimExtGroups 8 }

-- -------------------------------------------------------------
-- Compliance statements
-- -------------------------------------------------------------

etsysPimExtCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for devices that support etsysPimExt."

    MODULE
        MANDATORY-GROUPS {
            etsysPimExtIfGroup,
            etsysPimExtStaticRPGroup,
            etsysPimExtAnycastRPSetGroup,
            etsysPimExtGroupMappingGroup,
            etsysPimExtNbrStatsGroup,
            etsysPimExtIfStatsGroup,
            etsysPimExtNbrMgrGroup,
            etsysPimExtTibMgrGroup
        }
    ::= { etsysPimExtCompliances 1 }

END
