

DGS3324SR-SWL2MGMT-MIB	DEFINITIONS ::= BEGIN

    IMPORTS
        IpAddress , TimeTicks , Integer32, 
        MODULE-IDENTITY , OBJECT-TYPE			FROM SNMPv2-SMI
        DisplayString,RowStatus					FROM SNMPv2-TC
		--PortList								FROM Q-BRIDGE-MIB
		AgentNotifyLevel						FROM DLINK-ID-REC-MIB        
	    dgs3324SR        			            FROM SW-PROJECTX-SRPRIMGMT-MIB;
	    
	  swL2MgmtMIB MODULE-IDENTITY
	    LAST-UPDATED "0007150000Z"
	    ORGANIZATION " "
	    CONTACT-INFO
	        "     "
	    DESCRIPTION
		    "The Structure of Layer 2 Network Management Information."
        ::= { dgs3324SR 2}
        
	MacAddress ::= OCTET STRING (SIZE (6))    -- a 6 octet address
                                                  -- in the
                                                  -- "canonical"
                                                  -- order, copy from RFC1493        

		VlanId					::= INTEGER (1..4094)
    	PortList                ::= OCTET STRING(SIZE (0..127))

    swL2DevMgmt                 OBJECT IDENTIFIER ::= { swL2MgmtMIB 1 }
    swL2PortMgmt                OBJECT IDENTIFIER ::= { swL2MgmtMIB 3 }
    swL2QOSMgmt 	            OBJECT IDENTIFIER ::= { swL2MgmtMIB 6 } 
    swL2PortSecurityMgmt		OBJECT IDENTIFIER ::= { swL2MgmtMIB 7 }
    swL2TrunkMgmt               OBJECT IDENTIFIER ::= { swL2MgmtMIB 9 }
    swL2MirrorMgmt              OBJECT IDENTIFIER ::= { swL2MgmtMIB 10 }
    swL2IGMPMgmt                OBJECT IDENTIFIER ::= { swL2MgmtMIB 11 }
    swL2TrafficMgmt             OBJECT IDENTIFIER ::= { swL2MgmtMIB 13 }
    swL2TrafficSegMgmt          OBJECT IDENTIFIER ::= { swL2MgmtMIB 14 }
    swL2MgmtMIBTraps            OBJECT IDENTIFIER ::= { swL2MgmtMIB 15 }






-- ********************************************************************
--  swL2DevMgmt             OBJECT IDENTIFIER ::= { swL2MgmtMIB 1 }
-- ********************************************************************

    swL2DevInfo             OBJECT IDENTIFIER ::= { swL2DevMgmt 1 }


    swDevInfoTotalNumOfPort OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The number of ports within this switch. This value is the sum
             of the ports within this switch."
        ::= { swL2DevInfo 1 }

    swDevInfoNumOfPortInUse OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The number of ports in this switch connected to the segment or
             the end stations."
        ::= { swL2DevInfo 2 }
        
    swDevModuleInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwDevModuleInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table contains the module information."
        ::= { swL2DevInfo 3 }
        
    swDevModuleInfoEntry OBJECT-TYPE
        SYNTAX  SwDevModuleInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of management information for each unit in the system."
--        INDEX  { swDevModuleInfoUnitID, swDevModuleInfoModuleID }
        INDEX  { swDevModuleInfoUnitID }
        ::= { swDevModuleInfoTable 1}

    SwDevModuleInfoEntry ::= 
        SEQUENCE {
            swDevModuleInfoUnitID
                INTEGER,
--            swDevModuleInfoModuleID
--                INTEGER,
            swDevModuleInfoModuleName
                DisplayString,
	    swDevModuleInfoReversion
                DisplayString,
            swDevModuleInfoSerial
                DisplayString, 
            swDevModuleInfoDescription
                DisplayString
        }
    
    swDevModuleInfoUnitID OBJECT-TYPE
        SYNTAX  INTEGER (1..12)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the specific unit ID in the stacking/chassis 
            table."
        ::= { swDevModuleInfoEntry 1 }

--    swDevModuleInfoModuleID OBJECT-TYPE
--        SYNTAX  INTEGER (1..4)
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the module ID of this unit." 
--        ::= { swDevModuleInfoEntry 2 }    
        
    swDevModuleInfoModuleName OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..12))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
               "A textual string containing name of the the module. "
        ::= { swDevModuleInfoEntry 3 }

    swDevModuleInfoReversion OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..4))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "A textual string containing reversion of the module." 
        ::= { swDevModuleInfoEntry 4 }
        
    swDevModuleInfoSerial OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..9))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "A textual string containing serial of the module." 
        ::= { swDevModuleInfoEntry 5 }
        
    swDevModuleInfoDescription  OBJECT-TYPE
        SYNTAX      DisplayString (SIZE (0..32))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
               "A textual string containing description of the
               module. "
        ::= { swDevModuleInfoEntry 6 }

    -- ***************************************************
    swL2DevCtrl             OBJECT IDENTIFIER ::= { swL2DevMgmt 2 }

    swL2DevCtrlStpState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object can be enabled or disabled spanning tree algorithm
            during runtime of the system."
        ::= { swL2DevCtrl 1 }

    swL2DevCtrlIGMPSnooping OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates layer 2 Internet Group Management 
            Protocol (IGMP) capture function is enabled or disabled."
        ::= { swL2DevCtrl 2 }
        
    swL2DevCtrlRmonState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object can be enabled or disabled RMON."
        ::= { swL2DevCtrl 3 }

    swL2DevCtrlCleanAllStatisticCounter OBJECT-TYPE
        SYNTAX  INTEGER {
               normal(1),
               active(2)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "As the object is set to active, all the statistic counters will
            be cleared. If set to normal, do nothing."
        ::= { swL2DevCtrl 4 }
    
    swL2DevCtrlVlanIdOfFDBTbl OBJECT-TYPE
        SYNTAX      VlanId
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
            "Indicates the VLAN ID which the Dot1dTpFdbTable belongs to ;  
            The default value is DEFAULT_VLAN_ID of system  ."
        ::= { swL2DevCtrl 5 }                    

    swL2MACNotifyState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
           "This object can enabled or disabled MAC Notification."
        ::= { swL2DevCtrl 6 }        

    swL2MACNotifyHistorySize OBJECT-TYPE
	    SYNTAX  INTEGER (1..500)
	    MAX-ACCESS  read-write
	    STATUS  current
	    DESCRIPTION
        "This object indicates the history size of variation MAC in address table. 
	         The default value is 1 ."
    ::= { swL2DevCtrl 7 }        
        
    swL2MACNotifyInterval OBJECT-TYPE
	    SYNTAX  INTEGER (1..2147483647)
	    MAX-ACCESS  read-write
	    STATUS  current
	    DESCRIPTION
	        "This object indicates the time interval in second for trigger the MAC notify message. "
	    ::= { swL2DevCtrl 8 }    
	
	swL2DevCtrlAsymVlanState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object can enabl or disabl asymmetric vlan 
            during runtime of the system."
        ::= { swL2DevCtrl 13 }   
    
    
    swL2DevCtrlTelnet   OBJECT IDENTIFIER ::= { swL2DevCtrl 14 }     
        
    swL2DevCtrlTelnetState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object control telnet status."
        ::= { swL2DevCtrlTelnet 1 } 
        
    swL2DevCtrlTelnetTcpPort OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object can designate tcp port.
             When telnet disable this object can't accessible."
        ::= { swL2DevCtrlTelnet 2 }                
           

    -- ***************************************************
    swL2DevAlarm             OBJECT IDENTIFIER ::= { swL2DevMgmt 3 }

    swL2DevAlarmNewRoot OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When the device has become the new root of the Spanning Tree,
            this object decide whether to send a new root trap."
        ::= { swL2DevAlarm 1 }

    swL2DevAlarmTopologyChange OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object determine to send a trap or not when the switch
            topology was changed. If the object is enabled(3),
            the topologyChange trap is sent by the device when any of its
            configured ports transitions from the Learning state to the
            Forwarding state, or from the Forwarding state to the Blocking
            state. For the same port tranition, the device doesn't send the
            trap if this object value is disabled or other."
        ::= { swL2DevAlarm 2 }
        
    swL2DevAlarmLinkChange OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object determine to send a trap or not when the link 
             was changed. If the object is enabled(3), the Link Change 
             trap is sent by the device when any of its ports link change.
             The device doesn't send the trap if this object value is 
             disabled or other."
        ::= { swL2DevAlarm 3 }

 
-- ********************************************************************
--  swL2PortMgmt            OBJECT IDENTIFIER ::= { swL2MgmtMIB 3 }
-- ********************************************************************

    swL2PortInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2PortInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A table that contains information about every port."
        ::= { swL2PortMgmt 1 }

    swL2PortInfoEntry OBJECT-TYPE
        SYNTAX  SwL2PortInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information for each port of the device."
        INDEX   { swL2PortInfoPortIndex }
        ::= { swL2PortInfoTable 1 }

    SwL2PortInfoEntry ::= 
        SEQUENCE {
            swL2PortInfoPortIndex
                INTEGER,
            swL2PortInfoUnitID
                INTEGER,
            swL2PortInfoType
                INTEGER,
            swL2PortInfoLinkStatus
                INTEGER,
            swL2PortInfoNwayStatus
                INTEGER
        }

    swL2PortInfoPortIndex OBJECT-TYPE
	    SYNTAX  INTEGER (0..65535)
	    MAX-ACCESS  read-only
	    STATUS  current
	    DESCRIPTION
	        "This object indicates the module's port number.(1..Max port
	        number in the module)"
    	::= { swL2PortInfoEntry 1 }

    swL2PortInfoUnitID OBJECT-TYPE
        SYNTAX INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS current
        DESCRIPTION
        	"Indicates ID of the unit in the system"
        ::= { swL2PortInfoEntry 2 }

    swL2PortInfoType OBJECT-TYPE
        SYNTAX  INTEGER {            
               portType-100Base-TX(1),
               portType-100Base-FX(2),
               portType-100Base-FL(3),              
               portType-1000Base-TX(4),
               portType-1000Base-SX(5),
               portType-1000Base-LX(6),
               portType-1000Base-SX-GBIC(7),
               portType-1000Base-LX-GBIC(8),
               portType-1000Base-TX-GBIC(9),
               portType-1000Base-1394(10),
               portType-1000Base-TX-GBIC-COMBO(11),
               portType-1000Base-none-GBIC(12),
               portType-1000Base-SX-MGBIC(13),
               portType-1000Base-LX-MGBIC(14),
               portType-1000Base-TX-MGBIC(15),
               portType-1000Base-none-MGBIC(16),
               portType-SIO(17),
               portType-10G(18),
               portType-none(19) 
              }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the connector type of this port."
        ::= { swL2PortInfoEntry 3 }

    swL2PortInfoLinkStatus OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               link-pass(2),
               link-fail(3)
               }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the port link status."
        ::= { swL2PortInfoEntry 4 }

    swL2PortInfoNwayStatus OBJECT-TYPE
        SYNTAX  INTEGER {
               other(0),
               empty(1),
               link-down(2),
               half-10Mbps(3),
               full-10Mbps(4),
               half-100Mbps(5),
               full-100Mbps(6),
               half-1Gigabps(7),
               full-1Gigabps(8),
               full-10Gigabps(9)
               }
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the port speed and duplex mode."
        ::= { swL2PortInfoEntry 5 }

        
    -- *******************************************************

    swL2PortCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2PortCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A table that contains control information about every port."
        ::= { swL2PortMgmt 2 }

    swL2PortCtrlEntry OBJECT-TYPE
        SYNTAX  SwL2PortCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of control information for each port of the device."
        INDEX  { swL2PortCtrlPortIndex }
        ::= { swL2PortCtrlTable 1 }

    SwL2PortCtrlEntry ::= 
        SEQUENCE {
            swL2PortCtrlPortIndex
                INTEGER,
            swL2PortCtrlUnitIndex
                INTEGER,
            swL2PortCtrlAdminState
                INTEGER,
            swL2PortCtrlNwayState
                INTEGER,
            swL2PortCtrlFlowCtrlState
                INTEGER,
            swL2PortCtrlLockState
                INTEGER,
            swL2PortCtrlMACNotifyState
                INTEGER    
--            swL2PortCtrlMulticastfilter
--                INTEGER                            
        }

    swL2PortCtrlPortIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the module's port number.(1..Max port
            number in the module)"
        ::= { swL2PortCtrlEntry 1 }

    swL2PortCtrlUnitIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Indicates ID of the unit in the device"
        ::= { swL2PortCtrlEntry 2 }

    swL2PortCtrlAdminState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object decide the port enabled or disabled."
        ::= { swL2PortCtrlEntry 3 }

    swL2PortCtrlNwayState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               nway-enabled(2),
               nway-disabled-10Mbps-Half(3),
               nway-disabled-10Mbps-Full(4),
               nway-disabled-100Mbps-Half(5),
               nway-disabled-100Mbps-Full(6),
               nway-disabled-1Gigabps-Half(7),
               nway-disabled-1Gigabps-Full(8),
               nway-disabled-1Gigabps-Full-master(9),
               nway-disabled-1Gigabps-Full-slave(10)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Chose the port speed, duplex mode, and N-Way function mode."
        ::= { swL2PortCtrlEntry 4 }

    swL2PortCtrlFlowCtrlState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The flow control mechanism is different between full duplex
            mode and half duplex mode. For half duplex mode, the jamming 
            signal is asserted. For full duplex mode, IEEE 802.3x flow 
            control function sends PAUSE frames and receives PAUSE frames."
        ::= { swL2PortCtrlEntry 5 }
        
    swL2PortCtrlLockState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object decide the port is locked or not."
        ::= { swL2PortCtrlEntry 6 } 
    
    swL2PortCtrlMACNotifyState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object set each poet MAC notification state."
        ::= { swL2PortCtrlEntry 7 }    

--    swL2PortCtrlMulticastfilter OBJECT-TYPE
--        SYNTAX  INTEGER {
--    		   other(0), 
--               forward-all-groups(1),
--               forward-unregistered-groups(2),
--               filter-unregistered-groups(3)

--              }
--        MAX-ACCESS  read-write
--        STATUS  current
--        DESCRIPTION
--            "This object decide the multicast packets filtering mode on this port . "   
--          ::= { swL2PortCtrlEntry 8 }  
	
    swL2PortCtrlJumboFrame OBJECT-TYPE
        SYNTAX  INTEGER {
				other(1),
				disabled(2),
				enabled(3)
              }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object configure the switch's jumbo frame settings."   
          ::= { swL2PortMgmt 3 }                  

--    swL2PortCableDiagnosisTable OBJECT-TYPE
--        SYNTAX  SEQUENCE OF SwL2PortCableDiagnosisEntry
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--            "A table that contains cable situation about every port."
--        ::= { swL2PortMgmt 4 }
--
--    swL2PortCableDiagnosisEntry OBJECT-TYPE
--        SYNTAX  SwL2PortCableDiagnosisEntry
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--            "A list of cable situation for each port of the device."
--        INDEX   { swL2PortCableDiagnosisPortIndex, swL2PortCableDiagnosisPairIndex }
--        ::= { swL2PortCableDiagnosisTable 1 }
--
--    SwL2PortCableDiagnosisEntry ::= 
--        SEQUENCE {
--            swL2PortCableDiagnosisPortIndex
--                INTEGER,
--            swL2PortCableDiagnosisPairIndex
--                INTEGER,
--            swL2PortCableDiagnosisCableStatus
--                INTEGER,
--            swL2PortCableDiagnosisPairStatus
--                INTEGER,
--            swL2PortCableDiagnosisPairLength
--                INTEGER
--            swL2PortCableDiagnosisPairLengthInaccuracy
--            	INTEGER
--        }
--
--    swL2PortCableDiagnosisPortIndex OBJECT-TYPE
--        SYNTAX  INTEGER (0..65535)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--        "This object indicates the module's port number.(1..Max port
--        number in the module)"
--    ::= { swL2PortCableDiagnosisEntry 1 }
--
--    swL2PortCableDiagnosisPairIndex OBJECT-TYPE
--        SYNTAX INTEGER (1..4)
--        MAX-ACCESS  read-only
--        STATUS current
--        DESCRIPTION
--            "Indicates pair index of the port.
--             The pair 1 means the pin 3 and 6 of the connector.
--             The pair 2 means the pin 1 and 2 of the connector.
--             The pair 3 means the pin 7 and 8 of the connector.
--             The pair 4 means the pin 4 and 5 of the connector."
--    ::= { swL2PortCableDiagnosisEntry 2 }
--
--    swL2PortCableDiagnosisCableStatus OBJECT-TYPE
--        SYNTAX  INTEGER {
--               ok(0),
--               open(1),
--               short(2),
--               open-short(3),
--               not-support(4),
--               unknown(5)
--               }
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the cable status."
--    ::= { swL2PortCableDiagnosisEntry 3 }
--
--    swL2PortCableDiagnosisPairStatus OBJECT-TYPE
--        SYNTAX  INTEGER {
--               ok(0),
--               open(1),
--               short(2),
--               fail(3),
--               not-supported(4),
--               unknown(5)
--               }
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the status of the pair."
--        ::= { swL2PortCableDiagnosisEntry 3 }
--   
--    swL2PortCableDiagnosisPairLength OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the approx. length or length to failure of 
--            the pair. The value is a unit of meter."
--        ::= { swL2PortCableDiagnosisEntry 4 }
--
--    swL2PortCableDiagnosisPairLengthInaccuracy OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the inaccuracy of Pair length. The
--             value is a unit of meter."
--        ::= { swL2PortCableDiagnosisEntry 6 }        

-- ********************************************************************
--        swL2QOSMgmt               OBJECT IDENTIFIER ::= { swL2MgmtMIB 6 }
-- ********************************************************************

	swL2QOSBandwidthControlTable OBJECT-TYPE
		SYNTAX  SEQUENCE OF SwL2QOSBandwidthControlEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "."
		::= { swL2QOSMgmt 1 }
	
	swL2QOSBandwidthControlEntry OBJECT-TYPE
		SYNTAX  SwL2QOSBandwidthControlEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "A list of information contained in swL2QOSBandwidthControlTable."
		INDEX   { swL2QOSBandwidthPortIndex }
		::= { swL2QOSBandwidthControlTable 1 }
	
	SwL2QOSBandwidthControlEntry ::=
		SEQUENCE {
		  swL2QOSBandwidthPortIndex
		      INTEGER,
		  swL2QOSBandwidthRxRate
		      INTEGER,
		  swL2QOSBandwidthTxRate
		      INTEGER   
		}
	
	swL2QOSBandwidthPortIndex OBJECT-TYPE
		SYNTAX  INTEGER (1..768)
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "Indicates the port ."
		::= { swL2QOSBandwidthControlEntry 1 }
	
	swL2QOSBandwidthRxRate OBJECT-TYPE
		SYNTAX  INTEGER (1..10000)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates RX Rate(Mbit/sec) of the specifed port. Value 10000 means no limit."
		::= { swL2QOSBandwidthControlEntry 2 }
	
	swL2QOSBandwidthTxRate OBJECT-TYPE
		SYNTAX  INTEGER (1..10000)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates TX Rate(Mbit/sec) of the specifed port. Value 10000 means no limit."
		::= { swL2QOSBandwidthControlEntry 3 }				
	
    -- *******************************************************
    
	swL2QOSSchedulingTable OBJECT-TYPE
		SYNTAX  SEQUENCE OF SwL2QOSSchedulingEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "."
		::= { swL2QOSMgmt 2 }
	
	swL2QOSSchedulingEntry OBJECT-TYPE
		SYNTAX  SwL2QOSSchedulingEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "A list of information contained in swL2QOSSchedulingTable."
		INDEX   { swL2QOSSchedulingClassIndex }
		::= { swL2QOSSchedulingTable 1 }
	
	SwL2QOSSchedulingEntry ::=
		SEQUENCE {
		  swL2QOSSchedulingClassIndex
		      INTEGER,
		  swL2QOSSchedulingMaxPkts
		      INTEGER,    
		  swL2QOSSchedulingMechanism
		      INTEGER		     
		}
	
	swL2QOSSchedulingClassIndex OBJECT-TYPE
		SYNTAX  INTEGER (0..7)
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "Indicates the hardware queue number."
		::= { swL2QOSSchedulingEntry 1 }
	
	swL2QOSSchedulingMaxPkts OBJECT-TYPE
		SYNTAX  INTEGER (0..15)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates the maximum number of packets the hardware priority queue will be allowed
		      to transmit before allowing the next lowest priority queue  to transmit its packets.
		      a value between 0 and 15 can be specified."
		::= { swL2QOSSchedulingEntry 2 }	
		
	swL2QOSSchedulingMechanism OBJECT-TYPE
		SYNTAX	INTEGER {
               strict(1),
               roundrobin(2),
               weightfair(3)
               }
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "Indicates the mechanism of QOS scheduling."
		::= { swL2QOSSchedulingEntry 3 }

    -- *******************************************************
    
	swL2QOS8021pUserPriorityTable OBJECT-TYPE
		SYNTAX  SEQUENCE OF SwL2QOS8021pUserPriorityEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "."
		::= { swL2QOSMgmt 3 }
	
	swL2QOS8021pUserPriorityEntry OBJECT-TYPE
		SYNTAX  SwL2QOS8021pUserPriorityEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "A list of information contained in swL2QOS8021pUserPriorityTable."
		INDEX   { swL2QOS8021pUserPriorityIndex }
		::= { swL2QOS8021pUserPriorityTable 1 }
	
	SwL2QOS8021pUserPriorityEntry ::=
		SEQUENCE {
		  swL2QOS8021pUserPriorityIndex
		      INTEGER,
		  swL2QOS8021pUserPriorityClass
		      INTEGER
		}
	
	swL2QOS8021pUserPriorityIndex OBJECT-TYPE
		SYNTAX  INTEGER (0..7)
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "The 802.1p user priority  ."
		::= { swL2QOS8021pUserPriorityEntry 1 }
	
	swL2QOS8021pUserPriorityClass OBJECT-TYPE
		SYNTAX  INTEGER (0..6)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "The number of the switch's hardware priority queue. The switch has four hardware 
		       priority queues available. They are numbered between 0 (the lowest priority)
		        and 6 (the highest priority)."
		::= { swL2QOS8021pUserPriorityEntry 2 }

    -- *******************************************************
    
	swL2QOS8021pDefaultPriorityTable OBJECT-TYPE
		SYNTAX  SEQUENCE OF SwL2QOS8021pDefaultPriorityEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "."
		::= { swL2QOSMgmt 4 }
	
	swL2QOS8021pDefaultPriorityEntry OBJECT-TYPE
		SYNTAX  SwL2QOS8021pDefaultPriorityEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "A list of information contained in swL2QOS8021pDefaultPriorityTable."
		INDEX   { swL2QOS8021pDefaultPriorityIndex }
		::= { swL2QOS8021pDefaultPriorityTable 1 }
	
	SwL2QOS8021pDefaultPriorityEntry ::=
		SEQUENCE {
		  swL2QOS8021pDefaultPriorityIndex
		      INTEGER,
		  swL2QOS8021pDefaultPriority
		      INTEGER
		}
	
	swL2QOS8021pDefaultPriorityIndex OBJECT-TYPE
		SYNTAX  INTEGER (1..768)
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "Indicates the port number ."
		::= { swL2QOS8021pDefaultPriorityEntry 1 }
	
	swL2QOS8021pDefaultPriority OBJECT-TYPE
		SYNTAX  INTEGER (0..7)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "The priority value to assign to untagged packets received by the
		       switch ports on the switch.."
		::= { swL2QOS8021pDefaultPriorityEntry 2 }
		
	swL2QOSSchedulingMechanismCtrl OBJECT-TYPE
		SYNTAX	INTEGER {
               strict(1),
               roundrobin(2),
               weightfair(3)
               }
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "This object can control QOS scheduling Mechanism."
		::= { swL2QOSMgmt 5 }	
	
	swL2QOSHolPreventionCtrl OBJECT-TYPE
		SYNTAX	INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Control QOS Hol Prevention"
		::= { swL2QOSMgmt 6 }		
		
-- ********************************************************************
--        swL2PortSecurityMgmt      OBJECT IDENTIFIER ::= { swL2MgmtMIB 7 }
-- ********************************************************************
	
	swL2PortSecurityControlTable OBJECT-TYPE
		SYNTAX  SEQUENCE OF SwL2PortSecurityControlEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "port security feature which controls the address leaning capability and the
		      traffic forwarding decision. Each port can have this function enabled or disabled.
		      When it is enabled and a number is given said N, which allows N addresses to be
		      learned at this port, the first N learned addresses are locked at this port as
		      static entry. When the learned addresses number reach N, any coming packet with
		      not learned source addresses are discarded (e.g. dropped) and no more new addresses
		      can be learned at this port."
		::= { swL2PortSecurityMgmt 1 }
	
	swL2PortSecurityControlEntry OBJECT-TYPE
		SYNTAX  SwL2PortSecurityControlEntry
		MAX-ACCESS  not-accessible
		STATUS  current
		DESCRIPTION
		      "A list of information contained in swL2PortSecurityControlTable."
		INDEX   { swL2PortSecurityPortIndex }
		::= { swL2PortSecurityControlTable 1 }
	
	SwL2PortSecurityControlEntry ::=
		SEQUENCE {
		  swL2PortSecurityPortIndex
		      INTEGER,
		  swL2PortSecurityMaxLernAddr
		      INTEGER,
		  swL2PortSecurityMode
		      INTEGER,
		  swL2PortSecurityAdmState
		      INTEGER
		}
	
	swL2PortSecurityPortIndex OBJECT-TYPE
		SYNTAX  INTEGER (1..768)
		MAX-ACCESS  read-only
		STATUS  current
		DESCRIPTION
		      "Indicates the secured port to lock address learning."
		::= { swL2PortSecurityControlEntry 1 }
	
	swL2PortSecurityMaxLernAddr OBJECT-TYPE
		SYNTAX  INTEGER (0..65535)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates allowable number of addresses to be learned at this port."
		::= { swL2PortSecurityControlEntry 2 }
	
	swL2PortSecurityMode OBJECT-TYPE
		SYNTAX  INTEGER {
		           other(1),
                   permanent(2),
                   deleteOnTimeout(3),
                   deleteOnReset(4)
		      }
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates the mode of locking address.
		      In deleteOnTimeout(3) mode - the locked addresses can be aged out after aging timer
		                                   expire. In this mode, when the locked address is aged
		                                   out, the number of address can be learned has to be
		                                   increased by one.
		      In deleteOnReset(4) mode - never age out the locked addresses unless restart
		                                   the system to prevent from port movement or intrusion."
		::= { swL2PortSecurityControlEntry 3 }
	
	swL2PortSecurityAdmState OBJECT-TYPE
		SYNTAX  INTEGER {
		          other(1),
		          enable(2),
		          disable(3)
		      }
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates administration state of locking address."
		::= { swL2PortSecurityControlEntry 4 }


	swL2PortSecurityDelCtrl OBJECT IDENTIFIER ::= { swL2PortSecurityMgmt 2 }
	
	swL2PortSecurityDelVlanName OBJECT-TYPE
		SYNTAX	DisplayString (SIZE (0..32))  
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates vlan name."
		::= { swL2PortSecurityDelCtrl 1 }	
	        
    swL2PortSecurityDelPort OBJECT-TYPE
		SYNTAX  INTEGER (1..768)
		MAX-ACCESS  read-write
		STATUS  current
		DESCRIPTION
		      "Indicates the port."
		::= { swL2PortSecurityDelCtrl 2 }    
	
	swL2PortSecurityDelMacAddress OBJECT-TYPE
        SYNTAX  MacAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "Specifies MAC address."
        ::= { swL2PortSecurityDelCtrl 3 }   	
        
    swL2PortSecurityDelActivity  OBJECT-TYPE
		SYNTAX INTEGER  {
			none(1),
			start(2)
        }
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"."
        ::= { swL2PortSecurityDelCtrl 4 }    	
	

-- ********************************************************************
--  swL2TrunkMgmt           OBJECT IDENTIFIER ::= { swL2MgmtMIB 9 }
-- ********************************************************************

    swL2TrunkMaxSupportedEntries OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Maximum number of entries in the trunk configuration table
            (swL2TrunkCtrlTable)."
        ::= { swL2TrunkMgmt 1 }

    swL2TrunkCurrentNumEntries OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Current actived number of entries in the trunk configuration
            table."
        ::= { swL2TrunkMgmt 2 }

    swL2TrunkCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2TrunkCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table specifys which ports group a set of ports(up to 8)
            into a single logical link."
        ::= { swL2TrunkMgmt 3 }

    swL2TrunkCtrlEntry OBJECT-TYPE
        SYNTAX  SwL2TrunkCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information specifies which ports group a set of 
            ports(up to 8) into a single logical link."
        INDEX  { swL2TrunkIndex }
        ::= { swL2TrunkCtrlTable 1 }

    SwL2TrunkCtrlEntry ::= 
        SEQUENCE {
            swL2TrunkIndex
                INTEGER,
            swL2TrunkName
                DisplayString,
            swL2TrunkMasterPort
                INTEGER,
            swL2TrunkMember
                PortList,
            swL2TrunkFloodingPort
                INTEGER,
            swL2TrunkType
                INTEGER,        
            swL2TrunkState
                RowStatus
        }

    swL2TrunkIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The index of logical port trunk. The trunk group number depend
            on the existence of unit and module."
        ::= { swL2TrunkCtrlEntry 1 }

    swL2TrunkName OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..12))
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "The name of logical port trunk."
        ::= { swL2TrunkCtrlEntry 2 }


    swL2TrunkMasterPort OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "The object indicates the master port number of the port trunk
            entry. When using Port Trunk, you can not configure the other 
            ports of the group except the master port.
            Their configuration must be same as the master port (e.g. speed,
            duplex, enabled/disabled, flow control, and so on)." 
        ::= { swL2TrunkCtrlEntry 3 }

    swL2TrunkMember OBJECT-TYPE
        SYNTAX  PortList
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "Indicate how many number of ports is included in this Trunk.
            The trunk port number depend on the existence of module.
            The maximum number of ports is 8 for one trunks."
        ::= { swL2TrunkCtrlEntry 4 }

    swL2TrunkFloodingPort OBJECT-TYPE
        SYNTAX  INTEGER (1..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The object indicates the flooding port number of the port trunk
            entry. The first port of the trunk is implicitly configured to 
            be the flooding port." 
        ::= { swL2TrunkCtrlEntry 5 }
    
    swL2TrunkType OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                static(2),
                lacp(3)
          	  }
       	MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
            "This object indicated that type of the trunk group.
            static : is static trunk group
            lacp : is LACP trunk group . "   			
        ::= { swL2TrunkCtrlEntry 6 }          
    
    swL2TrunkState OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
             "This object indicates the status of this entry."
        ::= { swL2TrunkCtrlEntry 7 }
        
    swL2TrunkAlgorithm OBJECT-TYPE
        SYNTAX  INTEGER {
                other(1),
                mac-source(2),
                mac-destination(3),
                mac-source-dest(4),
                ip-source(5),
                ip-destination(6),
                ip-source-dest(7)
            }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object configures to part of the packet examined by the 
            switch when selecting the egress port for transmitting 
            load-sharing data."
        ::= { swL2TrunkMgmt 4 }    	    

-- **************************************************************************
--  swPortMirrorPackage   	           OBJECT IDENTIFIER ::= { swL2MgmtMIB 10 }           
-- **************************************************************************
	
	swL2MirrorLogicTargetPort OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates switch which port will sniff another 
            port. A trunk port member cannot be configured as a target 
            Snooping port. The port number is the sequential (logical) 
            number which is also applied to bridge MIB, etc."
        ::= { swL2MirrorMgmt 1 }

    swL2MirrorPortSourceIngress OBJECT-TYPE
        SYNTAX  PortList
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The represent the ingress into the source port packet to 
            sniffed."
        ::= { swL2MirrorMgmt 2 }
        
    swL2MirrorPortSourceEgress OBJECT-TYPE
        SYNTAX  PortList
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The represent the egress from the source port packet to 
            sniffed."
        ::= { swL2MirrorMgmt 3 }

    swL2MirrorPortState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the port mirroring state.
 
            other(1) - this entry is currently in use but the conditions 
                under which it will remain so are different from each of the
                following values.
            disabled(2) - writing this value to the object, and then the
                corresponding entry will be removed from the table.
            enabled(3) - this entry is reside in the table."
        ::= { swL2MirrorMgmt 4 }

        
-- ********************************************************************
--  swL2IGMPMgmt            OBJECT IDENTIFIER ::= { swL2MgmtMIB 11 }
-- ********************************************************************

    swL2IGMPMaxSupportedVlans OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Maximum number of Vlans in the layer 2 IGMP control table
            (swL2IGMPCtrlTable)."
        ::= { swL2IGMPMgmt 1 }

    swL2IGMPMaxIpGroupNumPerVlan OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "Maximum number of multicast ip group per Vlan in the layer 2 
            IGMP information table (swL2IGMPQueryInfoTable)."
        ::= { swL2IGMPMgmt 2 }

--    swL2IGMPLastQueryIPAddr OBJECT-TYPE
--        SYNTAX  IpAddress
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the ip address of last send IGMP query
--            packet."
--        ::= { swL2IGMPMgmt 3 }

    swL2IGMPCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2IGMPCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "The table controls the Vlan's IGMP function. Its scale depends
            on current VLAN state (swL2VlanInfoStatus). If VLAN is disabled
            mode, there is only one entry in the table, with index 1. If 
            VLAN is in Port-Base or 802.1q mode, the number of entries can 
            be up to 12, with index range from 1 to 12."
        ::= { swL2IGMPMgmt 3 }

    swL2IGMPCtrlEntry OBJECT-TYPE
        SYNTAX  SwL2IGMPCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "The entry in IGMP control table (swL2IGMPCtrlTable). The entry
            is effective only when IGMP capture switch 
            (swL2DevCtrlIGMPSnooping) is enabled."
        INDEX  { swL2IGMPCtrlVid }
        ::= { swL2IGMPCtrlTable 1 }

    SwL2IGMPCtrlEntry ::= 
        SEQUENCE {
--            swL2IGMPCtrlIndex
--                INTEGER,
            swL2IGMPCtrlVid
                INTEGER,
            swL2IGMPQueryInterval
                INTEGER,
            swL2IGMPMaxResponseTime
                INTEGER,
            swL2IGMPRobustness
                INTEGER,
            swL2IGMPLastMemberQueryInterval
                INTEGER,
            swL2IGMPHostTimeout
                INTEGER,
            swL2IGMPRouteTimeout
                INTEGER,
            swL2IGMPLeaveTimer
                INTEGER,
            swL2IGMPQueryState
                INTEGER,
            swL2IGMPCurrentState
                INTEGER,
            swL2IGMPCtrlState
                INTEGER,
            swL2IGMPFastLeaveState
                INTEGER
        }

--    swL2IGMPCtrlIndex OBJECT-TYPE
--        SYNTAX  INTEGER (1..12)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the IGMP control entry number.Its scale
--            depends on current VLAN state (swL2VlanInfoStatus). If VLAN is
--            disabled, there is only one entry in the table, with index 1.
--            If VLAN is in Port-Base or 802.1q mode, the number of entries
--            is 12, with index range from 1 to 12."
--        ::= { swL2IGMPCtrlEntry 1 }

    swL2IGMPCtrlVid OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the IGMP control entry's VLAN id. If VLAN
            is disabled, the Vid is always 0 and cannot be changed by
            management users. If VLAN is in Port-Base mode, the Vid is
            arranged from 1 to 12, fixed form. If VLAN is in 802.1q mode,  
            the Vid setting can vary from 1 to 4094 by management user, and 
            the Vid in each entry must be unique in the IGMP Control Table."
        ::= { swL2IGMPCtrlEntry 1 }

    swL2IGMPQueryInterval OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The frequency at which IGMP Host-Query packets are
             transmitted on this switch."
        DEFVAL      { 125 }
        ::= { swL2IGMPCtrlEntry 2 }
        
    swL2IGMPMaxResponseTime OBJECT-TYPE
        SYNTAX INTEGER (1..25)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The maximum query response time on this switch."
        DEFVAL      { 10 }
        ::= { swL2IGMPCtrlEntry 3 }
        
    swL2IGMPRobustness OBJECT-TYPE
        SYNTAX INTEGER (1..255)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The Robustness Variable allows tuning for the expected
             packet loss on a subnet. If a subnet is expected to be
             lossy, the Robustness Variable may be increased. IGMP is
             robust to (Robustness Variable-1) packet losses."
        DEFVAL      { 2 }
        ::= { swL2IGMPCtrlEntry 4 }

    swL2IGMPLastMemberQueryInterval OBJECT-TYPE
        SYNTAX INTEGER (1..25)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The Last Member Query Interval is the Max Response Time
            inserted into Group-Specific Queries sent in response to
            Leave Group messages, and is also the amount of time between
            Group-Specific Query messages."
        DEFVAL      { 1 }
        ::= { swL2IGMPCtrlEntry 5 }
        
    swL2IGMPHostTimeout OBJECT-TYPE
        SYNTAX  INTEGER (1..16711450)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The timer value for sending IGMP query packet when none was 
            sent by the host in the LAN. The timer works in per-VLAN basis.
            Our device will be activated to send the query message if the 
            timer is expired. Please reference RFC2236-1997."
        DEFVAL  { 260 }
        ::= { swL2IGMPCtrlEntry 6 }

    swL2IGMPRouteTimeout OBJECT-TYPE
        SYNTAX  INTEGER (1..16711450)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "The Router Timeout is how long a host must wait after hearing 
            a Query before it may send any IGMPv2 messages."
        DEFVAL  { 260 }
        ::= { swL2IGMPCtrlEntry 7 }

    swL2IGMPLeaveTimer OBJECT-TYPE
        SYNTAX  INTEGER (1..16711450)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "When a querier receives a Leave Group message for a group that
            has group members on the reception interface, it sends
            Group-Specific Queries every swL2IGMPLeaveTimer to the group 
            being left."
        DEFVAL  { 1 }
        ::= { swL2IGMPCtrlEntry 8 }
    
    swL2IGMPQueryState OBJECT-TYPE
        SYNTAX INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "This object decide the IGMP query enabled or disabled."
        ::= { swL2IGMPCtrlEntry 9 }
        
    swL2IGMPCurrentState OBJECT-TYPE
        SYNTAX INTEGER {
               other(1),
               querier(2),
               non-querier(3)
               }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "This object indicates the current IGMP query state."
        ::= { swL2IGMPCtrlEntry 10 }
        
    swL2IGMPCtrlState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disable(2),
               enable(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the status of this entry.

            other(1) - this entry is currently in use but the conditions under
                which it will remain so are different from each of the following
                values.
            disable(2) - IGMP funtion is disabled for this entry.
            enable(3) -  IGMP funtion is enabled for this entry."
        ::= { swL2IGMPCtrlEntry 11 }
        
    swL2IGMPFastLeaveState OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disable(2),
               enable(3)
               }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object indicates the fast_leave status of this entry.

            other(1) - this entry is currently in use but the conditions under
                which it will remain so are different from each of the following
                values.
            disable(2) - IGMP fast-leave funtion is disabled for this entry.
            enable(3) -  IGMP fast-leave funtion is enabled for this entry."
        ::= { swL2IGMPCtrlEntry 12 }


    swL2IGMPQueryInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2IGMPQueryInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "The table contains the number current IGMP query packets which
            is captured by this device, as well as the IGMP query packets
            sent by the device."
        ::= { swL2IGMPMgmt 4 }

    swL2IGMPQueryInfoEntry OBJECT-TYPE
        SYNTAX  SwL2IGMPQueryInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Information about current IGMP query information, provided that
            swL2DevCtrlIGMPSnooping and swL2IGMPCtrState of associated VLAN
            entry are all enabled."
        INDEX  { swL2IGMPInfoVid }
        ::= { swL2IGMPQueryInfoTable 1 }

    SwL2IGMPQueryInfoEntry ::= 
        SEQUENCE {
--            swL2IGMPInfoIndex
--                INTEGER,
            swL2IGMPInfoVid
                INTEGER,
            swL2IGMPInfoQueryCount
                INTEGER,
            swL2IGMPInfoTxQueryCount
                INTEGER
        }

--    swL2IGMPInfoIndex OBJECT-TYPE
--        SYNTAX  INTEGER (1..12)
--        MAX-ACCESS  read-only
--        STATUS  current
--        DESCRIPTION
--            "This object indicates the IGMP query information entry 
--            number. It could be up to 12 entries, depending on current 
--            number of VLAN entries."
--        ::= { swL2IGMPQueryInfoEntry 1 }

    swL2IGMPInfoVid OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the Vid of associated IGMP info table
            entry. It follows swL2IGMPCtrlVid in the associated entry of 
            IGMP control table (swL2IGMPCtrlTable)."
        ::= { swL2IGMPQueryInfoEntry 1 }

    swL2IGMPInfoQueryCount OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the number of query packets received 
            since the IGMP function enabled, in per-VLAN basis."
        ::= { swL2IGMPQueryInfoEntry 2 }

    swL2IGMPInfoTxQueryCount OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the send count of IGMP query messages, in
            per-VLAN basis. In case of IGMP timer expiration, the switch
            sends IGMP query packets to related VLAN member ports and
            increment this object by 1."
        ::= { swL2IGMPQueryInfoEntry 3 }

    swL2IGMPInfoTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2IGMPInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "The table containing current IGMP information which captured by
            this device, provided that swL2DevCtrlIGMPSnooping and
            swL2IGMPCtrlState of associated VLAN entry are all enabled. Note
            that the priority of IGMP table entries is lower than Filtering
            Table, i.e. if there is a table hash collision between the 
            entries of IGMP Table and Filtering Table inside the switch H/W
            address table, then Filtering Table entry overwrite the 
            colliding entry of IGMP Table. See swL2FilterMgmt description 
            also."
        ::= { swL2IGMPMgmt 5 }

    swL2IGMPInfoEntry OBJECT-TYPE
        SYNTAX  SwL2IGMPInfoEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "Information about current IGMP information which captured by 
            this device, provided that swL2DevCtrlIGMPSnooping and 
            swL2IGMPCtrlState of associated VLAN entry are all enabled."
        INDEX  { swL2IGMPVid , swL2IGMPGroupIpAddr }
        ::= { swL2IGMPInfoTable 1 }

    SwL2IGMPInfoEntry ::= 
        SEQUENCE {
            swL2IGMPVid
                INTEGER,
            swL2IGMPGroupIpAddr
                IpAddress,
            swL2IGMPMacAddr
                MacAddress,
            swL2IGMPPortMap
                PortList,
            swL2IGMPIpGroupReportCount
                INTEGER
        }

    swL2IGMPVid OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the Vid of individual IGMP table entry. 
            It shows the Vid of IGMP report information captured on 
            network."
        ::= { swL2IGMPInfoEntry 1 }

    swL2IGMPGroupIpAddr OBJECT-TYPE
        SYNTAX  IpAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object is identify group ip address which is captured from
            IGMP packet, in per-Vlan basis."
        ::= { swL2IGMPInfoEntry 2 }

    swL2IGMPMacAddr OBJECT-TYPE
        SYNTAX  MacAddress
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object is identify mac address which is corresponding
            to swL2IGMPGroupIpAddr, in per-Vlan basis."
        ::= { swL2IGMPInfoEntry 3 }

    swL2IGMPPortMap OBJECT-TYPE
        SYNTAX  PortList
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates which ports are belong to the same 
            multicast group, in per-Vlan basis. Each multicast group has a
            octect string to indicate with port map. The most significant
            bit represents the lowest numbered port, and the least 
            significant bit represents the highest numbered port. Thus, each
            port of the switch is represented by a single bit within the 
            value of this object. If that bit has a value of '1' then that 
            port is included in the set of ports; the port is not included 
            if its bit has a value of '0'(Note that the setting of the bit 
            corresponding to the port from which a frame is received is 
            irrelevant). The 4 octets is represent one unit port according 
            its logic port. If the unit less 32 port, the other port don't 
            care just fill zero."
        ::= { swL2IGMPInfoEntry 4 }

    swL2IGMPIpGroupReportCount OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicate how much report packet was receive by our
            device corresponding with this entry from IGMP function enabled,
            in per-Vlan basis." 
        ::= { swL2IGMPInfoEntry 5 }


-- ********************************************************************
--  swL2TrafficMgmt           OBJECT IDENTIFIER ::= { swL2MgmtMIB 12 }
-- ********************************************************************

    swL2TrafficCtrlTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2TrafficCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table specifys the storm traffic control configuration."
        ::= { swL2TrafficMgmt 1 }

    swL2TrafficCtrlEntry OBJECT-TYPE
        SYNTAX  SwL2TrafficCtrlEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information specifies the storm traffic control 
            configuration."
        INDEX  { swL2TrafficCtrlGroupIndex }
        ::= { swL2TrafficCtrlTable 1 }

    SwL2TrafficCtrlEntry ::= 
        SEQUENCE {
            swL2TrafficCtrlGroupIndex
                INTEGER,
            swL2TrafficCtrlUnitIndex
                INTEGER,
            swL2TrafficCtrlBMStromthreshold
                INTEGER,
            swL2TrafficCtrlBcastStromCtrl
                INTEGER,
            swL2TrafficCtrlMcastStromCtrl
                INTEGER,
            swL2TrafficCtrlDlfStromCtrl
                INTEGER
        }

    swL2TrafficCtrlGroupIndex OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The index of logical port trunk. The trunk group number depend
            on the existence of unit and module."
        ::= { swL2TrafficCtrlEntry 1 }
        
    swL2TrafficCtrlUnitIndex OBJECT-TYPE
        SYNTAX INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS current
        DESCRIPTION
            "Indicates ID of the unit in the device"
        ::= { swL2TrafficCtrlEntry 2 }

    swL2TrafficCtrlBMStromthreshold OBJECT-TYPE
        SYNTAX  INTEGER (0..255)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
            "This object to decide how much thousand packets per second
            broadcast/multicast (depend on swL2TrafficCtrlBcastStromCtrl,
            swL2TrafficCtrlMcastStromCtrl or swL2TrafficCtrlDlfStromCtrl
            objects whether is enabled) will active storm control. Whenever
            a port reaches its configured amount of packets in the one 
            second time interval, the device will start dropping that type 
            of packet, until the time interval has expired. Once the time 
            interval has expired, the device will start forwarding that type
            of packet."
        ::= { swL2TrafficCtrlEntry 3 }


    swL2TrafficCtrlBcastStromCtrl OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
       MAX-ACCESS  read-write
       STATUS  current
       DESCRIPTION
           "This object indicates broadcast storm control function is 
           enabled or disabled." 
        ::= { swL2TrafficCtrlEntry 4 }

    swL2TrafficCtrlMcastStromCtrl OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
       MAX-ACCESS  read-write
       STATUS  current
       DESCRIPTION
           "This object indicates multicast storm control function is 
           enabled or disabled."
        ::= { swL2TrafficCtrlEntry 5 }

    swL2TrafficCtrlDlfStromCtrl OBJECT-TYPE
        SYNTAX  INTEGER {
               other(1),
               disabled(2),
               enabled(3)
               }
       MAX-ACCESS  read-write
       STATUS  current
       DESCRIPTION
           "This object indicates destination lookup fail function is 
           enabled or disabled." 
        ::= { swL2TrafficCtrlEntry 6 }


-- ********************************************************************
--  swL2TrafficSegMgmt           OBJECT IDENTIFIER ::= { swL2MgmtMIB 14 }
-- ********************************************************************
	 swL2TrafficSegTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF SwL2TrafficSegEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "This table specifys the port just can forward traffic to the 
            specific port list."
        ::= { swL2TrafficSegMgmt 1 }

    swL2TrafficSegEntry OBJECT-TYPE
        SYNTAX  SwL2TrafficSegEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
            "A list of information specifies the port with its traffic 
            forward list."
        INDEX  { swL2TrafficSegPort }
        ::= { swL2TrafficSegTable 1 }

    SwL2TrafficSegEntry ::= 
        SEQUENCE {
            swL2TrafficSegPort
                INTEGER,
            swL2TrafficSegForwardPorts
                PortList
        }

    swL2TrafficSegPort OBJECT-TYPE
        SYNTAX  INTEGER (0..65535)
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "The port number of the logical port."
        ::= { swL2TrafficSegEntry 1 }
        
    swL2TrafficSegForwardPorts OBJECT-TYPE
        SYNTAX PortList
        MAX-ACCESS  read-write
        STATUS current
        DESCRIPTION
            "The port list that the specific port can forward traffic."
        ::= { swL2TrafficSegEntry 2 }
  
  
  
-- ******************************************************************************************	
--  Layer 2  Trap
-- ******************************************************************************************	
     
        
	swL2Notify	OBJECT IDENTIFIER ::= { swL2MgmtMIBTraps 1 }  
	  
	  
	  
	--swL2NotifyMgmt      OBJECT IDENTIFIER ::= { swL2Notify 1 }  
	swL2NotifyPrefix   OBJECT IDENTIFIER ::= { swL2Notify 2 }  
	
	
	
	swL2NotifFirmware OBJECT IDENTIFIER ::= { swL2NotifyPrefix 0 }  

	

	
-- ******************************************************************************************	
--	swL2NotifyMgmt
-- ******************************************************************************************


-- ******************************************************************************************        

-- swL2NotifFirmware OBJECT IDENTIFIER ::= { swL2NotifyPrefix 0 }

-- ******************************************************************************************	
--	swL2NotifFirmware
-- ******************************************************************************************
    
    swL2macNotification NOTIFICATION-TYPE
        OBJECTS {
              swL2macNotifyInfo
        		}
        STATUS  current        		
        DESCRIPTION
            " This trap indicates the mac addresses variation in address table . "
            
        ::= { swL2NotifFirmware 1 }	
        

-- ******************************************************************************************	
--	agentNotifEquipment
-- ******************************************************************************************        
   
      
-- ******************************************************************************************	
--	notificationBidings
-- ******************************************************************************************        		 
	 
    swl2NotificationBidings OBJECT IDENTIFIER ::= { swL2NotifyPrefix 1 }
                
    swL2macNotifyInfo   OBJECT-TYPE
        SYNTAX  OCTET STRING(SIZE (0..1024))
        MAX-ACCESS  read-only
        STATUS  current
        DESCRIPTION
            "This object indicates the last time reboot information."
        ::= { swl2NotificationBidings 1 } 
           
END
