-- *****************************************************************
-- MY-SPAN-MIB.mib:  My SPAN MIB file
--
-- $Copyright$
-- 
-- *****************************************************************
--

DES7200-SPAN-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        NOTIFICATION-TYPE,
        Integer32,
        Counter32,
        IpAddress
                FROM SNMPv2-SMI
        VlanId
                FROM Q-BRIDGE-MIB
        TruthValue,
        DisplayString,
        RowStatus,
        MacAddress
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP,
        NOTIFICATION-GROUP
                FROM SNMPv2-CONF
        ConfigStatus,
        MemberMap,
        IfIndex
                FROM DES7200-TC
        EnabledStatus 
                FROM P-BRIDGE-MIB
        myMgmt
                FROM DES7200-SMI;

mySPANMIB MODULE-IDENTITY
        LAST-UPDATED "200203200000Z"
        ORGANIZATION "$Company$"
        CONTACT-INFO
                " 
                Tel: $Telephone$ 

                E-mail: $E-mail$"
        DESCRIPTION
                "This module defines my SPAN(Statistical Processing and Analysis)mibs."
        REVISION      "200203200000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { myMgmt 23}

mySPANMIBObjects OBJECT IDENTIFIER ::= { mySPANMIB 1 }


mySPANSessionNum OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Max num of SPAN session which the system support."
        ::= { mySPANMIBObjects 1 }

mySPANTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MySPANEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of  SPAN configuration objects."
        ::= { mySPANMIBObjects 2 }
    
mySPANEntry OBJECT-TYPE
        SYNTAX MySPANEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains SPAN configuration objects."
        INDEX { mySPANSession,mySPANIfIndex}
        ::= { mySPANTable 1 }

MySPANEntry ::=
        SEQUENCE {
            mySPANSession Integer32,
            mySPANIfIndex IfIndex,            
            mySPANIfRole INTEGER,
            mySPANEntryStatus RowStatus
        }
mySPANSession OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Index of an association of a destination port with source ports or source."
        ::= { mySPANEntry 1 }

mySPANIfIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " "
        ::= { mySPANEntry 2 }
                                           
mySPANIfRole OBJECT-TYPE
        SYNTAX INTEGER{
            span-desc(1),    -- a destination port (also called a monitoring port) that 
                             -- receives a copy of traffic from the source port.
            span-src-rx(2),  -- A source port (also called a monitored port) which 
                             -- the received packets is monitored.
            span-src-tx(3),  -- A source port (also called a monitored port) which 
                             -- the transmitted packets  is monitored.
            span-src-all(4)  -- A source port (also called a monitored port) which 
                             -- the received and transmitted packets  is all monitored.
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            " Role of the interface in the SPAN session"
        ::= { mySPANEntry 3 }
                            
mySPANEntryStatus OBJECT-TYPE
        SYNTAX ConfigStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Status of this entry, set its value to invalid will delete the interface of 
             this entry and set this object to valid will have no any effect"
        ::= { mySPANEntry 4 }        

mySPANMIBConformance OBJECT IDENTIFIER ::= { mySPANMIB 3 }
mySPANMIBCompliances OBJECT IDENTIFIER ::= { mySPANMIBConformance 1 }
mySPANMIBGroups      OBJECT IDENTIFIER ::= { mySPANMIBConformance 2 }


-- compliance statements

mySPANMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the My IfConfig MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { mySPANMIBGroup
                 }
        ::= { mySPANMIBCompliances 1 }
                
-- units of conformance

mySPANMIBGroup OBJECT-GROUP
        OBJECTS {
            mySPANSession,
            mySPANIfIndex,            
            mySPANIfRole,
            mySPANEntryStatus
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing port SPAN configure."
        ::= { mySPANMIBGroups 1 }         
                
END
