Internet Engineering Task Force (IETF) T. Nadeau
Request for Comments: 7331 Brocade
Category: Standards Track Z. Ali
ISSN: 2070-1721 N. Akiya
Cisco Systems
August 2014
Bidirectional Forwarding Detection (BFD) Management Information Base
Abstract
This document defines a portion of the Management Information Base
(MIB) for use with network management protocols in the Internet
community. In particular, it describes managed objects for modeling
the Bidirectional Forwarding Detection (BFD) protocol.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc7331.
Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Nadeau, et al. Standards Track [Page 1]
RFC 7331 BFD-STD-MIB August 2014
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. The Internet-Standard Management Framework . . . . . . . . . 2
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Brief Description of MIB Objects . . . . . . . . . . . . . . 3
4.1. General Variables . . . . . . . . . . . . . . . . . . . . 3
4.2. Session Table (bfdSessionTable) . . . . . . . . . . . . . 3
4.3. Session Performance Table (bfdSessionPerfTable) . . . . . 3
4.4. BFD Session Discriminator Mapping Table
(bfdSessDiscMapTable) . . . . . . . . . . . . . . . . . . 3
4.5. BFD Session IP Mapping Table (bfdSessIpMapTable) . . . . 4
5. BFD MIB Module Definitions . . . . . . . . . . . . . . . . . 4
6. Security Considerations . . . . . . . . . . . . . . . . . . . 35
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37
8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 37
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1. Normative References . . . . . . . . . . . . . . . . . . 38
9.2. Informative References . . . . . . . . . . . . . . . . . 39
1. Introduction
This memo defines a portion of the MIB for use with network
management protocols in the Internet community. In particular, it
describes managed objects to configure and/or monitor Bidirectional
Forwarding Detection for [RFC5880], [RFC5881], [RFC5883], and
[RFC7130], BFD versions 0 and/or 1, on devices supporting this
feature.
This memo does not define a compliance requirement for a system that
only implements BFD version 0. This is a reflection of a considered
and deliberate decision by the BFD WG because the BFD version 0
protocol is primarily of historical interest by comparison to the
widespread deployment of the BFD version 1 protocol.
2. The Internet-Standard Management Framework
For a detailed overview of the documents that describe the current
Internet-Standard Management Framework, please refer to section 7 of
RFC 3410 [RFC3410].
Managed objects are accessed via a virtual information store, termed
the Management Information Base or MIB. MIB objects are generally
accessed through the Simple Network Management Protocol (SNMP).
Objects in the MIB are defined using the mechanisms defined in the
Structure of Management Information (SMI). This memo specifies a MIB
module that is compliant to the SMIv2, which is described in STD 58,
Nadeau, et al. Standards Track [Page 2]
RFC 7331 BFD-STD-MIB August 2014
RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580
[RFC2580].
As with all MIB modules, an attempt to SET or CREATE an object to a
value that is not supported by the implementation will result in a
failure using a return code that indicates that the value is not
supported.
3. Terminology
This document adopts the definitions, acronyms, and mechanisms
described in [RFC5880], [RFC5881], [RFC5883], and [RFC7130]. Unless
otherwise stated, the mechanisms described therein will not be
redescribed here.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP
14, RFC 2119 [RFC2119].
4. Brief Description of MIB Objects
This section describes objects pertaining to BFD. The MIB objects
are derived from [RFC5880], [RFC5881], [RFC5883], and [RFC7130], and
also include textual conventions defined in [RFC7330].
4.1. General Variables
The General Variables are used to identify parameters that are global
to the BFD process.
4.2. Session Table (bfdSessionTable)
The session table is used to identify a BFD session between a pair of
nodes.
4.3. Session Performance Table (bfdSessionPerfTable)
The session performance table is used for collecting BFD performance
counters on a per-session basis. This table is an AUGMENT to the
bfdSessionTable.
4.4. BFD Session Discriminator Mapping Table (bfdSessDiscMapTable)
The BFD Session Discriminator Mapping Table provides a mapping
between a local discriminator value to the associated BFD session
found in the bfdSessionTable.
Nadeau, et al. Standards Track [Page 3]
RFC 7331 BFD-STD-MIB August 2014
4.5. BFD Session IP Mapping Table (bfdSessIpMapTable)
Given bfdSessInterface, bfdSessSrcAddrType, bfdSessSrcAddr,
bfdSessDstAddrType, and bfdSessSrcAddrType, the BFD Session IP
Mapping Table maps to an associated BFD session found in the
bfdSessionTable. This table SHOULD contain those BFD sessions that
are of type "IP".
5. BFD MIB Module Definitions
This MIB module makes references to the following documents:
[RFC2578], [RFC2579], [RFC2580], [RFC2863], [RFC3289], [RFC3413],
[RFC5082], [RFC5880], and [RFC5881].
BFD-STD-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
mib-2, Integer32, Unsigned32, Counter32, Counter64
FROM SNMPv2-SMI -- RFC 2578
TruthValue, RowStatus, StorageType, TimeStamp
FROM SNMPv2-TC -- RFC 2579
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
FROM SNMPv2-CONF -- RFC 2580
InterfaceIndexOrZero
FROM IF-MIB -- RFC 2863
InetAddress, InetAddressType, InetPortNumber
FROM INET-ADDRESS-MIB
IndexIntegerNextFree
FROM DIFFSERV-MIB -- RFC 3289
BfdSessIndexTC, BfdIntervalTC, BfdMultiplierTC,
BfdCtrlDestPortNumberTC, BfdCtrlSourcePortNumberTC
FROM BFD-TC-STD-MIB
IANAbfdDiagTC, IANAbfdSessTypeTC, IANAbfdSessOperModeTC,
IANAbfdSessStateTC, IANAbfdSessAuthenticationTypeTC,
IANAbfdSessAuthenticationKeyTC
FROM IANA-BFD-TC-STD-MIB;
Nadeau, et al. Standards Track [Page 4]
RFC 7331 BFD-STD-MIB August 2014
bfdMIB MODULE-IDENTITY
LAST-UPDATED "201408120000Z" -- 12 August 2014 00:00:00 GMT
ORGANIZATION "IETF Bidirectional Forwarding Detection
Working Group"
CONTACT-INFO
"Thomas D. Nadeau
Brocade
Email: tnadeau@lucidvision.com
Zafar Ali
Cisco Systems, Inc.
Email: zali@cisco.com
Nobo Akiya
Cisco Systems, Inc.
Email: nobo@cisco.com
Comments about this document should be emailed
directly to the BFD Working Group mailing list
at rtg-bfd@ietf.org"
DESCRIPTION
"Bidirectional Forwarding Management Information Base.
Copyright (c) 2014 IETF Trust and the persons identified
as authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with
or without modification, is permitted pursuant to, and
subject to the license terms contained in, the Simplified
BSD License set forth in Section 4.c of the IETF Trust's
Legal Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info)."
REVISION "201408120000Z" -- 12 August 2014 00:00:00 GMT
DESCRIPTION
"Initial version. Published as RFC 7331."
::= { mib-2 222 }
-- Top-level components of this MIB module.
bfdNotifications OBJECT IDENTIFIER ::= { bfdMIB 0 }
bfdObjects OBJECT IDENTIFIER ::= { bfdMIB 1 }
bfdConformance OBJECT IDENTIFIER ::= { bfdMIB 2 }
bfdScalarObjects OBJECT IDENTIFIER ::= { bfdObjects 1 }
Nadeau, et al. Standards Track [Page 5]
RFC 7331 BFD-STD-MIB August 2014
-- BFD General Variables
-- These parameters apply globally to the system's
-- BFD process.
bfdAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
adminDown(3),
down(4)
}
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The desired global administrative status of the
BFD system in this device."
::= { bfdScalarObjects 1 }
bfdOperStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1),
down(2),
adminDown(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the actual operational status of the
BFD system in this device. When this value is
down(2), all entries in the bfdSessTable MUST have
their bfdSessOperStatus as down(2) as well. When
this value is adminDown(3), all entries in the
bfdSessTable MUST have their bfdSessOperStatus
as adminDown(3) as well."
::= { bfdScalarObjects 2 }
bfdNotificationsEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"If this object is set to true(1), then it enables
the emission of bfdSessUp and bfdSessDown
notifications; otherwise, these notifications are not
emitted."
Nadeau, et al. Standards Track [Page 6]
RFC 7331 BFD-STD-MIB August 2014
REFERENCE
"See also RFC 3413, Simple Network Management Protocol (SNMP)
Applications, for explanation that
notifications are under the ultimate control of the
MIB modules in this document."
DEFVAL { false }
::= { bfdScalarObjects 3 }
bfdSessIndexNext OBJECT-TYPE
SYNTAX IndexIntegerNextFree (0..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains an unused value for
bfdSessIndex that can be used when creating
entries in the table. A zero indicates that
no entries are available, but it MUST NOT be used
as a valid index. "
::= { bfdScalarObjects 4 }
-- BFD Session Table
-- The BFD Session Table specifies BFD session-specific
-- information.
bfdSessTable OBJECT-TYPE
SYNTAX SEQUENCE OF BfdSessEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The BFD Session Table describes the BFD sessions."
REFERENCE
"RFC 5880, Bidirectional Forwarding Detection (BFD)."
::= { bfdObjects 2 }
bfdSessEntry OBJECT-TYPE
SYNTAX BfdSessEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The BFD Session Entry describes the BFD session."
INDEX { bfdSessIndex }
::= { bfdSessTable 1 }
BfdSessEntry ::= SEQUENCE {
bfdSessIndex BfdSessIndexTC,
bfdSessVersionNumber Unsigned32,
bfdSessType IANAbfdSessTypeTC,
bfdSessDiscriminator Unsigned32,
Nadeau, et al. Standards Track [Page 7]
RFC 7331 BFD-STD-MIB August 2014
bfdSessRemoteDiscr Unsigned32,
bfdSessDestinationUdpPort BfdCtrlDestPortNumberTC,
bfdSessSourceUdpPort BfdCtrlSourcePortNumberTC,
bfdSessEchoSourceUdpPort InetPortNumber,
bfdSessAdminStatus INTEGER,
bfdSessOperStatus INTEGER,
bfdSessState IANAbfdSessStateTC,
bfdSessRemoteHeardFlag TruthValue,
bfdSessDiag IANAbfdDiagTC,
bfdSessOperMode IANAbfdSessOperModeTC,
bfdSessDemandModeDesiredFlag TruthValue,
bfdSessControlPlaneIndepFlag TruthValue,
bfdSessMultipointFlag TruthValue,
bfdSessInterface InterfaceIndexOrZero,
bfdSessSrcAddrType InetAddressType,
bfdSessSrcAddr InetAddress,
bfdSessDstAddrType InetAddressType,
bfdSessDstAddr InetAddress,
bfdSessGTSM TruthValue,
bfdSessGTSMTTL Unsigned32,
bfdSessDesiredMinTxInterval BfdIntervalTC,
bfdSessReqMinRxInterval BfdIntervalTC,
bfdSessReqMinEchoRxInterval BfdIntervalTC,
bfdSessDetectMult BfdMultiplierTC,
bfdSessNegotiatedInterval BfdIntervalTC,
bfdSessNegotiatedEchoInterval BfdIntervalTC,
bfdSessNegotiatedDetectMult BfdMultiplierTC,
bfdSessAuthPresFlag TruthValue,
bfdSessAuthenticationType IANAbfdSessAuthenticationTypeTC,
bfdSessAuthenticationKeyID Integer32,
bfdSessAuthenticationKey IANAbfdSessAuthenticationKeyTC,
bfdSessStorageType StorageType,
bfdSessRowStatus RowStatus
}
bfdSessIndex OBJECT-TYPE
SYNTAX BfdSessIndexTC
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object contains an index used to represent a
unique BFD session on this device. Managers
should obtain new values for row creation in this
table by reading bfdSessIndexNext."
::= { bfdSessEntry 1 }
Nadeau, et al. Standards Track [Page 8]
RFC 7331 BFD-STD-MIB August 2014
bfdSessVersionNumber OBJECT-TYPE
SYNTAX Unsigned32 (0..7)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The version number of the BFD protocol that this session
is running in. Write access is available for this object
to provide the ability to set the desired version for this
BFD session."
REFERENCE
"RFC 5880, Bidirectional Forwarding Detection (BFD)."
DEFVAL { 1 }
::= { bfdSessEntry 2 }
bfdSessType OBJECT-TYPE
SYNTAX IANAbfdSessTypeTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the type of this BFD session."
::= { bfdSessEntry 3 }
bfdSessDiscriminator OBJECT-TYPE
SYNTAX Unsigned32 (1..4294967295)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the local discriminator for this BFD
session, which is used to uniquely identify it."
::= { bfdSessEntry 4 }
bfdSessRemoteDiscr OBJECT-TYPE
SYNTAX Unsigned32 (0 | 1..4294967295)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the session discriminator chosen
by the remote system for this BFD session. The value may
be zero(0) if the remote discriminator is not yet known
or if the session is in the down or adminDown(1) state."
REFERENCE
"Section 6.8.6 of RFC 5880, Bidirectional
Forwarding Detection (BFD)."
::= { bfdSessEntry 5 }
Nadeau, et al. Standards Track [Page 9]
RFC 7331 BFD-STD-MIB August 2014
bfdSessDestinationUdpPort OBJECT-TYPE
SYNTAX BfdCtrlDestPortNumberTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the destination UDP port number
used for this BFD session's Control packets. The value
may be zero(0) if the session is in adminDown(1) state."
DEFVAL { 0 }
::= { bfdSessEntry 6 }
bfdSessSourceUdpPort OBJECT-TYPE
SYNTAX BfdCtrlSourcePortNumberTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the source UDP port number used
for this BFD session's Control packets. The value may be
zero(0) if the session is in adminDown(1) state. Upon
creation of a new BFD session via this MIB, the value of
zero(0) specified would permit the implementation to
choose its own source port number."
DEFVAL { 0 }
::= { bfdSessEntry 7 }
bfdSessEchoSourceUdpPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the source UDP port number used for
this BFD session's Echo packets. The value may be zero(0)
if the session is not running in the Echo mode, or the
session is in adminDown(1) state. Upon creation of a new
BFD session via this MIB, the value of zero(0) would
permit the implementation to choose its own source port
number."
DEFVAL { 0 }
::= { bfdSessEntry 8 }
bfdSessAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
enabled(1),
disabled(2),
adminDown(3),
down(4)
}
MAX-ACCESS read-create
Nadeau, et al. Standards Track [Page 10]
RFC 7331 BFD-STD-MIB August 2014
STATUS current
DESCRIPTION
"Denotes the desired operational status of the BFD session.
A transition to enabled(1) will start the BFD state machine
for the session. The state machine will have an initial
state of down(2).
A transition to disabled(2) will stop the BFD state machine
for the session. The state machine may first transition to
adminDown(1) prior to stopping.
A transition to adminDown(3) will cause the BFD state
machine to transition to adminDown(1) and will cause the
session to remain in this state.
A transition to down(4) will cause the BFD state machine
to transition to down(2) and will cause the session to
remain in this state.
Care should be used in providing write access to this
object without adequate authentication."
::= { bfdSessEntry 9 }
bfdSessOperStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1),
down(2),
adminDown(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Denotes the actual operational status of the BFD session.
If the value of bfdOperStatus is down(2), this value MUST
eventually be down(2) as well. If the value of
bfdOperStatus is adminDown(3), this value MUST eventually
be adminDown(3) as well."
::= { bfdSessEntry 10 }
bfdSessState OBJECT-TYPE
SYNTAX IANAbfdSessStateTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Configured BFD session state."
::= { bfdSessEntry 11 }
Nadeau, et al. Standards Track [Page 11]
RFC 7331 BFD-STD-MIB August 2014
bfdSessRemoteHeardFlag OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the status of BFD packet reception from
the remote system. Specifically, it is set to true(1) if
the local system is actively receiving BFD packets from the
remote system and is set to false(2) if the local system
has not received BFD packets recently (within the detection
time) or if the local system is attempting to tear down
the BFD session."
REFERENCE
"RFC 5880, Bidirectional Forwarding Detection (BFD)."
::= { bfdSessEntry 12 }
bfdSessDiag OBJECT-TYPE
SYNTAX IANAbfdDiagTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"A diagnostic code specifying the local system's reason
for the last transition of the session from up(4)
to some other state."
::= { bfdSessEntry 13 }
bfdSessOperMode OBJECT-TYPE
SYNTAX IANAbfdSessOperModeTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the operational mode of this
BFD session."
::= { bfdSessEntry 14 }
bfdSessDemandModeDesiredFlag OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the local system's
desire 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 }
::= { bfdSessEntry 15 }
Nadeau, et al. Standards Track [Page 12]
RFC 7331 BFD-STD-MIB August 2014
bfdSessControlPlaneIndepFlag OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the local system's
ability to continue to function through a disruption of
the control plane. Specifically, it is set
to true(1) if the local system BFD implementation is
independent of the control plane. Otherwise, the
value is set to false(2)."
DEFVAL { false }
::= { bfdSessEntry 16 }
bfdSessMultipointFlag OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the Multipoint (M) bit for this
session. It is set to true(1) if the Multipoint (M) bit is
set to 1. Otherwise, the value is set to false(2)."
DEFVAL { false }
::= { bfdSessEntry 17 }
bfdSessInterface OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object contains an interface index used to indicate
the interface that this BFD session is running on. This
value can be zero if there is no interface associated
with this BFD session."
::= { bfdSessEntry 18 }
bfdSessSrcAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the IP address type of the source IP
address of this BFD session. The value of unknown(0) is
allowed only when the session is singleHop(1) and the
source IP address of this BFD session is derived from
the outgoing interface, or when the BFD session is not
associated with a specific interface. If any other
unsupported values are attempted in a set operation, the
Nadeau, et al. Standards Track [Page 13]
RFC 7331 BFD-STD-MIB August 2014
agent MUST return an inconsistentValue error."
::= { bfdSessEntry 19 }
bfdSessSrcAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the source IP address of this BFD
session. The format of this object is controlled by the
bfdSessSrcAddrType object."
::= { bfdSessEntry 20 }
bfdSessDstAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the IP address type of the neighboring
IP address that is being monitored with this BFD session.
The value of unknown(0) is allowed only when the session is
singleHop(1) and 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."
::= { bfdSessEntry 21 }
bfdSessDstAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the neighboring IP address that is
being monitored with this BFD session. The format of this
object is controlled by the bfdSessDstAddrType object."
::= { bfdSessEntry 22 }
bfdSessGTSM OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Setting the value of this object to false(2) will disable
GTSM protection of the BFD session. GTSM MUST be enabled
on a singleHop(1) session if no authentication is in use."
Nadeau, et al. Standards Track [Page 14]
RFC 7331 BFD-STD-MIB August 2014
REFERENCE
"RFC 5082, The Generalized TTL Security Mechanism (GTSM).
Section 5 of RFC 5881, Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)."
DEFVAL { true }
::= { bfdSessEntry 23 }
bfdSessGTSMTTL OBJECT-TYPE
SYNTAX Unsigned32 (0..255)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is valid only when bfdSessGTSM protection is
enabled on the system. This object indicates the minimum
allowed Time to Live (TTL) for received BFD Control packets.
For a singleHop(1) session, if GTSM protection is enabled,
this object SHOULD be set to the maximum TTL value allowed
for a single hop.
By default, GTSM is enabled and the TTL value is 255. For a
multihop session, updating of the maximum TTL value allowed
is likely required."
REFERENCE
"RFC 5082, The Generalized TTL Security Mechanism (GTSM).
Section 5 of RFC 5881, Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)."
DEFVAL { 255 }
::= { bfdSessEntry 24 }
bfdSessDesiredMinTxInterval OBJECT-TYPE
SYNTAX BfdIntervalTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the minimum interval, in
microseconds, that the local system would like to use
when transmitting BFD Control packets. The value of
zero(0) is reserved in this case and should not be
used."
REFERENCE
"Section 4.1 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
::= { bfdSessEntry 25 }
bfdSessReqMinRxInterval OBJECT-TYPE
SYNTAX BfdIntervalTC
MAX-ACCESS read-create
STATUS current
Nadeau, et al. Standards Track [Page 15]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION
"This object specifies the minimum interval, in
microseconds, between received BFD Control packets the
local system is capable of supporting. The value of
zero(0) can be specified when the transmitting system
does not want the remote system to send any periodic BFD
Control packets."
REFERENCE
"Section 4.1 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
::= { bfdSessEntry 26 }
bfdSessReqMinEchoRxInterval OBJECT-TYPE
SYNTAX BfdIntervalTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the minimum interval, in
microseconds, between received BFD Echo packets that this
system is capable of supporting. The value must be zero(0) if
this is a multihop BFD session."
::= { bfdSessEntry 27 }
bfdSessDetectMult OBJECT-TYPE
SYNTAX BfdMultiplierTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object specifies the Detect time multiplier."
::= { bfdSessEntry 28 }
bfdSessNegotiatedInterval OBJECT-TYPE
SYNTAX BfdIntervalTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the negotiated interval, in
microseconds, that the local system is transmitting
BFD Control packets."
::= { bfdSessEntry 29 }
bfdSessNegotiatedEchoInterval OBJECT-TYPE
SYNTAX BfdIntervalTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the negotiated interval, in
microseconds, that the local system is transmitting
Nadeau, et al. Standards Track [Page 16]
RFC 7331 BFD-STD-MIB August 2014
BFD Echo packets. The value is expected to be zero if
the sessions are not running in Echo mode."
::= { bfdSessEntry 30 }
bfdSessNegotiatedDetectMult OBJECT-TYPE
SYNTAX BfdMultiplierTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the Detect time multiplier."
::= { bfdSessEntry 31 }
bfdSessAuthPresFlag OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the local system's
desire 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."
REFERENCE
"Sections 4.2 - 4.4 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
DEFVAL { false }
::= { bfdSessEntry 32 }
bfdSessAuthenticationType OBJECT-TYPE
SYNTAX IANAbfdSessAuthenticationTypeTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The authentication type used for this BFD session.
This field is valid only when the Authentication
Present bit is set. MAX-ACCESS to this object as well as
other authentication-related objects are set to
read-create in order to support management of a single
key ID at a time; key rotation is not handled. Key update
in practice must be done by atomic update using a set
containing all affected objects in the same varBindList
or otherwise risk the session dropping."
REFERENCE
"Sections 4.2 - 4.4 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
DEFVAL { noAuthentication }
::= { bfdSessEntry 33 }
Nadeau, et al. Standards Track [Page 17]
RFC 7331 BFD-STD-MIB August 2014
bfdSessAuthenticationKeyID OBJECT-TYPE
SYNTAX Integer32 (-1 | 0..255)
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The authentication key ID in use for this session. This
object permits multiple keys to be active simultaneously.
The value -1 indicates that no authentication key ID will
be present in the optional BFD Authentication Section."
REFERENCE
"Sections 4.2 - 4.4 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
DEFVAL { -1 }
::= { bfdSessEntry 34 }
bfdSessAuthenticationKey OBJECT-TYPE
SYNTAX IANAbfdSessAuthenticationKeyTC
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The authentication key. When the
bfdSessAuthenticationType is simplePassword(1), the value
of this object is the password present in the BFD packets.
When the bfdSessAuthenticationType is one of the keyed
authentication types, this value is used in the
computation of the key present in the BFD authentication
packet."
REFERENCE
"Sections 4.2 - 4.4 of RFC 5880, Bidirectional Forwarding
Detection (BFD)."
::= { bfdSessEntry 35 }
bfdSessStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the storage type for this
object. Conceptual rows having the value
'permanent' need not allow write-access to any
columnar objects in the row."
::= { bfdSessEntry 36 }
bfdSessRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
Nadeau, et al. Standards Track [Page 18]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION
"This variable is used to create, modify, and/or
delete a row in this table. When a row in this
table has a row in the active(1) state, no
objects in this row can be modified except the
bfdSessRowStatus and bfdSessStorageType."
::= { bfdSessEntry 37 }
-- BFD Session Performance Table
bfdSessPerfTable OBJECT-TYPE
SYNTAX SEQUENCE OF BfdSessPerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies BFD session performance counters."
::= { bfdObjects 3 }
bfdSessPerfEntry OBJECT-TYPE
SYNTAX BfdSessPerfEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in this table is created by a BFD-enabled node
for every BFD session. bfdSessPerfDiscTime is used to
indicate potential discontinuity for all counter objects
in this table."
AUGMENTS { bfdSessEntry }
::= { bfdSessPerfTable 1 }
BfdSessPerfEntry ::= SEQUENCE {
bfdSessPerfCtrlPktIn Counter32,
bfdSessPerfCtrlPktOut Counter32,
bfdSessPerfCtrlPktDrop Counter32,
bfdSessPerfCtrlPktDropLastTime TimeStamp,
bfdSessPerfEchoPktIn Counter32,
bfdSessPerfEchoPktOut Counter32,
bfdSessPerfEchoPktDrop Counter32,
bfdSessPerfEchoPktDropLastTime TimeStamp,
bfdSessUpTime TimeStamp,
bfdSessPerfLastSessDownTime TimeStamp,
bfdSessPerfLastCommLostDiag IANAbfdDiagTC,
bfdSessPerfSessUpCount Counter32,
bfdSessPerfDiscTime TimeStamp,
-- High Capacity Counters
bfdSessPerfCtrlPktInHC Counter64,
bfdSessPerfCtrlPktOutHC Counter64,
Nadeau, et al. Standards Track [Page 19]
RFC 7331 BFD-STD-MIB August 2014
bfdSessPerfCtrlPktDropHC Counter64,
bfdSessPerfEchoPktInHC Counter64,
bfdSessPerfEchoPktOutHC Counter64,
bfdSessPerfEchoPktDropHC Counter64
}
bfdSessPerfCtrlPktIn OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD control messages received for this
BFD session.
It MUST be equal to the least significant 32 bits of
bfdSessPerfCtrlPktInHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 1 }
bfdSessPerfCtrlPktOut OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD control messages sent for this BFD
session.
It MUST be equal to the least significant 32 bits of
bfdSessPerfCtrlPktOutHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 2 }
bfdSessPerfCtrlPktDrop OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD control messages received for this
session yet dropped for being invalid.
It MUST be equal to the least significant 32 bits of
bfdSessPerfCtrlPktDropHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 3 }
bfdSessPerfCtrlPktDropLastTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
Nadeau, et al. Standards Track [Page 20]
RFC 7331 BFD-STD-MIB August 2014
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at
which received the BFD control message for this session was
dropped. If no such up event exists, this object contains
a zero value."
::= { bfdSessPerfEntry 4 }
bfdSessPerfEchoPktIn OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD Echo messages received for this
BFD session.
It MUST be equal to the least significant 32 bits of
bfdSessPerfEchoPktInHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 5 }
bfdSessPerfEchoPktOut OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD Echo messages sent for this BFD
session.
It MUST be equal to the least significant 32 bits of
bfdSessPerfEchoPktOutHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 6 }
bfdSessPerfEchoPktDrop OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The total number of BFD Echo messages received for this
session yet dropped for being invalid.
It MUST be equal to the least significant 32 bits of
bfdSessPerfEchoPktDropHC if supported, and MUST do so
with the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 7 }
Nadeau, et al. Standards Track [Page 21]
RFC 7331 BFD-STD-MIB August 2014
bfdSessPerfEchoPktDropLastTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at
which received the BFD Echo message for this session was
dropped. If no such up event has been issued, this
object contains a zero value."
::= { bfdSessPerfEntry 8 }
bfdSessUpTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at which
the session came up. If no such event has been issued,
this object contains a zero value."
::= { bfdSessPerfEntry 9 }
bfdSessPerfLastSessDownTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at
which the last time communication was lost with the
neighbor. If no down event has been issued, this object
contains a zero value."
::= { bfdSessPerfEntry 10 }
bfdSessPerfLastCommLostDiag OBJECT-TYPE
SYNTAX IANAbfdDiagTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The BFD diag code for the last time communication was lost
with the neighbor. If such an event has not been issued,
this object contains a zero value."
::= { bfdSessPerfEntry 11 }
bfdSessPerfSessUpCount OBJECT-TYPE
SYNTAX Counter32
MAX-ACCESS read-only
STATUS current
Nadeau, et al. Standards Track [Page 22]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION
"The number of times this session has gone into the Up
state since the system last rebooted."
::= { bfdSessPerfEntry 12 }
bfdSessPerfDiscTime OBJECT-TYPE
SYNTAX TimeStamp
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The value of sysUpTime on the most recent occasion at
which any one or more of the session counters suffered
a discontinuity.
The relevant counters are the specific instances associated
with this BFD session of any Counter32 object contained in
the BfdSessPerfTable. If no such discontinuities have
occurred since the last reinitialization of the local
management subsystem, then this object contains a zero
value."
::= { bfdSessPerfEntry 13 }
bfdSessPerfCtrlPktInHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD control
messages received for this BFD session.
The least significant 32 bits MUST be equal to
bfdSessPerfCtrlPktIn, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 14 }
bfdSessPerfCtrlPktOutHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD control
messages transmitted for this BFD session.
The least significant 32 bits MUST be equal to
bfdSessPerfCtrlPktOut, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 15 }
Nadeau, et al. Standards Track [Page 23]
RFC 7331 BFD-STD-MIB August 2014
bfdSessPerfCtrlPktDropHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD control
messages received for this BFD session yet dropped for
being invalid.
The least significant 32 bits MUST be equal to
bfdSessPerfCtrlPktDrop, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 16 }
bfdSessPerfEchoPktInHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD Echo
messages received for this BFD session.
The least significant 32 bits MUST be equal to
bfdSessPerfEchoPktIn, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 17 }
bfdSessPerfEchoPktOutHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD Echo
messages transmitted for this BFD session.
The least significant 32 bits MUST be equal to
bfdSessPerfEchoPktOut, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 18 }
bfdSessPerfEchoPktDropHC OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This value represents the total number of BFD Echo
messages received for this BFD session yet dropped
for being invalid.
Nadeau, et al. Standards Track [Page 24]
RFC 7331 BFD-STD-MIB August 2014
The least significant 32 bits MUST be equal to
bfdSessPerfEchoPktDrop, and MUST do so with
the rules spelled out in RFC 2863."
::= { bfdSessPerfEntry 19 }
-- BFD Session Discriminator Mapping Table
bfdSessDiscMapTable OBJECT-TYPE
SYNTAX SEQUENCE OF BfdSessDiscMapEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The BFD Session Discriminator Mapping Table maps a
local discriminator value to the associated BFD session's
bfdSessIndex found in the bfdSessionTable."
::= { bfdObjects 4 }
bfdSessDiscMapEntry OBJECT-TYPE
SYNTAX BfdSessDiscMapEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The BFD Session Discriminator Mapping Entry
specifies a mapping between a local discriminator
and a BFD session."
INDEX { bfdSessDiscriminator }
::= { bfdSessDiscMapTable 1 }
BfdSessDiscMapEntry ::= SEQUENCE {
bfdSessDiscMapIndex BfdSessIndexTC
}
bfdSessDiscMapIndex OBJECT-TYPE
SYNTAX BfdSessIndexTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies a mapping between a
local discriminator and a BFD session in
the BfdSessTable."
::= { bfdSessDiscMapEntry 1 }
-- BFD Session IP Mapping Table
bfdSessIpMapTable OBJECT-TYPE
SYNTAX SEQUENCE OF BfdSessIpMapEntry
MAX-ACCESS not-accessible
STATUS current
Nadeau, et al. Standards Track [Page 25]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION
"The BFD Session IP Mapping Table maps given
bfdSessInterface, bfdSessSrcAddrType, bfdSessSrcAddr,
bfdSessDstAddrType, and bfdSessDstAddr
to an associated BFD session found in the
bfdSessionTable."
::= { bfdObjects 5 }
bfdSessIpMapEntry OBJECT-TYPE
SYNTAX BfdSessIpMapEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The BFD Session IP Map Entry contains a mapping
from the IP information for a session to the session
in the bfdSessionTable."
INDEX {
bfdSessInterface,
bfdSessSrcAddrType,
bfdSessSrcAddr,
bfdSessDstAddrType,
bfdSessDstAddr
}
::= { bfdSessIpMapTable 1 }
BfdSessIpMapEntry ::= SEQUENCE {
bfdSessIpMapIndex BfdSessIndexTC
}
bfdSessIpMapIndex OBJECT-TYPE
SYNTAX BfdSessIndexTC
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the BfdSessIndexTC referred
to by the indexes of this row. In essence, a mapping is
provided between these indexes and the BfdSessTable."
::= { bfdSessIpMapEntry 1 }
-- Notification Configuration
bfdSessUp NOTIFICATION-TYPE
OBJECTS {
bfdSessDiag, -- low range value
bfdSessDiag -- high range value
}
STATUS current
Nadeau, et al. Standards Track [Page 26]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION
"This notification is generated when the
bfdSessState object for one or more contiguous
entries in bfdSessTable are about to enter the up(4)
state from some other state. The included values of
bfdSessDiag MUST both be set equal to this
new state (i.e., up(4)). The two instances of
bfdSessDiag in this notification indicate the range
of indexes that are affected. Note that all the indexes
of the two ends of the range can be derived from the
instance identifiers of these two objects. For the
cases where a contiguous range of sessions
have transitioned into the up(4) state at roughly
the same time, the device SHOULD issue a single
notification for each range of contiguous indexes in
an effort to minimize the emission of a large number
of notifications. If a notification has to be
issued for just a single bfdSessEntry, then
the instance identifier (and values) of the two
bfdSessDiag objects MUST be identical."
::= { bfdNotifications 1 }
bfdSessDown NOTIFICATION-TYPE
OBJECTS {
bfdSessDiag, -- low range value
bfdSessDiag -- high range value
}
STATUS current
DESCRIPTION
"This notification is generated when the
bfdSessState object for one or more contiguous
entries in bfdSessTable are about to enter the down(2)
or adminDown(1) states from some other state. The included
values of bfdSessDiag MUST both be set equal to this new
state (i.e., down(2) or adminDown(1)). The two instances
of bfdSessDiag in this notification indicate the range
of indexes that are affected. Note that all the indexes
of the two ends of the range can be derived from the
instance identifiers of these two objects. For
cases where a contiguous range of sessions
have transitioned into the down(2) or adminDown(1) states
at roughly the same time, the device SHOULD issue a single
notification for each range of contiguous indexes in
an effort to minimize the emission of a large number
of notifications. If a notification has to be
issued for just a single bfdSessEntry, then
the instance identifier (and values) of the two
bfdSessDiag objects MUST be identical."
Nadeau, et al. Standards Track [Page 27]
RFC 7331 BFD-STD-MIB August 2014
::= { bfdNotifications 2 }
-- Module compliance.
bfdGroups
OBJECT IDENTIFIER ::= { bfdConformance 1 }
bfdCompliances
OBJECT IDENTIFIER ::= { bfdConformance 2 }
-- Compliance requirement for fully compliant implementations.
bfdModuleFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance statement for agents that provide full
support for the BFD-MIB module. Such devices can
then be monitored and also be configured using
this MIB module."
MODULE -- This module.
MANDATORY-GROUPS {
bfdSessionGroup,
bfdSessionReadOnlyGroup,
bfdSessionPerfGroup,
bfdNotificationGroup
}
GROUP bfdSessionPerfHCGroup
DESCRIPTION "This group is mandatory for all systems that
are able to support the Counter64 date type."
OBJECT bfdSessSrcAddrType
SYNTAX InetAddressType { unknown(0), ipv4(1),
ipv6(2), ipv6z(4) }
DESCRIPTION "Only unknown(0), ipv4(1), ipv6(2), and ipv6z(4)
support are required. ipv4z(3) is not required,
and dns(16) is not allowed."
OBJECT bfdSessSrcAddr
SYNTAX InetAddress (SIZE (0|4|16|20))
DESCRIPTION "An implementation is only required to support
unknown(0), ipv4(1), ipv6(2), and ipv6z(4) sizes."
OBJECT bfdSessDstAddrType
SYNTAX InetAddressType { unknown(0), ipv4(1),
ipv6(2), ipv6z(4) }
Nadeau, et al. Standards Track [Page 28]
RFC 7331 BFD-STD-MIB August 2014
DESCRIPTION "Only unknown(0), ipv4(1), ipv6(2), and ipv6z(4)
support are required. ipv4z(3) is not required,
and dns(16) is not allowed."
OBJECT bfdSessDstAddr
SYNTAX InetAddress (SIZE (0|4|16|20))
DESCRIPTION "An implementation is only required to support
unknown(0), ipv4(1), ipv6(2), and ipv6z(4) sizes."
OBJECT bfdSessRowStatus
SYNTAX RowStatus { active(1), notInService(2) }
WRITE-SYNTAX RowStatus { active(1), notInService(2),
createAndGo(4), destroy(6) }
DESCRIPTION "Support for createAndWait and notReady is not
required."
::= { bfdCompliances 1 }
bfdModuleReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Compliance requirement for implementations that only
provide read-only support for BFD-MIB. Such devices
can then be monitored but cannot be configured using
this MIB module."
MODULE -- This module.
MANDATORY-GROUPS {
bfdSessionGroup,
bfdSessionReadOnlyGroup,
bfdSessionPerfGroup,
bfdNotificationGroup
}
GROUP bfdSessionPerfHCGroup
DESCRIPTION "This group is mandatory for all systems that
are able to support the Counter64 date type."
OBJECT bfdSessVersionNumber
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
Nadeau, et al. Standards Track [Page 29]
RFC 7331 BFD-STD-MIB August 2014
OBJECT bfdSessDiscriminator
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessDestinationUdpPort
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessSourceUdpPort
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessEchoSourceUdpPort
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessAdminStatus
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessOperMode
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessDemandModeDesiredFlag
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessControlPlaneIndepFlag
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessMultipointFlag
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessInterface
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessSrcAddrType
SYNTAX InetAddressType { unknown(0), ipv4(1),
ipv6(2), ipv6z(4) }
MIN-ACCESS read-only
DESCRIPTION "Only unknown(0), ipv4(1), ipv6(2), and ipv6z(4)
support are required. ipv4z(3) is not required,
and dns(16) is not allowed."
Nadeau, et al. Standards Track [Page 30]
RFC 7331 BFD-STD-MIB August 2014
OBJECT bfdSessSrcAddr
SYNTAX InetAddress (SIZE (0|4|16|20))
MIN-ACCESS read-only
DESCRIPTION "An implementation is only required to support
unknown(0), ipv4(1), ipv6(2), and ipv6z(4) sizes."
OBJECT bfdSessDstAddrType
SYNTAX InetAddressType { unknown(0), ipv4(1),
ipv6(2), ipv6z(4) }
MIN-ACCESS read-only
DESCRIPTION "Only unknown(0), ipv4(1), ipv6(2), and ipv6z(4)
support are required. ipv4z(3) is not required,
and dns(16) is not allowed."
OBJECT bfdSessDstAddr
SYNTAX InetAddress (SIZE (0|4|16|20))
MIN-ACCESS read-only
DESCRIPTION "An implementation is only required to support
unknown(0), ipv4(1), ipv6(2), and ipv6z(4) sizes."
OBJECT bfdSessGTSM
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessGTSMTTL
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessDesiredMinTxInterval
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessReqMinRxInterval
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessReqMinEchoRxInterval
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessDetectMult
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessAuthPresFlag
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
Nadeau, et al. Standards Track [Page 31]
RFC 7331 BFD-STD-MIB August 2014
OBJECT bfdSessAuthenticationType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessAuthenticationKeyID
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessAuthenticationKey
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessStorageType
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
OBJECT bfdSessRowStatus
SYNTAX RowStatus { active(1) }
MIN-ACCESS read-only
DESCRIPTION "Write access is not required."
::= { bfdCompliances 2 }
-- Units of conformance.
bfdSessionGroup OBJECT-GROUP
OBJECTS {
bfdAdminStatus,
bfdOperStatus,
bfdNotificationsEnable,
bfdSessVersionNumber,
bfdSessType,
bfdSessIndexNext,
bfdSessDiscriminator,
bfdSessDestinationUdpPort,
bfdSessSourceUdpPort,
bfdSessEchoSourceUdpPort,
bfdSessAdminStatus,
bfdSessOperStatus,
bfdSessOperMode,
bfdSessDemandModeDesiredFlag,
bfdSessControlPlaneIndepFlag,
bfdSessMultipointFlag,
bfdSessInterface,
bfdSessSrcAddrType,
bfdSessSrcAddr,
bfdSessDstAddrType,
bfdSessDstAddr,
Nadeau, et al. Standards Track [Page 32]
RFC 7331 BFD-STD-MIB August 2014
bfdSessGTSM,
bfdSessGTSMTTL,
bfdSessDesiredMinTxInterval,
bfdSessReqMinRxInterval,
bfdSessReqMinEchoRxInterval,
bfdSessDetectMult,
bfdSessAuthPresFlag,
bfdSessAuthenticationType,
bfdSessAuthenticationKeyID,
bfdSessAuthenticationKey,
bfdSessStorageType,
bfdSessRowStatus
}
STATUS current
DESCRIPTION
"Collection of objects needed for BFD sessions."
::= { bfdGroups 1 }
bfdSessionReadOnlyGroup OBJECT-GROUP
OBJECTS {
bfdSessRemoteDiscr,
bfdSessState,
bfdSessRemoteHeardFlag,
bfdSessDiag,
bfdSessNegotiatedInterval,
bfdSessNegotiatedEchoInterval,
bfdSessNegotiatedDetectMult,
bfdSessDiscMapIndex,
bfdSessIpMapIndex
}
STATUS current
DESCRIPTION
"Collection of read-only objects needed for BFD sessions."
::= { bfdGroups 2 }
bfdSessionPerfGroup OBJECT-GROUP
OBJECTS {
bfdSessPerfCtrlPktIn,
bfdSessPerfCtrlPktOut,
bfdSessPerfCtrlPktDrop,
bfdSessPerfCtrlPktDropLastTime,
bfdSessPerfEchoPktIn,
bfdSessPerfEchoPktOut,
bfdSessPerfEchoPktDrop,
bfdSessPerfEchoPktDropLastTime,
bfdSessUpTime,
bfdSessPerfLastSessDownTime,
bfdSessPerfLastCommLostDiag,
Nadeau, et al. Standards Track [Page 33]
RFC 7331 BFD-STD-MIB August 2014
bfdSessPerfSessUpCount,
bfdSessPerfDiscTime
}
STATUS current
DESCRIPTION
"Collection of objects needed to monitor the
performance of BFD sessions."
::= { bfdGroups 3 }
bfdSessionPerfHCGroup OBJECT-GROUP
OBJECTS {
bfdSessPerfCtrlPktInHC,
bfdSessPerfCtrlPktOutHC,
bfdSessPerfCtrlPktDropHC,
bfdSessPerfEchoPktInHC,
bfdSessPerfEchoPktOutHC,
bfdSessPerfEchoPktDropHC
}
STATUS current
DESCRIPTION
"Collection of objects needed to monitor the
performance of BFD sessions for which the
values of bfdSessPerfPktIn and bfdSessPerfPktOut
wrap around too quickly."
::= { bfdGroups 4 }
bfdNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS {
bfdSessUp,
bfdSessDown
}
STATUS current
DESCRIPTION
"Set of notifications implemented in this
module."
::= { bfdGroups 5 }
END
Nadeau, et al. Standards Track [Page 34]
RFC 7331 BFD-STD-MIB August 2014
6. Security Considerations
As BFD may be tied into the stability of the network infrastructure
(such as routing protocols), the effects of an attack on a BFD
session may be very serious. This ultimately has denial-of-service
effects, as links may be declared to be down (or falsely declared to
be up.) As such, improper manipulation of the objects represented by
this MIB may result in denial of service to a large number of end
users.
There are a number of management objects defined in this MIB module
with a MAX-ACCESS clause of read-write and/or read-create. Such
objects may be considered sensitive or vulnerable in some network
environments. The support for SET operations in a non-secure
environment without proper protection can have a negative effect on
network operations. These are the tables and objects and their
sensitivity/vulnerability:
o bfdAdminStatus -- Improper change of bfdAdminStatus, to
disabled(2), adminDown(3), or down(4), can cause significant
disruption of the connectivity to those portions of the Internet
reached via all the applicable remote BFD peers.
o bfdSessAdminStatus -- Improper change of bfdSessAdminStatus, to
disabled(2), adminDown(3), or down(4), can cause significant
disruption of the connectivity to those portions of the Internet
reached via all the applicable remote BFD peers.
o bfdSessDesiredMinTxInterval, bfdSessReqMinRxInterval,
bfdSessReqMinEchoRxInterval, bfdSessDetectMult -- Improper change
of this object can cause connections to be disrupted for extremely
long time periods when otherwise they would be restored in a
relatively short period of time.
o Some management objects define the BFD session whilst other
management objects define the parameter of the BFD session. It is
particularly important to control the support for SET access to
those management objects that define the BFD session, as changes
to them can be disruptive. Implementation SHOULD NOT allow
changes to following management objects when bfdSessState is
up(4):
* bfdSessVersionNumber
* bfdSessType
* bfdSessDestinationUdpPort
Nadeau, et al. Standards Track [Page 35]
RFC 7331 BFD-STD-MIB August 2014
* bfdSessMultipointFlag
* bfdSessInterface
* bfdSessSrcAddrType
* bfdSessSrcAddr
* bfdSessDstAddrType
* bfdSessDstAddr
There are a number of management objects defined in this MIB module
with a MAX-ACCESS clause of read-write and/or read-create. Such
objects may be considered sensitive or vulnerable in some network
environments. It is thus important to control even GET and/or NOTIFY
access to these objects and possibly to even encrypt the values of
these objects when sending them over the network via SNMP.
o The bfdSessTable may be used to directly configure BFD sessions.
The bfdSessMapTable can be used indirectly in the same way.
Unauthorized access to objects in this table could result in
disruption of traffic on the network. This is especially true if
an unauthorized user configures enough tables to invoke a
denial-of-service attack on the device where they are configured,
or on a remote device where the sessions terminate.
Some of the readable objects in this MIB module (i.e., objects with a
MAX-ACCESS other than not-accessible) may be considered sensitive or
vulnerable in some network environments. It is thus important to
control even GET and/or NOTIFY access to these objects and possibly
to even encrypt the values of these objects when sending them over
the network via SNMP. These are the tables and objects and their
sensitivity/vulnerability:
o The bfdSessPerfTable allows access to the performance
characteristics of BFD sessions. Network administrators not
wishing to show this information should consider this table
sensitive.
The bfdSessAuthenticationType, bfdSessAuthenticationKeyID, and
bfdSessAuthenticationKey objects hold security methods and associated
security keys of BFD sessions. These objects are highly sensitive.
In order to prevent this sensitive information from being improperly
accessed, implementers SHOULD disallow access to these objects.
SNMP versions prior to SNMPv3 did not include adequate security.
Even if the network itself is secure (for example by using IPsec),
Nadeau, et al. Standards Track [Page 36]
RFC 7331 BFD-STD-MIB August 2014
even then, there is no control as to who on the secure network is
allowed to access and GET/SET (read/change/create/delete) the objects
in this MIB module.
It is RECOMMENDED that implementers consider the security features as
provided by the SNMPv3 framework (see [RFC3410]), including full
support for the SNMPv3 cryptographic mechanisms (for authentication
and privacy).
Further, deployment of SNMP versions prior to SNMPv3 is NOT
RECOMMENDED. Instead, it is RECOMMENDED to deploy SNMPv3 and to
enable cryptographic security. It is then a customer/operator
responsibility to ensure that the SNMP entity giving access to an
instance of this MIB module is properly configured to give access to
the objects only to those principals (users) that have legitimate
rights to indeed GET or SET (change/create/delete) them.
7. IANA Considerations
The MIB module in this document uses the following IANA-assigned
OBJECT IDENTIFIER value recorded in the "SMI Network Management MGMT
Codes" registry:
Descriptor OBJECT IDENTIFIER value
---------- -----------------------
bfdMIB { mib-2 222 }
8. Acknowledgments
The authors would like to thank Adrian Farrel and Jeffrey Haas for
performing thorough reviews and providing a number of suggestions.
The authors would also like to thank David Ward, Reshad Rahman, David
Toscano, Sylvain Masse, Mark Tooker, Kiran Koushik Agrahara
Sreenivasa, David Black, and Bert Wijnen for their comments and
suggestions.
Nadeau, et al. Standards Track [Page 37]
RFC 7331 BFD-STD-MIB August 2014
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J.
Schoenwaelder, Ed., "Structure of Management Information
Version 2 (SMIv2)", STD 58, RFC 2578, April 1999.
[RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J.
Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD
58, RFC 2579, April 1999.
[RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder,
"Conformance Statements for SMIv2", STD 58, RFC 2580,
April 1999.
[RFC5082] Gill, V., Heasley, J., Meyer, D., Savola, P., and C.
Pignataro, "The Generalized TTL Security Mechanism
(GTSM)", RFC 5082, October 2007.
[RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD)", RFC 5880, June 2010.
[RFC5881] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD) for IPv4 and IPv6 (Single Hop)", RFC 5881, June
2010.
[RFC5883] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD) for Multihop Paths", RFC 5883, June 2010.
[RFC7130] Bhatia, M., Chen, M., Boutros, S., Binderberger, M., and
J. Haas, "Bidirectional Forwarding Detection (BFD) on Link
Aggregation Group (LAG) Interfaces", RFC 7130, February
2014.
[RFC7330] Nadeau, T., Ali, Z., and N. Akiya, "Definitions of Textual
Conventions (TCs) for Bidirectional Forwarding Detection
(BFD) Management", RFC 7330, August 2014.
Nadeau, et al. Standards Track [Page 38]
RFC 7331 BFD-STD-MIB August 2014
9.2. Informative References
[RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group
MIB", RFC 2863, June 2000.
[RFC3289] Baker, F., Chan, K., and A. Smith, "Management Information
Base for the Differentiated Services Architecture", RFC
3289, May 2002.
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for Internet-
Standard Management Framework", RFC 3410, December 2002.
[RFC3413] Levi, D., Meyer, P., and B. Stewart, "Simple Network
Management Protocol (SNMP) Applications", STD 62, RFC
3413, December 2002.
Authors' Addresses
Thomas D. Nadeau
Brocade
EMail: tnadeau@lucidvision.com
Zafar Ali
Cisco Systems
EMail: zali@cisco.com
Nobo Akiya
Cisco Systems
EMail: nobo@cisco.com
Nadeau, et al. Standards Track [Page 39]