TPLINK-PORTLOOPBACKDETECTION-MIB DEFINITIONS ::= BEGIN
	IMPORTS
		OBJECT-TYPE,MODULE-IDENTITY, Counter32, Integer32, OBJECT-IDENTITY, NOTIFICATION-TYPE
			  	         	FROM SNMPv2-SMI     	  	         	
		ifIndex
				FROM RFC1213-MIB
		TPRowStatus
				FROM TPLINK-TC-MIB
		DisplayString 
				FROM SNMPv2-TC
		tplinkMgmt
				FROM TPLINK-MIB;
										
	tplinkLoopbackDetectionMIB MODULE-IDENTITY  
	    LAST-UPDATED    "200908270000Z"
	    ORGANIZATION    "TPLINK"
	    CONTACT-INFO		"www.tplink.com"
	    DESCRIPTION			"The config of loopback Detection."
	    REVISION        "200908270000Z"
	    DESCRIPTION			"Initial version of this MIB module."
	    ::= { tplinkMgmt 80 }
	
	tplinkLoopbackDetectionMIBObjects			OBJECT IDENTIFIER	::= { tplinkLoopbackDetectionMIB 1 }     
	tplinkLoopbackDetectionNotifications	    OBJECT IDENTIFIER 	::= { tplinkLoopbackDetectionMIB 2}	
	
	    loopbackStatusChange NOTIFICATION-TYPE
              STATUS  current
              DESCRIPTION
                      "When loopbackDetection is enabled ,A loopback detection notification is sent while port loop status is changed."
              ::= { tplinkLoopbackDetectionNotifications 1 }
			  
	    loopbackDetectionEnable OBJECT-TYPE
         			SYNTAX  INTEGER{
	      							disable(0), 						--disable
	      							enable(1)								--enable
	      							}
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Select Enable/Disable LOOPBACK detection function globally on the Switch.
                      0. disable 
                      1. enable"
              ::= { tplinkLoopbackDetectionMIBObjects 1 } 
	    
	    loopbackDetectionInterval OBJECT-TYPE
         			SYNTAX  INTEGER(1..1000) 
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "The interval time of loopback detection"
              ::= { tplinkLoopbackDetectionMIBObjects 2 }  
              
       loopbackDetectionRecoveryTime OBJECT-TYPE
         			SYNTAX  INTEGER(2..100000) 
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "The recovery time of loopback detection"
              ::= { tplinkLoopbackDetectionMIBObjects 3 }
			    
																										          	  	          
	   		loopbackDetectionCtrlTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF LOOPBACKDETECTIONCTRLENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "A list of port loopback detection."
              ::= { tplinkLoopbackDetectionMIBObjects 4 }
              
              
         loopbackDetectionCtrlEntry OBJECT-TYPE
              SYNTAX  LOOPBACKDETECTIONCTRLENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "The entry of the port loopback detection list ."
              INDEX   { ifIndex }
              ::= { loopbackDetectionCtrlTable 1 }
              
              
        LOOPBACKDETECTIONCTRLENTRY ::=
              SEQUENCE {
				  loopbackDetectionPort
						OCTET STRING,
                  loopbackDetectionState
                  		INTEGER{
	      										disable(0), 					--Disable
	      										enable(1)						--Enable
	      											}, 
                  loopbackDetectionProcessMode
                  		INTEGER{
	      										alert(0), 					--Alert
	      										portbased(1),						--Portbased
												vlanbased(2)       --vlanbased
	      											},
                  loopbackDetectionRecoverMode
                  		INTEGER{
	      										auto(0), 					--Auto
	      										manual(1)						--Manual
	      											},
                  loopbackDetectionLoopState
                  		OCTET STRING,
                  loopbackDetectionBlockState
                  		OCTET STRING,
                  loopbackDetectionLagState
                  		OCTET STRING,
                  loopbackDetectionRecoverPort
                  		INTEGER
              }
              	loopbackDetectionPort OBJECT-TYPE
					SYNTAX  	OCTET STRING
						(SIZE (0..255))
					MAX-ACCESS  read-only
					STATUS  	current
					DESCRIPTION
						"Display port number"
				::= { loopbackDetectionCtrlEntry 1 }
			      
			   loopbackDetectionState  OBJECT-TYPE
			     SYNTAX  INTEGER{
	      										disable(0), 					--Disable
	      										enable(1)						--Enable
	      											}   
			      MAX-ACCESS  read-write
			      STATUS  current
			      DESCRIPTION
			              "The state of the port."
			      ::= { loopbackDetectionCtrlEntry 2 }
			      
			   loopbackDetectionProcessMode  OBJECT-TYPE
			     SYNTAX  INTEGER{
	      										alert(0), 					--Alert
	      										portbased(1),						--Portbased
												vlanbased(2)
	      											} 
			      MAX-ACCESS  read-write
			      STATUS  current
			      DESCRIPTION
			              "The process mode of the port."
			      ::= { loopbackDetectionCtrlEntry 3 }
			      
			   loopbackDetectionRecoverMode  OBJECT-TYPE
			     SYNTAX  INTEGER{
	      										auto(0), 					--Auto
	      										manual(1)						--Manual
	      											}  
			      MAX-ACCESS  read-write
			      STATUS  current
			      DESCRIPTION
			              "The recover mode of the port."
			      ::= { loopbackDetectionCtrlEntry 4 }
			      
			    loopbackDetectionLoopState  OBJECT-TYPE
			     SYNTAX  OCTET STRING (SIZE (0..255))  
			      MAX-ACCESS  read-only
			      STATUS  current
			      DESCRIPTION
			              "The loop state of the port."
			      ::= { loopbackDetectionCtrlEntry 5 }
			      
			    loopbackDetectionBlockState  OBJECT-TYPE
			     SYNTAX  OCTET STRING (SIZE (0..255))  
			      MAX-ACCESS  read-only
			      STATUS  current
			      DESCRIPTION
			              "The block state of the port."
			      ::= { loopbackDetectionCtrlEntry 6 }
			      
			    loopbackDetectionLagState  OBJECT-TYPE
			     SYNTAX  OCTET STRING (SIZE (0..255))  
			      MAX-ACCESS  read-only
			      STATUS  current
			      DESCRIPTION
			              "The LAG  of the port."
			      ::= { loopbackDetectionCtrlEntry 7 }
			      
			      
			    loopbackDetectionRecoverPort OBJECT-TYPE
			     SYNTAX  INTEGER 
			      MAX-ACCESS  read-write
			      STATUS  current
			      DESCRIPTION
			              "You can recover the block port with this."
			      ::= { loopbackDetectionCtrlEntry 8 }

			      
END										
										