rfc-7582

Multicast Virtual Private Network (MVPN): Using Bidirectional P-Tunnels

E. Rosen, IJ. Wijnands, Y. Cai, A. Boers
date2015-07 streamIETF areartg wgbess statusPROPOSED STANDARD pages34 canonicalhttps://www.rfc-editor.org/rfc/rfc7582 doi10.17487/RFC7582
A set of prior RFCs specify procedures for supporting multicast in BGP/MPLS IP VPNs. These procedures allow customer multicast data to travel across a service provider's backbone network through a set of multicast tunnels. The tunnels are advertised in certain BGP multicast auto-discovery routes, by means of a BGP attribute known as the "Provider Multicast Service Interface (PMSI) Tunnel" attribute. Encodings have been defined that allow the PMSI Tunnel attribute to identify bidirectional (multipoint-to-multipoint) multicast distribution trees. However, the prior RFCs do not provide all the necessary procedures for using bidirectional tunnels to support multicast VPNs. This document updates RFCs 6513, 6514, and 6625 by specifying those procedures. In particular, it specifies the procedures for assigning customer multicast flows (unidirectional or bidirectional) to specific bidirectional tunnels in the provider backbone, for advertising such assignments, and for determining which flows have been assigned to which tunnels.

updated by

updates

Extracted elements (27)

design-rationale §1.2.2

The Hierarchical Partitioned Method reduces core state compared to Flat Partitioning by multiplexing multiple inner MP2MP LSPs over a single outer MP2MP LSP using upstream-assigned PE Distinguisher Labels, but requires hardware support for upstream-assigned labels not universally available; hence both methods are specified.

routing, mpls, multicast

design-rationale §3.2.3

The Unpartitioned Method cannot support the 'Partitioned Set of PEs' technique for C-BIDIR because receiving PEs cannot identify which PE transmitted a packet from the bidirectional tunnel; duplicate detection must instead use RFC 6513 Sections 9.1.2 or 9.1.3 techniques.

routing, mpls, multicast

design-rationale §1.2.2

Using a bidirectional P-tunnel to instantiate an I-PMSI for an MVPN with n PE routers requires only a single multicast distribution tree rather than n separate P2MP trees (one per source PE), thereby saving significant state in the network's transit nodes.

routing, mpls, multicast

interoperability-note §1.2

This document updates RFCs 6513, 6514, and 6625. Where any conflict exists between the procedures specified here and those of the updated RFCs, the procedures of this document take precedence.

routing, mpls, multicast

normative-requirement §1.2.4 MUST

All VRFs of a single MVPN MUST be provisioned to use the same PMSI instantiation method (Flat Partitioned, Hierarchical Partitioned, or Unpartitioned) for that MVPN's I-PMSI. Similarly, all VRFs MUST use the same method for S-PMSIs instantiated by bidirectional P-tunnels.

routing, mpls, multicast

normative-requirement §3.1.2 SHOULD

An implementation SHOULD be able to accept and properly process a PTA that uses any legal type of mLDP tunnel identifier, even if it cannot advertise all tunnel identifier types.

routing, mpls, multicast

normative-requirement §3.2.2.1 MUST

If a PE Distinguisher Labels attribute is malformed (duplicate IP address or duplicate label), the 'treat-as-withdraw' error-handling approach described in [BGP-ERROR] MUST be used.

routing, mpls, multicast, bgp

normative-requirement §1.2.4 MUST

If Partitioned Methods are used, all VRFs of a single MVPN MUST all use the Flat Partitioned Method or all use the Hierarchical Partitioned Method; mixing the two variants within one MVPN is not allowed.

routing, mpls, multicast

normative-requirement §3.2.4 OPTIONAL

Implementation of bidirectional P-tunnels is OPTIONAL. If implemented, an implementation claiming compliance MUST support at least one of the two P-tunnel technologies (MP2MP LSPs or BIDIR-PIM). An implementation providing C-BIDIR support via partitioned sets of PEs MUST support the Partial Mesh of MP2MP P-tunnels variant using Flat Partitioned Method.

routing, mpls, multicast

normative-requirement §3.2.1.4 MUST

In Flat Partitioned I-PMSI reception, if a (C-*,C-G-BIDIR) packet is received on a P-tunnel other than the one expected from the distinguished PE's I-PMSI A-D route, the packet MUST be discarded.

routing, mpls, multicast

normative-requirement §3.2.1.3 MUST

In Flat Partitioned S-PMSI reception, if a (C-*,C-G-BIDIR) packet is received on a P-tunnel whose root node is not the distinguished PE for that C-flow, the packet MUST be discarded. This prevents data duplication.

routing, mpls, multicast

normative-requirement §3.2.2.5 MUST

In Hierarchical Partitioned I-PMSI reception, packets addressed to C-G that arrive with unexpected values of the top two labels (outer or inner P-tunnel) MUST be discarded.

routing, mpls, multicast

normative-requirement §3.2.2.4 MUST

In Hierarchical Partitioned S-PMSI reception, if a multicast data packet is received over a matching P-tunnel but does not carry the PE Distinguisher Label value assigned to the upstream PE for its C-flow, the packet MUST be discarded.

routing, mpls, multicast

normative-requirement §3.2.1 MUST

In the Flat Partitioned Method using BIDIR-PIM, each advertised P-tunnel MUST have a distinct P-group address; using MP2MP LSPs, each P-tunnel MUST have a distinct MP2MP FEC (distinct combination of root node and opaque value), and the advertising PE MUST be the PE identified in the root node field of the FEC.

routing, mpls, multicast

normative-requirement §3.2.1 MUST

In the Flat Partitioned Method, when a PE originates an I-PMSI or S-PMSI A-D route whose PTA specifies a bidirectional P-tunnel, the PE MUST be the root node of that P-tunnel.

routing, mpls, multicast

normative-requirement §3.2.2.1 MUST

In the Hierarchical Partitioned Method, PE Distinguisher Labels used in the context of a given MP2MP LSP MUST be allocated and advertised by the router that is the root node of that LSP, per RFC 5331 Section 7.

routing, mpls, multicast

normative-requirement §3.2.2.2 MUST

In the Hierarchical Partitioned Method, when a PE (PE1) transmits a C-BIDIR flow and the upstream PE for the C-RPA is PE2, the packet's MPLS label stack MUST carry the PE Distinguisher Label assigned to PE2's IP address, not PE1's label, by the P-tunnel's root node.

routing, mpls, multicast

normative-requirement §3.2.3 MUST

In the Unpartitioned Method, at least one VRF of the MVPN MUST originate an Intra-AS I-PMSI A-D route with a PTA specifying a bidirectional P-tunnel, and the disposition of a received packet MUST NOT depend upon the particular P-tunnel over which it was received.

routing, mpls, multicast

normative-requirement §3.2.3.2 MUST

In the Unpartitioned Method for S-PMSI reception, a PE MUST join the P-tunnel in the matching S-PMSI A-D route and MUST also join all P-tunnels advertised in other installed S-PMSI A-D routes containing the same (C-S,C-G) as the matching route.

routing, mpls, multicast

normative-requirement §3.1.1 MUST

When the PTA of an I-PMSI or S-PMSI A-D route identifies a BIDIR-PIM tunnel, the originator SHOULD NOT include a PE Distinguisher Labels attribute; if one is present, it MUST be ignored in the data plane and MUST be treated by BGP as an unsupported optional transitive attribute.

routing, mpls, multicast, bgp

normative-requirement §3.1.1 RECOMMENDED

When using BIDIR-PIM P-tunnels to instantiate an I-PMSI or S-PMSI, it is RECOMMENDED that the path from each PE to the RPA consist entirely of point-to-point links to avoid complexity from BIDIR-PIM Designated Forwarder Election on multiaccess links.

routing, mpls, multicast

normative-requirement §3.2 MUST NOT

When using Flat or Hierarchical Partitioned Methods, a C-BIDIR flow MUST be carried only on an I-PMSI or on a (C-*,C-G-BIDIR), (C-*,C-*-BIDIR), or (C-*,C-*) S-PMSI. A PE MUST NOT originate (C-S,C-G-BIDIR) S-PMSI A-D routes, and C-BIDIR packets MUST NOT be carried on (C-S,C-*) S-PMSIs.

routing, mpls, multicast

protocol-element §1.2.4

Three PMSI instantiation methods are defined for bidirectional P-tunnels: Flat Partitioned (no upstream-assigned labels), Hierarchical Partitioned (uses PE Distinguisher Labels and upstream-assigned MPLS labels for LSP aggregation), and Unpartitioned (single or multiple bidir tunnels, no distinguished PE inference).

routing, mpls, multicast

protocol-element §1.2.1

Two bidirectional P-tunnel technologies are supported: Multipoint-to-Multipoint (MP2MP) LSPs created via LDP extensions (RFC 6388), and BIDIR-PIM multicast distribution trees (RFC 5015). Other bidirectional tunnel technologies are outside the scope.

routing, mpls, multicast

security-consideration §4

There are no security considerations beyond those of RFC 6513 (Multicast in MPLS/BGP IP VPNs), RFC 6514 (BGP Encodings and Procedures for Multicast in MPLS/BGP IP VPNs), RFC 5015 (BIDIR-PIM), and RFC 6388 (LDP MP2MP extensions). The existing security frameworks from those documents fully apply.

security, routing, mpls, multicast

wire-format §2

The (C-*,C-*-BIDIR) wildcard for 'all BIDIR-PIM groups' is encoded with a multicast group length field containing 0x08 (8 bits) and a single-octet multicast group field containing 0x00. This encoding is distinct from the generic group wildcard defined in RFC 6625.

routing, mpls, multicast

wire-format §3.2.2.1

The PE Distinguisher Labels attribute specifies a set of <MPLS label, IP address> bindings. Within a single attribute, each IP address MUST appear at most once and each MPLS label MUST appear only once; otherwise the attribute is malformed.

routing, mpls, multicast, bgp