-- *****************************************************************
-- QTECH-MULTICAST-MIB.mib:  Qtech Multicast MIB file
--
-- January 2003, zhenggao
--
-- Copyright (c) 2003 by Qtech Networks Co.,Ltd.
-- All rights reserved.
-- 
-- *****************************************************************


QTECH-MULTICAST-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    Counter64,
    Counter32,
    Integer32,
    Unsigned32,
    IpAddress,
    TimeTicks
        FROM SNMPv2-SMI
    RowStatus,
    DisplayString,
    TruthValue
        FROM SNMPv2-TC
    qtechMgmt
        FROM QTECH-SMI
    InterfaceIndex
        FROM IF-MIB
    VlanId
        FROM Q-BRIDGE-MIB
    IfIndex
        FROM QTECH-TC
    IANAipMRouteProtocol
        FROM IANA-RTPROTO-MIB
    MODULE-COMPLIANCE,
    OBJECT-GROUP
        FROM SNMPv2-CONF;
 
qtechMultMIB MODULE-IDENTITY
    LAST-UPDATED "200301200000Z"
    ORGANIZATION "Qtech Networks Co.,Ltd."
    CONTACT-INFO
        "
        Tel: 4008-111-000
        
        E-mail: service@qtech.com.cn"
    DESCRIPTION
        "This module defines qtech multicast mibs."
    REVISION      "200301200000Z"
    DESCRIPTION
        "Initial version of this MIB module."
    ::= { qtechMgmt 28}

qtechMultMIBObjects OBJECT IDENTIFIER ::= { qtechMultMIB 1 }
        
qtechIpMRouteInterfaceTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechIpMRouteInterfaceEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The (conceptual) table containing multicast routing
         information specific to interfaces."
    ::= { qtechMultMIBObjects 1 }

qtechIpMRouteInterfaceEntry OBJECT-TYPE
    SYNTAX     QtechIpMRouteInterfaceEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) containing the multicast routing
         information for a particular interface."
    INDEX      { qtechIpMRouteInterfaceIfIndex }
    ::= { qtechIpMRouteInterfaceTable 1 }

QtechIpMRouteInterfaceEntry ::= SEQUENCE {
    qtechIpMRouteInterfaceIfIndex          InterfaceIndex,
    qtechIpMRouteInterfaceTtl              Integer32,
    qtechIpMRouteInterfaceProtocol         IANAipMRouteProtocol,
    qtechIpMRouteInterfaceRateLimit        Integer32,
    qtechIpMRouteInterfaceInMcastOctets    Counter32,
    qtechIpMRouteInterfaceOutMcastOctets   Counter32,
    qtechIpMRouteInterfaceHCInMcastOctets  Counter64,
    qtechIpMRouteInterfaceHCOutMcastOctets Counter64,
    qtechIpMRouteBoundaryAclName           DisplayString
    }

qtechIpMRouteInterfaceIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The ifIndex value of the interface for which this entry
         contains information."
    ::= { qtechIpMRouteInterfaceEntry 1 }

qtechIpMRouteInterfaceTtl OBJECT-TYPE
    SYNTAX     Integer32 (0..255)
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        "The datagram TTL threshold for the interface. Any IP
         multicast datagrams with a TTL less than this threshold will
         not be forwarded out the interface. The default value of 0
         means all multicast packets are forwarded out the
         interface."
    DEFVAL     { 0 }
    ::= { qtechIpMRouteInterfaceEntry 2 }

qtechIpMRouteInterfaceProtocol OBJECT-TYPE
    SYNTAX     IANAipMRouteProtocol
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The routing protocol running on this interface."
    ::= { qtechIpMRouteInterfaceEntry 3 }

qtechIpMRouteInterfaceRateLimit OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        "The rate-limit, in kilobits per second, of forwarded
         multicast traffic on the interface.  A rate-limit of 0
         indicates that no rate limiting is done."
    DEFVAL     { 0 }
    ::= { qtechIpMRouteInterfaceEntry 4 }

qtechIpMRouteInterfaceInMcastOctets OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of octets of multicast packets that have arrived
         on the interface, including framing characters.  This object
         is similar to ifInOctets in the Interfaces MIB, except that
         only multicast packets are counted."
    ::= { qtechIpMRouteInterfaceEntry 5 }

qtechIpMRouteInterfaceOutMcastOctets OBJECT-TYPE
    SYNTAX     Counter32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of octets of multicast packets that have been
         sent on the interface."
    ::= { qtechIpMRouteInterfaceEntry 6 }

qtechIpMRouteInterfaceHCInMcastOctets OBJECT-TYPE
    SYNTAX     Counter64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of octets of multicast packets that have arrived
         on the interface, including framing characters.  This object
         is a 64-bit version of ipMRouteInterfaceInMcastOctets.  It
         is similar to ifHCInOctets in the Interfaces MIB, except
         that only multicast packets are counted."
    ::= { qtechIpMRouteInterfaceEntry 7 }

qtechIpMRouteInterfaceHCOutMcastOctets OBJECT-TYPE
    SYNTAX     Counter64
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The number of octets of multicast packets that have been
         sent on the interface.  This object is a 64-bit version of
         ipMRouteInterfaceOutMcastOctets."
    ::= { qtechIpMRouteInterfaceEntry 8 }

qtechIpMRouteBoundaryAclName   OBJECT-TYPE
    SYNTAX     DisplayString
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION      
        "The name of an access list."
    ::= { qtechIpMRouteInterfaceEntry 9 }
    
qtechIpRpfTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechIpRpfEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The (conceptual) table listing the router's scoped
         multicast address boundaries."
    ::= { qtechMultMIBObjects 2 }  
    
qtechIpRpfEntry OBJECT-TYPE
    SYNTAX     QtechIpRpfEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) in the starIpRpfTable
         representing a scoped boundary."
    INDEX      { qtechIpRpfSourceAddress}
    ::= { qtechIpRpfTable 1 }
QtechIpRpfEntry ::= SEQUENCE {
    qtechIpRpfSourceAddress                 IpAddress,
    qtechIpRpfInterface                     InterfaceIndex,
    qtechIpRpfNeighborAddress               IpAddress,
    qtechIpRpfRouteAddress                  IpAddress,
    qtechIpRpfRouteMask                     IpAddress,
    qtechIpRpfType                          INTEGER
    }

qtechIpRpfSourceAddress OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "source address that this information concerns."
    ::= { qtechIpRpfEntry 1 }

qtechIpRpfInterface   OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "For the given source, interface from which the 
         router expects to get packets."
    ::= { qtechIpRpfEntry 2 }
    
qtechIpRpfNeighborAddress OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "For given source, neighbor from which the router expects to get
         packets."
    ::= { qtechIpRpfEntry 3 }

qtechIpRpfRouteAddress OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Route address and mask that matched against this source."
    ::= { qtechIpRpfEntry 4 }
    
qtechIpRpfRouteMask OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Route address and mask that matched against this source."
    ::= { qtechIpRpfEntry 5 }

qtechIpRpfType    OBJECT-TYPE
    SYNTAX     INTEGER{unicast(1),dvmrp(2)}
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Routing table from which this route was obtained, either unicast,
         or  DVMRP mroutes."
    ::= { qtechIpRpfEntry 6 }

qtechMPingTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechMPingEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "generate multicast traffic in the lab to test the multicast 
         tree since it pings all members of the group, and all members
         respond."
    ::= { qtechMultMIBObjects 3 }  
    
qtechMPingEntry OBJECT-TYPE
    SYNTAX     QtechMPingEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) in the starMPingTable."
    INDEX      { qtechMPingIndex ,qtechMPingGroupAddress ,qtechMPingGroupMember}
    ::= { qtechMPingTable 1 }
    
QtechMPingEntry ::= SEQUENCE {
    qtechMPingIndex                          Integer32,
    qtechMPingGroupAddress                   IpAddress,
    qtechMPingGroupMember                    IpAddress,
    qtechMPingResponseTime                   TimeTicks,
    qtechMPingDataLength                     Unsigned32,
    qtechMPingTimeOuts                       Unsigned32,       
    qtechMPingCompleted                      TruthValue,
    qtechMPingEntryStauts                    RowStatus    
    }
    
qtechMPingIndex OBJECT-TYPE
    SYNTAX Integer32(1..2147483647)
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "Object which specifies a unique entry in the
         qtechPingTable.  A management station wishing
         to initiate a ping operation should use a
         pseudo-random value for this object when creating
         or modifying an instance of a qtechPingEntry.
         The RowStatus semantics of the qtechPingEntryStatus
         object will prevent access conflicts."
    ::= { qtechMPingEntry 1 }
        
qtechMPingGroupAddress OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The address of group."
    ::= { qtechMPingEntry 2 }

qtechMPingGroupMember OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The address of Member."
    ::= { qtechMPingEntry 3 }

qtechMPingResponseTime OBJECT-TYPE
    SYNTAX     TimeTicks
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The response time of member."
    ::= { qtechMPingEntry 4 }

qtechMPingDataLength OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Pinged ICMP echo datagram's data length."
    DEFVAL { 1500 }
    ::= { qtechMPingEntry 5 }

qtechMPingTimeOuts OBJECT-TYPE
    SYNTAX Unsigned32
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION 
        "Ping but no echo from required address, the time last
         for time out, in milliseconds."
    DEFVAL { 1000 }
    ::= { qtechMPingEntry 6 }

qtechMPingCompleted OBJECT-TYPE
    SYNTAX TruthValue
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "While the ping process has completed the value of this field
         will be true(1), else false(2)."
    ::= { qtechMPingEntry 7 }
    
qtechMPingEntryStauts OBJECT-TYPE
    SYNTAX RowStatus
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "entry status for this list."
    ::= { qtechMPingEntry 8 }

qtechIpMRouteTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechIpMRouteEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The (conceptual) table containing multicast routing
         information for IP datagrams sent by particular sources to
         the IP multicast groups known to this router."
    ::= { qtechMultMIBObjects 4 }

qtechIpMRouteEntry OBJECT-TYPE
    SYNTAX     QtechIpMRouteEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) containing the multicast routing
         information for IP datagrams from a particular source and
         addressed to a particular IP multicast group address.
         Discontinuities in counters in this entry can be detected by
         observing the value of ipMRouteUpTime."
    INDEX      { qtechIpMRouteGroup,
                 qtechIpMRouteSource,
                 qtechIpMRouteSourceMask}
    ::= { qtechIpMRouteTable 1 }

QtechIpMRouteEntry ::= SEQUENCE {
    qtechIpMRouteGroup                 IpAddress,
    qtechIpMRouteSource                IpAddress,
    qtechIpMRouteSourceMask            IpAddress,
    qtechIpMRouteRP                    IpAddress,
    qtechIpMRoutePruneFlag             TruthValue,
    qtechIpMRouteSparseFlag            TruthValue,
    qtechIpMRouteConnectedFlag         TruthValue,
    qtechIpMRouteLocalFlag             TruthValue,
    qtechIpMRouteRegisterFlag          TruthValue,
    qtechIpMRouteRpFlag                TruthValue,
    qtechIpMRouteSptFlag               TruthValue,
    qtechIpMRouteInLimit               Integer32,
    qtechIpMRouteLifeAvg               Integer32,
    qtechIpMrouteGroupPktsCount        Integer32,
    qtechIpMrouteSouceCount            Integer32,
    qtechIpMrouteRpPkts                Integer32,
    qtechIpMrouteRpPktsPerSec          Integer32,
    qtechIpMrouteRpAvgPktsSize         Integer32,
    qtechIpMrouteRpKilobitsPerSec      Integer32,
    qtechIpMrouteSoucePkts             Integer32,
    qtechIpMrouteSoucePktsPerSec       Integer32,
    qtechIpMrouteSouceAvgPktsSize      Integer32,
    qtechIpMrouteSouceKilobitsPerSec   Integer32
    }

qtechIpMRouteGroup OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The address of group."
    ::= { qtechIpMRouteEntry 1 }  

qtechIpMRouteSource OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The address of Souce."
    ::= { qtechIpMRouteEntry 2 }

qtechIpMRouteSourceMask OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The Mask of Souce address."
    ::= { qtechIpMRouteEntry 3 }

qtechIpMRouteRP OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The address of RP Route."
    ::= { qtechIpMRouteEntry 4 }

qtechIpMRoutePruneFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicates whether this route is pruned. A pruned
         route is one that has an empty outgoing interface list or
         all interfaces are in Pruned state. A multicast packet
         that matches a pruned route doesn't get forwarded."
    ::= { qtechIpMRouteEntry 5 }

qtechIpMRouteSparseFlag OBJECT-TYPE
    SYNTAX     TruthValue   
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicating PIM multicast routing protocol
         sparse-mode (versus dense-mode).  In sparse-mode, packets
         are forwarded only out interfaces that have been joined.
         In dense-mode, they are forwarded out all interfaces that
         have not been pruned."
    ::= { qtechIpMRouteEntry 6 }
 
qtechIpMRouteConnectedFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicating whether there is a directly connected
         member for a group attached to the router."
    ::= { qtechIpMRouteEntry 7 }

qtechIpMRouteLocalFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicating whether local system is a member of a
         group on any interface."
    ::= { qtechIpMRouteEntry 8 }

qtechIpMRouteRegisterFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicates whether to send registers for the
         entry. A first hop router directly connected to a
         multicast source host, as well as a border router on the
         boundary of two domains running different multicast
         routing protocols, encapsulates packets to be sent on the
         shared tree. This is done until the RP sends Joins back to
         this router."
    ::= { qtechIpMRouteEntry 9 }

qtechIpMRouteRpFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicating whether there is a Prune state for
         this source along the shared tree."
    ::= { qtechIpMRouteEntry 10 }
 
qtechIpMRouteSptFlag OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Boolean, indicating whether data is being received on the
         SPT tree, ie the Shortest Path Tree."
    ::= { qtechIpMRouteEntry 11 }

qtechIpMRouteInLimit OBJECT-TYPE
    SYNTAX     Integer32 (0..2147483647)
    UNITS      "Kbits/second"
    MAX-ACCESS read-only
    STATUS     obsolete
    DESCRIPTION
        "Incoming interface's limit for rate limiting data
         traffic, in Kbps. "
    ::= { qtechIpMRouteEntry 12 }

qtechIpMRouteLifeAvg  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The average of data traffic."
    ::= { qtechIpMRouteEntry 13 }

qtechIpMrouteGroupPktsCount  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The count of group packets."
    ::= { qtechIpMRouteEntry 14 }

qtechIpMrouteSouceCount  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The count of souce."
    ::= { qtechIpMRouteEntry 15 }

qtechIpMrouteRpPkts  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The packets count of Rp-Tree ."
    ::= { qtechIpMRouteEntry 16 }

qtechIpMrouteRpPktsPerSec  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The packets count which Rp-Tree send in one second."
    ::= { qtechIpMRouteEntry 17 }

qtechIpMrouteRpAvgPktsSize  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The average packets size which Rp-Tree send ."
    ::= { qtechIpMRouteEntry 18 }

qtechIpMrouteRpKilobitsPerSec   OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Kilobits of Rp-Tree send in one second ."
    ::= { qtechIpMRouteEntry 19 }

qtechIpMrouteSoucePkts  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The packets count of souce ."
    ::= { qtechIpMRouteEntry 20 }

qtechIpMrouteSoucePktsPerSec  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The packets count which souce send in one second."
    ::= { qtechIpMRouteEntry 21 }

qtechIpMrouteSouceAvgPktsSize  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The average packets size which souce send ."
    ::= { qtechIpMRouteEntry 22 }

qtechIpMrouteSouceKilobitsPerSec   OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Kilobits of Souce send in one second ."
    ::= { qtechIpMRouteEntry 23 }  

--
--mrinfo table
--
qtechMrinfoTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechMrinfoEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The (conceptual) table containing multicast routing
         information for PIM neighbor."
    ::= { qtechMultMIBObjects 5 }

qtechMrinfoEntry OBJECT-TYPE
    SYNTAX     QtechMrinfoEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) of starMrinfoTable."
    INDEX      { qtechMrinfoIfAddress}
    ::= { qtechMrinfoTable 1 }

QtechMrinfoEntry ::= SEQUENCE {
    qtechMrinfoIfAddress        IpAddress,     
    qtechMrinfoNeighbor       IpAddress,
    qtechMrinfoTtlThreshold   Integer32,
    qtechMrinfoMetricOffset   Integer32,
    qtechMrinfoQuerier        TruthValue,
    qtechMrinfoDown           TruthValue,
    qtechMrinfoLeaf           TruthValue
    }    
 
qtechMrinfoIfAddress  OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The address of Interface Router to request."
    ::= { qtechMrinfoEntry 1 }

qtechMrinfoNeighbor  OBJECT-TYPE
    SYNTAX     IpAddress
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The address of Interface neighbor,if there is no neigbor then 
         return 0.0.0.0."
    ::= { qtechMrinfoEntry 2 }

qtechMrinfoTtlThreshold  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The datagram TTL threshold for the interface. Any IP
         multicast datagrams with a TTL less than this threshold will
         not be forwarded out the interface. The default value of 0
         means all multicast packets are forwarded out the
         interface."
    ::= { qtechMrinfoEntry 3 }

qtechMrinfoMetricOffset  OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "Value added to the metric of a DVMRP route advertised in 
         a report message."
    ::= { qtechMrinfoEntry 4 }
    
qtechMrinfoQuerier  OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "If this interface is querier then the value of this field
         will be true(1), else false(2)."
    ::= { qtechMrinfoEntry 5 }
    
qtechMrinfoDown  OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "If this interface is down then the value of this field
         will be true(1), else false(2)."
    ::= { qtechMrinfoEntry 6 }

qtechMrinfoLeaf  OBJECT-TYPE
    SYNTAX     TruthValue
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "If locoal switch  is leaf switch  then the value of this field
         will be true(1), else false(2)."
    ::= { qtechMrinfoEntry 7 }
    
--
--multicast vlan id Table
--
qtechMultVidTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF QtechMultVidEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "The (conceptual) table containing multicast routing
         vlan id for interface."
    ::= { qtechMultMIBObjects 6 }

qtechMultVidEntry OBJECT-TYPE
    SYNTAX     QtechMultVidEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "An entry (conceptual row) of qtechMultVidTable."
    INDEX      { qtechMultInterfaceIfIndex }
    ::= { qtechMultVidTable 1 }

QtechMultVidEntry ::= SEQUENCE {
    qtechMultInterfaceIfIndex        IfIndex,  
    qtechMultVlan                    VlanId                
    }    
 
qtechMultInterfaceIfIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            " "
        ::= { qtechMultVidEntry 1 } 

qtechMultVlan  OBJECT-TYPE
    SYNTAX     VlanId    
    MAX-ACCESS read-write
    STATUS     current
    DESCRIPTION
        "The value indicate the VID of the vlan which that this port 
         belong to. This field is effective for only trunk port.The 
         default value indicate the VID of the native vlan of that 
         this port."
    ::= { qtechMultVidEntry 2 }

-- units of conformance

qtechMultMIBConformance OBJECT IDENTIFIER ::= { qtechMultMIB 2 }
qtechMultMIBCompliances OBJECT IDENTIFIER ::= { qtechMultMIBConformance 1 }
qtechMultMIBGroups      OBJECT IDENTIFIER ::= { qtechMultMIBConformance 2 }

-- compliance statements
qtechMultMIBCompliance MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
        "The compliance statement for entities which implement
         the Qtech MULTICAST MIB"
    MODULE  -- this module
    MANDATORY-GROUPS {
        qtechIpMRouteInterfaceMIBGroup,    
        qtechIpRpfMIBGroup,
        qtechMPingMIBGroup,
        qtechIpMRouteMIBGroup,
        qtechMrinfoMIBGroup,
        qtechMultVidMIBGroup
        }
    ::= { qtechMultMIBCompliances 1 }

-- conformance information

qtechIpMRouteInterfaceMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechIpMRouteInterfaceIfIndex,
    qtechIpMRouteInterfaceTtl,
    qtechIpMRouteInterfaceProtocol,
    qtechIpMRouteInterfaceRateLimit,
    qtechIpMRouteInterfaceInMcastOctets,
    qtechIpMRouteInterfaceOutMcastOctets,
    qtechIpMRouteInterfaceHCInMcastOctets,
    qtechIpMRouteInterfaceHCOutMcastOctets,
    qtechIpMRouteBoundaryAclName
    }
    STATUS  current
    DESCRIPTION
        "A collection of IP multicast route interface managment."
    ::= { qtechMultMIBGroups 1 }

qtechIpRpfMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechIpRpfSourceAddress,
    qtechIpRpfInterface,
    qtechIpRpfNeighborAddress,
    qtechIpRpfRouteAddress,
    qtechIpRpfRouteMask,
    qtechIpRpfType
    }
    STATUS  current
    DESCRIPTION
        "A collection of IP RPF managment."
    ::= { qtechMultMIBGroups 2 }

qtechMPingMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechMPingIndex,
--    qtechMPingGroupAddress,
--    qtechMPingGroupMember,
    qtechMPingResponseTime,
    qtechMPingDataLength,
    qtechMPingTimeOuts,       
    qtechMPingCompleted,
    qtechMPingEntryStauts    
    }
    STATUS  current
    DESCRIPTION
        "A collection of multicast ping managment."
    ::= { qtechMultMIBGroups 3 }

qtechIpMRouteMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechIpMRouteGroup,
--    qtechIpMRouteSource,
--    qtechIpMRouteSourceMask,
    qtechIpMRouteRP,
    qtechIpMRoutePruneFlag,
    qtechIpMRouteSparseFlag,
    qtechIpMRouteConnectedFlag,
    qtechIpMRouteLocalFlag,
    qtechIpMRouteRegisterFlag,
    qtechIpMRouteRpFlag,
    qtechIpMRouteSptFlag,
    qtechIpMRouteInLimit,
    qtechIpMRouteLifeAvg,
    qtechIpMrouteGroupPktsCount,
    qtechIpMrouteSouceCount,
    qtechIpMrouteRpPkts,
    qtechIpMrouteRpPktsPerSec,
    qtechIpMrouteRpAvgPktsSize,
    qtechIpMrouteRpKilobitsPerSec,
    qtechIpMrouteSoucePkts,
    qtechIpMrouteSoucePktsPerSec,
    qtechIpMrouteSouceAvgPktsSize,
    qtechIpMrouteSouceKilobitsPerSec
    }
    STATUS  current
    DESCRIPTION
        "A collection of IP multicast route managment."
    ::= { qtechMultMIBGroups 4 }

qtechMrinfoMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechMrinfoIfAddress,
    qtechMrinfoNeighbor,
    qtechMrinfoTtlThreshold,
    qtechMrinfoMetricOffset,
    qtechMrinfoQuerier,
    qtechMrinfoDown,
    qtechMrinfoLeaf
    }
    STATUS  current
    DESCRIPTION
        "A collection of multicast information"
    ::= { qtechMultMIBGroups 5 } 

qtechMultVidMIBGroup OBJECT-GROUP
    OBJECTS {
--    qtechMultInterfaceIfIndex,
    qtechMultVlan      
    }
    STATUS  current
    DESCRIPTION
        "A collection of multicast vid information"
    ::= { qtechMultMIBGroups 6 }            
END

