-- ===========================================================================
-- Copyright (C) 2018 by  HUAWEI TECHNOLOGIES. All rights reserved.
--
-- Description: HUAWEI-MP-GROUP-MIB
-- Reference:
-- Version: V1.04
-- History:
-- created by huangjun 2010-09-24
-- ===========================================================================

HUAWEI-MP-GROUP-MIB DEFINITIONS ::= BEGIN

IMPORTS
       hwDatacomm
         FROM   HUAWEI-MIB
            ifName
        FROM IF-MIB
            ifIndex
        FROM RFC1213-MIB
            IpAddress, Unsigned32, OBJECT-TYPE, MODULE-IDENTITY,
            NOTIFICATION-TYPE, TimeTicks,
            Integer32
                FROM SNMPv2-SMI
            MODULE-COMPLIANCE, OBJECT-GROUP,NOTIFICATION-GROUP
                FROM SNMPv2-CONF
            DisplayString, RowStatus, TruthValue, MacAddress, DateAndTime
                FROM SNMPv2-TC
            InetAddressType, InetAddress, InetPortNumber
                FROM INET-ADDRESS-MIB;

hwMpGroupMIB MODULE-IDENTITY
       LAST-UPDATED "201801130000Z" -- 13 Jan 2018
       ORGANIZATION 
			"Huawei Technologies Co.,Ltd."
       CONTACT-INFO
            "Huawei Industrial Base
              Bantian, Longgang
               Shenzhen 518129
               People's Republic of China
               Website: http://www.huawei.com
               Email: support@huawei.com
            "
       DESCRIPTION
           "modify node description"
       REVISION "201801130000Z"       			
  
       DESCRIPTION
           "Support MP-Group los-pkt-exc"
       REVISION "201604210000Z"

       DESCRIPTION
           "Support Global- MP-Group interface"
       REVISION "201511230000Z"

       DESCRIPTION
           "The MIB contains objects of module Mp Group."
       REVISION "201407260000Z"
       DESCRIPTION
           "Modify MODULE-COMPLIANCE, OBJECT-GROUP,NOTIFICATION-GROUP From SNMPv2-CONF,
            Modify MAX-ACCESS of  hwMpGroupRowStatus from read-write to read-create at 2014-07-26."
		REVISION    "201009240000Z"   
        DESCRIPTION "V1.00, initial version."
       ::= { hwDatacomm 233 }


hwMpGroupObjects                    OBJECT IDENTIFIER ::= { hwMpGroupMIB 1 }
hwMpGroupNotifications              OBJECT IDENTIFIER ::= { hwMpGroupMIB 2 }
hwMpGroupConformance                OBJECT IDENTIFIER ::= { hwMpGroupMIB 3 }



hwMpGroupTable OBJECT-TYPE
       SYNTAX SEQUENCE OF HwMpGroupEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
             "MP group."
       ::= { hwMpGroupObjects 1 }
    hwMpGroupEntry OBJECT-TYPE
       SYNTAX     HwMpGroupEntry
       MAX-ACCESS not-accessible
       STATUS     current
       DESCRIPTION
             "An entry in this table configures the parameters of all
              MP, if partitions are being used."
       INDEX { hwMpGroupIfIndex }
       ::= { hwMpGroupTable 1 }

HwMpGroupEntry ::= SEQUENCE {
       hwMpGroupIfIndex                   Integer32,
       hwMpGroupDiscriminator              TruthValue,
       hwMpGroupDamping                      TruthValue,
       hwMpGroupDetectTime                  Unsigned32,
       hwMpGroupFlappingCount              Unsigned32,
       hwMpGroupDampingTime                  Unsigned32,
       hwMpGroupThresholdLeast              Unsigned32,
       hwMpGroupMrru                        Unsigned32,
       hwMpGroupFragmentThreshold          INTEGER,
       hwMpGroupShortSequenceFlag          TruthValue,
       hwMpGroupDropTimeout                  Unsigned32,
       hwMpGroupPktReassemblyQueueDepth      INTEGER,
       hwMpGroupDelayDetectEnable         TruthValue,
       hwMpGroupDelayDetectThreshold      Integer32,
       hwMpGroupRowStatus                 RowStatus
}


 hwMpGroupIfIndex OBJECT-TYPE
       SYNTAX Integer32 (1..2147483647)
       MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The value of this object identifies the Mp-group interface."
        ::= { hwMpGroupEntry 1 }

  hwMpGroupDiscriminator OBJECT-TYPE
       SYNTAX     TruthValue
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Enable the MP discriminator negotiation. "
       DEFVAL { false }
       ::= { hwMpGroupEntry 2 }

 hwMpGroupDamping OBJECT-TYPE
       SYNTAX     TruthValue
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Enable the function of damping the son channel of the MP link .
             The default value is false(2)."
       DEFVAL { false }
       ::= { hwMpGroupEntry 3 }


hwMpGroupDetectTime OBJECT-TYPE
       SYNTAX      Unsigned32(0|30..3600)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Minimum UP time before damping the son channel of the MP
              link. The value 0 is invalid, and the other values are valid, default is 30s.
              The value 0 is displayed, When the value is false of the hwMpGroupDamping."
       DEFVAL { 30 }
       ::= { hwMpGroupEntry 4 }


 hwMpGroupFlappingCount OBJECT-TYPE
       SYNTAX      Unsigned32(0..64)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Maximum number of flapping of the son channel in the
              detect-time. The value 0 is invalid, and the other values are valid, default is 1.
              The value 0 is displayed, When the value is false of the hwMpGroupDamping."
       DEFVAL { 1 }

       ::= { hwMpGroupEntry 5 }


 hwMpGroupDampingTime OBJECT-TYPE
       SYNTAX      Unsigned32(0|60..86400)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Continuous UP time after the son channel of the MP link is
              damped.  The value 0 is invalid, and the other values are valid, default is 60s.
              The value 0 is displayed, When the value is false of the hwMpGroupDamping."
       DEFVAL { 1 }
       ::= { hwMpGroupEntry 6 }

 hwMpGroupThresholdLeast OBJECT-TYPE
       SYNTAX      Unsigned32(1..128)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Value range of the minimum number of bindings of MP-Group
                  that MP can be used , default is 1 ."
       DEFVAL { 1 }
       ::= { hwMpGroupEntry 7 }

  hwMpGroupMrru OBJECT-TYPE
       SYNTAX      Unsigned32(328..9216)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             " A system MUST NOT send any multilink packets on any link unless its
               peer has offered the MMRU LCP option and the system has configure-
               Ack'ed it during the most recent LCP negotiation on that link.  A
               system MAY include the MMRU LCP option in a configure-NAK, if its
               peer has not offered it (until, according to PPP rules, the peer
               configure-Reject's it).
             "
       DEFVAL { 1500 }
       ::= { hwMpGroupEntry 8 }

 hwMpGroupFragmentThreshold OBJECT-TYPE
       SYNTAX INTEGER {
                  length128(1),
                  length256(2) ,
                  length512(3) ,
                  nofragment(4) ,
                  length64(5)
                       }
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Fragment-threshold value(1-4): 1->128; 2->256; 3->512; 4->no
                fragment; 5->64."
       ::= { hwMpGroupEntry 9  }

 hwMpGroupShortSequenceFlag OBJECT-TYPE
       SYNTAX     TruthValue
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Enable short-sequence. "
       DEFVAL { false }
       ::= { hwMpGroupEntry 10 }

 hwMpGroupDropTimeout OBJECT-TYPE
       SYNTAX      Unsigned32(10..100)
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "Drop-timeout value, ms as unit."
       ::= { hwMpGroupEntry 11 }

  hwMpGroupPktReassemblyQueueDepth OBJECT-TYPE
       SYNTAX INTEGER {
                  depth256(1),
                  depth512(2) ,
                  depth1024(3) ,
                  depth2048(4),
                  depth4096(5)
                       }
       MAX-ACCESS read-write
       STATUS     current
       DESCRIPTION
             "max number of packets can be kept in the queue, 1:256, 2:512,
                3:1024, 4:2048, 5:4096."
       ::= { hwMpGroupEntry 12  }

         -- 1.3.6.1.4.1.2011.5.25.233.1.1.1.13
        hwMpGroupDelayDetectEnable OBJECT-TYPE
            SYNTAX TruthValue
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "Enable or disable the time-delay detect function."
            DEFVAL { false }
            ::= { hwMpGroupEntry 13 }


        -- 1.3.6.1.4.1.2011.5.25.233.1.1.1.14
        hwMpGroupDelayDetectThreshold OBJECT-TYPE
            SYNTAX Integer32 (25..500)
            UNITS "100us"
            MAX-ACCESS read-write
            STATUS current
            DESCRIPTION
                "The threshold of time-delay detect function. Unit is 100us. value between 25 and 500 is allowed. default value is 30 (3ms)."
            DEFVAL { 30 }
            ::= { hwMpGroupEntry 14 }


 hwMpGroupRowStatus OBJECT-TYPE
       SYNTAX     RowStatus
       MAX-ACCESS read-create
       STATUS     current
       DESCRIPTION
             "An object that allows entries in this table to
              be created, modified and deleted using the RowStatus
              convention.
              A SET operation to any other attribute in this row, when
              this object is set to 'active' (1), MUST be rejected with
              an SNMP error (e.g., inconsistentValue).
              In order to perform a SET operation to any other attribute
              in this table the manager MUST set this object to
              notInService (2).  After setting the object back to
              'active' the implementation MAY tear down all the sessions
              that belong to this partition and recreate them, depending
              on what session attributes have been modified. "
       ::= { hwMpGroupEntry 50 }


-- Notifications
--
--for trap
hwMpGroupTrapOid   OBJECT IDENTIFIER ::= { hwMpGroupNotifications 0 }

-- 1.3.6.1.4.1.2011.5.25.233.2.0.1
hwMpGroupSonIfIndex OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The value of this object identifies the member of the Mp-group interface."
    ::= { hwMpGroupTrapOid 1 }


-- 1.3.6.1.4.1.2011.5.25.233.2.0.2
hwMpGroupSonIfName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The name of a member of the Mp-group interface."
    ::= { hwMpGroupTrapOid 2 }

-- 1.3.6.1.4.1.2011.5.25.233.2.0.3
hwMpGroupIfName OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The name of the Mp-group interface."
    ::= { hwMpGroupTrapOid 3 }
	
-- 1.3.6.1.4.1.2011.5.25.233.2.0.4
hwMpGroupLosPktCurrentValueString OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The current value of packet loss ratio."
    ::= { hwMpGroupTrapOid 4 }
	
-- 1.3.6.1.4.1.2011.5.25.233.2.0.5
hwMpGroupLosPktAlarmThresholdString OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The alarm threshold of packet loss ratio."
    ::= { hwMpGroupTrapOid 5 }
	
-- 1.3.6.1.4.1.2011.5.25.233.2.0.6
hwMpGroupLosPktResumeThresholdString OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS accessible-for-notify
    STATUS current
    DESCRIPTION
        "The resume threshold of packet loss ratio."
    ::= { hwMpGroupTrapOid 6 }
	
-- 1.3.6.1.4.1.2011.5.25.233.2.1
hwMpGroupTrap OBJECT IDENTIFIER ::= { hwMpGroupNotifications 1 }


-- 1.3.6.1.4.1.2011.5.25.233.2.1.5
hwMpGroupMemberLinkTimeDelayDetect NOTIFICATION-TYPE
        OBJECTS { hwMpGroupSonIfIndex, hwMpGroupSonIfName, hwMpGroupIfIndex, hwMpGroupDelayDetectThreshold }
    STATUS current
    DESCRIPTION
        "This object indicates that an alarm is generated when the delay difference between two MP-group member interfaces exceeds the upper threshold."
        ::= { hwMpGroupTrap 5 }


-- 1.3.6.1.4.1.2011.5.25.233.2.1.6
hwMpGroupMemberLinkTimeDelayResume NOTIFICATION-TYPE
        OBJECTS { hwMpGroupSonIfIndex, hwMpGroupSonIfName, hwMpGroupIfIndex, hwMpGroupDelayDetectThreshold }
    STATUS current
    DESCRIPTION
        "This object indicates that the alarm generated when the delay difference between two MP-group member interfaces exceeded the upper threshold is cleared."
        ::= { hwMpGroupTrap 6 }

-- 1.3.6.1.4.1.2011.5.25.233.2.1.7
hwMpGroupRxLosPktExcAlarm NOTIFICATION-TYPE
        OBJECTS { hwMpGroupIfIndex, hwMpGroupIfName, hwMpGroupLosPktCurrentValueString, hwMpGroupLosPktAlarmThresholdString, hwMpGroupLosPktResumeThresholdString }
    STATUS current
    DESCRIPTION
        "This object indicates that an alarm is generated when the packet loss ratio for packets received by an MP group exceeds the upper threshold."
        ::= { hwMpGroupTrap 7 }
		
-- 1.3.6.1.4.1.2011.5.25.233.2.1.8
hwMpGroupRxLosPktExcAlarmResume NOTIFICATION-TYPE
        OBJECTS { hwMpGroupIfIndex, hwMpGroupIfName, hwMpGroupLosPktCurrentValueString, hwMpGroupLosPktAlarmThresholdString, hwMpGroupLosPktResumeThresholdString }
    STATUS current
    DESCRIPTION
        "This object indicates that the alarm generated when the packet loss ratio for packets received by an MP group exceeded the upper threshold is cleared."
        ::= { hwMpGroupTrap 8 }
		
hwMpGroupGroups            OBJECT IDENTIFIER ::= { hwMpGroupConformance 1 }
hwMpGroupCompliances       OBJECT IDENTIFIER ::= { hwMpGroupConformance 2 }

hwMpGroupModuleCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
             "The compliance statement for systems supporting this module."
       MODULE
       MANDATORY-GROUPS {
                          hwMpGroupGroup
                         }

       ::= { hwMpGroupCompliances 1 }

-- units of conformance
hwMpGroupGroup OBJECT-GROUP
       OBJECTS {
                 hwMpGroupIfIndex,
                 hwMpGroupDiscriminator,
                 hwMpGroupDamping,
                 hwMpGroupDetectTime,
                 hwMpGroupFlappingCount,
                 hwMpGroupDampingTime,
                 hwMpGroupThresholdLeast,
                 hwMpGroupMrru,
                 hwMpGroupFragmentThreshold,
                 hwMpGroupShortSequenceFlag,
                 hwMpGroupDropTimeout,
                 hwMpGroupPktReassemblyQueueDepth,
                 hwMpGroupDelayDetectEnable,
                 hwMpGroupDelayDetectThreshold
               }
       STATUS current
       DESCRIPTION
             "The HUAWEI MP Group configuration group."
       ::= { hwMpGroupGroups 1 }

-- 1.3.6.1.4.1.2011.5.25.233.3.1.2
hwMpGroupNotificationsGroup NOTIFICATION-GROUP
    NOTIFICATIONS { hwMpGroupMemberLinkTimeDelayDetect, hwMpGroupMemberLinkTimeDelayResume, hwMpGroupRxLosPktExcAlarm, hwMpGroupRxLosPktExcAlarmResume }
    STATUS current
    DESCRIPTION
        "Group for all MP group traps."
    ::= { hwMpGroupGroups 2 }

-- 1.3.6.1.4.1.2011.5.25.233.3.1.3
hwMpGroupTrapOidGroup OBJECT-GROUP
    OBJECTS { hwMpGroupSonIfIndex, hwMpGroupSonIfName, hwMpGroupIfName, hwMpGroupLosPktCurrentValueString, hwMpGroupLosPktAlarmThresholdString, hwMpGroupLosPktResumeThresholdString }
            STATUS current
            DESCRIPTION 
                "This object indicates the Mp Group Trap group."
            ::= { hwMpGroupGroups 3 }



END
