smilint output for ./BFD-DRAFT-01-MIB


Message Severities
SeverityCount
error2
warning2
Message Types
TypeCount
bad-identifier-case (error)1
index-exceeds-too-large (warning)1
object-identifier-not-prefix (error)1
type-without-format (warning)1

Messages:

BFD-DRAFT-01-MIB

   1: -- extracted from draft-ietf-bfd-mib-01.txt
   2: -- at Sat Jul  9 06:33:44 2005
   3: 
   4: BFD-DRAFT-01-MIB DEFINITIONS ::= BEGIN  
   5:     -- RFC-editor pls change BFD-DRAFT-*-MIB to
   6:     -- BFD-STD-MIB
   7: 
   8:    IMPORTS 
   9:       MODULE-IDENTITY, OBJECT-TYPE,  
  10:       Unsigned32, Counter32, Counter64,  
  11:       NOTIFICATION-TYPE, mib-2 
  12:          FROM SNMPv2-SMI 
  13:     
  14:       MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP 
  15:           FROM SNMPv2-CONF 
  16:     
  17:       TEXTUAL-CONVENTION, TruthValue, RowStatus, StorageType, 
  18:       TimeStamp 
  19:          FROM SNMPv2-TC 
  20:     
  21:       InetAddress, InetAddressType, InetPortNumber 
  22:          FROM INET-ADDRESS-MIB 
  23:    ; 
  24:     
  25:    bfdMIB MODULE-IDENTITY 
  26:       LAST-UPDATED "200507221200Z"  -- 04 July 2005 12:00:00 EST 
  27:       ORGANIZATION "IETF" 
  28:       CONTACT-INFO 
  29:           "        Thomas D. Nadeau 
  30:                    Cisco Systems, Inc. 
  31:            Email:  tnadeau@cisco.com 
  32:     
  33:                    Zafar Ali  
  34:                    Cisco Systems, Inc. 
  35:            Email:  zali@cisco.com 
  36:           " 
  37:       DESCRIPTION 
  38:           "Bidirectional Forwarding Management Information Base." 
  39:     
  40:       -- Revision history. 
  41:       REVISION 
  42:           "200507221200Z"  -- 04 July 2005 12:00:00 EST 
  43:       DESCRIPTION 
  44:       "Initial version. Published as RFC xxxx." -- RFC-editor pls fill 
  45:                                                 -- in xxx
  46:    ::= { mib-2 XXX } -- assigned by IANA, see section 18.1 for details
  46: error - `XXX' should start with a lower case letter
  46: error - Object identifier element `XXX' name only allowed as first element
  47: 
  48:    -- Top level components of this MIB module. 
  49:    bfdNotifications OBJECT IDENTIFIER ::= { bfdMIB 0 } 
  50:     
  51:    bfdObjects       OBJECT IDENTIFIER ::= { bfdMIB 1 } 
  52:     
  53:    bfdConformance   OBJECT IDENTIFIER ::= { bfdMIB 3 } 
  54:     
  55:    bfdScalarObjects OBJECT IDENTIFIER ::= { bfdObjects 1 } 
  56:     
  57:     
  58:    --  Textual Conventions 
  59:     
  60:       BfdSessIndexTC ::= TEXTUAL-CONVENTION 
  61:       DISPLAY-HINT "d" 
  62:       STATUS        current 
  63:       DESCRIPTION 
  64:           "An index used to uniquely identify BFD sessions." 
  65:       SYNTAX Unsigned32 (1..4294967295) 
  66:     
  67:     
  68:       BfdInterval ::= TEXTUAL-CONVENTION 
  68: warning - warning: type `BfdInterval' has no format specification
  69:       STATUS        current 
  70:       DESCRIPTION 
  71:           "The BFD interval delay in microseconds." 
  72:       SYNTAX        Unsigned32 (1..4294967295) 
  73:     
  74:       BfdDiag ::=      TEXTUAL-CONVENTION 
  75:       STATUS        current 
  76:       DESCRIPTION 
  77:           "A common BFD diagnostic code." 
  78:     
  79:       SYNTAX INTEGER { noDiagnostic(1),  
  80:                        controlDetectionTimeExpired(2),  
  81:                        echoFunctionFailed(3),  
  82:                        neighborSignaledSessionDown(4),  
  83:                        forwardingPlaneReset(5), 
  84:                        pathDown(6),  
  85:                        concatenatedPathDown(7), 
  86:                        administrativelyDown(8),  
  87:                        reverseConcatenatedPathDown (9) 
  88:                      } 
  89:     
  90:         --  BFD General Variables 
  91:     
  92:         --  These parameters apply globally to the Router's 
  93:         --  BFD Process. 
  94:     
  95:         bfdAdminStatus OBJECT-TYPE 
  96:            SYNTAX   INTEGER { enabled(1), disabled(2) }         
  97:            MAX-ACCESS   read-write 
  98:            STATUS   current 
  99:            DESCRIPTION 
 100:               "The global administrative status of BFD in this router.  
 101:                The value 'enabled' denotes that the BFD Process is 
 102:                active on at least one interface; 'disabled' disables  
 103:                it on all interfaces." 
 104:            DEFVAL { enabled }  
 105:            ::= { bfdScalarObjects 1 } 
 106:     
 107:         bfdVersionNumber OBJECT-TYPE 
 108:             SYNTAX   Unsigned32 
 109:             MAX-ACCESS   read-only 
 110:             STATUS   current 
 111:             DESCRIPTION 
 112:                "The current version number of the BFD protocol." 
 113:             REFERENCE 
 114:                " BFD Version 0 (draft-katz-ward-bfd-02.txt)" 
 115:             DEFVAL { 0 } 
 116:             ::= { bfdScalarObjects 3 } 
 117:     
 118:     
 119:         --  BFD Session Table 
 120:         --  The BFD Session Table specifies BFD session specific 
 121:         --  information.  
 122:     
 123:         bfdSessTable OBJECT-TYPE 
 124:             SYNTAX   SEQUENCE OF BfdSessEntry 
 125:             MAX-ACCESS   not-accessible 
 126:             STATUS   current 
 127:             DESCRIPTION 
 128:                "The BFD Session Table describes the BFD sessions." 
 129:             REFERENCE 
 130:                "BFD Version 0 (draft-katz-ward-bfd-02.txt)" 
 131:             ::= { bfdObjects 2 } 
 132:     
 133:         bfdSessEntry OBJECT-TYPE 
 134:             SYNTAX      BfdSessEntry 
 135:             MAX-ACCESS  not-accessible 
 136:             STATUS      current 
 137:             DESCRIPTION 
 138:                "The BFD Session Entry describes BFD session." 
 139:             INDEX { bfdSessIndex } 
 140:             ::= { bfdSessTable 1 } 
 141:     
 142:         BfdSessEntry ::= SEQUENCE { 
 143:           bfdSessIndex                    BfdSessIndexTC, 
 144:           bfdSessApplicationId            Unsigned32, 
 145:           bfdSessDiscriminator            Unsigned32, 
 146:           bfdSessRemoteDiscr              Unsigned32,  
 147:           bfdSessUdpPort                  InetPortNumber, 
 148:           bfdSessState                    INTEGER, 
 149:           bfdSessRemoteHeardFlag          TruthValue,   
 150:           bfdSessDiag                     Unsigned32, 
 151:           bfdSessOperMode                 INTEGER, 
 152:           bfdSessDemandModeDesiredFlag    TruthValue, 
 153:           bfdSessEchoFuncModeDesiredFlag  TruthValue, 
 154:           bfdSessControlPlanIndepFlag     TruthValue, 
 155:           bfdSessAddrType                 InetAddressType, 
 156:           bfdSessAddr                     InetAddress,  
 157:           bfdSessDesiredMinTxInterval     BfdInterval, 
 158:           bfdSessDesiredMinRxInterval     BfdInterval, 
 159:           bfdSessDesiredMinEchoRxInterval BfdInterval, 
 160:           bfdSessDetectMult               Unsigned32, 
 161:           bfdSessStorType                 StorageType, 
 162:           bfdSessRowStatus                RowStatus, 
 163:           bfdSessAuthPresFlag             TruthValue, 
 164:           bfdSessAuthenticationType       INTEGER 
 165:       } 
 166:     
 167:       bfdSessIndex  OBJECT-TYPE 
 168:       SYNTAX        BfdSessIndexTC 
 169:       MAX-ACCESS    not-accessible
 170:       STATUS        current 
 171:       DESCRIPTION 
 172:           "This object contains an index used to represent a 
 173:            unique BFD session on this device." 
 174:       ::= { bfdSessEntry 1 } 
 175:     
 176:    bfdSessApplicationId  OBJECT-TYPE 
 177:       SYNTAX        Unsigned32 
 178:       MAX-ACCESS    read-only 
 179:       STATUS        current 
 180:       DESCRIPTION 
 181:           "This object contains an index used to indicate 
 182:            a local application which owns or maintains this 
 183:            BFD session. For instance, the MPLS VPN process may 
 184:            maintain a subset of the total number of BFD 
 185:            sessions.  This application ID provides a convenient 
 186:            way to segregate sessions by the applications which 
 187:            maintain them." 
 188:       ::= { bfdSessEntry 2 } 
 189:      
 190:       bfdSessDiscriminator            OBJECT-TYPE 
 191:       SYNTAX        Unsigned32 (1..4294967295) 
 192:       MAX-ACCESS    read-only 
 193:       STATUS        current 
 194:       DESCRIPTION 
 195:           "This object specifies the local discriminator for this BFD  
 196:         session, used to uniquely identify it." 
 197:       ::= { bfdSessEntry 3 } 
 198:     
 199:       bfdSessRemoteDiscr OBJECT-TYPE 
 200:           SYNTAX        Unsigned32 (1..4294967295) 
 201:           MAX-ACCESS    read-only 
 202:           STATUS        current 
 203:           DESCRIPTION 
 204:             "This object specifies the session discriminator chosen  
 205:              by the remote system for this BFD session." 
 206:       ::= { bfdSessEntry 4 } 
 207:     
 208:       bfdSessUdpPort OBJECT-TYPE 
 209:           SYNTAX      InetPortNumber 
 210:           MAX-ACCESS  read-create 
 211:           STATUS      current 
 212:           DESCRIPTION 
 213:               "The UDP Port for BFD. The default value is the 
 214:               well-known value for this port." 
 215:             REFERENCE 
 216:                 "draft-katz-ward-bfd-02.txt and 
 217:                 draft-raggarwa-mpls-bfd-00.txt" 
 218:             DEFVAL { 0 } 
 219:             ::= { bfdSessEntry 5 } 
 220:     
 221:       bfdSessState OBJECT-TYPE 
 222:             SYNTAX   INTEGER { 
 223:                   adminDown(1),  
 224:                   down(2),  
 225:                   init(3),  
 226:                   up(4)
 227:             } 
 228:             MAX-ACCESS   read-only 
 229:             STATUS   current 
 230:             DESCRIPTION 
 231:                "The perceived state of the BFD session." 
 232:             ::= { bfdSessEntry 6 } 
 233:     
 234:    bfdSessRemoteHeardFlag OBJECT-TYPE 
 235:       SYNTAX        TruthValue 
 236:       MAX-ACCESS    read-only 
 237:       STATUS        current 
 238:       DESCRIPTION 
 239:             "This object specifies status of BFD packet reception from  
 240:              the remote system. Specifically, it is set to true(1) if 
 241:              the local system is actively receiving BFD packets from the  
 242:              remote system, and is set to false(0) if the local system  
 243:              has not received BFD packets recently (within the detection  
 244:              time) or if the local system is attempting to tear down 
 245:              the BFD session." 
 246:       ::= { bfdSessEntry 7 } 
 247:     
 248:    bfdSessDiag OBJECT-TYPE 
 249:             SYNTAX      Unsigned32 
 250:             MAX-ACCESS  accessible-for-notify 
 251:             STATUS      current 
 252:             DESCRIPTION 
 253:                "A diagnostic code specifying the local system's reason  
 254:                 for the last transition of the session from up(1)  
 255:                 to some other state." 
 256:       ::= { bfdSessEntry 8 } 
 257:     
 258:    bfdSessOperMode OBJECT-TYPE 
 259:             SYNTAX   INTEGER { asyncModeWEchoFun(1),  
 260:                                asynchModeWOEchoFun(2),  
 261:                                demandModeWEchoFunction(3),  
 262:                                demandModeWOEchoFunction(4)  
 263:              } 
 264:            MAX-ACCESS   read-only 
 265:            STATUS   current 
 266:            DESCRIPTION 
 267:                "This object specifies current operating mode that BFD  
 268:                 session is operating in. 
 269:     
 270:                 A value of AsyncModeWEchoFun(1) ... 
 271:                 A value of AsynchModeWOEchoFun(2) ... 
 272:                 A value of DemandModeWEchoFunction(3) ... 
 273:                 A value of DemandModeWOEchoFunction(4) ... 
 274:             " 
 275:             ::= { bfdSessEntry 9 } 
 276:     
 277:    bfdSessDemandModeDesiredFlag OBJECT-TYPE 
 278:       SYNTAX        TruthValue 
 279:       MAX-ACCESS    read-create 
 280:       STATUS        current 
 281:       DESCRIPTION 
 282:               "This object indicates that the local system's  
 283:                desire to use Demand mode. Specifically, it is set  
 284:                to true(1) if the local system wishes to use  
 285:                Demand mode or false(0) if not" 
 286:       DEFVAL { false } 
 287:       ::= { bfdSessEntry 10 } 
 288: 
 289:    bfdSessEchoFuncModeDesiredFlag OBJECT-TYPE 
 290:       SYNTAX        TruthValue 
 291:       MAX-ACCESS    read-create 
 292:       STATUS        current 
 293:       DESCRIPTION 
 294:               "This object indicates that the local system's  
 295:                desire to use Echo mode. Specifically, it is set  
 296:                to true(1) if the local system wishes to use  
 297:                Echo mode or false(0) if not" 
 298:       DEFVAL { false } 
 299:       ::= { bfdSessEntry 11 } 
 300:     
 301:    bfdSessControlPlanIndepFlag     OBJECT-TYPE 
 302:       SYNTAX        TruthValue 
 303:       MAX-ACCESS    read-create 
 304:       STATUS        current 
 305:       DESCRIPTION 
 306:               "This object indicates that the local system's  
 307:                ability to continue to function through a disruption of  
 308:                the control plane. Specifically, it is set  
 309:                to true(1) if the local system BFD implementation is 
 310:                independent of the control plane. Otherwise, the  
 311:                value is set to false(0)" 
 312:       DEFVAL { false } 
 313:       ::= { bfdSessEntry 12 } 
 314:     
 315:    bfdSessAddrType  OBJECT-TYPE 
 316:       SYNTAX        InetAddressType 
 317:       MAX-ACCESS    read-create 
 318:       STATUS        current 
 319:       DESCRIPTION 
 320:            "This object specifies IP address of the interface  
 321:             associated with this BFD session.  
 322:     
 323:             Only values unknown(0), ipv4(1) or ipv6(2) 
 324:             have to be supported.  
 325:     
 326:             A value of unknown(0) is allowed only when  
 327:             the outgoing interface is of type point-to-point, or 
 328:             when the BFD session is not associated with a specific  
 329:             interface. 
 330:     
 331:             If any other unsupported values are attempted in a set 
 332:             operation, the agent MUST return an inconsistentValue  
 333:             error. 
 334:       " 
 335:       ::= { bfdSessEntry 13 } 
 336: 
 337:    bfdSessAddr OBJECT-TYPE 
 338:       SYNTAX        InetAddress 
 339:       MAX-ACCESS    read-create 
 340:       STATUS        current 
 341:       DESCRIPTION 
 342:            "This object specifies IP address of the interface  
 343:             associated with this BFD session.  
 344:             It can also be used to enabled BFD on a specific  
 345:             interface. The value is set to zero when BFD session is not  
 346:             associated with a specific interface. " 
 347:       ::= { bfdSessEntry 14 } 
 348:     
 349:    bfdSessDesiredMinTxInterval OBJECT-TYPE 
 350:       SYNTAX    BfdInterval 
 351:       MAX-ACCESS   read-create 
 352:       STATUS    current 
 353:       DESCRIPTION 
 354:        "This object specifies the minimum interval, in  
 355:         microseconds, that the local system would like to use when 
 356:              transmitting BFD Control packets." 
 357:       ::= { bfdSessEntry 15 } 
 358:     
 359:    bfdSessDesiredMinRxInterval OBJECT-TYPE 
 360:       SYNTAX        BfdInterval 
 361:       MAX-ACCESS    read-create 
 362:       STATUS        current 
 363:       DESCRIPTION 
 364:             "This object specifies the minimum interval, in  
 365:              microseconds, between received  BFD Control packets the  
 366:              local system is capable of supporting." 
 367:       ::= { bfdSessEntry 16 } 
 368:     
 369:    bfdSessDesiredMinEchoRxInterval OBJECT-TYPE 
 370:       SYNTAX        BfdInterval 
 371:       MAX-ACCESS    read-create 
 372:       STATUS        current 
 373:       DESCRIPTION 
 374:             "This object specifies the minimum interval, in  
 375:              microseconds, between received BFD Echo packets that this 
 376:              system is capable of supporting." 
 377:       ::= { bfdSessEntry 17 } 
 378:     
 379:    bfdSessDetectMult OBJECT-TYPE 
 380:       SYNTAX        Unsigned32 
 381:       MAX-ACCESS    read-create 
 382:       STATUS        current 
 383:       DESCRIPTION 
 384:             "This object specifies the Detect time multiplier." 
 385:       ::= { bfdSessEntry 18 } 
 386:     
 387:    bfdSessStorType  OBJECT-TYPE 
 388:       SYNTAX        StorageType 
 389:       MAX-ACCESS    read-create 
 390:       STATUS        current 
 391:       DESCRIPTION 
 392:           "This variable indicates the storage type for this 
 393:            object. Conceptual rows having the value  
 394:            'permanent' need not allow write-access to any  
 395:            columnar objects in the row."          
 396:       ::= { bfdSessEntry 19 } 
 397:     
 398:    bfdSessRowStatus OBJECT-TYPE 
 399:       SYNTAX        RowStatus 
 400:       MAX-ACCESS    read-create 
 401:       STATUS        current 
 402:       DESCRIPTION 
 403:             "This variable is used to create, modify, and/or 
 404:              delete a row in this table. When a row in this 
 405:              table has a row in the active(1) state, no  
 406:              objects in this row can be modified except the 
 407:              bfdSessRowStatus and bfdSessStorageType." 
 408:       ::= { bfdSessEntry 20 } 
 409:     
 410:    bfdSessAuthPresFlag OBJECT-TYPE 
 411:       SYNTAX        TruthValue 
 412:       MAX-ACCESS    read-create 
 413:       STATUS        current 
 414:       DESCRIPTION 
 415:               "This object indicates that the local system's  
 416:                desire to use Authentication. Specifically, it is set  
 417:                to true(1) if the local system wishes the session  
 418:                to be authenticated or false(0) if not" 
 419:       DEFVAL { false } 
 420:       ::= { bfdSessEntry 21 } 
 421:  
 422:    bfdSessAuthenticationType OBJECT-TYPE 
 423:             SYNTAX      INTEGER { simplePassword(1),  
 424:                                   keyedMD5(2),  
 425:                                   meticulousKeyedMD5(3),  
 426:                                   keyedSHA1(4),  
 427:                                   meticulousKeyedSHA1(5) 
 428:              } 
 429:             MAX-ACCESS  read-create 
 430:             STATUS      current 
 431:             DESCRIPTION 
 432:                "The Authentication Type used for this BFD session. This 
 433:    field is valid only when the Authentication Present bit is set" 
 434:       ::= { bfdSessEntry 22 } 
 435:  
 436:    -- BFD Session Performance Table 
 437:     
 438:    bfdSessPerfTable OBJECT-TYPE 
 439:       SYNTAX        SEQUENCE OF BfdSessPerfEntry 
 440:       MAX-ACCESS    not-accessible 
 441:       STATUS        current 
 442:       DESCRIPTION 
 443:           "This table specifies BFD Session performance counters." 
 444:       ::= { bfdObjects 3 } 
 445:     
 446:    bfdSessPerfEntry OBJECT-TYPE 
 447:       SYNTAX        BfdSessPerfEntry 
 448:       MAX-ACCESS    not-accessible 
 449:       STATUS        current 
 450:       DESCRIPTION 
 451:           "An entry in this table is created by a BFD-enabled node for  
 452:            every BFD Session. bfdCounterDiscontinuityTime is used to  
 453:            indicate potential discontinuity for all counter objects  
 454:            in this table." 
 455:       AUGMENTS    { bfdSessEntry } 
 456:       ::= { bfdSessPerfTable 1 } 
 457:     
 458:    BfdSessPerfEntry ::= SEQUENCE { 
 459:      bfdSessPerfPktIn               Counter32,  
 460:      bfdSessPerfPktOut              Counter32, 
 461:      bfdSessUpTime                  TimeStamp,  
 462:      bfdSessPerfLastSessDownTime    TimeStamp, 
 463:      bfdSessPerfLastCommLostDiag    BfdDiag, 
 464:      bfdSessPerfSessUpCount         Counter32, 
 465:      bfdSessPerfDiscTime            TimeStamp, 
 466:     
 467:      -- High Capacity Counters 
 468:      bfdSessPerfPktInHC             Counter64,  
 469:      bfdSessPerfPktOutHC            Counter64 
 470:      } 
 471:     
 472:    -- Ed Note: should we add per-diag code counts here,  
 473:     
 474:    bfdSessPerfPktIn OBJECT-TYPE  
 475:        SYNTAX      Counter32 
 476:        MAX-ACCESS  read-only 
 477:        STATUS      current 
 478:        DESCRIPTION 
 479:            "The total number of BFD messages received for this BFD 
 480: 
 481:    session." 
 482:        ::= { bfdSessPerfEntry 1 } 
 483:     
 484:    bfdSessPerfPktOut OBJECT-TYPE 
 485:        SYNTAX      Counter32 
 486:        MAX-ACCESS  read-only 
 487:        STATUS      current 
 488:        DESCRIPTION 
 489:            "The total number of BFD messages sent for this BFD session." 
 490:        ::= { bfdSessPerfEntry 2 } 
 491:     
 492:    bfdSessUpTime OBJECT-TYPE 
 493:        SYNTAX       TimeStamp 
 494:        MAX-ACCESS   read-only 
 495:        STATUS       current 
 496:        DESCRIPTION 
 497:            "The value of sysUpTime on the most recent occasion at which 
 498:             the session came up. If no such up event exists this object 
 499:             contains a zero value." 
 500:        ::= { bfdSessPerfEntry 3 } 
 501:  
 502:    bfdSessPerfLastSessDownTime OBJECT-TYPE 
 503:        SYNTAX       TimeStamp 
 504:        MAX-ACCESS   read-only 
 505:        STATUS       current 
 506:        DESCRIPTION 
 507:            "The value of sysUpTime on the most recent occasion at which 
 508:             the last time communication was lost with the neighbor. If  
 509:             no such down event exist this object contains a zero value." 
 510:        ::= { bfdSessPerfEntry 4 } 
 511:     
 512:    bfdSessPerfLastCommLostDiag  OBJECT-TYPE 
 513:        SYNTAX       BfdDiag 
 514:        MAX-ACCESS   read-only 
 515:        STATUS       current 
 516:        DESCRIPTION 
 517:            "The BFD diag code for the last time communication was lost  
 518:             with the neighbor. If no such down event exists this object  
 519:             contains a zero value." 
 520:        ::= { bfdSessPerfEntry 5 }     
 521:     
 522:    bfdSessPerfSessUpCount OBJECT-TYPE 
 523:        SYNTAX       Counter32 
 524:        MAX-ACCESS   read-only 
 525:        STATUS       current 
 526:        DESCRIPTION 
 527:            "The number of times this session has gone into the Up 
 528:             state since the router last rebooted." 
 529:        ::= { bfdSessPerfEntry 6 } 
 530:     
 531:    bfdSessPerfDiscTime OBJECT-TYPE 
 532:        SYNTAX       TimeStamp 
 533:        MAX-ACCESS   read-only 
 534:        STATUS       current 
 535:        DESCRIPTION 
 536:            "The value of sysUpTime on the most recent occasion at which 
 537:    any  
 538:             one or more of the session counters suffered a 
 539:    discontinuity.  
 540:             The relevant counters are the specific instances associated  
 541:             with this BFD session of any Counter32 object contained in 
 542:    the  
 543:             BfdSessPerfTable. If no such discontinuities have occurred  
 544:             since the last re-initialization of the local management 
 545:    subsystem,  
 546:             then this object contains a zero value." 
 547:        ::= { bfdSessPerfEntry 7 } 
 548:     
 549:    bfdSessPerfPktInHC OBJECT-TYPE  
 550:        SYNTAX       Counter64 
 551:        MAX-ACCESS   read-only 
 552:        STATUS       current 
 553:        DESCRIPTION 
 554:            "This value represents the total number of BFD messages 
 555:             received for this BFD session. It MUST be equal to the 
 556:             least significant 32 bits of bfdSessPerfPktIn 
 557:             if bfdSessPerfPktInHC is supported according to 
 558:             the rules spelled out in RFC2863." 
 559:        ::= { bfdSessPerfEntry 8 } 
 560:     
 561:    bfdSessPerfPktOutHC OBJECT-TYPE 
 562:        SYNTAX       Counter64 
 563:        MAX-ACCESS   read-only 
 564:        STATUS       current 
 565:        DESCRIPTION 
 566:            "This value represents the total number of  
 567:             total number of BFD messages transmitted for this  
 568:             BFD session. It MUST be equal to the 
 569:            least significant 32 bits of bfdSessPerfPktIn 
 570:            if bfdSessPerfPktOutHC is supported according to 
 571:            the rules spelled out in RFC2863." 
 572:        ::= { bfdSessPerfEntry 9 } 
 573:     
 574:     
 575:    -- BFD Session Mapping Table 
 576:         bfdSessMapTable OBJECT-TYPE 
 577:             SYNTAX   SEQUENCE OF BfdSessMapEntry 
 578:             MAX-ACCESS   not-accessible 
 579:             STATUS   current 
 580:             DESCRIPTION 
 581:                "The BFD Session Mapping Table maps the complex 
 582:                 indexing of the BFD sessions to the flat 
 583:                 BFDIndex used in the BfdSessionTable. 
 584:     
 585:                 Implementors need to be aware that if the value of 
 586:                 the bfdSessAddr (an OID) has more  
 587:                 that 111 sub-identifiers, then OIDs of column 
 588:                 instances in this table will have more than 128 
 589:                 sub-identifiers and cannot be accessed using SNMPv1, 
 590:                 SNMPv2c, or SNMPv3. 
 591:                " 
 592:             REFERENCE 
 593:                "BFD Version 0 (draft-katz-ward-bfd-02.txt)" 
 594:             ::= { bfdObjects 4 } 
 595:     
 596:         bfdSessMapEntry OBJECT-TYPE 
 596: warning - warning: index of row `bfdSessMapEntry' can exceed OID size limit by 136 subidentifier(s)
 597:             SYNTAX   BfdSessMapEntry 
 598:             MAX-ACCESS   not-accessible 
 599:             STATUS   current 
 600:             DESCRIPTION 
 601:                "The BFD Session Entry describes BFD session 
 602:                 that is mapped to this index.
 603: 
 604:                 Implementors need to be aware that if the value of
 605:                 the mplsInSegmentMapLabelPtrIndex (an OID) has more
 606:                 that 111 sub-identifiers, then OIDs of column
 607:                 instances in this table will have more than 128
 608:                 sub-identifiers and cannot be accessed using SNMPv1,
 609:                 SNMPv2c, or SNMPv3." 
 610:             INDEX { bfdSessApplicationId, 
 611:                     bfdSessDiscriminator, 
 612:                     bfdSessAddrType, 
 613:                     bfdSessAddr 
 614:              } 
 615:             ::= { bfdSessMapTable 1 } 
 616:     
 617:         BfdSessMapEntry ::= SEQUENCE { 
 618:           bfdSessMapBfdIndex            BfdSessIndexTC 
 619:         } 
 620:     
 621:    bfdSessMapBfdIndex OBJECT-TYPE 
 622:       SYNTAX        BfdSessIndexTC 
 623:       MAX-ACCESS    read-only 
 624:       STATUS        current 
 625:       DESCRIPTION 
 626:           "This object specifies the BfdIndex referred to by 
 627:            the indexes of this row. In essence, a mapping is 
 628:            provided between these indexes and the BfdSessTable." 
 629:       ::= { bfdSessMapEntry 1 } 
 630:     
 631:    -- Notification Configuration 
 632:     
 633:    bfdSessNotificationsEnable OBJECT-TYPE 
 634:       SYNTAX        TruthValue 
 635:       MAX-ACCESS    read-write 
 636:       STATUS        current 
 637:       DESCRIPTION 
 638:           "If this object is set to true(1), then it enables 
 639:            the emission of bfdSessUp and bfdSessDown 
 640:            notifications; otherwise these notifications are not 
 641:            emitted." 
 642:       REFERENCE 
 643:           "See also RFC3413 for explanation that  
 644:            notifications are under the ultimate control of the  
 645:            MIB modules in this document." 
 646:       DEFVAL { false } 
 647:       ::= { bfdScalarObjects 4 } 
 648:     
 649:    bfdSessUp NOTIFICATION-TYPE 
 650:       OBJECTS     { bfdSessDiag, -- low range value 
 651:                     bfdSessDiag  -- high range value 
 652:       } 
 653:       STATUS      current 
 654:       DESCRIPTION 
 655:           "This notification is generated when the 
 656:            bfdSessState object for one or more contiguous 
 657:            entries in bfdSessTable are about to enter the up(2) 
 658:            state from some other state. The included values of 
 659:            bfdSessDiag MUST both be set equal to this 
 660:            new state (i.e: up(1)).  The two instances of  
 661:            bfdSessDiag in this notification indicate the range  
 662:            of indexes that are affected.  Note that all the indexes  
 663:            of the two ends of the range can be derived from the 
 664:            instance identifiers of these two objects.  For the 
 665:            cases where a contiguous range of sessions 
 666:            have transitioned into the up(1) state at roughly 
 667:            the same time, the device SHOULD issue a single 
 668:            notification for each range of contiguous indexes in 
 669:            an effort to minimize the emission of a large number 
 670:            of notifications.  If a notification has to be 
 671:            issued for just a single bfdSessEntry, then 
 672:            the instance identifier (and values) of the two 
 673:            bfdSessDiag objects MUST be the identical." 
 674:       ::= { bfdNotifications 1 } 
 675:     
 676:    bfdSessDown NOTIFICATION-TYPE 
 677:       OBJECTS     { bfdSessDiag, -- low range value 
 678:                     bfdSessDiag  -- high range value 
 679:       } 
 680:       STATUS      current 
 681:       DESCRIPTION 
 682:           "This notification is generated when the 
 683:            bfdSessState object for one or more contiguous 
 684:            entries in bfdSessTable are about to enter the down(4) 
 685:            or adminDown(5) states from some other state. The included  
 686:            values of bfdSessDiag MUST both be set equal to this 
 687:            new state (i.e: down(4) or adminDown(5)).  The two instances  
 688:            of bfdSessDiag in this notification indicate the range  
 689:            of indexes that are affected.  Note that all the indexes  
 690:            of the two ends of the range can be derived from the 
 691:            instance identifiers of these two objects.  For 
 692:            cases where a contiguous range of sessions 
 693:            have transitioned into the down(4) or adminDown(5) states  
 694:            at roughly the same time, the device SHOULD issue a single 
 695:            notification for each range of contiguous indexes in 
 696:            an effort to minimize the emission of a large number 
 697:            of notifications.  If a notification has to be 
 698:            issued for just a single bfdSessEntry, then 
 699:            the instance identifier (and values) of the two 
 700:            bfdSessDiag objects MUST be the identical." 
 701:       ::= { bfdNotifications 2 } 
 702:     
 703:    -- Ed Note: We need to add notification for changes  
 704:    -- when the two ends automatically negotiate to a new detection time 
 705:    -- value or when detection multiplier changes.  
 706:    -- Similarly, changes in the operating mode (bfdSessOperMode)  
 707:    -- also need to be notified.  
 708:     
 709:    -- Module compliance. 
 710:  
 711:    bfdGroups 
 712:       OBJECT IDENTIFIER ::= { bfdConformance 1 } 
 713:     
 714:    bfdCompliances 
 715:       OBJECT IDENTIFIER ::= { bfdConformance 2 } 
 716:     
 717:    -- Compliance requirement for fully compliant implementations.  
 718:     
 719:    bfdModuleFullCompliance MODULE-COMPLIANCE 
 720:       STATUS       current 
 721:       DESCRIPTION "Compliance statement for agents that provide full 
 722:                    support for BFD-MIB. Such devices can 
 723:                    then be monitored and also be configured using 
 724:                    this MIB module." 
 725:     
 726:       MODULE -- This module. 
 727:       MANDATORY-GROUPS { 
 728:             bfdSessionGroup, 
 729:             bfdSessionPerfGroup, 
 730:             bfdSessionPerfHCGroup, 
 731:             bfdNotificationGroup 
 732:       } 
 733:     
 734:       GROUP        bfdSessionPerfHCGroup 
 735:       DESCRIPTION "This group is mandatory for those bfdPerfTable  
 736:                    entries for which any of the objects  
 737:                    bfdSessPerfPktInHC or bfdSessPerfPktOutHC  
 738:                    wraps around too quickly  
 739:                    based on the criteria specified in RFC 2863 for  
 740:                    high-capacity counters." 
 741:     
 742:       GROUP        bfdNotificationGroup 
 743:       DESCRIPTION "This group is only mandatory for those  
 744:                    implementations which can efficiently implement  
 745:                    the notifications contained in this group." 
 746:     
 747:       OBJECT       bfdSessAddrType 
 748:       SYNTAX       InetAddressType { unknown(0), ipv4(1), ipv6(2) } 
 749:       DESCRIPTION "Only unknown(0), ipv4(1) and ipv6(2) support  
 750:                    is required." 
 751:     
 752:       OBJECT       bfdSessAddr 
 753:       SYNTAX       InetAddress (SIZE(0|4|16)) 
 754:       DESCRIPTION "An implementation is only required to support  
 755:                    unknown(0), ipv4(1) and ipv6(2) sizes." 
 756:  
 757:       ::= { bfdCompliances 1 } 
 758:     
 759:    -- Read-Only Conformance TBD... 
 760:     
 761:     
 762:    -- Units of conformance. 
 763:     
 764:    bfdSessionGroup OBJECT-GROUP 
 765:       OBJECTS { 
 766:                 bfdSessNotificationsEnable, 
 767:                 bfdAdminStatus, 
 768:                 bfdVersionNumber, 
 769:                 bfdSessApplicationId,  
 770:                 bfdSessDiscriminator,             
 771:                 bfdSessAddrType, 
 772:                 bfdSessAddr,                      
 773:                 bfdSessRemoteDiscr,               
 774:                 bfdSessUdpPort,
 775:                 bfdSessState,                     
 776:                 bfdSessRemoteHeardFlag,           
 777:                 bfdSessDiag,                      
 778:                 bfdSessOperMode,                  
 779:                 bfdSessDemandModeDesiredFlag,     
 780:                 bfdSessEchoFuncModeDesiredFlag, 
 781:                 bfdSessControlPlanIndepFlag, 
 782:                 bfdSessDesiredMinTxInterval,      
 783:                 bfdSessDesiredMinRxInterval,      
 784:                 bfdSessDesiredMinEchoRxInterval,  
 785:                 bfdSessDetectMult,                
 786:                 bfdSessStorType,                 
 787:                 bfdSessRowStatus, 
 788:                 bfdSessMapBfdIndex,  
 789:                 bfdSessAuthPresFlag,  
 790:                 bfdSessAuthenticationType 
 791:       } 
 792:       STATUS  current 
 793:       DESCRIPTION 
 794:              "Collection of objects needed for BFD sessions." 
 795:       ::= { bfdGroups 1 } 
 796:     
 797:     
 798:    bfdSessionPerfGroup OBJECT-GROUP 
 799:       OBJECTS { 
 800:                 bfdSessPerfPktIn, 
 801:                 bfdSessPerfPktOut, 
 802:                 bfdSessUpTime,
 803:                 bfdSessPerfLastSessDownTime, 
 804:                 bfdSessPerfLastCommLostDiag, 
 805:                 bfdSessPerfSessUpCount,
 806:                 bfdSessPerfDiscTime 
 807:       } 
 808:       STATUS  current 
 809:       DESCRIPTION 
 810:              "Collection of objects needed to monitor the 
 811:               performance of BFD sessions." 
 812:       ::= { bfdGroups 2 } 
 813:     
 814:    bfdSessionPerfHCGroup OBJECT-GROUP 
 815:       OBJECTS { 
 816:                bfdSessPerfPktInHC, 
 817:                bfdSessPerfPktOutHC  
 818:       } 
 819:       STATUS  current 
 820:       DESCRIPTION 
 821:              "Collection of objects needed to monitor the 
 822:               performance of BFD sessions for which the 
 823:               values of bfdSessPerfPktIn, bfdSessPerfPktOut  
 824:               wrap around too quickly." 
 825:       ::= { bfdGroups 3 } 
 826:     
 827:    bfdNotificationGroup NOTIFICATION-GROUP 
 828:       NOTIFICATIONS { 
 829:                 bfdSessUp, 
 830:                 bfdSessDown 
 831:       } 
 832:       STATUS  current 
 833:       DESCRIPTION 
 834:              "Set of notifications implemented in this  
 835:               module." 
 836:       ::= { bfdGroups 4 }          
 837:     
 838:    END 
 839: 
 840: --     
 841: --    Copyright (C) The Internet Society (2005).  This document is subject 
 842: --    to the rights, licenses and restrictions contained in BCP 78, and 
 843: --    except as set forth therein, the authors retain all their rights. 
 844: --     
 845: --    This document and the information contained herein are provided on an 
 846: --    "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 
 847: --    OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 
 848: --    ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 
 849: --    INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 
 850: --    INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 
 851: --    WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.     
 852: -- 
 853: