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] +  |