Multiprotocol Label Switching (MPLS) Traffic Engineering Management Information Base for Fast Reroute
Extracted elements (29)
mplsFrrFacilityDBProtectingTunnelResvBw is explicitly included in the facility DB table even though MPLS-TE-STD-MIB also has bandwidth fields, because backup tunnels are typically signaled with 0 bandwidth to avoid overbooking; the actual internal PLR reservation is different and must be exposed here.
The MIB is split into three modules (general, one-to-one, facility) rather than one monolithic module so that implementors can choose to implement only the modules relevant to the FRR method(s) their device supports, since operators typically deploy only one method at a time.
The mplsFrrFacilityInitialBackupTunnelInvoked notification is generated only for the first tunnel protected on an interface (not for each subsequent one) to prevent scaling issues with LSR performance and network notification load during a failure affecting many LSPs.
IPv6 MPLS tunnel support in this MIB follows the approach of RFC 4990: a 32-bit LSR ID (not a full IPv6 address) is used as the ingress/egress identifier in all tables, maintaining compatibility with existing 32-bit index fields in mplsTunnelTable.
These MIB modules are designed to be used in conjunction with MPLS-TC-STD-MIB (RFC 3811), MPLS-TE-STD-MIB (RFC 3812), and MPLS-LSR-STD-MIB (RFC 3813); the MPLS-TE-STD-MIB mplsTunnelGroup and mplsTunnelScalarGroup are mandatory in the full compliance statement.
Each detour LSP SHOULD have an entry in the mplsTunnelTable (MPLS-TE-STD-MIB), since a detour LSP is also considered an instance of a protected TE tunnel.
If ifIndex persistence is not implemented, entries in mplsFrrGeneralConstraintsTable MUST NOT be persistent, or the values of mplsFrrGeneralConstraintsIfIndexOrZero MUST be reconstructed on restart.
MPLS-FRR-FACILITY-STD-MIB MUST be implemented if the facility backup fast-reroute method is implemented.
MPLS-FRR-GENERAL-STD-MIB MUST be implemented if either the one-to-one backup or facility backup fast-reroute method is implemented on an LSR.
MPLS-FRR-ONE2ONE-STD-MIB MUST be implemented if the one-to-one backup fast-reroute method is implemented; mplsFrrOne2OnePlrTable and mplsFrrOne2OneDetourTable MUST both be supported.
mplsFrrActiveInterfaces MUST be less than or equal to mplsFrrConfiguredInterfaces at all times.
SNMP engines MUST only allow entries in mplsFrrGeneralConstraintsTable to be created for tunnel instances that require fast reroute as indicated by the presence of the FAST_REROUTE object in the LSP signaling.
The mplsFrrGeneralConstraintsTable MUST be implemented at the ingress node of the protected TE tunnel instance to configure backup LSP setup constraints.
To support IPv6 MPLS tunnels, all LSRs in the network MUST have a 32-bit LSR ID usable with the existing 32-bit mplsTunnelIngressLSRId and mplsTunnelEgressLSRId objects, as described in RFC 4990.
When the mplsFrrFacilityInitialBackupTunnelInvoked notification is issued after data-plane programming, it MUST be sent immediately after the data plane has been altered; notifications MUST also be generated in accordance with mplsFrrFacilityNotificationsMaxRate.
mplsFrrFacilityDBTable provides the facility backup FRR database; each entry maps a protected interface (mplsFrrFacilityProtectedIfIndex), a protecting bypass tunnel, and a protected TE tunnel LSP, and exposes protecting tunnel state and actual reserved bandwidth.
mplsFrrGeneralConstraintsTable defines per-interface or per-tunnel backup LSP setup constraints including protection type (link or node), setup/holding priority (0–7), include-any/include-all/exclude-any affinity, hop limit (0–255), and bandwidth (kbps).
mplsFrrGeneralProtectionMethod is a read-write scalar (values: unknown, oneToOneBackup, facilityBackup) indicating which FRR protection method is configured on the device; some devices may require a reboot for changes to take effect.
mplsFrrGeneralTunnelARHopTable sparsely extends mplsTunnelARHopTable with two BITS objects: mplsFrrGeneralTunnelARHopSessionAttributeFlags (desired SESSION_ATTRIBUTE flags) and mplsFrrGeneralTunnelARHopRROSubObjectFlags (current RRO sub-object flags) indicating per-hop local protection availability and active use.
mplsFrrOne2OneDetourTable represents detour LSPs at ingress, transit, and egress nodes, carrying active status, merge status (notMerged, mergedWithProtectedTunnel, or mergedWithDetour), and the merged detour instance index.
mplsFrrOne2OnePlrTable records PLR entries for one-to-one backup, indexed by tunnel index, detour instance, ingress/egress LSR IDs, and PLR ID; each entry captures the sender address and the avoided-node address signaled via the RSVP DETOUR object.
Two SNMP notifications are defined in MPLS-FRR-FACILITY-STD-MIB: mplsFrrFacilityInitialBackupTunnelInvoked (sent once when FRR first activates on an interface) and mplsFrrFacilityFinalTunnelRestored (sent once when the last protected tunnel is restored); both carry DB statistics and protecting tunnel status/bandwidth.
IANA assigned OID mib-2 202 to MPLS-FRR-GENERAL-STD-MIB, mib-2 203 to MPLS-FRR-ONE2ONE-STD-MIB, and mib-2 204 to MPLS-FRR-FACILITY-STD-MIB under the MIB-2 subtree.
Several objects in MPLS-FRR-GENERAL-STD-MIB and MPLS-FRR-FACILITY-STD-MIB have read-write or read-create access; unauthorized modification of FRR constraints or the protection method could disrupt traffic protection and lead to data loss during link or node failures.
The MIB modules rely on the SNMPv3 security framework for authentication and access control; read-only compliance variants are provided for implementations that do not require write access, reducing the attack surface by preventing unauthorized reconfiguration of FRR parameters.
mplsFrrFacilityDBProtectingTunnelStatus defines three states for a bypass tunnel: partial (label entry not fully created), ready (label entry created but not yet in LFIB), and active (label placed in LFIB and ready to forward traffic).
LSR identifier fields (mplsFrrOne2OnePlrTunnelIngressLSRId, mplsFrrOne2OnePlrTunnelEgressLSRId, and their facility equivalents) are 32-bit MplsLsrIdentifier values; for IPv6 tunnels these carry a 32-bit router ID, not an IPv6 address.
mplsFrrGeneralConstraintsTunnelInstance uses the same 32-bit split-field convention: lower 16 bits carry the protected tunnel instance, upper 16 bits MUST be all zeros for backup LSP identification. A value of 0 indicates a tunnel-head (ingress) configuration.
The mplsFrrOne2OnePlrTunnelDetourInstance field (MplsTunnelInstanceIndex, 32-bit) encodes a combined key: lower 16 bits hold the protected tunnel instance, upper 16 bits hold the detour instance. A value where upper 16 bits are zero indicates the tunnel head.