RFC 7338 INFORMATIONAL MPLS · ROUTING · MULTICAST

P2MP PW: Requirements and Framework for Point-to-Multipoint Pseudowires over MPLS Packet Switched Networks

Extending pseudowires so one stream reaches many receivers without being copied along shared links.

On rfc-editor.org ↗
PUBLISHED
September 2014
AUTHORS
F. Jounay, Y. Kamite, G. Heron, M. Bocci
STREAM
IETF
PSEUDOWIRE MODEL COVERED
Single-Segment Pseudowire (SS-PW)
REPLICATION POINTS
3: ingress PE, core P router, egress PE
DIRECTION
Unidirectional, Root PE to Leaf PEs
PERFECT CONGRUENCY RATE
100%
SCALABILITY TARGET
At worst linear in the number of Leaf PEs
PUBLICATION DATE
September 2014
DOI
10.17487/RFC7338

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Internet Engineering Task Force (IETF)                    F. Jounay, Ed.
Request for Comments: 7338                                     Orange CH
Category: Informational                                   Y. Kamite, Ed.
ISSN: 2070-1721                                       NTT Communications
                                                                G. Heron
                                                           Cisco Systems
                                                                M. Bocci
                                                          Alcatel-Lucent
                                                          September 2014


     Requirements and Framework for Point-to-Multipoint Pseudowires
                   over MPLS Packet Switched Networks

Abstract

   This document presents a set of requirements and a framework for
   providing a point-to-multipoint pseudowire (PW) over MPLS Packet
   Switched Networks.  The requirements identified in this document are
   related to architecture, signaling, and maintenance aspects of point-
   to-multipoint PW operation.  They are proposed as guidelines for the
   standardization of such mechanisms.  Among other potential
   applications, point-to-multipoint PWs can be used to optimize the
   support of multicast Layer 2 services (Virtual Private LAN Service
   and Virtual Private Multicast Service).

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Not all documents
   approved by the IESG are a candidate for any level of Internet
   Standard; see Section 2 of RFC 5741.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc7338.

Copyright Notice

   Copyright (c) 2014 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this
   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

Table of Contents

   1. Introduction ....................................................3
      1.1. Problem Statement ..........................................3
      1.2. Scope of This Document .....................................4
      1.3. Conventions Used in This Document ..........................4
   2. Definitions .....................................................5
      2.1. Acronyms ...................................................5
      2.2. Terminology ................................................5
   3. P2MP PW Requirements ............................................6
      3.1. Reference Model ............................................6
      3.2. P2MP PW and Underlying Layer ...............................7
      3.3. P2MP PW Construction .......................................9
      3.4. P2MP PW Signaling Requirements ............................10
           3.4.1. P2MP PW Identifier .................................10
           3.4.2. PW Type Mismatch ...................................10
           3.4.3. Interface Parameters Sub-TLV .......................10
           3.4.4. Leaf Grafting/Pruning ..............................10
           3.4.5. Failure Detection and Reporting ....................11
           3.4.6. Protection and Restoration .........................11
           3.4.7. Scalability ........................................13
   4. Backward Compatibility .........................................13
   5. Security Considerations ........................................13
   6. References .....................................................14
      6.1. Normative References ......................................14
      6.2. Informative References ....................................14
   7. Acknowledgments ................................................15
   8. Contributors ...................................................16

1.  Introduction

1.1.  Problem Statement

   As defined in the pseudowire architecture [RFC3985], a pseudowire
   (PW) is a mechanism that emulates the essential attributes of a
   telecommunications service (such as a T1 leased line or Frame Relay)
   over an IP or MPLS Packet Switched Network (PSN).  It provides a
   single service that is perceived by its user as an unshared link or
   circuit of the chosen service.  A pseudowire is used to transport
   Layer 1 or Layer 2 traffic (e.g., Ethernet, Time-Division
   Multiplexing (TDM), ATM, and Frame Relay) over a Layer 3 PSN.
   Pseudowire Emulation Edge-to-Edge (PWE3) operates "edge to edge" to
   provide the required connectivity between the two endpoints of the
   PW.

   The point-to-multipoint (P2MP) topology described in [VPMS-REQS] and
   required to provide P2MP Layer 2 VPN service can be achieved using
   one or more P2MP PWs.  The use of PW encapsulation enables P2MP
   services to transport Layer 1 or Layer 2 data.  This could be
   achieved using a set of point-to-point PWs, with traffic replication
   at the Root Provider Edge (PE), but at the cost of bandwidth
   efficiency, as duplicate traffic would be carried multiple times on
   shared links.

   This document defines the requirements for a point-to-multipoint PW
   (P2MP PW).  A P2MP PW is a mechanism that emulates the essential
   attributes of a P2MP telecommunications service such as a P2MP ATM
   Virtual Circuit over a Packet Switched Network.

   The required functions of P2MP PWs include encapsulating service-
   specific Protocol Data Units (PDUs) arriving at an ingress Attachment
   Circuit (AC), carrying them across a tunnel to one or more egress
   ACs, managing their timing and order, and any other operations
   required to emulate the behavior and characteristics of the service
   as faithfully as possible.

1.2.  Scope of This Document

   The document describes the general architecture of P2MP PW with a
   reference model, mentions the notion of data encapsulation, and
   outlines specific requirements for the setup and maintenance of a
   P2MP PW.  In this document, the requirements focus on the Single-
   Segment PW model.  The requirements for realizing P2MP PW in the
   Multi-Segment PW model [RFC5254] are left for further study.  This
   document refers to [RFC3916] for other aspects of P2MP PW
   implementation, such as "Packet Processing" (Section 4 of that
   document) and "Faithfulness of Emulated Services" (Section 7 of that
   document).

1.3.  Conventions Used in This Document

   Although this is a requirements specification not a protocol
   specification, the key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
   "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted to apply to
   protocol solutions designed to meet these requirements as described
   in [RFC2119].

2.  Definitions

2.1.  Acronyms

   P2P:   Point-to-Point
   P2MP:  Point-to-Multipoint
   PW:    Pseudowire
   PSN:   Packet Switched Network
   SS-PW: Single-Segment Pseudowire

2.2.  Terminology

   This document uses terminology described in [RFC5659].  It also
   introduces additional terms needed in the context of P2MP PW.

   P2MP PW (also referred to as PW tree):
      Point-to-Multipoint Pseudowire.  A PW attached to a source
      Customer Edge (CE) used to distribute Layer 1 or Layer 2 traffic
      to a set of one or more receiver CEs.  The P2MP PW is
      unidirectional (i.e., carrying traffic from Root PE to Leaf PEs)
      and optionally supports a return path.

   P2MP SS-PW:
      Point-to-Multipoint Single-Segment Pseudowire.  A single-segment
      P2MP PW set up between the Root PE attached to the source CE and
      the Leaf PEs attached to the receiver CEs.  The P2MP SS-PW uses
      P2MP Label Switched Paths (LSPs) as PSN tunnels.

   Root PE:
      P2MP PW Root Provider Edge.  The PE attached to the traffic source
      CE for the P2MP PW via an Attachment Circuit (AC).

   Leaf PE:
      P2MP PW Leaf Provider Edge.  A PE attached to a set of one or more
      traffic receiver CEs, via ACs.  The Leaf PE replicates traffic to
      the CEs based on its Forwarder function [RFC3985].

   P2MP PSN Tunnel:
      In the P2MP SS-PW topology, the PSN tunnel is a general term
      indicating a virtual P2MP connection between the Root PE and the
      Leaf PEs.  A P2MP tunnel may potentially carry multiple P2MP PWs
      inside (aggregation).  This document uses terminology from the
      document describing the MPLS multicast architecture [RFC5332] for
      MPLS PSN.

3.  P2MP PW Requirements

3.1.  Reference Model

   As per the definition in [RFC3985], a pseudowire (PW) both originates
   and terminates on the edge of the same packet switched network (PSN).
   The PW label is unchanged between the originating and terminating
   Provider Edges (PEs).  This is also known as a single-segment
   pseudowire (SS-PW) -- the most fundamental network model of PWE3.

   A P2MP PW can be defined as point-to-multipoint connectivity from a
   Root PE connected to a traffic source CE to one or more Leaf PEs
   connected to traffic receiver CEs.  It is considered to be an
   extended architecture of the existing P2P SS-PW technology.

   Figure 1 describes the P2MP PW reference model that is derived from
   [RFC3985] to support P2MP emulated services.

                  |<-------------P2MP PW------------->|
          Native  |                                   |  Native
   ROOT   Service |    |<----P2MP PSN tunnel --->|    |  Service  LEAF
    V     (AC)    V    V                         V    V   (AC)      V
            |     +----+         +-----+         +----+     |
            |     |PE1 |         |  P  |=========|PE2 |AC2  |     +----+
            |     |    |         |   ......PW1.......>|---------->|CE2 |
            |     |    |         |   . |=========|    |     |     +----+
            |     |    |         |   . |         +----+     |
            |     |    |=========|   . |                    |
            |     |    |         |   . |         +----+     |
   +----+   | AC1 |    |         |   . |=========|PE3 |AC3  |     +----+
   |CE1 |-------->|........PW1.............PW1.......>|---------->|CE3 |
   +----+   |     |    |         |   . |=========|    |     |     +----+
            |     |    |         |   . |         +----+     |
            |     |    |=========|   . |                    |
            |     |    |         |   . |         +----+AC4  |     +----+
            |     |    |         |   . |=========|PE4 |---------->|CE4 |
            |     |    |         |   ......PW1.......>|     |     +----+
            |     |    |         |     |=========|    |AC5  |     +----+
            |     |    |         |     |         |    |---------->|CE5 |
            |     +----+         +-----+         +----+     |     +----+

                    Figure 1: P2MP PW Reference Model

   This architecture applies to the case where a P2MP PSN tunnel extends
   between edge nodes of a single PSN domain to transport a
   unidirectional P2MP PW with endpoints at these edge nodes.  In this
   model, a single copy of each PW packet is sent over the PW on the
   P2MP PSN tunnel and is received by all Leaf PEs due to the P2MP
   nature of the PSN tunnel.  The P2MP PW SHOULD be traffic optimized,
   i.e., only one copy of a P2MP PW packet or PSN tunnel (underlying
   layer) packet is sent on any single link along the P2MP path.  P
   routers participate in P2MP PSN tunnel operation but not in the
   signaling of P2MP PWs.

   The Reference Model outlines the basic pieces of a P2MP PW.  However,
   several levels of replication need to be considered when designing a
   P2MP PW solution:

   -  Ingress PE replication to CEs: traffic is replicated to a set of
      local receiver CEs

   -  P router replication in the core: traffic is replicated by means
      of a P2MP PSN tunnel (P2MP LSP)

   -  Egress PE replication to CEs: traffic is replicated to local
      receiver CEs

   Theoretically, it is also possible to consider Ingress PE replication
   in the core; that is, all traffic is replicated to a set of P2P PSN
   transport tunnels at ingress, not using P router replication at all.

   However, this approach may lead to duplicate copies of each PW packet
   being sent over the same physical link, specifically in the case
   where multiple PSN tunnels transit that physical link.  Hence, this
   approach is not preferred.

   Specific operations that MUST be performed at the PE on the native
   data units are not described here since the required pre-processing
   (Forwarder (FWRD) and Native Service Processing (NSP)) defined in
   Section 4.2 of [RFC3985] is also applicable to P2MP PW.

   P2MP PWs are generally unidirectional, but a Root PE may need to
   receive unidirectional P2P return traffic from any Leaf PE.  For that
   purpose, the P2MP PW solution MAY support an optional return path
   from each Leaf PE to the Root PE.

3.2.  P2MP PW and Underlying Layer

   The definition of MPLS multicast encapsulation [RFC5332] specifies
   the procedure to carry MPLS packets that are to be replicated and a
   copy of the packet sent to each of the specified next hops.  This
   notion is also applicable to a P2MP PW packet carried by a P2MP PSN
   tunnel.

   To be more precise, a P2MP PSN tunnel corresponds to a "point-to-
   multipoint data link or tunnel" described in Section 3 of [RFC5332].

   Similarly, P2MP PW labels correspond to "the top labels (before
   applying the data link or tunnel encapsulation) of all MPLS packets
   that are transmitted on a particular point-to-multipoint data link or
   tunnel".

   In the P2MP PW architecture using the SS-PW network model, the PW-PDU
   [RFC3985] is replicated by the underlying P2MP PSN tunnel layer.
   Note that the PW label is unchanged, and hidden in switching, by the
   transit P routers.

   In a solution, a P2MP PW MUST be supported over a single P2MP PSN
   tunnel as the underlying layer of traffic distribution.  Figure 2
   gives an example of P2MP PW topology relying on a single P2MP LSP.
   The PW tree is composed of one Root PE (i1) and several Leaf PEs (e1,
   e2, e3, e4).

   The mechanisms for establishing the PSN tunnel are outside the scope
   of this document, as long as they enable the essential attributes of
   the service to be emulated.

                                i1
                                /
                               / \
                              /   \
                             /     \
                            /\      \
                           /  \      \
                          /    \      \
                         /      \    / \
                        e1      e2  e3 e4

          Figure 2: Example of P2MP Underlying Layer for P2MP PW

   A single P2MP PSN tunnel MUST be able to serve the traffic from more
   than one P2MP PW in an aggregated way, i.e., multiplexing.

   A P2MP PW solution MAY support different P2MP PSN tunneling
   technology (e.g., MPLS over GRE [RFC4023] or P2MP MPLS LSP) or
   different setup protocols (e.g., multipoint extensions for LDP (mLDP)
   [RFC6388] and P2MP RSVP-TE [RFC4875]).

   The P2MP LSP associated to the P2MP PW can be selected either by user
   configuration or by dynamically using a multiplexing/demultiplexing
   mechanism.

   The P2MP PW multiplexing SHOULD be used based on the overlap rate
   between P2MP LSP and P2MP PW.  As an example, an existing P2MP LSP
   may attach more leaves than the ones defined as Leaf PEs for a given
   P2MP PW.  It may be attractive to reuse it to minimize new
   configuration, but using this P2MP LSP would cause non-Leaf PEs
   (i.e., not part of the P2MP PW) to receive unwanted traffic.

   Note: no special configuration is needed for non-Leaf PEs to drop
   that unwanted traffic because they do not have forwarding information
   entries unless they process the setup operation for corresponding
   P2MP PWs (e.g., signaling).

   The operator SHOULD determine whether it is acceptable to partially
   multiplex the P2MP PW onto a P2MP LSP, and a minimum congruency rate
   may be defined to enable the Root PE to make this determination.  The
   congruency rate SHOULD take into account several items, including:

   -  the amount of overlap between the Leaf PEs of the P2MP PW and the
      existing egress PE routers of the P2MP LSP.  If there is a
      complete overlap, the congruency is perfect and the rate is 100%.

   -  the impact on other traffic (e.g., from other VPNs) supported over
      the P2MP LSP.

   With this procedure, a P2MP PW is nested within a P2MP LSP.  This
   allows multiplexing several PWs over a common P2MP LSP.  Prior to the
   P2MP PW signaling phase, the Root PE determines which P2MP LSP will
   be used for this P2MP PW.  The PSN tunnel can be an existing PSN
   tunnel or the Root PE can create a new P2MP PSN tunnel.  Note that
   the ingress PE may modify or re-create an existing P2MP PSN tunnel in
   order to add one or more leaf PEs to enable it to transport the P2MP
   PW.

3.3.  P2MP PW Construction

   [RFC5332] introduces two approaches to assigning MPLS labels (meaning
   PW labels in the P2MP PW context): Upstream-Assigned [RFC5331] and
   Downstream-Assigned.  However, it is out of scope of this document
   which one should be used in PW construction.  It is left to the
   specification of the solution.

   The following requirements apply to the establishment of P2MP PWs:

   -  PE nodes MUST be configurable with the P2MP PW identifiers and
      ACs.

   -  A discovery mechanism SHOULD allow the Root PE to discover the
      Leaf PEs, or vice versa.

   -  Solutions SHOULD allow single-sided operation at the Root PE for
      the selection of some AC(s) at the Leaf PE(s) to be attached to
      the PW tree so that the Root PE controls the leaf attachment.

   -  The Root PE SHOULD support a method to be informed about whether a
      Leaf PE has successfully attached to the PW tree.

3.4.  P2MP PW Signaling Requirements

3.4.1.  P2MP PW Identifier

   The P2MP PW MUST be uniquely identified.  This unique P2MP PW
   identifier MUST be used for all signaling procedures related to this
   PW (PW setup, monitoring, etc.).

3.4.2.  PW Type Mismatch

   The Root PE and Leaf PEs of a P2MP PW MUST be configured with the
   same PW type as defined in [RFC4446] for P2P PW.  In case of a type
   mismatch, a PE SHOULD abort attempts to attach the Leaf PE to the
   P2MP PW.

3.4.3.  Interface Parameters Sub-TLV

   Some interface parameters [RFC4446] related to the AC capability have
   been defined according to the PW type and are signaled during the PW
   setup.

   Where applicable, a solution is REQUIRED to ascertain whether the AC
   at the Leaf PE is capable of supporting traffic coming from the AC at
   the Root PE.

   In case of a mismatch, the passive PE (Root or Leaf PE, depending on
   the signaling process) SHOULD support mechanisms to reject attempts
   to attach the Leaf PE to the P2MP PW.

3.4.4.  Leaf Grafting/Pruning

   Once the PW tree is established, the solution MUST allow the addition
   or removal of a Leaf PE, or a subset of leaves to/from the existing
   tree, without any impact on the PW tree (data and control planes) for
   the remaining Leaf PEs.

   The addition or removal of a Leaf PE MUST also allow the P2MP PSN
   tunnel to be updated accordingly.  This may cause the P2MP PSN tunnel
   to add or remove the corresponding Leaf PE.

3.4.5.  Failure Detection and Reporting

   Since the underlying layer has an end-to-end P2MP topology between
   the Root PE and the Leaf PEs, the failure reporting and processing
   procedures are implemented only on the edge nodes.

   Failure events may cause one or more Leaf PEs to become detached from
   the PW tree.  These events MUST be reported to the Root PE, using
   appropriate out-of-band or in-band Operations, Administration, and
   Maintenance (OAM) messages for monitoring.

   It MUST be possible for the operator to choose the out-of-band or in-
   band monitoring tools or both to monitor the Leaf PE status.  For
   management purposes, the solution SHOULD allow the Root PE to be
   informed of Leaf PEs' failure.

   Based on these failure notifications, solutions MUST allow the Root
   PE to update the remaining leaves of the PW tree.

   -  A solution MUST support an in-band status notification mechanism
      to detect failures: unidirectional point-to-multipoint traffic
      failure.  This MUST be realized by enhancing existing unicast PW
      methods, such as Virtual Circuit Connectivity Verification (VCCV)
      for seamless and familiar operation as defined in [RFC5085].

   -  In case of failure, it MUST correctly report which Leaf PEs are
      affected.  This MUST be realized by enhancing existing PW methods,
      such as LDP Status Notification.  The notification message SHOULD
      include the type of fault (P2MP PW, AC, or PSN tunnel).

   -  A Leaf PE MAY be notified of the status of the Root PE's AC.

   -  A solution MUST support OAM message mapping [RFC6310] at the Root
      PE and Leaf PE if a failure is detected on the source CE.

3.4.6.  Protection and Restoration

   It is assumed that if recovery procedures are required, the P2MP PSN
   tunnel will support standard MPLS-based recovery techniques.  In that
   case, a mechanism SHOULD be implemented to avoid race conditions
   between recovery at the PSN level and recovery at the PW level.

   An alternative protection scheme MAY rely on the PW layer.

   Leaf PEs MAY be protected via a P2MP PW redundancy mechanism.  In the
   example depicted below, a standby P2MP PW is used to protect the
   active P2MP PW.  In that protection scheme, the AC at the Root PE
   MUST serve both P2MP PWs.  In this scenario, the criteria for
   switching over SHOULD be defined, e.g., failure of one or all leaves
   of the active P2MP PW will trigger switchover of the whole P2MP PW.

                                     CE1
                                      |
         ROOT           active       PE1    standby
                        P2MP PW  .../  \....P2MP PW
                                /           \
                              P2            P3
                             / \           / \
                            /   \         /   \
                           /     \       /     \
         LEAF            PE4    PE5    PE6    PE7
                          |      |      |      |
                          |       \    /       |
                           \        CE2       /
                            \                /
                              ------CE3-----

      Figure 3: Example of P2MP PW Redundancy for Protecting Leaf PEs

   Note that some of the nodes/links in this figure can be physically
   shared; this depends on the service provider policy of network
   redundancy.

   The Root PE MAY be protected via a P2MP PW redundancy mechanism.  In
   the example depicted below, a standby P2MP PW is used to protect the
   active P2MP.  A single AC at the Leaf PE MUST be used to attach the
   CE to the primary and the standby P2MP PW.  The Leaf PE MUST support
   protection mechanisms in order to select the active P2MP PW.

                                     CE1
                                    /  \
                                   |    |
               ROOT     active    PE1  PE2   standby
                        P2MP PW1   |    |    P2MP PW2
                                   |    |
                                   P2  P3
                                  /  \/  \
                                 /   /\   \
                                /   /  \   \
                               /   /    \   \
               LEAF            PE4        PE5
                                |          |
                               CE2        CE3

      Figure 4: Example of P2MP PW Redundancy for Protecting Root PEs

3.4.7.  Scalability

   The solution SHOULD scale at worst linearly for message size, memory
   requirements, and processing requirements, with the number of Leaf
   PEs.

   Increasing the number of P2MP PWs between a Root PE and a given set
   of Leaf PEs SHOULD NOT cause the P router to increase the number of
   entries in its forwarding table by the same or greater proportion.
   Multiplexing P2MP PWs to P2MP PSN tunnels achieves this.

4.  Backward Compatibility

   Solutions MUST be backward compatible with current PW standards.
   Solutions SHOULD utilize existing capability advertisement and
   negotiation procedures for the PEs implementing P2MP PW endpoints.

   The implementation of OAM mechanisms also implies the advertisement
   of PE capabilities to support specific OAM features.  The solution
   MAY allow advertising P2MP PW OAM capabilities.  A solution MUST NOT
   allow a P2MP PW to be established to PEs that do not support P2MP PW
   functionality.  It MUST have a mechanism to report an error for
   incompatible PEs.

   In some cases, upstream traffic is needed from downstream CEs to
   upstream CEs.  The P2MP PW solution SHOULD allow a return path (i.e.,
   from the Leaf PE to the Root PE) that provides upstream connectivity.

   In particular, the same ACs MAY be shared between the downstream and
   upstream directions.  For downstream, a CE receives traffic
   originated by the Root PE over its AC.  For upstream, the CE MAY also
   send traffic destined to the same Root PE over the same AC.

5.  Security Considerations

   The security requirements common to PW are raised in Section 11 of
   [RFC3916].  P2MP PW is a variant of the initial P2P PW definition,
   and those requirements (and the security considerations from
   [RFC3985]) also apply.  The security considerations from [RFC5920]
   and [RFC6941] also apply to the IP/MPLS and MPLS-TP deployment
   scenarios, respectively.

   Some issues specifically due to P2MP topology need to be addressed in
   the definition of the solution:

   -  The solution SHOULD provide means to protect the traffic delivered
      to receivers (Integrity, Confidentiality, Endpoint
      Authentication).

   -  The solution SHOULD support means to protect the P2MP PW as a
      whole against attacks that would lead to any kind of denial of
      service.

   Specifically, safeguard mechanisms should be considered to avoid any
   negative impact on the whole PW tree when any one receiver or any
   group of receivers is attacked.  Safeguard mechanisms for both the
   data plane and the control plane need to be considered.

6.  References

6.1.  Normative References

   [RFC2119]   Bradner, S., "Key words for use in RFCs to Indicate
               Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3916]   Xiao, X., Ed., McPherson, D., Ed., and P. Pate, Ed.,
               "Requirements for Pseudo-Wire Emulation Edge-to-Edge
               (PWE3)", RFC 3916, September 2004.

   [RFC3985]   Bryant, S., Ed., and P. Pate, Ed., "Pseudo Wire Emulation
               Edge-to-Edge (PWE3) Architecture", RFC 3985, March 2005.

   [RFC4446]   Martini, L., "IANA Allocations for Pseudowire Edge to
               Edge Emulation (PWE3)", BCP 116, RFC 4446, April 2006.

   [RFC5332]   Eckert, T., Rosen, E., Ed., Aggarwal, R., and Y. Rekhter,
               "MPLS Multicast Encapsulations", RFC 5332, August 2008.

   [RFC5659]   Bocci, M. and S. Bryant, "An Architecture for Multi-
               Segment Pseudowire Emulation Edge-to-Edge", RFC 5659,
               October 2009.

   [RFC6310]   Aissaoui, M., Busschbach, P., Martini, L., Morrow, M.,
               Nadeau, T., and Y(J). Stein, "Pseudowire (PW) Operations,
               Administration, and Maintenance (OAM) Message Mapping",
               RFC 6310, July 2011.

6.2.  Informative References

   [RFC4023]   Worster, T., Rekhter, Y., and E. Rosen, Ed.,
               "Encapsulating MPLS in IP or Generic Routing
               Encapsulation (GRE)", RFC 4023, March 2005.

   [RFC4461]   Yasukawa, S., Ed., "Signaling Requirements for Point-to-
               Multipoint Traffic-Engineered MPLS Label Switched Paths
               (LSPs)", RFC 4461, April 2006.

   [RFC4875]   Aggarwal, R., Ed., Papadimitriou, D., Ed., and S.
               Yasukawa, Ed., "Extensions to Resource Reservation
               Protocol - Traffic Engineering (RSVP-TE) for Point-to-
               Multipoint TE Label Switched Paths (LSPs)", RFC 4875, May
               2007.

   [RFC5085]   Nadeau, T., Ed., and C. Pignataro, Ed., "Pseudowire
               Virtual Circuit Connectivity Verification (VCCV): A
               Control Channel for Pseudowires", RFC 5085, December
               2007.

   [RFC5254]   Bitar, N., Ed., Bocci, M., Ed., and L. Martini, Ed.,
               "Requirements for Multi-Segment Pseudowire Emulation
               Edge-to-Edge (PWE3)", RFC 5254, October 2008.

   [RFC5331]   Aggarwal, R., Rekhter, Y., and E. Rosen, "MPLS Upstream
               Label Assignment and Context-Specific Label Space", RFC
               5331, August 2008.

   [RFC5920]   Fang, L., Ed., "Security Framework for MPLS and GMPLS
               Networks", RFC 5920, July 2010.

   [RFC6388]   Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B.
               Thomas, "Label Distribution Protocol Extensions for
               Point-to-Multipoint and Multipoint-to-Multipoint Label
               Switched Paths", RFC 6388, November 2011.

   [RFC6941]   Fang, L., Ed., Niven-Jenkins, B., Ed., Mansfield, S.,
               Ed., and R. Graveman, Ed., "MPLS Transport Profile
               (MPLS-TP) Security Framework", RFC 6941, April 2013.

   [VPMS-REQS] Kamite, Y., Jounay, F., Niven-Jenkins, B., Brungard, D.,
               and L. Jin, "Framework and Requirements for Virtual
               Private Multicast Service (VPMS)", Work in Progress,
               October 2012.

7.  Acknowledgments

   The authors thank the following people: the authors of [RFC4461]
   since the structure and content of this document were, for some
   sections, largely inspired by [RFC4461]; JL. Le Roux and A. Cauvin
   for the discussions, comments, and support; Adrian Farrel for his
   Routing Area Director review; and IESG reviewers.

8.  Contributors

   Philippe Niger
   France Telecom
   2, avenue Pierre-Marzin
   22307 Lannion Cedex
   France

   EMail: philippe.niger@orange-ftgroup.com


   Luca Martini
   Cisco Systems, Inc.
   9155 East Nichols Avenue, Suite 400
   Englewood, CO  80112
   US

   EMail: lmartini@cisco.com


   Lei Wang
   Telenor
   Snaroyveien 30
   Fornebu 1331
   Norway

   EMail: lei.wang@telenor.com


   Rahul Aggarwal
   Juniper Networks
   1194 North Mathilda Ave.
   Sunnyvale, CA  94089
   US

   EMail: rahul@juniper.net


   Simon Delord
   Telstra
   380 Flinders Lane
   Melbourne
   Australia

   EMail: simon.delord@gmail.com
   Martin Vigoureux
   Alcatel-Lucent France
   Route de Villejust
   91620 Nozay
   France

   EMail: martin.vigoureux@alcatel-lucent.fr


   Lizhong Jin
   ZTE Corporation
   889, Bibo Road
   Shanghai, 201203
   China

   EMail: lizho.jin@gmail.com

Authors' Addresses

   Frederic Jounay (editor)
   Orange CH
   4 rue caudray 1020 Renens
   Switzerland

   EMail: frederic.jounay@orange.ch


   Yuji Kamite (editor)
   NTT Communications Corporation
   1-1-6 Uchisaiwai-cho, Chiyoda-ku
   Tokyo 100-8019
   Japan

   EMail: y.kamite@ntt.com


   Giles Heron
   Cisco Systems, Inc.
   9 New Square
   Bedfont Lakes
   Feltham
   Middlesex
   TW14 8HA
   United Kingdom

   EMail: giheron@cisco.com


   Matthew Bocci
   Alcatel-Lucent Telecom Ltd
   Voyager Place
   Shoppenhangers Road
   Maidenhead
   Berks
   United Kingdom

   EMail: Matthew.Bocci@alcatel-lucent.com

ISO Plain Language

On this page
PROBLEMA provider that wants to deliver Layer 2 traffic from one source to many receivers has to build it out of point-to-point pseudowires, which copies the same traffic once per receiver and wastes bandwidth on shared links.
MECHANISMRFC 7338 defines the requirements for a point-to-multipoint pseudowire, a tree of pseudowire endpoints carried over one multipoint tunnel, and lists what a signalling and maintenance design must do: identify the tree, attach and detach leaves, report failures, provide redundancy and scale.
WHY IT MATTERSThe document is a set of requirements, not a protocol. It was written to guide the standardisation of point-to-multipoint pseudowires, which would improve the support for multicast Layer 2 services such as Virtual Private LAN Service and Virtual Private Multicast Service.

§1The Problem and the Scope

A pseudowire, as defined in the pseudowire architecture of RFC 3985, emulates the essential attributes of a telecommunications service, such as a T1 leased line or Frame Relay, over an IP or MPLS packet switched network. The user perceives a single unshared link or circuit. It carries Layer 1 or Layer 2 traffic, such as Ethernet, time-division multiplexing, ATM and Frame Relay, over a Layer 3 network, and operates edge to edge between the two ends of the pseudowire.

A point-to-multipoint service can be built from a set of point-to-point pseudowires with the traffic replicated at the root provider edge, but that costs bandwidth, because duplicate traffic is carried several times over shared links. This document defines the requirements for a point-to-multipoint pseudowire instead: a mechanism that emulates the attributes of a point-to-multipoint telecommunications service, such as a point-to-multipoint ATM virtual circuit over a packet switched network. The required functions are to encapsulate the service data units arriving at an ingress attachment circuit, carry them across a tunnel to one or more egress attachment circuits, manage their timing and order, and carry out whatever other operations are needed to emulate the service as faithfully as possible.

The scope is the general architecture, a reference model, a mention of data encapsulation, and the requirements for setting up and maintaining the pseudowire. The requirements concentrate on the single-segment pseudowire model; the point-to-multipoint case in the multi-segment model is left for further study, as are packet processing and faithfulness of emulated services, which RFC 3916 covers. Although the document is a requirements specification rather than a protocol specification, its key words are to be interpreted as requirements on any protocol solution designed to meet them.

A pseudowire makes a packet network look like a dedicated circuit to the customer. Building a one-to-many version out of separate two-ended circuits means sending the same bytes several times over shared links, which wastes capacity. The document asks for a single tree-shaped pseudowire, and then lists what such a design has to get right.

§3.1The Reference Model

In the pseudowire architecture, both ends of a pseudowire sit at the edge of the same packet switched network and the pseudowire label does not change between the originating and terminating provider edges. This is the single-segment pseudowire, the most fundamental model of the architecture. A point-to-multipoint pseudowire extends it: a root provider edge attached to the source customer edge connects to one or more leaf provider edges, each attached to receiver customer edges. It is also called a PW tree. It is unidirectional, carrying traffic from the root provider edge to the leaf provider edges, and may optionally support a return path.

In this model a single copy of each packet travels over the pseudowire on a point-to-multipoint tunnel, and every leaf receives it because the tunnel itself is point-to-multipoint. The pseudowire should be traffic optimised, meaning only one copy of a packet is sent on any single link along the path. Routers in the core take part in running the tunnel but not in signalling the pseudowires it carries.

The model has to account for three levels of replication: at the ingress provider edge, where traffic is copied to local receiver customer edges; in the core, where a router copies traffic by means of the point-to-multipoint tunnel; and at the egress provider edge, where traffic is copied to local receiver customer edges. It is theoretically possible to skip the core replication and copy everything at ingress into a set of point-to-point tunnels, but that is not preferred, because several tunnels may cross the same physical link and the same packet would then be sent over that link more than once.

The traffic starts at one customer router, crosses a provider edge, travels through the core inside a multipoint tunnel, and comes out at several provider edges, each of which copies it to its own customer. Only one copy crosses each shared link. The copies in the core happen inside the tunnel, not at the source.

THE POINT-TO-MULTIPOINT PSEUDOWIRE MODEL, SIMPLIFIED FROM RFC 7338, FIGURE 1
  • Root PE Attached to the source customer edge.
    • Core P router Replicates in the core; takes no part in pseudowire signalling.
      • Leaf PE PE2.
        • Receiver CE
      • Leaf PE PE3.
        • Receiver CE
      • Leaf PE PE4.
        • Receiver CE

§3.2The Underlying Layer and Multiplexing

The MPLS multicast encapsulation specification defines how MPLS packets are replicated so that a copy is sent to each of several next hops, and that procedure is what a point-to-multipoint tunnel in the packet switched network uses. A point-to-multipoint tunnel corresponds to a point-to-multipoint data link or tunnel, and the pseudowire labels correspond to the top labels of the MPLS packets sent on it. In the single-segment model the pseudowire data unit is replicated by the underlying tunnel, and the pseudowire label is unchanged and hidden from the transit routers.

A solution must support a point-to-multipoint pseudowire over a single point-to-multipoint tunnel, and a single tunnel must be able to carry the traffic of more than one such pseudowire, which is multiplexing. The tunnel may use a different technology, such as MPLS over GRE, or a point-to-multipoint MPLS label switched path, and may be set up with a different protocol, such as the multipoint extensions of LDP or point-to-multipoint RSVP-TE. Which tunnel to use may be fixed by configuration or chosen dynamically.

Multiplexing should be decided by how much the leaves of the pseudowire overlap with the leaves of an existing point-to-multipoint path. Reusing an existing path is attractive because it needs no new configuration, but the routers on that path that are not leaves of the pseudowire would receive traffic they do not want. No special configuration is needed to make them drop it, since they hold no forwarding entries unless they took part in signalling the pseudowire. The operator should decide whether partial multiplexing is acceptable, and a minimum congruency rate may be defined to help; the rate takes into account the overlap between the leaves of the pseudowire and the egress routers of the existing path, where complete overlap gives a rate of 100 percent, and the impact on other traffic sharing the path.

Several pseudowires can share one multipoint tunnel, which saves the network from carrying a separate tunnel for each one. The catch is that the tunnel usually has more branches than a given pseudowire needs, so the extra branches receive traffic they should not keep. The document says the operator should measure that overlap before sharing a tunnel.

§3.3Building and Managing the Tree

Two approaches to assigning MPLS labels exist, upstream-assigned and downstream-assigned, but which one to use is left to the solution. The requirements for establishing the pseudowires themselves are that provider edges must be configurable with the pseudowire identifiers and attachment circuits, that a discovery mechanism should let the root provider edge find the leaf provider edges or the other way round, that solutions should allow one-sided operation at the root so that it controls which attachment circuits at the leaves join the tree, and that the root should have a way of learning whether a leaf attached successfully.

On the signalling side, the pseudowire must be uniquely identified, and that identifier must be used in every signalling procedure for it, including setup and monitoring. The root and the leaves must be configured with the same pseudowire type, and on a mismatch a provider edge should refuse the attachment. Interface parameters that describe the capability of an attachment circuit are signalled during setup, so where they apply the solution is required to find out whether the attachment circuit at the leaf can carry the traffic arriving at the root's attachment circuit, and the passive side should be able to reject the attachment if it cannot.

Once the tree exists, a leaf provider edge, or a set of leaves, must be added to or removed from it without any effect on the data and control planes of the remaining leaves. Adding or removing a leaf must also update the underlying tunnel, which may mean adding or removing the same leaf there.

The tree needs a name that every part of the network uses, and both ends of each attachment must agree on what kind of traffic it carries. The root decides which receivers join, and it must be told when one attaches. After that, a receiver can be added or taken away without disturbing the others.

§3.4.5Failures, Protection and Scale

Because the underlying layer has an end-to-end point-to-multipoint topology between the root and the leaves, failure reporting and processing happen only on the edge nodes. A failure event may detach one or more leaves from the tree, and those events must be reported to the root using out-of-band or in-band operations, administration and maintenance messages. The operator must be able to choose out-of-band monitoring, in-band monitoring, or both, and the solution should let the root be informed of leaf failures so that it can update the remaining leaves of the tree.

The solution must provide an in-band status notification mechanism to detect the failure of unidirectional point-to-multipoint traffic, by enhancing existing unicast pseudowire methods such as Virtual Circuit Connectivity Verification. When a failure occurs it must report which leaves are affected, by enhancing existing methods such as LDP status notification, and the notification should say whether the fault is in the pseudowire, the attachment circuit or the tunnel. A leaf may also be told about the state of the root's attachment circuit, and the solution must support mapping of operations messages at both ends when a failure is detected on the source side.

Two protection schemes are described. In the first, leaf provider edges are protected by a standby point-to-multipoint pseudowire, with the attachment circuit at the root serving both; the criteria for switching over should be defined, for example that the failure of one or all leaves of the active pseudowire triggers a switchover of the whole pseudowire. In the second, the root provider edge is protected in the same way, with a single attachment circuit at the leaf used to attach the customer to both the primary and the standby pseudowire, and the leaf supporting the mechanisms that select the active one. The document also notes that if the underlying tunnel already provides recovery, the pseudowire layer needs a mechanism to avoid racing between recovery at the tunnel level and recovery at the pseudowire level.

On scale, the solution should grow at worst linearly in message size, memory and processing with the number of leaves. Adding more pseudowires between a root and the same leaves should not make the core routers hold proportionally more forwarding entries, which is achieved by multiplexing the pseudowires onto the tunnels.

When something breaks, the edge routers notice, because only they see the ends of the tree, and they must tell the root which receivers were affected. The root can then update the rest of the tree. The document also describes keeping a standby tree ready and switching to it, and warns that the tunnel and the pseudowire must not both try to recover at the same moment.

THE TWO REDUNDANCY SCHEMES (RFC 7338, FIGURES 3 AND 4)
AspectProtecting the leaf PEsProtecting the root PE
Standby treeA standby point-to-multipoint pseudowireA standby point-to-multipoint pseudowire
Shared attachment circuitThe attachment circuit at the root serves both treesA single attachment circuit at the leaf attaches to both
Who switches overThe switchover criteria should be defined, for example a failure of one or all leavesThe leaf supports the mechanisms that select the active tree
WHAT MUST HAPPEN WHEN A LEAF FAILS
  • Detect itAn in-band status notification finds the failure of the unidirectional traffic.
  • Name the leavesThe report says which leaf provider edges were affected.
  • Say what brokeThe fault is in the pseudowire, the attachment circuit or the tunnel.
  • Tell the rootThe event reaches the root provider edge by out-of-band or in-band messages.
  • Update the treeThe root adjusts the remaining leaves of the tree.

§5Security and Backward Compatibility

The security requirements common to pseudowires, which are set out in Section 11 of RFC 3916, apply, as do the security considerations of RFC 3985. The considerations of RFC 5920 apply to IP/MPLS deployments and those of RFC 6941 to MPLS Transport Profile deployments. Two issues arise from the point-to-multipoint topology itself: the solution should provide means to protect the traffic delivered to receivers, covering integrity, confidentiality and endpoint authentication, and it should support means to protect the pseudowire as a whole against attacks that would cause a denial of service. Safeguard mechanisms should be considered so that an attack on one receiver or on a group of receivers does not damage the whole tree, and both the data plane and the control plane need them.

On compatibility, solutions must be backward compatible with the current pseudowire standards and should use the existing capability advertisement and negotiation procedures for the provider edges that are endpoints. Because operations mechanisms imply advertising capabilities, the solution may advertise point-to-multipoint pseudowire capabilities, and it must not allow a point-to-multipoint pseudowire to be established with provider edges that do not support the functionality; it must have a way to report an error for incompatible endpoints. Finally, where upstream traffic is needed, the solution should allow a return path from the leaf to the root, and the same attachment circuits may be shared between the downstream and upstream directions, so that a customer edge sends traffic back over the same circuit it receives on.

Because the tree reaches many receivers, one attack can hurt more than one customer, so the design should protect the traffic and keep an attack on a single receiver from affecting the rest. A solution must also stay compatible with the pseudowire standards that already exist, and must refuse to build a tree with equipment that does not support it.

§7References

[RFC2119]RFC 2119Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.March 1997[RFC3916]RFC 3916Xiao, X., Ed., McPherson, D., Ed., and P. Pate, Ed., "Requirements for Pseudo-Wire Emulation Edge-to-Edge (PWE3)", RFC 3916, September 2004.October 2004[RFC3985]RFC 3985Bryant, S., Ed., and P. Pate, Ed., "Pseudo Wire Emulation Edge-to-Edge (PWE3) Architecture", RFC 3985, March 2005.March 2005[RFC4446]RFC 4446Martini, L., "IANA Allocations for Pseudowire Edge to Edge Emulation (PWE3)", BCP 116, RFC 4446, April 2006.April 2006[RFC5085]RFC 5085Nadeau, T., Ed., and C. Pignataro, Ed., "Pseudowire Virtual Circuit Connectivity Verification (VCCV): A Control Channel for Pseudowires", RFC 5085, December 2007.December 2007[RFC5332]RFC 5332Eckert, T., Rosen, E., Ed., Aggarwal, R., and Y. Rekhter, "MPLS Multicast Encapsulations", RFC 5332, August 2008.August 2008[RFC5659]RFC 5659Bocci, M. and S. Bryant, "An Architecture for Multi-Segment Pseudowire Emulation Edge-to-Edge", RFC 5659, October 2009.October 2009[RFC5920]RFC 5920Fang, L., Ed., "Security Framework for MPLS and GMPLS Networks", RFC 5920, July 2010.July 2010[RFC6310]RFC 6310Aissaoui, M., Busschbach, P., Martini, L., Morrow, M., Nadeau, T., and Y(J). Stein, "Pseudowire (PW) Operations, Administration, and Maintenance (OAM) Message Mapping", RFC 6310, July 2011.July 2011[RFC6388]RFC 6388Wijnands, IJ., Ed., Minei, I., Ed., Kompella, K., and B. Thomas, "Label Distribution Protocol Extensions for Point-to-Multipoint and Multipoint-to-Multipoint Label Switched Paths", RFC 6388, November 2011.November 2011[RFC6941]RFC 6941Fang, L., Ed., Niven-Jenkins, B., Ed., Mansfield, S., Ed., and R. Graveman, Ed., "MPLS Transport Profile (MPLS-TP) Security Framework", RFC 6941, April 2013.April 2013