-- MibName=raisecomIgmp
-- *****************************************************************
-- raisecom-igmpl2-mib.mib:  Raisecom IGMP MIB file
--
-- Feb 2011, aiyingjie
--
-- Copyright (c) 1994-2000, 2001 by Raisecom, Inc.
-- All rights reserved.
-- 
-- *****************************************************************

RAISECOM-IGMPL2-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32     	 			    FROM SNMPv2-SMI
    RowStatus,TruthValue		    FROM SNMPv2-TC 
    PortList, Vlanset, EnableVar	FROM SWITCH-TC 
    InetAddress, InetAddressType    FROM INET-ADDRESS-MIB  
    VlanIndex,VlanId                FROM Q-BRIDGE-MIB
    raisecomAgent                   FROM RAISECOM-BASE-MIB;         
raisecomIgmpL2 MODULE-IDENTITY
    LAST-UPDATED "201102180000Z"
    ORGANIZATION "raisecom Group"
    CONTACT-INFO
                "       Raise Systems
                        
                Postal: Beijing,
                        China

                   Tel: 86-010-82884499

                E-mail: aiyingjie@raisecom.com"
    DESCRIPTION
            "The MIB module for Igmp Module."
    ::= { raisecomAgent 28}   


  
raisecomIgmpL2Notifications	OBJECT IDENTIFIER ::= {	raisecomIgmpL2 1 }
raisecomIgmpL2Objects			OBJECT IDENTIFIER ::= {	raisecomIgmpL2 2 }   
raisecomIgmpL2Conformance		OBJECT IDENTIFIER ::= {	raisecomIgmpL2 3 }  

   
--
raisecomIgmpBase			OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 1 }
raisecomIgmpSnooping		OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 2 }   
raisecomIgmpMvr		    	OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 3 } 
raisecomIgmpVlanCopy		OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 4 } 
raisecomIgmpProxy		    OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 5 } 
raisecomIgmpFilter			OBJECT IDENTIFIER ::= {	raisecomIgmpL2Objects 6 } 
-- 



raisecomIgmpBaseScalar		OBJECT IDENTIFIER ::= {	raisecomIgmpBase 1 }
raisecomIgmpSnoopingScalar	OBJECT IDENTIFIER ::= {	raisecomIgmpSnooping 1 }
raisecomIgmpMvrScalar		OBJECT IDENTIFIER ::= {	raisecomIgmpMvr 1 }
raisecomIgmpVlanCopyScalar	OBJECT IDENTIFIER ::= {	raisecomIgmpVlanCopy 1 }
raisecomIgmpProxyScalar		OBJECT IDENTIFIER ::= {	raisecomIgmpProxy 1 }
raisecomIgmpFilterScalar	OBJECT IDENTIFIER ::= {	raisecomIgmpFilter 1 }



--
-- BASE Config Group
--
raisecomIgmpAging OBJECT-TYPE           
        SYNTAX        INTEGER(5..3600)  
		        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
               "The timeout period in seconds for aging out Multicast Groups dynamically learned with IGMP Snooping.  
				Note that aging operates on a per interface per VLAN per multicast group basis.
				Value '0XFFFFFFFF' means never timeout."
        DEFVAL { 300 }
        ::= { raisecomIgmpBaseScalar 1 }


raisecomIgmpRingPortList OBJECT-TYPE
        SYNTAX     PortList
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
            "Set the ring port."
        ::= { raisecomIgmpBaseScalar 2 }

raisecomIgmpImmediateLeaveTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpImmediateLeaveEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
            "Config immediate leave on port or port and vlan"
        ::= { raisecomIgmpBase 2 }    
        
raisecomIgmpImmediateLeaveEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpImmediateLeaveEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "Indicates immediate leave on port or port and vlan"
        INDEX      { raisecomIgmpImmediateLeavePort }
        ::= { raisecomIgmpImmediateLeaveTable 1 }   

RaisecomIgmpImmediateLeaveEntry ::= SEQUENCE {    
        raisecomIgmpImmediateLeavePort        INTEGER,
		raisecomIgmpImmediateLeaveType		  INTEGER,
        raisecomIgmpImmediateLeaveVlanList    Vlanset,
        raisecomIgmpImmediateLeaveRowStatus   RowStatus
        }

        
raisecomIgmpImmediateLeavePort OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    not-accessible 
        STATUS        current
	DESCRIPTION  
		"."
        ::= { raisecomIgmpImmediateLeaveEntry 1 }

raisecomIgmpImmediateLeaveType OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    read-create 
        STATUS        current
	DESCRIPTION  
		"."
        ::= { raisecomIgmpImmediateLeaveEntry 2 }
    
raisecomIgmpImmediateLeaveVlanList OBJECT-TYPE
        SYNTAX        Vlanset  
        MAX-ACCESS    read-create 
        STATUS        current
	DESCRIPTION  
		"."
        ::= { raisecomIgmpImmediateLeaveEntry 3 }

raisecomIgmpImmediateLeaveRowStatus OBJECT-TYPE
        SYNTAX        RowStatus
        MAX-ACCESS    read-create
        STATUS        current
	DESCRIPTION  
		"The mulcast router status"
        ::= { raisecomIgmpImmediateLeaveEntry 4 }

-- 
raisecomIgmpMrouterTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpMrouterEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "Indicates the igmp router ports."
        ::= { raisecomIgmpBase 3 }

raisecomIgmpMrouterEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpMrouterEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "Indicates the igmp router ports."
        INDEX      { raisecomIgmpMrouterPort, raisecomIgmpMrouterVlan}
        ::= { raisecomIgmpMrouterTable 1 }

RaisecomIgmpMrouterEntry ::= SEQUENCE {    
        raisecomIgmpMrouterPort        INTEGER,
		raisecomIgmpMrouterVlan		   VlanIndex,
        raisecomIgmpMrouterLiveTime    INTEGER(5..3600),
        raisecomIgmpMrouterMRStatus    INTEGER,
        raisecomIgmpMrouterRowStatus   RowStatus
        }
        
raisecomIgmpMrouterPort OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    not-accessible 
        STATUS        current
	DESCRIPTION  
		"The mulcast router port. The index of this entry."
        ::= { raisecomIgmpMrouterEntry 1 }

raisecomIgmpMrouterVlan OBJECT-TYPE
        SYNTAX        VlanIndex  
        MAX-ACCESS    not-accessible 
        STATUS        current
	DESCRIPTION  
		"The mulcast router vlan. The index of this entry."
        ::= { raisecomIgmpMrouterEntry 2 }
    
raisecomIgmpMrouterLiveTime OBJECT-TYPE
        SYNTAX        INTEGER(5..3600)  
        MAX-ACCESS    read-only 
        STATUS        current
	DESCRIPTION  
		"The mulcast router port live time."
        ::= { raisecomIgmpMrouterEntry 3 }

raisecomIgmpMrouterMRStatus OBJECT-TYPE
        SYNTAX        INTEGER
        MAX-ACCESS    read-create 
        STATUS        current
	DESCRIPTION  
		"The mulcast router port stsatus, 0x10 indicates dynamic ,0x20 indicates static."
        ::= { raisecomIgmpMrouterEntry 4 }

        
raisecomIgmpMrouterRowStatus OBJECT-TYPE
	SYNTAX	RowStatus
	ACCESS	read-create
	STATUS	current
	DESCRIPTION
		"The row status of this entry."
	::= { raisecomIgmpMrouterEntry 5 }

-- 
raisecomIgmpMemberTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpMemberEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
        "This table record the igmp members learnd by the device."
        ::= { raisecomIgmpBase 4 }

raisecomIgmpMemberEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpMemberEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Record the igmp members learnd by the device."
        INDEX      {raisecomIgmpMemberPort, raisecomIgmpMemberUserVlan, raisecomIgmpMemberGroupIpType, 
        			raisecomIgmpMemberGroup, raisecomIgmpMemberMVlan }
        ::= { raisecomIgmpMemberTable 1 }

RaisecomIgmpMemberEntry ::= SEQUENCE { 
		raisecomIgmpMemberPort           INTEGER,
		raisecomIgmpMemberUserVlan       VlanIndex,
		raisecomIgmpMemberGroupIpType    InetAddressType,
		raisecomIgmpMemberGroup          InetAddress,
		raisecomIgmpMemberMVlan          INTEGER,
		raisecomIgmpMemberLiveTime       INTEGER(5..3600),
		raisecomIgmpMemberSource         INTEGER,
		raisecomIgmpMemberRowStatus         RowStatus
        }   
        
raisecomIgmpMemberPort OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpMemberEntry 1 }

 raisecomIgmpMemberUserVlan OBJECT-TYPE
        SYNTAX        VlanIndex  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpMemberEntry 2 }   
        
raisecomIgmpMemberGroupIpType OBJECT-TYPE
        SYNTAX        InetAddressType  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Indicates the IP address type."
        ::= { raisecomIgmpMemberEntry 3 }
 
raisecomIgmpMemberGroup OBJECT-TYPE
        SYNTAX        InetAddress  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Indicates the IP multicast group that join."
        ::= { raisecomIgmpMemberEntry 4 }

raisecomIgmpMemberMVlan OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Indicates the multicast VLAN that allow user join."
        ::= { raisecomIgmpMemberEntry 5 }

raisecomIgmpMemberLiveTime OBJECT-TYPE
        SYNTAX        INTEGER(5..3600)  
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"Indicates the multicast member live time."
        ::= { raisecomIgmpMemberEntry 6 }

raisecomIgmpMemberSource OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"Indicates the module of this member."
        ::= { raisecomIgmpMemberEntry 7 }

raisecomIgmpMemberRowStatus OBJECT-TYPE
        SYNTAX        RowStatus  
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"The row status of this entry."
        ::= { raisecomIgmpMemberEntry 8 }

-- 
raisecomIgmpPortStatisticsTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpPortStatisticsEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
        "This table indicates the statistics of igmp packets on prots."
        ::= { raisecomIgmpBase 5 }

raisecomIgmpPortStatisticsEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpPortStatisticsEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
        "Indicates the statistics of igmp packets on prots."
        INDEX      { raisecomIgmpPortStatisticsPortNum }
        ::= { raisecomIgmpPortStatisticsTable 1 }
   
   
RaisecomIgmpPortStatisticsEntry ::= SEQUENCE { 

		raisecomIgmpPortStatisticsPortNum   INTEGER,
		raisecomIgmpPortStatisticsClear     INTEGER,
		raisecomIgmpPortStatisticsRecvQuery   Counter,
		raisecomIgmpPortStatisticsRecvReport   Counter,
		raisecomIgmpPortStatisticsRecvLeave      Counter,
		raisecomIgmpPortStatisticsFilterDropQuery   Counter,
		raisecomIgmpPortStatisticsFilterDropReport    Counter,
		raisecomIgmpPortStatisticsFilterDropLeave    Counter,
		raisecomIgmpPortStatisticsSnoopDealQuery      Counter,
		raisecomIgmpPortStatisticsSnoopDealReport      Counter,
		raisecomIgmpPortStatisticsSnoopDealLeave        Counter,
		raisecomIgmpPortStatisticsMvrDealQuery         Counter,
		raisecomIgmpPortStatisticsMvrDealReport        Counter,
		raisecomIgmpPortStatisticsMvrDealLeave         Counter,
		raisecomIgmpPortStatisticsVlanCPDealQuery       Counter,
		raisecomIgmpPortStatisticsVlanCPDealReport     Counter,
		raisecomIgmpPortStatisticsVlanCPDealLeave       Counter,
		raisecomIgmpPortStatisticsReplaceCount          Counter
        }

raisecomIgmpPortStatisticsPortNum OBJECT-TYPE
        SYNTAX        INTEGER  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"The port on which statistics be gathered. Index identifying this entry."
        ::= { raisecomIgmpPortStatisticsEntry 1 }

 raisecomIgmpPortStatisticsClear OBJECT-TYPE
        SYNTAX        INTEGER { read(0),clear(1) } 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Set this object 1 to clear all the information of MVR port statistics.
		Get this object will always return 0.
		"
        ::= { raisecomIgmpPortStatisticsEntry 2 }

raisecomIgmpPortStatisticsRecvQuery OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of query packet received on this port."
        ::= { raisecomIgmpPortStatisticsEntry 3 }

 raisecomIgmpPortStatisticsRecvReport OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of report packet received on this port."
        ::= { raisecomIgmpPortStatisticsEntry 4 }

raisecomIgmpPortStatisticsRecvLeave OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of leave packet received on this port."
        ::= { raisecomIgmpPortStatisticsEntry 5 }

raisecomIgmpPortStatisticsFilterDropQuery OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of query packet droped on this port."
        ::= { raisecomIgmpPortStatisticsEntry 6 }

raisecomIgmpPortStatisticsFilterDropReport OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of report packet droped on this port."
        ::= { raisecomIgmpPortStatisticsEntry 7 }

raisecomIgmpPortStatisticsFilterDropLeave OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of leave packet droped on this port."
        ::= { raisecomIgmpPortStatisticsEntry 8 }

raisecomIgmpPortStatisticsSnoopDealQuery OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of query packets dealed by snooping."
        ::= { raisecomIgmpPortStatisticsEntry 9 }

raisecomIgmpPortStatisticsSnoopDealReport OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of report packets dealed by snooping."
        ::= { raisecomIgmpPortStatisticsEntry 10 }

raisecomIgmpPortStatisticsSnoopDealLeave OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of leave packets dealed by snooping."
        ::= { raisecomIgmpPortStatisticsEntry 11 }

raisecomIgmpPortStatisticsMvrDealQuery OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of query packets dealed by mvr."
        ::= { raisecomIgmpPortStatisticsEntry 12 }

raisecomIgmpPortStatisticsMvrDealReport OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of report packets dealed by mvr."
        ::= { raisecomIgmpPortStatisticsEntry 13 }

raisecomIgmpPortStatisticsMvrDealLeave OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of leave packets dealed by mvr."
        ::= { raisecomIgmpPortStatisticsEntry 14 }

raisecomIgmpPortStatisticsVlanCPDealQuery OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of query packets dealed by vlan-copy."
        ::= { raisecomIgmpPortStatisticsEntry 15 }

raisecomIgmpPortStatisticsVlanCPDealReport OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of report packets dealed by vlan-copy."
        ::= { raisecomIgmpPortStatisticsEntry 16 }

raisecomIgmpPortStatisticsVlanCPDealLeave OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note the count of leave packets dealed by vlan-copy."
        ::= { raisecomIgmpPortStatisticsEntry 17 }

raisecomIgmpPortStatisticsReplaceCount OBJECT-TYPE
        SYNTAX        Counter 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"The object note count of replace taken place on this port"
        ::= { raisecomIgmpPortStatisticsEntry 18 }

--
-- Snooping Group
--
raisecomIgmpSnoopingEnable OBJECT-TYPE
		SYNTAX      EnableVar
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
               "Set this object to enable(1) to enable IGMP Snooping.  Set it to disable(2) to disable IGMP Snooping.
				Note that IGMP Snooping can work with or without GVRP and GMRP enabled.
				"
        DEFVAL { 2 }
        ::= { raisecomIgmpSnoopingScalar 1 } 
        
raisecomIgmpSnoopingEnableVlanList OBJECT-TYPE
		SYNTAX      Vlanset
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
               "Enable/Disable igmp snooping of vlan."
        ::= { raisecomIgmpSnoopingScalar 2 }
        
raisecomIgmpAuthRadiusEnable  OBJECT-TYPE
    SYNTAX EnableVar
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "Setting this object to enabled(1) enables IGMP Authentication via Radius.  Setting
        it to disabled(2) disables IGMP Authentication via Radius."  
    DEFVAL {disable}
    ::= { raisecomIgmpSnoopingScalar 3 }

raisecomIgmpAuthRadiusPortEnable  OBJECT-TYPE
    SYNTAX PortList
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The enabled/disabled  status of IGMP Authentication of port via Radius."
    ::= { raisecomIgmpSnoopingScalar 4 } 



--
-- Mvr Group
--
raisecomIgmpMvrEnable OBJECT-TYPE
		SYNTAX      EnableVar
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
               "This object controls whether the MVR is enabled on the device. 
               A disable(2) value will prevent the MVR on the device."   
        DEFVAL { 2 }
        ::= { raisecomIgmpMvrScalar 1 }


raisecomIgmpMvrEnablePortList OBJECT-TYPE
		SYNTAX      PortList
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
               "Indicates the ports has enabled igmp mvr."
        ::= { raisecomIgmpMvrScalar 2 }

-- 
raisecomIgmpMvrMVlanGroupTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpMvrMVlanGroupEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "This table indicates the relation between multicast-vlan and igmp member."
        ::= { raisecomIgmpMvr 2 }

raisecomIgmpMvrMVlanGroupEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpMvrMVlanGroupEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "Indicates the relation between multicast-vlan and igmp member."
        INDEX      {raisecomIgmpMvrGroupIpType, raisecomIgmpMvrGroup }
        ::= { raisecomIgmpMvrMVlanGroupTable 1 }

RaisecomIgmpMvrMVlanGroupEntry ::= SEQUENCE {  
         raisecomIgmpMvrGroupIpType    InetAddressType,
         raisecomIgmpMvrGroup          InetAddress,
         raisecomIgmpMvrMVlan          VlanId,
         raisecomIgmpMvrGroupRowStatus    RowStatus
		}

 raisecomIgmpMvrGroupIpType OBJECT-TYPE
        SYNTAX        InetAddressType
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Indicates the IP address type."
        ::= { raisecomIgmpMvrMVlanGroupEntry 1 }


 raisecomIgmpMvrGroup OBJECT-TYPE
        SYNTAX        InetAddress
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
			"Index identifying this entry.
			the multicast vlan of this groups which user want to receive.
			"
        ::= { raisecomIgmpMvrMVlanGroupEntry 2 }

  raisecomIgmpMvrMVlan OBJECT-TYPE
        SYNTAX        VlanId 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Indicates the multicast VLAN ID, which is connected to multicast router."
        ::= { raisecomIgmpMvrMVlanGroupEntry 3 }

 raisecomIgmpMvrGroupRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"The row status of this entry."
        ::= { raisecomIgmpMvrMVlanGroupEntry 4 }
  
  
  
--
-- Clan-Copy Group
--
 raisecomIgmpVlanCopyEnable	OBJECT-TYPE
        SYNTAX          EnableVar
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object controls whether the igmp vlan-copy is enabled on the device. 
                A disable(2) value will prevent the vlan-copy on the device." 
        DEFVAL { 2 }
        ::= { raisecomIgmpVlanCopyScalar 1 }
 
raisecomIgmpVlanCopyEnablePortList	OBJECT-TYPE
        SYNTAX          PortList
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "Indicates the ports has enabled igmp vlan-copy."
        ::= { raisecomIgmpVlanCopyScalar 2 }
 
 
-- 
raisecomIgmpVlanCopyVlanGroupTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpVlanCopyVlanGroupEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "This table indicates the relation between multicast-vlan and igmp member."
        ::= { raisecomIgmpVlanCopy 2 }

raisecomIgmpVlanCopyVlanGroupEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpVlanCopyVlanGroupEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "Indicates the relation between multicast-vlan and igmp member."
        INDEX      {raisecomIgmpVlanCopyGroupIpType, raisecomIgmpVlanCopyGroup }
        ::= { raisecomIgmpVlanCopyVlanGroupTable 1 }

RaisecomIgmpVlanCopyVlanGroupEntry ::= SEQUENCE {  
         raisecomIgmpVlanCopyGroupIpType   InetAddressType,
         raisecomIgmpVlanCopyGroup       InetAddress,  
         raisecomIgmpVlanCopyMcastVlan    VlanId,
         raisecomIgmpVlanCopyGroupRowStatus    RowStatus
		}        
		
raisecomIgmpVlanCopyGroupIpType OBJECT-TYPE
        SYNTAX        InetAddressType
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Indicates the IP address type."
        ::= { raisecomIgmpVlanCopyVlanGroupEntry 1 }

raisecomIgmpVlanCopyGroup OBJECT-TYPE
        SYNTAX        InetAddress 
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
			"Index identifying this entry.
			the multicast vlan of this groups which user want to receive.
			"
        ::= { raisecomIgmpVlanCopyVlanGroupEntry 2 }   
        
raisecomIgmpVlanCopyMcastVlan OBJECT-TYPE
        SYNTAX        VlanId 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Indicates the multicast VLAN ID, which is connected to multicast router."
        ::= { raisecomIgmpVlanCopyVlanGroupEntry 3 }


 raisecomIgmpVlanCopyGroupRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"The row status of this entry."
        ::= { raisecomIgmpVlanCopyVlanGroupEntry 4 }
 
 
 
--
-- Proxy Group
--
 raisecomIgmpProxyEnable	OBJECT-TYPE
        SYNTAX          EnableVar
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object controls whether the proxy is enabled on the device. 
                A disable(2) value will prevent the proxy on the device."
        DEFVAL { 2 }
        ::= { raisecomIgmpProxyScalar 1 }
 
 raisecomIgmpProxySuppressionEnable	OBJECT-TYPE
        SYNTAX          EnableVar
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object controls whether the proxy suppression is enabled on the device. 
                A disable(2) value will prevent the proxy suppression on the device."
       DEFVAL { 2 }
        ::= { raisecomIgmpProxyScalar 2 }


 raisecomIgmpProxyQuerierEnable	OBJECT-TYPE
        SYNTAX          EnableVar
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object controls whether the IGMP querier is enabled on the device.
				A disable(2) value will prevent the IGMP querier on the device.
				"    
		DEFVAL { 2 }
        ::= { raisecomIgmpProxyScalar 3 }


 raisecomIgmpProxySourceIpType	OBJECT-TYPE
        SYNTAX          InetAddressType
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "Indicates the IP address type."
        DEFVAL { 1 }
        ::= { raisecomIgmpProxyScalar 4 }


 raisecomIgmpProxySourceIpAddress	OBJECT-TYPE
        SYNTAX          InetAddress
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object specify the source IP address for IGMP proxy and querier. 
                If not configure this object ,the default value is the IP address on IP interface 0.
                Then if the IP address on IP interface 0 is none, the default value is 0.0.0.0."
        ::= { raisecomIgmpProxyScalar 5 }


 raisecomIgmpProxyQueryInterval	OBJECT-TYPE
        SYNTAX          INTEGER(10..3600)
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object specify interval time that querier send general query packet.
				The default value is 60s.
				"
        ::= { raisecomIgmpProxyScalar 6 }


 raisecomIgmpProxyQueryMaxReponseInterval	OBJECT-TYPE
        SYNTAX          INTEGER(1..25)
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object specify max response time for host to response the IGMP proxy.
				The default value is 10s.
				"
        ::= { raisecomIgmpProxyScalar 7 }


 raisecomIgmpProxyQueryLastMemberInterval	OBJECT-TYPE
        SYNTAX          INTEGER(1..25)
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "This object specify last member query interval.
                When last member leave the group,IGMP proxy will send the special group query packet.
                If IGMP proxy receive none report packet of this group in the last member query interval, 
                IGMP proxy will delete this group from multicast transmit table.The default value is 1s."
        ::= { raisecomIgmpProxyScalar 8 }
 
 
 
--
-- Filter Group
--
raisecomIgmpFilterEnableFilter	OBJECT-TYPE
        SYNTAX          EnableVar
        MAX-ACCESS      read-write
        STATUS current
        DESCRIPTION
                "The state of global Igmp Filter" 
        DEFVAL { 2 }
        ::= { raisecomIgmpFilterScalar 1 }

raisecomIgmpFilterMaxProfileNum	OBJECT-TYPE
        SYNTAX          INTEGER
        MAX-ACCESS      read-only
        STATUS current
        DESCRIPTION
                "Max Profile number that you can set and used " 
        DEFVAL { 100 }
        ::= { raisecomIgmpFilterScalar 2 }


raisecomIgmpFilterCurrentProfileNum	OBJECT-TYPE
        SYNTAX          INTEGER
        MAX-ACCESS      read-only
        STATUS current
        DESCRIPTION
                "Current number of profiles that are already created"  
        DEFVAL { 0  }
        ::= { raisecomIgmpFilterScalar 3 }


-- 
raisecomIgmpFilterProfileTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpFilterProfileEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "description"
        ::= { raisecomIgmpFilter 2 } 
        
        
raisecomIgmpFilterProfileEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpFilterProfileEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "description"
        INDEX      { raisecomIgmpFilterProfileIndex }
        ::= { raisecomIgmpFilterProfileTable 1 }

RaisecomIgmpFilterProfileEntry ::= SEQUENCE {  
         raisecomIgmpFilterProfileIndex    INTEGER(1..100),
         raisecomIgmpFilterProfileAct      INTEGER,
         raisecomIgmpFilterProfileRowStatus   RowStatus
		} 
		
raisecomIgmpFilterProfileIndex OBJECT-TYPE
        SYNTAX        INTEGER(1..100) 
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"the index of the Filter Profile Table"
        ::= { raisecomIgmpFilterProfileEntry 1 }

raisecomIgmpFilterProfileAct OBJECT-TYPE
        SYNTAX        INTEGER{permit(1),deny(2)} 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Igmp profile Filter Action" 
		 DEFVAL { 2 }
        ::= { raisecomIgmpFilterProfileEntry 2 }

raisecomIgmpFilterProfileRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Row Status of Igmp Filter Profile Table"
        ::= { raisecomIgmpFilterProfileEntry 3 }

       
-- 
raisecomIgmpFilterPortTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpFilterPortEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "description"
        ::= { raisecomIgmpFilter 3 }

raisecomIgmpFilterPortEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpFilterPortEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "description"
        INDEX      { raisecomIgmpFilterPortIndex }
        ::= { raisecomIgmpFilterPortTable 1 }

RaisecomIgmpFilterPortEntry ::= SEQUENCE {  
         raisecomIgmpFilterPortIndex    INTEGER,  
         raisecomIgmpFilterPortProfileIndex   INTEGER(1..100),
         raisecomIgmpFilterPortMaxGroups    INTEGER,
         raisecomIgmpFilterPortCurrentGroups   INTEGER,
         raisecomIgmpFilterPortMaxGroupsAct      INTEGER,
         raisecomIgmpFilterPortRowStatus     RowStatus
		}
 
raisecomIgmpFilterPortIndex OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index of raisecomIgmpFilterIFTable"
        ::= { raisecomIgmpFilterPortEntry 1 }


raisecomIgmpFilterPortProfileIndex OBJECT-TYPE
        SYNTAX        INTEGER(1..100) 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"RSpecifies which IGMP filter profile applies to this vlan. 
		If the value of this MIB object matches the value of raisecomIgmpFilterProfileIndex in raisecomIgmpFilterTable,
		the corresponding profile configuration will apply to 	this vlan.
		A value of zero indicates no profile is associated with corresponding vlan.
		"   
		DEFVAL { 0 }
        ::= { raisecomIgmpFilterPortEntry 2 }


raisecomIgmpFilterPortMaxGroups OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Specifies the max multicast group numbers that allow join on this port. 
		A value of zero indicates no max limitation is associated with corresponding port"  
		DEFVAL { 0 }
        ::= { raisecomIgmpFilterPortEntry 3 }


raisecomIgmpFilterPortCurrentGroups OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"Specifies the current multicast group numbers that this port has joined"
        ::= { raisecomIgmpFilterPortEntry 4 }


raisecomIgmpFilterPortMaxGroupsAct OBJECT-TYPE
        SYNTAX        INTEGER  {drop(1),replace(2)} 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Specifies which action will take place on the vlan when exceed the max multicast group numbers. 
		A value of deny(1) indicates deny join the multicast group when exceed the max multicast group numbers. 
		A value of replace(2) indicates allow to replace the first multicast group on the vlan when exceed the max multicast group numbers."
        DEFVAL { 1 }
        ::= { raisecomIgmpFilterPortEntry 5 }


raisecomIgmpFilterPortRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Row Status of this Table"
        ::= { raisecomIgmpFilterPortEntry 6 }
 
 
-- 
raisecomIgmpFilterPortVlanTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpFilterPortVlanEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "description"
        ::= { raisecomIgmpFilter 4 }   
 
raisecomIgmpFilterPortVlanEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpFilterPortVlanEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "description"
        INDEX      { raisecomIgmpFilterPortVlanPortIndex, raisecomIgmpFilterPortVlanVlanIndex}
        ::= { raisecomIgmpFilterPortVlanTable 1 }

RaisecomIgmpFilterPortVlanEntry ::= SEQUENCE {  
         raisecomIgmpFilterPortVlanPortIndex    INTEGER,
         raisecomIgmpFilterPortVlanVlanIndex   VlanIndex,
         raisecomIgmpFilterPortVlanProfileIndex    INTEGER(1..100),
         raisecomIgmpFilterPortVlanMaxGroups    INTEGER,
         raisecomIgmpFilterPortVlanCurrentGroups   INTEGER,
         raisecomIgmpFilterPortVlanMaxGroupsAct    INTEGER,
         raisecomIgmpFilterPortVlanRowStatus    RowStatus
		}
 
raisecomIgmpFilterPortVlanPortIndex OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpFilterPortVlanEntry 1 }


raisecomIgmpFilterPortVlanVlanIndex OBJECT-TYPE
        SYNTAX        VlanIndex 
        MAX-ACCESS    not-accessible
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpFilterPortVlanEntry 2 }


raisecomIgmpFilterPortVlanProfileIndex OBJECT-TYPE
        SYNTAX        INTEGER(1..100) 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Specifies which IGMP filter profile applies to this vlan. 
		If the value of this MIB object matches the value of raisecomIgmpFilterProfileIndex in raisecomIgmpFilterTable,
		the corresponding profile configuration will apply to 	this vlan.
		A value of zero indicates no profile is associated with corresponding vlan.
		"   
		DEFVAL { 0 }
        ::= { raisecomIgmpFilterPortVlanEntry 3 }


raisecomIgmpFilterPortVlanMaxGroups OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Specifies the max multicast group numbers that allow this vlan join on this port. 
		A value of zero indicates no max limitation is associated with corresponding vlan on this port."   
		DEFVAL { 0 }
        ::= { raisecomIgmpFilterPortVlanEntry 4 }


raisecomIgmpFilterPortVlanCurrentGroups OBJECT-TYPE
        SYNTAX        INTEGER 
        MAX-ACCESS    read-only 
        STATUS        current
		DESCRIPTION  
		"Specifies the current multicast group numbers that this  vlan has joined on this port."
        ::= { raisecomIgmpFilterPortVlanEntry 5 }


raisecomIgmpFilterPortVlanMaxGroupsAct OBJECT-TYPE
        SYNTAX        INTEGER {drop(1),replace(2)}
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Specifies which action will take place on the vlan when exceed the max multicast group numbers. 
		A value of deny(1) indicates deny join the multicast group when exceed the max multicast group numbers. 
		A value of replace(2) indicates allow to replace the first multicast group on the vlan when exceed the max multicast group numbers."
        DEFVAL { 1 }
        ::= { raisecomIgmpFilterPortVlanEntry 6 }


raisecomIgmpFilterPortVlanRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Row Status of this Table"
        ::= { raisecomIgmpFilterPortVlanEntry 7 }
 
 
--       
raisecomIgmpFilterIpProfileTable	OBJECT-TYPE
        SYNTAX SEQUENCE OF RaisecomIgmpFilterIpProfileEntry
        MAX-ACCESS      not-accessible
        STATUS current
        DESCRIPTION
                "description"
        ::= { raisecomIgmpFilter 5 }

raisecomIgmpFilterIpProfileEntry OBJECT-TYPE
	    SYNTAX     RaisecomIgmpFilterIpProfileEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "description"
        INDEX      { raisecomIgmpFilterIpProfileIndex, raisecomIgmpFilterIpProfileRangeIndex}
        ::= { raisecomIgmpFilterIpProfileTable 1 }

RaisecomIgmpFilterIpProfileEntry ::= SEQUENCE {  
         raisecomIgmpFilterIpProfileIndex    INTEGER(1..100),
         raisecomIgmpFilterIpProfileRangeIndex   INTEGER(1..100),
         raisecomIgmpFilterIpProfileStartAddress  InetAddress,
         raisecomIgmpFilterIpProfileEndAddress     InetAddress,
         raisecomIgmpFilterIpProfileIpType      InetAddressType,
         raisecomIgmpFilterIpProfileRowStatus     RowStatus
		}   
		                              
raisecomIgmpFilterIpProfileIndex OBJECT-TYPE
        SYNTAX        INTEGER(1..100) 
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpFilterIpProfileEntry 1 }
 
raisecomIgmpFilterIpProfileRangeIndex OBJECT-TYPE
        SYNTAX        INTEGER(1..100)  
        MAX-ACCESS    not-accessible 
        STATUS        current
		DESCRIPTION  
		"Index identifying this entry."
        ::= { raisecomIgmpFilterIpProfileEntry 2 }
 
raisecomIgmpFilterIpProfileStartAddress OBJECT-TYPE
        SYNTAX        InetAddress 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Start IP address of Filter Profile"
        ::= { raisecomIgmpFilterIpProfileEntry 3 }

raisecomIgmpFilterIpProfileEndAddress OBJECT-TYPE
        SYNTAX        InetAddress 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"EndIP address of Filter Profile"
        ::= { raisecomIgmpFilterIpProfileEntry 4 }

raisecomIgmpFilterIpProfileIpType OBJECT-TYPE
        SYNTAX        InetAddressType 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"IP address Type of Filter Profile"  
        ::= { raisecomIgmpFilterIpProfileEntry 5 }

raisecomIgmpFilterIpProfileRowStatus OBJECT-TYPE
        SYNTAX        RowStatus 
        MAX-ACCESS    read-create 
        STATUS        current
		DESCRIPTION  
		"Row Status of this Table"
        ::= { raisecomIgmpFilterIpProfileEntry 6 }
 
  
END