ENTERASYS-MIRROR-CONFIG-MIB DEFINITIONS ::= BEGIN

--  enterasys-mirror-config-mib.txt
--
--  Part Number:
--
--

--  This module provides authoritative definitions for Enterasys 
--  Networks' Mirroring Configuration 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 <August, 2012> Enterasys Networks, Inc.

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32
        FROM SNMPv2-SMI
    RowStatus, StorageType
        FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    ifIndex
        FROM IF-MIB
    SnmpAdminString 
        FROM SNMP-FRAMEWORK-MIB
    etsysModules
        FROM ENTERASYS-MIB-NAMES;

etsysMirrorConfigMIB MODULE-IDENTITY
    LAST-UPDATED "201208221216Z"  -- Wed Aug 22 12:16 UTC 2012
    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 
         Network Mirroring configuration on a device.

        Terminology used

        Flow
        A flow is defined as an unidirectional sequence of
        packets between a given source and destination
        endpoints."


    REVISION    "201208221216Z"  -- Wed Aug 22 12:16 UTC 2012
    DESCRIPTION "Added the etsysMirrorSystemMaxMirrorFirstN
                 and etsysMirrorDestinationControlMirrorFirstN
                 objects for Mirror First N support."

    REVISION    "200908101856Z"  -- Mon Aug 10 18:56 UTC 2009
    DESCRIPTION "The initial version of this MIB module."

    ::= { etsysModules 72 } 


--
-- Textual Conventions
--

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

etsysMirrorSystem OBJECT IDENTIFIER ::= { etsysMirrorConfigMIB 1 }
etsysMirrorConfig OBJECT IDENTIFIER ::= { etsysMirrorConfigMIB 2 }


-- -------------------------------------------------------------
-- The Mirror System Group 
-- -------------------------------------------------------------

etsysMirrorSystemMaxLocalMirrors OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "This value represents the maximum number of local mirrors 
         that the device supports."
    ::= { etsysMirrorSystem 1 }

etsysMirrorSystemMaxRemoteMirrors OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "This value represents the maximum number of remote mirrors 
         that the device supports."
    ::= { etsysMirrorSystem 2 }
   
etsysMirrorSystemMaxLocalMirrorDestinationPorts OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "This value represents the maximum number of destination 
         ports supported for a local mirror."
    ::= { etsysMirrorSystem 3 }

etsysMirrorSystemMaxMirrorDestinationControlGroups OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "This value represents the maximum number of 
         rows in the etsysMirrorDestinationControlTable."
    ::= { etsysMirrorSystem 4 }

etsysMirrorSystemMaxMirrorFirstN OBJECT-TYPE
    SYNTAX       Unsigned32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
        "This value represents the maximum configurable number 
        of initial packets of a flow that can be mirrored. 
        If this value is 0 this feature is not supported."
    ::= { etsysMirrorSystem 5 }


-- -------------------------------------------------------------
-- The Mirror Table 
-- -------------------------------------------------------------
etsysMirrorDestinationNextAvailableIndex OBJECT-TYPE
    SYNTAX      Unsigned32 (0|1..4294967295)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object indicates the numerically lowest available
         index within this entity, which may be used for the
         value of etsysMirrorDestinationControlIndex in the creation
         of a new entry in the etsysMirrorDestinationControlTable.

         An index is considered available if the index value
         falls within the range of 1 to (newLeaf with max dest groups)
         and is not being used to index an existing entry in the
         etsysMirrorDestinationControlTable contained within this entity.

         A value of zero indicates that all of the entries in the
         etsysMirrorDestinationControlTable are currently in use.

         This value SHOULD only be considered a guideline for
         management creation of etsysMirrorDestinationControlTable
         entries, there is no requirement on management to create
         entries based upon this index value."
    ::= { etsysMirrorConfig 1 }

etsysMirrorDestinationControlTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF EtsysMirrorDestinationControlEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Controls the setup of mirror destination ports on 
         the managed device." 
   ::= { etsysMirrorConfig 2 }

etsysMirrorDestinationControlEntry OBJECT-TYPE
    SYNTAX      EtsysMirrorDestinationControlEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A conceptual row in the etsysMirrorDestinationControlTable."
    INDEX { etsysMirrorDestinationControlIndex }
    ::= { etsysMirrorDestinationControlTable 1 }

EtsysMirrorDestinationControlEntry ::=
    SEQUENCE {
        etsysMirrorDestinationControlIndex
            Unsigned32,
        etsysMirrorDestinationControlOwner
            SnmpAdminString,
        etsysMirrorDestinationControlStorageType
            StorageType,
        etsysMirrorDestinationControlRowStatus
            RowStatus,
        etsysMirrorDestinationControlMirrorFirstN
            Unsigned32
    }

etsysMirrorDestinationControlIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible 
    STATUS      current
    DESCRIPTION
        "A unique arbitrary index for this etsysMirrorDestinationControlEntry.
         This object MUST have a value between 1 and
         etsysMirrorSystemMaxMirrorDestinationControlGroups."
    ::= { etsysMirrorDestinationControlEntry 1 }


etsysMirrorDestinationControlOwner OBJECT-TYPE
    SYNTAX       SnmpAdminString 
    MAX-ACCESS   read-create 
    STATUS       current
    DESCRIPTION
        "Administratively assigned name of the owner of this entry.
         It usually defines the entity that created this entry and is
         therefore using the resources assigned to it, though there is
         no enforcement mechanism, nor assurance that rows created are
         ever used."
    ::= { etsysMirrorDestinationControlEntry 2 }

etsysMirrorDestinationControlStorageType OBJECT-TYPE
    SYNTAX      StorageType 
    MAX-ACCESS  read-create 
    STATUS      current
    DESCRIPTION
        "The memory realization of the conceptual row.
         volatile(2)    -- is lost upon reboot.
         nonVolatile(3) -- is persistent across reboots.
         permanent(4)   -- there are no writable objects.
         readOnly(5)    -- agent created rows."
    ::= { etsysMirrorDestinationControlEntry 3 }

etsysMirrorDestinationControlRowStatus OBJECT-TYPE
    SYNTAX      RowStatus 
    MAX-ACCESS  read-create 
    STATUS      current
    DESCRIPTION
        "This object manages the creation and deletion of this entry.

         active(1)        -- Indicates that this entry is available
                             for use by the managed device. 
                             
         notInService(2)  -- Indicates that this entry exists in the
                             agent but is not available for use by
                             the managed device.   

         notReady(3)      -- Entry is missing information in order to
                             be available for use by the managed 
                             device. 

         createAndGo(4)   -- A new entry will be created in this table
                             and the new entry will transition to the 
                             active state. 

         createAndWait(5) -- A new entry will be created in this table
                             and the new entry will transition to the 
                             notInService state.

         destroy(6)       -- Deletes the row and any associated
                             EtsysMirrorDestinationEntry rows. "
    ::= { etsysMirrorDestinationControlEntry 4 }

etsysMirrorDestinationControlMirrorFirstN OBJECT-TYPE
    SYNTAX      Unsigned32 
    MAX-ACCESS  read-create 
    STATUS      current
    DESCRIPTION
        "When this object is set to a nonzero value, 
         only the first N packets for a particular flow
         assigned to this index will be mirrored. Otherwise
         all packets from the flow are to be mirrored.

         The maximum value for this object is specified
         by the etsysMirrorSystemMaxMirrorFirstN
         object."
    DEFVAL { 0 }

    ::= { etsysMirrorDestinationControlEntry 5 }

etsysMirrorDestinationPortTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF EtsysMirrorDestinationPortEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "Controls the configuration of mirror destination ports."
   ::= { etsysMirrorConfig 3 }

etsysMirrorDestinationPortEntry OBJECT-TYPE
    SYNTAX      EtsysMirrorDestinationPortEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION 
        "A conceptual row in the etsysMirrorDestinationPortTable ."
    INDEX { etsysMirrorDestinationControlIndex, ifIndex }
    ::= { etsysMirrorDestinationPortTable 1 }

EtsysMirrorDestinationPortEntry ::=
    SEQUENCE {
        etsysMirrorDestinationPortStorageType
            StorageType,
        etsysMirrorDestinationPortRowStatus
            RowStatus
    }

etsysMirrorDestinationPortStorageType OBJECT-TYPE
    SYNTAX      StorageType 
    MAX-ACCESS  read-create 
    STATUS      current
    DESCRIPTION
        "The memory realization of the conceptual row.
         volatile(2)    -- is lost upon reboot.
         nonVolatile(3) -- is persistent across reboots.
         permanent(4)   -- there are no writable objects.
         readOnly(5)    -- agent created rows."
    ::= { etsysMirrorDestinationPortEntry 1 }

etsysMirrorDestinationPortRowStatus OBJECT-TYPE
    SYNTAX      RowStatus 
    MAX-ACCESS  read-create 
    STATUS      current
    DESCRIPTION
        "This object manages the creation and deletion of this entry.

         active(1)        -- Indicates that this entry is available
                             for use by the managed device. 
                             
         notInService(2)  -- Indicates that this entry exists in the
                             agent but is not available for use by
                             the managed device. 

         notReady(3)      -- Entry is missing information in order to
                             be available for use by the managed 
                             device. A transition to this state will
                             happen when the etsysMirrorDestinationIfIndex
                             object for this entry is 0 (zero).

         createAndGo(4)   -- A new entry will be created in this table
                             and the new entry will transition to the 
                             active state. 

         createAndWait(5) -- A new entry will be created in this table
                             and the new entry will transition to the 
                             notInService state.

         destroy(6)       -- Deletes this row. "
    ::= { etsysMirrorDestinationPortEntry 2 }

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

etsysMirrorConformance OBJECT IDENTIFIER ::= { etsysMirrorConfigMIB 3 }

etsysMirrorGroups      OBJECT IDENTIFIER ::= { etsysMirrorConformance 1 }
etsysMirrorCompliances OBJECT IDENTIFIER ::= { etsysMirrorConformance 2 }

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

etsysMirrorSystemGroup OBJECT-GROUP
    OBJECTS {
        etsysMirrorSystemMaxLocalMirrors,
        etsysMirrorSystemMaxRemoteMirrors, 
        etsysMirrorSystemMaxLocalMirrorDestinationPorts,
        etsysMirrorSystemMaxMirrorDestinationControlGroups 
    }
    STATUS deprecated
    DESCRIPTION
        "A collection of objects providing basic mirroring system
         information."
    ::= { etsysMirrorGroups 1 }

etsysMirrorConfigGroup OBJECT-GROUP
    OBJECTS {
        etsysMirrorDestinationControlOwner,
        etsysMirrorDestinationControlStorageType,
        etsysMirrorDestinationControlRowStatus,
        etsysMirrorDestinationPortStorageType,
        etsysMirrorDestinationPortRowStatus
    }
    STATUS deprecated
    DESCRIPTION
        "A collection of objects relating to mirror configuration."
    ::= { etsysMirrorGroups 2 }

etsysMirrorSystemGroup2 OBJECT-GROUP
    OBJECTS {
        etsysMirrorSystemMaxLocalMirrors,
        etsysMirrorSystemMaxRemoteMirrors, 
        etsysMirrorSystemMaxLocalMirrorDestinationPorts,
        etsysMirrorSystemMaxMirrorDestinationControlGroups,
        etsysMirrorSystemMaxMirrorFirstN
    }
    STATUS current
    DESCRIPTION
        "A collection of objects providing basic mirroring system
         information."
    ::= { etsysMirrorGroups 3 }

etsysMirrorConfigGroup2 OBJECT-GROUP
    OBJECTS {
        etsysMirrorDestinationNextAvailableIndex,
        etsysMirrorDestinationControlOwner,
        etsysMirrorDestinationControlStorageType,
        etsysMirrorDestinationControlRowStatus,
        etsysMirrorDestinationControlMirrorFirstN,
        etsysMirrorDestinationPortStorageType,
        etsysMirrorDestinationPortRowStatus
    }
    STATUS current
    DESCRIPTION
        "A collection of objects relating to mirror configuration."
    ::= { etsysMirrorGroups 4 }

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

etsysMirrorCompliance MODULE-COMPLIANCE
    STATUS      deprecated
    DESCRIPTION
        "The compliance statement for devices that support the Enterasys
         Mirror MIB."

    MODULE
        MANDATORY-GROUPS { etsysMirrorSystemGroup,
                           etsysMirrorConfigGroup }

    ::= { etsysMirrorCompliances 1 }

etsysMirrorCompliance2 MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for devices that support the Enterasys
         Mirror MIB."

    MODULE
        MANDATORY-GROUPS { etsysMirrorSystemGroup2,
                           etsysMirrorConfigGroup2 }

    ::= { etsysMirrorCompliances 2 }

END
