SYNERGY100G-HPE-NLP-MIB DEFINITIONS ::= BEGIN

IMPORTS
	enterprises,
	MODULE-IDENTITY,
	OBJECT-TYPE,
	Counter32,
	TimeTicks,
	Unsigned32, 
	NOTIFICATION-TYPE
		FROM SNMPv2-SMI
	DisplayString,
	TimeStamp,
	TruthValue
		FROM SNMPv2-TC
	snmpTraps
		FROM SNMPv2-MIB
	hpVCSE-100Gb-F32-Module
		FROM HPSVRMGMT-OID;

			
syn100GhpeNLPMIB MODULE-IDENTITY
	LAST-UPDATED "201903050000Z"	-- Mar 3, 2019
	ORGANIZATION "Hewlett Packard Enterprise"
	CONTACT-INFO "Hewlett Packard Enterprise Support Center
                 www.hpe.com/support<http://www.hpe.com/support>
                 US, Canada & Caribbean: 1-800-633-3600
                 UK & Ireland: 0845 161 0050
                 Asia Pacific Region: 61-3-8877-5000"
	DESCRIPTION
		"The proprietary MIB module for Network Loop Protection"
	REVISION "201903050000Z"	-- Mar 3, 2019 
	DESCRIPTION
		"updated MODULE-IDENTITY to use hpeSynergyVCMIBObjects."
	REVISION "201507071831Z"	-- Jul 7, 2015 6:31:00 PM
	DESCRIPTION
		"Initial version."
	::= { syn100GhpeSynergyVCMIBObjects 4060 }

	syn100GhpeSynergyVCMIBObjects OBJECT IDENTIFIER ::= { hpVCSE-100Gb-F32-Module 1}
		

	
-- Scalars and Tables
--

syn100GhpeNLPModuleConfig OBJECT-TYPE
	SYNTAX  INTEGER {
			enabled(1),
			disabled(2) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object enable or disable the Network Loop protection Feature on the system. Disabling NLP clears the loop detection and move all the ports to forwarding state. Other configurable parameters retains the configuration across disable and enable"
	DEFVAL { enabled }
	-- 1.3.6.1.4.1.2076.4060.1
	::= { syn100GhpeNLPMIB 1 }


syn100GhpeNLPResetLoopDetection OBJECT-TYPE
	SYNTAX  TruthValue
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object reset the consequent action taken by network loop protection feature by moving all the ports into forwarding state keeping the Network Loop Protection Feature enabled. Setting TRUE to this objects reset the loop detection and return the object with FALSE value. This object always returns FALSE on read"
	DEFVAL { false }
	-- 1.3.6.1.4.1.2076.4060.2
	::= { syn100GhpeNLPMIB 2 }


syn100GhpeNLPTransmitInterval OBJECT-TYPE
	SYNTAX  INTEGER (5..10)
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object specifies the transmit interval of network loop protection frames. For every NLPTransmit interval, NLP frames shall be sent on all VLANs configured."
	DEFVAL { 5 }
	-- 1.3.6.1.4.1.2076.4060.3
	::= { syn100GhpeNLPMIB 3 }


syn100GhpeNLPEnableTrap OBJECT-TYPE
	SYNTAX  INTEGER {
			enabled(1),
			disabled(2) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object enable or disable the SNMP traps notifying loop detection on any of the ports."
	DEFVAL { enabled }
	-- 1.3.6.1.4.1.2076.4060.4
	::= { syn100GhpeNLPMIB 4 }


syn100GhpeNLPServerPortTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Syn100GhpeNLPServerPortEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Port Table contains the Networking Loop Protection features status and control parameters."
	-- 1.3.6.1.4.1.2076.4060.5
	::= { syn100GhpeNLPMIB 5 }


syn100GhpeNLPServerPortEntry OBJECT-TYPE
	SYNTAX  Syn100GhpeNLPServerPortEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"An entry contains the configurable parameters of Network Loop Protection feature on the port"
	INDEX {
		syn100GhpeNLPServerPortNumber }
	-- 1.3.6.1.4.1.2076.4060.5.1
	::= { syn100GhpeNLPServerPortTable 1 }


Syn100GhpeNLPServerPortEntry ::= SEQUENCE {

	syn100GhpeNLPServerPortNumber             Unsigned32,
	syn100GhpeNLPServerPortResetLoopDetection TruthValue,
	syn100GhpeNLPServerPortEnableTrap         INTEGER }


syn100GhpeNLPServerPortNumber OBJECT-TYPE
	SYNTAX  Unsigned32 (1..60)
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object specifies the Port number of the chassis for which the configuration entry applies."
	-- 1.3.6.1.4.1.2076.4060.5.1.1
	::= { syn100GhpeNLPServerPortEntry 1 }


syn100GhpeNLPServerPortResetLoopDetection OBJECT-TYPE
	SYNTAX  TruthValue
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object reset the loop detected state and move the port to forwarding state. Setting TRUE to this objects reset the loop detection and return the object with FALSE value. This object always returns FALSE on read"
	DEFVAL { false }
	-- 1.3.6.1.4.1.2076.4060.5.1.2
	::= { syn100GhpeNLPServerPortEntry 2 }


syn100GhpeNLPServerPortEnableTrap OBJECT-TYPE
	SYNTAX  INTEGER {
			enabled(1),
			disabled(2) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object enables the SNMP traps which send traps on detecting loop on the specified downlink or service ports. hpeNLPEnableTrap is the superset of this object. Setting syn100GhpeNLPEnableTrap to TRUE enables trap on all the ports and hpeNLPPortEnableTrap shall be used to disable trap on per port basis"
	DEFVAL { enabled }
	-- 1.3.6.1.4.1.2076.4060.5.1.3
	::= { syn100GhpeNLPServerPortEntry 3 }


syn100GhpeNLPServerPortStatsTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Syn100GhpeNLPServerPortStatsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Table contains the counters and other statistics of Network Loop Protection Feature of the port."
	-- 1.3.6.1.4.1.2076.4060.6
	::= { syn100GhpeNLPMIB 6 }


syn100GhpeNLPServerPortStatsEntry OBJECT-TYPE
	SYNTAX  Syn100GhpeNLPServerPortStatsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"An entry contains the counters and other statistics of Network Loop Protection Feature of the port."
	INDEX {
		syn100GhpeNLPStatsPortNumber }
	-- 1.3.6.1.4.1.2076.4060.6.1
	::= { syn100GhpeNLPServerPortStatsTable 1 }


Syn100GhpeNLPServerPortStatsEntry ::= SEQUENCE {

	syn100GhpeNLPStatsPortNumber         Unsigned32,
	syn100GhpeNLPLoopDetectedStatus      INTEGER,
	syn100GhpeNLPLoopDetectedCount       INTEGER,
	syn100GhpeNLPLastLoopDetectTimeStamp TimeStamp }


syn100GhpeNLPStatsPortNumber OBJECT-TYPE
	SYNTAX  Unsigned32 (1..60)
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object specifies the Port number of the chassis for which the statistics is retrieved. This index mapped to hpeNLPServerPortNumber"
	-- 1.3.6.1.4.1.2076.4060.6.1.1
	::= { syn100GhpeNLPServerPortStatsEntry 1 }


syn100GhpeNLPLoopDetectedStatus OBJECT-TYPE
	SYNTAX  INTEGER {
			yes(1),
			no(2) }
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object identifies whether loop detected on the port"
	-- 1.3.6.1.4.1.2076.4060.6.1.2
	::= { syn100GhpeNLPServerPortStatsEntry 2 }


syn100GhpeNLPLoopDetectedCount OBJECT-TYPE
	SYNTAX  INTEGER
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object signifies the number of Loop Protection Frames received on the port that causes the port moved to BLOCKING state."
	-- 1.3.6.1.4.1.2076.4060.6.1.3
	::= { syn100GhpeNLPServerPortStatsEntry 3 }


syn100GhpeNLPLastLoopDetectTimeStamp OBJECT-TYPE
	SYNTAX  TimeTicks
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object logged the last time stamp value of Loop Protection Frames received on the port that causes the port moved to BLOCKING state."
	-- 1.3.6.1.4.1.2076.4060.6.1.4
	::= { syn100GhpeNLPServerPortStatsEntry 4 }

-- definition of interface-related traps.

syn100Gtraps OBJECT IDENTIFIER ::= { syn100GhpeNLPMIB 7 }

syn100GtrapPrefix  OBJECT IDENTIFIER ::= { syn100Gtraps 0 }

syn100GhpeNLPLoopDetect NOTIFICATION-TYPE
    OBJECTS { syn100GhpeNLPServerPortNumber, syn100GhpeNLPLoopDetectedStatus }
    STATUS  current
    DESCRIPTION
            "A  syn100GhpNLLoopDetect trap signifies that the SNMP entity, acting in
            an agent role, has detected that the hpeNLPLoopDetectedStatus object for
            one of the interface is changed. On detecting the loop, hpeNLPLoopDetect
			trap shall be generated with hpeNLPLoopDetectedStatus as TRUE and upon
			clearing the loop detection, the trap notification shall be sent with 
			hpeNLPLoopDetectedStatus as FALSE."
    ::= { syn100GtrapPrefix 1 }
	
	
END
