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

QTECH-MEMORY-MIB DEFINITIONS ::= BEGIN

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

qtechMemoryMIB 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 35}

-- 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)
    
qtechMemoryPoolMIBObjects OBJECT IDENTIFIER ::= { qtechMemoryMIB 1 }

    
qtechMemoryPoolUtilizationTable OBJECT-TYPE
  SYNTAX      SEQUENCE OF QtechMemoryPoolUtilizationEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "A table of memory pool utilization entries. Each of the
     objects provides a general idea of how much of the memory
     pool has been used over a given period of time."
  ::= { qtechMemoryPoolMIBObjects 1 }

qtechMemoryPoolUtilizationEntry OBJECT-TYPE
  SYNTAX      QtechMemoryPoolUtilizationEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "An entry in the memory pool utilization table."
  INDEX { qtechMemoryPoolIndex }
  ::= { qtechMemoryPoolUtilizationTable 1 }

QtechMemoryPoolUtilizationEntry ::=
  SEQUENCE {
    qtechMemoryPoolIndex  Integer32,
    qtechMemoryPoolName   DisplayString,
    qtechMemoryPoolCurrentUtilization  Percent,
    qtechMemoryPoolLowestUtilization  Percent,
    qtechMemoryPoolLargestUtilization Percent,
    qtechMemoryPoolSize   Integer32,
    qtechMemoryPoolUsed   Integer32,
    qtechMemoryPoolFree   Integer32,
    qtechMemoryPoolWarning  Percent,
    qtechMemoryPoolCritical Percent,
    qtechMemoryPoolAverageUtilization Percent,
    qtechMemoryPoolTotalSize   Gauge32,
    qtechMemoryPoolUsedSize    Gauge32,
    qtechMemoryPoolFreeSize    Gauge32

  }
    
qtechMemoryPoolIndex OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "An index that uniquely represents a Memory Pool."
    ::= { qtechMemoryPoolUtilizationEntry 1 }

qtechMemoryPoolName OBJECT-TYPE
    SYNTAX        DisplayString
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "A textual name assigned to the memory pool.  This
        object is suitable for output to a human operator"
    ::= { qtechMemoryPoolUtilizationEntry 2 }
    
qtechMemoryPoolCurrentUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the memory pool utilization currently."
    ::= { qtechMemoryPoolUtilizationEntry 3 }

qtechMemoryPoolLowestUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the memory pool utilization when memory used least."
    ::= { qtechMemoryPoolUtilizationEntry 4 }

qtechMemoryPoolLargestUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the memory pool utilization when memory used most."
    ::= { qtechMemoryPoolUtilizationEntry 5 }
        
qtechMemoryPoolSize OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the size of physical memory ."
    ::= { qtechMemoryPoolUtilizationEntry 6 }

qtechMemoryPoolUsed OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the memory size that has been used."
    ::= { qtechMemoryPoolUtilizationEntry 7 }

qtechMemoryPoolFree OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the memory size that is free."
    ::= { qtechMemoryPoolUtilizationEntry 8 }

qtechMemoryPoolWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "The first warning of memory pool."
    ::= { qtechMemoryPoolUtilizationEntry 9 }

qtechMemoryPoolCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "The second warning of memory pool."
    ::= { qtechMemoryPoolUtilizationEntry 10 }

qtechMemoryPoolAverageUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the average memory pool utilization currently."
    ::= { qtechMemoryPoolUtilizationEntry 11 }

qtechMemoryPoolTotalSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The total size of physical memory, the unit is Mbytes ."
    ::= { qtechMemoryPoolUtilizationEntry 12 }

qtechMemoryPoolUsedSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Have used physical memory size, the unit is Mbytes ."
    ::= { qtechMemoryPoolUtilizationEntry 13 }

qtechMemoryPoolFreeSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The remaining physical memory size, the unit is Mbytes ."
    ::= { qtechMemoryPoolUtilizationEntry 14 }

qtechNodeMemoryPoolTable OBJECT-TYPE
  SYNTAX      SEQUENCE OF QtechNodeMemoryPoolEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "A table of node's memory pool utilization entries. Each of the
     objects provides a general idea of how much of the memory
     pool has been used over a given period of time."
  ::= { qtechMemoryPoolMIBObjects 2 }

qtechNodeMemoryPoolEntry OBJECT-TYPE
  SYNTAX      QtechNodeMemoryPoolEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "An entry in the node's memory pool utilization table."
  INDEX { qtechNodeMemoryPoolIndex }
  ::= { qtechNodeMemoryPoolTable 1 }

QtechNodeMemoryPoolEntry ::=
  SEQUENCE {
    qtechNodeMemoryPoolIndex  Integer32,
    qtechNodeMemoryPoolName   DisplayString,
    qtechNodeMemoryPoolCurrentUtilization  Percent,
    qtechNodeMemoryPoolLowestUtilization  Percent,
    qtechNodeMemoryPoolLargestUtilization Percent,
    qtechNodeMemoryPoolSize   Integer32,
    qtechNodeMemoryPoolUsed   Integer32,
    qtechNodeMemoryPoolFree   Integer32,
    qtechNodeMemoryPoolWarning  Percent,
    qtechNodeMemoryPoolCritical Percent,
    qtechNodeMemoryPoolTotalSize  Gauge32,
    qtechNodeMemoryPoolUsedSize  Gauge32,
    qtechNodeMemoryPoolFreeSize  Gauge32
  }
    
qtechNodeMemoryPoolIndex OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "An index that uniquely represents a node's Memory Pool."
    ::= { qtechNodeMemoryPoolEntry 1 }

qtechNodeMemoryPoolName OBJECT-TYPE
    SYNTAX        DisplayString
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "A textual name assigned to the node's memory pool.  This
        object is suitable for output to a human operator"
    ::= { qtechNodeMemoryPoolEntry 2 }
    
qtechNodeMemoryPoolCurrentUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the node's memory pool utilization currently."
    ::= { qtechNodeMemoryPoolEntry 3 }

qtechNodeMemoryPoolLowestUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the node's memory pool utilization when memory used least."
    ::= { qtechNodeMemoryPoolEntry 4 }

qtechNodeMemoryPoolLargestUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the node's memory pool utilization when memory used most."
    ::= { qtechNodeMemoryPoolEntry 5 }
        
qtechNodeMemoryPoolSize OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the size of the node's physical memory ."
    ::= { qtechNodeMemoryPoolEntry 6 }

qtechNodeMemoryPoolUsed OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the node's memory size that has been used."
    ::= { qtechNodeMemoryPoolEntry 7 }

qtechNodeMemoryPoolFree OBJECT-TYPE
    SYNTAX        Integer32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the node's memory size that is free."
    ::= { qtechNodeMemoryPoolEntry 8 }
    
qtechNodeMemoryPoolWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the first warning of the node's memory."
    ::= { qtechNodeMemoryPoolEntry 9 }
    
qtechNodeMemoryPoolCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "This is the second warning of the node's memory."
    ::= { qtechNodeMemoryPoolEntry 10 }  

qtechNodeMemoryPoolTotalSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The total size of node's physical memory, the unit is Mbytes ."
    ::= { qtechNodeMemoryPoolEntry 11 }

qtechNodeMemoryPoolUsedSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Have used node's physical memory size, the unit is Mbytes ."
    ::= { qtechNodeMemoryPoolEntry 12 }

qtechNodeMemoryPoolFreeSize OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The remaining node's physical memory size, the unit is Mbytes ."
    ::= { qtechNodeMemoryPoolEntry 13 }


--lank ap 2010-7   
qtechLankApMemoryPoolTable OBJECT-TYPE
  SYNTAX      SEQUENCE OF QtechLankApMemoryPoolEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "A table of lank ap memory pool utilization entries. Each of the
     objects provides a general idea of how much of the memory
     pool has been used over a given period of time."
  ::= { qtechMemoryPoolMIBObjects 3 }

qtechLankApMemoryPoolEntry OBJECT-TYPE
  SYNTAX      QtechLankApMemoryPoolEntry
  MAX-ACCESS  not-accessible
  STATUS      current
  DESCRIPTION
    "An entry in the lank ap memory pool utilization table."
  INDEX { qtechLankApMemoryPoolMacAddr }
  ::= { qtechLankApMemoryPoolTable 1 }

QtechLankApMemoryPoolEntry ::=
  SEQUENCE {
    qtechLankApMemoryPoolMacAddr             MacAddress,
    qtechLankApMemoryPoolWarning             Percent,  
    qtechLankApMemoryPoolCritical            Percent,
    qtechLankApMemoryPoolCurrentUtilization  Percent,
    qtechLankApMemoryPoolAverageUtilization  Percent
  }
 
qtechLankApMemoryPoolMacAddr OBJECT-TYPE
    SYNTAX        MacAddress
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "An index that uniquely represents lank ap Memory Pool."
    ::= { qtechLankApMemoryPoolEntry 1 }   
    
qtechLankApMemoryPoolWarning OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "The first warning of lank ap memory pool."
    ::= { qtechLankApMemoryPoolEntry 2 }

qtechLankApMemoryPoolCritical OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "The second warning of lank ap memory pool."
    ::= { qtechLankApMemoryPoolEntry 3 }

qtechLankApMemoryPoolCurrentUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the lank ap memory pool utilization currently."
    ::= { qtechLankApMemoryPoolEntry 4 }
  
qtechLankApMemoryPoolAverageUtilization OBJECT-TYPE
    SYNTAX        Percent
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This is the lank ap average memory pool utilization currently."
    ::= { qtechLankApMemoryPoolEntry 5 }


qtechMemoryMIBConformance OBJECT IDENTIFIER ::= { qtechMemoryMIB 2 }
qtechMemoryMIBCompliances OBJECT IDENTIFIER ::= { qtechMemoryMIBConformance 1 }
qtechMemoryMIBGroups      OBJECT IDENTIFIER ::= { qtechMemoryMIBConformance 2 }


-- compliance statements

qtechMemoryMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Qtech Memory MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { qtechMemoryPoolUtilizationMIBGroup
                 }
        ::= { qtechMemoryMIBCompliances 1 }
                
-- units of conformance

qtechMemoryPoolUtilizationMIBGroup OBJECT-GROUP
        OBJECTS {
          qtechMemoryPoolIndex,
          qtechMemoryPoolName,
          qtechMemoryPoolCurrentUtilization,
          qtechMemoryPoolLowestUtilization,
          qtechMemoryPoolLargestUtilization,
	  qtechMemoryPoolSize,
	  qtechMemoryPoolUsed,
	  qtechMemoryPoolFree,
	  qtechMemoryPoolWarning,
	  qtechMemoryPoolCritical,
          qtechMemoryPoolAverageUtilization,
          qtechMemoryPoolTotalSize,
          qtechMemoryPoolUsedSize,
          qtechMemoryPoolFreeSize
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing memory pool utilization to a Qtech agent."
        ::= { qtechMemoryMIBGroups 1 } 
  
qtechNodeMemoryPoolMIBGroup OBJECT-GROUP
        OBJECTS {
          qtechNodeMemoryPoolIndex,
          qtechNodeMemoryPoolName,
          qtechNodeMemoryPoolCurrentUtilization,
          qtechNodeMemoryPoolLowestUtilization,
          qtechNodeMemoryPoolLargestUtilization,
	  qtechNodeMemoryPoolSize,
	  qtechNodeMemoryPoolUsed,
	  qtechNodeMemoryPoolFree,
	  qtechNodeMemoryPoolWarning,
	  qtechNodeMemoryPoolCritical,
          qtechNodeMemoryPoolTotalSize,
          qtechNodeMemoryPoolUsedSize,
          qtechNodeMemoryPoolFreeSize
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing node's memory pool utilization to a Qtech agent."
        ::= { qtechMemoryMIBGroups 2 } 
  
END
