-- ================================================================== -- Copyright (C) 2002 by HUAWEI-3COM TECHNOLOGIES. All rights reserved. -- -- Description: HUAWEI-3COM LAN Switch RRPP MIB -- Reference: -- Version: V1.4 -- History: -- V1.0 2004-12-02 Created by XueCong -- V1.1 2006-12-21 Modified by XuPengfei -- Add objects: h3cRrppPortRXEdgeHello, h3cRrppPortRXMajorFault, -- h3cRrppPortTXEdgeHello, h3cRrppPortTXMajorFault, h3cRrppMajorFault. -- V1.2 2007-03-01 Modified by ZhouXiaodong -- Modify the description of h3cRrppMajorFault. -- Adjust file format. -- V1.3 2007-04-26 Modified by GuCe -- Add objects: h3cRrppDomainInstanceListLow, h3cRrppDomainInstanceListHigh. -- V1.4 2007-06-18 Modified by SongJianyong -- Modify the description of h3cRrppDomainInstanceListLow and -- h3cRrppDomainInstanceListHigh. -- Add objects: h3cRrppDomainProtectVlanListLow, -- h3cRrppDomainProtectVlanListHigh, h3cRrppProtectVlanConfigMode. -- ================================================================== -- ================================================================== -- -- Variables and types be imported -- -- ================================================================== A3COM-HUAWEI-RRPP-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Counter32, Integer32, OBJECT-IDENTITY, NOTIFICATION-TYPE FROM SNMPv2-SMI RowStatus,TEXTUAL-CONVENTION FROM SNMPv2-TC h3cCommon FROM A3COM-HUAWEI-OID-MIB; h3cRrpp MODULE-IDENTITY LAST-UPDATED "200412020000Z" ORGANIZATION "Huawei 3Com Technologies Co., Ltd." CONTACT-INFO "Platform Team Huawei 3Com Technologies Co., Ltd. Hai-Dian District Beijing P.R. China Http://www.huawei-3com.com Zip:100085" DESCRIPTION "The RRPP (Rapid Ring Protection protocol) provides fast protection switching to layer 2 switches interconnected in an Ethernet ring topology. When a link in the ring breaks, the RRPP can recover the data path quickly. Its protection switching is similar to what can be achieved with the Spanning Tree Protocol (STP), but the converging time is less than a second after link failure. This MIB defines management information used on products which support RRPP." ::= { h3cCommon 45 } EnabledStatus ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "A simple status value for the object." SYNTAX INTEGER{enabled(1),disabled(2)} -- ================================================================== -- -- ======================= definition begin ========================= -- -- ================================================================== h3cRrppScalarGroup OBJECT IDENTIFIER ::= { h3cRrpp 1 } h3cRrppEnableStatus OBJECT-TYPE SYNTAX EnabledStatus MAX-ACCESS read-write STATUS current DESCRIPTION "Indicating whether the RRPP is enabled on this switch." ::= { h3cRrppScalarGroup 1 } h3cRrppPassword OBJECT-TYPE SYNTAX OCTET STRING(SIZE(1..16)) MAX-ACCESS read-write STATUS current DESCRIPTION "Password configured for RRPP nodes to identify the validity of a link-down message. This value must be set together with h3cRrppPasswordType which indicates whether this value can be got. This value can not be set alone without configuring h3cRrppPasswordType." DEFVAL { '303030464532303346443735'H } ::= { h3cRrppScalarGroup 2 } h3cRrppPasswordType OBJECT-TYPE SYNTAX INTEGER{simple(1),cipher(2)} MAX-ACCESS read-write STATUS current DESCRIPTION "Indicating whether the h3cRrppPassword can be got. simple(1):h3cRrppPassword can be got. cipher(2):h3cRrppPassword can not be got. This value can not be set alone without configuring h3cRrppPassword." ::= { h3cRrppScalarGroup 3 } h3cRrppProtectVlanConfigMode OBJECT-TYPE SYNTAX INTEGER{vlan(1),instance(2)} MAX-ACCESS read-only STATUS current DESCRIPTION "Indicating the mode in which the protected VLANs of an RRPP domain are configured. The value 'vlan' indicates that h3cRrppDomainProtectVlanListLow and h3cRrppDomainProtectVlanListHigh can be used for setting protected VLANs, while h3cRrppDomainInstanceListLow and h3cRrppDomainInstanceListHigh cannot. By contraries, the value 'instance' indicates that 3cRrppDomainInstanceListLow and h3cRrppDomainInstanceListHigh can be used for setting protected VLANs while the other two cannot." ::= { h3cRrppScalarGroup 4 } h3cRrppTable OBJECT IDENTIFIER ::= { h3cRrpp 2 } h3cRrppDomainTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cRrppDomainEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing information about configurations and status of a RRPP domain." ::= { h3cRrppTable 1 } h3cRrppDomainEntry OBJECT-TYPE SYNTAX H3cRrppDomainEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Detailed information of a specified RRPP domain." INDEX { h3cRrppDomainID } ::= { h3cRrppDomainTable 1 } H3cRrppDomainEntry ::= SEQUENCE { h3cRrppDomainID Integer32, h3cRrppDomainControlVlanID Integer32, h3cRrppDomainHelloTime Integer32, h3cRrppDomainFailTime Integer32, h3cRrppDomainRowStatus RowStatus, h3cRrppDomainInstanceListLow OCTET STRING, h3cRrppDomainInstanceListHigh OCTET STRING, h3cRrppDomainProtectVlanListLow OCTET STRING, h3cRrppDomainProtectVlanListHigh OCTET STRING } h3cRrppDomainID OBJECT-TYPE SYNTAX Integer32(1..16) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "An index uniquely identifies a RRPP domain, which ranges from 1~16. This value can't be modified after created." ::= { h3cRrppDomainEntry 1 } h3cRrppDomainControlVlanID OBJECT-TYPE SYNTAX Integer32(2..4094|65535) MAX-ACCESS read-create STATUS current DESCRIPTION "Index of the control VLAN specified to a domain. The value 65535 indicates the control VLAN has not been configured. The VLAN assigned to a RRPP Domain must not have been created. This value can't be modified after created." ::= { h3cRrppDomainEntry 2 } h3cRrppDomainHelloTime OBJECT-TYPE SYNTAX Integer32(1..10) MAX-ACCESS read-create STATUS current DESCRIPTION "The value indicates the interval between two hello packets sent by master-node, and its unit is second. The value ranges from 1s~10s." DEFVAL { 1 } ::= { h3cRrppDomainEntry 3 } h3cRrppDomainFailTime OBJECT-TYPE SYNTAX Integer32(3..30) MAX-ACCESS read-create STATUS current DESCRIPTION "The expiration value of the fail-period timer and its unit is second. If not receiving hello packets before this expires, the master-node considers the ring is broken. The value of this node ranging from 3s~30s must not be less than triple h3cRrppDomainHelloTime's value." DEFVAL { 3 } ::= { h3cRrppDomainEntry 4 } h3cRrppDomainRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is responsible for managing the creation, deletion and modification of rows, which support active status and CreatAndGo, destroy operation." ::= { h3cRrppDomainEntry 5 } h3cRrppDomainInstanceListLow OBJECT-TYPE SYNTAX OCTET STRING(SIZE(256)) MAX-ACCESS read-create STATUS current DESCRIPTION "Each octet contained in this value specifies an eight-instance group, with the first octet specifying instances 0 through 7, the second octet specifying instances 8 through 15, and so on. Within each octet, the most significant bit represents the highest numbered instance, and the least significant bit represents the lowest numbered instance. Thus, each instance to which the protected VLANs of an RRPP domain are mapped corresponds to a bit within the value of this object. A bit with a value of '1' indicates that the VLANs mapped to the instance are protected VLANs of the RRPP domain. By contraries, the VLANs mapped to the instance are not protected VLANs if the corresponding bit has a value of '0'. The value of this object must be set with h3cRrppDomainInstanceListHigh at the same time when a SET operation is performed. This object is valid only when the value of h3cRrppProtectVlanConfigMode is 'instance'. If this object is invalid, it does not respond to SET operation, and it returns all '0' bits in response to GET operation." ::= { h3cRrppDomainEntry 6 } h3cRrppDomainInstanceListHigh OBJECT-TYPE SYNTAX OCTET STRING(SIZE(256)) MAX-ACCESS read-create STATUS current DESCRIPTION "Each octet contained in this value specifies an eight-instance group, with the first octet specifying instances 2048 through 2055, the second octet specifying instances 2056 through 2063, and so on. Within each octet, the most significant bit represents the highest numbered instance, and the least significant bit represents the lowest numbered instance. The most significant bit of the last octet is invalid. Thus, each instance to which the protected VLANs of an RRPP domain are mapped corresponds to a bit within the value of this object. A bit with a value of '1' indicates that the VLANs mapped to the instance are protected VLANs of the RRPP domain. By contraries, the VLANs mapped to the instance are not protected VLANs if the corresponding bit has a value of '0'. The value of this object must be set with h3cRrppDomainInstanceListLow at the same time when a SET operation is performed. This object is valid only when the value of h3cRrppProtectVlanConfigMode is 'instance'. If this object is invalid, it does not respond to SET operation, and it returns all '0' bits in response to GET operation." ::= { h3cRrppDomainEntry 7 } h3cRrppDomainProtectVlanListLow OBJECT-TYPE SYNTAX OCTET STRING(SIZE(256)) MAX-ACCESS read-create STATUS current DESCRIPTION "Each octet contained in this value specifies an eight-VLAN group, with the first octet specifying VLANs 1 through 7, the second octet specifying VLANs 8 through 15, and so on. Within each octet, the most significant bit represents the highest numbered VLAN, and the least significant bit represents the lowest numbered VLAN. The least significant bit of the first octet is invalid. Thus, each protected VLAN of an RRPP domain corresponds to a bit within the value of this object. A bit with a value of '1' indicates that the corresponding VLAN is a protected VLAN of the RRPP domain. By contraries, the VLAN is not a protected VLAN if the corresponding bit has a value of '0'. The value of this object must be set with h3cRrppDomainProtectVlanListHigh at the same time when a SET operation is performed. This object is valid only when the value of h3cRrppProtectVlanConfigMode is 'vlan'. If this object is invalid, it does not respond to SET operation, and it returns all '0' bits in response to GET operation." ::= { h3cRrppDomainEntry 8 } h3cRrppDomainProtectVlanListHigh OBJECT-TYPE SYNTAX OCTET STRING(SIZE(256)) MAX-ACCESS read-create STATUS current DESCRIPTION "Each octet contained in this value specifies an eight-VLAN group, with the first octet specifying VLANs 2048 through 2055, the second octet specifying VLANs 2056 through 2063, and so on. Within each octet, the most significant bit represents the highest numbered VLAN, and the least significant bit represents the lowest numbered VLAN. The most significant bit of the last octet is invalid. Thus, each protected VLAN of an RRPP domain corresponds to a bit within the value of this object. A bit with a value of '1' indicates that the corresponding VLAN is a protected VLAN of the RRPP domain. By contraries, the VLAN is not a protected VLAN if the corresponding bit has a value of '0'. The value of this object must be set with h3cRrppDomainProtectVlanListLow at the same time when a SET operation is performed. This object is valid only when the value of h3cRrppProtectVlanConfigMode is 'vlan'. If this object is invalid, it does not respond to SET operation, and it returns all '0' bits in response to GET operation." ::= { h3cRrppDomainEntry 9 } h3cRrppRingTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cRrppRingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing information about configurations and status of a RRPP Ring." ::= { h3cRrppTable 2 } h3cRrppRingEntry OBJECT-TYPE SYNTAX H3cRrppRingEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Detailed information of a specified RRPP Ring." INDEX { h3cRrppDomainID, h3cRrppRingID } ::= { h3cRrppRingTable 1 } H3cRrppRingEntry ::= SEQUENCE { h3cRrppRingID Integer32, h3cRrppRingEnableStatus EnabledStatus, h3cRrppRingActive INTEGER, h3cRrppRingState INTEGER, h3cRrppRingNodeMode INTEGER, h3cRrppRingPrimaryPort Integer32, h3cRrppRingSecondaryPort Integer32, h3cRrppRingLevel INTEGER, h3cRrppRingRowStatus RowStatus } h3cRrppRingID OBJECT-TYPE SYNTAX Integer32(1..64) MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "An index uniquely identifies a RRPP Ring, which ranges from 1~64. This value can't be modified after created." ::= { h3cRrppRingEntry 1 } h3cRrppRingEnableStatus OBJECT-TYPE SYNTAX EnabledStatus MAX-ACCESS read-create STATUS current DESCRIPTION "Indicating whether the RRPP is enabled on this Ring. NOTE: If major-ring and sub-ring(s) of a domain coexist on a switch, major-ring must be enabled before sub-ring is enabled. And sub-ring must be disabled before major-ring is disabled." ::= { h3cRrppRingEntry 2 } h3cRrppRingActive OBJECT-TYPE SYNTAX INTEGER{active(1),inactive(2)} MAX-ACCESS read-only STATUS current DESCRIPTION "As both h3cRrppEnableStatus and h3cRrppRingEnableStatus are enabled, the ring is activated. Whereas either of the two items is disabled, the ring is inactive." ::= { h3cRrppRingEntry 3 } h3cRrppRingState OBJECT-TYPE SYNTAX INTEGER{unknown(1),health(2),fault(3)} MAX-ACCESS read-only STATUS current DESCRIPTION "The status (i.e. unknown, health or fault) of the Ethernet ring. This is valid only on the master-node." ::= { h3cRrppRingEntry 4 } h3cRrppRingNodeMode OBJECT-TYPE SYNTAX INTEGER{master(1),transit(2),edge(3),assistantEdge(4)} MAX-ACCESS read-create STATUS current DESCRIPTION "There are four RRPP node modes for the switch on a RRPP ring, such as master, transit, edge and assistant-edge. Each RRPP ring has a single designated master-node. All other nodes except edge-node and assistant-edge-node on that ring are referred to as transit-nodes. The node mode of edge and assistant-edge should be configured only on sub-ring. When there is a common link between a sub-ring and its major-ring, the node mode of the sub-ring must be edge or assistant-edge, and they must be configured in pairs. If node mode is designated as edge or assistant-edge, several points should be noticed: Major-ring must be created before a sub-ring is created; Major-ring can't be deleted unless all its sub-rings are deleted; The node mode of the switch on major-ring must be transit; Major-ring and sub-ring must have only a common port. This value can't be modified after created." ::= { h3cRrppRingEntry 5 } h3cRrppRingPrimaryPort OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "If the switch is a master-node or transit-node, this value is the primary port ifIndex; otherwise, if the switch is a edge-node or assistant-edge-node, this value is the common port ifIndex. This value can't be modified after created." ::= { h3cRrppRingEntry 6 } h3cRrppRingSecondaryPort OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-create STATUS current DESCRIPTION "If the switch is a master-node or transit-node, this value is the secondary port ifIndex; otherwise, if the switch is an edge-node or assistant-edge-node, this value is the edge port ifIndex. This value can't be modified after created." ::= { h3cRrppRingEntry 7 } h3cRrppRingLevel OBJECT-TYPE SYNTAX INTEGER{majorRing(1),subRing(2)} MAX-ACCESS read-create STATUS current DESCRIPTION "Level of a ring. This field should be set 1 on major-ring and 2 on the sub-ring. This value can't be modified after created." ::= { h3cRrppRingEntry 8 } h3cRrppRingRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is responsible for managing the creation, deletion and modification of rows, which support active status and CreatAndGo, destroy operation. To create a new row, h3cRrppRingNodeMode, h3cRrppRingPrimaryPort, h3cRrppRingSecondaryPort and h3cRrppRingLevel must be specified." ::= { h3cRrppRingEntry 9 } h3cRrppPortTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cRrppPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing information about configurations and status of a RRPP port." ::= { h3cRrppTable 3 } h3cRrppPortEntry OBJECT-TYPE SYNTAX H3cRrppPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Detailed information of a specified RRPP port." INDEX { h3cRrppDomainID, h3cRrppRingID, h3cRrppPortID } ::= { h3cRrppPortTable 1 } H3cRrppPortEntry ::= SEQUENCE { h3cRrppPortID Integer32, h3cRrppPortRole INTEGER, h3cRrppPortState INTEGER, h3cRrppPortRXError Counter32, h3cRrppPortRXHello Counter32, h3cRrppPortRXLinkUp Counter32, h3cRrppPortRXLinkDown Counter32, h3cRrppPortRXCommonFlush Counter32, h3cRrppPortRXCompleteFlush Counter32, h3cRrppPortTXHello Counter32, h3cRrppPortTXLinkUp Counter32, h3cRrppPortTXLinkDown Counter32, h3cRrppPortTXCommonFlush Counter32, h3cRrppPortTXCompleteFlush Counter32, h3cRrppPortRXEdgeHello Counter32, h3cRrppPortRXMajorFault Counter32, h3cRrppPortTXEdgeHello Counter32, h3cRrppPortTXMajorFault Counter32 } h3cRrppPortID OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "ifIndex of the port." ::= { h3cRrppPortEntry 1 } h3cRrppPortRole OBJECT-TYPE SYNTAX INTEGER{primary(1),secondary(2),common(3),edge(4)} MAX-ACCESS read-only STATUS current DESCRIPTION "The RRPP role of the port. (i.e. primary, secondary, common or edge port)." ::= { h3cRrppPortEntry 2 } h3cRrppPortState OBJECT-TYPE SYNTAX INTEGER{unknown(1),unblocked(2),blocked(3),down(4)} MAX-ACCESS read-only STATUS current DESCRIPTION "State of RRPP port, including unknown, unblocked, blocked and down." ::= { h3cRrppPortEntry 3 } h3cRrppPortRXError OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of illegal RRPP packets received from this port." ::= { h3cRrppPortEntry 4 } h3cRrppPortRXHello OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of hello packets received from this port on specified ring." ::= { h3cRrppPortEntry 5 } h3cRrppPortRXLinkUp OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of link-up packets received from this port on specified ring." ::= { h3cRrppPortEntry 6 } h3cRrppPortRXLinkDown OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of link-down packets received from this port on specified ring." ::= { h3cRrppPortEntry 7 } h3cRrppPortRXCommonFlush OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of common-flush packets received from this port on specified ring. Instruction When master-node receives valid link-down packets or link-up packets, it will send common-flush packets, instructing the other nodes on the ring to flush their forwarding database. When the nodes except master-node receive common-flush, they will flush forwarding database. If there is any port blocked on that node, it won't be unblocked." ::= { h3cRrppPortEntry 8 } h3cRrppPortRXCompleteFlush OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of complete-flush packets received from this port on specified ring. Instruction When the ring recovers, master-node will receive its own hello packets. It will send complete-flush packets, instructing the other nodes on the ring to flush their forwarding database. When the nodes except master-node receive complete-flush, they will flush forwarding database. If there is any port blocked on that node, it will be unblocked." ::= { h3cRrppPortEntry 9 } h3cRrppPortTXHello OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of hello packets sent from this port on specified ring." ::= { h3cRrppPortEntry 10 } h3cRrppPortTXLinkUp OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of link-up packets sent from this port on specified ring." ::= { h3cRrppPortEntry 11 } h3cRrppPortTXLinkDown OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of link-down packets sent from this port on specified ring." ::= { h3cRrppPortEntry 12 } h3cRrppPortTXCommonFlush OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of common-flush packets sent from this port on specified ring." ::= { h3cRrppPortEntry 13 } h3cRrppPortTXCompleteFlush OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of complete-flush packets sent from this port on specified ring." ::= { h3cRrppPortEntry 14 } h3cRrppPortRXEdgeHello OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of edge-hello packets received from this port on specified ring. When edge-node sends edge-hello packets, assistantEdge-node will receive its own edge-hello packets from the common link and the master ring." ::= { h3cRrppPortEntry 15 } h3cRrppPortRXMajorFault OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of major-fault packets received from this port on specified ring. When assistantEdge can't receive edge-hello packets in the specified fault-time, assistantEdge-node will send its own major-fault packets from the edge port around the sub ring. Edge-node will receive the major-fault packets from its edge port. Then Edge-node will block its edge port." ::= { h3cRrppPortEntry 16 } h3cRrppPortTXEdgeHello OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of edge-hello packets sent from this port on specified ring." ::= { h3cRrppPortEntry 17 } h3cRrppPortTXMajorFault OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The statistics of major-fault packets sent from this port on specified ring." ::= { h3cRrppPortEntry 18 } h3cRrppNotifications OBJECT IDENTIFIER ::= { h3cRrpp 3 } h3cRrppRingRecover NOTIFICATION-TYPE OBJECTS { h3cRrppDomainID, h3cRrppRingID } STATUS current DESCRIPTION "Trap message is generated by master-node on the ring when the ring recovers from fault." ::= { h3cRrppNotifications 1 } h3cRrppRingFail NOTIFICATION-TYPE OBJECTS { h3cRrppDomainID, h3cRrppRingID } STATUS current DESCRIPTION "Trap message is generated by master-node on the ring when the ring fails." ::= { h3cRrppNotifications 2 } h3cRrppMultiMaster NOTIFICATION-TYPE OBJECTS { h3cRrppDomainID, h3cRrppRingID } STATUS current DESCRIPTION "Trap message is generated by master-node when it detects there are more than one master-node on the ring." ::= { h3cRrppNotifications 3 } h3cRrppMajorFault NOTIFICATION-TYPE OBJECTS { h3cRrppDomainID, h3cRrppRingID } STATUS current DESCRIPTION "Trap message is generated by edge-node or assistant-edge-node when it detects major fault." ::= { h3cRrppNotifications 4 } END