diff options
Diffstat (limited to 'doc/rfc/rfc7331.txt')
-rw-r--r-- | doc/rfc/rfc7331.txt | 2187 |
1 files changed, 2187 insertions, 0 deletions
diff --git a/doc/rfc/rfc7331.txt b/doc/rfc/rfc7331.txt new file mode 100644 index 0000000..b0c9503 --- /dev/null +++ b/doc/rfc/rfc7331.txt @@ -0,0 +1,2187 @@ + + + + + + +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] + |