ADTRAN-PERFORMANCE-MONITORING-MIB

DEFINITIONS ::= BEGIN

    -- TITLE:     The ADTRAN CN PERFORMANCE MONITORING MIB
    -- PRODUCT:   All Modules
    -- VERSION:   1.4
    -- DATE:      May 24, 2010

    -- This MIB Contains tables for generic performance monitoring on CN products. The intent of this MIB is to allow
    -- more or less direct access to all PM that is registered on a given system and to avoid creating MIB objects in
    -- a plethora of different MIBs.
    --
    -- HISTORY:
    --        03/31/10 atr:   First Revision
    --        04/07/10 gdo:   Cleanup, reorganize.
    --        04/13/10 gdo:   More cleanup, reorganize.
    --        05/06/10 gdo:   Reindex interval tables, remove unnecessary interval OID from 24-hour Current PM Table.
    --        05/24/10 gdo:   Remove adGenPmStatsFunctionGroupTable and replace with adGenPmStatsProvisioningTable.


IMPORTS

    MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Counter64
        FROM SNMPv2-SMI
    TruthValue, TEXTUAL-CONVENTION
        FROM SNMPv2-TC
    ifIndex, InterfaceIndex
        FROM IF-MIB
    adGenPerformanceMonitoring,
    adGenPerformanceMonitoringID
        FROM ADTRAN-SHARED-CND-SYSTEM-MIB
    ;


    adGenPerformanceMonitoringMIB MODULE-IDENTITY
        LAST-UPDATED "201202060000Z"
        ORGANIZATION "ADTRAN, Inc."
        CONTACT-INFO
            "CND Tech Support
                Postal: ADTRAN, Inc.
                        901 Explorer Blvd.
                        Huntsville, AL  35806
                        Tel: +1 800 726-8663
                        Fax: +1 256 963 6217
                        E-mail: support@adtran.com"
        DESCRIPTION
            "Adtran Performance Monitoring MIB"

        REVISION "201202060000Z"
        DESCRIPTION "Updated description for AdGenPmAttributeName to include list of possible
                     octet strings.  This list should be updated for every new item of PM
                     supported by this MIB."

        REVISION "201003310000Z"
        DESCRIPTION "Created"

        ::= { adGenPerformanceMonitoringID 1 }

--
-- Object Hierarchy
--

adGenPmStats         	OBJECT IDENTIFIER ::= { adGenPerformanceMonitoring 1 }
adGenPmProvisioning   	OBJECT IDENTIFIER ::= { adGenPerformanceMonitoring 2 }


-- Textual Conventions

   AdGenPmAttributeName ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "32a"
       STATUS       current
       DESCRIPTION "An octet string containing the name of the attribute
                        Attribute String                  Performance Monitoring Parameter                 
                        vtuclofs                          VTUC Loss of Frame Seconds                       
                        vtucloss                          VTUC Loss of Signal Seconds                      
                        vtuclols                          VTUC Loss of Link Seconds                        
                        vtuclprs                          VTUC Loss of Power Seconds                       
                        vtucess                           VTUC Errored Seconds                             
                        vtucses                           VTUC Severely Errored Seconds                    
                        vtucuas                           VTUC Unavailable Seconds                         
                        vtucinits                         VTUC Initializations                             
                        vtucrxblks                        VTUC Rx Blocks                                   
                        vtuctxblks                        VTUC Tx Blocks                                   
                        vtuccorrblks                      VTUC Corrected Blocks                            
                        vtucuncorrblks                    VTUC Uncorrected Blocks                          
                        vtucfec                           VTUC Forward Error Corrections                   
                        vtucfecs                          VTUC Forward Error Corrections Seconds           
                        vturlofs                          VTUR Loss of Frame Seconds                       
                        vturloss                          VTUR Loss of Signal Seconds                      
                        vturlols                          VTUR Loss of Link Seconds                        
                        vturlprs                          VTUR Loss of Power Seconds                       
                        vturess                           VTUR Errored Seconds                             
                        vturses                           VTUR Severely Errored Seconds                    
                        vturuas                           VTUR Unavailable Seconds                         
                        vturrxblks                        VTUR Rx Blocks                                   
                        vturtxblks                        VTUR Tx Blocks                                   
                        vturcorrblks                      VTUR Corrected Blocks                            
                        vturuncorrblks                    VTUR Uncorrected Blocks                          
                        vturfec                           VTUR Forward Error Corrections                   
                        vturfecs                          VTUR Forward Error Corrections Seconds           
                        rxframes                          Rx Ethernet Frames                               
                        rxbytes                           Rx Ethernet Bytes                                
                        txframes                          Tx Ethernet Frames                               
                        txbytes                           Tx Ethernet Bytes                                
                        txovrframes                       Tx Ethernet Overflow Frames                      
                        txovrbytes                        Tx Ethernet Overflow Bytes                       
                        txmcastframes                     Tx Multicast Ethernet Frames                     
                        txmcastbytess                     Tx Multicast Ethernet Bytes                      
                        rxmcastframes                     Rx Multicast Ethernet Frames                     
                        rxmcastbytess                     Rx Multicast Ethernet Bytes                      
                        txbcastframes                     Tx Broadcast Ethernet Frames                     
                        txbcastbytes                      Tx Broadcast Ethernet Bytes                      
                        rxbcastframes                     Rx Broadcast Ethernet Frames                     
                        rxbcastbytes                      Rx Broadcast Ethernet Bytes                      
                        txucastframes                     Tx Unicast Ethernet Frames                       
                        txucastbytes                      Tx Unicast Ethernet Bytes                        
                        rxucastframes                     Rx Unicast Ethernet Frames                       
                        rxucastbytes                      Rx Unicast Ethernet Bytes                        
                        rxeapframes                       Rx EAPOL Frames                                  
                        txeapframes                       Tx EAPOL Frames                                  
                        rxeapstart                        Rx EAPOL Start Frames                            
                        rxeaplogoff                       Rx EAPOL Logoff Frames                           
                        rxeapinvalid                      Rx EAPOL Invalid Frames                          
                        rxeaprespid                       Rx EAPOL Response/ID Frames                      
                        rxeapresp                         Rx EAPOL Response Frames                         
                        rxeaplengtherr                    Rx EAPOL Invalid Length                          
                        txeapreqid                        Rx EAPOL Inital Request Frames                   
                        txeapreq                          Rx EAPOL Request Frames                          
                        txradiusreq                       Rx EAPOL Access-request Frames                   
                        txradiusreqre                     Rx EAPOL Retransmitted Access-request Frames     
                        rxradiuschall                     Rx EAPOL Access-challenge Frames                 
                        rxradiusaccept                    Rx EAPOL Access-accept Frames                    
                        rxradiusreject                    Rx EAPOL Access-reject Frames                    
                        rxradiusinvalid                   Rx EAPOL Invalid RADIUS Frames                   
                        rxradiusbadauth                   Rx EAPOL Bad Authenticator RADIUS Frames         
                        rxradiustimeout                   Rx EAPOL Authentication Timeouts                 
                        rxradiusunk                       Rx EAPOL Unknown Type RADIUS Frames              
                        rxradiusdrop                      Rx EAPOL Dropped RADIUS Frames"
       SYNTAX       OCTET STRING (SIZE (1..32))

   AdGenPmFunctionName ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "32a"
       STATUS       current
       DESCRIPTION "An octet string containing the name of the pm functional group"
       SYNTAX       OCTET STRING (SIZE (1..32))


--
-- Performance Monitoring Statistics - 15 Minute Current
--

adGenPm15MinCurrentIntervalStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AdGenPm15MinCurrentIntervalStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Provides statistics from the current 15-minute interval
        for the given interface and performance attribute."
    ::= { adGenPmStats 1 }

adGenPm15MinCurrentIntervalStatsEntry OBJECT-TYPE
    SYNTAX      AdGenPm15MinCurrentIntervalStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Provides statistics from the current 15-minute interval
         for the given interface and performance attribute."
    INDEX { ifIndex, adGenPm15MinCurrentIntervalStatsAttribute }
    ::= { adGenPm15MinCurrentIntervalStatsTable 1 }

AdGenPm15MinCurrentIntervalStatsEntry ::=
    SEQUENCE {
       adGenPm15MinCurrentIntervalStatsAttribute	AdGenPmAttributeName,
       adGenPm15MinCurrentIntervalStatsValue      	Counter32,
       adGenPm15MinCurrentIntervalStatsHCValue    	Counter64,
       adGenPm15MinCurrentIntervalStatsValid      	TruthValue
    }

adGenPm15MinCurrentIntervalStatsAttribute OBJECT-TYPE
    SYNTAX          	AdGenPmAttributeName
    MAX-ACCESS         	not-accessible
    STATUS             	current
    DESCRIPTION
       "String representing the short name of the attribute. For example,
        'txmcastframes' is ASCII equivalent of the attribute for Transmit Multicast Frames."
    ::= { adGenPm15MinCurrentIntervalStatsEntry 1 }


adGenPm15MinCurrentIntervalStatsValue OBJECT-TYPE
    SYNTAX             Counter32
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current PM value of this attribute for the current interval."
    ::= { adGenPm15MinCurrentIntervalStatsEntry 2 }

adGenPm15MinCurrentIntervalStatsHCValue OBJECT-TYPE
    SYNTAX             Counter64
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current High-Capacity 64-bit PM value of this attribute for the
	current interval."
    ::= { adGenPm15MinCurrentIntervalStatsEntry 3 }

adGenPm15MinCurrentIntervalStatsValid OBJECT-TYPE
    SYNTAX             TruthValue
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Indicates whether the referenced PM bucket is valid."
    ::= { adGenPm15MinCurrentIntervalStatsEntry 4 }

--
-- Performance Monitoring Statistics - 15 Minute Interval
--

adGenPm15MinIntervalStatsTable OBJECT-TYPE
    SYNTAX      		SEQUENCE OF AdGenPm15MinIntervalStatsEntry
    MAX-ACCESS  		not-accessible
    STATUS      		current
    DESCRIPTION
       "Generic PM interval table. This table includes all PM which is
        collected each 15 minute interval. It maintains a 24 hour period's
        worth of PM data."
    ::= { adGenPmStats 2 }

adGenPm15MinIntervalStatsEntry OBJECT-TYPE
    SYNTAX      		AdGenPm15MinIntervalStatsEntry
    MAX-ACCESS  		not-accessible
    STATUS      		current
    DESCRIPTION
        "Objects for the PM 15 minute Interval table."
    INDEX { ifIndex,
            adGenPm15MinIntervalStatsAttribute,
            adGenPm15MinIntervalStatsInterval }
    ::= { adGenPm15MinIntervalStatsTable 1 }

AdGenPm15MinIntervalStatsEntry ::=
    SEQUENCE {
       adGenPm15MinIntervalStatsInterval     	INTEGER,
       adGenPm15MinIntervalStatsAttribute		AdGenPmAttributeName,
       adGenPm15MinIntervalStatsValue			Counter32,
       adGenPm15MinIntervalStatsHCValue			Counter64,
       adGenPm15MinIntervalStatsValid        	TruthValue
    }

adGenPm15MinIntervalStatsInterval OBJECT-TYPE
    SYNTAX             	INTEGER(1..96)
    MAX-ACCESS         	not-accessible
    STATUS             	current
    DESCRIPTION
       "Identifies the interval for which these stats are valid.
        1 is the most recently completed 15 minute interval, 96 is
        24 hours ago from the current interval."
    ::= { adGenPm15MinIntervalStatsEntry 1 }

adGenPm15MinIntervalStatsAttribute OBJECT-TYPE
    SYNTAX          	AdGenPmAttributeName
    MAX-ACCESS         	not-accessible
    STATUS             	current
    DESCRIPTION
       "String representing the short name of the attribute. For example,
        'txmcastframes' is ASCII equivalent of the attribute for Transmit Multicast Frames."
    ::= { adGenPm15MinIntervalStatsEntry 2 }


adGenPm15MinIntervalStatsValue OBJECT-TYPE
    SYNTAX             	Counter32
    MAX-ACCESS         	read-only
    STATUS             	current
    DESCRIPTION
       "Reports the current PM value of this attribute for the current interval."
    ::= { adGenPm15MinIntervalStatsEntry 3 }

adGenPm15MinIntervalStatsHCValue OBJECT-TYPE
    SYNTAX             	Counter64
    MAX-ACCESS         	read-only
    STATUS             	current
    DESCRIPTION
       "Reports the current High-Capacity 64-bit PM value of this attribute for the
	current interval."
    ::= { adGenPm15MinIntervalStatsEntry 4 }

adGenPm15MinIntervalStatsValid OBJECT-TYPE
    SYNTAX             	TruthValue
    MAX-ACCESS         	read-only
    STATUS             	current
    DESCRIPTION
       "Indicates whether the referenced PM bucket is valid."
    ::= { adGenPm15MinIntervalStatsEntry 5 }


--
-- Performance Monitoring Statistics - 24 Hour Current
--

adGenPm24HrCurrentStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AdGenPm24HrCurrentStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Provides 24 hour statistics."
    ::= { adGenPmStats 3 }

adGenPm24HrCurrentStatsEntry OBJECT-TYPE
    SYNTAX      AdGenPm24HrCurrentStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Provides 24 hour statistics."
    INDEX { ifIndex, adGenPm24HrCurrentStatsAttribute }
    ::= { adGenPm24HrCurrentStatsTable 1 }

AdGenPm24HrCurrentStatsEntry ::=
    SEQUENCE {
       adGenPm24HrCurrentStatsAttribute	   	AdGenPmAttributeName,
       adGenPm24HrCurrentStatsValue      	Counter32,
       adGenPm24HrCurrentStatsHCValue      	Counter64,
       adGenPm24HrCurrentStatsValid      	TruthValue
    }


adGenPm24HrCurrentStatsAttribute OBJECT-TYPE
    SYNTAX          	AdGenPmAttributeName
    MAX-ACCESS         	not-accessible
    STATUS             	current
    DESCRIPTION
       "String representing the short name of the attribute. For example,
        'txmcastframes' is ASCII equivalent of the attribute for Transmit Multicast Frames."
    ::= { adGenPm24HrCurrentStatsEntry 1 }

adGenPm24HrCurrentStatsValue OBJECT-TYPE
    SYNTAX             Counter32
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current PM value of this attribute for the current 24 hour interval."
    ::= { adGenPm24HrCurrentStatsEntry 2 }

adGenPm24HrCurrentStatsHCValue OBJECT-TYPE
    SYNTAX             Counter64
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current High-Capacity 64-bit PM value of this attribute for the current
	24 hour interval."
    ::= { adGenPm24HrCurrentStatsEntry 3 }

adGenPm24HrCurrentStatsValid OBJECT-TYPE
    SYNTAX             TruthValue
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Indicates whether the referenced PM bucket is valid."
    ::= { adGenPm24HrCurrentStatsEntry 4 }




--
-- Performance Monitoring Statistics - 24 Hour Interval
--

adGenPm24HrIntervalStatsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF AdGenPm24HrIntervalStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
       "Provides 24 hour statistics."
    ::= { adGenPmStats 4 }

adGenPm24HrIntervalStatsEntry OBJECT-TYPE
    SYNTAX      AdGenPm24HrIntervalStatsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Provides 24 hour statistics."
    INDEX { ifIndex, adGenPm24HrIntervalStatsAttribute, adGenPm24HrIntervalStatsInterval }
    ::= { adGenPm24HrIntervalStatsTable 1 }

AdGenPm24HrIntervalStatsEntry ::=
    SEQUENCE {
       adGenPm24HrIntervalStatsAttribute    AdGenPmAttributeName,
       adGenPm24HrIntervalStatsInterval   	INTEGER,
       adGenPm24HrIntervalStatsValue      	Counter32,
       adGenPm24HrIntervalStatsHCValue      Counter64,
       adGenPm24HrIntervalStatsValid      	TruthValue
    }


adGenPm24HrIntervalStatsAttribute OBJECT-TYPE
    SYNTAX          	AdGenPmAttributeName
    MAX-ACCESS         	not-accessible
    STATUS             	current
    DESCRIPTION
       "String representing the short name of the attribute. For example,
        'txmcastframes' is ASCII equivalent of the attribute for Transmit Multicast Frames."
    ::= { adGenPm24HrIntervalStatsEntry 1 }

adGenPm24HrIntervalStatsInterval OBJECT-TYPE
    SYNTAX             INTEGER (1..7)
    MAX-ACCESS         not-accessible
    STATUS             current
    DESCRIPTION
       "Identifies the interval for which these stats are valid.
	1 indicates the previous 24 hour interval, 7 is one week ago."
    ::= { adGenPm24HrIntervalStatsEntry 2 }

adGenPm24HrIntervalStatsValue OBJECT-TYPE
    SYNTAX             Counter32
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current PM value of this attribute for the current 24 hour interval."
    ::= { adGenPm24HrIntervalStatsEntry 3 }

adGenPm24HrIntervalStatsHCValue OBJECT-TYPE
    SYNTAX             Counter64
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Reports the current High-Capacity 64-bit PM value of this attribute for the current
	24 hour interval."
    ::= { adGenPm24HrIntervalStatsEntry 4 }

adGenPm24HrIntervalStatsValid OBJECT-TYPE
    SYNTAX             TruthValue
    MAX-ACCESS         read-only
    STATUS             current
    DESCRIPTION
       "Indicates whether the referenced PM bucket is valid."
    ::= { adGenPm24HrIntervalStatsEntry 5 }





--
-- Performance Monitoring Provisioning Table Provisioning
--

adGenPmStatsResetTable OBJECT-TYPE
    SYNTAX      		SEQUENCE OF AdGenPmStatsResetEntry
    MAX-ACCESS  		not-accessible
    STATUS      		current
    DESCRIPTION
       "Reset objects for Performance Monitoring."
    ::= { adGenPmProvisioning 1 }

adGenPmStatsResetEntry OBJECT-TYPE
    SYNTAX      		AdGenPmStatsResetEntry
    MAX-ACCESS  		not-accessible
    STATUS      		current
    DESCRIPTION
        "Reset objects for Performance Monitoring."
    INDEX { ifIndex,
            adGenPmStatsAttribute }
    ::= { adGenPmStatsResetTable 1 }

AdGenPmStatsResetEntry ::=
    SEQUENCE {
       adGenPmStatsAttribute				   AdGenPmAttributeName,
       adGenPmStats15MinReset					   Integer32,
       adGenPmStats24HrReset                                       Integer32
    }

adGenPmStatsAttribute OBJECT-TYPE
    SYNTAX             AdGenPmAttributeName
    MAX-ACCESS         not-accessible
    STATUS             current
    DESCRIPTION
       "The name of the PM statistic."
    ::= { adGenPmStatsResetEntry 1 }

adGenPmStats15MinReset OBJECT-TYPE
    SYNTAX             Integer32
    MAX-ACCESS         read-write
    STATUS             current
    DESCRIPTION
       "Reset PM. There are three different reset options available depending on
        the value chosen for the set:

        0 - Reset all PM (not just for the indexed PM statistic)
        1 - Reset all intervals of the indexed statistic (both current and historic)
        2 - Reset all PM for the ifIndex referenced.

        A get of this object is meaningless and will always return 1."
    ::= { adGenPmStatsResetEntry 2 }

adGenPmStats24HrReset OBJECT-TYPE
    SYNTAX             Integer32
    MAX-ACCESS         read-write
    STATUS             current
    DESCRIPTION
       "Reset PM. There are three different reset options available depending on
        the value chosen for the set:

        0 - Reset all PM (not just for the indexed PM statistic)
        1 - Reset all intervals of the indexed statistic (both current and historic)
        2 - Reset all PM for the ifIndex referenced.

        A get of this object is meaningless and will always return 1."
    ::= { adGenPmStatsResetEntry 3 }


END
