<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc tocdepth="3"?>
<?rfc rfcedstyle="yes"?>
<rfc category="info" docName="draft-ietf-mpls-tp-p2mp-framework-06"
     ipr="trust200902">
  <front>
    <title abbrev="MPLS Transport Profile P2MP Framework">A Framework for
    Point-to-Multipoint MPLS in Transport Networks</title>

    <author fullname="Dan Frost" initials="D" surname="Frost">
  
      <organization>Blue Sun</organization>

      <address>
        <email>frost@mm.st</email>
      </address>
    </author>

    <author fullname="Stewart Bryant" initials="S" 
            surname="Bryant">
      <organization>Cisco Systems</organization>

      <address>
        <postal>
          <street></street>

          <city></city>

          <region></region>

          <code></code>

          <country></country>
        </postal>

        <phone></phone>

        <facsimile></facsimile>

        <email>stbryant@cisco.com</email>

        <uri></uri>
      </address>
    </author>

    <author fullname="Matthew Bocci" initials="M" 
            surname="Bocci">
      <organization>Alcatel-Lucent</organization>

      <address>
        <postal>
          <street>Voyager Place, Shoppenhangers Road</street>

          <city>Maidenhead</city>

          <region>Berks</region>

          <code>SL6 2PJ</code>

          <country>United Kingdom</country>
        </postal>

        <email>matthew.bocci@alcatel-lucent.com</email>
      </address>
    </author>

    <author fullname="Lou Berger" initials="L"  surname="Berger">
      <organization>LabN Consulting</organization>

      <address>
        <phone>+1-301-468-9228</phone>

        <email>lberger@labn.net</email>
      </address>
    </author>

    <date year="2014" />

    <area>Routing</area>

    <workgroup>MPLS Working Group</workgroup>

    <keyword>mpls-tp</keyword>

    <keyword>MPLS</keyword>

    <keyword>Internet-Draft</keyword>

    <abstract>
      <t>The Multiprotocol Label Switching Transport Profile
      is the common set of MPLS protocol functions defined to enable the
      construction and operation of packet transport networks. The MPLS-TP
      supports both point-to-point and point-to-multipoint transport paths.
      This document defines the elements and functions of the MPLS-TP
      architecture applicable specifically to supporting point-to-multipoint
      transport paths.</t>

    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>The Multiprotocol Label Switching Transport Profile (MPLS-TP)
      is the common set of MPLS protocol functions defined to meet the
      requirements specified in <xref target="RFC5654"></xref>. The MPLS-TP
      Framework <xref target="RFC5921"></xref> provides an overall
      introduction to the MPLS-TP and defines the general architecture of the
      Transport Profile, as well as those aspects specific to point-to-point
      transport paths. The purpose of this document is to define the elements
      and functions of the MPLS-TP architecture applicable specifically to
      supporting point-to-multipoint transport paths.</t>

      <section title="Scope">
        <t>This document defines the elements and functions of the MPLS-TP
        architecture related to supporting point-to-multipoint transport
        paths. The reader is referred to <xref target="RFC5921"></xref> for
        those aspects of the MPLS-TP architecture that are generic, or
        concerned specifically with point-to-point transport paths.</t>
      </section>

      <section title="Terminology">
        <texttable align="left" style="headers">
          <ttcol>Term</ttcol>

          <ttcol>Definition</ttcol>

          <c>CE</c>

          <c>Customer Edge</c>

          <c>LSP</c>

          <c>Label Switched Path</c>

          <c>LSR</c>

          <c>Label Switching Router</c>

          <c>MEG</c>

          <c>Maintenance Entity Group</c>

          <c>MEP</c>

          <c>Maintenance Entity Group End Point</c>

          <c>MIP</c>

          <c>Maintenance Entity Group Intermediate Point</c>

          <c>MPLS-TE</c>

          <c>MPLS Traffic Engineering</c>

          <c>MPLS-TP</c>

          <c>MPLS Transport Profile</c>

          <c>OAM</c>

          <c>Operations, Administration, and Maintenance</c>

          <c>OTN</c>

          <c>Optical Transport Network</c>

          <c>P2MP</c>

          <c>Point-to-multipoint</c>

          <c>PW</c>

          <c>Pseudowire</c>

          <c>RSVP-TE</c>

          <c>Resource Reservation Protocol - Traffic Engineering</c>

          <c>SDH</c>

          <c>Synchronous Digital Hierarchy</c>

          <c>tLDP</c>

          <c>Targeted LDP</c>

        </texttable>

        <section title="Additional Definitions and Terminology">
          <t>Detailed definitions and additional terminology may be found in
          <xref target="RFC5921"></xref> and <xref
          target="RFC5654"></xref>.</t>
        </section>
      </section>

      <section title="Applicability">
        <t>The point-to-multipoint connectivity provided by an MPLS-TP
        network is based on the point-to-multipoint connectivity
        provided by MPLS networks. Traffic Engineered P2MP LSP support
        is discussed in <xref target="RFC4875"></xref> and <xref
        target="RFC5332"></xref>, and P2MP PW support is being
        developed based on <xref
        target="I-D.ietf-pwe3-p2mp-pw-requirements"></xref> and <xref
        target="I-D.ietf-l2vpn-vpms-frmwk-requirements"></xref>. MPLS-TP
        point-to-multipoint connectivity is analogous to that provided
        by traditional transport technologies such as Optical
        Transport Network point-to-multipoint <xref
        target="G.798"></xref> and drop-and-continue <xref
        target="G.780"></xref>, and thus supports the same class of
        traditional applications, e.g., video distribution.</t>

        <t>The scope of this document is limited to
        point-to-multipoint functions and it does not discuss
        multipoint-to-multipoint support.</t>
      </section>
    </section>

    <section title="MPLS-TP P2MP Requirements">
      <t>The requirements for MPLS-TP are specified in <xref
      target="RFC5654"></xref>, <xref target="RFC5860"></xref>, and
      <xref target="RFC5951"></xref>. This section provides a brief
      summary of point-to-multipoint transport requirements as set out
      in those documents; the reader is referred to the documents
      themselves for the definitive and complete list of
      requirements. This summary does not include the <xref
      target="RFC2119"></xref> conformance language used in original
      documents as this document is not authoritative.</t>

      
      <t>From <xref target="RFC5654"></xref>:<list style="symbols">
          <t>MPLS-TP must support traffic-engineered point-to-multipoint
          transport paths.</t>

          <t>MPLS-TP must support unidirectional point-to-multipoint
          transport paths.</t>

          <t>MPLS-TP must be capable of using P2MP server (sub)layer
          capabilities as well as P2P server (sub)layer capabilities when
          supporting P2MP MPLS-TP transport paths.</t>

          <t>The MPLS-TP control plane must support establishing all the
          connectivity patterns defined for the MPLS-TP data plane (i.e.,
          unidirectional P2P, associated bidirectional P2P, co-routed
          bidirectional P2P, unidirectional P2MP) including configuration of
          protection functions and any associated maintenance functions.</t>

          <t>Recovery techniques used for P2P and P2MP should be identical to
          simplify implementation and operation.</t>

          <t>Unidirectional 1+1 and 1:n protection for P2MP connectivity must
          be supported.</t>

          <t>MPLS-TP recovery in a ring must protect unidirectional P2MP
          transport paths.</t>
      </list></t>

      <t>From <xref target="RFC5860"></xref>:<list style="symbols">
          <t>The protocol solution(s) developed to perform the
          following OAM functions must also apply to point-to-point
          associated bidirectional LSPs, point-to-point unidirectional
          LSPs, and point-to-multipoint LSPs:
          <list style="symbols">
	       <t>Continuity Check</t>
	       <t>Connectivity Verification, proactive</t>
	       <t>Lock Instruct</t>
	       <t>Lock Reporting</t>
	       <t>Alarm Reporting</t>
	       <t>Client Failure Indication</t>
	       <t>Packet Loss Measurement</t>
	       <t>Packet Delay Measurement</t>
          </list></t>

          <t>The protocol solution(s) developed to perform the
          following OAM functions may also apply to point-to-point
          associated bidirectional LSPs, point-to-point unidirectional
          LSPs, and point-to-multipoint LSPs:
          <list style="symbols">
	       <t>Connectivity Verification, on-demand</t>
	       <t>Route Tracing</t>
	       <t>Diagnostic Tests</t>
	       <t>Remote Defect Indication</t>
          </list></t>
      </list></t>

      <t>From <xref target="RFC5951"></xref>:<list style="symbols">
          <t>For unidirectional (P2P and point-to-multipoint (P2MP))
          connection, proactive measurement of packet loss and loss
          ratio is required.</t>

	  <t>For a unidirectional (P2P and P2MP) connection, on-demand
	  measurement of delay measurement is required.</t>
      </list></t>
    </section>

    <section anchor="arch" title="Architecture">
      <t>The overall architecture of the MPLS-TP is defined in
      <xref target="RFC5921"></xref>. The architecture for point-to-multipoint
      MPLS-TP comprises the following additional elements and functions: <list
          style="symbols">
          <t>Unidirectional point-to-multipoint LSPs</t>

          <t>Unidirectional point-to-multipoint PWs</t>

          <t>Optional point-to-multipoint LSP and PW control planes</t>

          <t>Survivability, network management, and Operations, Administration
          and Maintenance functions for point-to-multipoint PWs and
          LSPs</t>
        </list></t>

      <t>The following subsections summarise the encapsulation and forwarding
      of point-to-multipoint traffic within an MPLS-TP network, and the
      encapsulation options for delivery of traffic to and from MPLS-TP
      CE devices when the network is providing a packet transport
      service.</t>

      <section title="MPLS-TP Encapsulation and Forwarding">
        <t>Packet encapsulation and forwarding for MPLS-TP point-to-multipoint
        LSPs is identical to that for MPLS-TE point-to-multipoint LSPs.
        MPLS-TE point-to-multipoint LSPs were introduced in <xref
        target="RFC4875"></xref> and the related data-plane behaviour was
        further clarified in <xref target="RFC5332"></xref>. MPLS-TP allows
        for both upstream-assigned and downstream-assigned labels for use with
        point-to-multipoint LSPs.</t>

        <t>Packet encapsulation and forwarding for point-to-multipoint
        PWs has been discussed within the PWE3 Working Group <xref
        target="I-D.raggarwa-pwe3-p2mp-pw-encaps"></xref>, but such
        definition is for further study.</t>
      </section>
    </section>

    <section anchor="oam"
             title="Operations, Administration and Maintenance">
      <t>The requirements for MPLS-TP OAM are specified in <xref
      target="RFC5860"></xref>. The overall OAM architecture for
      MPLS-TP is defined in <xref target="RFC6371"></xref>, and P2MP
      OAM design considerations are described in Section 3.7 of that
      RFC.</t>

      <t>All the traffic sent over a P2MP transport path, including
      OAM packets generated by a MEP, is sent (multicast) from the
      root towards all the leaves, and thus may be processed by all
      the MIPs and MEPs associated with a P2MP MEG. If an OAM packet
      is to be processed by only a specific leaf, it requires
      information to indicate to all other leaves that the packet must
      be discarded. To address a packet to an intermediate node in the
      tree, TTL based addressing is used to set the radius and
      additional information in the OAM payload is used to identify
      the specific destination. It is worth noting that a MIP and MEP
      may be instantiated on a single node when it is both a branch
      and leaf node.</t>

      <t>P2MP paths are unidirectional; therefore, any return path to
      an originating MEP for on-demand transactions will be
      out-of-band. Out of band return paths are discussed in Section
      3.8 of <xref target="RFC5921"></xref>.</t>

      <t>A more detailed discussion of P2MP OAM considerations can be
      found in <xref target="I-D.hmk-mpls-tp-p2mp-oam-framework"></xref>.</t>
    </section>

    <section anchor="cp" title="Control Plane">
      <t>The framework for the MPLS-TP control plane is provided in <xref
      target="RFC6373"></xref>. This document reviews MPLS-TP control plane
      requirements as well as provides details on how the MPLS-TP control
      plane satisfies these requirements. Most of the requirements identified
      in <xref target="RFC6373"> </xref> apply equally to P2P and P2MP
      transport paths. The key P2MP specific control plane requirements are:
        <list style="symbols">
	    <t>requirement 6 (P2MP transport paths),</t>
	    <t>requirement 34 (use P2P sub-layers),</t>
	    <t>requirement 49 (common recovery solutions for P2P and P2MP),</t>
	    <t>requirement 59 (1+1 protection),</t>
	    <t>requirement 62 (1:n protection),</t>
	    <t>and requirement 65 (1:n shared mesh recovery).</t>
	  </list>
     </t>

      <t><xref target="RFC6373"></xref> defines the control plane
      approach used to support MPLS-TP transport paths. It identifies
      GMPLS as the control plane for MPLS-TP LSPs tLDP as the control
      plane for PWs. MPLS-TP allows that either, or
      both, LSPs and PWs to be provisioned statically or via a control
      plane. As noted in <xref target="RFC6373"></xref>:</t>

      <t>The PW and LSP control planes, collectively, must satisfy the MPLS-TP
      control-plane requirements. As with P2P services, when P2MP client
      services are provided directly via LSPs, all requirements must be
      satisfied by the LSP control plane. When client services are provided
      via PWs, the PW and LSP control planes can operate in combination, and
      some functions may be satisfied via the PW control plane while others
      are provided to PWs by the LSP control plane. This is particularly
      noteworthy for P2MP recovery.</t>

      <section title="P2MP LSP Control Plane">
        <t>The MPLS-TP control plane for P2MP LSPs uses
        GMPLS and is based on RSVP-TE for P2MP LSPs as
        defined in <xref target="RFC4875"></xref>. A detailed listing
        of how GMPLS satisfies MPLS-TP control plane requirements is
        provided in <xref target="RFC6373"></xref>.</t>

        <t><xref target="RFC6373"></xref>notes that recovery
        techniques for Traffic Engineered P2MP LSPs are not formally
        defined, and such that a definition is needed. A formal
        definition will be based on existing RFCs and may not require
        any new protocol mechanisms but, nonetheless, should be
        documented. GMPLS recovery is defined in <xref
        target="RFC4872"></xref> and <xref
        target="RFC4873"></xref>. Protection of P2MP LSPs is also
        discussed in <xref target="RFC6372"></xref> Section 4.7.3.</t>
      </section>

      <section title="P2MP PW Control Plane">
        <t>The MPLS-TP control plane for P2MP PWs
        should be based on the LDP control protocol used for
        point-to-point PWs <xref target="RFC4447"></xref>, with
        updates as required for P2MP applications. A detailed
        specification of the control plane for P2MP PWs is for
        further study.</t>
      </section>
    </section>

    <section anchor="survive" title="Survivability">
      <t>The overall survivability architecture for MPLS-TP is defined
      in <xref target="RFC6372"></xref>, and section 4.7.3 in
      particular describes the application of linear protection to
      unidirectional P2MP entities using 1+1 and 1:1 protection
      architecture. For 1+1, the approach is for the root of the P2MP
      tree to bridge the user traffic to both the working and
      protection entities. Each sink/leaf MPLS-TP node selects the
      traffic from one entity according to some predetermined
      criteria. For 1:1, the source/root MPLS-TP node needs to
      identify the existence of a fault condition impacting delivery
      to any of the leaves.  Fault notification happens from the node
      identifying the fault to the root node via an out of band path.
      The root then selects the protection transport path for traffic
      transfer. More sophisticated survivability approaches such as
      partial tree protection and 1:n protection are for further
      study.</t>

      <t>The IETF has no experience with P2MP PW survivability as yet, and
      therefore it is proposed that the P2MP PW survivability will initially
      rely on the LSP survivability. Further work is needed on this subject,
      particularly if a requirement emerges to provide survivability for P2MP
      PWs in an MPLS-TP context.</t>
    </section>

    <section anchor="nm" title="Network Management">
      <t>An overview of network management considerations for MPLS-TP
      can be found in Section 3.14 of "Framework for MPLS in Transport
      Networks" <xref target="RFC5921"></xref>. The provided 
      description applies equally to P2MP transport paths.</t>

      <t>The network management architecture and requirements for
      MPLS-TP are specified in <xref target="RFC5951"></xref>. They
      derive from the generic specifications described in ITU-T
      G.7710/Y.1701 <xref target="G.7710"></xref> for transport
      technologies. They also incorporate the OAM requirements for
      MPLS Networks <xref target="RFC4377"></xref> and MPLS-TP
      Networks <xref target="RFC5860"></xref> and expand on those
      requirements to cover the modifications necessary for fault,
      configuration, performance, and security in a transport network.
      <xref target="RFC5951"></xref> covers all MPLS-TP connection
      types, including P2MP.</t>

      <t><xref target="RFC6639"></xref> provides the MIB-based
      architecture for MPLS-TP.  It reviews the interrelationships
      between different non MPLS-TP specific MIB modules that can be
      leveraged for MPLS-TP network management, and identifies areas
      where additional MIB modules are required. While the document
      does not consider P2MP transport paths, it does provide a
      foundation for an analysis of areas where MIB module
      modification and addition may be needed to fully support P2MP
      transport paths. There has also been work in the MPLS working
      group on a P2MP specific MIB, <xref
      target="I-D.ietf-mpls-p2mp-te-mib"></xref>.

</t>

    </section>

    <section title="Security Considerations">
      <t>General security considerations for MPLS-TP are covered in <xref
      target="RFC5921"></xref>. Additional security considerations for
      P2MP LSPs are provided in <xref target="RFC4875"></xref>.
      This document introduces no new security considerations beyond those
      covered in those documents.</t>
    </section>

    <section title="IANA Considerations">
      <t>There are no requests for IANA actions in this document.</t>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include='reference.RFC.5654'?>

      <?rfc include='reference.RFC.5921'?>

      <?rfc include='reference.RFC.4875'?>

      <?rfc include='reference.RFC.4873'?>

      <?rfc include='reference.RFC.4872'?>

      <?rfc include='reference.RFC.5332'?>
    </references>

    <references title="Informative References">

      <?rfc include='reference.RFC.2119'?>

      <?rfc include='reference.RFC.4377'?>

      <?rfc include='reference.RFC.4447'?>

      <?rfc include='reference.RFC.5860'?>

      <?rfc include='reference.RFC.5951'?>

      <?rfc include='reference.RFC.6371'?>

      <?rfc include='reference.RFC.6372'?>

      <?rfc include='reference.RFC.6373'?>

      <?rfc include='reference.RFC.6639'?>

      <?rfc include='reference.I-D.ietf-l2vpn-vpms-frmwk-requirements'?>

      <?rfc include='reference.I-D.ietf-mpls-p2mp-te-mib'?>

      <?rfc include='reference.I-D.ietf-pwe3-p2mp-pw-requirements'?>

      <?rfc include='reference.I-D.raggarwa-pwe3-p2mp-pw-encaps'?>

      <?rfc include='reference.I-D.hmk-mpls-tp-p2mp-oam-framework'?>

      <reference anchor="G.7710">
        <front>
          <title>Common equipment management function requirements</title>

          <author>
            <organization>ITU-T Recommendation G.7710/Y.1701
            (07/2007)</organization>
          </author>

          <date year="2007" />
        </front>
      </reference>

      <reference anchor="G.780">
        <front>
          <title>Terms and definitions for synchronous digital hierarchy (SDH)
          networks</title>

          <author>
            <organization>ITU-T Recommendation G.780//Y.1351
            (07/2010)</organization>
          </author>

          <date year="2010" />
        </front>
      </reference>

      <reference anchor="G.798">
        <front>
          <title>Characteristics of optical transport network hierarchy
          equipment functional blocks</title>

          <author>
            <organization>ITU-T Recommendation G.798 (10/2010)</organization>
          </author>

          <date year="2010" />
        </front>
      </reference>
    </references>
  </back>
</rfc>
