Configuration of Proactive Operations, Administration, and Maintenance (OAM) Functions for MPLS-Based Transport Networks Using RSVP-TE
Extracted elements (29)
BFD Control packets transported over G-ACh are not protected by an end-to-end checksum; only lower layers provide error detection. A single flipped bit in the BFD State field could trigger false protection switching. The Integrity (I) flag uses Keyed SHA1 with an empty key as a checksum mechanism — error detection only, not authentication — avoiding the need for pre-shared key management.
The MPLS OAM FMS Sub-TLV is the only OAM Configuration TLV requiring examination by intermediate nodes because server MEPs at intermediate points — co-located with an MPLS-TP client/server adaptation function — must be instructed to originate AIS/LKR signals toward client LSPs upon detecting faults.
Placing the OAM Configuration TLV containing the FMS Sub-TLV in LSP_ATTRIBUTES allows nodes that cannot process it to forward silently without error, whereas placement in LSP_REQUIRED_ATTRIBUTES forces RFC 7260-capable but FMS-unaware nodes to generate a PathErr. Nodes that do not support RFC 7260 at all will not raise errors in either case.
A sub-TLV without a corresponding flag set in the OAM Function Flags Sub-TLV MUST be silently ignored. If multiple copies of a sub-TLV are present, only the first MUST be used and remaining copies MUST be silently ignored.
BFD MUST be run in either asynchronous mode (both sides in active mode) or unidirectional mode.
If an egress LSR does not support a requested capability (BFD version, encapsulation format, authentication type, mismatched Auth Key ID, timestamp format, delay/loss mode, jitter, dyadic, loopback, combined mode, or fault management signaling), it MUST generate the corresponding 'OAM Problem' PathErr sub-code.
If the CV flag is set in the OAM Function Flags Sub-TLV, the CC flag MUST also be set, because performing Connectivity Verification implies performing Continuity Check as well.
If the MPLS OAM FMS Sub-TLV is placed in LSP_REQUIRED_ATTRIBUTES, a node that supports RFC 7260 but does not support the FMS Sub-TLV MUST generate a PathErr with 'OAM Problem/Configuration Error'.
Intermediate nodes SHOULD NOT process or modify any OAM Configuration TLVs but simply forward them to the end node. The sole exception is the MPLS OAM FMS Sub-TLV, which MUST be examined even by intermediate nodes that support these extensions.
The BFD Identifiers Sub-TLV MUST always be included in the BFD Configuration Sub-TLV in Path messages. The Negotiation Timer Parameters Sub-TLV MUST be included in Path messages if the N (negotiation) flag is not set.
The FMS Refresh Timer value MUST be between 1 and 20 seconds as specified in RFC 6427. If the egress LSR cannot support the value, it SHOULD reply with a supported timer value.
The Performance Monitoring Sub-TLV MUST be present in the MPLS OAM Configuration Sub-TLV whenever any of the PM/Loss, PM/Delay, or PM/Throughput flags are set; failure to include the correct sub-TLVs MUST result in an 'OAM Problem/Configuration Error'.
When the Integrity (I) flag is set and no BFD Authentication Sub-TLV is included, authentication MUST use Keyed SHA1 with an empty pre-shared key (all 0s). If the egress LSR does not support BFD Authentication, it MUST generate 'OAM Problem/BFD Authentication unsupported'.
When the MPLS OAM FMS Sub-TLV is present, the 'OAM MIP entities desired' and 'OAM MEP entities desired' flags MUST be set and the entire OAM Configuration TLV MUST be placed in LSP_REQUIRED_ATTRIBUTES or LSP_ATTRIBUTES to ensure capable intermediate nodes process it.
When working and protection paths are both signaled, both LSPs SHOULD be signaled with identical settings of the E flag, T flag, and the Refresh Timer in the MPLS OAM FMS Sub-TLV.
The BFD Configuration Sub-TLV (Type 1) carries a flags word with: Version (3 bits), N (BFD negotiation via BFD Control messages), S (symmetric timing), I (integrity/authentication required), G (G-ACh encapsulation), U (UDP encapsulation), and B (bidirectional mode).
The MPLS OAM Configuration Sub-TLV (Type 33) is carried inside the OAM Configuration TLV and may contain up to three sub-TLVs: BFD Configuration Sub-TLV, Performance Monitoring Sub-TLV, and MPLS OAM FMS Sub-TLV. When empty (no value), its Length MUST be 8.
The MPLS OAM FMS Sub-TLV (Type 3) carries flags E (enable AIS and LKR at MEPs, default 1), S (instruct server MEP to transmit AIS/LKR on client LSPs, default 0), T (set specific timer value), and an 8-bit Refresh Timer field.
The Performance Monitoring Sub-TLV (Type 2) carries flags: D (delay inferred/direct), L (loss inferred/direct), J (delay variation/jitter active), Y (dyadic mode), K (loopback mode), and C (combined mode), corresponding to RFC 6374 measurement modes.
IANA allocated MPLS OAM Type value 3 in the 'OAM Types' space of the RSVP-TE OAM Configuration Registry, and MPLS OAM Configuration Sub-TLV Type 33 in the OAM Sub-TLV space of the same registry.
IANA created 'MPLS OAM Configuration Sub-TLV Types' sub-registry (IETF Review): 1=BFD Configuration Sub-TLV, 2=Performance Monitoring Sub-TLV, 3=MPLS OAM FMS Sub-TLV, 65533-65534=Experimental. Also created 'BFD Configuration Sub-TLV Types' sub-registry: 1=BFD Identifiers, 2=Negotiation Timer Parameters, 3=BFD Authentication, 4=Traffic Class.
IANA created 'Performance Monitoring Sub-TLV Type' sub-registry (IETF Review): 1=MPLS OAM PM Loss Sub-TLV, 2=MPLS OAM PM Delay Sub-TLV. IANA also assigned OAM Problem error sub-codes 13-25 for capability negotiation failures (BFD version, encapsulation, auth type/key, timestamp format, delay/loss modes, jitter, dyadic, loopback, combined, FMS signaling, FMS association).
The automatic establishment of OAM entities introduces a denial-of-service risk: an attacker could overload a network element by requesting high-frequency liveliness monitoring of a large number of LSPs targeting that single element.
BFD Authentication Sub-TLV (Type 3, total 8 octets): Auth Type (8 bits, values per RFC 5880 Section 4.1), Auth Key ID (8 bits), Reserved (16 bits). Errors generated for unsupported Auth Type or Key ID mismatch.
BFD Identifiers Sub-TLV (Type 1, total 20 octets): Local Discriminator (32 bits), MPLS-TP Global_ID (32 bits), MPLS-TP Node Identifier (32 bits), Tunnel_Num (16 bits), LSP_Num (16 bits), all as defined in RFC 6370.
MPLS OAM PM Delay Sub-TLV (Type 2, total 20 octets): OTF (3 bits, default IEEE 1588v1), T/B flags, Measurement Interval (32 bits, ms, default 1000 ms per RFC 6375), Test Interval (32 bits, ms, default 10 ms), Delay Threshold (32 bits, ms).
MPLS OAM PM Loss Sub-TLV (Type 1, total 20 octets): OTF (3 bits, default IEEE 1588v1), T/B flags, Measurement Interval (32 bits, ms, default 100 ms per RFC 6375), Test Interval (32 bits, ms, default 10 ms), Loss Threshold (32 bits).
Negotiation Timer Parameters Sub-TLV (Type 2, total 16 octets): Acceptable Min. Asynchronous TX interval (32 bits, microseconds), Acceptable Min. Asynchronous RX interval (32 bits, microseconds), Required Echo TX Interval (32 bits, microseconds; zero means Echo not supported).
Traffic Class Sub-TLV (Type 4, Value field 4 octets): TC field (3 bits) specifying the MPLS TC value for periodic continuity monitoring or FMS messages. When present, its TC value MUST be used for the MPLS label stack TC field.