smilint output for ./PIM-STD-MIB


Message Severities
SeverityCount
error2
Message Types
TypeCount
bad-identifier-case (error)1
object-identifier-not-prefix (error)1

Messages:

PIM-STD-MIB

   1: -- extracted from draft-ietf-pim-mib-v2-10.txt
   2: -- at Sat Mar  3 06:08:24 2007
   3: 
   4: PIM-STD-MIB DEFINITIONS ::= BEGIN
   5: 
   6: IMPORTS
   7:     MODULE-IDENTITY, OBJECT-TYPE, mib-2,
   8:     NOTIFICATION-TYPE, Unsigned32,
   9:     Counter32, Counter64, Gauge32,
  10:     TimeTicks                        FROM SNMPv2-SMI        -- [RFC2578]
  11:     TEXTUAL-CONVENTION,
  12:     RowStatus, TruthValue,
  13:     StorageType                      FROM SNMPv2-TC         -- [RFC2579]
  14:     MODULE-COMPLIANCE, OBJECT-GROUP,
  15:     NOTIFICATION-GROUP               FROM SNMPv2-CONF       -- [RFC2580]
  16:     InterfaceIndexOrZero,
  17:     InterfaceIndex                   FROM IF-MIB            -- [RFC2863]
  18:     InetAddressType,
  19:     InetAddressPrefixLength,
  20:     InetAddress, InetVersion         FROM INET-ADDRESS-MIB  -- [RFC4001]
  21:     IANAipRouteProtocol              FROM IANA-RTPROTO-MIB; -- [RTPROTO]
  22: 
  23: pimStdMIB MODULE-IDENTITY
  24:     LAST-UPDATED "200703020000Z" -- 2 March 2007
  25:     ORGANIZATION
  26:             "IETF Protocol Independent Multicast (PIM) Working Group"
  27:     CONTACT-INFO
  28:             "Email: pim@ietf.org
  29:             WG charter:
  30:             http://www.ietf.org/html.charters/pim-charter.html"
  31:     DESCRIPTION
  32:             "The MIB module for management of PIM routers.
  33: 
  34:             Copyright (C) The IETF Trust (2007).  This version of this
  35:             MIB module is part of RFC yyyy; see the RFC itself for full
  36:             legal notices."
  37: -- RFC Ed.: replace yyyy with actual RFC number & remove this note
  38:     REVISION     "200703020000Z" -- 2 March 2007
  39:     DESCRIPTION  "Initial version, published as RFC yyyy."
  40: -- RFC Ed.: replace yyyy with actual RFC number & remove this note
  41:     ::= { mib-2 XXX }
  41: error - `XXX' should start with a lower case letter
  41: error - Object identifier element `XXX' name only allowed as first element
  42: -- RFC Ed.: replace XXX with IANA-assigned number & remove this note
  43: 
  44: --
  45: -- Textual Conventions
  46: --
  47: 
  48: PimMode ::= TEXTUAL-CONVENTION
  49:     STATUS     current
  50:     DESCRIPTION
  51:             "The PIM mode in which a group is operating.
  52: 
  53:             none(1)      The group is not using PIM, which may be the
  54:                          case if, for example, it is a link-local or
  55:                          unroutable group address.
  56: 
  57:             ssm(2)       Source-Specific Multicast (SSM) with PIM Sparse
  58:                          Mode.
  59: 
  60:             asm(3)       Any Source Multicast (ASM), with PIM Sparse
  61:                          Mode.
  62: 
  63:             bidir(4)     Bi-directional PIM.
  64: 
  65:             dm(5)        PIM Dense Mode.
  66: 
  67:             other(6)     Any other PIM mode."
  68: 
  69:     SYNTAX     INTEGER {
  70:                   none(1),
  71:                   ssm(2),
  72:                   asm(3),
  73:                   bidir(4),
  74:                   dm(5),
  75:                   other(6)
  76:                }
  77: 
  78: PimGroupMappingOriginType ::= TEXTUAL-CONVENTION
  79:     STATUS     current
  80:     DESCRIPTION
  81:             "The mechanism by which a PIM group mapping was learned.
  82:             fixed(1)     Link-local or unroutable group mappings.
  83: 
  84:             configRp(2)  Local static RP configuration.
  85: 
  86:             configSsm(3) Local SSM Group configuration.
  87: 
  88:             bsr(4)       The PIM Bootstrap Router (BSR) mechanism.
  89: 
  90:             autoRP(5)    Cisco's Auto-RP mechanism.
  91: 
  92:             embedded(6)  The Embedded-RP mechanism where the RP address
  93:                          is embedded in the multicast group address.
  94: 
  95:             other(7)     Any other mechanism."
  96: 
  97:     REFERENCE "RFC 3596, RFC 3956 and I-D.ietf-pim-sm-bsr"
  98:     SYNTAX     INTEGER {
  99:                   fixed(1),
 100:                   configRp(2),
 101:                   configSsm(3),
 102:                   bsr(4),
 103:                   autoRP(5),
 104:                   embedded(6),
 105:                   other(7)
 106:                }
 107: 
 108: --
 109: -- Top-level structure
 110: --
 111: 
 112: pimNotifications OBJECT IDENTIFIER ::= { pimStdMIB 0 }
 113: pim              OBJECT IDENTIFIER ::= { pimStdMIB 1 }
 114: 
 115: pimKeepalivePeriod OBJECT-TYPE
 116:     SYNTAX     Unsigned32 (0..65535)
 117:     UNITS      "seconds"
 118:     MAX-ACCESS read-write
 119:     STATUS     current
 120:     DESCRIPTION
 121:             "The duration of the Keepalive Timer.  This is the period
 122:             during which the PIM router will maintain (S,G) state in the
 123:             absence of explicit (S,G) local membership or (S,G) join
 124:             messages received to maintain it.  This timer period is
 125:             called the Keepalive_Period in the PIM-SM specification.  It
 126:             is called the SourceLifetime in the PIM-DM specification.
 127: 
 128:             The storage type of this object is determined by
 129:             pimDeviceConfigStorageType."
 130: 
 131:     REFERENCE "RFC 4601 section 4.11"
 132:     DEFVAL { 210 }
 133:     ::= { pim 14 }
 134: 
 135: pimRegisterSuppressionTime OBJECT-TYPE
 136:     SYNTAX     Unsigned32 (0..65535)
 137:     UNITS      "seconds"
 138:     MAX-ACCESS read-write
 139:     STATUS     current
 140:     DESCRIPTION
 141:             "The duration of the Register Suppression Timer.  This is
 142:             the period during which a PIM Designated Router (DR) stops
 143:             sending Register-encapsulated data to the Rendezvous Point
 144:             (RP) after receiving a Register-Stop message.  This object
 145:             is used to run timers both at the DR and at the RP.  This
 146:             timer period is called the Register_Suppression_Time in the
 147:             PIM-SM specification.
 148: 
 149:             The storage type of this object is determined by
 150:             pimDeviceConfigStorageType."
 151:     REFERENCE "RFC 4601 section 4.11"
 152:     DEFVAL { 60 }
 153:     ::= { pim 15 }
 154: 
 155: pimStarGEntries OBJECT-TYPE
 156:     SYNTAX     Gauge32
 157:     MAX-ACCESS read-only
 158:     STATUS     current
 159:     DESCRIPTION
 160:             "The number of entries in the pimStarGTable."
 161:     ::= { pim 16 }
 162: 
 163: pimStarGIEntries OBJECT-TYPE
 164:     SYNTAX     Gauge32
 165:     MAX-ACCESS read-only
 166:     STATUS     current
 167:     DESCRIPTION
 168:             "The number of entries in the pimStarGITable."
 169:     ::= { pim 17 }
 170: 
 171: pimSGEntries OBJECT-TYPE
 172:     SYNTAX     Gauge32
 173:     MAX-ACCESS read-only
 174:     STATUS     current
 175:     DESCRIPTION
 176:             "The number of entries in the pimSGTable."
 177:     ::= { pim 18 }
 178: 
 179: pimSGIEntries OBJECT-TYPE
 180:     SYNTAX     Gauge32
 181:     MAX-ACCESS read-only
 182:     STATUS     current
 183:     DESCRIPTION
 184:             "The number of entries in the pimSGITable."
 185:     ::= { pim 19 }
 186: 
 187: pimSGRptEntries OBJECT-TYPE
 188:     SYNTAX     Gauge32
 189:     MAX-ACCESS read-only
 190:     STATUS     current
 191:     DESCRIPTION
 192:             "The number of entries in the pimSGRptTable."
 193:     ::= { pim 20 }
 194: 
 195: pimSGRptIEntries OBJECT-TYPE
 196:     SYNTAX     Gauge32
 197:     MAX-ACCESS read-only
 198:     STATUS     current
 199:     DESCRIPTION
 200:             "The number of entries in the pimSGRptITable."
 201:     ::= { pim 21 }
 202: 
 203: pimOutAsserts OBJECT-TYPE
 204:     SYNTAX     Counter64
 205:     MAX-ACCESS read-only
 206:     STATUS     current
 207:     DESCRIPTION
 208:             "The number of Asserts sent by this router.
 209: 
 210:             Discontinuities in the value of this counter can occur at
 211:             re-initialization of the management system, for example
 212:             when the device is rebooted."
 213:     REFERENCE "RFC 4601 section 4.6"
 214:     ::= { pim 22 }
 215: 
 216: pimInAsserts OBJECT-TYPE
 217:     SYNTAX     Counter64
 218:     MAX-ACCESS read-only
 219:     STATUS     current
 220:     DESCRIPTION
 221:             "The number of Asserts received by this router.  Asserts
 222:             are multicast to all routers on a network.  This counter is
 223:             incremented by all routers that receive an assert, not only
 224:             those routers that are contesting the assert.
 225: 
 226:             Discontinuities in the value of this counter can occur at
 227:             re-initialization of the management system, for example
 228:             when the device is rebooted."
 229:     REFERENCE "RFC 4601 section 4.6"
 230:     ::= { pim 23 }
 231: 
 232: pimLastAssertInterface OBJECT-TYPE
 233:     SYNTAX     InterfaceIndexOrZero
 234:     MAX-ACCESS read-only
 235:     STATUS     current
 236:     DESCRIPTION
 237:             "The interface on which this router most recently sent or
 238:             received an assert, or zero if this router has not sent or
 239:             received an assert."
 240:     REFERENCE "RFC 4601 section 4.6"
 241:     ::= { pim 24 }
 242: 
 243: pimLastAssertGroupAddressType OBJECT-TYPE
 244:     SYNTAX     InetAddressType
 245:     MAX-ACCESS read-only
 246:     STATUS     current
 247:     DESCRIPTION
 248:             "The address type of the multicast group address in the most
 249:             recently sent or received assert.  If this router has not
 250:             sent or received an assert then this object is set to
 251:             unknown(0)."
 252:     ::= { pim 25 }
 253: 
 254: pimLastAssertGroupAddress OBJECT-TYPE
 255:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 256:     MAX-ACCESS read-only
 257:     STATUS     current
 258:     DESCRIPTION
 259:             "The multicast group address in the most recently sent or
 260:             received assert.  The InetAddressType is given by the
 261:             pimLastAssertGroupAddressType object."
 262:     ::= { pim 26 }
 263: 
 264: pimLastAssertSourceAddressType OBJECT-TYPE
 265:     SYNTAX     InetAddressType
 266: 
 267:     MAX-ACCESS read-only
 268:     STATUS     current
 269:     DESCRIPTION
 270:             "The address type of the multicast source address in the
 271:             most recently sent or received assert.  If the most recent
 272:             assert was (*,G), or if this router has not sent or received
 273:             an assert, then this object is set to unknown(0)."
 274:     ::= { pim 27 }
 275: 
 276: pimLastAssertSourceAddress OBJECT-TYPE
 277:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 278:     MAX-ACCESS read-only
 279:     STATUS     current
 280:     DESCRIPTION
 281:             "The multicast source address in the most recently sent or
 282:             received assert.  The InetAddressType is given by the
 283:             pimLastAssertSourceAddressType object."
 284:     ::= { pim 28 }
 285: 
 286: pimNeighborLossNotificationPeriod OBJECT-TYPE
 287:     SYNTAX     Unsigned32 (0..65535)
 288:     UNITS      "seconds"
 289:     MAX-ACCESS read-write
 290:     STATUS     current
 291:     DESCRIPTION
 292:             "The minimum time that must elapse between pimNeighborLoss
 293:             notifications originated by this router.  The maximum value
 294:             65535 represents an 'infinite' time, in which case no
 295:             pimNeighborLoss notifications are ever sent.
 296: 
 297:             The storage type of this object is determined by
 298:             pimDeviceConfigStorageType."
 299:     DEFVAL { 0 }
 300:     ::= { pim 29 }
 301: 
 302: pimNeighborLossCount OBJECT-TYPE
 303:     SYNTAX     Counter32
 304:     MAX-ACCESS read-only
 305:     STATUS     current
 306:     DESCRIPTION
 307:             "The number of neighbor loss events that have occurred.
 308: 
 309:             This counter is incremented when the neighbor timer expires,
 310:             and the router has no other neighbors on the same interface
 311:             with the same IP version and a lower IP address than itself.
 312: 
 313:             This counter is incremented whenever a pimNeighborLoss
 314:             notification would be generated.
 315: 
 316:             Discontinuities in the value of this counter can occur at
 317:             re-initialization of the management system, for example
 318:             when the device is rebooted."
 319:     REFERENCE "RFC 4601 section 4.3.2"
 320:     ::= { pim 30 }
 321: 
 322: pimInvalidRegisterNotificationPeriod OBJECT-TYPE
 323:     SYNTAX     Unsigned32 (10..65535)
 324:     UNITS      "seconds"
 325:     MAX-ACCESS read-write
 326:     STATUS     current
 327:     DESCRIPTION
 328:             "The minimum time that must elapse between
 329:             pimInvalidRegister notifications originated by this router.
 330:             The default value of 65535 represents an 'infinite' time, in
 331:             which case no pimInvalidRegister notifications are ever
 332:             sent.
 333: 
 334:             The non-zero minimum allowed value provides resilience
 335:             against propagation of denial-of-service attacks from the
 336:             data and control planes to the network management plane.
 337: 
 338:             The storage type of this object is determined by
 339:             pimDeviceConfigStorageType."
 340:     DEFVAL { 65535 }
 341:     ::= { pim 31 }
 342: 
 343: pimInvalidRegisterMsgsRcvd OBJECT-TYPE
 344:     SYNTAX     Counter32
 345:     MAX-ACCESS read-only
 346:     STATUS     current
 347:     DESCRIPTION
 348:             "The number of invalid PIM Register messages that have been
 349:             received by this device.
 350: 
 351:             A PIM Register message is invalid if either
 352: 
 353:             o the destination address of the Register message does not
 354:             match the Group to RP mapping on this device, or
 355: 
 356:             o this device believes the group address to be within an
 357:             SSM address range, but this Register implies ASM usage.
 358: 
 359:             These conditions can occur transiently while RP mapping
 360:             changes propagate through the network.  If this counter is
 361:             incremented repeatedly over several minutes, then there is a
 362:             persisting configuration error that requires correction.
 363: 
 364:             The active Group to RP mapping on this device is specified
 365:             by the object pimGroupMappingPimMode.  If there is no such
 366:             mapping, then the object pimGroupMappingPimMode is absent.
 367:             The RP address contained in the invalid Register is
 368:             pimInvalidRegisterRp.
 369: 
 370:             Multicast data carried by invalid Register messages is
 371:             discarded.  The discarded data is from a source directly
 372:             connected to pimInvalidRegisterOrigin, and is addressed to
 373:             pimInvalidRegisterGroup.
 374: 
 375:             Discontinuities in the value of this counter can occur at
 376:             re-initialization of the management system, for example
 377:             when the device is rebooted."
 378:     REFERENCE "RFC 4601 section 4.4.2, RFC 3569 and
 379:                I-D.ietf-mboned-ip-mcast-mib ipMcastSsmRangeTable"
 380:     ::= { pim 32 }
 381: 
 382: pimInvalidRegisterAddressType OBJECT-TYPE
 383:     SYNTAX     InetAddressType
 384:     MAX-ACCESS read-only
 385:     STATUS     current
 386:     DESCRIPTION
 387:             "The address type stored in pimInvalidRegisterOrigin,
 388:             pimInvalidRegisterGroup and pimInvalidRegisterRp.
 389: 
 390:             If no unexpected Register messages have been received, then
 391:             this object is set to unknown(0)."
 392:     ::= { pim 33 }
 393: 
 394: pimInvalidRegisterOrigin OBJECT-TYPE
 395:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 396:     MAX-ACCESS read-only
 397:     STATUS     current
 398:     DESCRIPTION
 399:             "The source address of the last unexpected Register message
 400:             received by this device."
 401:     ::= { pim 34 }
 402: 
 403: pimInvalidRegisterGroup OBJECT-TYPE
 404:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 405:     MAX-ACCESS read-only
 406:     STATUS     current
 407:     DESCRIPTION
 408:             "The IP multicast group address to which the last unexpected
 409:             Register message received by this device was addressed."
 410:     ::= { pim 35 }
 411: 
 412: pimInvalidRegisterRp OBJECT-TYPE
 413:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 414:     MAX-ACCESS read-only
 415:     STATUS     current
 416:     DESCRIPTION
 417:             "The RP address to which the last unexpected Register
 418:             message received by this device was delivered."
 419:     ::= { pim 36 }
 420: 
 421: pimInvalidJoinPruneNotificationPeriod OBJECT-TYPE
 422:     SYNTAX     Unsigned32 (10..65535)
 423:     UNITS      "seconds"
 424:     MAX-ACCESS read-write
 425:     STATUS     current
 426:     DESCRIPTION
 427:             "The minimum time that must elapse between
 428:             pimInvalidJoinPrune notifications originated by this router.
 429:             The default value of 65535 represents an 'infinite' time, in
 430:             which case no pimInvalidJoinPrune notifications are ever
 431:             sent.
 432: 
 433:             The non-zero minimum allowed value provides resilience
 434:             against propagation of denial-of-service attacks from the
 435:             control plane to the network management plane.
 436: 
 437:             The storage type of this object is determined by
 438:             pimDeviceConfigStorageType."
 439:     DEFVAL { 65535 }
 440:     ::= { pim 37 }
 441: 
 442: pimInvalidJoinPruneMsgsRcvd OBJECT-TYPE
 443:     SYNTAX     Counter32
 444:     MAX-ACCESS read-only
 445:     STATUS     current
 446:     DESCRIPTION
 447:             "The number of invalid PIM Join/Prune messages that have
 448:             been received by this device.
 449: 
 450:             A PIM Join/Prune message is invalid if either
 451: 
 452:             o the Group to RP mapping specified by this message does not
 453:             match the Group to RP mapping on this device, or
 454: 
 455:             o this device believes the group address to be within an
 456:             SSM address range, but this Join/Prune (*,G) or (S,G,rpt)
 457:             implies ASM usage.
 458: 
 459:             These conditions can occur transiently while RP mapping
 460:             changes propagate through the network.  If this counter is
 461:             incremented repeatedly over several minutes, then there is a
 462:             persisting configuration error that requires correction.
 463: 
 464:             The active Group to RP mapping on this device is specified
 465:             by the object pimGroupMappingPimMode.  If there is no such
 466:             mapping, then the object pimGroupMappingPimMode is absent.
 467:             The RP address contained in the invalid Join/Prune is
 468:             pimInvalidJoinPruneRp.
 469:             Invalid Join/Prune messages are discarded.  This may result
 470:             in loss of multicast data affecting listeners downstream of
 471:             pimInvalidJoinPruneOrigin, for multicast data addressed to
 472:             pimInvalidJoinPruneGroup.
 473: 
 474:             Discontinuities in the value of this counter can occur at
 475:             re-initialization of the management system, for example
 476:             when the device is rebooted."
 477:     REFERENCE "RFC 4601 section 4.5.2, RFC 3569 and
 478:                I-D.ietf-mboned-ip-mcast-mib ipMcastSsmRangeTable"
 479:     ::= { pim 38 }
 480: 
 481: pimInvalidJoinPruneAddressType OBJECT-TYPE
 482:     SYNTAX     InetAddressType
 483:     MAX-ACCESS read-only
 484:     STATUS     current
 485:     DESCRIPTION
 486:             "The address type stored in pimInvalidJoinPruneOrigin,
 487:             pimInvalidJoinPruneGroup and pimInvalidJoinPruneRp.
 488: 
 489:             If no unexpected Join/Prune messages have been received,
 490:             this object is set to unknown(0)."
 491:     ::= { pim 39 }
 492: 
 493: pimInvalidJoinPruneOrigin OBJECT-TYPE
 494:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 495:     MAX-ACCESS read-only
 496:     STATUS     current
 497:     DESCRIPTION
 498:             "The source address of the last unexpected Join/Prune
 499:             message received by this device."
 500:     ::= { pim 40 }
 501: 
 502: pimInvalidJoinPruneGroup OBJECT-TYPE
 503:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 504:     MAX-ACCESS read-only
 505:     STATUS     current
 506:     DESCRIPTION
 507:             "The IP multicast group address carried in the last
 508:             unexpected Join/Prune message received by this device."
 509:     ::= { pim 41 }
 510: 
 511: pimInvalidJoinPruneRp OBJECT-TYPE
 512:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
 513:     MAX-ACCESS read-only
 514:     STATUS     current
 515:     DESCRIPTION
 516:             "The RP address carried in the last unexpected Join/Prune
 517:             message received by this device."
 518:     ::= { pim 42 }
 519: 
 520: pimRPMappingNotificationPeriod OBJECT-TYPE
 521:     SYNTAX     Unsigned32 (0..65535)
 522:     UNITS      "seconds"
 523:     MAX-ACCESS read-write
 524:     STATUS     current
 525:     DESCRIPTION
 526:             "The minimum time that must elapse between
 527:             pimRPMappingChange notifications originated by this router.
 528:             The default value of 65535 represents an 'infinite' time, in
 529:             which case no pimRPMappingChange notifications are ever
 530:             sent.
 531: 
 532:             The storage type of this object is determined by
 533:             pimDeviceConfigStorageType."
 534:     DEFVAL { 65535 }
 535:     ::= { pim 43 }
 536: 
 537: pimRPMappingChangeCount OBJECT-TYPE
 538:     SYNTAX     Counter32
 539:     MAX-ACCESS read-only
 540:     STATUS     current
 541:     DESCRIPTION
 542:             "The number of changes to active RP mappings on this device.
 543: 
 544:             Information about active RP mappings is available in
 545:             pimGroupMappingTable.  Only changes to active mappings cause
 546:             this counter to be incremented.  That is, changes that
 547:             modify the pimGroupMappingEntry with the highest precedence
 548:             for a group (lowest value of pimGroupMappingPrecedence).
 549: 
 550:             Such changes may result from manual configuration of this
 551:             device, or from automatic RP mapping discovery methods
 552:             including the PIM Bootstrap Router (BSR) mechanism.
 553: 
 554:             Discontinuities in the value of this counter can occur at
 555:             re-initialization of the management system, for example
 556:             when the device is rebooted."
 557:     REFERENCE "I-D.ietf-pim-sm-bsr"
 558:     ::= { pim 44 }
 559: 
 560: pimInterfaceElectionNotificationPeriod OBJECT-TYPE
 561:     SYNTAX     Unsigned32 (0..65535)
 562:     UNITS      "seconds"
 563:     MAX-ACCESS read-write
 564:     STATUS     current
 565:     DESCRIPTION
 566:             "The minimum time that must elapse between
 567:             pimInterfaceElection notifications originated by this
 568:             router.  The default value of 65535 represents an 'infinite'
 569:             time, in which case no pimInterfaceElection notifications
 570:             are ever sent.
 571: 
 572:             The storage type of this object is determined by
 573:             pimDeviceConfigStorageType."
 574:     DEFVAL { 65535 }
 575:     ::= { pim 45 }
 576: 
 577: pimInterfaceElectionWinCount OBJECT-TYPE
 578:     SYNTAX     Counter32
 579:     MAX-ACCESS read-only
 580:     STATUS     current
 581:     DESCRIPTION
 582:             "The number of times this device has been elected DR or DF
 583:             on any interface.
 584: 
 585:             Elections occur frequently on newly-active interfaces, as
 586:             triggered Hellos establish adjacencies.  This counter is not
 587:             incremented for elections on an interface until the first
 588:             periodic Hello has been sent.  If this router is the DR or
 589:             DF at the time of sending the first periodic Hello after
 590:             interface activation, then this counter is incremented
 591:             (once) at that time.
 592: 
 593:             Discontinuities in the value of this counter can occur at
 594:             re-initialization of the management system, for example
 595:             when the device is rebooted."
 596:     REFERENCE "RFC 4601 section 4.3.2 and
 597:                I-D.ietf-pim-bidir section 3.5.2"
 598:     ::= { pim 46 }
 599: 
 600: pimRefreshInterval OBJECT-TYPE
 601:     SYNTAX     Unsigned32 (0..65535)
 602:     UNITS      "seconds"
 603:     MAX-ACCESS read-write
 604:     STATUS     current
 605:     DESCRIPTION
 606:             "The interval between successive State Refresh messages sent
 607:             by an Originator.  This timer period is called the
 608:             RefreshInterval in the PIM-DM specification.  This object is
 609:             used only by PIM-DM.
 610: 
 611:             The storage type of this object is determined by
 612:             pimDeviceConfigStorageType."
 613: 
 614:     REFERENCE "RFC 3973 section 4.8"
 615:     DEFVAL { 60 }
 616:     ::= { pim 47 }
 617: 
 618: pimDeviceConfigStorageType OBJECT-TYPE
 619:     SYNTAX      StorageType
 620:     MAX-ACCESS  read-write
 621:     STATUS      current
 622:     DESCRIPTION
 623:             "The storage type used for the global PIM configuration of
 624:             this device, comprised of the objects listed below.  If this
 625:             storage type takes the value 'permanent', write-access to
 626:             the listed objects need not be allowed.
 627: 
 628:             The objects described by this storage type are:
 629:             pimKeepalivePeriod, pimRegisterSuppressionTime,
 630:             pimNeighborLossNotificationPeriod,
 631:             pimInvalidRegisterNotificationPeriod,
 632:             pimInvalidJoinPruneNotificationPeriod,
 633:             pimRPMappingNotificationPeriod,
 634:             pimInterfaceElectionNotificationPeriod and
 635:             pimRefreshInterval."
 636:        DEFVAL { nonVolatile }
 637:     ::= { pim 48 }
 638: --
 639: -- The PIM Interface Table
 640: --
 641: 
 642: pimInterfaceTable OBJECT-TYPE
 643:     SYNTAX     SEQUENCE OF PimInterfaceEntry
 644:     MAX-ACCESS not-accessible
 645:     STATUS     current
 646:     DESCRIPTION
 647:             "The (conceptual) table listing the router's PIM interfaces.
 648:             PIM is enabled on all interfaces listed in this table."
 649:     ::= { pim 1 }
 650: 
 651: pimInterfaceEntry OBJECT-TYPE
 652:     SYNTAX     PimInterfaceEntry
 653:     MAX-ACCESS not-accessible
 654:     STATUS     current
 655:     DESCRIPTION
 656:             "An entry (conceptual row) in the pimInterfaceTable.  This
 657:             entry is preserved on agent restart."
 658:     INDEX      { pimInterfaceIfIndex,
 659:                  pimInterfaceIPVersion }
 660:     ::= { pimInterfaceTable 1 }
 661: 
 662: PimInterfaceEntry ::= SEQUENCE {
 663:     pimInterfaceIfIndex              InterfaceIndex,
 664:     pimInterfaceIPVersion            InetVersion,
 665:     pimInterfaceAddressType          InetAddressType,
 666:     pimInterfaceAddress              InetAddress,
 667:     pimInterfaceGenerationIDValue    Unsigned32,
 668:     pimInterfaceDR                   InetAddress,
 669:     pimInterfaceDRPriority           Unsigned32,
 670:     pimInterfaceDRPriorityEnabled    TruthValue,
 671:     pimInterfaceHelloInterval        Unsigned32,
 672:     pimInterfaceTrigHelloInterval    Unsigned32,
 673:     pimInterfaceHelloHoldtime        Unsigned32,
 674:     pimInterfaceJoinPruneInterval    Unsigned32,
 675:     pimInterfaceJoinPruneHoldtime    Unsigned32,
 676:     pimInterfaceDFElectionRobustness Unsigned32,
 677:     pimInterfaceLanDelayEnabled      TruthValue,
 678:     pimInterfacePropagationDelay     Unsigned32,
 679:     pimInterfaceOverrideInterval     Unsigned32,
 680:     pimInterfaceEffectPropagDelay    Unsigned32,
 681:     pimInterfaceEffectOverrideIvl    Unsigned32,
 682:     pimInterfaceSuppressionEnabled   TruthValue,
 683:     pimInterfaceBidirCapable         TruthValue,
 684:     pimInterfaceDomainBorder         TruthValue,
 685:     pimInterfaceStubInterface        TruthValue,
 686:     pimInterfacePruneLimitInterval   Unsigned32,
 687:     pimInterfaceGraftRetryInterval   Unsigned32,
 688:     pimInterfaceSRPriorityEnabled    TruthValue,
 689:     pimInterfaceStatus               RowStatus,
 690:     pimInterfaceStorageType          StorageType
 691: }
 692: 
 693: pimInterfaceIfIndex OBJECT-TYPE
 694:     SYNTAX     InterfaceIndex
 695:     MAX-ACCESS not-accessible
 696:     STATUS     current
 697:     DESCRIPTION
 698:             "The ifIndex value of this PIM interface."
 699:     ::= { pimInterfaceEntry 1 }
 700: 
 701: pimInterfaceIPVersion OBJECT-TYPE
 702:     SYNTAX     InetVersion
 703:     MAX-ACCESS not-accessible
 704:     STATUS     current
 705:     DESCRIPTION
 706:             "The IP version of this PIM interface.  A physical interface
 707:             may be configured in multiple modes concurrently, e.g. IPv4
 708:             and IPv6, however the traffic is considered to be logically
 709:             separate."
 710:     ::= { pimInterfaceEntry 2 }
 711: 
 712: pimInterfaceAddressType OBJECT-TYPE
 713:     SYNTAX     InetAddressType
 714:     MAX-ACCESS read-only
 715:     STATUS     current
 716:     DESCRIPTION
 717:             "The address type of this PIM interface."
 718:     ::= { pimInterfaceEntry 3 }
 719: 
 720: pimInterfaceAddress OBJECT-TYPE
 721:     SYNTAX     InetAddress (SIZE (4|8|16|20))
 722:     MAX-ACCESS read-only
 723:     STATUS     current
 724:     DESCRIPTION
 725:             "The primary IP address of this router on this PIM
 726:             interface.  The InetAddressType is given by the
 727:             pimInterfaceAddressType object."
 728:     REFERENCE "RFC 4601 sections 4.1.6, 4.3.1-4.3.4 and 4.5.1"
 729:     ::= { pimInterfaceEntry 4 }
 730: 
 731: pimInterfaceGenerationIDValue OBJECT-TYPE
 732:     SYNTAX     Unsigned32
 733:     MAX-ACCESS read-only
 734:     STATUS     current
 735:     DESCRIPTION
 736:             "The value of the Generation ID this router inserted in the
 737:             last PIM Hello message it sent on this interface."
 738:     REFERENCE "RFC 4601 section 4.3.1"
 739:     ::= { pimInterfaceEntry 5 }
 740: 
 741: pimInterfaceDR OBJECT-TYPE
 742:     SYNTAX     InetAddress (SIZE (4|8|16|20))
 743:     MAX-ACCESS read-only
 744:     STATUS     current
 745:     DESCRIPTION
 746:             "The primary IP address of the Designated Router on this PIM
 747:             interface.  The InetAddressType is given by the
 748:             pimInterfaceAddressType object."
 749:     REFERENCE "RFC 4601 section 4.3"
 750:     ::= { pimInterfaceEntry 6 }
 751: 
 752: pimInterfaceDRPriority OBJECT-TYPE
 753:     SYNTAX     Unsigned32
 754:     MAX-ACCESS read-create
 755:     STATUS     current
 756:     DESCRIPTION
 757:             "The Designated Router Priority value inserted into the DR
 758:             Priority option on this interface.  Numerically higher
 759:             values for this object indicate higher priorities."
 760:     REFERENCE "RFC 4601 section 4.3.2"
 761:     DEFVAL { 1 }
 762:     ::= { pimInterfaceEntry 7 }
 763: 
 764: pimInterfaceDRPriorityEnabled OBJECT-TYPE
 765:     SYNTAX     TruthValue
 766:     MAX-ACCESS read-only
 767:     STATUS     current
 768:     DESCRIPTION
 769:             "Evaluates to TRUE if all routers on this interface are
 770:             using the DR Priority option."
 771:     REFERENCE "RFC 4601 section 4.3.2"
 772:     ::= { pimInterfaceEntry 8 }
 773: 
 774: pimInterfaceHelloInterval OBJECT-TYPE
 775:     SYNTAX     Unsigned32 (0..18000)
 776:     UNITS      "seconds"
 777:     MAX-ACCESS read-create
 778:     STATUS     current
 779:     DESCRIPTION
 780:             "The frequency at which PIM Hello messages are transmitted
 781:             on this interface.  This object corresponds to the
 782:             'Hello_Period' timer value defined in the PIM-SM
 783:             specification.  A value of zero represents an 'infinite'
 784:             interval, and indicates that periodic PIM Hello messages
 785:             should not be sent on this interface."
 786:     REFERENCE "RFC 4601 section 9"
 787:     DEFVAL { 30 }
 788:     ::= { pimInterfaceEntry 9 }
 789: 
 790: pimInterfaceTrigHelloInterval OBJECT-TYPE
 791:     SYNTAX     Unsigned32 (0..60)
 792:     UNITS      "seconds"
 793:     MAX-ACCESS read-create
 794:     STATUS     current
 795:     DESCRIPTION
 796:             "The maximum time before this router sends a triggered PIM
 797:             Hello message on this interface.  This object corresponds to
 798:             the 'Trigered_Hello_Delay' timer value defined in the PIM-SM
 799:             specification.  A value of zero has no special meaning and
 800:             indicates that triggered PIM Hello messages should always be
 801:             sent immediately."
 802:     REFERENCE "RFC 4601 section 4.11"
 803:     DEFVAL { 5 }
 804:     ::= { pimInterfaceEntry 10 }
 805: 
 806: pimInterfaceHelloHoldtime OBJECT-TYPE
 807:     SYNTAX     Unsigned32 (0..65535)
 808:     UNITS      "seconds"
 809:     MAX-ACCESS read-create
 810:     STATUS     current
 811:     DESCRIPTION
 812:             "The value set in the Holdtime field of PIM Hello messages
 813:             transmitted on this interface.  A value of 65535 represents
 814:             an 'infinite' holdtime.  Implementations are recommended
 815:             to use a holdtime that is 3.5 times the value of
 816:             pimInterfaceHelloInterval, or 65535 if
 817:             pimInterfaceHelloInterval is set to zero."
 818:     REFERENCE "RFC 4601 sections 4.3.2 and 4.9.2"
 819:     DEFVAL { 105 }
 820:     ::= { pimInterfaceEntry 11 }
 821: 
 822: pimInterfaceJoinPruneInterval OBJECT-TYPE
 823:     SYNTAX     Unsigned32 (0..18000)
 824:     UNITS      "seconds"
 825:     MAX-ACCESS read-create
 826:     STATUS     current
 827:     DESCRIPTION
 828:             "The frequency at which this router sends PIM Join/Prune
 829:             messages on this PIM interface.  This object corresponds to
 830:             the 't_periodic' timer value defined in the PIM-SM
 831:             specification.  A value of zero represents an 'infinite'
 832:             interval, and indicates that periodic PIM Join/Prune
 833:             messages should not be sent on this interface."
 834:     REFERENCE "RFC 4601 section 4.11"
 835:     DEFVAL { 60 }
 836:     ::= { pimInterfaceEntry 12 }
 837: 
 838: pimInterfaceJoinPruneHoldtime OBJECT-TYPE
 839:     SYNTAX     Unsigned32 (0..65535)
 840:     UNITS      "seconds"
 841:     MAX-ACCESS read-create
 842:     STATUS     current
 843:     DESCRIPTION
 844:             "The value inserted into the Holdtime field of a PIM
 845:             Join/Prune message sent on this interface.  A value of 65535
 846:             represents an 'infinite' holdtime.  Implementations are
 847:             recommended to use a holdtime that is 3.5 times the value of
 848:             pimInterfaceJoinPruneInterval, or 65535 if
 849:             pimInterfaceJoinPruneInterval is set to zero.  PIM-DM
 850:             implementations are recommended to use the value of
 851:             pimInterfacePruneLimitInterval."
 852:     REFERENCE "RFC 4601 sections 4.5.3 and 4.9.5"
 853:     DEFVAL { 210 }
 854:     ::= { pimInterfaceEntry 13 }
 855: 
 856: pimInterfaceDFElectionRobustness OBJECT-TYPE
 857:     SYNTAX     Unsigned32
 858:     MAX-ACCESS read-create
 859:     STATUS     current
 860:     DESCRIPTION
 861:             "The minimum number of PIM DF-Election messages that must be
 862:             lost in order for DF election on this interface to fail."
 863:     DEFVAL { 3 }
 864:     ::= { pimInterfaceEntry 14 }
 865: 
 866: pimInterfaceLanDelayEnabled OBJECT-TYPE
 867:     SYNTAX     TruthValue
 868:     MAX-ACCESS read-only
 869:     STATUS     current
 870:     DESCRIPTION
 871:             "Evaluates to TRUE if all routers on this interface are
 872:             using the LAN Prune Delay option."
 873:     REFERENCE "RFC 4601 sections 4.3.3 and 4.9.2"
 874:     ::= { pimInterfaceEntry 15 }
 875: 
 876: pimInterfacePropagationDelay OBJECT-TYPE
 877:     SYNTAX     Unsigned32 (0..32767)
 878:     UNITS      "milliseconds"
 879:     MAX-ACCESS read-create
 880:     STATUS     current
 881:     DESCRIPTION
 882:             "The expected propagation delay between PIM routers on this
 883:             network or link.
 884: 
 885:             This router inserts this value into the Propagation_Delay
 886:             field of the LAN Prune Delay option in the PIM Hello
 887:             messages sent on this interface.  Implementations SHOULD
 888:             enforce a lower bound on the permitted values for this
 889:             object to allow for scheduling and processing delays within
 890:             the local router."
 891:     DEFVAL { 500 }
 892:     ::= { pimInterfaceEntry 16 }
 893: 
 894: pimInterfaceOverrideInterval OBJECT-TYPE
 895:     SYNTAX     Unsigned32 (0..65535)
 896:     UNITS      "milliseconds"
 897:     MAX-ACCESS read-create
 898:     STATUS     current
 899:     DESCRIPTION
 900:             "The value this router inserts into the Override_Interval
 901:             field of the LAN Prune Delay option in the PIM Hello
 902:             messages it sends on this interface.
 903: 
 904:             When overriding a prune, PIM routers pick a random timer
 905:             duration up to the value of this object.  The more PIM
 906:             routers that are active on a network, the more likely it is
 907:             that the prune will be overridden after a small proportion
 908:             of this time has elapsed.
 909: 
 910:             The more PIM routers are active on this network, the larger
 911:             this object should be to obtain an optimal spread of prune
 912:             override latencies."
 913:     REFERENCE "RFC 4601 section 4.3.3"
 914:     DEFVAL { 2500 }
 915:     ::= { pimInterfaceEntry 17 }
 916: 
 917: pimInterfaceEffectPropagDelay OBJECT-TYPE
 918:     SYNTAX     Unsigned32 (0..32767)
 919:     UNITS      "milliseconds"
 920:     MAX-ACCESS read-only
 921:     STATUS     current
 922:     DESCRIPTION
 923:             "The Effective Propagation Delay on this interface.  This
 924:             object is always 500 if pimInterfaceLanDelayEnabled is
 925:             FALSE."
 926:     REFERENCE "RFC 4601 section 4.3.3"
 927:     ::= { pimInterfaceEntry 18 }
 928: 
 929: pimInterfaceEffectOverrideIvl OBJECT-TYPE
 930:     SYNTAX     Unsigned32 (0..65535)
 931:     UNITS      "milliseconds"
 932:     MAX-ACCESS read-only
 933:     STATUS     current
 934:     DESCRIPTION
 935:             "The Effective Override Interval on this interface.  This
 936:             object is always 2500 if pimInterfaceLanDelayEnabled is
 937:             FALSE."
 938:     REFERENCE "RFC 4601 section 4.3.3"
 939:     ::= { pimInterfaceEntry 19 }
 940: 
 941: pimInterfaceSuppressionEnabled OBJECT-TYPE
 942:     SYNTAX     TruthValue
 943:     MAX-ACCESS read-only
 944:     STATUS     current
 945:     DESCRIPTION
 946:             "Whether join suppression is enabled on this interface.
 947:             This object is always TRUE if pimInterfaceLanDelayEnabled is
 948:             FALSE."
 949:     REFERENCE "RFC 4601 section 4.3.3"
 950:     ::= { pimInterfaceEntry 20 }
 951: 
 952: pimInterfaceBidirCapable OBJECT-TYPE
 953:     SYNTAX     TruthValue
 954:     MAX-ACCESS read-only
 955:     STATUS     current
 956:     DESCRIPTION
 957:             "Evaluates to TRUE if all routers on this interface are
 958:             using the Bidirectional-PIM Capable option."
 959:     REFERENCE "I-D.ietf-pim-bidir section 3.2 and 3.7.4"
 960:     ::= { pimInterfaceEntry 21 }
 961: 
 962: pimInterfaceDomainBorder OBJECT-TYPE
 963:     SYNTAX     TruthValue
 964:     MAX-ACCESS read-create
 965:     STATUS     current
 966:     DESCRIPTION
 967:             "Whether or not this interface is a PIM domain border.  This
 968:             includes acting as a border for PIM Bootstrap Router (BSR)
 969:             messages, if the BSR mechanism is in use."
 970:     DEFVAL { false }
 971:     ::= { pimInterfaceEntry 22 }
 972: 
 973: pimInterfaceStubInterface OBJECT-TYPE
 974:     SYNTAX     TruthValue
 975:     MAX-ACCESS read-create
 976:     STATUS     current
 977:     DESCRIPTION
 978:             "Whether this interface is a 'stub interface'.  If this
 979:             object is set to TRUE, then no PIM packets are sent out this
 980:             interface, and any received PIM packets are ignored.
 981: 
 982:             Setting this object to TRUE is a security measure for
 983:             interfaces towards untrusted hosts.  This allows an
 984:             interface to be configured for use with IGMP (Internet Group
 985:             Management Protocol) or MLD (Multicast Listener Discovery)
 986:             only, which protects the PIM router from forged PIM messages
 987:             on the interface.
 988: 
 989:             To communicate with other PIM routers using this interface,
 990:             this object must remain set to FALSE.
 991: 
 992:             Changing the value of this object while the interface is
 993:             operational causes the interface to be deactivated and
 994:             then reactivated."
 995:     REFERENCE "RFC 3376, RFC 3810"
 996:     DEFVAL { false }
 997:     ::= { pimInterfaceEntry 23 }
 998: 
 999: pimInterfacePruneLimitInterval OBJECT-TYPE
1000:     SYNTAX     Unsigned32 (0..65535)
1001:     UNITS      "seconds"
1002:     MAX-ACCESS read-create
1003:     STATUS     current
1004:     DESCRIPTION
1005:             "The minimum interval that must transpire between two
1006:             successive Prunes sent by a router.  This object corresponds
1007:             to the 't_limit' timer value defined in the PIM-DM
1008:             specification.  This object is used only by PIM-DM."
1009:     REFERENCE "RFC 3973 section 4.8"
1010:     DEFVAL { 60 }
1011:     ::= { pimInterfaceEntry 24 }
1012: 
1013: pimInterfaceGraftRetryInterval OBJECT-TYPE
1014:     SYNTAX     Unsigned32 (0..65535)
1015:     UNITS      "seconds"
1016:     MAX-ACCESS read-create
1017:     STATUS     current
1018:     DESCRIPTION
1019:             "The minimum interval that must transpire between two
1020:             successive Grafts sent by a router.  This object corresponds
1021:             to the 'Graft_Retry_Period' timer value defined in the
1022:             PIM-DM specification.  This object is used only by PIM-DM."
1023:     REFERENCE "RFC 3973 section 4.8"
1024:     DEFVAL { 3 }
1025:     ::= { pimInterfaceEntry 25 }
1026: 
1027: pimInterfaceSRPriorityEnabled OBJECT-TYPE
1028:     SYNTAX     TruthValue
1029:     MAX-ACCESS read-only
1030:     STATUS     current
1031:     DESCRIPTION
1032:             "Evaluates to TRUE if all routers on this interface are
1033:             using the State Refresh option.  This object is used only by
1034:             PIM-DM."
1035:     ::= { pimInterfaceEntry 26 }
1036: 
1037: pimInterfaceStatus OBJECT-TYPE
1038:     SYNTAX     RowStatus
1039:     MAX-ACCESS read-create
1040:     STATUS     current
1041:     DESCRIPTION
1042:             "The status of this entry.  Creating the entry enables PIM
1043:             on the interface; destroying the entry disables PIM on the
1044:             interface.
1045: 
1046:             This status object can be set to active(1) without setting
1047:             any other columnar objects in this entry.
1048: 
1049:             All writeable objects in this entry can be modified when the
1050:             status of this entry is active(1)."
1051:     ::= { pimInterfaceEntry 27 }
1052: 
1053: pimInterfaceStorageType OBJECT-TYPE
1054:     SYNTAX      StorageType
1055:     MAX-ACCESS  read-create
1056:     STATUS      current
1057:     DESCRIPTION
1058:             "The storage type for this row.  Rows having the value
1059:             'permanent' need not allow write-access to any columnar
1060:             objects in the row."
1061:        DEFVAL { nonVolatile }
1062:     ::= { pimInterfaceEntry 28 }
1063: 
1064: --
1065: -- The PIM Neighbor Table
1066: --
1067: 
1068: pimNeighborTable OBJECT-TYPE
1069:     SYNTAX     SEQUENCE OF PimNeighborEntry
1070:     MAX-ACCESS not-accessible
1071:     STATUS     current
1072:     DESCRIPTION
1073:             "The (conceptual) table listing the router's PIM neighbors."
1074:     ::= { pim 2 }
1075: 
1076: pimNeighborEntry OBJECT-TYPE
1077:     SYNTAX     PimNeighborEntry
1078:     MAX-ACCESS not-accessible
1079:     STATUS     current
1080:     DESCRIPTION
1081:             "An entry (conceptual row) in the pimNeighborTable."
1082:     INDEX      { pimNeighborIfIndex,
1083:                  pimNeighborAddressType,
1084:                  pimNeighborAddress }
1085:     ::= { pimNeighborTable 1 }
1086: 
1087: PimNeighborEntry ::= SEQUENCE {
1088:     pimNeighborIfIndex              InterfaceIndex,
1089:     pimNeighborAddressType          InetAddressType,
1090:     pimNeighborAddress              InetAddress,
1091:     pimNeighborGenerationIDPresent  TruthValue,
1092:     pimNeighborGenerationIDValue    Unsigned32,
1093:     pimNeighborUpTime               TimeTicks,
1094:     pimNeighborExpiryTime           TimeTicks,
1095:     pimNeighborDRPriorityPresent    TruthValue,
1096:     pimNeighborDRPriority           Unsigned32,
1097:     pimNeighborLanPruneDelayPresent TruthValue,
1098:     pimNeighborTBit                 TruthValue,
1099:     pimNeighborPropagationDelay     Unsigned32,
1100:     pimNeighborOverrideInterval     Unsigned32,
1101:     pimNeighborBidirCapable         TruthValue,
1102:     pimNeighborSRCapable            TruthValue
1103: }
1104: 
1105: pimNeighborIfIndex OBJECT-TYPE
1106:     SYNTAX     InterfaceIndex
1107:     MAX-ACCESS not-accessible
1108:     STATUS     current
1109:     DESCRIPTION
1110:             "The value of ifIndex for the interface used to reach this
1111:             PIM neighbor."
1112:     ::= { pimNeighborEntry 1 }
1113: 
1114: pimNeighborAddressType OBJECT-TYPE
1115:     SYNTAX     InetAddressType
1116:     MAX-ACCESS not-accessible
1117:     STATUS     current
1118:     DESCRIPTION
1119:             "The address type of this PIM neighbor."
1120:     ::= { pimNeighborEntry 2 }
1121: 
1122: pimNeighborAddress OBJECT-TYPE
1123:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1124:     MAX-ACCESS not-accessible
1125:     STATUS     current
1126:     DESCRIPTION
1127:             "The primary IP address of this PIM neighbor.  The
1128:             InetAddressType is given by the pimNeighborAddressType
1129:             object."
1130:     ::= { pimNeighborEntry 3 }
1131: 
1132: pimNeighborGenerationIDPresent OBJECT-TYPE
1133:     SYNTAX     TruthValue
1134:     MAX-ACCESS read-only
1135:     STATUS     current
1136:     DESCRIPTION
1137:             "Evaluates to TRUE if this neighbor is using the Generation
1138:             ID option."
1139:     REFERENCE "RFC 4601 section 4.3.1"
1140:     ::= { pimNeighborEntry 4 }
1141: 
1142: pimNeighborGenerationIDValue OBJECT-TYPE
1143:     SYNTAX     Unsigned32
1144:     MAX-ACCESS read-only
1145:     STATUS     current
1146:     DESCRIPTION
1147:             "The value of the Generation ID from the last PIM Hello
1148:             message received from this neighbor.  This object is always
1149:             zero if pimNeighborGenerationIDPresent is FALSE."
1150:     REFERENCE "RFC 4601 section 4.3.1"
1151:     ::= { pimNeighborEntry 5 }
1152: 
1153: pimNeighborUpTime OBJECT-TYPE
1154:     SYNTAX     TimeTicks
1155:     MAX-ACCESS read-only
1156:     STATUS     current
1157:     DESCRIPTION
1158:             "The time since this PIM neighbor (last) became a neighbor
1159:             of the local router."
1160:     ::= { pimNeighborEntry 6 }
1161: 
1162: pimNeighborExpiryTime OBJECT-TYPE
1163:     SYNTAX     TimeTicks
1164:     MAX-ACCESS read-only
1165:     STATUS     current
1166:     DESCRIPTION
1167:             "The minimum time remaining before this PIM neighbor will
1168:             be aged out.  The value zero indicates that this PIM
1169:             neighbor will never be aged out."
1170:     ::= { pimNeighborEntry 7 }
1171: 
1172: pimNeighborDRPriorityPresent OBJECT-TYPE
1173:     SYNTAX     TruthValue
1174:     MAX-ACCESS read-only
1175:     STATUS     current
1176:     DESCRIPTION
1177:             "Evaluates to TRUE if this neighbor is using the DR Priority
1178:             option."
1179:     REFERENCE "RFC 4601 section 4.3.2"
1180:     ::= { pimNeighborEntry 8 }
1181: 
1182: pimNeighborDRPriority OBJECT-TYPE
1183:     SYNTAX     Unsigned32
1184:     MAX-ACCESS read-only
1185:     STATUS     current
1186:     DESCRIPTION
1187:             "The value of the Designated Router Priority from the last
1188:             PIM Hello message received from this neighbor.  This object
1189:             is always zero if pimNeighborDRPriorityPresent is FALSE."
1190:     REFERENCE "RFC 4601 section 4.3.2"
1191:     ::= { pimNeighborEntry 9 }
1192: 
1193: pimNeighborLanPruneDelayPresent OBJECT-TYPE
1194:     SYNTAX     TruthValue
1195:     MAX-ACCESS read-only
1196:     STATUS     current
1197:     DESCRIPTION
1198:             "Evaluates to TRUE if this neighbor is using the LAN Prune
1199:             Delay option."
1200:     REFERENCE "RFC 4601 section 4.3.3"
1201:     ::= { pimNeighborEntry 10 }
1202: 
1203: pimNeighborTBit OBJECT-TYPE
1204:     SYNTAX     TruthValue
1205:     MAX-ACCESS read-only
1206:     STATUS     current
1207:     DESCRIPTION
1208:             "Whether the T bit was set in the LAN Prune Delay option
1209:             received from this neighbor.  The T bit specifies the
1210:             ability of the neighbor to disable join suppression.  This
1211:             object is always TRUE if pimNeighborLanPruneDelayPresent is
1212:             FALSE."
1213:     REFERENCE "RFC 4601 section 4.3.3"
1214:     ::= { pimNeighborEntry 11 }
1215: 
1216: pimNeighborPropagationDelay OBJECT-TYPE
1217:     SYNTAX     Unsigned32 (0..32767)
1218:     MAX-ACCESS read-only
1219:     STATUS     current
1220:     DESCRIPTION
1221:             "The value of the Propagation_Delay field of the LAN Prune
1222:             Delay option received from this neighbor.  This object is
1223:             always zero if pimNeighborLanPruneDelayPresent is FALSE."
1224:     REFERENCE "RFC 4601 section 4.3.3"
1225:     ::= { pimNeighborEntry 12 }
1226: 
1227: pimNeighborOverrideInterval OBJECT-TYPE
1228:     SYNTAX     Unsigned32 (0..65535)
1229:     MAX-ACCESS read-only
1230:     STATUS     current
1231:     DESCRIPTION
1232:             "The value of the Override_Interval field of the LAN Prune
1233:             Delay option received from this neighbor.  This object is
1234:             always zero if pimNeighborLanPruneDelayPresent is FALSE."
1235:     REFERENCE "RFC 4601 section 4.3.3"
1236:     ::= { pimNeighborEntry 13 }
1237: 
1238: pimNeighborBidirCapable OBJECT-TYPE
1239:     SYNTAX     TruthValue
1240:     MAX-ACCESS read-only
1241:     STATUS     current
1242:     DESCRIPTION
1243:             "Evaluates to TRUE if this neighbor is using the
1244:             Bidirectional-PIM Capable option."
1245:     REFERENCE "I-D.ietf-pim-bidir section 3.2 and 3.7.4"
1246:     ::= { pimNeighborEntry 14 }
1247: 
1248: pimNeighborSRCapable OBJECT-TYPE
1249:     SYNTAX     TruthValue
1250:     MAX-ACCESS read-only
1251:     STATUS     current
1252:     DESCRIPTION
1253:             "Evaluates to TRUE if this neighbor is using the State
1254:             Refresh Capable option.  This object is used only by
1255:             PIM-DM."
1256:     REFERENCE "RFC 3973 section 4.3.4"
1257:     ::= { pimNeighborEntry 15 }
1258: 
1259: --
1260: -- The PIM Neighbor Secondary Address Table
1261: --
1262: 
1263: pimNbrSecAddressTable OBJECT-TYPE
1264:     SYNTAX     SEQUENCE OF PimNbrSecAddressEntry
1265:     MAX-ACCESS not-accessible
1266:     STATUS     current
1267:     DESCRIPTION
1268:             "The (conceptual) table listing the secondary addresses
1269:             advertised by each PIM neighbor (on a subset of the rows of
1270:             the pimNeighborTable defined above)."
1271:     REFERENCE "RFC 4601 section 4.3.4"
1272:     ::= { pim 3 }
1273: 
1274: pimNbrSecAddressEntry OBJECT-TYPE
1275:     SYNTAX     PimNbrSecAddressEntry
1276:     MAX-ACCESS not-accessible
1277:     STATUS     current
1278:     DESCRIPTION
1279:             "An entry (conceptual row) in the pimNbrSecAddressTable."
1280:     INDEX      { pimNbrSecAddressIfIndex,
1281:                  pimNbrSecAddressType,
1282:                  pimNbrSecAddressPrimary,
1283:                  pimNbrSecAddress }
1284:     ::= { pimNbrSecAddressTable 1 }
1285: 
1286: PimNbrSecAddressEntry ::= SEQUENCE {
1287:     pimNbrSecAddressIfIndex InterfaceIndex,
1288:     pimNbrSecAddressType    InetAddressType,
1289:     pimNbrSecAddressPrimary InetAddress,
1290:     pimNbrSecAddress        InetAddress
1291: }
1292: 
1293: pimNbrSecAddressIfIndex OBJECT-TYPE
1294:     SYNTAX     InterfaceIndex
1295:     MAX-ACCESS not-accessible
1296:     STATUS     current
1297:     DESCRIPTION
1298:             "The value of ifIndex for the interface used to reach this
1299:             PIM neighbor."
1300:     ::= { pimNbrSecAddressEntry 1 }
1301: 
1302: pimNbrSecAddressType OBJECT-TYPE
1303:     SYNTAX     InetAddressType
1304:     MAX-ACCESS not-accessible
1305:     STATUS     current
1306:     DESCRIPTION
1307:             "The address type of this PIM neighbor."
1308:     ::= { pimNbrSecAddressEntry 2 }
1309: 
1310: pimNbrSecAddressPrimary OBJECT-TYPE
1311:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1312:     MAX-ACCESS not-accessible
1313:     STATUS     current
1314:     DESCRIPTION
1315:             "The primary IP address of this PIM neighbor.  The
1316:             InetAddressType is given by the pimNbrSecAddressType
1317:             object."
1318:     ::= { pimNbrSecAddressEntry 3 }
1319: 
1320: pimNbrSecAddress OBJECT-TYPE
1321:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1322:     MAX-ACCESS read-only
1323:     STATUS     current
1324:     DESCRIPTION
1325:             "The secondary IP address of this PIM neighbor.  The
1326:             InetAddressType is given by the pimNbrSecAddressType
1327:             object."
1328:     ::= { pimNbrSecAddressEntry 4 }
1329: 
1330: --
1331: -- The PIM (*,G) State Table
1332: --
1333: 
1334: pimStarGTable OBJECT-TYPE
1335:     SYNTAX     SEQUENCE OF PimStarGEntry
1336:     MAX-ACCESS not-accessible
1337:     STATUS     current
1338:     DESCRIPTION
1339:             "The (conceptual) table listing the non-interface specific
1340:             (*,G) state that PIM has."
1341:     REFERENCE "RFC 4601 section 4.1.3"
1342:     ::= { pim 4 }
1343: 
1344: pimStarGEntry OBJECT-TYPE
1345:     SYNTAX     PimStarGEntry
1346:     MAX-ACCESS not-accessible
1347:     STATUS     current
1348:     DESCRIPTION
1349:             "An entry (conceptual row) in the pimStarGTable."
1350:     INDEX      { pimStarGAddressType,
1351:                  pimStarGGrpAddress }
1352:     ::= { pimStarGTable 1 }
1353: 
1354: PimStarGEntry ::= SEQUENCE {
1355:     pimStarGAddressType             InetAddressType,
1356:     pimStarGGrpAddress              InetAddress,
1357:     pimStarGUpTime                  TimeTicks,
1358:     pimStarGPimMode                 PimMode,
1359:     pimStarGRPAddressType           InetAddressType,
1360:     pimStarGRPAddress               InetAddress,
1361:     pimStarGPimModeOrigin           PimGroupMappingOriginType,
1362:     pimStarGRPIsLocal               TruthValue,
1363:     pimStarGUpstreamJoinState       INTEGER,
1364:     pimStarGUpstreamJoinTimer       TimeTicks,
1365:     pimStarGUpstreamNeighborType    InetAddressType,
1366:     pimStarGUpstreamNeighbor        InetAddress,
1367:     pimStarGRPFIfIndex              InterfaceIndexOrZero,
1368:     pimStarGRPFNextHopType          InetAddressType,
1369:     pimStarGRPFNextHop              InetAddress,
1370:     pimStarGRPFRouteProtocol        IANAipRouteProtocol,
1371:     pimStarGRPFRouteAddress         InetAddress,
1372:     pimStarGRPFRoutePrefixLength    InetAddressPrefixLength,
1373:     pimStarGRPFRouteMetricPref      Unsigned32,
1374:     pimStarGRPFRouteMetric          Unsigned32
1375: }
1376: 
1377: pimStarGAddressType OBJECT-TYPE
1378:     SYNTAX     InetAddressType
1379:     MAX-ACCESS not-accessible
1380:     STATUS     current
1381:     DESCRIPTION
1382:             "The address type of this multicast group."
1383:     ::= { pimStarGEntry 1 }
1384: 
1385: pimStarGGrpAddress OBJECT-TYPE
1386:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1387:     MAX-ACCESS not-accessible
1388:     STATUS     current
1389:     DESCRIPTION
1390:             "The multicast group address.  The InetAddressType is given
1391:             by the pimStarGAddressType object."
1392:     ::= { pimStarGEntry 2 }
1393: 
1394: pimStarGUpTime OBJECT-TYPE
1395:     SYNTAX     TimeTicks
1396:     MAX-ACCESS read-only
1397:     STATUS     current
1398:     DESCRIPTION
1399:             "The time since this entry was created by the local router."
1400:     ::= { pimStarGEntry 3 }
1401: 
1402: pimStarGPimMode OBJECT-TYPE
1403:     SYNTAX     PimMode { asm(3), bidir(4) }
1404:     MAX-ACCESS read-only
1405:     STATUS     current
1406:     DESCRIPTION
1407:             "Whether this entry represents an ASM (Any Source Multicast,
1408:             used with PIM-SM) or BIDIR-PIM group."
1409:     ::= { pimStarGEntry 4 }
1410: 
1411: pimStarGRPAddressType OBJECT-TYPE
1412:     SYNTAX     InetAddressType
1413:     MAX-ACCESS read-only
1414:     STATUS     current
1415:     DESCRIPTION
1416:             "The address type of the Rendezvous Point (RP), or
1417:             unknown(0) if the RP address is unknown."
1418:     ::= { pimStarGEntry 5 }
1419: 
1420: pimStarGRPAddress OBJECT-TYPE
1421:     SYNTAX     InetAddress (SIZE (0|4|16|20))
1422:     MAX-ACCESS read-only
1423:     STATUS     current
1424:     DESCRIPTION
1425:             "The address of the Rendezvous Point (RP) for the group.
1426:             The InetAddressType is given by the pimStarGRPAddressType."
1427:     ::= { pimStarGEntry 6 }
1428: 
1429: pimStarGPimModeOrigin OBJECT-TYPE
1430:     SYNTAX     PimGroupMappingOriginType
1431:     MAX-ACCESS read-only
1432:     STATUS     current
1433:     DESCRIPTION
1434:             "The mechanism by which the PIM mode and RP for the group
1435:             were learned."
1436:     ::= { pimStarGEntry 7 }
1437: 
1438: pimStarGRPIsLocal OBJECT-TYPE
1439:     SYNTAX     TruthValue
1440:     MAX-ACCESS read-only
1441:     STATUS     current
1442:     DESCRIPTION
1443:             "Whether the local router is the RP for the group."
1444:     ::= { pimStarGEntry 8 }
1445: 
1446: pimStarGUpstreamJoinState OBJECT-TYPE
1447:     SYNTAX     INTEGER {
1448:                   notJoined (1),
1449:                   joined (2)
1450:                }
1451:     MAX-ACCESS read-only
1452:     STATUS     current
1453:     DESCRIPTION
1454:             "Whether the local router should join the RP tree for the
1455:             group.  This corresponds to the state of the upstream (*,G)
1456:             state machine in the PIM-SM specification."
1457:     REFERENCE "RFC 4601 section 4.5.6"
1458:     ::= { pimStarGEntry 9 }
1459: 
1460: pimStarGUpstreamJoinTimer OBJECT-TYPE
1461:     SYNTAX     TimeTicks
1462:     MAX-ACCESS read-only
1463:     STATUS     current
1464:     DESCRIPTION
1465:             "The time remaining before the local router next sends a
1466:             periodic (*,G) Join message on pimStarGRPFIfIndex.  This
1467:             timer is called the (*,G) Upstream Join Timer in the PIM-SM
1468:             specification.  This object is zero if the timer is not
1469:             running."
1470:     REFERENCE "RFC 4601 section 4.10"
1471:     ::= { pimStarGEntry 10 }
1472: 
1473: pimStarGUpstreamNeighborType OBJECT-TYPE
1474:     SYNTAX     InetAddressType
1475:     MAX-ACCESS read-only
1476:     STATUS     current
1477:     DESCRIPTION
1478:             "The primary address type of the upstream neighbor, or
1479:             unknown(0) if the upstream neighbor address is unknown or is
1480:             not a PIM neighbor."
1481:     ::= { pimStarGEntry 11 }
1482: 
1483: pimStarGUpstreamNeighbor OBJECT-TYPE
1484:     SYNTAX     InetAddress (SIZE (0|4|16|20))
1485:     MAX-ACCESS read-only
1486:     STATUS     current
1487:     DESCRIPTION
1488:             "The primary address of the neighbor on pimStarGRPFIfIndex
1489:             that the local router is sending periodic (*,G) Join
1490:             messages to.  The InetAddressType is given by the
1491:             pimStarGUpstreamNeighborType object.  This address is called
1492:             RPF'(*,G) in the PIM-SM specification."
1493:     REFERENCE "RFC 4601 section 4.1.6"
1494:     ::= { pimStarGEntry 12 }
1495: 
1496: pimStarGRPFIfIndex OBJECT-TYPE
1497:     SYNTAX     InterfaceIndexOrZero
1498:     MAX-ACCESS read-only
1499:     STATUS     current
1500:     DESCRIPTION
1501:             "The value of ifIndex for the RPF interface towards the RP,
1502:             or zero if the RPF interface is unknown."
1503:     ::= { pimStarGEntry 13 }
1504: 
1505: pimStarGRPFNextHopType OBJECT-TYPE
1506:     SYNTAX     InetAddressType
1507:     MAX-ACCESS read-only
1508:     STATUS     current
1509:     DESCRIPTION
1510:             "The address type of the RPF next hop towards the RP, or
1511:             unknown(0) if the RPF next hop is unknown."
1512:     ::= { pimStarGEntry 14 }
1513: 
1514: pimStarGRPFNextHop OBJECT-TYPE
1515:     SYNTAX     InetAddress (SIZE (0|4|16|20))
1516:     MAX-ACCESS read-only
1517:     STATUS     current
1518:     DESCRIPTION
1519:             "The address of the RPF next hop towards the RP.  The
1520:             InetAddressType is given by the pimStarGRPFNextHopType
1521:             object.  This address is called MRIB.next_hop(RP(G))
1522:             in the PIM-SM specification."
1523:     REFERENCE "RFC 4601 section 4.5.5"
1524:     ::= { pimStarGEntry 15 }
1525: 
1526: pimStarGRPFRouteProtocol OBJECT-TYPE
1527:     SYNTAX     IANAipRouteProtocol
1528:     MAX-ACCESS read-only
1529:     STATUS     current
1530:     DESCRIPTION
1531:             "The routing mechanism via which the route used to find the
1532:             RPF interface towards the RP was learned."
1533:     ::= { pimStarGEntry 16 }
1534: 
1535: pimStarGRPFRouteAddress OBJECT-TYPE
1536:     SYNTAX     InetAddress (SIZE (0|4|16|20))
1537:     MAX-ACCESS read-only
1538:     STATUS     current
1539:     DESCRIPTION
1540:             "The IP address which when combined with the corresponding
1541:             value of pimStarGRPFRoutePrefixLength identifies the route
1542:             used to find the RPF interface towards the RP.  The
1543:             InetAddressType is given by the pimStarGRPFNextHopType
1544:             object.
1545: 
1546:             This address object is only significant up to
1547:             pimStarGRPFRoutePrefixLength bits.  The remainder of the
1548:             address bits are zero."
1549:     ::= { pimStarGEntry 17 }
1550: 
1551: pimStarGRPFRoutePrefixLength OBJECT-TYPE
1552:     SYNTAX     InetAddressPrefixLength
1553:     MAX-ACCESS read-only
1554:     STATUS     current
1555:     DESCRIPTION
1556:             "The prefix length which when combined with the
1557:             corresponding value of pimStarGRPFRouteAddress identifies
1558:             the route used to find the RPF interface towards the RP.
1559:             The InetAddressType is given by the pimStarGRPFNextHopType
1560:             object."
1561:     ::= { pimStarGEntry 18 }
1562: 
1563: pimStarGRPFRouteMetricPref OBJECT-TYPE
1564:     SYNTAX     Unsigned32 (0..2147483647)
1565:     MAX-ACCESS read-only
1566:     STATUS     current
1567:     DESCRIPTION
1568:             "The metric preference of the route used to find the RPF
1569:             interface towards the RP."
1570:     ::= { pimStarGEntry 19 }
1571: 
1572: pimStarGRPFRouteMetric OBJECT-TYPE
1573:     SYNTAX     Unsigned32
1574:     MAX-ACCESS read-only
1575:     STATUS     current
1576:     DESCRIPTION
1577:             "The routing metric of the route used to find the RPF
1578:             interface towards the RP."
1579:     ::= { pimStarGEntry 20 }
1580: 
1581: --
1582: -- The PIM (*,G,I) State Table
1583: --
1584: 
1585: pimStarGITable OBJECT-TYPE
1586:     SYNTAX     SEQUENCE OF PimStarGIEntry
1587:     MAX-ACCESS not-accessible
1588:     STATUS     current
1589:     DESCRIPTION
1590:             "The (conceptual) table listing the interface-specific (*,G)
1591:             state that PIM has."
1592:     REFERENCE "RFC 4601 section 4.1.3"
1593:     ::= { pim 5 }
1594: 
1595: pimStarGIEntry OBJECT-TYPE
1596:     SYNTAX     PimStarGIEntry
1597:     MAX-ACCESS not-accessible
1598:     STATUS     current
1599:     DESCRIPTION
1600:             "An entry (conceptual row) in the pimStarGITable."
1601:     INDEX      { pimStarGAddressType,
1602:                  pimStarGGrpAddress,
1603:                  pimStarGIIfIndex }
1604:     ::= { pimStarGITable 1 }
1605: 
1606: PimStarGIEntry ::= SEQUENCE {
1607:     pimStarGIIfIndex                 InterfaceIndex,
1608:     pimStarGIUpTime                  TimeTicks,
1609:     pimStarGILocalMembership         TruthValue,
1610:     pimStarGIJoinPruneState          INTEGER,
1611:     pimStarGIPrunePendingTimer       TimeTicks,
1612:     pimStarGIJoinExpiryTimer         TimeTicks,
1613:     pimStarGIAssertState             INTEGER,
1614:     pimStarGIAssertTimer             TimeTicks,
1615:     pimStarGIAssertWinnerAddressType InetAddressType,
1616:     pimStarGIAssertWinnerAddress     InetAddress,
1617:     pimStarGIAssertWinnerMetricPref  Unsigned32,
1618:     pimStarGIAssertWinnerMetric      Unsigned32
1619: }
1620: 
1621: pimStarGIIfIndex OBJECT-TYPE
1622:     SYNTAX     InterfaceIndex
1623:     MAX-ACCESS not-accessible
1624:     STATUS     current
1625:     DESCRIPTION
1626:             "The ifIndex of the interface that this entry corresponds
1627:             to."
1628:     ::= { pimStarGIEntry 1 }
1629: 
1630: pimStarGIUpTime OBJECT-TYPE
1631:     SYNTAX     TimeTicks
1632:     MAX-ACCESS read-only
1633:     STATUS     current
1634:     DESCRIPTION
1635:             "The time since this entry was created by the local router."
1636:     ::= { pimStarGIEntry 2 }
1637: 
1638: pimStarGILocalMembership OBJECT-TYPE
1639:     SYNTAX     TruthValue
1640:     MAX-ACCESS read-only
1641:     STATUS     current
1642:     DESCRIPTION
1643:             "Whether the local router has (*,G) local membership on this
1644:             interface (resulting from a mechanism such as IGMP or MLD).
1645:             This corresponds to local_receiver_include(*,G,I) in the
1646:             PIM-SM specification."
1647:     REFERENCE "RFC 3376, RFC 3810, RFC 4601 section 4.1.6"
1648:     ::= { pimStarGIEntry 3 }
1649: 
1650: pimStarGIJoinPruneState OBJECT-TYPE
1651:     SYNTAX     INTEGER {
1652:                   noInfo (1),
1653:                   join (2),
1654:                   prunePending (3)
1655:                }
1656:     MAX-ACCESS read-only
1657:     STATUS     current
1658:     DESCRIPTION
1659:             "The state resulting from (*,G) Join/Prune messages
1660:             received on this interface.  This corresponds to the state
1661:             of the downstream per-interface (*,G) state machine in the
1662:             PIM-SM specification."
1663:     REFERENCE "RFC 4601 section 4.5.2"
1664:     ::= { pimStarGIEntry 4 }
1665: 
1666: pimStarGIPrunePendingTimer OBJECT-TYPE
1667:     SYNTAX     TimeTicks
1668:     MAX-ACCESS read-only
1669:     STATUS     current
1670:     DESCRIPTION
1671:             "The time remaining before the local router acts on a (*,G)
1672:             Prune message received on this interface, during which the
1673:             router is waiting to see whether another downstream router
1674:             will override the Prune message.  This timer is called the
1675:             (*,G) Prune-Pending Timer in the PIM-SM specification.  This
1676:             object is zero if the timer is not running."
1677:     REFERENCE "RFC 4601 section 4.5.1"
1678:     ::= { pimStarGIEntry 5 }
1679: 
1680: pimStarGIJoinExpiryTimer OBJECT-TYPE
1681:     SYNTAX     TimeTicks
1682:     MAX-ACCESS read-only
1683:     STATUS     current
1684:     DESCRIPTION
1685:             "The time remaining before (*,G) Join state for this
1686:             interface expires.  This timer is called the (*,G) Join
1687:             Expiry Timer in the PIM-SM specification.  This object is
1688:             zero if the timer is not running.  A value of 'FFFFFFFF'h
1689:             indicates an infinite expiry time."
1690:     REFERENCE "RFC 4601 section 4.10"
1691:     ::= { pimStarGIEntry 6 }
1692: 
1693: pimStarGIAssertState OBJECT-TYPE
1694:     SYNTAX     INTEGER {
1695:                   noInfo (1),
1696:                   iAmAssertWinner (2),
1697:                   iAmAssertLoser (3)
1698:                }
1699:     MAX-ACCESS read-only
1700:     STATUS     current
1701:     DESCRIPTION
1702:             "The (*,G) Assert state for this interface.  This
1703:             corresponds to the state of the per-interface (*,G) Assert
1704:             state machine in the PIM-SM specification.  If
1705:             pimStarGPimMode is 'bidir', this object must be 'noInfo'."
1706:     REFERENCE "RFC 4601 section 4.6.2"
1707:     ::= { pimStarGIEntry 7 }
1708: 
1709: pimStarGIAssertTimer OBJECT-TYPE
1710:     SYNTAX     TimeTicks
1711:     MAX-ACCESS read-only
1712:     STATUS     current
1713:     DESCRIPTION
1714:             "If pimStarGIAssertState is 'iAmAssertWinner', this is the
1715:             time remaining before the local router next sends a (*,G)
1716:             Assert message on this interface.  If pimStarGIAssertState
1717:             is 'iAmAssertLoser', this is the time remaining before the
1718:             (*,G) Assert state expires.  If pimStarGIAssertState is
1719:             'noInfo', this is zero.  This timer is called the (*,G)
1720:             Assert Timer in the PIM-SM specification."
1721:     REFERENCE "RFC 4601 section 4.6.2"
1722:     ::= { pimStarGIEntry 8 }
1723: 
1724: pimStarGIAssertWinnerAddressType OBJECT-TYPE
1725:     SYNTAX     InetAddressType
1726:     MAX-ACCESS read-only
1727:     STATUS     current
1728:     DESCRIPTION
1729:             "If pimStarGIAssertState is 'iAmAssertLoser', this is the
1730:             address type of the assert winner; otherwise, this object is
1731:             unknown(0)."
1732:     ::= { pimStarGIEntry 9 }
1733: 
1734: pimStarGIAssertWinnerAddress OBJECT-TYPE
1735:     SYNTAX     InetAddress (SIZE (0|4|16|20))
1736:     MAX-ACCESS read-only
1737:     STATUS     current
1738:     DESCRIPTION
1739:             "If pimStarGIAssertState is 'iAmAssertLoser', this is the
1740:             address of the assert winner.  The InetAddressType is given
1741:             by the pimStarGIAssertWinnerAddressType object."
1742:     ::= { pimStarGIEntry 10 }
1743: 
1744: pimStarGIAssertWinnerMetricPref OBJECT-TYPE
1745:     SYNTAX     Unsigned32 (0..2147483647)
1746:     MAX-ACCESS read-only
1747:     STATUS     current
1748:     DESCRIPTION
1749:             "If pimStarGIAssertState is 'iAmAssertLoser', this is the
1750:             metric preference of the route to the RP advertised by the
1751:             assert winner; otherwise, this object is zero."
1752:     ::= { pimStarGIEntry 11 }
1753: 
1754: pimStarGIAssertWinnerMetric OBJECT-TYPE
1755:     SYNTAX     Unsigned32
1756:     MAX-ACCESS read-only
1757:     STATUS     current
1758:     DESCRIPTION
1759:             "If pimStarGIAssertState is 'iAmAssertLoser', this is the
1760:             routing metric of the route to the RP advertised by the
1761:             assert winner; otherwise, this object is zero."
1762:     ::= { pimStarGIEntry 12 }
1763: 
1764: --
1765: -- The PIM (S,G) State Table
1766: --
1767: pimSGTable OBJECT-TYPE
1768:     SYNTAX     SEQUENCE OF PimSGEntry
1769:     MAX-ACCESS not-accessible
1770:     STATUS     current
1771:     DESCRIPTION
1772:             "The (conceptual) table listing the non-interface specific
1773:             (S,G) state that PIM has."
1774:     REFERENCE "RFC 4601 section 4.1.4"
1775:     ::= { pim 6 }
1776: 
1777: pimSGEntry OBJECT-TYPE
1778:     SYNTAX     PimSGEntry
1779:     MAX-ACCESS not-accessible
1780:     STATUS     current
1781:     DESCRIPTION
1782:             "An entry (conceptual row) in the pimSGTable."
1783:     INDEX      { pimSGAddressType,
1784:                  pimSGGrpAddress,
1785:                  pimSGSrcAddress }
1786:     ::= { pimSGTable 1 }
1787: 
1788: PimSGEntry ::= SEQUENCE {
1789:     pimSGAddressType               InetAddressType,
1790:     pimSGGrpAddress                InetAddress,
1791:     pimSGSrcAddress                InetAddress,
1792:     pimSGUpTime                    TimeTicks,
1793:     pimSGPimMode                   PimMode,
1794:     pimSGUpstreamJoinState         INTEGER,
1795:     pimSGUpstreamJoinTimer         TimeTicks,
1796:     pimSGUpstreamNeighbor          InetAddress,
1797:     pimSGRPFIfIndex                InterfaceIndexOrZero,
1798:     pimSGRPFNextHopType            InetAddressType,
1799:     pimSGRPFNextHop                InetAddress,
1800:     pimSGRPFRouteProtocol          IANAipRouteProtocol,
1801:     pimSGRPFRouteAddress           InetAddress,
1802:     pimSGRPFRoutePrefixLength      InetAddressPrefixLength,
1803:     pimSGRPFRouteMetricPref        Unsigned32,
1804:     pimSGRPFRouteMetric            Unsigned32,
1805:     pimSGSPTBit                    TruthValue,
1806:     pimSGKeepaliveTimer            TimeTicks,
1807:     pimSGDRRegisterState           INTEGER,
1808:     pimSGDRRegisterStopTimer       TimeTicks,
1809:     pimSGRPRegisterPMBRAddressType InetAddressType,
1810:     pimSGRPRegisterPMBRAddress     InetAddress,
1811:     pimSGUpstreamPruneState        INTEGER,
1812:     pimSGUpstreamPruneLimitTimer   TimeTicks,
1813:     pimSGOriginatorState           INTEGER,
1814:     pimSGSourceActiveTimer         TimeTicks,
1815:     pimSGStateRefreshTimer         TimeTicks
1816: }
1817: 
1818: pimSGAddressType OBJECT-TYPE
1819:     SYNTAX     InetAddressType
1820:     MAX-ACCESS not-accessible
1821:     STATUS     current
1822:     DESCRIPTION
1823:             "The address type of the source and multicast group for this
1824:             entry."
1825:     ::= { pimSGEntry 1 }
1826: 
1827: pimSGGrpAddress OBJECT-TYPE
1828:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1829:     MAX-ACCESS not-accessible
1830:     STATUS     current
1831:     DESCRIPTION
1832:             "The multicast group address for this entry.  The
1833:             InetAddressType is given by the pimSGAddressType object."
1834:     ::= { pimSGEntry 2 }
1835: 
1836: pimSGSrcAddress OBJECT-TYPE
1837:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1838:     MAX-ACCESS not-accessible
1839:     STATUS     current
1840:     DESCRIPTION
1841:             "The source address for this entry.  The InetAddressType is
1842:             given by the pimSGAddressType object."
1843:     ::= { pimSGEntry 3 }
1844: 
1845: pimSGUpTime OBJECT-TYPE
1846:     SYNTAX     TimeTicks
1847:     MAX-ACCESS read-only
1848:     STATUS     current
1849:     DESCRIPTION
1850:             "The time since this entry was created by the local router."
1851:     ::= { pimSGEntry 4 }
1852: 
1853: pimSGPimMode OBJECT-TYPE
1854:     SYNTAX     PimMode { ssm(2), asm(3) }
1855:     MAX-ACCESS read-only
1856:     STATUS     current
1857:     DESCRIPTION
1858:             "Whether pimSGGrpAddress is an SSM (Source Specific
1859:             Multicast, used with PIM-SM) or ASM (Any Source Multicast,
1860:             used with PIM-SM) group."
1861:     REFERENCE "RFC 4601 section 4.5.2, RFC 3569 and
1862:                I-D.ietf-mboned-ip-mcast-mib ipMcastSsmRangeTable"
1863:     ::= { pimSGEntry 5 }
1864: 
1865: pimSGUpstreamJoinState OBJECT-TYPE
1866:     SYNTAX     INTEGER {
1867:                   notJoined (1),
1868:                   joined (2)
1869:                }
1870:     MAX-ACCESS read-only
1871:     STATUS     current
1872:     DESCRIPTION
1873:             "Whether the local router should join the shortest-path tree
1874:             for the source and group represented by this entry.  This
1875:             corresponds to the state of the upstream (S,G) state machine
1876:             in the PIM-SM specification."
1877:     REFERENCE "RFC 4601 section 4.5.7"
1878:     ::= { pimSGEntry 6 }
1879: 
1880: pimSGUpstreamJoinTimer OBJECT-TYPE
1881:     SYNTAX     TimeTicks
1882:     MAX-ACCESS read-only
1883:     STATUS     current
1884:     DESCRIPTION
1885:             "The time remaining before the local router next sends a
1886:             periodic (S,G) Join message on pimSGRPFIfIndex.  This timer
1887:             is called the (S,G) Upstream Join Timer in the PIM-SM
1888:             specification.  This object is zero if the timer is not
1889:             running."
1890:     REFERENCE "RFC 4601 section 4.10 and 4.11"
1891:     ::= { pimSGEntry 7 }
1892: 
1893: pimSGUpstreamNeighbor OBJECT-TYPE
1894:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1895:     MAX-ACCESS read-only
1896:     STATUS     current
1897:     DESCRIPTION
1898:             "The primary address of the neighbor on pimSGRPFIfIndex that
1899:             the local router is sending periodic (S,G) Join messages to.
1900:             This is zero if the RPF next hop is unknown or is not a
1901:             PIM neighbor.  The InetAddressType is given by the
1902:             pimSGAddressType object.  This address is called RPF'(S,G)
1903:             in the PIM-SM specification."
1904:     REFERENCE "RFC 4601 section 4.1.6"
1905:     ::= { pimSGEntry 8 }
1906: 
1907: pimSGRPFIfIndex OBJECT-TYPE
1908:     SYNTAX     InterfaceIndexOrZero
1909:     MAX-ACCESS read-only
1910:     STATUS     current
1911:     DESCRIPTION
1912:             "The value of ifIndex for the RPF interface towards the
1913:             source, or zero if the RPF interface is unknown."
1914:     ::= { pimSGEntry 9 }
1915: 
1916: pimSGRPFNextHopType OBJECT-TYPE
1917:     SYNTAX     InetAddressType
1918:     MAX-ACCESS read-only
1919:     STATUS     current
1920:     DESCRIPTION
1921:             "The address type of the RPF next hop towards the source, or
1922:             unknown(0) if the RPF next hop is unknown."
1923:     ::= { pimSGEntry 10 }
1924: 
1925: pimSGRPFNextHop OBJECT-TYPE
1926:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1927:     MAX-ACCESS read-only
1928:     STATUS     current
1929:     DESCRIPTION
1930:             "The address of the RPF next hop towards the source.  The
1931:             InetAddressType is given by the pimSGRPFNextHopType.  This
1932:             address is called MRIB.next_hop(S) in the PIM-SM
1933:             specification."
1934:     REFERENCE "RFC 4601 section 4.5.5"
1935:     ::= { pimSGEntry 11 }
1936: 
1937: pimSGRPFRouteProtocol OBJECT-TYPE
1938:     SYNTAX     IANAipRouteProtocol
1939:     MAX-ACCESS read-only
1940:     STATUS     current
1941:     DESCRIPTION
1942:             "The routing mechanism via which the route used to find the
1943:             RPF interface towards the source was learned."
1944:     ::= { pimSGEntry 12 }
1945: 
1946: pimSGRPFRouteAddress OBJECT-TYPE
1947:     SYNTAX     InetAddress (SIZE (4|8|16|20))
1948:     MAX-ACCESS read-only
1949:     STATUS     current
1950:     DESCRIPTION
1951:             "The IP address which when combined with the corresponding
1952:             value of pimSGRPFRoutePrefixLength identifies the route used
1953:             to find the RPF interface towards the source.  The
1954:             InetAddressType is given by the pimSGRPFNextHopType object.
1955: 
1956:             This address object is only significant up to
1957:             pimSGRPFRoutePrefixLength bits.  The remainder of the
1958:             address bits are zero."
1959:     ::= { pimSGEntry 13 }
1960: 
1961: pimSGRPFRoutePrefixLength OBJECT-TYPE
1962:     SYNTAX     InetAddressPrefixLength
1963:     MAX-ACCESS read-only
1964:     STATUS     current
1965:     DESCRIPTION
1966:             "The prefix length which when combined with the
1967:             corresponding value of pimSGRPFRouteAddress identifies the
1968:             route used to find the RPF interface towards the source.
1969:             The InetAddressType is given by the pimSGRPFNextHopType
1970:             object."
1971:     ::= { pimSGEntry 14 }
1972: 
1973: pimSGRPFRouteMetricPref OBJECT-TYPE
1974:     SYNTAX     Unsigned32 (0..2147483647)
1975:     MAX-ACCESS read-only
1976:     STATUS     current
1977:     DESCRIPTION
1978:             "The metric preference of the route used to find the RPF
1979:             interface towards the source."
1980:     ::= { pimSGEntry 15 }
1981: 
1982: pimSGRPFRouteMetric OBJECT-TYPE
1983:     SYNTAX     Unsigned32
1984:     MAX-ACCESS read-only
1985:     STATUS     current
1986:     DESCRIPTION
1987:             "The routing metric of the route used to find the RPF
1988:             interface towards the source."
1989:     ::= { pimSGEntry 16 }
1990: 
1991: pimSGSPTBit OBJECT-TYPE
1992:     SYNTAX     TruthValue
1993:     MAX-ACCESS read-only
1994:     STATUS     current
1995:     DESCRIPTION
1996:             "Whether the SPT bit is set; and therefore whether
1997:             forwarding is taking place on the shortest-path tree."
1998:     ::= { pimSGEntry 17 }
1999: 
2000: pimSGKeepaliveTimer OBJECT-TYPE
2001:     SYNTAX     TimeTicks
2002:     MAX-ACCESS read-only
2003:     STATUS     current
2004:     DESCRIPTION
2005:             "The time remaining before, in the absence of explicit (S,G)
2006:             local membership or (S,G) Join messages received to maintain
2007:             it, this (S,G) state expires.  This timer is called the
2008:             (S,G) Keepalive Timer in the PIM-SM specification."
2009:     REFERENCE "RFC 4601 section 4.1.4"
2010:     ::= { pimSGEntry 18 }
2011: 
2012: pimSGDRRegisterState OBJECT-TYPE
2013:     SYNTAX     INTEGER {
2014:                   noInfo (1),
2015:                   join (2),
2016:                   joinPending (3),
2017:                   prune (4)
2018:                }
2019:     MAX-ACCESS read-only
2020:     STATUS     current
2021:     DESCRIPTION
2022:             "Whether the local router should encapsulate (S,G) data
2023:             packets in Register messages and send them to the RP.  This
2024:             corresponds to the state of the per-(S,G) Register state
2025:             machine in the PIM-SM specification.  This object is always
2026:             'noInfo' unless pimSGPimMode is 'asm'."
2027:     REFERENCE "RFC 4601 section 4.4.1"
2028:     ::= { pimSGEntry 19 }
2029: 
2030: pimSGDRRegisterStopTimer OBJECT-TYPE
2031:     SYNTAX     TimeTicks
2032:     MAX-ACCESS read-only
2033:     STATUS     current
2034:     DESCRIPTION
2035:             "If pimSGDRRegisterState is 'prune', this is the time
2036:             remaining before the local router sends a Null-Register
2037:             message to the RP.  If pimSGDRRegisterState is
2038:             'joinPending', this is the time remaining before the local
2039:             router resumes encapsulating data packets and sending them
2040:             to the RP.  Otherwise, this is zero.  This timer is called
2041:             the Register-Stop Timer in the PIM-SM specification."
2042:     REFERENCE "RFC 4601 section 4.4"
2043:     ::= { pimSGEntry 20 }
2044: 
2045: pimSGRPRegisterPMBRAddressType OBJECT-TYPE
2046:     SYNTAX     InetAddressType
2047:     MAX-ACCESS read-only
2048:     STATUS     current
2049:     DESCRIPTION
2050:             "The address type of the first PIM Multicast Border Router
2051:             to send a Register message with the Border bit set.  This
2052:             object is unknown(0) if the local router is not the RP for
2053:             the group."
2054:     ::= { pimSGEntry 21 }
2055: 
2056: pimSGRPRegisterPMBRAddress OBJECT-TYPE
2057:     SYNTAX     InetAddress (SIZE (0|4|16|20))
2058:     MAX-ACCESS read-only
2059:     STATUS     current
2060:     DESCRIPTION
2061:             "The IP address of the first PIM Multicast Border Router to
2062:             send a Register message with the Border bit set.  The
2063:             InetAddressType is given by the
2064:             pimSGRPRegisterPMBRAddressType object."
2065:     ::= { pimSGEntry 22 }
2066: 
2067: pimSGUpstreamPruneState OBJECT-TYPE
2068:     SYNTAX     INTEGER {
2069:                   forwarding (1),
2070:                   ackpending (2),
2071:                   pruned (3)
2072:                }
2073:     MAX-ACCESS read-only
2074:     STATUS     current
2075:     DESCRIPTION
2076:             "Whether the local router has pruned itself from the tree.
2077:             This corresponds to the state of the upstream prune (S,G)
2078:             state machine in the PIM-DM specification.  This object is
2079:             used only by PIM-DM."
2080:     REFERENCE "RFC 3973 section 4.4.1"
2081:     ::= { pimSGEntry 23 }
2082: 
2083: pimSGUpstreamPruneLimitTimer OBJECT-TYPE
2084:     SYNTAX     TimeTicks
2085:     MAX-ACCESS read-only
2086:     STATUS     current
2087:     DESCRIPTION
2088:             "The time remaining before the local router may send a (S,G)
2089:             Prune message on pimSGRPFIfIndex.  This timer is called the
2090:             (S,G) Prune Limit Timer in the PIM-DM specification.  This
2091:             object is zero if the timer is not running.  This object is
2092:             used only by PIM-DM."
2093:     REFERENCE "RFC 2973 section 4.8"
2094:     ::= { pimSGEntry 24 }
2095: 
2096: pimSGOriginatorState OBJECT-TYPE
2097:     SYNTAX     INTEGER {
2098:                   notOriginator (1),
2099:                   originator (2)
2100:                }
2101:     MAX-ACCESS read-only
2102:     STATUS     current
2103:     DESCRIPTION
2104:             "Whether the router is an originator for an (S,G) message
2105:             flow.  This corresponds to the state of the per-(S,G)
2106:             Originator state machine in the PIM-DM specification.  This
2107:             object is used only by PIM-DM."
2108:     REFERENCE "RFC 3973 section 4.5.2"
2109:     ::= { pimSGEntry 25 }
2110: 
2111: pimSGSourceActiveTimer OBJECT-TYPE
2112:     SYNTAX     TimeTicks
2113:     MAX-ACCESS read-only
2114:     STATUS     current
2115:     DESCRIPTION
2116:             "If pimSGOriginatorState is 'originator', this is the time
2117:             remaining before the local router reverts to a notOriginator
2118:             state.  Otherwise, this is zero.  This timer is called the
2119:             Source Active Timer in the PIM-DM specification.  This
2120:             object is used only by PIM-DM."
2121:     REFERENCE "RFC 3973 section 4.8"
2122:     ::= { pimSGEntry 26 }
2123: 
2124: pimSGStateRefreshTimer OBJECT-TYPE
2125:     SYNTAX     TimeTicks
2126:     MAX-ACCESS read-only
2127:     STATUS     current
2128:     DESCRIPTION
2129:             "If pimSGOriginatorState is 'originator', this is the time
2130:             remaining before the local router sends a State Refresh
2131:             message.  Otherwise, this is zero.  This timer is called the
2132:             State Refresh Timer in the PIM-DM specification.  This
2133:             object is used only by PIM-DM."
2134:     REFERENCE "RFC 3973 section 4.8"
2135:     ::= { pimSGEntry 27 }
2136: 
2137: --
2138: -- The PIM (S,G,I) State Table
2139: --
2140: 
2141: pimSGITable OBJECT-TYPE
2142:     SYNTAX     SEQUENCE OF PimSGIEntry
2143:     MAX-ACCESS not-accessible
2144:     STATUS     current
2145:     DESCRIPTION
2146:             "The (conceptual) table listing the interface-specific (S,G)
2147:             state that PIM has."
2148:     REFERENCE "RFC 4601 section 4.1.4"
2149:     ::= { pim 7 }
2150: 
2151: pimSGIEntry OBJECT-TYPE
2152:     SYNTAX     PimSGIEntry
2153:     MAX-ACCESS not-accessible
2154:     STATUS     current
2155:     DESCRIPTION
2156:             "An entry (conceptual row) in the pimSGITable."
2157:     INDEX      { pimSGAddressType,
2158:                  pimSGGrpAddress,
2159:                  pimSGSrcAddress,
2160:                  pimSGIIfIndex }
2161:     ::= { pimSGITable 1 }
2162: 
2163: PimSGIEntry ::= SEQUENCE {
2164:     pimSGIIfIndex                 InterfaceIndex,
2165:     pimSGIUpTime                  TimeTicks,
2166:     pimSGILocalMembership         TruthValue,
2167:     pimSGIJoinPruneState          INTEGER,
2168:     pimSGIPrunePendingTimer       TimeTicks,
2169:     pimSGIJoinExpiryTimer         TimeTicks,
2170:     pimSGIAssertState             INTEGER,
2171:     pimSGIAssertTimer             TimeTicks,
2172:     pimSGIAssertWinnerAddressType InetAddressType,
2173:     pimSGIAssertWinnerAddress     InetAddress,
2174:     pimSGIAssertWinnerMetricPref  Unsigned32,
2175:     pimSGIAssertWinnerMetric      Unsigned32
2176: }
2177: 
2178: pimSGIIfIndex OBJECT-TYPE
2179:     SYNTAX     InterfaceIndex
2180:     MAX-ACCESS not-accessible
2181:     STATUS     current
2182:     DESCRIPTION
2183:             "The ifIndex of the interface that this entry corresponds
2184:             to."
2185:     ::= { pimSGIEntry 1 }
2186: 
2187: pimSGIUpTime OBJECT-TYPE
2188:     SYNTAX     TimeTicks
2189:     MAX-ACCESS read-only
2190:     STATUS     current
2191:     DESCRIPTION
2192:             "The time since this entry was created by the local router."
2193:     ::= { pimSGIEntry 2 }
2194: 
2195: pimSGILocalMembership OBJECT-TYPE
2196:     SYNTAX     TruthValue
2197:     MAX-ACCESS read-only
2198:     STATUS     current
2199:     DESCRIPTION
2200:             "Whether the local router has (S,G) local membership on this
2201:             interface (resulting from a mechanism such as IGMP or MLD).
2202:             This corresponds to local_receiver_include(S,G,I) in the
2203:             PIM-SM specification."
2204:     REFERENCE "RFC 3376, RFC 3810, RFC 4601 sections 4.1.6, 4.6.1 and
2205:               4.6.2"
2206:     ::= { pimSGIEntry 3 }
2207: 
2208: pimSGIJoinPruneState OBJECT-TYPE
2209:     SYNTAX     INTEGER {
2210:                   noInfo (1),
2211:                   join (2),
2212:                   prunePending (3)
2213:                }
2214:     MAX-ACCESS read-only
2215:     STATUS     current
2216:     DESCRIPTION
2217:             "The state resulting from (S,G) Join/Prune messages
2218:             received on this interface.  This corresponds to the state
2219:             of the downstream per-interface (S,G) state machine in the
2220:             PIM-SM and PIM-DM specification."
2221:     REFERENCE "RFC 4601 section 4.5.3 and RFC 3973 section 4.4.2"
2222:     ::= { pimSGIEntry 4 }
2223: 
2224: pimSGIPrunePendingTimer OBJECT-TYPE
2225:     SYNTAX     TimeTicks
2226:     MAX-ACCESS read-only
2227:     STATUS     current
2228:     DESCRIPTION
2229:             "The time remaining before the local router acts on an (S,G)
2230:             Prune message received on this interface, during which the
2231:             router is waiting to see whether another downstream router
2232:             will override the Prune message.  This timer is called the
2233:             (S,G) Prune-Pending Timer in the PIM-SM specification.  This
2234:             object is zero if the timer is not running."
2235:     REFERENCE "RFC 4601 section 4.5.3 and 4.5.4"
2236:     ::= { pimSGIEntry 5 }
2237: 
2238: pimSGIJoinExpiryTimer OBJECT-TYPE
2239:     SYNTAX     TimeTicks
2240:     MAX-ACCESS read-only
2241:     STATUS     current
2242:     DESCRIPTION
2243:             "The time remaining before (S,G) Join state for this
2244:             interface expires.  This timer is called the (S,G) Join
2245:             Expiry Timer in the PIM-SM specification.  This object is
2246:             zero if the timer is not running.  A value of 'FFFFFFFF'h
2247:             indicates an infinite expiry time.  This timer is called the
2248:             (S,G) Prune Timer in the PIM-DM specification."
2249:     REFERENCE "RFC 4601 section 4.10 and RFC 3973 section 4.8"
2250:     ::= { pimSGIEntry 6 }
2251: 
2252: pimSGIAssertState OBJECT-TYPE
2253:     SYNTAX     INTEGER {
2254:                   noInfo (1),
2255:                   iAmAssertWinner (2),
2256:                   iAmAssertLoser (3)
2257:                }
2258:     MAX-ACCESS read-only
2259:     STATUS     current
2260:     DESCRIPTION
2261:             "The (S,G) Assert state for this interface.  This
2262:             corresponds to the state of the per-interface (S,G) Assert
2263:             state machine in the PIM-SM specification."
2264:     REFERENCE "RFC 4601 section 4.6.1"
2265:     ::= { pimSGIEntry 7 }
2266: 
2267: pimSGIAssertTimer OBJECT-TYPE
2268:     SYNTAX     TimeTicks
2269:     MAX-ACCESS read-only
2270:     STATUS     current
2271:     DESCRIPTION
2272:             "If pimSGIAssertState is 'iAmAssertWinner', this is the time
2273:             remaining before the local router next sends a (S,G) Assert
2274:             message on this interface.  If pimSGIAssertState is
2275:             'iAmAssertLoser', this is the time remaining before the
2276:             (S,G) Assert state expires.  If pimSGIAssertState is
2277:             'noInfo', this is zero.  This timer is called the (S,G)
2278:             Assert Timer in the PIM-SM specification."
2279:     REFERENCE "RFC 4601 section 4.6.1"
2280:     ::= { pimSGIEntry 8 }
2281: 
2282: pimSGIAssertWinnerAddressType OBJECT-TYPE
2283:     SYNTAX     InetAddressType
2284:     MAX-ACCESS read-only
2285:     STATUS     current
2286:     DESCRIPTION
2287:             "If pimSGIAssertState is 'iAmAssertLoser', this is the
2288:             address type of the assert winner; otherwise, this object is
2289:             unknown(0)."
2290:     ::= { pimSGIEntry 9 }
2291: 
2292: pimSGIAssertWinnerAddress OBJECT-TYPE
2293:     SYNTAX     InetAddress (SIZE (0|4|16|20))
2294:     MAX-ACCESS read-only
2295:     STATUS     current
2296:     DESCRIPTION
2297:             "If pimSGIAssertState is 'iAmAssertLoser', this is the
2298:             address of the assert winner.  The InetAddressType is given
2299:             by the pimSGIAssertWinnerAddressType object."
2300:     ::= { pimSGIEntry 10 }
2301: 
2302: pimSGIAssertWinnerMetricPref OBJECT-TYPE
2303:     SYNTAX     Unsigned32 (0..2147483647)
2304:     MAX-ACCESS read-only
2305:     STATUS     current
2306:     DESCRIPTION
2307:             "If pimSGIAssertState is 'iAmAssertLoser', this is the
2308:             metric preference of the route to the source advertised by
2309:             the assert winner; otherwise, this object is zero."
2310:     ::= { pimSGIEntry 11 }
2311: 
2312: pimSGIAssertWinnerMetric OBJECT-TYPE
2313:     SYNTAX     Unsigned32
2314:     MAX-ACCESS read-only
2315:     STATUS     current
2316:     DESCRIPTION
2317:             "If pimSGIAssertState is 'iAmAssertLoser', this is the
2318:             routing metric of the route to the source advertised by the
2319:             assert winner; otherwise, this object is zero."
2320:     ::= { pimSGIEntry 12 }
2321: 
2322: --
2323: -- The PIM (S,G,rpt) State Table
2324: --
2325: 
2326: pimSGRptTable OBJECT-TYPE
2327:     SYNTAX     SEQUENCE OF PimSGRptEntry
2328:     MAX-ACCESS not-accessible
2329:     STATUS     current
2330:     DESCRIPTION
2331:             "The (conceptual) table listing the non-interface specific
2332:             (S,G,rpt) state that PIM has."
2333:     REFERENCE "RFC 4601 section 4.1.5"
2334:     ::= { pim 8 }
2335: 
2336: pimSGRptEntry OBJECT-TYPE
2337:     SYNTAX     PimSGRptEntry
2338:     MAX-ACCESS not-accessible
2339:     STATUS     current
2340:     DESCRIPTION
2341:             "An entry (conceptual row) in the pimSGRptTable."
2342:     INDEX      { pimStarGAddressType,
2343:                  pimStarGGrpAddress,
2344:                  pimSGRptSrcAddress }
2345:     ::= { pimSGRptTable 1 }
2346: 
2347: PimSGRptEntry ::= SEQUENCE {
2348:     pimSGRptSrcAddress             InetAddress,
2349:     pimSGRptUpTime                 TimeTicks,
2350:     pimSGRptUpstreamPruneState     INTEGER,
2351:     pimSGRptUpstreamOverrideTimer  TimeTicks
2352: }
2353: 
2354: pimSGRptSrcAddress OBJECT-TYPE
2355:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2356:     MAX-ACCESS not-accessible
2357:     STATUS     current
2358:     DESCRIPTION
2359:             "The source address for this entry.  The InetAddressType is
2360:             given by the pimStarGAddressType object."
2361:     ::= { pimSGRptEntry 1 }
2362: 
2363: pimSGRptUpTime OBJECT-TYPE
2364:     SYNTAX     TimeTicks
2365:     MAX-ACCESS read-only
2366:     STATUS     current
2367:     DESCRIPTION
2368:             "The time since this entry was created by the local router."
2369:     ::= { pimSGRptEntry 2 }
2370: 
2371: pimSGRptUpstreamPruneState OBJECT-TYPE
2372:     SYNTAX     INTEGER {
2373:                   rptNotJoined (1),
2374:                   pruned (2),
2375:                   notPruned (3)
2376:                }
2377:     MAX-ACCESS read-only
2378:     STATUS     current
2379:     DESCRIPTION
2380:             "Whether the local router should prune the source off the RP
2381:             tree.  This corresponds to the state of the upstream
2382:             (S,G,rpt) state machine for triggered messages in the PIM-SM
2383:             specification."
2384:     REFERENCE "RFC 4601 section 4.5.9"
2385:     ::= { pimSGRptEntry 3 }
2386: 
2387: pimSGRptUpstreamOverrideTimer OBJECT-TYPE
2388:     SYNTAX     TimeTicks
2389:     MAX-ACCESS read-only
2390:     STATUS     current
2391:     DESCRIPTION
2392:             "The time remaining before the local router sends a
2393:             triggered (S,G,rpt) Join message on pimStarGRPFIfIndex.
2394:             This timer is called the (S,G,rpt) Upstream Override Timer
2395:             in the PIM-SM specification.  This object is zero if the
2396:             timer is not running."
2397:     REFERENCE "RFC 4601 section 4.5.9"
2398:     ::= { pimSGRptEntry 4 }
2399: 
2400: --
2401: -- The PIM (S,G,rpt,I) State Table
2402: --
2403: 
2404: pimSGRptITable OBJECT-TYPE
2405:     SYNTAX     SEQUENCE OF PimSGRptIEntry
2406:     MAX-ACCESS not-accessible
2407:     STATUS     current
2408:     DESCRIPTION
2409:             "The (conceptual) table listing the interface-specific
2410:             (S,G,rpt) state that PIM has."
2411:     REFERENCE "RFC 4601 section 4.1.5"
2412:     ::= { pim 9 }
2413: 
2414: pimSGRptIEntry OBJECT-TYPE
2415:     SYNTAX     PimSGRptIEntry
2416:     MAX-ACCESS not-accessible
2417:     STATUS     current
2418:     DESCRIPTION
2419:             "An entry (conceptual row) in the pimSGRptITable."
2420:     INDEX      { pimStarGAddressType,
2421:                  pimStarGGrpAddress,
2422:                  pimSGRptSrcAddress,
2423:                  pimSGRptIIfIndex }
2424:     ::= { pimSGRptITable 1 }
2425: 
2426: PimSGRptIEntry ::= SEQUENCE {
2427:     pimSGRptIIfIndex            InterfaceIndex,
2428:     pimSGRptIUpTime             TimeTicks,
2429:     pimSGRptILocalMembership    TruthValue,
2430:     pimSGRptIJoinPruneState     INTEGER,
2431:     pimSGRptIPrunePendingTimer  TimeTicks,
2432:     pimSGRptIPruneExpiryTimer   TimeTicks
2433: }
2434: 
2435: pimSGRptIIfIndex OBJECT-TYPE
2436:     SYNTAX     InterfaceIndex
2437:     MAX-ACCESS not-accessible
2438:     STATUS     current
2439:     DESCRIPTION
2440:             "The ifIndex of the interface that this entry corresponds
2441:             to."
2442:     ::= { pimSGRptIEntry 1 }
2443: 
2444: pimSGRptIUpTime OBJECT-TYPE
2445:     SYNTAX     TimeTicks
2446:     MAX-ACCESS read-only
2447:     STATUS     current
2448:     DESCRIPTION
2449:             "The time since this entry was created by the local router."
2450:     ::= { pimSGRptIEntry 2 }
2451: 
2452: pimSGRptILocalMembership OBJECT-TYPE
2453:     SYNTAX     TruthValue
2454:     MAX-ACCESS read-only
2455:     STATUS     current
2456:     DESCRIPTION
2457:             "Whether the local router has both (*,G) include local
2458:             membership and (S,G) exclude local membership on this
2459:             interface (resulting from a mechanism such as IGMP or MLD).
2460:             This corresponds to local_receiver_exclude(S,G,I) in the
2461:             PIM-SM specification."
2462:     REFERENCE "RFC 3376, RFC 3810, RFC 4601 section 4.1.6"
2463:     ::= { pimSGRptIEntry 3 }
2464: 
2465: pimSGRptIJoinPruneState OBJECT-TYPE
2466:     SYNTAX     INTEGER {
2467:                   noInfo (1),
2468:                   prune (2),
2469:                   prunePending (3)
2470:                }
2471:     MAX-ACCESS read-only
2472:     STATUS     current
2473:     DESCRIPTION
2474:             "The state resulting from (S,G,rpt) Join/Prune messages
2475:             received on this interface.  This corresponds to the state
2476:             of the downstream per-interface (S,G,rpt) state machine in
2477:             the PIM-SM specification."
2478:     REFERENCE "RFC 4601 section 4.5.4"
2479:     ::= { pimSGRptIEntry 4 }
2480: 
2481: pimSGRptIPrunePendingTimer OBJECT-TYPE
2482:     SYNTAX     TimeTicks
2483:     MAX-ACCESS read-only
2484:     STATUS     current
2485:     DESCRIPTION
2486:             "The time remaining before the local router starts pruning
2487:             this source off the RP tree.  This timer is called the
2488:             (S,G,rpt) Prune-Pending Timer in the PIM-SM specification.
2489:             This object is zero if the timer is not running."
2490:     REFERENCE "RFC 4601 section 4.5.4"
2491:     ::= { pimSGRptIEntry 5 }
2492: 
2493: pimSGRptIPruneExpiryTimer OBJECT-TYPE
2494:     SYNTAX     TimeTicks
2495:     MAX-ACCESS read-only
2496:     STATUS     current
2497:     DESCRIPTION
2498:             "The time remaining before (S,G,rpt) Prune state for this
2499:             interface expires.  This timer is called the (S,G,rpt)
2500:             Prune Expiry Timer in the PIM-SM specification.  This object
2501:             is zero if the timer is not running.  A value of 'FFFFFFFF'h
2502:             indicates an infinite expiry time."
2503:     REFERENCE "RFC 4601 section 4.5.4"
2504:     ::= { pimSGRptIEntry 6 }
2505: 
2506: --
2507: -- The PIM Bidir DF-Election Table
2508: --
2509: 
2510: pimBidirDFElectionTable OBJECT-TYPE
2511:     SYNTAX     SEQUENCE OF PimBidirDFElectionEntry
2512:     MAX-ACCESS not-accessible
2513:     STATUS     current
2514:     DESCRIPTION
2515:             "The (conceptual) table listing the per-RP Designated
2516:             Forwarder (DF) Election state for each interface for all the
2517:             RPs in BIDIR mode."
2518:     REFERENCE "I-D.ietf-pim-bidir section 3.5"
2519:     ::= { pim 10 }
2520: 
2521: pimBidirDFElectionEntry OBJECT-TYPE
2522:     SYNTAX     PimBidirDFElectionEntry
2523:     MAX-ACCESS not-accessible
2524:     STATUS     current
2525:     DESCRIPTION
2526:             "An entry (conceptual row) in the pimBidirDFElectionTable."
2527:     INDEX      { pimBidirDFElectionAddressType,
2528:                  pimBidirDFElectionRPAddress,
2529:                  pimBidirDFElectionIfIndex }
2530:     ::= { pimBidirDFElectionTable 1 }
2531: 
2532: PimBidirDFElectionEntry ::= SEQUENCE {
2533:     pimBidirDFElectionAddressType       InetAddressType,
2534:     pimBidirDFElectionRPAddress         InetAddress,
2535:     pimBidirDFElectionIfIndex           InterfaceIndex,
2536:     pimBidirDFElectionWinnerAddressType InetAddressType,
2537:     pimBidirDFElectionWinnerAddress     InetAddress,
2538:     pimBidirDFElectionWinnerUpTime      TimeTicks,
2539:     pimBidirDFElectionWinnerMetricPref  Unsigned32,
2540:     pimBidirDFElectionWinnerMetric      Unsigned32,
2541:     pimBidirDFElectionState             INTEGER,
2542:     pimBidirDFElectionStateTimer        TimeTicks
2543: }
2544: 
2545: pimBidirDFElectionAddressType OBJECT-TYPE
2546:     SYNTAX     InetAddressType
2547:     MAX-ACCESS not-accessible
2548:     STATUS     current
2549:     DESCRIPTION
2550:             "The address type of the RP for which the DF state is being
2551:             maintained."
2552:     ::= { pimBidirDFElectionEntry 1 }
2553: 
2554: pimBidirDFElectionRPAddress OBJECT-TYPE
2555:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2556:     MAX-ACCESS not-accessible
2557:     STATUS     current
2558:     DESCRIPTION
2559:             "The IP address of the RP for which the DF state is being
2560:             maintained.  The InetAddressType is given by the
2561:             pimBidirDFElectionAddressType object."
2562:     ::= { pimBidirDFElectionEntry 2 }
2563: 
2564: pimBidirDFElectionIfIndex OBJECT-TYPE
2565:     SYNTAX     InterfaceIndex
2566:     MAX-ACCESS not-accessible
2567:     STATUS     current
2568:     DESCRIPTION
2569:             "The value of ifIndex for the interface for which the DF
2570:             state is being maintained."
2571:     ::= { pimBidirDFElectionEntry 3 }
2572: 
2573: pimBidirDFElectionWinnerAddressType OBJECT-TYPE
2574:     SYNTAX     InetAddressType
2575:     MAX-ACCESS read-only
2576:     STATUS     current
2577:     DESCRIPTION
2578:             "The primary address type of the winner of the DF Election
2579:             process.  A value of unknown(0) indicates there is currently
2580:             no DF."
2581:     ::= { pimBidirDFElectionEntry 4 }
2582: 
2583: pimBidirDFElectionWinnerAddress OBJECT-TYPE
2584:     SYNTAX     InetAddress (SIZE (0|4|16|20))
2585:     MAX-ACCESS read-only
2586:     STATUS     current
2587:     DESCRIPTION
2588:             "The primary IP address of the winner of the DF Election
2589:             process.  The InetAddressType is given by the
2590:             pimBidirDFElectionWinnderAddressType object."
2591:     ::= { pimBidirDFElectionEntry 5 }
2592: 
2593: pimBidirDFElectionWinnerUpTime OBJECT-TYPE
2594:     SYNTAX     TimeTicks
2595:     MAX-ACCESS read-only
2596:     STATUS     current
2597:     DESCRIPTION
2598:             "The time since the current winner (last) became elected as
2599:             the DF for this RP."
2600:     ::= { pimBidirDFElectionEntry 6 }
2601: 
2602: pimBidirDFElectionWinnerMetricPref OBJECT-TYPE
2603:     SYNTAX     Unsigned32
2604:     MAX-ACCESS read-only
2605:     STATUS     current
2606:     DESCRIPTION
2607:             "The metric preference advertised by the DF Winner, or zero
2608:             if there is currently no DF."
2609:     ::= { pimBidirDFElectionEntry 7 }
2610: 
2611: pimBidirDFElectionWinnerMetric OBJECT-TYPE
2612:     SYNTAX     Unsigned32
2613:     MAX-ACCESS read-only
2614:     STATUS     current
2615:     DESCRIPTION
2616:             "The metric advertised by the DF Winner, or zero if there is
2617:             currently no DF."
2618:     ::= { pimBidirDFElectionEntry 8 }
2619: 
2620: pimBidirDFElectionState OBJECT-TYPE
2621:     SYNTAX     INTEGER {
2622:                   dfOffer(1),
2623:                   dfLose(2),
2624:                   dfWinner(3),
2625:                   dfBackoff(4)
2626:                }
2627:     MAX-ACCESS read-only
2628:     STATUS     current
2629:     DESCRIPTION
2630:             "The state of this interface with respect to DF-Election for
2631:             this RP.  The states correspond to the ones defined in the
2632:             BIDIR-PIM specification."
2633:     REFERENCE "I-D.ietf-pim-bidir-07 section 3.5.3.1"
2634:     ::= { pimBidirDFElectionEntry 9 }
2635: 
2636: pimBidirDFElectionStateTimer OBJECT-TYPE
2637:     SYNTAX     TimeTicks
2638:     MAX-ACCESS read-only
2639:     STATUS     current
2640:     DESCRIPTION
2641:             "The minimum time remaining after which the local router
2642:             will expire the current DF state represented by
2643:             pimBidirDFElectionState."
2644:     ::= { pimBidirDFElectionEntry 10 }
2645: 
2646: --
2647: -- The PIM Static RP Table
2648: --
2649: 
2650: pimStaticRPTable OBJECT-TYPE
2651:     SYNTAX     SEQUENCE OF PimStaticRPEntry
2652:     MAX-ACCESS not-accessible
2653:     STATUS     current
2654:     DESCRIPTION
2655:             "This table is used to create and manage static
2656:             configuration of RPs.
2657: 
2658:             If the group prefixes configured for two or more rows in
2659:             this table overlap, the row with the greatest value of
2660:             pimStaticRPGrpPrefixLength is used for the overlapping
2661:             range."
2662:     REFERENCE "RFC 4601 section 3.7"
2663:     ::= { pim 11 }
2664: 
2665: pimStaticRPEntry OBJECT-TYPE
2666:     SYNTAX     PimStaticRPEntry
2667:     MAX-ACCESS not-accessible
2668:     STATUS     current
2669:     DESCRIPTION
2670:             "An entry (conceptual row) in the pimStaticRPTable.  This
2671:             entry is preserved on agent restart."
2672:     INDEX      { pimStaticRPAddressType,
2673:                  pimStaticRPGrpAddress,
2674:                  pimStaticRPGrpPrefixLength }
2675:     ::= { pimStaticRPTable 1 }
2676: 
2677: PimStaticRPEntry ::= SEQUENCE {
2678:     pimStaticRPAddressType      InetAddressType,
2679:     pimStaticRPGrpAddress       InetAddress,
2680:     pimStaticRPGrpPrefixLength  InetAddressPrefixLength,
2681:     pimStaticRPRPAddress        InetAddress,
2682:     pimStaticRPPimMode          PimMode,
2683:     pimStaticRPOverrideDynamic  TruthValue,
2684:     pimStaticRPPrecedence       Unsigned32,
2685:     pimStaticRPRowStatus        RowStatus,
2686:     pimStaticRPStorageType      StorageType
2687: }
2688: 
2689: pimStaticRPAddressType OBJECT-TYPE
2690:     SYNTAX     InetAddressType
2691:     MAX-ACCESS not-accessible
2692:     STATUS     current
2693:     DESCRIPTION
2694:             "The address type of this entry."
2695:     ::= { pimStaticRPEntry 1 }
2696: 
2697: pimStaticRPGrpAddress OBJECT-TYPE
2698:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2699:     MAX-ACCESS not-accessible
2700:     STATUS     current
2701:     DESCRIPTION
2702:             "The multicast group address which, when combined with
2703:             pimStaticRPGrpPrefixLength, gives the group prefix for this
2704:             entry.  The InetAddressType is given by the
2705:             pimStaticRPAddressType object.
2706: 
2707:             This address object is only significant up to
2708:             pimSGRPFRoutePrefixLength bits.  The remainder of the
2709:             address bits are zero.  This is especially important for
2710:             this index field, which is part of the index of this entry.
2711:             Any non-zero bits would signify an entirely different
2712:             entry."
2713:     ::= { pimStaticRPEntry 2 }
2714: 
2715: pimStaticRPGrpPrefixLength OBJECT-TYPE
2716:     SYNTAX     InetAddressPrefixLength (4..128)
2717:     MAX-ACCESS not-accessible
2718:     STATUS     current
2719:     DESCRIPTION
2720:             "The multicast group prefix length, which, when combined
2721:             with pimStaticRPGrpAddress, gives the group prefix for this
2722:             entry.  The InetAddressType is given by the
2723:             pimStaticRPAddressType object.  If pimStaticRPAddressType is
2724:             'ipv4' or 'ipv4z', this object must be in the range 4..32.
2725:             If pimStaticRPGrpAddressType is 'ipv6' or 'ipv6z', this
2726:             object must be in the range 8..128."
2727:     ::= { pimStaticRPEntry 3 }
2728: 
2729: pimStaticRPRPAddress OBJECT-TYPE
2730:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2731:     MAX-ACCESS read-create
2732:     STATUS     current
2733:     DESCRIPTION
2734:             "The IP address of the RP to be used for groups within this
2735:             group prefix.  The InetAddressType is given by the
2736:             pimStaticRPAddressType object."
2737:     ::= { pimStaticRPEntry 4 }
2738: 
2739: pimStaticRPPimMode OBJECT-TYPE
2740:     SYNTAX     PimMode { ssm(2), asm(3), bidir(4) }
2741:     MAX-ACCESS read-create
2742:     STATUS     current
2743:     DESCRIPTION
2744:             "The PIM mode to be used for groups in this group prefix.
2745: 
2746:             If this object is set to ssm(2), then pimStaticRPRPAddress
2747:             must be set to zero.  No RP operations are ever possible for
2748:             PIM Mode SSM."
2749:     REFERENCE "RFC 4601 section 3.7, RFC 3569 and
2750:                I-D.ietf-mboned-ip-mcast-mib ipMcastSsmRangeTable"
2751:     DEFVAL { asm }
2752:     ::= { pimStaticRPEntry 5 }
2753: 
2754: pimStaticRPOverrideDynamic OBJECT-TYPE
2755:     SYNTAX     TruthValue
2756:     MAX-ACCESS read-create
2757:     STATUS     current
2758:     DESCRIPTION
2759:             "Whether this static RP configuration overrides RP
2760:             information learned dynamically for groups in this group
2761:             prefix."
2762:     DEFVAL { false }
2763:     ::= { pimStaticRPEntry 6 }
2764: 
2765: pimStaticRPPrecedence OBJECT-TYPE
2766:     SYNTAX     Unsigned32
2767:     MAX-ACCESS read-create
2768:     STATUS     current
2769:     DESCRIPTION
2770:             "The value for pimGroupMappingPrecedence to be used for this
2771:             static RP configuration.  This allows fine control over
2772:             which configuration is overridden by this static
2773:             configuration.
2774: 
2775:             If pimStaticRPOverrideDynamic is set to TRUE, all dynamic RP
2776:             configuration is overridden by this static configuration,
2777:             whatever the value of this object.
2778: 
2779:             The absolute values of this object have a significance only
2780:             on the local router and do not need to be coordinated with
2781:             other routers.  A setting of this object may have different
2782:             effects when applied to other routers.
2783: 
2784:             Do not use this object unless fine control of static RP
2785:             behavior on the local router is required."
2786:     ::= { pimStaticRPEntry 7 }
2787: 
2788: pimStaticRPRowStatus OBJECT-TYPE
2789:     SYNTAX     RowStatus
2790:     MAX-ACCESS read-create
2791:     STATUS     current
2792:     DESCRIPTION
2793:             "The status of this row, by which rows in this table can
2794:             be created and destroyed.
2795: 
2796:             This status object cannot be set to active(1) before a valid
2797:             value has been written to pimStaticRPRPAddress.
2798: 
2799:             All writeable objects in this entry can be modified when the
2800:             status of this entry is active(1)."
2801:     ::= { pimStaticRPEntry 8 }
2802: 
2803: pimStaticRPStorageType OBJECT-TYPE
2804:     SYNTAX      StorageType
2805:     MAX-ACCESS  read-create
2806:     STATUS      current
2807:     DESCRIPTION
2808:             "The storage type for this row.  Rows having the value
2809:             'permanent' need not allow write-access to any columnar
2810:             objects in the row."
2811:        DEFVAL { nonVolatile }
2812:     ::= { pimStaticRPEntry 9 }
2813: 
2814: --
2815: -- The PIM Anycast-RP Set Table
2816: --
2817: 
2818: pimAnycastRPSetTable OBJECT-TYPE
2819:     SYNTAX     SEQUENCE OF PimAnycastRPSetEntry
2820:     MAX-ACCESS not-accessible
2821:     STATUS     current
2822:     DESCRIPTION
2823:             "This table is used to create and manage Anycast-RP via PIM
2824:             Register messages, as opposed to via other protocols such as
2825:             MSDP (Multicast Source Discovery Protocol).
2826: 
2827:             Entries must be configured in this table if and only if the
2828:             local router is a member of one or more Anycast-RP sets,
2829:             that is, one or more Anycast-RP addresses are assigned to
2830:             the local router.  Note that if using static RP
2831:             configuration, this is in addition to, not instead of, the
2832:             pimStaticRPTable entries that must be configured for the
2833:             Anycast-RPs.
2834: 
2835:             The set of rows with the same values of both
2836:             pimAnycastRPSetAddressType and pimAnycastRPSetAnycastAddress
2837:             corresponds to the Anycast-RP set for that Anycast-RP
2838:             address.
2839: 
2840:             When an Anycast-RP set configuration is active, one entry
2841:             per pimAnycastRPSetAnycastAddress corresponds to the local
2842:             router.  The local router is identified by the
2843:             pimAnycastRpSetLocalRouter object.  That entry determines
2844:             the source address used by the local router when forwarding
2845:             PIM Register messages within the Anycast-RP set."
2846:     REFERENCE "RFC 4610, RFC 3618"
2847:     ::= { pim 12 }
2848: 
2849: pimAnycastRPSetEntry OBJECT-TYPE
2850:     SYNTAX     PimAnycastRPSetEntry
2851:     MAX-ACCESS not-accessible
2852:     STATUS     current
2853:     DESCRIPTION
2854:             "An entry corresponds to a single router within a particular
2855:             Anycast-RP set.  This entry is preserved on agent restart."
2856:     INDEX      { pimAnycastRPSetAddressType,
2857:                  pimAnycastRPSetAnycastAddress,
2858:                  pimAnycastRPSetRouterAddress }
2859:     ::= { pimAnycastRPSetTable 1 }
2860: 
2861: PimAnycastRPSetEntry ::= SEQUENCE {
2862:     pimAnycastRPSetAddressType     InetAddressType,
2863:     pimAnycastRPSetAnycastAddress  InetAddress,
2864:     pimAnycastRPSetRouterAddress   InetAddress,
2865:     pimAnycastRPSetLocalRouter     TruthValue,
2866:     pimAnycastRPSetRowStatus       RowStatus,
2867:     pimAnycastRPSetStorageType     StorageType
2868: }
2869: 
2870: pimAnycastRPSetAddressType OBJECT-TYPE
2871:     SYNTAX     InetAddressType
2872:     MAX-ACCESS not-accessible
2873:     STATUS     current
2874:     DESCRIPTION
2875:             "The address type of the Anycast-RP address and router
2876:             address."
2877:     ::= { pimAnycastRPSetEntry 1 }
2878: 
2879: pimAnycastRPSetAnycastAddress OBJECT-TYPE
2880:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2881:     MAX-ACCESS not-accessible
2882:     STATUS     current
2883:     DESCRIPTION
2884:             "The Anycast-RP address.  The InetAddressType is given by
2885:             the pimAnycastRPSetAddressType object."
2886:     ::= { pimAnycastRPSetEntry 2 }
2887: 
2888: pimAnycastRPSetRouterAddress OBJECT-TYPE
2889:     SYNTAX     InetAddress (SIZE (4|8|16|20))
2890:     MAX-ACCESS not-accessible
2891:     STATUS     current
2892:     DESCRIPTION
2893:             "The address of a router that is a member of the Anycast-RP
2894:             set.  The InetAddressType is given by the
2895:             pimAnycastRPSetAddressType object.
2896: 
2897:             This address differs from pimAnycastRPSetAnycastAddress.
2898:             Equal values for these two addresses in a single entry is
2899:             not permitted.  That would cause a Register loop."
2900:     ::= { pimAnycastRPSetEntry 3 }
2901: 
2902: pimAnycastRPSetLocalRouter OBJECT-TYPE
2903:     SYNTAX     TruthValue
2904:     MAX-ACCESS read-only
2905:     STATUS     current
2906:     DESCRIPTION
2907:             "Whether this entry corresponds to the local router."
2908:     ::= { pimAnycastRPSetEntry 4 }
2909: 
2910: pimAnycastRPSetRowStatus OBJECT-TYPE
2911:     SYNTAX     RowStatus
2912:     MAX-ACCESS read-create
2913:     STATUS     current
2914:     DESCRIPTION
2915:             "The status of this row, by which rows in this table can
2916:             be created and destroyed.
2917: 
2918:             This status object can be set to active(1) without setting
2919:             any other columnar objects in this entry.
2920:             All writeable objects in this entry can be modified when the
2921:             status of this entry is active(1)."
2922:     ::= { pimAnycastRPSetEntry 5 }
2923: 
2924: pimAnycastRPSetStorageType OBJECT-TYPE
2925:     SYNTAX      StorageType
2926:     MAX-ACCESS  read-create
2927:     STATUS      current
2928:     DESCRIPTION
2929:             "The storage type for this row.  Rows having the value
2930:             'permanent' need not allow write-access to any columnar
2931:             objects in the row."
2932:        DEFVAL { nonVolatile }
2933:     ::= { pimAnycastRPSetEntry 6 }
2934: 
2935: --
2936: -- The PIM Group Mapping Table
2937: --
2938: 
2939: pimGroupMappingTable OBJECT-TYPE
2940:     SYNTAX     SEQUENCE OF PimGroupMappingEntry
2941:     MAX-ACCESS not-accessible
2942:     STATUS     current
2943:     DESCRIPTION
2944:             "The (conceptual) table listing mappings from multicast
2945:             group prefixes to the PIM mode and RP address to use for
2946:             groups within that group prefix.
2947: 
2948:             Rows in this table are created for a variety of reasons,
2949:             indicated by the value of the pimGroupMappingOrigin object.
2950: 
2951:             -  Rows with a pimGroupMappingOrigin value of 'fixed' are
2952:                created automatically by the router at startup, to
2953:                correspond to the well-defined prefixes of link-local and
2954:                unroutable group addresses.  These rows are never
2955:                destroyed.
2956: 
2957:             -  Rows with a pimGroupMappingOrigin value of 'embedded' are
2958:                created by the router to correspond to group prefixes
2959:                that are to be treated as being in Embedded-RP format.
2960: 
2961:             -  Rows with a pimGroupMappingOrigin value of 'configRp' are
2962:                created and destroyed as a result of rows in the
2963:                pimStaticRPTable being created and destroyed.
2964: 
2965:             -  Rows with a pimGroupMappingOrigin value of 'configSsm'
2966:                are created and destroyed as a result of configuration of
2967:                SSM address ranges to the local router.
2968: 
2969:             -  Rows with a pimGroupMappingOrigin value of 'bsr' are
2970:                created as a result of running the PIM Bootstrap Router
2971:                (BSR) mechanism.  If the local router is not the elected
2972:                BSR, these rows are created to correspond to group
2973:                prefixes in the PIM Bootstrap messages received from the
2974:                elected BSR.  If the local router is the elected BSR,
2975:                these rows are created to correspond to group prefixes in
2976:                the PIM Bootstrap messages that the local router sends.
2977:                In either case, these rows are destroyed when the group
2978:                prefixes are timed out by the BSR mechanism.
2979: 
2980:             -  Rows with a pimGroupMappingOrigin value of 'other' are
2981:                created and destroyed according to some other mechanism
2982:                not specified here.
2983: 
2984:             Given the collection of rows in this table at any point in
2985:             time, the PIM mode and RP address to use for a particular
2986:             group is determined using the following algorithm.
2987: 
2988:             1. From the set of all rows, the subset whose group prefix
2989:                contains the group in question are selected.
2990: 
2991:             2. If there are no such rows, the behavior is undefined.
2992: 
2993:             3. From the selected subset of rows, the subset that have
2994:                the greatest value of pimGroupMappingGrpPrefixLength are
2995:                selected.
2996: 
2997:             4. If there are multiple selected rows, and a subset are
2998:                defined by pimStaticRPTable (pimGroupMappingOrigin value
2999:                of 'configRp') with pimStaticRPOverrideDynamic set to
3000:                TRUE, then this subset is selected.
3001: 
3002:             5. If there are still multiple selected rows, the subset
3003:                that have the highest precedence (the lowest numerical
3004:                value for pimGroupMappingPrecedence) are selected.
3005: 
3006:             6. If there are still multiple selected rows, the row
3007:                selected is implementation dependent; the implementation
3008:                might or might not apply the PIM hash function to select
3009:                the row.
3010: 
3011:             7. The group mode to use is given by the value of
3012:                pimGroupMappingPimMode from the single selected row; the
3013:                RP to use is given by the value of
3014:                pimGroupMappingRPAddress, unless pimGroupMappingOrigin is
3015:                'embedded', in which case the RP is extracted from the
3016:                group address in question."
3017: 
3018:     REFERENCE "RFC 4601 section 3.7, RFC 3956 and RFC 4610"
3019:     ::= { pim 13 }
3020: 
3021: pimGroupMappingEntry OBJECT-TYPE
3022:     SYNTAX     PimGroupMappingEntry
3023:     MAX-ACCESS not-accessible
3024:     STATUS     current
3025:     DESCRIPTION
3026:             "An entry (conceptual row) in the pimGroupMappingTable."
3027:     INDEX      { pimGroupMappingOrigin,
3028:                  pimGroupMappingAddressType,
3029:                  pimGroupMappingGrpAddress,
3030:                  pimGroupMappingGrpPrefixLength,
3031:                  pimGroupMappingRPAddressType,
3032:                  pimGroupMappingRPAddress }
3033:     ::= { pimGroupMappingTable 1 }
3034: 
3035: PimGroupMappingEntry ::= SEQUENCE {
3036:     pimGroupMappingOrigin           PimGroupMappingOriginType,
3037:     pimGroupMappingAddressType      InetAddressType,
3038:     pimGroupMappingGrpAddress       InetAddress,
3039:     pimGroupMappingGrpPrefixLength  InetAddressPrefixLength,
3040:     pimGroupMappingRPAddressType    InetAddressType,
3041:     pimGroupMappingRPAddress        InetAddress,
3042:     pimGroupMappingPimMode          PimMode,
3043:     pimGroupMappingPrecedence       Unsigned32
3044: }
3045: 
3046: pimGroupMappingOrigin OBJECT-TYPE
3047:     SYNTAX     PimGroupMappingOriginType
3048:     MAX-ACCESS not-accessible
3049:     STATUS     current
3050:     DESCRIPTION
3051:             "The mechanism by which this group mapping was learned."
3052:     ::= { pimGroupMappingEntry 1 }
3053: 
3054: pimGroupMappingAddressType OBJECT-TYPE
3055:     SYNTAX     InetAddressType
3056:     MAX-ACCESS not-accessible
3057:     STATUS     current
3058:     DESCRIPTION
3059:             "The address type of the IP multicast group prefix."
3060:     ::= { pimGroupMappingEntry 2 }
3061: 
3062: pimGroupMappingGrpAddress OBJECT-TYPE
3063:     SYNTAX     InetAddress (SIZE (4|8|16|20))
3064:     MAX-ACCESS not-accessible
3065:     STATUS     current
3066:     DESCRIPTION
3067:             "The IP multicast group address which, when combined with
3068:             pimGroupMappingGrpPrefixLength, gives the group prefix for
3069:             this mapping.  The InetAddressType is given by the
3070:             pimGroupMappingAddressType object.
3071: 
3072:             This address object is only significant up to
3073:             pimGroupMappingGrpPrefixLength bits.  The remainder of the
3074:             address bits are zero.  This is especially important for
3075:             this index field, which is part of the index of this entry.
3076:             Any non-zero bits would signify an entirely different
3077:             entry."
3078:     ::= { pimGroupMappingEntry 3 }
3079: 
3080: pimGroupMappingGrpPrefixLength OBJECT-TYPE
3081:     SYNTAX     InetAddressPrefixLength (4..128)
3082:     MAX-ACCESS not-accessible
3083:     STATUS     current
3084:     DESCRIPTION
3085:             "The multicast group prefix length, which, when combined
3086:             with pimGroupMappingGrpAddress, gives the group prefix for
3087:             this mapping.  The InetAddressType is given by the
3088:             pimGroupMappingAddressType object.  If
3089:             pimGroupMappingAddressType is 'ipv4' or 'ipv4z', this
3090:             object must be in the range 4..32.  If
3091:             pimGroupMappingAddressType is 'ipv6' or 'ipv6z', this object
3092:             must be in the range 8..128."
3093:     ::= { pimGroupMappingEntry 4 }
3094: 
3095: pimGroupMappingRPAddressType OBJECT-TYPE
3096:     SYNTAX     InetAddressType
3097:     MAX-ACCESS not-accessible
3098:     STATUS     current
3099:     DESCRIPTION
3100:             "The address type of the RP to be used for groups within
3101:             this group prefix, or unknown(0) if no RP is to be used or
3102:             if the RP address is unknown.  This object must be
3103:             unknown(0) if pimGroupMappingPimMode is ssm(2), or if
3104:             pimGroupMappingOrigin is embedded(6)."
3105:     ::= { pimGroupMappingEntry 5 }
3106: 
3107: pimGroupMappingRPAddress OBJECT-TYPE
3108:     SYNTAX     InetAddress (SIZE (0|4|8|16|20))
3109:     MAX-ACCESS not-accessible
3110:     STATUS     current
3111:     DESCRIPTION
3112:             "The IP address of the RP to be used for groups within this
3113:             group prefix.  The InetAddressType is given by the
3114:             pimGroupMappingRPAddressType object."
3115:     ::= { pimGroupMappingEntry 6 }
3116: 
3117: pimGroupMappingPimMode OBJECT-TYPE
3118:     SYNTAX     PimMode
3119:     MAX-ACCESS read-only
3120:     STATUS     current
3121:     DESCRIPTION
3122:             "The PIM mode to be used for groups in this group prefix."
3123:     ::= { pimGroupMappingEntry 7 }
3124: 
3125: pimGroupMappingPrecedence OBJECT-TYPE
3126:     SYNTAX     Unsigned32
3127:     MAX-ACCESS read-only
3128:     STATUS     current
3129:     DESCRIPTION
3130:             "The precedence of this row, used in the algorithm that
3131:             determines which row applies to a given group address
3132:             (described above).  Numerically higher values for this
3133:             object indicate lower precedences, with the value zero
3134:             denoting the highest precedence.
3135: 
3136:             The absolute values of this object have a significance only
3137:             on the local router and do not need to be coordinated with
3138:             other routers."
3139:     ::= { pimGroupMappingEntry 8 }
3140: 
3141: --
3142: -- PIM Notifications
3143: --
3144: 
3145: pimNeighborLoss NOTIFICATION-TYPE
3146:     OBJECTS { pimNeighborUpTime }
3147:     STATUS     current
3148:     DESCRIPTION
3149:             "A pimNeighborLoss notification signifies the loss of an
3150:             adjacency with a neighbor.  This notification should be
3151:             generated when the neighbor timer expires, and the router
3152:             has no other neighbors on the same interface with the same
3153:             IP version and a lower IP address than itself.
3154: 
3155:             This notification is generated whenever the counter
3156:             pimNeighborLossCount is incremented, subject
3157:             to the rate limit specified by
3158:             pimNeighborLossNotificationPeriod."
3159:     REFERENCE "RFC 4601 section 4.3.2"
3160:     ::= { pimNotifications 1 }
3161: 
3162: pimInvalidRegister NOTIFICATION-TYPE
3163:     OBJECTS { pimGroupMappingPimMode,
3164:               pimInvalidRegisterAddressType,
3165:               pimInvalidRegisterOrigin,
3166:               pimInvalidRegisterGroup,
3167:               pimInvalidRegisterRp
3168:             }
3169:     STATUS      current
3170:     DESCRIPTION
3171:             "A pimInvalidRegister notification signifies that an invalid
3172:             PIM Register message was received by this device.
3173: 
3174:             This notification is generated whenever the counter
3175:             pimInvalidRegisterMsgsRcvd is incremented, subject to the
3176:             rate limit specified by
3177:             pimInvalidRegisterNotificationPeriod."
3178:     REFERENCE "RFC 4601 section 4.4.2"
3179:     ::= { pimNotifications 2 }
3180: 
3181: pimInvalidJoinPrune NOTIFICATION-TYPE
3182:     OBJECTS { pimGroupMappingPimMode,
3183:               pimInvalidJoinPruneAddressType,
3184:               pimInvalidJoinPruneOrigin,
3185:               pimInvalidJoinPruneGroup,
3186:               pimInvalidJoinPruneRp,
3187:               pimNeighborUpTime
3188:             }
3189:     STATUS      current
3190:     DESCRIPTION
3191:             "A pimInvalidJoinPrune notification signifies that an
3192:             invalid PIM Join/Prune message was received by this device.
3193: 
3194:             This notification is generated whenever the counter
3195:             pimInvalidJoinPruneMsgsRcvd is incremented, subject to the
3196:             rate limit specified by
3197:             pimInvalidJoinPruneNotificationPeriod."
3198:     REFERENCE "RFC 4601 section 4.5.2"
3199:     ::= { pimNotifications 3 }
3200: 
3201: pimRPMappingChange NOTIFICATION-TYPE
3202:     OBJECTS { pimGroupMappingPimMode,
3203:               pimGroupMappingPrecedence
3204:             }
3205:     STATUS      current
3206:     DESCRIPTION
3207:             "A pimRPMappingChange notification signifies a change to the
3208:             active RP mapping on this device.
3209:             This notification is generated whenever the counter
3210:             pimRPMappingChangeCount is incremented, subject to the
3211:             rate limit specified by
3212:             pimRPMappingChangeNotificationPeriod."
3213:     ::= { pimNotifications 4 }
3214: 
3215: pimInterfaceElection NOTIFICATION-TYPE
3216:     OBJECTS { pimInterfaceAddressType,
3217:               pimInterfaceAddress }
3218:     STATUS      current
3219:     DESCRIPTION
3220:             "A pimInterfaceElection notification signifies that a new DR
3221:             or DF has been elected on a network.
3222: 
3223:             This notification is generated whenever the counter
3224:             pimInterfaceElectionWinCount is incremented, subject to the
3225:             rate limit specified by
3226:             pimInterfaceElectionNotificationPeriod."
3227:     REFERENCE "RFC 4601 section 4.3.2 and
3228:                I-D.ietf-pim-bidir section 3.5.2"
3229:     ::= { pimNotifications 5 }
3230: 
3231: --
3232: -- Conformance Information
3233: --
3234: 
3235: pimMIBConformance OBJECT IDENTIFIER ::= { pimStdMIB 2 }
3236: pimMIBCompliances OBJECT IDENTIFIER ::= { pimMIBConformance 1 }
3237: pimMIBGroups      OBJECT IDENTIFIER ::= { pimMIBConformance 2 }
3238: 
3239: --
3240: -- Compliance Statements
3241: --
3242: 
3243: pimMIBComplianceAsm MODULE-COMPLIANCE
3244:     STATUS  current
3245:     DESCRIPTION
3246:             "The compliance statement for PIM-SM MIB."
3247:     MODULE  -- this module
3248:     MANDATORY-GROUPS { pimTopologyGroup,
3249:                        pimSsmGroup,
3250:                        pimRPConfigGroup,
3251:                        pimSmGroup }
3252: 
3253:       GROUP   pimNotificationGroup
3254:       DESCRIPTION
3255:           "This group is optional."
3256: 
3257:       GROUP   pimTuningParametersGroup
3258:       DESCRIPTION
3259:           "This group is optional."
3260: 
3261:       GROUP   pimRouterStatisticsGroup
3262:       DESCRIPTION
3263:           "This group is optional."
3264: 
3265:       GROUP   pimAnycastRpGroup
3266:       DESCRIPTION
3267:           "This group is optional."
3268: 
3269:       GROUP   pimStaticRPPrecedenceGroup
3270:       DESCRIPTION
3271:           "This group is optional."
3272: 
3273:       GROUP   pimNetMgmtNotificationObjects
3274:       DESCRIPTION
3275:           "This group is optional."
3276: 
3277:       GROUP   pimNetMgmtNotificationGroup
3278:       DESCRIPTION
3279:           "This group is optional."
3280: 
3281:       GROUP   pimDiagnosticsGroup
3282:       DESCRIPTION
3283:           "This group is optional."
3284: 
3285:       GROUP   pimDeviceStorageGroup
3286:       DESCRIPTION
3287:           "This group is optional."
3288: 
3289:     ::= { pimMIBCompliances 1 }
3290: 
3291: pimMIBComplianceBidir MODULE-COMPLIANCE
3292:     STATUS  current
3293:     DESCRIPTION
3294:             "The compliance statement for Bidir-PIM MIB."
3295:     MODULE  -- this module
3296:     MANDATORY-GROUPS { pimTopologyGroup,
3297:                        pimRPConfigGroup,
3298:                        pimSmGroup,
3299:                        pimBidirGroup }
3300: 
3301:       GROUP   pimNotificationGroup
3302:       DESCRIPTION
3303:           "This group is optional."
3304: 
3305:       GROUP   pimTuningParametersGroup
3306:       DESCRIPTION
3307:           "This group is optional."
3308: 
3309:       GROUP   pimRouterStatisticsGroup
3310:       DESCRIPTION
3311:           "This group is optional."
3312: 
3313:       GROUP   pimAnycastRpGroup
3314:       DESCRIPTION
3315:           "This group is optional."
3316: 
3317:       GROUP   pimStaticRPPrecedenceGroup
3318:       DESCRIPTION
3319:           "This group is optional."
3320: 
3321:       GROUP   pimNetMgmtNotificationObjects
3322:       DESCRIPTION
3323:           "This group is optional."
3324: 
3325:       GROUP   pimNetMgmtNotificationGroup
3326:       DESCRIPTION
3327:           "This group is optional."
3328: 
3329:       GROUP   pimDiagnosticsGroup
3330:       DESCRIPTION
3331:           "This group is optional."
3332: 
3333:       GROUP   pimDeviceStorageGroup
3334:       DESCRIPTION
3335:           "This group is optional."
3336: 
3337:     ::= { pimMIBCompliances 2 }
3338: 
3339: pimMIBComplianceSsm MODULE-COMPLIANCE
3340:     STATUS  current
3341:     DESCRIPTION
3342:             "The compliance statement for PIM SSM MIB."
3343:     MODULE  -- this module
3344:     MANDATORY-GROUPS { pimTopologyGroup,
3345:                        pimSsmGroup }
3346: 
3347:       GROUP   pimNotificationGroup
3348:       DESCRIPTION
3349:           "This group is optional."
3350: 
3351:       GROUP   pimTuningParametersGroup
3352:       DESCRIPTION
3353:           "This group is optional."
3354: 
3355:       GROUP   pimRouterStatisticsGroup
3356:       DESCRIPTION
3357:           "This group is optional."
3358: 
3359:       GROUP   pimNetMgmtNotificationObjects
3360:       DESCRIPTION
3361:           "This group is optional."
3362: 
3363:       GROUP   pimNetMgmtNotificationGroup
3364:       DESCRIPTION
3365:           "This group is optional."
3366: 
3367:       GROUP   pimDiagnosticsGroup
3368:       DESCRIPTION
3369:           "This group is optional."
3370: 
3371:       GROUP   pimDeviceStorageGroup
3372:       DESCRIPTION
3373:           "This group is optional."
3374: 
3375:     ::= { pimMIBCompliances 3 }
3376: 
3377: pimMIBComplianceDm MODULE-COMPLIANCE
3378:     STATUS  current
3379:     DESCRIPTION
3380:             "The compliance statement for PIM-DM MIB."
3381:     MODULE  -- this module
3382:     MANDATORY-GROUPS { pimTopologyGroup,
3383:                        pimSsmGroup,
3384:                        pimRPConfigGroup,
3385:                        pimSmGroup,
3386:                        pimDmGroup }
3387: 
3388:       GROUP   pimNotificationGroup
3389:       DESCRIPTION
3390:           "This group is optional."
3391: 
3392:       GROUP   pimTuningParametersGroup
3393:       DESCRIPTION
3394:           "This group is optional."
3395: 
3396:       GROUP   pimRouterStatisticsGroup
3397:       DESCRIPTION
3398:           "This group is optional."
3399: 
3400:       GROUP   pimAnycastRpGroup
3401:       DESCRIPTION
3402:           "This group is optional."
3403: 
3404:       GROUP   pimStaticRPPrecedenceGroup
3405:       DESCRIPTION
3406:           "This group is optional."
3407: 
3408:       GROUP   pimNetMgmtNotificationObjects
3409:       DESCRIPTION
3410:           "This group is optional."
3411: 
3412:       GROUP   pimNetMgmtNotificationGroup
3413:       DESCRIPTION
3414:           "This group is optional."
3415: 
3416:       GROUP   pimDiagnosticsGroup
3417:       DESCRIPTION
3418:           "This group is optional."
3419: 
3420:       GROUP   pimDeviceStorageGroup
3421:       DESCRIPTION
3422:           "This group is optional."
3423: 
3424:     ::= { pimMIBCompliances 4 }
3425: 
3426: --
3427: -- Units of Conformance
3428: --
3429: 
3430: pimTopologyGroup OBJECT-GROUP
3431:     OBJECTS { pimInterfaceAddressType,
3432:               pimInterfaceAddress,
3433:               pimInterfaceGenerationIDValue,
3434:               pimInterfaceDR,
3435:               pimInterfaceDRPriorityEnabled,
3436:               pimInterfaceHelloHoldtime,
3437:               pimInterfaceJoinPruneHoldtime,
3438:               pimInterfaceLanDelayEnabled,
3439:               pimInterfaceEffectPropagDelay,
3440:               pimInterfaceEffectOverrideIvl,
3441:               pimInterfaceSuppressionEnabled,
3442:               pimInterfaceBidirCapable,
3443:               pimNeighborGenerationIDPresent,
3444:               pimNeighborGenerationIDValue,
3445:               pimNeighborUpTime,
3446:               pimNeighborExpiryTime,
3447:               pimNeighborDRPriorityPresent,
3448:               pimNeighborDRPriority,
3449:               pimNeighborLanPruneDelayPresent,
3450:               pimNeighborTBit,
3451:               pimNeighborPropagationDelay,
3452:               pimNeighborOverrideInterval,
3453:               pimNeighborBidirCapable,
3454:               pimNbrSecAddress
3455:             }
3456:     STATUS  current
3457:     DESCRIPTION
3458:             "A collection of read-only objects used to report local PIM
3459:             topology."
3460:     ::= { pimMIBGroups 1 }
3461: 
3462: pimNotificationGroup NOTIFICATION-GROUP
3463:     NOTIFICATIONS { pimNeighborLoss }
3464:     STATUS  current
3465:     DESCRIPTION
3466:             "A collection of notifications for signaling important PIM
3467:             events."
3468:     ::= { pimMIBGroups 2 }
3469: 
3470: pimTuningParametersGroup OBJECT-GROUP
3471:     OBJECTS { pimKeepalivePeriod,
3472:               pimRegisterSuppressionTime,
3473:               pimInterfaceDRPriority,
3474:               pimInterfaceHelloInterval,
3475:               pimInterfaceTrigHelloInterval,
3476:               pimInterfaceJoinPruneInterval,
3477:               pimInterfacePropagationDelay,
3478:               pimInterfaceOverrideInterval,
3479:               pimInterfaceDomainBorder,
3480:               pimInterfaceStubInterface,
3481:               pimInterfaceStatus,
3482:               pimInterfaceStorageType
3483:             }
3484:     STATUS  current
3485:     DESCRIPTION
3486:             "A collection of writeable objects used to configure PIM
3487:             behavior and to tune performance."
3488:     ::= { pimMIBGroups 3 }
3489: 
3490: pimRouterStatisticsGroup OBJECT-GROUP
3491:     OBJECTS { pimStarGEntries,
3492:               pimStarGIEntries,
3493:               pimSGEntries,
3494:               pimSGIEntries,
3495:               pimSGRptEntries,
3496:               pimSGRptIEntries
3497: 
3498:             }
3499:     STATUS  current
3500:     DESCRIPTION
3501:             "A collection of statistics global to the PIM router."
3502:     ::= { pimMIBGroups 4 }
3503: 
3504: pimSsmGroup OBJECT-GROUP
3505:     OBJECTS { pimSGUpTime,
3506:               pimSGPimMode,
3507:               pimSGUpstreamJoinState,
3508:               pimSGUpstreamJoinTimer,
3509:               pimSGUpstreamNeighbor,
3510:               pimSGRPFIfIndex,
3511:               pimSGRPFNextHopType,
3512:               pimSGRPFNextHop,
3513:               pimSGRPFRouteProtocol,
3514:               pimSGRPFRouteAddress,
3515:               pimSGRPFRoutePrefixLength,
3516:               pimSGRPFRouteMetricPref,
3517:               pimSGRPFRouteMetric,
3518:               pimSGSPTBit,
3519:               pimSGKeepaliveTimer,
3520:               pimSGDRRegisterState,
3521:               pimSGDRRegisterStopTimer,
3522:               pimSGRPRegisterPMBRAddressType,
3523:               pimSGRPRegisterPMBRAddress,
3524:               pimSGIUpTime,
3525:               pimSGILocalMembership,
3526:               pimSGIJoinPruneState,
3527:               pimSGIPrunePendingTimer,
3528:               pimSGIJoinExpiryTimer,
3529:               pimSGIAssertState,
3530:               pimSGIAssertTimer,
3531:               pimSGIAssertWinnerAddressType,
3532:               pimSGIAssertWinnerAddress,
3533:               pimSGIAssertWinnerMetricPref,
3534:               pimSGIAssertWinnerMetric
3535:             }
3536:     STATUS  current
3537:     DESCRIPTION
3538:             "A collection of objects to support management of PIM
3539:             routers running the PIM SSM (Source Specific Multicast)
3540:             protocol, in PIM mode SM (Sparse Mode)."
3541:     ::= { pimMIBGroups 5 }
3542: 
3543: pimRPConfigGroup OBJECT-GROUP
3544:     OBJECTS { pimStaticRPRPAddress,
3545:               pimStaticRPPimMode,
3546:               pimStaticRPOverrideDynamic,
3547:               pimStaticRPRowStatus,
3548:               pimStaticRPStorageType,
3549:               pimGroupMappingPimMode,
3550:               pimGroupMappingPrecedence
3551:             }
3552:     STATUS  current
3553:     DESCRIPTION
3554:             "A collection of objects to support configuration of RPs
3555:             (Rendezvous Points) and Group Mappings."
3556:     ::= { pimMIBGroups 6 }
3557: 
3558: pimSmGroup OBJECT-GROUP
3559:     OBJECTS { pimStarGUpTime,
3560:               pimStarGPimMode,
3561:               pimStarGRPAddressType,
3562:               pimStarGRPAddress,
3563:               pimStarGPimModeOrigin,
3564:               pimStarGRPIsLocal,
3565:               pimStarGUpstreamJoinState,
3566:               pimStarGUpstreamJoinTimer,
3567:               pimStarGUpstreamNeighborType,
3568:               pimStarGUpstreamNeighbor,
3569:               pimStarGRPFIfIndex,
3570:               pimStarGRPFNextHopType,
3571:               pimStarGRPFNextHop,
3572:               pimStarGRPFRouteProtocol,
3573:               pimStarGRPFRouteAddress,
3574:               pimStarGRPFRoutePrefixLength,
3575:               pimStarGRPFRouteMetricPref,
3576:               pimStarGRPFRouteMetric,
3577:               pimStarGIUpTime,
3578:               pimStarGILocalMembership,
3579:               pimStarGIJoinPruneState,
3580:               pimStarGIPrunePendingTimer,
3581:               pimStarGIJoinExpiryTimer,
3582:               pimStarGIAssertState,
3583:               pimStarGIAssertTimer,
3584:               pimStarGIAssertWinnerAddressType,
3585:               pimStarGIAssertWinnerAddress,
3586:               pimStarGIAssertWinnerMetricPref,
3587:               pimStarGIAssertWinnerMetric,
3588:               pimSGRptUpTime,
3589:               pimSGRptUpstreamPruneState,
3590:               pimSGRptUpstreamOverrideTimer,
3591:               pimSGRptIUpTime,
3592:               pimSGRptILocalMembership,
3593:               pimSGRptIJoinPruneState,
3594:               pimSGRptIPrunePendingTimer,
3595:               pimSGRptIPruneExpiryTimer
3596:             }
3597:     STATUS  current
3598:     DESCRIPTION
3599:             "A collection of objects to support management of PIM
3600:             routers running PIM-SM (Sparse Mode).  The groups
3601:             pimSsmGroup and pimRPConfigGroup are also required."
3602:     ::= { pimMIBGroups 7 }
3603: 
3604: pimBidirGroup OBJECT-GROUP
3605:     OBJECTS { pimInterfaceDFElectionRobustness,
3606:               pimBidirDFElectionWinnerAddressType,
3607:               pimBidirDFElectionWinnerAddress,
3608:               pimBidirDFElectionWinnerUpTime,
3609:               pimBidirDFElectionWinnerMetricPref,
3610:               pimBidirDFElectionWinnerMetric,
3611:               pimBidirDFElectionState,
3612:               pimBidirDFElectionStateTimer
3613:             }
3614:     STATUS  current
3615:     DESCRIPTION
3616:             "A collection of objects to support management of PIM
3617:             routers running BIDIR mode.  The groups pimSsmGroup,
3618:             pimSmGroup and pimRPConfigGroup are also required."
3619:     ::= { pimMIBGroups 8 }
3620: 
3621: pimAnycastRpGroup OBJECT-GROUP
3622:     OBJECTS { pimAnycastRPSetLocalRouter,
3623:               pimAnycastRPSetRowStatus,
3624:               pimAnycastRPSetStorageType
3625:             }
3626:     STATUS  current
3627:     DESCRIPTION
3628:             "A collection of objects to support management of the PIM
3629:             Anycast-RP mechanism."
3630:     ::= { pimMIBGroups 9 }
3631: 
3632: pimStaticRPPrecedenceGroup OBJECT-GROUP
3633:     OBJECTS { pimStaticRPPrecedence }
3634:     STATUS  current
3635:     DESCRIPTION
3636:             "A collection of objects to allow fine control of
3637:             interactions between static RP configuration and
3638:             dynamically acquired group to RP mappings."
3639:     ::= { pimMIBGroups 10 }
3640: 
3641: pimNetMgmtNotificationObjects OBJECT-GROUP
3642:     OBJECTS { pimInvalidRegisterNotificationPeriod,
3643:               pimInvalidRegisterMsgsRcvd,
3644:               pimInvalidRegisterAddressType,
3645:               pimInvalidRegisterOrigin,
3646:               pimInvalidRegisterGroup,
3647:               pimInvalidRegisterRp,
3648:               pimInvalidJoinPruneNotificationPeriod,
3649:               pimInvalidJoinPruneMsgsRcvd,
3650:               pimInvalidJoinPruneAddressType,
3651:               pimInvalidJoinPruneOrigin,
3652:               pimInvalidJoinPruneGroup,
3653:               pimInvalidJoinPruneRp,
3654:               pimRPMappingNotificationPeriod,
3655:               pimRPMappingChangeCount,
3656:               pimInterfaceElectionNotificationPeriod,
3657:               pimInterfaceElectionWinCount
3658:             }
3659:     STATUS  current
3660:     DESCRIPTION
3661:             "A collection of objects to support notification of PIM
3662:             network management events."
3663:     ::= { pimMIBGroups 11 }
3664: 
3665: pimNetMgmtNotificationGroup NOTIFICATION-GROUP
3666:     NOTIFICATIONS { pimInvalidRegister,
3667:                     pimInvalidJoinPrune,
3668:                     pimRPMappingChange,
3669:                     pimInterfaceElection
3670:                   }
3671:     STATUS  current
3672:     DESCRIPTION
3673:             "A collection of notifications for signaling PIM network
3674:             management events."
3675:     ::= { pimMIBGroups 12 }
3676: 
3677: pimDiagnosticsGroup OBJECT-GROUP
3678:     OBJECTS { pimInAsserts,
3679:               pimOutAsserts,
3680:               pimLastAssertInterface,
3681:               pimLastAssertGroupAddressType,
3682:               pimLastAssertGroupAddress,
3683:               pimLastAssertSourceAddressType,
3684:               pimLastAssertSourceAddress,
3685:               pimNeighborLossNotificationPeriod,
3686:               pimNeighborLossCount
3687:             }
3688:     STATUS  current
3689:     DESCRIPTION
3690:             "Objects providing additional diagnostics related to a PIM
3691:             router."
3692:     ::= { pimMIBGroups 13 }
3693: 
3694: pimDmGroup OBJECT-GROUP
3695:     OBJECTS {
3696:               pimRefreshInterval,
3697:               pimInterfacePruneLimitInterval,
3698:               pimInterfaceGraftRetryInterval,
3699:               pimInterfaceSRPriorityEnabled,
3700:               pimNeighborSRCapable,
3701:               pimSGUpstreamPruneState,
3702:               pimSGUpstreamPruneLimitTimer,
3703:               pimSGOriginatorState,
3704:               pimSGSourceActiveTimer,
3705:               pimSGStateRefreshTimer
3706:             }
3707:     STATUS  current
3708:     DESCRIPTION
3709:             "A collection of objects required for management of PIM
3710:             Dense Mode (PIM-DM) function.  The groups pimSsmGroup and
3711:             pimSmGroup are also required."
3712:     REFERENCE "RFC 3973"
3713:     ::= { pimMIBGroups 14 }
3714: 
3715: pimDeviceStorageGroup OBJECT-GROUP
3716:     OBJECTS { pimDeviceConfigStorageType
3717:             }
3718:     STATUS  current
3719:     DESCRIPTION
3720:             "An object that specifies the volatility of global PIM
3721:             configuration settings on this device."
3722:     ::= { pimMIBGroups 15 }
3723: 
3724: END
3725: 
3726: -- 
3727: --    Copyright (C) The IETF Trust (2007).  This document is subject to the
3728: --    rights, licenses and restrictions contained in BCP 78, and except as
3729: --    set forth therein, the authors retain all their rights.
3730: -- 
3731: -- 
3732: -- Acknowledgment
3733: -- 
3734: --    Funding for the RFC Editor function is currently provided by the
3735: --    Internet Society.
3736: