ZTE-MULTICAST-MIB-NEW1 DEFINITIONS ::= BEGIN
    IMPORTS 
        MODULE-IDENTITY, OBJECT-TYPE,NOTIFICATION-TYPE,
            IpAddress,TimeTicks,Counter32, Gauge32          FROM SNMPv2-SMI
        RowStatus                                           FROM SNMPv2-TC
        SnmpAdminString                                     FROM SNMP-FRAMEWORK-MIB
        PortList       	                                    FROM Q-BRIDGE-MIB           
        zxDsl                                               FROM ZTE-DSL-LINE-EXT-MIB;


zxDslMulticastMib MODULE-IDENTITY
    LAST-UPDATED "200404151500Z"
    ORGANIZATION "ZTE Corporation"
    CONTACT-INFO "ZTE."
    DESCRIPTION  "This MIB defines Description of zte multicast Service managed objects. "
    ::= {zxDsl 8}

zxDslMulticastObjects      OBJECT IDENTIFIER ::= {zxDslMulticastMib 1}
zxDslMulticastTrapObjects  OBJECT IDENTIFIER ::= {zxDslMulticastMib 2}

--------------------------------------------------------------------------
--  Multicast MIB
--  lisr& marb & majh write the mi2 file, March 02,2004
--------------------------------------------------------------------------

    zxMulticastIGMP      OBJECT IDENTIFIER ::= {zxDslMulticastObjects 1}
    zxMulticastMVR       OBJECT IDENTIFIER ::= {zxDslMulticastObjects 2}    
    zxMulticastCAC       OBJECT IDENTIFIER ::= {zxDslMulticastObjects 3}
    zxMulticastPRW       OBJECT IDENTIFIER ::= {zxDslMulticastObjects 4}      
    zxMulticastCDR       OBJECT IDENTIFIER ::= {zxDslMulticastObjects 5}   
    
--------------------------------------------------------------------------
--  zxMulticastIGMP
--------------------------------------------------------------------------
    zxIgmpEnabled  OBJECT-TYPE
        SYNTAX TruthValue
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "DURABLE: { false )
             Setting this object to true(1) enables IGMP .  Setting
             it to false(2) disables IGMP.             
             Note that IGMP can function with or without GVRP and
             GMRP enabled."
        ::= { zxMulticastIGMP 1 }
        
    zxIgmpAging  OBJECT-TYPE
        SYNTAX Integer32 (30..3600)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "DURABLE: { 300 )
             The timeout period in seconds for aging out Multicast Groups
             dynamically learned with IGMP.  Note that aging operates
             on a per interface per VLAN per multicast group basis."
        ::= { zxMulticastIGMP 2 }       
        
    zxIgmpMode  OBJECT-TYPE
        SYNTAX 	INTEGER(1..3)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "IGMP mode"
        ::= { zxMulticastIGMP 3 }  
       
    zxIgmpSMSRetrieve  OBJECT-TYPE
        SYNTAX INTEGER{
                        retrievable(0),
			retrieveType1(1),
                        retrieveType2(2),
		        retrieving(3)
                      }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "used to retrieve data from sms server,when commit '1'or '2',need to retrieve."
        ::= { zxMulticastIGMP 4 }
    
    zxIgmpPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF ZxIgmpPortEntry 
        MAX-ACCESS not-accessible
        STATUS   current
        DESCRIPTION
            "A table that contains all IGMP informations."
        ::= { zxMulticastIGMP 5 }

    zxIgmpPortEntry  OBJECT-TYPE
        SYNTAX     ZxIgmpPortEntry 
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "A list of  entries of all IGMP information."
        INDEX  { zxIgmpIfIndex }
        ::= { zxIgmpPortTable 1 }

    ZxIgmpPortEntry ::= SEQUENCE {
        zxIgmpIfIndex        INTEGER,
        zxIgmpsnoopMaxpermit INTEGER,		
        zxIgmpFastLeave      INTEGER
    }
	
    zxIgmpIfIndex            OBJECT-TYPE
        SYNTAX         INTEGER
        MAX-ACCESS     not-accessible
        STATUS         current
        DESCRIPTION
            "The port No."
        ::= { zxIgmpPortEntry 1}
     
    zxIgmpsnoopMaxpermit     OBJECT-TYPE
        SYNTAX         INTEGER
        MAX-ACCESS     read-write
        STATUS         current
        DESCRIPTION
            "The maximum permitted number of the controlled multicast list about this port ."
        ::= { zxIgmpPortEntry 2}
     
    zxIgmpFastLeave  OBJECT-TYPE
        SYNTAX 	INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "the status of fast-leave property."
        ::= { zxIgmpPortEntry 3 }
	
--------------------------------------------------------------------------
--     zxMulticastMVR
--------------------------------------------------------------------------
    zxMVREnable OBJECT-TYPE
        SYNTAX INTEGER{
            enable(1),
            disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Enable/disable MVR in this system."
        ::= { zxMulticastMVR 1 }

    zxMVRMaxResponseTime OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Max response time ."
        ::= { zxMulticastMVR 2 } 
    
    zxMVRTable OBJECT-TYPE
        SYNTAX SEQUENCE OF zxMVREntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table that contains all ZXDSL informations in this stack system.
	    It is allowed to get in master module."
	::= { zxMulticastMVR 3 }

    zxMVREntry OBJECT-TYPE
        SYNTAX zxMVREntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A list of  entries of all ZXDSL information."
        INDEX { zxMVRMvlan}
        ::= { zxMVRTable 1 }

    zxMVREntry ::= SEQUENCE {
        zxMVRMvlan              INTEGER,
        zxMVRMaxGroup           INTEGER,
        zxMVRSrcIp              IpAddress,        
        zxMVRSrcPortList        PortList,        
        zxMVRRowStatus          RowStatus          	
    }

    zxMVRMvlan OBJECT-TYPE
        SYNTAX INTEGER(1..4095)
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "mvlan ID."
        ::= { zxMVREntry 1 }

    zxMVRMaxGroup OBJECT-TYPE
        SYNTAX INTEGER(1..128)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Max groups in mvlan"
        ::= { zxMVREntry 2 }
        
    zxMVRSrcIp	OBJECT-TYPE	
		SYNTAX			IpAddress
		MAX-ACCESS		read-create
		STATUS			current
		DESCRIPTION		" "
		::=  {  zxMVREntry  3  }
	
    zxMVRSrcPortList OBJECT-TYPE
        SYNTAX PortList
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Source port in mvlan"
        ::= { zxMVREntry 4 }          
	
    zxMVRRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "RowStatus"
        ::= { zxMVREntry 5 }
        
    zxMVRExtTable OBJECT-TYPE
        SYNTAX SEQUENCE OF ZxMVRExtEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table that contains all ZXDSL informations in this stack system.
	    It is allowed to get in master module."
	::= { zxMulticastMVR 4 }

    zxMVRExtEntry OBJECT-TYPE
        SYNTAX ZxMVRExtEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A list of  entries of all ZXDSL information."
        INDEX { zxMVRMvlan, zxMVRScId}
        ::= { zxMVRExtTable 1 }

    ZxMVRExtEntry ::= SEQUENCE {
        zxMVRExtRecvPortList       PortList,
        zxMVRExtRowStatus          RowStatus
    }
        
    zxMVRExtRecvPortList	OBJECT-TYPE	
	SYNTAX			PortList
	MAX-ACCESS		read-create
	STATUS			current
	DESCRIPTION		"Interface ."
	::=  {  zxMVRExtEntry  1  }       
	
    zxMVRExtRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "RowStatus"
        ::= { zxMVRExtEntry 2 }        
	
    zxMVRGroupTable OBJECT-TYPE
        SYNTAX SEQUENCE OF zxMVRGroupEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table that contains all groups in the mvlan."
        ::= { zxMulticastMVR 5 }

    zxMVRGroupEntry OBJECT-TYPE
        SYNTAX zxMVRGroupEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A list of  entries of all groups information in mvlan."
            INDEX { zxMVRGroupIp}
        ::= { zxMVRGroupTable 1 }

    zxMVRGroupEntry ::= SEQUENCE {
        zxMVRGroupIp                   IpAddress,
        zxMVRMvlanId                   INTEGER,
        zxMVRGroupStaRecvPortList      PortList,
        zxMVRGroupName                DisplayString,
        zxMVRGroupRowStatus               RowStatus          	
    }    
    
    zxMVRGroupIp	OBJECT-TYPE	
	SYNTAX			IpAddress
	MAX-ACCESS		not-accessible
	STATUS			current
	DESCRIPTION		"multicast ip address . it can be 0.0.0.0 when setting "
	::=  {  zxMVRGroupEntry  1  }

    zxMVRMvlanId OBJECT-TYPE
        SYNTAX INTEGER(1..4095)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "vlan."
        ::= { zxMVRGroupEntry 2 }
	
    zxMVRGroupStaRecvPortList OBJECT-TYPE
        SYNTAX PortList
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Interface ."
        ::= { zxMVRGroupEntry 3 }    
	
    zxMVRGroupName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "zxMVRGroupName"
        ::= { zxMVRGroupEntry 4 }   
        
    zxMVRGroupRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "RowStatus"
        ::= { zxMVRGroupEntry 5 }                   
        
    zxMVRDynRecvPortTable	OBJECT-TYPE
	SYNTAX		SEQUENCE  OF  ZxMVRDynRecvPortEntry
	MAX-ACCESS	not-accessible
	STATUS		current
	DESCRIPTION	"Description"
	::=  { zxMulticastMVR  6 }

    zxMVRDynRecvPortEntry	OBJECT-TYPE
	SYNTAX		ZxMVRDynRecvPortEntry
	MAX-ACCESS	not-accessible
	STATUS		current
	DESCRIPTION	"Row Description"
	INDEX		{  zxMVRMvlan, zxMVRGroupIp  }
	::=  { zxMVRDynRecvPortTable 1 }

    ZxMVRDynRecvPortEntry  ::=  SEQUENCE {
	zxMVRGroupDynRecvPortList  PortList
    }

    zxMVRGroupDynRecvPortList	OBJECT-TYPE	
	SYNTAX			PortList
	MAX-ACCESS		read-only
	STATUS			current
	DESCRIPTION		" "
	::=  {  zxMVRDynRecvPortEntry  1  }      
	
    zxMVRPortScTable OBJECT-TYPE
        SYNTAX SEQUENCE OF zxMVRPortScEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table that contains pvc info of the ports in mvlan."
        ::= { zxMulticastMVR 7 }

    zxMVRPortScEntry OBJECT-TYPE
        SYNTAX zxMVRPortScEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A list of  entries of all pvc info of the ports in mvlan."
        INDEX {zxMVRPort, zxMVRScId }
        ::= { zxMVRPortScTable 1 }

    zxMVRPortScEntry ::= SEQUENCE {
        zxMVRPort                 INTEGER,
        zxMVRScId                 INTEGER,
        zxMVRScVlanOrPvc          INTEGER,
        zxMVRScPvcID              INTEGER,
        zxMVRScVlanID             INTEGER,
        zxMVRScType               INTEGER,		
        zxMVRPortScRowStatus      RowStatus
    }
		
    zxMVRPort OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "port No."
        ::= { zxMVRPortScEntry 1 }
	
    zxMVRScId OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "MVR sub channel id"
    ::= { zxMVRPortScEntry 2 }
	
 	
    zxMVRScVlanOrPvc OBJECT-TYPE
        SYNTAX INTEGER{
            VLAN(1),
            PVC(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sc Map Mode:Vlan or PVC"
        ::= { zxMVRPortScEntry 3 }
	
    zxMVRScPvcID OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Pvc id of this SC"
        ::= { zxMVRPortScEntry 4 }
	
	
    zxMVRScVlanID OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "vlan ID of this Sc"
        ::= { zxMVRPortScEntry 5 }		
	
    zxMVRScType OBJECT-TYPE
        SYNTAX INTEGER{
            ALL(1),
            IGMP(2),
            DATA(3)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Sc Type "
        ::= { zxMVRPortScEntry 6 }
        
    zxMVRPortScRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "RowStatus"
        ::= { zxMVRPortScEntry 7 }	
        
    zxMVRSpanVlanEnable OBJECT-TYPE
        SYNTAX INTEGER{
            enable(1),
            disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Enable/disable MVR in multi-vlans."
        ::= { zxMulticastMVR 8 }        	

      
--------------------------------------------------------------------------
--    zxMulticastCAC
--------------------------------------------------------------------------

    zxACPrwSwitch OBJECT-TYPE
        SYNTAX 		INTEGER{
            enable(1),
            disable(2)
        }
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "the switch used by both CAC and PRW module, '1'-enable."
        ::= { zxMulticastCAC 1 }
 
    zxACGpIpTable OBJECT-TYPE
        SYNTAX SEQUENCE OF ZxACGpIpEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "CAC Address Table info"
        ::= { zxMulticastCAC 2 }
 
    zxACGpIpEntry OBJECT-TYPE
        SYNTAX     ZxACGpIpEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
            "A list of  entries of all Multicast address information."
        INDEX  { zxACGpIp }
        ::= { zxACGpIpTable 1 }

    ZxACGpIpEntry ::= SEQUENCE {
        zxACGpIp               IpAddress,
        zxACGpMaxPrwCount        Counter,
        zxACGpMaxPrwInter        Counter,
        zxACGpPrwResumeInter     Counter,
        zxACGpPortList        PortList,
        zxACGpPortRight       PortList,
        zxACGpName            DisplayString,
        zxACGpRowStatus          RowStatus
    }

    zxACGpIp 	OBJECT-TYPE
        SYNTAX 		IpAddress
        MAX-ACCESS 	read-create
        STATUS current
        DESCRIPTION
            "Group IP."
        ::= { zxACGpIpEntry 1 }

    zxACGpMaxPrwCount OBJECT-TYPE
        SYNTAX 		Counter
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "The max preview count of the multicast group."
        ::= { zxACGpIpEntry 2 }

    zxACGpMaxPrwInter OBJECT-TYPE
        SYNTAX 		Counter
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "The max preview time."
        ::= { zxACGpIpEntry 3 }

    zxACGpPrwResumeInter OBJECT-TYPE
        SYNTAX 		Counter
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "The interval of two continuous previews."
        ::= { zxACGpIpEntry 4 }

    zxACGpPortList 	OBJECT-TYPE
        SYNTAX 		PortList
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "port list."
        ::= { zxACGpIpEntry 5 }
	
    zxACGpPortRight OBJECT-TYPE
        SYNTAX 		PortList
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "The Group Right for multicast."
        ::= { zxACGpIpEntry 6 }
        
    zxACGpName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "zxACGpName"
        ::= { zxACGpIpEntry 7 }   

    zxACGpRowStatus OBJECT-TYPE
        SYNTAX 		RowStatus
        MAX-ACCESS 	read-create
        STATUS          current
        DESCRIPTION
            "Row Status of AC Table."
        ::= { zxACGpIpEntry 8 }      	


--------------------------------------------------------------------------
--	zxMulticastPRW
--------------------------------------------------------------------------
    zxPRWManageReset OBJECT-TYPE
        SYNTAX 		INTEGER
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "used to manage reset in PRW module,when '1',need to reset."
        ::= { zxMulticastPRW 1 }

    zxPRWResetPeriod	OBJECT-TYPE
        SYNTAX 		INTEGER
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "specify the fix time of reseting the preview management structure."
        ::= { zxMulticastPRW 2 }
 
--------------------------------------------------------------------------
--	zxMulticastCDR
--------------------------------------------------------------------------

    zxCDRMaxSize OBJECT-TYPE
        SYNTAX 		Unsigned32
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "The max size of CDR."
        ::= { zxMulticastCDR 1 }
	
    zxCDRServerIP OBJECT-TYPE
        SYNTAX 		IpAddress
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "The IP of SMS server."
        ::= { zxMulticastCDR 2 }
        
    zxCDRMaxSendInterval	OBJECT-TYPE
        SYNTAX		Unsigned32
        MAX-ACCESS	read-write	
        STATUS	current
        DESCRIPTION
            "The Max Send Interval of CDR Record."
        ::= { zxMulticastCDR 3 }
        
    zxCDREnable OBJECT-TYPE
        SYNTAX 		TruthValue
        MAX-ACCESS 	read-write
        STATUS current
        DESCRIPTION
            "DURABLE: { false )
             Setting this object to true(1) enables CDR .  Setting
             it to false(2) disables CDR."
        ::= { zxMulticastCDR 4 }
        
    zxCDRCurrentRecordNumber OBJECT-TYPE
        SYNTAX   INTEGER
        MAX-ACCESS  read-only
        STATUS current
        DESCRIPTION
            "the number of CDR records"
        ::= { zxMulticastCDR 5 }		
END