-- *****************************************************************
-- QTECH-PROCESS-MIB.mib:  Qtech Process MIB file
--
-- October 2003, Wuzg
--
-- Copyright (c) 2003 by Qtech Networks Co.,Ltd.
-- All rights reserved.
-- 
-- *****************************************************************
--

QTECH-PROCESS-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Integer32
                FROM SNMPv2-SMI
        DisplayString,
        MacAddress,
        TEXTUAL-CONVENTION
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP
                FROM SNMPv2-CONF
        qtechMgmt
                FROM QTECH-SMI;

qtechProcessMIB MODULE-IDENTITY
        LAST-UPDATED "200310140000Z"
        ORGANIZATION "Qtech Networks Co.,Ltd."
        CONTACT-INFO
                " 
                Tel: 4008-111-000 

                E-mail: service@qtech.com.cn"
        DESCRIPTION
                "This module defines qtech system mibs."
        REVISION      "200310140000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { qtechMgmt 36}

-- Percentage for statistic, etc.
--
Percent ::= TEXTUAL-CONVENTION
    STATUS current
    DESCRIPTION
        "An integer that is in the range of a percent value."
    SYNTAX INTEGER (0..100)
    
qtechCPUMIBObjects OBJECT IDENTIFIER ::= { qtechProcessMIB 1 }

-- general mib
qtechCpuGeneralMibsGroup OBJECT IDENTIFIER ::= { qtechCPUMIBObjects 1 }

qtechCPUUtilization5Sec OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization for 5 seconds."
    ::= { qtechCpuGeneralMibsGroup 1 }

qtechCPUUtilization1Min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization for 1 minutes."
    ::= { qtechCpuGeneralMibsGroup 2 }

qtechCPUUtilization5Min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization for 5 minutes."
    ::= { qtechCpuGeneralMibsGroup 3 }

qtechCPUUtilizationWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the first warning of cpu using rate."
    ::= { qtechCpuGeneralMibsGroup 4 }
    
qtechCPUUtilizationCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the realtime collection switch of cpu using rate."
    ::= { qtechCpuGeneralMibsGroup 5 } 

qtechCPUMaxUtilization5Sec OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU max utilization for 5 seconds."
    ::= { qtechCpuGeneralMibsGroup 6 }

qtechCPUMaxUtilization1Min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU max utilization for 1 minutes."
    ::= { qtechCpuGeneralMibsGroup 7 }

qtechCPUMaxUtilization5Min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU max utilization for 5 minutes."
    ::= { qtechCpuGeneralMibsGroup 8 }

qtechCPUUtilizationCollectSwitch OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the realtime collection of cpu using rate."
    ::= { qtechCpuGeneralMibsGroup 9 } 
    
qtechCPUUtilizationCurrent OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the collection of current cpu using rate."
    ::= { qtechCpuGeneralMibsGroup 10 } 

---Node's CPU utilization table
qtechNodeCPUTotalTable OBJECT-TYPE
  SYNTAX      SEQUENCE OF QtechNodeCPUTotalEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "A table of line cards's CPU utilization entries. Each of the
     objects provides a general idea of how much of the CPU resource
     of a line card has been used over a given period of time."
  ::= { qtechCPUMIBObjects 2 }

qtechNodeCPUTotalEntry OBJECT-TYPE
  SYNTAX      QtechNodeCPUTotalEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "An entry in the node's CPU utilization table."
  INDEX { qtechNodeCPUTotalIndex }
  ::= { qtechNodeCPUTotalTable 1 }

QtechNodeCPUTotalEntry ::=
  SEQUENCE {
    qtechNodeCPUTotalIndex  Integer32,
    qtechNodeCPUTotalName   DisplayString,
    qtechNodeCPUTotal5sec   Percent,
    qtechNodeCPUTotal1min   Percent,
    qtechNodeCPUTotal5min   Percent,
    qtechNodeCPUTotalWarning  Percent,
    qtechNodeCPUTotalCritical Percent
  }
    
qtechNodeCPUTotalIndex OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "An index that uniquely represents a Memory Pool."
    ::= { qtechNodeCPUTotalEntry 1 }
   
qtechNodeCPUTotalName OBJECT-TYPE
    SYNTAX        DisplayString
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The name of a node, for example, slot x is the x slot."
    ::= { qtechNodeCPUTotalEntry 2 } 
   
qtechNodeCPUTotal5sec OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization of a node for 5 seconds."
    ::= { qtechNodeCPUTotalEntry 3 }

qtechNodeCPUTotal1min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization of a node for 1 minutes."
    ::= { qtechNodeCPUTotalEntry 4 }

qtechNodeCPUTotal5min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the CPU utilization of a node for 5 minutes."
    ::= { qtechNodeCPUTotalEntry 5 }

qtechNodeCPUTotalWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the first warning of the node's cpu using rate."
    ::= { qtechNodeCPUTotalEntry 6 }
    
qtechNodeCPUTotalCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the second warning of the node's cpu using rate."
    ::= { qtechNodeCPUTotalEntry 7 }  

--lank ap 2010-7 
qtechLankApCPUTotalTable OBJECT-TYPE
  SYNTAX      SEQUENCE OF QtechLankApCPUTotalEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "A table of lank ap CPU utilization entries. Each of the
     objects provides a lank ap CPU utilization information."
  ::= { qtechCPUMIBObjects 3 }

qtechLankApCPUTotalEntry OBJECT-TYPE
  SYNTAX      QtechLankApCPUTotalEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "An entry in lank ap CPU utilization table."
  INDEX { qtechLankApCPUMacAddr }
  ::= { qtechLankApCPUTotalTable 1 }

QtechLankApCPUTotalEntry ::=
  SEQUENCE {
    qtechLankApCPUMacAddr                   MacAddress,
    qtechLankApCPUUtilizationCollectSwitch  Integer32,
    qtechLankApCPUUtilizationWarning        Percent,
    qtechLankApCPUUtilizationCritical       Percent,
    qtechLankApCPUUtilizationCurrent        Percent,
    qtechLankApCPUUtilization5Min           Percent 
  }
    
qtechLankApCPUMacAddr OBJECT-TYPE
    SYNTAX        MacAddress
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "An index that uniquely represents lank ap CPU."
    ::= { qtechLankApCPUTotalEntry 1 }

qtechLankApCPUUtilizationCollectSwitch OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the realtime collection of lank ap cpu using rate."
    ::= { qtechLankApCPUTotalEntry 2 }  

qtechLankApCPUUtilizationWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the first warning of lank ap cpu using rate."
    ::= { qtechLankApCPUTotalEntry 3 }
   
qtechLankApCPUUtilizationCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the realtime collection switch of lank ap cpu using rate."
    ::= { qtechLankApCPUTotalEntry 4 } 
    
qtechLankApCPUUtilizationCurrent OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the collection of current lank ap cpu using rate."
    ::= { qtechLankApCPUTotalEntry 5 }  
  
qtechLankApCPUUtilization5Min OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the lank ap CPU utilization for 5 minutes."
    ::= { qtechLankApCPUTotalEntry 6 }

           
qtechProcessMIBConformance OBJECT IDENTIFIER ::= { qtechProcessMIB 2 }
qtechProcessMIBCompliances OBJECT IDENTIFIER ::= { qtechProcessMIBConformance 1 }
qtechProcessMIBGroups      OBJECT IDENTIFIER ::= { qtechProcessMIBConformance 2 }

-- compliance statements

qtechProcessMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Qtech Process MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { qtechCPUUtilizationMIBGroup
                 }
        ::= { qtechProcessMIBCompliances 1 }
                
-- units of conformance

qtechCPUUtilizationMIBGroup OBJECT-GROUP
        OBJECTS {
          qtechCPUUtilization5Sec,
          qtechCPUUtilization1Min,
          qtechCPUUtilization5Min,
          qtechCPUMaxUtilization5Sec,
          qtechCPUMaxUtilization1Min,
          qtechCPUMaxUtilization5Min,
          qtechCPUUtilizationCollectSwitch,
          qtechCPUUtilizationCurrent
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing CPU utilization to a Qtech agent."
        ::= { qtechProcessMIBGroups 1 } 

qtechNodeCPUTotalGroups OBJECT-GROUP
        OBJECTS {
          qtechNodeCPUTotalIndex,
          qtechNodeCPUTotalName,
          qtechNodeCPUTotal5sec,
          qtechNodeCPUTotal1min,
          qtechNodeCPUTotal5min,
          qtechNodeCPUTotalWarning,
          qtechNodeCPUTotalCritical
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing node's CPU utilization to a Qtech agent."
        ::= { qtechProcessMIBGroups 2 } 
  
END
