smilint output for ./MPLS-FRR-MIB


Message Severities
SeverityCount
severe10
error9
change recommended1
warning5
fyi3
Message Types
TypeCount
augment-no-row (error)1
basetype-not-imported (error)6
group-membership (change recommended)1
import-unused (warning)1
internal-flushing (warning)3
internal-other (severe)3
object-identifier-unknown (severe)4
oid-registered (severe)3
previous-definition (fyi)3
row-name-table-name (warning)1
table-type (error)1
type-unknown (error)1

Messages:

MPLS-FRR-MIB

   1: -- extracted from draft-ietf-mpls-fastreroute-mib-02.txt
   2: -- at Sat Feb  7 06:16:40 2004
   3: 
   4: MPLS-FRR-MIB DEFINITIONS ::= BEGIN
   5: 
   6:     IMPORTS
   7:        MODULE-IDENTITY, OBJECT-TYPE,
   8:        Integer32, Unsigned32, Counter32,
   9:        NOTIFICATION-TYPE, experimental
  10:           FROM SNMPv2-SMI
  11:        MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
  12:           FROM SNMPv2-CONF
  13:        TEXTUAL-CONVENTION, TruthValue, RowStatus,
  13: warning - warning: identifier `TEXTUAL-CONVENTION' imported from module `SNMPv2-TC' is never used
  14:        TimeStamp
  15:           FROM SNMPv2-TC
  16:        InterfaceIndex, InterfaceIndexOrZero
  17:           FROM IF-MIB
  18:        MplsTunnelIndex, MplsTunnelInstanceIndex,
  19:        MplsTunnelAffinity, MplsLsrIdentifier
  20:           FROM MPLS-TC-MIB
  21:        InetAddressType, InetAddress
  22:           FROM INET-ADDRESS-MIB
  23:        ;
  24: 
  25:     mplsFrrMIB MODULE-IDENTITY
  26:        LAST-UPDATED
  27:           "200211011200Z" -- 01 November 2002 12:00:00 GMT
  28:        ORGANIZATION
  29:           "Multiprotocol Label Switching (MPLS) Working Group"
  30:        CONTACT-INFO
  31:             "
  32:                      Riza Cetin
  33:              Postal: Alcatel
  34:                      Francis Wellesplein 1
  35:                      B-2018 Antwerp, Belgium
  36:              Tel:    +32-3-2404735
  37:              Email:  riza.cetin@alcatel.be
  38: 
  39:                      Stefaan De Cnodder
  40:              Postal: Alcatel
  41:                      Francis Wellesplein 1
  42:                      B-2018 Antwerp, Belgium
  43:              Tel:    +32-3-2408515
  44:              Email:  Stefaan.de_cnodder@alcatel.be
  45: 
  46:                      Der-Hwa Gan
  47:              Postal: Juniper Networks, Inc.
  48:                      1194 N. Mathilda Avenue
  49:                      Sunnyvale, CA 94089
  50:              Tel:    +1-408-745-20-74
  51:              Email:  dhg@juniper.net
  52: 
  53:                      Thomas D. Nadeau
  54:              Postal: Cisco Systems, Inc.
  55:                      250 Apollo Drive
  56:                      Chelmsford, MA 01924
  57:              Tel:    +1-978-244-3051
  58:              Email:  tnadeau@cisco.com
  59: 
  60:             "
  61:        DESCRIPTION
  62:          "This MIB module contains managed object definitions for MPLS
  63:           Fast Reroute (FRR) as defined in:Pan, P., Gan, D., Swallow, G.,
  64:           Vasseur, J.Ph., Cooper, D., Atlas, A., Jork, M., Fast Reroute
  65:           Techniques in RSVP-TE, draft-ietf-mpls-rsvp-lsp-fastreroute-
  66:           00.txt, January 2002."
  67: 
  68:     -- Revision history.
  69:        REVISION
  70:             "200211011200Z" -- 01 November 2002 12:00:00 GMT
  71:        DESCRIPTION
  72:             "Added support for Facility-based FRR.
  73: 
  74:              Removed tables that were redundant with
  75:                other MPLS MIBs.
  76: 
  77:              Assigned experimental.120."
  78: 
  79:        REVISION
  80:             "200203221200Z" -- 18 April 2002 12:00:00 GMT
  81:        DESCRIPTION
  82:             "Initial draft version."
  83: 
  84:        ::= { experimental 120 } -- to be assigned under mplsMIB.
  85: 
  86:     -- End of MPLS Fast Reroute textual-conventions.
  87: 
  88:     -- Top level components of this MIB.
  89:     mplsFrrNotif         OBJECT IDENTIFIER ::= { mplsFrrMIB 0 }
  90:     mplsFrrScalars       OBJECT IDENTIFIER ::= { mplsFrrMIB 1 }
  91:     mplsFrrObjects       OBJECT IDENTIFIER ::= { mplsFrrMIB 2 }
  92: 
  93:     -- objects that work for either method of FRR
  94:     mplsFrrGeneralObjects OBJECT IDENTIFIER ::= { mplsFrrObjects 1 }
  95: 
  96:     -- objects defined for 1-to-1 style FRR
  97:     mplsFrr1to1Objects   OBJECT IDENTIFIER ::= { mplsFrrObjects 2 }
  98: 
  99:     -- objects defined for Facility Backup style FRR
 100:     mplsFrrFacObjects    OBJECT IDENTIFIER ::= { mplsFrrObjects 3 }
 101: 
 102:     --
 103:     -- Ed Note: need to define two conformance statements: one for
 104:     -- one for 1-2-1 and for Facility.  Might need separate ones for
 105:     -- read-only vs. read-write too.  There is currently just a single
 106:     -- conformance statement due to time constraints.
 107:     --
 108:     mplsFrrConformance   OBJECT IDENTIFIER ::= { mplsFrrMIB 3 }
 109: 
 110:     -- MPLS Fast Reroute scalars.
 111: 
 112:     mplsFrrDetourIncoming OBJECT-TYPE
 113:        SYNTAX        Unsigned32
 114:        MAX-ACCESS    read-only
 115:        STATUS        current
 116:        DESCRIPTION
 117:          "The number of detour LSPs entering the device if
 118:          mplsFrrConstProtectionMethod is set to oneToOneBackup(1),
 119:          or 0 if mplsFrrConstProtectionMethod is set to
 120:          facilityBackup(2)."
 121:        DEFVAL { 0 }
 122:        ::= { mplsFrrScalars 1 }
 123: 
 124:     mplsFrrDetourOutgoing OBJECT-TYPE
 125:        SYNTAX        Unsigned32
 126:        MAX-ACCESS    read-only
 127:        STATUS        current
 128:        DESCRIPTION
 129:          "The number of detour LSPs leaving the device if
 130:          mplsFrrConstProtectionMethod is set to oneToOneBackup(1), or
 131:          0 if mplsFrrConstProtectionMethod is set to
 132:          facilityBackup(2)."
 133:        DEFVAL { 0 }
 134:        ::= { mplsFrrScalars 2 }
 135: 
 136:     mplsFrrDetourOriginating OBJECT-TYPE
 137:        SYNTAX        Unsigned32
 138:        MAX-ACCESS    read-only
 139:        STATUS        current
 140:        DESCRIPTION
 141:          "The number of detour LSPs originating at this PLR if
 142:          mplsFrrConstProtectionMethod is set to oneToOneBackup(1).
 143:          This object MUST return 0 if the mplsFrrConstProtectionMethod
 144:          is set to facilityBackup(2)."
 145:        DEFVAL { 0 }
 146:        ::= { mplsFrrScalars 3 }
 147: 
 148:     mplsFrrSwitchover OBJECT-TYPE
 149:        SYNTAX        Unsigned32
 150:        MAX-ACCESS    read-only
 151:        STATUS        current
 152:        DESCRIPTION
 153:          "The number of tunnel instances that are switched over to their
 154:          corresponding detour LSP if mplsFrrConstProtectionMethod is set
 155:          to oneToOneBackup(1), or tunnel instances being switched over if
 156:          mplsFrrConstProtectionMethod is set to facilityBackup(2)."
 157:        DEFVAL { 0 }
 158:        ::= { mplsFrrScalars 4 }
 159: 
 160:     mplsFrrConfIfs OBJECT-TYPE
 161:        SYNTAX        Unsigned32
 162:        MAX-ACCESS    read-only
 163:        STATUS        current
 164:        DESCRIPTION
 165:          "Indicates the number of MPLS interfaces configured for
 166:           protection by the FRR feature, otherwise this value
 167:           MUST return 0 to indicate that LSPs traversing any
 168:           interface may be protected."
 169:        DEFVAL { 0 }
 170:        ::= { mplsFrrScalars 5 }
 171: 
 172:     mplsFrrActProtectedIfs OBJECT-TYPE
 173:        SYNTAX        Unsigned32
 174:        MAX-ACCESS    read-only
 175:        STATUS        current
 176:        DESCRIPTION
 177:          "Indicates the number of interfaces currently being protected
 178:           by the FRR feature if mplsFrrConstProtectionMethod is set to
 179:           facilityBackup(2), otherwise this value should return 0 to
 180:           indicate that LSPs traversing any interface may be protected.
 181:           This value MUST be less than or equal to mplsFrrConfIfs."
 182:        DEFVAL { 0 }
 183:        ::= { mplsFrrScalars 6 }
 184: 
 185:     mplsFrrConfProtectedTuns OBJECT-TYPE
 186:        SYNTAX        Unsigned32
 187:        MAX-ACCESS    read-only
 188:        STATUS        current
 189:        DESCRIPTION
 190:          "Indicates the number of bypass tunnels configured to
 191:           protect facilities on this LSR using the FRR feature
 192:           if mplsFrrConstProtectionMethod is set to
 193:           facilityBackup(2), otherwise this value MUST return
 194:           0."
 195:        DEFVAL { 0 }
 196:        ::= { mplsFrrScalars 7 }
 197: 
 198:     mplsFrrActProtectedTuns OBJECT-TYPE
 199:        SYNTAX        Unsigned32
 200:        MAX-ACCESS    read-only
 201:        STATUS        current
 202:        DESCRIPTION
 203:          "Indicates the number of bypass tunnels indicated in
 204:           mplsFrrConfProtectedTuns whose operStatus
 205:           is up(1) indicating that they are currently protecting
 206:           facilities on this LSR using the FRR feature. This
 207:           object MUST return 0 if mplsFrrConstProtectionMethod
 208:           is set to oneToOneBackup(1)."
 209:        DEFVAL { 0 }
 210:        ::= { mplsFrrScalars 8 }
 211: 
 212:     mplsFrrActivelyProtectedLSPs OBJECT-TYPE
 213:        SYNTAX        Unsigned32
 214:        MAX-ACCESS    read-only
 215:        STATUS        current
 216:        DESCRIPTION
 217:          "Indicates the number of LSPs currently protected by
 218:           the FRR feature. If mplsFrrConstProtectionMethod is set
 219:           to oneToOneBackup(1)this object MUST return 0."
 220:        DEFVAL { 0 }
 221:        ::= { mplsFrrScalars 9 }
 222: 
 223:     mplsFrrConstProtectionMethod OBJECT-TYPE
 224:        SYNTAX        INTEGER { oneToOneBackup(0),
 225:                                facilityBackup(1)
 226:                              }
 227:        MAX-ACCESS    read-write
 228:        STATUS        current
 229:        DESCRIPTION
 230:          "Indicates which protection method is to be used for fast
 231:           reroute. Some devices may require a reboot of their routing
 232:           processors if this variable is changed. An agent which
 233:           does not wish to reboot or modify its FRR mode
 234:           MUST return an inconsistentValue error. Please
 235:           consult the device's agent capability statement
 236:           for more details."
 237:        ::= { mplsFrrScalars 10 }
 238: 
 239:     mplsFrrNotifsEnabled OBJECT-TYPE
 240:         SYNTAX            TruthValue
 241:         MAX-ACCESS        read-write
 242:         STATUS            current
 243:         DESCRIPTION
 244:             "Enables or disables FRR notifications defined in this MIB
 245:             module. Notifications are disabled by default."
 246:         DEFVAL { false }
 247:     ::= { mplsFrrScalars 11 }
 248: 
 249:     mplsFrrLogTableMaxEntries OBJECT-TYPE
 250:         SYNTAX            Unsigned32
 251:         MAX-ACCESS        read-write
 252:         STATUS            current
 253:         DESCRIPTION
 254:             "Indicates the maximum number of entries allowed in the FRR
 255:              Log table. Agents receiving SETs for values that cannot be
 256:              used must return an inconsistent value error. If a manager
 257:              sets this value to 0, this indicates that no logging should
 258:              take place by the agent.
 259: 
 260:              If this value is returned as 0, this indicates
 261:              that no additional log entries will be added to the current
 262:              table either because the table has been completely
 263:              filled or logging has been disabled. However, agents
 264:              may wish to not delete existing entries in the log table
 265:              so that managers may review them in the future.
 266: 
 267:              It is implied that when mplsFrrLogTableCurrEntries
 268:              has reached the value of this variable, that logging
 269:              entries may not continue to be added to the table,
 270:              although existing ones may remain.  Furthermore, an
 271:              agent may begin to delete existing (perhaps the
 272:              oldest entries) entries to make room for new ones."
 273:         DEFVAL { 0 }
 274:     ::= { mplsFrrScalars 12 }
 275: 
 276:     mplsFrrLogTableCurrEntries OBJECT-TYPE
 277:         SYNTAX            Counter32
 278:         MAX-ACCESS        read-only
 279:         STATUS            current
 280:         DESCRIPTION
 281:             "Indicates the current number of entries in the FRR log
 282:             table."
 283:     ::= { mplsFrrScalars 13 }
 284: 
 285:     mplsFrrNotifMaxRate OBJECT-TYPE
 286:        SYNTAX       Unsigned32
 287:        MAX-ACCESS   read-write
 288:        STATUS       current
 289:        DESCRIPTION
 290:            "This variable indicates the number of milliseconds
 291:             that must elapse between notification emissions. If
 292:             events occur more rapidly, the implementation may
 293:             simply fail to emit these notifications during that
 294:             period, or may queue them until an appropriate
 295:             time in the future. A value of 0 means no minimum
 296:             elapsed period is specified."
 297:        DEFVAL       { 0 }
 298:     ::= { mplsFrrScalars 14 }
 299: 
 300:     --
 301:     --  General FRR Table Section
 302:     --
 303:     --  These tables apply to both types of FRR
 304:     --  and should be implemented by all LSRs supporting
 305:     --  FRR.
 306:     --
 307: 
 308:     -- MPLS Fast Reroute Constraints table
 309: 
 310:     mplsFrrConstTable OBJECT-TYPE
 311:        SYNTAX        SEQUENCE OF MplsFrrConstEntry
 312:        MAX-ACCESS    not-accessible
 313:        STATUS        current
 314:        DESCRIPTION
 315:          "This table shows backup LSP setup constraints."
 316:        ::= {  mplsFrrGeneralObjects 1 }
 317: 
 318:     mplsFrrConstEntry OBJECT-TYPE
 319:        SYNTAX        MplsFrrConstEntry
 320:        MAX-ACCESS    not-accessible
 321:        STATUS        current
 322:        DESCRIPTION
 323:          "An entry in this table represents detour LSP or bypass tunnel
 324:           setup constraints for a tunnel instance to be protected by detour
 325:           LSPs or a tunnel.
 326: 
 327:           Agents must allow entries in this table to be
 328:           created only for tunnel instances that require fast-reroute.
 329:           Entries indexed with mplsFrrConstIfIndex set to 0 apply to all
 330:           interfaces on this device for which the FRR feature can operate
 331:           on."
 332:        INDEX { mplsFrrConstIfIndex,
 333:                mplsFrrConstTunnelIndex,
 334:                mplsFrrConstTunnelInstance
 335:              }
 336:        ::= { mplsFrrConstTable 1 }
 337: 
 338:     MplsFrrConstEntry ::= SEQUENCE {
 339:           mplsFrrConstIfIndex           InterfaceIndexOrZero,
 340:           mplsFrrConstTunnelIndex       MplsTunnelIndex,
 341:           mplsFrrConstTunnelInstance    MplsTunnelInstanceIndex,
 342:           mplsFrrConstProtectionType    INTEGER,
 343:           mplsFrrConstSetupPrio         Unsigned32,
 344:           mplsFrrConstHoldingPrio       Unsigned32,
 345:           mplsFrrConstInclAnyAffinity   MplsTunnelAffinity,
 346:           mplsFrrConstInclAllAffinity   MplsTunnelAffinity,
 347:           mplsFrrConstExclAnyAffinity   MplsTunnelAffinity,
 348:           mplsFrrConstHopLimit          Unsigned32,
 349:           mplsFrrConstBandwidth         Integer32,
 350:           mplsFrrConstRowStatus         RowStatus
 351:     }
 352: 
 353:     mplsFrrConstIfIndex  OBJECT-TYPE
 354:        SYNTAX        InterfaceIndexOrZero
 355:        MAX-ACCESS    not-accessible
 356:        STATUS        current
 357:        DESCRIPTION
 358:          "Uniquely identifies an interface for which fast reroute is
 359:          configured. Tabular entries indexed with a 0 value apply to all
 360:          interfaces on this device for which the FRR feature can operate
 361:          on."
 362:        ::= { mplsFrrConstEntry 1 }
 363: 
 364:     mplsFrrConstTunnelIndex OBJECT-TYPE
 365:        SYNTAX        MplsTunnelIndex
 366:        MAX-ACCESS    not-accessible
 367:        STATUS        current
 368:        DESCRIPTION
 369:          "Uniquely identifies a tunnel for which fast reroute is
 370:           requested."
 371:        ::= { mplsFrrConstEntry 2 }
 372: 
 373:     mplsFrrConstTunnelInstance OBJECT-TYPE
 374:        SYNTAX        MplsTunnelInstanceIndex
 375:        MAX-ACCESS    not-accessible
 376:        STATUS        current
 377:        DESCRIPTION
 378:          "Uniquely identifies an instance of this tunnel for which fast
 379:           reroute is requested.
 380: 
 381:          - lower 16 bits : protected tunnel instance
 382:          - higher 16 bits: must be all zeros"
 383:        ::= { mplsFrrConstEntry 3 }
 384: 
 385:     mplsFrrConstProtectionType OBJECT-TYPE
 386:        SYNTAX        INTEGER { none(0),
 387:                                linkProtection(1),
 388:                                nodeProtection(2)
 389:                              }
 390:        MAX-ACCESS    read-create
 391:        STATUS        current
 392:        DESCRIPTION
 393:          "Indicates type of the resource protection."
 394:        DEFVAL { nodeProtection }
 395:        ::= { mplsFrrConstEntry 4 }
 396: 
 397:     mplsFrrConstSetupPrio OBJECT-TYPE
 398:        SYNTAX        Unsigned32 (0..7)
 399:        MAX-ACCESS    read-create
 400:        STATUS        current
 401:        DESCRIPTION
 402:          "Indicates the setup priority of detour LSP."
 403:        REFERENCE
 404:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al,
 405:           RFC 3209, December 2001"
 406:        DEFVAL { 7 }
 407:        ::= { mplsFrrConstEntry 5 }
 408: 
 409:     mplsFrrConstHoldingPrio OBJECT-TYPE
 410:        SYNTAX        Unsigned32 (0..7)
 411:        MAX-ACCESS    read-create
 412:        STATUS        current
 413:        DESCRIPTION
 414:          "Indicates the holding priority for detour LSP."
 415:        REFERENCE
 416:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al,
 417:           RFC 3209, December 2001"
 418:        DEFVAL { 0 }
 419:        ::= { mplsFrrConstEntry 6 }
 420: 
 421:     mplsFrrConstInclAnyAffinity OBJECT-TYPE
 422:        SYNTAX        MplsTunnelAffinity
 423:        MAX-ACCESS    read-create
 424:        STATUS        current
 425:        DESCRIPTION
 426:          "A link satisfies the include-any constraint if and only if the
 427:           constraint is zero, or the link and the constraint have a
 428:           resource class in common."
 429:        REFERENCE
 430:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al,
 431:           RFC 3209, December 2001."
 432:        DEFVAL { 0 }
 433:        ::= { mplsFrrConstEntry 7 }
 434: 
 435:     mplsFrrConstInclAllAffinity OBJECT-TYPE
 436:        SYNTAX        MplsTunnelAffinity
 437:        MAX-ACCESS    read-create
 438:        STATUS        current
 439:        DESCRIPTION
 440:          "A link satisfies the include-all constraint if and only if the
 441:           link contains all of the administrative groups specified in the
 442:           constraint."
 443:        REFERENCE
 444:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al,
 445:           RFC 3209, December 2001."
 446:        DEFVAL { 0 }
 447:        ::= { mplsFrrConstEntry 8 }
 448: 
 449:     mplsFrrConstExclAnyAffinity OBJECT-TYPE
 449: change recommended - warning: node `mplsFrrConstExclAnyAffinity' must be contained in at least one conformance group
 450:        SYNTAX        MplsTunnelAffinity
 451:        MAX-ACCESS    read-create
 452:        STATUS        current
 453:        DESCRIPTION
 454:          "A link satisfies the exclude-all constraint if and only if the
 455:           link contains none of the administrative groups specified in the
 456:           constraint."
 457:        REFERENCE
 458:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al,
 459:           RFC 3209, December 2001."
 460:        DEFVAL { 0 }
 461:        ::= { mplsFrrConstEntry 9 }
 462: 
 463:     mplsFrrConstHopLimit OBJECT-TYPE
 464:        SYNTAX        Unsigned32 (1..255)
 465:        MAX-ACCESS    read-create
 466:        STATUS        current
 467:        DESCRIPTION
 468:          "The maximum number of hops that the detour LSP may traverse."
 469:        REFERENCE
 470:          "Pan, P., Gan, D., Swallow, G., Vasseur, J.Ph., Cooper, D.,
 471:          Atlas, A., Jork, M., Fast Reroute Techniques in RSVP-TE, draft-
 472:          ietf-mpls-rsvp-lsp-fastreroute-00.txt, January 2002. Work in
 473:          progress."
 474:        DEFVAL { 32 }
 475:     ::= { mplsFrrConstEntry 10 }
 476: 
 477:     mplsFrrConstBandwidth OBJECT-TYPE
 478:        SYNTAX        Integer32
 479:        MAX-ACCESS    read-create
 480:        STATUS        current
 481:        DESCRIPTION
 482:          "This variable represents the bandwidth for detour LSPs of this
 483:          tunnel, in units of thousands of bits per second (Kbps)."
 484:        DEFVAL { 0 }
 485:        ::= { mplsFrrConstEntry 11 }
 486: 
 487:     mplsFrrConstRowStatus OBJECT-TYPE
 488:        SYNTAX        RowStatus
 489:        MAX-ACCESS    read-create
 490:        STATUS        current
 491:        DESCRIPTION
 492:          "This object is used to create, modify, and/or delete a row in
 493:           this table."
 494:        ::= { mplsFrrConstEntry 12 }
 495: 
 496:     -- MPLS Fast Reroute Tunnel Actual Route Hop table
 497: 
 498:     mplsFrrTunARHopTable  OBJECT-TYPE
 498: fyi - info: previous definition of `mplsFrrTunARHopTable'
 499:        SYNTAX             SEQUENCE OF MplsFrrTunARHopEntry
 499: error - unknown type `MplsFrrTunARHopEntry'
 500:        MAX-ACCESS         not-accessible
 501:        STATUS             current
 502:        DESCRIPTION
 503:          "This table extends mplsTunnelARHop table defined in the
 504:           MPLS-TE MIB with fast-reroute objects which specifies the status
 505:           of local protection (availability and in-use) per hop traversed
 506:           by a protected tunnel."
 507:        ::= {  mplsFrrGeneralObjects 2 }
 508: 
 509:     mplsFrrTunARHopEntry  OBJECT-TYPE
 509: fyi - info: previous definition of `mplsFrrTunARHopEntry'
 509: error - table's SEQUENCE OF type does not match row type

 509: warning - warning: row identifier `mplsFrrTunARHopEntry' should have the same prefix as table identifier `mplsFrrLogTable'

 509: error -
row `mplsFrrTunARHopEntry' augments or extends `mplsTunnelARHopEntry' which is not a row
 510:        SYNTAX             MplsFrrTunARHopEntry
 511:        MAX-ACCESS         not-accessible
 512:        STATUS             current
 513:        DESCRIPTION
 514:          "This entry contains fast-reroute protection status of a signle
 515:           protected tunnel hop."
 516:        AUGMENTS { mplsTunnelARHopEntry }
 516: severe - unknown object identifier label `mplsTunnelARHopEntry'
 517:        ::= { mplsFrrTunARHopTable 1 }
 518: 
 519:     mplsFrrTunnARHopEntry    ::= SEQUENCE {
 519: severe - syntax error, unexpected COLON_COLON_EQUAL, expecting OBJECT
 520:         mplsFrrTunARHopProtectAvailable TruthValue,
 521:         mplsFrrTunARHopProtectInUse     TruthValue,
 522:         mplsFrrTunARHopBandwidthProtect TruthValue,
 523:         mplsFrrTunARHopNodeProtect      TruthValue
 524:     }
 524: warning - warning: flushing recent incorrect declaration, see previous error(s)
 525: 
 526:     mplsFrrTunARHopProtectAvailable OBJECT-TYPE
 527:        SYNTAX                       TruthValue
 528:        MAX-ACCESS                   read-only
 529:        STATUS                       current
 530:        DESCRIPTION
 531:          "This object indicates whether local protection provided
 532:           by fast-reroute is available at this hop."
 533:        ::= { mplsFrrTunArHopEntry 1 }
 533: severe - unknown object identifier label `mplsFrrTunArHopEntry'
 534: 
 535:     mplsFrrTunARHopProtectInUse     OBJECT-TYPE
 535: fyi - info: previous definition of `mplsFrrTunARHopProtectInUse'
 536:        SYNTAX                       TruthValue
 537:        MAX-ACCESS                   read-only
 538:        STATUS                       current
 539:        DESCRIPTION
 540:          "This object indicates whether local protection provided
 541:           by fast-reroute is in use at this hop."
 542:        ::= { mplsFrrTunARHopEntry 2 }
 543: 
 544:     mplsFrrTunARHopBandwidthProtect OBJECT-TYPE
 545:        SYNTAX                       TruthValue
 546:        MAX-ACCESS                   read-only
 547:        STATUS                       current
 548:        DESCRIPTION
 549:          "This object indicates whether bandwidth protection 
 550:           is provided by this hop."
 551:        ::= { mplsFrrTunArHopEntry 3 }
 552: 
 553:     mplsFrrTunARHopNodeProtect      OBJECT-TYPE
 554:        SYNTAX                       TruthValue
 555:        MAX-ACCESS                   read-only
 556:        STATUS                       current
 557:        DESCRIPTION
 558:          "This object indicates whether node protection
 559:           is provided by this hop."
 560:        ::= { mplsFrrTunArHopEntry 4 }
 561: 
 562:     -- Fast Reroute Log Table
 563: 
 564:     mplsFrrLogTable OBJECT-TYPE
 565:         SYNTAX            SEQUENCE OF MplsFrrLogEntry
 566:         MAX-ACCESS        not-accessible
 567:         STATUS            current
 568:         DESCRIPTION
 569:             "The fast reroute log table records fast reroute events such
 570:              as protected links going up or down or the FRR feature
 571:              kicking in."
 572:     ::= { mplsFrrGeneralObjects 2 }
 572: severe - identifier `mplsFrrLogTable' registers object identifier already registered by `mplsFrrTunARHopTable'
 573: 
 574:     mplsFrrLogEntry OBJECT-TYPE
 575:         SYNTAX            MplsFrrLogEntry
 576:         MAX-ACCESS        not-accessible
 577:         STATUS            current
 578:         DESCRIPTION
 579:             "An entry in this table is created to describe one fast
 580:              reroute event.  Entries in this table are only created and
 581:              destroyed by the agent implementation. The maximum number
 582:              of entries in this log is governed by the scalar."
 583:         INDEX { mplsFrrLogIndex }
 584:     ::= { mplsFrrLogTable 1 }
 584: severe - identifier `mplsFrrLogEntry' registers object identifier already registered by `mplsFrrTunARHopEntry'
 585: 
 586:     MplsFrrLogEntry ::= SEQUENCE {
 587:         mplsFrrLogIndex                Unsigned32,
 588:         mplsFrrLogEventTime            TimeStamp,
 589:         mplsFrrLogInterface            InterfaceIndexOrZero,
 590:         mplsFrrLogEventType            INTEGER,
 591:         mplsFrrLogEventDuration        TimeTicks,
 591: error - SMIv2 base type `TimeTicks' must be imported from SNMPv2-SMI
 592:         mplsFrrLogEventReasonString    OCTET STRING
 593:     }
 594: 
 595:     mplsFrrLogIndex OBJECT-TYPE
 596:         SYNTAX            Unsigned32
 597:         MAX-ACCESS        not-accessible
 598:         STATUS            current
 599:         DESCRIPTION
 600:             "Uniquely identifies a fast reroute event entry."
 601:     ::= { mplsFrrLogEntry 1 }
 602: 
 603:     mplsFrrLogEventTime OBJECT-TYPE
 604:         SYNTAX            TimeStamp
 605:         MAX-ACCESS        read-only
 606:         STATUS            current
 607:         DESCRIPTION
 608:             "This object provides the amount of time ticks since this
 609:              event occured."
 610:     ::= { mplsFrrLogEntry 2 }
 610: severe - identifier `mplsFrrLogEventTime' registers object identifier already registered by `mplsFrrTunARHopProtectInUse'
 611: 
 612:     mplsFrrLogInterface OBJECT-TYPE
 613:         SYNTAX            InterfaceIndexOrZero
 614:         MAX-ACCESS        read-only
 615:         STATUS            current
 616:         DESCRIPTION
 617:             "This object indicates which interface was affected by this
 618:              FRR event. This value may be set to 0 if
 619:              mplsFrrConstProtectionMethod is set to oneToOneBackup(0)."
 620:     ::= { mplsFrrLogEntry 3 }
 621: 
 622:     mplsFrrLogEventType OBJECT-TYPE
 623:         SYNTAX    INTEGER {
 624:                            other(1),
 625:                            protected(2)
 626:                           }
 627:         MAX-ACCESS        read-only
 628:         STATUS            current
 629:         DESCRIPTION
 630:             "This object describes what type of fast reroute event
 631:              occured."
 632:     ::= { mplsFrrLogEntry 4 }
 633: 
 634:     mplsFrrLogEventDuration OBJECT-TYPE
 635:         SYNTAX            TimeTicks
 636:         MAX-ACCESS        read-only
 636: error - SMIv2 base type `TimeTicks' must be imported from SNMPv2-SMI
 637:         STATUS            current
 638:         DESCRIPTION
 639:             "This object describes the duration of this event."
 640:     ::= { mplsFrrLogEntry 5 }
 641: 
 642:     mplsFrrLogEventReasonString OBJECT-TYPE
 643:         SYNTAX            OCTET STRING (SIZE(128))
 644:         MAX-ACCESS        read-only
 645:         STATUS            current
 646:         DESCRIPTION
 647:             "This object contains an implementation-specific explanation
 648:             of the event."
 649:     ::= { mplsFrrLogEntry 6 }
 650: 
 651: 
 652:     --
 653:     -- One-to-One Specific Tables
 654:     --
 655:     -- Tables in this section pertain only to the 1-1
 656:     -- style of FRR.
 657:     --
 658: 
 659: 
 660:     -- MPLS Fast Reroute Point of Local Repair table
 661: 
 662:     mplsFrrOne2OnePlrTable  OBJECT-TYPE
 663:        SYNTAX        SEQUENCE OF MplsFrrOne2OnePlrEntry
 664:        MAX-ACCESS    not-accessible
 665:        STATUS        current
 666:        DESCRIPTION
 667:          "This table shows the lists of PLRs that initiated detour LSPs
 668:          which affect this node."
 669:        ::= { mplsFrr1to1Objects 1 }
 670: 
 671:     mplsFrrOne2OnePlrEntry  OBJECT-TYPE
 672:        SYNTAX        MplsFrrOne2OnePlrEntry
 673:        MAX-ACCESS    not-accessible
 674:        STATUS        current
 675:        DESCRIPTION
 676:          "An entry in this table represents a PLR together with its
 677:          detour instance. An entry in this table is only created by an
 678:          SNMP agent as instructed by an MPLS signaling protocol."
 679:        INDEX { mplsFrrOne2OnePlrTunIdx,       -- from MPLS-TE MIB
 680:                mplsFrrOne2OnePlrTunDetourInst,-- mplsTunnelTable
 681:                mplsFrrOne2OnePlrTunIngrLSRId, -- Tunnels must exist
 682:                mplsFrrOne2OnePlrTunEgrLSRId,  -- a priori
 683:                mplsFrrOne2OnePlrId    }
 684:        ::= { mplsFrrOne2OnePlrTable 1 }
 685: 
 686:     MplsFrrOne2OnePlrEntry ::= SEQUENCE {
 687:           mplsFrrOne2OnePlrTunIdx         MplsTunnelIndex,
 688:           mplsFrrOne2OnePlrTunDetourInst  MplsTunnelInstanceIndex,
 689:           mplsFrrOne2OnePlrTunIngrLSRId   MplsLsrIdentifier,
 690:           mplsFrrOne2OnePlrTunEgrLSRId    MplsLsrIdentifier,
 691:           mplsFrrOne2OnePlrId             MplsLsrIdentifier,
 692:           mplsFrrOne2OnePlrSenderAddrType InetAddressType,
 693:           mplsFrrOne2OnePlrSenderAddr     InetAddress,
 694:           mplsFrrOne2OnePlrAvoidNAddrType InetAddressType,
 695:           mplsFrrOne2OnePlrAvoidNAddr     InetAddress
 696:     }
 697: 
 698:     mplsFrrOne2OnePlrTunIdx OBJECT-TYPE
 699:        SYNTAX        MplsTunnelIndex
 700:        MAX-ACCESS    not-accessible
 701:        STATUS        current
 702:        DESCRIPTION
 703:          "Uniquely identifies a tunnel between a pair of LSRs
 704:           from the mplsTunnelEntry."
 705:        ::= { mplsFrrOne2OnePlrEntry 1 }
 706: 
 707:     mplsFrrOne2OnePlrTunDetourInst OBJECT-TYPE
 708:        SYNTAX        MplsTunnelInstanceIndex
 709:        MAX-ACCESS    not-accessible
 710:        STATUS        current
 711:        DESCRIPTION
 712:          "Uniquely identifies a detour instance of a tunnel from
 713:           the mplsTunnelEntry.
 714: 
 715:          - lower 16 bits : protected tunnel instance
 716:          - higher 16 bits: detour instance"
 717:        ::= { mplsFrrOne2OnePlrEntry 2 }
 718: 
 719:     mplsFrrOne2OnePlrTunIngrLSRId OBJECT-TYPE
 720:        SYNTAX        MplsLsrIdentifier
 721:        MAX-ACCESS    not-accessible
 722:        STATUS        current
 723:        DESCRIPTION
 724:          "The purpose of this object is to uniquely identity a
 725:            tunnel within a network. When the MPLS signalling
 726:            protocol is rsvp(2) this value SHOULD mimic the
 727:            Extended Tunnel Id field in the SESSION object.
 728:            When the MPLS signalling protocol is crldp(3) this
 729:            value SHOULD mimic the Ingress LSR Router ID field
 730:            in the LSPID TLV object."
 731:        REFERENCE
 732:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels,
 733:            Awduche et al, RFC 3209, December 2001
 734:           2. Constraint-Based LSP Setup using LDP, Jamoussi
 735:            (Editor), RFC 3212, January 2002"
 736:        ::= { mplsFrrOne2OnePlrEntry 3 }
 737: 
 738:      mplsFrrOne2OnePlrTunEgrLSRId OBJECT-TYPE
 739:        SYNTAX        MplsLsrIdentifier
 740:        MAX-ACCESS    not-accessible
 741:        STATUS        current
 742:        DESCRIPTION
 743:          "Specifies the egress LSR ID."
 744:        ::= { mplsFrrOne2OnePlrEntry 4 }
 745: 
 746: 
 747:     mplsFrrOne2OnePlrId OBJECT-TYPE
 748:        SYNTAX        MplsLsrIdentifier
 749:        MAX-ACCESS    not-accessible
 750:        STATUS        current
 751:        DESCRIPTION
 752:          "This value represents the PLR that has initiated a detour LSP
 753:          to protect a tunnel instance."
 754:        ::= { mplsFrrOne2OnePlrEntry 5 }
 755: 
 756:     mplsFrrOne2OnePlrSenderAddrType OBJECT-TYPE
 757:        SYNTAX        InetAddressType
 758:        MAX-ACCESS    read-create
 759:        STATUS        current
 760:        DESCRIPTION
 761:          "Denotes the address type of this detour instance's sender
 762:          address."
 763:        DEFVAL        { ipv4 }
 764:        ::= { mplsFrrOne2OnePlrEntry 6 }
 765: 
 766:     mplsFrrOne2OnePlrSenderAddr OBJECT-TYPE
 767:        SYNTAX        InetAddress
 768:        MAX-ACCESS    read-create
 769:        STATUS        current
 770:        DESCRIPTION
 771:          "If mplsFrrOne2OnePlrSenderAddrType is set to ipv4(1), then this value
 772:          will contain the IPv4 address of this detour instance's sender.
 773:          This object is otherwise insignificant and should contain a
 774:          value of 0."
 775:        ::= { mplsFrrOne2OnePlrEntry 7 }
 776: 
 777:     mplsFrrOne2OnePlrAvoidNAddrType OBJECT-TYPE
 778:        SYNTAX        InetAddressType
 779:        MAX-ACCESS    read-only
 780:        STATUS        current
 781:        DESCRIPTION
 782:          "Denotes the address type of the node that this PLR tries to
 783:          avoid."
 784:        DEFVAL        { ipv4 }
 785:        ::= { mplsFrrOne2OnePlrEntry 8 }
 786: 
 787:     mplsFrrOne2OnePlrAvoidNAddr OBJECT-TYPE
 788:        SYNTAX        InetAddress
 789:        MAX-ACCESS    read-only
 790:        STATUS        current
 791:        DESCRIPTION
 792:          "If mplsFrrOne2OnePlrAvoidNAddrType is set to ipv4(1), then this
 793:          value will contain the IPv4 address of the avoid node. This
 794:          object is otherwise insignificant and should contain a value of
 795:          0."
 796:        ::= { mplsFrrOne2OnePlrEntry 9 }
 797: 
 798:     -- MPLS One-To-One Fast Reroute Detour table.
 799: 
 800:     mplsFrrDetourTable OBJECT-TYPE
 801:        SYNTAX        SEQUENCE OF MplsFrrDetourEntry
 802:        MAX-ACCESS    not-accessible
 803:        STATUS        current
 804:        DESCRIPTION
 805:          "This table shows detour LSPs."
 806:        ::= { mplsFrr1to1Objects 2 }
 807: 
 808:     mplsFrrDetourEntry OBJECT-TYPE
 809:        SYNTAX        MplsFrrDetourEntry
 810:        MAX-ACCESS    not-accessible
 811:        STATUS        current
 812:        DESCRIPTION
 813:          "An entry in this table represents a detour. An entry in this
 814:          table is only created by an SNMP agent as instructed by an MPLS
 815:          signaling protocol. "
 816:        INDEX {
 817:                mplsFrrOne2OnePlrTunIdx,        -- from MPLS-TE MIB
 818:                mplsFrrOne2OnePlrTunDetourInst, -- mplsTunnelTable
 819:                mplsFrrOne2OnePlrTunIngrLSRId,  -- Tunnels must exist
 820:                mplsFrrOne2OnePlrTunEgrLSRId,   -- a priori
 821:           }
 821: severe - syntax error, unexpected '}', expecting UPPERCASE_IDENTIFIER or LOWERCASE_IDENTIFIER or NUMBER
 821: warning - warning: flushing recent incorrect declaration, see previous error(s)
 822:        ::= { mplsFrrDetourTable 1 }
 822: severe - syntax error, unexpected COLON_COLON_EQUAL
 822: warning - warning: flushing recent incorrect declaration, see previous error(s)
 823: 
 824:     MplsFrrDetourEntry ::= SEQUENCE {
 825:           mplsFrrDetourActive             TruthValue,
 826:           mplsFrrDetourMerging            INTEGER,
 827:           mplsFrrDetourMergedDetourInst   MplsTunnelInstanceIndex
 828:     }
 829: 
 830:     mplsFrrDetourActive OBJECT-TYPE
 831:        SYNTAX        TruthValue
 832:        MAX-ACCESS    read-only
 833:        STATUS        current
 834:        DESCRIPTION
 835:          "Indicates whether or not the main LSP has switched over to this
 836:          detour LSP. This is only relevant for detours originated by
 837:          this node."
 838:        ::= { mplsFrrDetourEntry 1 }
 838: severe - unknown object identifier label `mplsFrrDetourEntry'
 839: 
 840:     mplsFrrDetourMerging OBJECT-TYPE
 841:        SYNTAX        INTEGER { none(0),
 842:                                protectedTunnel(1),
 843:                                detour(2)
 844:                              }
 845:        MAX-ACCESS    read-only
 846:        STATUS        current
 847:        DESCRIPTION
 848:          "This value represents whether or not this detour is merged.
 849:          This value MUST be set to none(0) if this detour is not merged.
 850:          This value MUST be set to protectedTunnel(1) if this detour is
 851:          merged with the protected tunnel. This value MUST be set to
 852:          detour(2) if this detour is merged with another detour
 853:          protecting the same tunnel."
 854:        ::= { mplsFrrDetourEntry 2 }
 855: 
 856:     mplsFrrDetourMergedDetourInst OBJECT-TYPE
 857:        SYNTAX        MplsTunnelInstanceIndex
 858:        MAX-ACCESS    read-only
 859:        STATUS        current
 860:        DESCRIPTION
 861:          "This value represents the instance of the detour with which
 862:          this detour is merged. This object is only valid when
 863:          mplsFrrDetourMerging is set to detour(2).
 864: 
 865:          - lower 16 bits : protected tunnel instance
 866:          - higher 16 bits: detour instance"
 867:        ::= { mplsFrrDetourEntry 3 }
 868: 
 869:     --
 870:     -- Facility-based FRR-specific Tables
 871:     --
 872: 
 873:     mplsFrrFacRouteDBTable OBJECT-TYPE
 874:         SYNTAX            SEQUENCE OF MplsFrrFacRouteDBEntry
 875:         MAX-ACCESS        not-accessible
 876:         STATUS            current
 877:         DESCRIPTION
 878:             "The mplsFrrDBTable provides information about the fast
 879:             reroute database.  Each entry belongs to an interface,
 880:             protecting backup tunnel and protected tunnel. MPLS
 881:             interfaces defined on this node are protected by backup
 882:             tunnels and are indexed by mplsInterfaceConfIndex. Backup
 883:             tunnels defined to protect the tunnels traversing an
 884:             interface, and are indexed by mplsTunnelIndex. Note that the
 885:             tunnel instance index is not required, since it is implied
 886:             to be 0, which indicates the tunnel head interface for the
 887:             protecting tunnel. The protecting tunnel is defined to exist
 888:             on the PLR in the FRR specification.  Protected tunnels are
 889:             the LSPs that traverse the protected link.  These LSPs are
 890:             uniquely identified by mplsTunnelIndex, mplsTunnelInstance,
 891:             mplsTunnelIngressLSRId, and mplsTunnelEgressLSRId."
 892:         REFERENCE
 893:             "Srinivansan, C., and A. Viswanathan, T. Nadeau, MPLS Traffic
 894:             Engineering Management Information Base Using SMIv2,
 895:              draft-ietf-mpls-te-mib-06.txt "
 896: 
 897:     ::= { mplsFrrFacObjects 1 }
 898: 
 899: 
 900:     mplsFrrFacRouteDBEntry OBJECT-TYPE
 901:         SYNTAX            MplsFrrFacRouteDBEntry
 902:         MAX-ACCESS        not-accessible
 903:         STATUS            current
 904:         DESCRIPTION
 905:             "An entry in the mplsFrrDBTable represents a single protected
 906:             LSP, protected by a backup tunnel and defined for a specific
 907:             protected interface. Note that for brevity, managers should
 908:             consult the mplsTunnelTable present in the MPLS-TE MIB for
 909:             additional information about the protecting and protected
 910:             tunnels, and the ifEntry in the IF-MIB for the protected
 911:             interface."
 912:         REFERENCE
 913:             "Srinivansan, C., and A. Viswanathan, T. Nadeau, MPLS Label
 914:              Switch Router Management Information Base Using SMIv2,
 915:              draft-ietf-mpls-lsr-mib-07.txt Srinivansan, C., and A.
 916:              Viswanathan, T. Nadeau, MPLS Traffic Engineering Management
 917:              Information Base Using SMIv2, draft-ietf-mpls-te-mib-
 918:              06.txt."
 919:         INDEX {
 920:                 mplsFrrFacRouteProtIfIdx,       -- from MPLS-TE MIB
 921:                 mplsFrrFacRouteProtTunIdx,      -- from MPLS-TE MIB
 922: 
 923:                 mplsFrrFacRouteBkupTunIdx,      -- from MPLS-TE MIB
 924:                 mplsFrrFacRouteBkupTunInst,     -- mplsTunnelTable
 925:                 mplsFrrFacRouteBkupTunIngrLSRId, -- Tunnels must exist
 926:                 mplsFrrFacRouteBkupTunEgrLSRId }  -- a priori
 927:     ::= { mplsFrrFacRouteDBTable 1 }
 928: 
 929:     MplsFrrFacRouteDBEntry ::= SEQUENCE {
 930:         mplsFrrFacRouteProtIfIdx          InterfaceIndex,
 931:         mplsFrrFacRouteProtTunIdx         MplsTunnelIndex,
 932:         mplsFrrFacRouteBkupTunIdx         MplsTunnelIndex,
 933:         mplsFrrFacRouteBkupTunInst        MplsTunnelInstanceIndex,
 934:         mplsFrrFacRouteBkupTunIngrLSRId   MplsLsrIdentifier,
 935:         mplsFrrFacRouteBkupTunEgrLSRId    MplsLsrIdentifier,
 936:         mplsFrrFacRouteDBNumProtTunOnIf   Gauge32,
 936: error - SMIv2 base type `Gauge32' must be imported from SNMPv2-SMI
 937:         mplsFrrFacRouteDBNumProtTun       Gauge32,
 937: error - SMIv2 base type `Gauge32' must be imported from SNMPv2-SMI
 938:         mplsFrrFacRouteDBProtTunStatus    INTEGER,
 939:         mplsFrrFacRouteDBProtTunResvBw    Unsigned32
 940:     }
 941: 
 942:     mplsFrrFacRouteProtIfIdx OBJECT-TYPE
 943:        SYNTAX        InterfaceIndex
 944:        MAX-ACCESS    not-accessible
 945:        STATUS        current
 946:        DESCRIPTION
 947:          "Uniquely identifies the interface configured for FRR protection."
 948:       ::= { mplsFrrFacRouteDBEntry 1 }
 949: 
 950:     mplsFrrFacRouteProtTunIdx OBJECT-TYPE
 951:        SYNTAX        MplsTunnelIndex
 952:        MAX-ACCESS    not-accessible
 953:        STATUS        current
 954:        DESCRIPTION
 955:          "Uniquely identifies the mplsTunnelEntry primary index for
 956:           the tunnel head interface designated to protect the
 957:           interface as specified in the mplsFrrFacRouteIfProtIdx
 958:           (and all of the tunnels using this interface)."
 959:        ::= { mplsFrrFacRouteDBEntry 2 }
 960: 
 961:     mplsFrrFacRouteBkupTunIdx OBJECT-TYPE
 962:        SYNTAX        MplsTunnelIndex
 963:        MAX-ACCESS    not-accessible
 964:        STATUS        current
 965:        DESCRIPTION
 966:         "Uniquely identifies an mplsTunnelEntry that is
 967:           being protected by FRR."
 968:        ::= { mplsFrrFacRouteDBEntry 3 }
 969: 
 970:     mplsFrrFacRouteBkupTunInst OBJECT-TYPE
 971:        SYNTAX        MplsTunnelInstanceIndex
 972:        MAX-ACCESS    not-accessible
 973:        STATUS        current
 974:        DESCRIPTION
 975:          "Uniquely identifies an mplsTunnelEntry that is
 976:           being protected by FRR."
 977:        ::= { mplsFrrFacRouteDBEntry 4 }
 978: 
 979:     mplsFrrFacRouteBkupTunIngrLSRId OBJECT-TYPE
 980:        SYNTAX        MplsLsrIdentifier
 981:        MAX-ACCESS    not-accessible
 982:        STATUS        current
 983:        DESCRIPTION
 984:          "Uniquely identifies an mplsTunnelEntry that is
 985:           being protected by FRR."
 986:        REFERENCE
 987:          "1. RSVP-TE: Extensions to RSVP for LSP Tunnels,
 988:            Awduche et al, RFC 3209, December 2001
 989:           2. Constraint-Based LSP Setup using LDP, Jamoussi
 990:            (Editor), RFC 3212, January 2002"
 991:        ::= { mplsFrrFacRouteDBEntry 5 }
 992: 
 993:     mplsFrrFacRouteBkupTunEgrLSRId  OBJECT-TYPE
 994:        SYNTAX        MplsLsrIdentifier
 995:        MAX-ACCESS    not-accessible
 996:        STATUS        current
 997:        DESCRIPTION
 998:          "Uniquely identifies an mplsTunnelEntry that is
 999:           being protected by FRR."
1000:        ::= { mplsFrrFacRouteDBEntry 6 }
1001: 
1002:     mplsFrrFacRouteDBNumProtTunOnIf OBJECT-TYPE
1003:         SYNTAX            Gauge32
1004:         MAX-ACCESS        read-only
1004: error - SMIv2 base type `Gauge32' must be imported from SNMPv2-SMI
1005:         STATUS            current
1006:         DESCRIPTION
1007:             "The number of backup tunnels protecting the specified
1008:             interface."
1009:        ::= { mplsFrrFacRouteDBEntry 7 }
1010: 
1011:     mplsFrrFacRouteDBNumProtTun OBJECT-TYPE
1012:         SYNTAX            Gauge32
1013:         MAX-ACCESS        read-only
1013: error - SMIv2 base type `Gauge32' must be imported from SNMPv2-SMI
1014:         STATUS            current
1015:         DESCRIPTION
1016:             "The number of tunnels protected on this interface."
1017:     ::= { mplsFrrFacRouteDBEntry 8 }
1018: 
1019:     mplsFrrFacRouteDBProtTunStatus OBJECT-TYPE
1020:         SYNTAX            INTEGER {
1021:                               active(1),
1022:                               ready(2),
1023:                               partial(3)
1024:                           }
1025:         MAX-ACCESS        read-only
1026:         STATUS            current
1027:         DESCRIPTION
1028:             "Specifies the state of the protected tunnel.
1029: 
1030:              active  This tunnel's label has been placed in the
1031:                       LFIB and is ready to be applied to incoming
1032:                       packets.
1033: 
1034:              ready -  This tunnel's label entry has been created but is
1035:                       not yet in the LFIB.
1036: 
1037:              partial - This tunnel's label entry as not been fully
1038:                        created."
1039:     ::= { mplsFrrFacRouteDBEntry 9 }
1040: 
1041:     mplsFrrFacRouteDBProtTunResvBw  OBJECT-TYPE
1042:         SYNTAX            Unsigned32
1043:         MAX-ACCESS        read-only
1044:         STATUS            current
1045:         DESCRIPTION
1046:             "Specifies the amount of bandwidth in megabytes per second
1047:              that is actually reserved by the protection tunnel for
1048:              facility backup. This value is repeated here from the MPLS-
1049:              TE MIB because the tunnel entry will reveal the bandwidth
1050:              reserved by the signaling protocol, which is typically 0
1051:              for backup tunnels so as to not over-book bandwidth.
1052:              However, internal reservations are typically made on the
1053:              PLR, thus this value should be revealed here."
1054:      ::= { mplsFrrFacRouteDBEntry 10 }
1055: 
1056:     -- Notifications
1057: 
1058:     -- Ed Note: Currently these notifications only apply to
1059:     --          Facility-based FRR. Do we need to define
1060:     --          additional notifications for One2One?
1061: 
1062:     mplsFrrProtected NOTIFICATION-TYPE
1063:         OBJECTS { mplsFrrFacRouteDBNumProtTunOnIf,
1064:                   mplsFrrFacRouteDBNumProtTun,
1065:                   mplsFrrFacRouteDBProtTunStatus,
1066:                   mplsFrrFacRouteDBProtTunResvBw
1067:                 }
1068:     STATUS      current
1069:     DESCRIPTION
1070:         "This notification is generated when a tunnel running over an
1071:          interface as specified in the mplsFrrConstTable is initially
1072:          protected by the backup tunnel also specified in the
1073:          mplsFrrConstTable. This notification should not be generated
1074:          for each subsequent tunnel that is backed up by the FRR feature
1075:          on this LSR, as this may result in potential scaling issues
1076:          with regard to LSR performance and network loading. Note also
1077:          that notifications MUST be generated in accordance with the
1078:          mplsFrrNotifMaxRate."
1079:         ::= { mplsFrrNotif 1 }
1080: 
1081:     mplsFrrUnProtected NOTIFICATION-TYPE
1082:         OBJECTS { mplsFrrFacRouteDBNumProtTunOnIf,
1083:                   mplsFrrFacRouteDBNumProtTun,
1084:                   mplsFrrFacRouteDBProtTunStatus,
1085:                   mplsFrrFacRouteDBProtTunResvBw
1086:                 }
1087:     STATUS      current
1088:     DESCRIPTION
1089:         "This notification is generated when the final tunnel that is
1090:          being protected by a backup tunnel as specified in the
1091:          mplsFrrConstTable is restored to normal operation. This
1092:          notification should not be generated for each restored tunnel,
1093:          as this may result in potential scaling issues with regard to
1094:          LSR performance and network loading. Note also that
1095:          notifications MUST be generated in accordance with the
1096:          mplsFrrNotifMaxRate."
1097:         ::= { mplsFrrNotif 2 }
1098: 
1099: 
1100:     -- Module Conformance Statement
1101: 
1102:     mplsFrrGroups
1103:        OBJECT IDENTIFIER ::= {mplsFrrConformance 1 }
1104: 
1105:     mplsFrrCompliances
1106:        OBJECT IDENTIFIER ::= {mplsFrrConformance 2 }
1107: 
1108:     mplsFrrModuleCompliance MODULE-COMPLIANCE
1109:        STATUS current
1110:        DESCRIPTION
1111:          "Compliance statements for agents that support the MPLS FRR
1112:          MIB."
1113:        MODULE
1114:            MANDATORY-GROUPS {
1115:                              mplsFrrScalarGroup,
1116:                              mplsFrrConstGroup,
1117:                              mplsFrrLogGroup
1118:                             }
1119: 
1120:        GROUP mplsFrrTunARHopGroup
1121:        DESCRIPTION
1122:            "Objects that are required to present per hop
1123:             fast-reroute protection status."
1124: 
1125:        GROUP mplsFrrOne2OnePLRDetourGroup
1126:        DESCRIPTION
1127:            "This group is mandatory for devices which support
1128:             the one-to-one FRR mechanism, and is optional for
1129:             those which do not."
1130: 
1131:        GROUP mplsFrrOne2OnePlrGroup
1132:        DESCRIPTION
1133:            "This group is mandatory for devices which support
1134:             the one-to-one FRR mechanism, and is optional for
1135:             those which do not."
1136: 
1137:        GROUP mplsFrrFacRouteDBGroup
1138:        DESCRIPTION
1139:            "This group is mandatory for devices which support
1140:             the Facility Backup FRR mechanism, and is optional
1141:             for those which do not."
1142: 
1143:        GROUP mplsFrrNotifGroup
1144:        DESCRIPTION
1145:            "This group is mandatory for devices which support
1146:             the Facility Backup FRR mechanism, and is optional
1147:             for those which do not."
1148: 
1149:        -- mplsFrrConstTable
1150: 
1151:        OBJECT        mplsFrrConstProtectionMethod
1152:        MIN-ACCESS    read-only
1153:        DESCRIPTION
1154:          "Write access is not required."
1155: 
1156:        OBJECT        mplsFrrConstProtectionType
1157:        MIN-ACCESS    read-only
1158:        DESCRIPTION
1159:          "Write access is not required."
1160: 
1161:        OBJECT        mplsFrrConstSetupPrio
1162:        MIN-ACCESS    read-only
1163:        DESCRIPTION
1164:          "Write access is not required."
1165: 
1166:        OBJECT        mplsFrrConstHoldingPrio
1167:        MIN-ACCESS    read-only
1168:        DESCRIPTION
1169:          "Write access is not required."
1170: 
1171:        OBJECT        mplsFrrConstInclAnyAffinity
1172:        MIN-ACCESS    read-only
1173:        DESCRIPTION
1174:          "Write access is not required."
1175: 
1176:        OBJECT        mplsFrrConstInclAllAffinity
1177:        MIN-ACCESS    read-only
1178:        DESCRIPTION
1179:          "Write access is not required."
1180: 
1181:        OBJECT        mplsFrrConstExclAllAffinity
1182:        MIN-ACCESS    read-only
1182: severe - unknown object identifier label `mplsFrrConstExclAllAffinity'
1183:        DESCRIPTION
1184:          "Write access is not required."
1185: 
1186:        OBJECT        mplsFrrConstHopLimit
1187:        MIN-ACCESS    read-only
1188:        DESCRIPTION
1189:          "Write access is not required."
1190: 
1191:        OBJECT        mplsFrrConstBandwidth
1192:        MIN-ACCESS    read-only
1193:        DESCRIPTION
1194:          "Write access is not required."
1195: 
1196:        OBJECT        mplsFrrConstRowStatus
1197:        MIN-ACCESS    read-only
1198:        DESCRIPTION
1199:          "Write access is not required."
1200: 
1201:        ::= { mplsFrrCompliances 1 }
1202: 
1203:     -- Units of conformance
1204: 
1205:     mplsFrrScalarGroup OBJECT-GROUP
1206:        OBJECTS {
1207:                 mplsFrrDetourIncoming,
1208:                 mplsFrrDetourOutgoing,
1209:                 mplsFrrDetourOriginating,
1210:                 mplsFrrSwitchover,
1211:                 mplsFrrConfIfs,
1212:                 mplsFrrActProtectedIfs,
1213:                 mplsFrrConfProtectedTuns,
1214:                 mplsFrrActProtectedTuns,
1215:                 mplsFrrActivelyProtectedLSPs,
1216:                 mplsFrrConstProtectionMethod,
1217:                 mplsFrrNotifsEnabled,
1218:                 mplsFrrLogTableMaxEntries,
1219:                 mplsFrrLogTableCurrEntries,
1220:                 mplsFrrNotifMaxRate
1221:                }
1222:        STATUS        current
1223:        DESCRIPTION
1224:          "Objects that are required to gather fast reroute statistics."
1225:        ::= { mplsFrrGroups 1 }
1226: 
1227:     mplsFrrConstGroup OBJECT-GROUP
1228:        OBJECTS {
1229:           mplsFrrConstProtectionMethod,
1230:           mplsFrrConstProtectionType,
1231:           mplsFrrConstSetupPrio,
1232:           mplsFrrConstHoldingPrio,
1233:           mplsFrrConstInclAnyAffinity,
1234:           mplsFrrConstInclAllAffinity,
1235:           mplsFrrConstExclAllAffinity,
1236:           mplsFrrConstHopLimit,
1237:           mplsFrrConstBandwidth,
1238:           mplsFrrConstRowStatus
1239:        }
1240:        STATUS        current
1241:        DESCRIPTION
1242:          "Objects that are required to configure fast reroute constraints
1243:          at the ingress LSR of the tunnel that requires fast reroute
1244:          service."
1245:        ::= { mplsFrrGroups 2 }
1246: 
1247:     mplsFrrTunARHopGroup         OBJECT-GROUP
1248:      OBJECTS {
1249:               mplsFrrTunARHopProtectAvailable,
1250:               mplsFrrTunARHopProtectInUse,
1251:               mplsFrrTunARHopBandwidthProtect,
1252:               mplsFrrTunARHopNodeProtect
1253:              }
1254:      STATUS        current
1255:      DESCRIPTION
1256:          "Objects that are required to present per hop fast-reroute
1257:           protection status."
1258:     ::= { mplsFrrGroups 3}
1259: 
1260:     mplsFrrOne2OnePLRDetourGroup OBJECT-GROUP
1261:      OBJECTS {
1262:               mplsFrrDetourActive,
1263:               mplsFrrDetourMerging,
1264:               mplsFrrDetourMergedDetourInst
1265:              }
1266:      STATUS        current
1267:      DESCRIPTION
1268:          "Objects that are required to present the detour LSP information
1269:          at the detour ingress, transit and egress LSRs."
1270:      ::= { mplsFrrGroups 4 }
1271: 
1272:     mplsFrrLogGroup OBJECT-GROUP
1273:     OBJECTS { mplsFrrLogEventTime,
1274:               mplsFrrLogInterface,
1275:               mplsFrrLogEventType,
1276:               mplsFrrLogEventDuration,
1277:               mplsFrrLogEventReasonString
1278:             }
1279:     STATUS        current
1280:     DESCRIPTION
1281:        "Objects that are required to represent FRR logging information
1282:        at the detour ingress, transit and egress LSRs."
1283:     ::= { mplsFrrGroups 5 }
1284: 
1285:     mplsFrrOne2OnePlrGroup OBJECT-GROUP
1286:       OBJECTS {
1287:           mplsFrrOne2OnePlrSenderAddrType,
1288:           mplsFrrOne2OnePlrSenderAddr,
1289:           mplsFrrOne2OnePlrAvoidNAddrType,
1290:           mplsFrrOne2OnePlrAvoidNAddr
1291:          }
1292:     STATUS        current
1293:     DESCRIPTION
1294:        "Objects that are required to represent the FRR
1295:         One-2-One PLR information."
1296:     ::= { mplsFrrGroups 6 }
1297: 
1298:     mplsFrrFacRouteDBGroup OBJECT-GROUP
1299:       OBJECTS { mplsFrrFacRouteDBNumProtTunOnIf,
1300:                 mplsFrrFacRouteDBNumProtTun,
1301:                 mplsFrrFacRouteDBProtTunStatus,
1302:                 mplsFrrFacRouteDBProtTunResvBw
1303:         }
1304:     STATUS        current
1305:     DESCRIPTION
1306:        "Objects that are required to represent the FRR
1307:         Facility Route Database information."
1308:     ::= { mplsFrrGroups 7 }
1309: 
1310:     mplsFrrNotifGroup NOTIFICATION-GROUP
1311:     NOTIFICATIONS {
1312:                     mplsFrrProtected,
1313:                     mplsFrrUnProtected
1314:                   }
1315:     STATUS        current
1316:     DESCRIPTION
1317:          "Objects that are required to represent FRR notifications."
1318:     ::= { mplsFrrGroups 8 }
1319: 
1320:     END
1321: 
1322: -- 
1323: --     Copyright (C) The Internet Society (2001). All Rights Reserved.
1324: -- 
1325: --     This document and translations of it may be copied and furnished to
1326: --     others, and derivative works that comment on or otherwise explain it
1327: --     or assist in its implementation may be prepared, copied, published
1328: --     and distributed, in whole or in part, without restriction of any
1329: --     kind, provided that the above copyright notice and this paragraph are
1330: --     included on all such copies and derivative works. However, this
1331: --     document itself may not be modified in any way, such as by removing
1332: --     the copyright notice or references to the Internet Society or other
1333: --     Internet organizations, except as needed for the purpose of
1334: --     developing Internet standards in which case the procedures for
1335: --     copyrights defined in the Internet Standards process must be
1336: --     followed, or as required to translate it into languages other than
1337: --     English.
1338: -- 
1339: --     The limited permissions granted above are perpetual and will not be
1340: --     revoked by the Internet Society or its successors or assigns.
1341: -- 
1342: --     This document and the information contained herein is provided on an
1343: --     "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
1344: --     TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
1345: --     BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
1346: --     HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
1347: --     MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
1348: