-- *****************************************************************
-- RAISECOM-MGMD-MIB.mib:  MGMD MIB
--
-- Jan 2012, baiguangyu
--
-- Copyright (c) 1999-2012 by Raisecom Technology Co., Ltd.
-- All rights reserved.
--
-- *****************************************************************
--

RAISECOM-MGMD-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, Counter32     FROM SNMPv2-SMI
        RowStatus	                                FROM SNMPv2-TC
        InetAddressType, InetAddress				FROM INET-ADDRESS-MIB        
        raisecomAgent                           	FROM RAISECOM-BASE-MIB     
        EnableVar                             	    FROM SWITCH-TC
        mgmdRouterInterfaceEntry                    FROM MGMD-STD-MIB;

raisecomMgmd   MODULE-IDENTITY
        LAST-UPDATED    "0105201200Z"
        ORGANIZATION    "Raisecom Technology Co., Ltd."
        CONTACT-INFO
		                "Raisecom Technology Co., Ltd.
		                 E-mail: support@raisecom.com"
        DESCRIPTION
		        		"The MIB module for MGMD further 
		        		management upon standard MGMD MIB.

		   			 	Management Information module for MGMD statistics 
		                and MGMD static member information components."

        REVISION     	"201201050000Z"
        DESCRIPTION
            		 	"version 1.0"

        ::= { raisecomAgent 70 }

--
-- Textual Conventions
--
                                                                                
 
--
-- The various groups defined within this MIB definition:
-- 
raisecomMgmdNotifications       OBJECT IDENTIFIER ::={ raisecomMgmd 1 }
raisecomMgmdObjects             OBJECT IDENTIFIER ::={ raisecomMgmd 2 }
raisecomMgmdConformance         OBJECT IDENTIFIER ::={ raisecomMgmd 3 }  

--
-- Interface  Table
--     
  
--
-- raisecomMgmdInterfaceEntry 
--  
raisecomMgmdInterfaceTable 	OBJECT-TYPE
        SYNTAX      SEQUENCE OF raisecomMgmdInterfaceEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This table provides interface information of IGMP or MLD."
        ::= { raisecomMgmdObjects 1 }
 
raisecomMgmdInterfaceEntry 	OBJECT-TYPE
        SYNTAX      raisecomMgmdInterfaceEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"An entry (conceptual row) in the raisecomMgmdInterfaceTable.
                     Each entry represents multicast related interface configuration"
        AUGMENTS    { mgmdRouterInterfaceEntry  }
        ::= { raisecomMgmdInterfaceTable 1 }


raisecomMgmdInterfaceEntry ::= SEQUENCE {    
        raisecomMgmdInterfaceIgmpEnable       		EnableVar
        }        
                
raisecomMgmdInterfaceIgmpEnable  OBJECT-TYPE    
        SYNTAX      EnableVar
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
	        		"Indicates whether IGMP is enabled on this interface."
        DEFVAL 		{ disable } 
        ::= { raisecomMgmdInterfaceEntry 1 }  
--
-- Statistics Table
--     
  
--
-- raisecomMgmdStatisticsEntry 
--       
 
raisecomMgmdStatisticsTable 	OBJECT-TYPE
        SYNTAX      SEQUENCE OF raisecomMgmdStatisticsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This table provides statistics information of MGMD."
        ::= { raisecomMgmdObjects 2 }
 
raisecomMgmdStatisticsEntry 	OBJECT-TYPE
        SYNTAX      raisecomMgmdStatisticsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"Displays by interface, provides MGMD statistics information."
        INDEX   	{ raisecomMgmdStatisticsIfIndex }
        ::= { raisecomMgmdStatisticsTable 1 }

raisecomMgmdStatisticsEntry ::= SEQUENCE {    
        raisecomMgmdStatisticsIfIndex			        INTEGER,
        raisecomMgmdStatisticsClear         		    INTEGER,  
        raisecomMgmdStatisticsV1ReportValid             Counter32,    
        raisecomMgmdStatisticsV1ReportInvalid			Counter32,        
        raisecomMgmdStatisticsV2ReportValid				Counter32,
        raisecomMgmdStatisticsV2ReportInvalid			Counter32,
        raisecomMgmdStatisticsLeaveValid				Counter32,
        raisecomMgmdStatisticsLeaveInvalid				Counter32,
        raisecomMgmdStatisticsQueryValid				Counter32,
        raisecomMgmdStatisticsQueryInvalid				Counter32
        }
  
raisecomMgmdStatisticsIfIndex 	OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"The index of interface."
        ::= { raisecomMgmdStatisticsEntry 1 }
        
raisecomMgmdStatisticsClear  OBJECT-TYPE    
        SYNTAX      INTEGER{ clear(0) }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
	        		"When SET clear all statistics of MGMD on this interface,
	        		when GET the value means nothing."
        DEFVAL 		{ 0 }
        ::= { raisecomMgmdStatisticsEntry 2 }  
        
raisecomMgmdStatisticsV1ReportValid  OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of valid V1 report packets 
	        		received on this interface."
        DEFVAL 		{ 0 }
        ::= { raisecomMgmdStatisticsEntry 3 }     
        
raisecomMgmdStatisticsV1ReportInvalid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of invalid V1 report packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 4 }           

raisecomMgmdStatisticsV2ReportValid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of valid V2 report packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 5 } 

raisecomMgmdStatisticsV2ReportInvalid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of invalid V2 report packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 6 } 

raisecomMgmdStatisticsLeaveValid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of valid leave packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 7 }
        
raisecomMgmdStatisticsLeaveInvalid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of invalid leave packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 8 }
        
raisecomMgmdStatisticsQueryValid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of valid query packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 9 }                

raisecomMgmdStatisticsQueryInvalid OBJECT-TYPE
        SYNTAX      Counter32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
	        		"This object indicates the number of invalid query packets 
	        		received on this interface."
        ::= { raisecomMgmdStatisticsEntry 10 }

--
-- MgmdStaticMember table
--

raisecomMgmdStaticMemberTable 	OBJECT-TYPE
        SYNTAX      SEQUENCE OF raisecomMgmdStaticMemberEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This table provides MGMD static member information."
        ::= { raisecomMgmdObjects 3 }

raisecomMgmdStaticMemberEntry 		OBJECT-TYPE
        SYNTAX      raisecomMgmdStaticMemberEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"Displays by interface, provides MGMD static member information."
        INDEX   	{ raisecomMgmdStaticMemberSrcType,
          			  raisecomMgmdStaticMemberSource, 
			          raisecomMgmdStaticMemberGrpType, 
			          raisecomMgmdStaticMemberGroup, 
			          raisecomMgmdStaticMemberIfIndex }
        ::= { raisecomMgmdStaticMemberTable 1 }

raisecomMgmdStaticMemberEntry ::= SEQUENCE {    
        raisecomMgmdStaticMemberSrcType			        InetAddressType,
        raisecomMgmdStaticMemberSource         			InetAddress,  
        raisecomMgmdStaticMemberGrpType         		InetAddressType,
        raisecomMgmdStaticMemberGroup    				InetAddress,
        raisecomMgmdStaticMemberIfIndex         		INTEGER,
        raisecomMgmdStaticMemberRowstatus        		RowStatus  
}
   
raisecomMgmdStaticMemberSrcType 		OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This object indicates the type of source, ipv4 or ipv6."
        ::= { raisecomMgmdStaticMemberEntry 1 }     

raisecomMgmdStaticMemberSource 		OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This object indicates the source."
        ::= { raisecomMgmdStaticMemberEntry 2 }

raisecomMgmdStaticMemberGrpType 		OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This object indicates the type of group, ipv4 or ipv6."
        ::= { raisecomMgmdStaticMemberEntry 3 }

raisecomMgmdStaticMemberGroup 		OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This object indicates the group of this member."
        ::= { raisecomMgmdStaticMemberEntry 4 }

raisecomMgmdStaticMemberIfIndex 		OBJECT-TYPE
        SYNTAX      INTEGER
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
	        		"This object indicates the index of interface."
        ::= { raisecomMgmdStaticMemberEntry 5 }

raisecomMgmdStaticMemberRowstatus 		OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
	        		"This object indicates the status of MGMD static member."
        ::= { raisecomMgmdStaticMemberEntry 6 }
  
--
-- END of RAISECOM-MGMD-MIB
--

END

