rfc-6512

Using Multipoint LDP When the Backbone Has No Route to the Root

IJ. Wijnands, E. Rosen, M. Napierala, N. Leymann
date2012-02 streamIETF areartg wgmpls statusPROPOSED STANDARD pages12 canonicalhttps://www.rfc-editor.org/rfc/rfc6512 doi10.17487/RFC6512 errataview
The control protocol used for constructing Point-to-Multipoint and Multipoint-to-Multipoint Label Switched Paths ("MP LSPs") contains a field that identifies the address of a "root node". Intermediate nodes are expected to be able to look up that address in their routing tables. However, this is not possible if the route to the root node is a BGP route and the intermediate nodes are part of a BGP-free core. This document specifies procedures that enable an MP LSP to be constructed through a BGP-free core. In these procedures, the root node address is temporarily replaced by an address that is known to the intermediate nodes and is on the path to the true root node. [STANDARDS-TRACK]

Extracted elements (15)

design-rationale §3.2.1

For non-segmented inter-AS P-tunnels in option B VPN interconnect, ASBR1 may itself lack a route to PE2. The procedures allow ASBR1 to forward the VPN-Recursive FEC element unchanged but substitute the next-hop ASBR (ASBR2) as the new outer root, propagating the unchanged inner VPN-Recursive value hop by hop until a router with a route to PE2 is reached.

mpls, routing, bgp, vpn

design-rationale §1

The BGP-free core problem arises when the root node address of an MP LSP is reachable only via a BGP route, but intermediate P routers have no BGP routes and therefore cannot forward mLDP messages toward that root. The recursive opaque value mechanism solves this by temporarily substituting the BGP next-hop PE as the root in messages traversing the BGP-free core.

mpls, routing, bgp

design-rationale §3

The VPN-Recursive Opaque Value was defined separately from the plain Recursive Opaque Value because in MVPN and Carrier's Carrier scenarios the recursion-terminating router must look up the inner root in a specific VRF, not the global table; embedding the Route Distinguisher alongside the inner FEC provides the VRF identifier needed at that point.

mpls, routing, bgp, vpn

interoperability-note §3.2.2

The limited Carrier's Carrier function using VPN-Recursive Opaque Values is only applicable when both the inner and outer carrier use non-segmented mLDP P-tunnels, and the inner carrier is not aggregating the outer carrier's P-tunnels. The inter-AS and Carrier's Carrier cases are distinguished by whether mLDP messages are exchanged on VRF or non-VRF interfaces.

mpls, routing, vpn

normative-requirement §2.2 MUST NOT

Interior routers that receive an mLDP FEC element with a Recursive or VPN-Recursive Opaque Value MUST NOT interpret the opaque value at all; they treat the FEC as if it were simply an LSP rooted at the intermediate PE node.

mpls, routing

normative-requirement §2.2 MUST

When a router receives an mLDP message where it is identified as the root node and the opaque value is a Recursive Opaque Value, it MUST replace the received FEC element with the contents of the Recursive Opaque Value (i.e., the embedded FEC element) before any further processing.

mpls, routing

normative-requirement §3.2.2 MUST

When an mLDP Label Mapping message arrives at a PE router over a VRF interface and that PE is identified as the root with a VPN-Recursive Opaque Value, the PE MUST replace the received FEC element with the contents of the VPN-Recursive Opaque Value (i.e., the embedded FEC element) before any further processing, and MUST use the VRF to look up the path to the inner root.

mpls, routing, vpn

protocol-element §3.2.1

In the non-segmented inter-AS P-tunnel scenario, PE1 constructs an FEC of the form <root=ASBR1, opaque_value=<root=PE2, RD, opaque_value=Q>>. ASBR1, on receiving this FEC, extracts PE2 and the RD from the VPN-Recursive Opaque Value and either uses a direct route to PE2 (substituting <root=PE2, opaque_value=Q>) or re-wraps with the next ASBR as the new outer root.

mpls, routing, bgp, vpn

protocol-element §2

The Recursive Opaque Value (Type 7) is a new mLDP opaque value type whose value field encodes an entire P2MP or MP2MP FEC element. It enables a PE router to embed the original FEC (with the true root) inside an outer FEC whose root is a BGP next-hop reachable by the BGP-free core.

mpls, routing, bgp

protocol-element §3

The VPN-Recursive Opaque Value (Type 8) is a new mLDP opaque value type whose value field consists of an 8-octet Route Distinguisher followed by an entire P2MP or MP2MP FEC element. It is used in MVPN inter-AS and Carrier's Carrier scenarios where an RD is required to locate the correct VRF at the recursion termination point.

mpls, routing, bgp, vpn

registry §4

RFC 6512 assigns two new code points in the IANA 'LDP MP Opaque Value Element Basic Type' registry defined by mLDP (RFC 6388): Type 7 for the Recursive Opaque Value (an mLDP FEC TLV) and Type 8 for the VPN-Recursive Opaque Value (an 8-octet RD followed by an mLDP FEC TLV).

mpls, registry

security-consideration §5

Unauthorized modification of the Recursive or VPN-Recursive FEC elements can disrupt MP LSP creation or cause multipoint LSPs to traverse unintended network segments, potentially enabling illegitimate insertion or interception of multicast traffic. The document notes these FEC elements are not inherently more vulnerable than previously defined FEC elements, so no new security vulnerabilities are introduced beyond those in RFC 5036 (LDP) and RFC 6388 (mLDP).

mpls, security

wire-format §1

The mLDP FEC element encoding consists of a 1-octet Type field, 2-octet Address Family, 1-octet Address Length, variable-length Root Node Address, 2-octet Opaque Length, and variable-length Opaque Value. A P2MP or MP2MP LSP is identified by the combination of root node address and opaque value.

mpls, routing

wire-format §2.1

The Recursive Opaque Value is a basic type identified by Type=7 (1-octet), followed by a 2-octet Length field, and a value field that is itself a complete P2MP or MP2MP FEC element (type, length, value) as defined in mLDP. The length includes the type, length, and value fields of the embedded FEC element.

mpls, routing

wire-format §3.1

The VPN-Recursive Opaque Value is a basic type identified by Type=8 (1-octet), followed by a 2-octet Length field, an 8-octet Route Distinguisher (RD), and a P2MP or MP2MP FEC element. The total length includes the 8 octets of RD plus the type, length, and value fields of the embedded FEC element.

mpls, routing, vpn