Configuration of Proactive Operations, Administration, and Maintenance (OAM) Functions for MPLS-Based Transport Networks Using Label Switched Path (LSP) Ping
Extracted elements (31)
BFD Control packets transported in ACH encapsulation lack end-to-end checksums; only lower layers provide error detection. A single flipped bit in the BFD State field could incorrectly trigger protection switching. The Integrity flag therefore enables Keyed SHA1 with an empty key so every BFD packet carries a SHA1 hash detectable as corrupt, preventing false alarms without requiring a full pre-shared key.
MPLS-TP must operate without a control plane (per RFC 5654), so OAM configuration must be achievable via NMS, LSP Ping, or signaling protocol extensions. This document specifies the LSP Ping path as a complement to RSVP-TE (RFC 7487) and NMS-based approaches, enabling transport-profile deployments without requiring a control plane.
If an egress LSR receives a BFD Configuration sub-TLV with the Symmetric (S) flag set and cannot support the proposed timer values, it SHOULD reply with an updated BFD Negotiation Timer Parameters sub-TLV containing the interval values it can support (per RFC 7419), allowing graceful fallback rather than hard failure.
If both the G-ACh (G) and IP/UDP (U) encapsulation capability bits are set in the BFD Configuration sub-TLV, configuration gives precedence to the G bit. If the egress LSR supports neither encapsulation format, an 'OAM Problem/Unsupported BFD Encapsulation format' error MUST be generated.
If all flags in the MPLS OAM Function Flags field are zero, this MUST be interpreted as the MPLS OAM Functions TLV not being present. If more than one such TLV appears in an Echo Request, the first SHOULD be processed and the rest ignored. Undefined flags MUST be set to zero and unknown flags MUST be ignored.
If the MPLS OAM Functions TLV has any of the L, D, or T flags set, the Performance Monitoring sub-TLV MUST be present. Failure to include the correct sub-TLVs MUST result in an 'OAM Problem/PM Configuration Error' return code.
If the symmetric (S) flag is set, the Acceptable Min. Asynchronous RX interval MUST equal the TX interval. If the RX interval received from a peer is greater than the TX interval already proposed, the receiving edge LSR MUST adopt the RX interval value. If the Required Echo TX Interval is unsupported, an 'Unsupported BFD TX Echo rate interval' error MUST be generated.
If the Traffic Class sub-TLV is present in the BFD Configuration or Fault Management Signal sub-TLV, the sender of periodic continuity monitoring messages or FMS packets MUST use the TC field value as the TC field in the top MPLS label stack entry. If the sub-TLV is absent, TC selection is a local decision.
The BFD Configuration sub-TLV MUST be included in the MPLS Echo Request if either the CC (C), CV (V), or both OAM Function flags are set. If the Integrity (I) flag is set and no BFD Authentication sub-TLV is present, authentication MUST use Keyed SHA1 with an empty (all-zero) pre-shared key.
The FMS sub-TLV MUST be examined even by intermediate nodes that support this extension, unlike other sub-TLVs which intermediate nodes simply forward without processing.
To configure Fault Management Signals, the FMS Flag in the MPLS OAM Functions TLV MUST be set and the FMS sub-TLV MUST be included when modifying default configuration. The Refresh Timer value MUST be between 1 and 20 seconds as specified in RFC 6427.
When an egress LSR does not support any requested OAM mode, it MUST set the return code to report the first unsupported mode, and SHOULD NOT process remaining OAM Configuration TLVs and sub-TLVs listed in that Echo Request.
When changing BFD authentication mode on an active (Up state) session, the sender SHOULD ensure both old and new authentication modes are used concurrently until the peer's transition to the new mode is confirmed, preventing session disruption during re-keying.
The BFD Configuration Sub-TLV (sub-type 100) is carried within the MPLS OAM Functions TLV and specifies BFD protocol version, mode flags (N=negotiation, S=symmetric, I=integrity, G=G-ACh encapsulation, U=IP/UDP encapsulation, B=bidirectional), and nested sub-TLVs for discriminator, timer, and authentication.
The MPLS OAM Functions TLV (Type 27) is the top-level TLV carried in LSP Ping Echo Request/Reply messages to configure proactive MPLS-TP OAM functions. It contains a 32-bit MPLS OAM Function Flags field followed by optional sub-TLVs specifying detailed OAM configuration parameters.
The Performance Monitoring Sub-TLV (sub-type 200) is a container carried within the MPLS OAM Functions TLV when any of the L (Loss), D (Delay), or T (Throughput) flags are set. Its PM Configuration Flags 32-bit field includes bits D (delay mode), L (loss mode), J (jitter), Y (dyadic), K (loopback), and C (combined).
IANA allocated MPLS OAM Functions TLV Type 27 in the 'MPLS LSPs Ping Parameters' TLV registry (Standards Action range 0-16383) and created sub-TLV registry 'Sub-TLVs for TLV Type 27' with sub-types 100 (BFD Configuration), 101 (BFD Local Discriminator), 102 (BFD Negotiation Timer Parameters), 103 (BFD Authentication), 104 (Traffic Class), 200 (Performance Monitoring), 201 (PM Loss Measurement), 202 (PM Delay Measurement), 300 (Fault Management Signal), and 400 (Source MEP-ID).
IANA assigned Return Codes 21-34 in the 'MPLS LSPs Ping Parameters — Return Codes' registry (Standards Action range 0-191) for OAM configuration error reporting, covering unsupported BFD version (21), encapsulation (22), authentication type (23), auth key mismatch (24), timestamp format (25), delay mode (26), loss mode (27), jitter (28), dyadic (29), loopback (30), combined mode (31), fault management signaling (32), fault management association failure (33), and PM configuration error (34).
IANA created a new 'MPLS OAM Function Flags' registry with bit positions 0-31 assigned via Standards Action. Defined bits: 0=C (Continuity Check), 1=V (Connectivity Verification), 2=F (Fault Management Signal), 3=L (PM/Loss), 4=D (PM/Delay), 5=T (Throughput Measurement), 6-30 unassigned (MBZ), 31 reserved.
An attacker could overload a network element by requesting high-frequency liveliness monitoring of a large number of LSPs targeting a single node. Implementations MUST be made cognizant of available OAM resources and MAY refuse new OAM configurations that would overload a node; policies for fair OAM resource distribution among monitored LSPs are recommended.
Security mechanisms for LSP Ping must already be in place and operational before OAM configuration using these extensions can be achieved securely. Exchange of security parameters (e.g., BFD authentication keys) is outside this document's scope and is assumed to use an off-line mechanism or an established secure key exchange protocol.
The BFD Authentication Sub-TLV (sub-type 103, Length 4) encodes an 8-bit Auth Type (same values as RFC 5880 Section 4.1), an 8-bit Auth Key ID, and 16 reserved bits set to zero. Simple Password SHOULD NOT be used if other authentication types are available.
The BFD Local Discriminator Sub-TLV (sub-type 101) encodes a 16-bit sub-type, 16-bit Length (4), and a 32-bit nonzero Local Discriminator value unique to the transmitting system, used to demultiplex multiple BFD sessions between the same pair of systems.
The BFD Negotiation Timer Parameters Sub-TLV (sub-type 102, Length 12) carries three 32-bit fields: Acceptable Min. Asynchronous TX interval, Acceptable Min. Asynchronous RX interval (both in microseconds), and Required Echo TX Interval (microseconds, default 0 meaning echo not supported).
The Fault Management Signal Sub-TLV (sub-type 300) encodes E (AIS/LKR enable, default 1), S (server MEP subscription, default 0), and T (timer enable, default 0) flags, a 13-bit reserved field, and a 9-bit Refresh Timer (1-20 seconds per RFC 6427). It MAY contain a Traffic Class sub-TLV.
The MPLS OAM Function Flags field is a 32-bit bitmap with bit positions C (CC), V (CV), F (FMS), L (PM/Loss), D (PM/Delay), T (Throughput), bits 6-30 unassigned (MUST be zero), and bit 31 reserved. The flags indicate which OAM functions should be activated.
The MPLS OAM Functions TLV encodes a 16-bit Type field (value 27), a 16-bit Length field covering both the 32-bit flags and all sub-TLVs, followed by the MPLS OAM Function Flags bitmap and zero or more sub-TLVs.
The PM Delay Measurement Sub-TLV (sub-type 202, Length 16) contains a 3-bit OTF (default IEEE 1588v1), T and B flags, a 32-bit Measurement Interval (ms, default 1000), a 32-bit Test Interval (ms, default 10), and a 32-bit Delay Threshold in milliseconds.
The PM Loss Measurement Sub-TLV (sub-type 201, Length 16) contains a 3-bit OTF (Origin Timestamp Format, default IEEE 1588v1), T flag (traffic-class-specific, default 1), B flag (octet count, default 0), a 32-bit Measurement Interval (ms, default 100), a 32-bit Test Interval (ms, default 10), and a 32-bit Loss Threshold.
The Source MEP-ID Sub-TLV (sub-type 400, Length 8) encodes a 32-bit Source Node ID (per RFC 6370), a 16-bit Tunnel ID, and a 16-bit LSP ID, identifying the ingress MEP originating the OAM configuration. ITU-T IDs are explicitly out of scope.
The Traffic Class Sub-TLV (sub-type 104, Length 4) encodes a 3-bit TC field identifying the MPLS Traffic Class for periodic continuity monitoring messages or fault management packets, with the remaining 29 bits reserved.