-- ============================================================================ -- Copyright (c) 2004-2016 Hangzhou H3C Tech. Co., Ltd. All rights reserved. -- -- Description: The MIB is extracted from draft-ietf-bfd-base-04.txt. -- This file defines a portion of the Management Information Base (MIB) for use -- with network management protocols in the Internet community. It describes -- managed objects to configure or monitor Bi-Directional Forwarding Detection -- on devices supporting this feature. -- Reference: -- Version: V1.3 -- History: -- V1.0 2006-05-15 created by huanglina and xuqigang -- V1.1 2014-01-20 modified by wangxingying -- V1.2 2014-12-23 modified by wangxingying -- V1.3 2016-03-12 modified by guobin -- ============================================================================ H3C-BFD-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Counter32, Counter64, NOTIFICATION-TYPE FROM SNMPv2-SMI -- [RFC2578] TEXTUAL-CONVENTION, TruthValue, TimeStamp FROM SNMPv2-TC InterfaceIndex FROM IF-MIB InetAddress, InetAddressType, InetPortNumber FROM INET-ADDRESS-MIB -- [RFC3291] h3cCommon FROM HUAWEI-3COM-OID-MIB; h3cBfdMIB MODULE-IDENTITY LAST-UPDATED "201412131200Z" -- 13 Dec 2014 12:00:00 Beijing time ORGANIZATION "Hangzhou H3C Tech. Co., Ltd." CONTACT-INFO "Platform Team Hangzhou H3C Tech. Co., Ltd. Hai-Dian District Beijing P.R. China http://www.h3c.com Zip:100085 " DESCRIPTION "Bidirectional Forwarding Management Information Base." -- Revision history. REVISION "201412131200Z" -- 13 Dec 2014 12:00:00 Beijing time DESCRIPTION "Modified the objects of h3cBfdSessEntry." REVISION "201401171200Z" -- 17 Jan 2014 12:00:00 Beijing time DESCRIPTION "Modified for bfd trap." REVISION "200605161200Z" -- 08 May 2006 12:00:00 Beijing time DESCRIPTION "The first version. " ::= { h3cCommon 72 } -- Top level components of this MIB module. h3cBfdNotifications OBJECT IDENTIFIER ::= { h3cBfdMIB 0 } h3cBfdObjects OBJECT IDENTIFIER ::= { h3cBfdMIB 1 } h3cBfdConformance OBJECT IDENTIFIER ::= { h3cBfdMIB 2 } h3cBfdGlobalObjects OBJECT IDENTIFIER ::= { h3cBfdObjects 1 } -- Textual Conventions BfdSessIndexTC ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "An index used to uniquely identify BFD sessions." SYNTAX Unsigned32 (1..4294967295) BfdInterval ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "A time interval delay in microseconds, which is used by the BFD." SYNTAX Unsigned32 (1..4294967295) BfdDiag ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The diagnostic code is used by the BFD specifying the local system's reason for the last session state change, and must be initialized to zero(No Diagnostic). The 'noDiagnostic' means the session keeps state up. The 'controlDetectionTimeExpired' indicates the reason the session enters state down from state up is that the control detection time expires. The 'echoFunctionFailed' indicates the reason the session enters state down from state up is that Echo Function fails. The 'neighborSignaledSessionDown' indicates the reason the session enters state down from state up is that neighbor signals session Down. The 'forwardingPlaneReset' indicates the reason the session enters state down from state up is that the Forwarding Plane resets. The 'pathDown' indicates the reason the session enters state down from state up is that the path state is down. The 'concatenatedPathDown' indicates the reason the session enters state down from state up is that the concatenated path state is down. The 'administrativelyDown' indicates the reason the session enters state down from state up is that the session is kept administratively down by entering the AdminDown state. The 'reverseConcatenatedPathDown' indicates the reason the session enters state down from state up is that reverse concatenated path state is down." SYNTAX INTEGER { noDiagnostic(1), controlDetectionTimeExpired(2), echoFunctionFailed(3), neighborSignaledSessionDown(4), forwardingPlaneReset(5), pathDown(6), concatenatedPathDown(7), administrativelyDown(8), reverseConcatenatedPathDown(9) } -- BFD General Variables -- These variables apply globally to the Router's BFD Process. h3cBfdVersionNumber OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "It indicates the BFD session's current version number." REFERENCE "BFD Version 1 (draft-ietf-bfd-base-04.txt)" DEFVAL { 1 } ::= { h3cBfdGlobalObjects 1 } h3cBfdSysInitMode OBJECT-TYPE SYNTAX INTEGER { active(1), passive(2)} MAX-ACCESS read-write STATUS current DESCRIPTION "A system may take either an active role or a passive role in session initialization. A system taking the active role must send BFD control packets for a particular session, regardless of whether it has received any BFD packets for that session. A system taking the passive role must not begin sending BFD packets for a particular session until it has received a BFD packet for that session, and thus has learned the remote system's discriminator value." DEFVAL { active } ::= { h3cBfdGlobalObjects 2 } h3cBfdSessNotificationsEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This variable enables the emission of h3cBfdSessStateUp h3cBfdSessStateDown and h3cBfdSessReachLimit notifications if this variable is set to true(1); otherwise these notifications are not emitted." DEFVAL { false } ::= { h3cBfdGlobalObjects 3 } h3cBfdSessNumberLimit OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This variable is the active session limit of this device." ::= { h3cBfdGlobalObjects 4 } -- BFD Interface Table -- The BFD Interface Table defines BFD interface specific information. h3cBfdIfTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cBfdIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This Table describes the BFD interface specific information." ::= { h3cBfdObjects 2 } h3cBfdIfEntry OBJECT-TYPE SYNTAX H3cBfdIfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This Entry describes the BFD interface specific information." INDEX { h3cBfdIfIndex } ::= { h3cBfdIfTable 1 } H3cBfdIfEntry ::= SEQUENCE { h3cBfdIfIndex InterfaceIndex, h3cBfdIfDesiredMinTxInterval BfdInterval, h3cBfdIfDesiredMinRxInterval BfdInterval, h3cBfdIfDetectMult Unsigned32, h3cBfdIfAuthType INTEGER } h3cBfdIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This variable contains an index that represents a unique BFD interface on this device." ::= { h3cBfdIfEntry 1 } h3cBfdIfDesiredMinTxInterval OBJECT-TYPE SYNTAX BfdInterval MAX-ACCESS read-write STATUS current DESCRIPTION "This variable defines the minimum interval, in microseconds, that the interface would like to use when transmitting BFD Control packets." ::= { h3cBfdIfEntry 2 } h3cBfdIfDesiredMinRxInterval OBJECT-TYPE SYNTAX BfdInterval MAX-ACCESS read-write STATUS current DESCRIPTION "This variable defines the minimum interval, in, microseconds, between received BFD Control packets the local system is capable of supporting." ::= { h3cBfdIfEntry 3 } h3cBfdIfDetectMult OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-write STATUS current DESCRIPTION "The desired detect time multiplier for BFD control packets. The negotiated control packet transmission interval, multiplied by this variable, will be the detection time for this session (as seen by the remote system.) The variable must be a nonzero integer." ::= { h3cBfdIfEntry 4 } h3cBfdIfAuthType OBJECT-TYPE SYNTAX INTEGER { none(1), simple(2), md5(3), mmd5(4), sha1(5), msha1(6) } MAX-ACCESS read-only STATUS current DESCRIPTION "The Authentication Type used for this interface. This field is valid only when the Authentication Present bit is set. The 'none' indicates the session doesn't support authentication. The 'simple' indicates the session supports simple password authentication. The 'md5' indicates the session supports Keyed MD5 authentication. The 'mmd5' indicates the session supports Meticulous Keyed MD5 authentication. The 'sha1' indicates the session supports Keyed SHA1 authentication. The 'msha1' indicates the session supports Meticulous Keyed SHA1 authentication." DEFVAL { none } ::= { h3cBfdIfEntry 5 } -- BFD Session Table -- The BFD Session Table defines BFD session specific information. h3cBfdSessTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cBfdSessEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table describes the BFD sessions." REFERENCE "BFD Version 1 (draft-ietf-bfd-base-04.txt)" ::= { h3cBfdObjects 3 } h3cBfdSessEntry OBJECT-TYPE SYNTAX H3cBfdSessEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This Entry describes the BFD sessions." INDEX { h3cBfdSessIndex } ::= { h3cBfdSessTable 1 } H3cBfdSessEntry ::= SEQUENCE { h3cBfdSessIndex BfdSessIndexTC, h3cBfdSessIfIndex InterfaceIndex, h3cBfdSessAppSupportId BITS, h3cBfdSessLocalDiscr Unsigned32, h3cBfdSessRemoteDiscr Unsigned32, h3cBfdSessDstPort InetPortNumber, h3cBfdSessOperMode INTEGER, h3cBfdSessAddrType InetAddressType, h3cBfdSessLocalAddr InetAddress, h3cBfdSessRemoteAddr InetAddress, h3cBfdSessLocalDiag BfdDiag, h3cBfdSessState INTEGER, h3cBfdSessControlPlanIndepFlag TruthValue, h3cBfdSessAuthFlag TruthValue, h3cBfdSessDemandModeFlag TruthValue } h3cBfdSessIndex OBJECT-TYPE SYNTAX BfdSessIndexTC MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "This variable contains an index which represents a unique BFD session on this device." ::= { h3cBfdSessEntry 1 } h3cBfdSessIfIndex OBJECT-TYPE SYNTAX InterfaceIndex MAX-ACCESS read-only STATUS current DESCRIPTION "This variable contains an interface's index under which the BFD session runs." ::= { h3cBfdSessEntry 2 } h3cBfdSessAppSupportId OBJECT-TYPE SYNTAX BITS {none(0), ospf(1), isis(2), bgp(3), mpls(4)} MAX-ACCESS read-only STATUS current DESCRIPTION "This variable contains an ID used to indicate a local application which owns or maintains this BFD session. Note, a BFD session can support several route protocols. This is a bit-map of possible conditions. The corresponding bit positions are: |0 |none | |1 |ospf | |2 |isis | |3 |bgp | |4 |mpls | " ::= { h3cBfdSessEntry 3 } h3cBfdSessLocalDiscr OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This variable defines the local discriminator for this BFD session, used to uniquely identify it." ::= { h3cBfdSessEntry 4 } h3cBfdSessRemoteDiscr OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "This variable defines the session discriminator chosen by the remote system for this BFD session." ::= { h3cBfdSessEntry 5 } h3cBfdSessDstPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-only STATUS current DESCRIPTION "The UDP Port for BFD. The default value is the well-known value for this port." REFERENCE "BFD Version 1 (draft-ietf-bfd-base-04.txt)" DEFVAL { 3784 } ::= { h3cBfdSessEntry 6 } h3cBfdSessOperMode OBJECT-TYPE SYNTAX INTEGER { asynchModeWOEchoFun(1), demandModeWOEchoFunction(2), asyncModeWEchoFun(3), demandModeWEchoFunction(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "This variable defines current operating mode that BFD session is running in. The primary mode which the BFD session runs in is known as Asynchronous mode. In this mode, the systems periodically send BFD Control packets to one another, and if a number of those packets in a row are not received by the other system, the session is declared to be down. The second mode is known as Demand mode. In this mode, it is assumed that each system has an independent way of verifying that it has connectivity to the other system. Once a BFD session is established, the systems stop sending BFD Control packets, except when either system feels the need to verify connectivity explicitly, in which case a short sequence of BFD Control packets is sent, and then the protocol quiesces. An adjunct to both modes is the Echo function. When the Echo function is active, a stream of BFD Echo packets is transmitted in such a way as to have the other system loop them back through its forwarding path. If a number of packets of the echoed data stream are not received, the session is declared to be down. The Echo function may be used with either Asynchronous or Demand modes. The 'asynchModeWOEchoFun' indicates this BFD session operates in the Asynchronous mode, and doesn't support the Echo Function. The 'demandModeWOEchoFunction' indicates this BFD session operates in the Demand mode, and doesn't support the Echo Function. The 'asyncModeWEchoFun' indicates this BFD session operates in the Asynchronous mode, and also supports the Echo Function. The 'demandModeWEchoFunction' indicates this BFD session operates in the Demand mode, and also supports the Echo Function." DEFVAL { asynchModeWOEchoFun } ::= { h3cBfdSessEntry 7 } h3cBfdSessAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-only STATUS current DESCRIPTION "This object defines IP address type of the interface associated with this BFD session. Only values unknown(0), ipv4(1) or ipv6(2) have to be supported. A value of unknown(0) is allowed only when the outgoing interface is of type point-to-point, or when the BFD session is not associated with a specific interface. If any other unsupported values are attempted in a set operation, the agent must return an inconsistentValue error." ::= { h3cBfdSessEntry 8 } h3cBfdSessLocalAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This variable defines IP address of the local interface from which the BFD packets is transmitted. It can also be used to enabled BFD on a specific interface. The value is set to zero when BFD session is not associated with a specific interface." ::= { h3cBfdSessEntry 9 } h3cBfdSessRemoteAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-only STATUS current DESCRIPTION "This variable defines IP address of the remote interface from which the BFD packets is transmitted. It can also be used to enabled BFD on a specific interface. The value is set to zero when BFD session is not associated with a specific interface." ::= { h3cBfdSessEntry 10 } h3cBfdSessLocalDiag OBJECT-TYPE SYNTAX BfdDiag MAX-ACCESS read-only STATUS current DESCRIPTION "The BFD diagnostic code for the BFD session was down with the neighbor. If no such event happens this object contains a zero value." DEFVAL { noDiagnostic } ::= { h3cBfdSessEntry 11 } h3cBfdSessState OBJECT-TYPE SYNTAX INTEGER { adminDown(0), down(1), init(2), up(3) } MAX-ACCESS read-only STATUS current DESCRIPTION "The state of the running BFD session. There are three states through which a session normally proceeds, two for establishing a session (Init and Up) and one for tearing down a session (Down.) This allows a three-way handshake for both session establishment and session teardown (assuring that both systems are aware of all session state changes.) A fourth state (AdminDown) exists so that a session can be administratively put down indefinitely. The Down state means that the session is down (or has just been created.) A session remains in Down state until the remote system indicates that it agrees that the session is down by sending a BFD Control packet with the State field set to anything other than Up. If that packet signals Down state, the session advances to Init state; if that packet signals Init state, the session advances to Up state. Init state means that the remote system is 0communicating, and the local system desires to bring the session up, but the remote system does not yet realize it. A session will remain in Init state until either a BFD Control Packet is received that is signaling Init or Up state (in which case the session advances to Up state) or until the detection time expires, meaning that communication with the remote system has been lost (in which case the session advances to Down state.) Up state means that the BFD session has successfully been established, and implies that connectivity between the systems is working. The session will remain in the Up state until either connectivity fails, or the session is taken down administratively. If either the remote system signals Down state, or the detection time expires, the session advances to Down state. AdminDown state means that the session is being held administratively down. This causes the remote system to enter Down state, and remain there until the local system exits AdminDown state." DEFVAL { down } ::= { h3cBfdSessEntry 12 } h3cBfdSessControlPlanIndepFlag OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This variable indicates whether the local system can continue to work while the control plane is out of work. Specifically, it is set to true(1) if the local system is independent of the control plane. Otherwise, the value is set to false(2)" DEFVAL { true } ::= { h3cBfdSessEntry 13 } h3cBfdSessAuthFlag OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This variable indicates that the local system wants to use Authentication. Specifically, it is set to true(1) if the local system wishes the session to be authenticated or false(2) if not." DEFVAL { false } ::= { h3cBfdSessEntry 14 } h3cBfdSessDemandModeFlag OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "This variable indicates that the local system wants to use Demand mode. Specifically, it is set to true(1) if the local system wishes to use Demand mode or false(2) if not" DEFVAL { false } ::= { h3cBfdSessEntry 15 } -- BFD Session State Table h3cBfdSessStatTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cBfdSessStatEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table defines BFD session state." ::= { h3cBfdObjects 4 } h3cBfdSessStatEntry OBJECT-TYPE SYNTAX H3cBfdSessStatEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by a BFD-enabled node for every BFD Session. It defines BFD session statistics." AUGMENTS { h3cBfdSessEntry } ::= { h3cBfdSessStatTable 1 } H3cBfdSessStatEntry ::= SEQUENCE { h3cBfdSessStatPktInHC Counter64, h3cBfdSessStatPktOutHC Counter64, h3cBfdSessStatDownCount Counter32, h3cBfdSessStatPktDiscard Counter64, h3cBfdSessStatPktLost Counter64 } h3cBfdSessStatPktInHC OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of BFD messages received by this BFD session." ::= { h3cBfdSessStatEntry 1 } h3cBfdSessStatPktOutHC OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of BFD messages sent by this BFD session." ::= { h3cBfdSessStatEntry 2 } h3cBfdSessStatDownCount OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times this session has gone into the Down state since the router last rebooted." ::= { h3cBfdSessStatEntry 3 } h3cBfdSessStatPktDiscard OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets the local system has discarded since the router last rebooted." ::= { h3cBfdSessStatEntry 4 } h3cBfdSessStatPktLost OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of packets the local system has failed to transmit since the router last rebooted." ::= { h3cBfdSessStatEntry 5 } -- BFD Session Performance Table h3cBfdSessPerfTable OBJECT-TYPE SYNTAX SEQUENCE OF H3cBfdSessPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table defines BFD session performance." ::= { h3cBfdObjects 5 } h3cBfdSessPerfEntry OBJECT-TYPE SYNTAX H3cBfdSessPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by a BFD-enabled node for every BFD session. It defines BFD Session performance." AUGMENTS { h3cBfdSessEntry } ::= { h3cBfdSessPerfTable 1 } H3cBfdSessPerfEntry ::= SEQUENCE { h3cBfdSessPerfCreatTime TimeStamp, h3cBfdSessPerfLastUpTime TimeStamp, h3cBfdSessPerfLastDownTime TimeStamp } h3cBfdSessPerfCreatTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the session was created. If no such create event exists this object contains a zero value." ::= { h3cBfdSessPerfEntry 1 } h3cBfdSessPerfLastUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the last time communication was lost. If no such up event exists this variable contains a zero value." ::= { h3cBfdSessPerfEntry 2 } h3cBfdSessPerfLastDownTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the last time communication was lost with the neighbor. If no such event exist this variable contains a zero value." ::= { h3cBfdSessPerfEntry 3 } -- Notification Configuration h3cBfdSessStateChange NOTIFICATION-TYPE OBJECTS { h3cBfdSessIfIndex, h3cBfdSessIndex, h3cBfdSessState } STATUS current DESCRIPTION "A notification sent when a session changes state, entering state up or entering state down. The session will enter state up finishing three times handshakes , and will enter state down when the communication path is out of work. When the h3cBfdSessState's value is state up, the session enters state up, and the session enters state down when the h3cBfdSessState's value is state down. The h3cBfdSessIfIndex contains an interface's index under which the BFD session runs. The h3cBfdSessIndex contains an index which represents a unique BFD session on this device. The h3cBfdSessState is the state of the running BFD session. " ::= { h3cBfdNotifications 1 } h3cBfdSessAuthFail NOTIFICATION-TYPE OBJECTS { h3cBfdIfIndex } STATUS current DESCRIPTION "A notification sent when receiving a session with an authentication fail. The h3cBfdIfIndex is an index which represents a unique BFD interface on this device. " ::= { h3cBfdNotifications 2 } h3cBfdSessStateUp NOTIFICATION-TYPE OBJECTS { h3cBfdSessIfIndex, h3cBfdSessIndex, h3cBfdSessState } STATUS current DESCRIPTION "A notification sent when a session changes state to up. The session will enter state up finishing three times handshakes. The h3cBfdSessIfIndex contains an interface's index under which the BFD session runs. The h3cBfdSessIndex contains an index which represents a unique BFD session on this device. The h3cBfdSessState is the state of the running BFD session." ::= { h3cBfdNotifications 3 } h3cBfdSessStateDown NOTIFICATION-TYPE OBJECTS { h3cBfdSessIfIndex, h3cBfdSessIndex, h3cBfdSessState } STATUS current DESCRIPTION "A notification sent when a session changes state to down. The session will enter state down when the communication path is out of work. The h3cBfdSessIfIndex contains an interface's index under which the BFD session runs. The h3cBfdSessIndex contains an index which represents a unique BFD session on this device. The h3cBfdSessState is the state of the running BFD session." ::= { h3cBfdNotifications 4 } h3cBfdSessReachLimit NOTIFICATION-TYPE OBJECTS { h3cBfdSessNumberLimit } STATUS current DESCRIPTION "A notification would be sent when the number of active BFD sessions reached this device's upper limit and no more session could be activated. The h3cBfdSessNumberLimit is the active session limit of this device." ::= { h3cBfdNotifications 5 } END