rfc-3812

Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB)

C. Srinivasan, A. Viswanathan, T. Nadeau
date2004-06 streamIETF areartg wgmpls statusPROPOSED STANDARD pages68 canonicalhttps://www.rfc-editor.org/rfc/rfc3812 doi10.17487/RFC3812
This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it describes managed objects for Multiprotocol Label Switching (MPLS) based traffic engineering (TE). [STANDARDS-TRACK]

Extracted elements (26)

design-rationale §4

MPLS tunnels need not be represented as interfaces; mplsTunnelIsIf is a TruthValue that defaults to false. This avoids mandating ifTable overhead for all tunnels while enabling full interface-based management (counters, admin/oper status via ifTable) for those where it is useful.

mpls

design-rationale §6.1

mplsTunnelTable does not directly define the in-segments and out-segments of a tunnel; instead it uses a RowPointer (mplsTunnelXCPointer) into the mplsXCTable defined in RFC 3813. This separates TE-level tunnel configuration from the lower-level label binding and cross-connect management.

mpls

design-rationale §6.2

Multiple tunnels may share a single mplsTunnelResourceTable entry by pointing to the same mplsTunnelResourceIndex. An entry referenced by a zero-instance tunnel holds configured parameters; an entry referenced by a non-zero instance reflects in-use parameters that may have been negotiated by the signaling protocol.

mpls, qos

design-rationale §6.3

Three distinct hop tables are maintained for each tunnel: configured hops (mplsTunnelHopTable), CSPF-computed hops (mplsTunnelCHopTable), and signaling-reported actual hops (mplsTunnelARHopTable). This separation allows operators to compare the requested path, the computed path, and the path actually established by the signaling protocol.

mpls

interoperability-note §6.7

mplsTunnelCRLDPResTable is a sparse extension to mplsTunnelResourceTable providing CR-LDP-specific parameters (excess burst size, frequency, weight). It is indexed by the same mplsTunnelResourceIndex and may be supported only by implementations that implement the CR-LDP signaling protocol.

mpls

interoperability-note §11

mplsTunnelHopAddrType lspid(5) is valid only for tunnels signaled via CR-LDP; when set, mplsTunnelHopLspId contains the LSPID of a nested tunnel, enabling label stacking. For unnumbered interfaces, mplsTunnelHopAddrUnnum holds the interface identifier while mplsTunnelHopIpAddr holds the LSR Router ID.

mpls

interoperability-note §8.1

When mplsTunnelIsIf is true, ifName of the resulting interface SHOULD equal mplsTunnelName, and the tunnel description in mplsTunnelDescr MAY be absent or auto-generated at transit and egress LSRs because it is not signaled by MPLS protocols.

mpls, snmp

normative-requirement §7 MUST

For interfaces operating at 20 Mbps or less, 32-bit byte and packet counters MUST be supported. For interfaces faster than 20 Mbps and slower than 650 Mbps, 32-bit packet counters and 64-bit octet counters MUST be supported. For interfaces at 650 Mbps or faster, 64-bit packet counters AND 64-bit octet counters MUST be supported.

mpls, snmp

normative-requirement §11 MUST

mplsTunnelRole MUST be set to head(1) at the originating point, MUST be set to transit(2) at transit points (if supported), and MUST be set to tail(3) at the terminating point (if supported).

mpls

normative-requirement §11 MUST

mplsTunnelTotalUpTime MUST return a value of 0 if the aggregate up time across all instances of the tunnel is unavailable.

mpls, snmp

normative-requirement §10 MUST

RowPointer objects mplsTunnelXCPointer and mplsTunnelResourcePointer MUST point to the first instance of the first accessible columnar object in the target conceptual row. A value of zeroDotZero indicates no LSP (for XCPointer) or best-effort treatment (for ResourcePointer).

mpls, snmp

normative-requirement §11 MUST NOT

When a tunnel row is in active(1) state, no objects in that row can be modified except mplsTunnelAdminStatus, mplsTunnelRowStatus, and mplsTunnelStorageType. Similarly, active hop rows restrict modification to mplsTunnelHopRowStatus and mplsTunnelHopStorageType.

mpls, snmp

normative-requirement §11 MUST

When creating rows in mplsTunnelHopTable or mplsTunnelResourceTable, the agent MUST verify that the proposed index value is still unused at SET time. If a concurrent manager already claimed it, the SET MUST fail and the manager must re-read the NextFree scalar to obtain a new value.

mpls, snmp

normative-requirement §11 SHOULD

When the MPLS signaling protocol is rsvp(2), mplsTunnelIndex SHOULD equal the Tunnel Id of the RSVP Session object, and mplsTunnelInstance SHOULD equal the LSP Id of the Sender Template object. For crldp(3), mplsTunnelIndex SHOULD equal the CR-LDP LSP ID.

mpls

protocol-element §6.4

mplsTunnelARHopTable records the actual hops traversed by a tunnel as reported by the MPLS signaling protocol after setup. Support is optional since not all signaling protocols record the actual route; all columns are read-only and contents may change during re-routing.

mpls

protocol-element §6.5

mplsTunnelCHopTable lists the hops computed by a constraint-based routing (CSPF) engine based on mplsTunnelHopTable. Support is optional and all entries are read-only; at transit LSRs it contains computed hops for the downstream portion of the tunnel.

mpls

protocol-element §6.3

mplsTunnelHopTable specifies the configured strict or loose hops for a signaled MPLS tunnel, indexed by hop-list, path-option, and hop. mplsTunnelHopEntryPathComp selects between dynamic (CSPF-computed, source and destination only) and explicit (full path specified) computation modes.

mpls

protocol-element §6.2

mplsTunnelResourceTable specifies the traffic parameters for a tunnel: maximum rate, mean rate, maximum burst size, mean burst size, excess burst size, frequency (unspecified/frequent/veryFrequent), and weight. Multiple tunnels may share a single resource entry by pointing to the same mplsTunnelResourceIndex.

mpls, qos

protocol-element §11

mplsTunnelRole designates each tunnel entry's function: head(1) at the originating LSR, transit(2) at intermediate LSRs, tail(3) at the terminating LSR, or headTail(4) when the tunnel begins and ends on the same LSR. This value must be set at row creation.

mpls

protocol-element §11

mplsTunnelSessionAttributes is a BITS field encoding five optional session behaviors: fastReroute(0) permits local repair without tearing down the tunnel, mergingPermitted(1) allows session merging for scalability, isPersistent(2) enables auto-restoration after failure, isPinned(3) pins loose hops, and recordRoute(4) requests path recording by the signaling protocol.

mpls

protocol-element §6.1

The mplsTunnelTable is the central table for creating, reconfiguring, and removing MPLS TE tunnels. Only point-to-point tunnel segments are supported; each tunnel can have one out-segment originating at the LSR and/or one in-segment terminating at it. Tunnel entries are uniquely identified across an MPLS network by the four-part index: mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, and mplsTunnelEgressLSRId.

mpls, snmp

protocol-element §11

Three affinity (administrative group) constraint objects on each tunnel entry control link selection during path computation: mplsTunnelIncludeAnyAffinity (link must share at least one group, or constraint is zero), mplsTunnelIncludeAllAffinity (link must contain all specified groups), and mplsTunnelExcludeAnyAffinity (link must contain none of the specified groups).

mpls, qos

protocol-element §8

When mplsTunnelIsIf is true, the tunnel is represented in ifTable with ifType mplsTunnel(150). The interface stack places the MPLS tunnel interface above the MPLS interface (ifType mpls(166)), which sits above the underlying layer (ATM, Frame Relay, Ethernet, etc.).

mpls, snmp

registry §14

The MPLS-TE-STD-MIB module is assigned OID { mplsStdMIB 3 } under the MPLS Standards MIB subtree. The module defines the mplsTeNotifications, mplsTeScalars, mplsTeObjects, and mplsTeConformance subtrees.

mpls, registry, snmp

security-consideration §12

The MIB module contains numerous read-create and read-write objects (tunnel parameters, hop lists, resource allocations) that could be exploited to misconfigure or disrupt MPLS tunnel operations. SNMP implementations MUST use protocols offering message authentication and integrity, and SHOULD employ encryption, to protect writable objects from unauthorized modification.

mpls, security, snmp

state-machine §11

mplsTunnelOperStatus defines seven operational states: up(1), down(2), testing(3), unknown(4), dormant(5), notPresent(6) when a component is missing, and lowerLayerDown(7) when down due to a lower-layer interface. mplsTunnelAdminStatus controls desired state with up(1), down(2), or testing(3). mplsTunnelStateTransitions counts the number of OperStatus changes.

mpls