<?xml version="1.0" encoding="US-ASCII"?>
<!--	$Id: pta_flags.xml,v 1.16 2016/05/03 16:58:42 erosen Exp $	-->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [

<!ENTITY RFC2119 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC4360 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4360.xml">
<!ENTITY RFC6514 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6514.xml">
<!ENTITY RFC7153 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7153.xml">
<!ENTITY RFC7606 SYSTEM
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7606.xml">


]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc strict="yes" ?>
<?rfc toc="yes"?>
<?rfc tocdepth="4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes" ?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>

<rfc submissionType="IETF" category="std" consensus="yes" number="7902"
     ipr="trust200902" updates="6514"> 


  <!-- ***** FRONT MATTER ***** -->

  <front>

    <title abbrev="PMSI Tunnel Attribute Flags">Registry and Extensions for
    P-Multicast&nbsp;Service&nbsp;Interface&nbsp;Tunnel&nbsp;Attribute Flags</title>



    <author fullname="Eric C. Rosen" initials="E." 
            surname="Rosen">
      <organization>Juniper Networks, Inc.</organization>
      <address>
        <postal>
          <street>10 Technology Park Drive</street>
          <city>Westford</city>
          <region>Massachusetts</region>
          <code>01886</code>
          <country>United States</country>
        </postal>
        <email>erosen@juniper.net</email>
      </address>
    </author>

    <author fullname="Thomas Morin" initials="T." 
            surname="Morin">
      <organization>Orange</organization>
      <address>
        <postal>
          <street>2, avenue Pierre-Marzin</street>
          <city>22307 Lannion Cedex</city>
          <country>France</country>
        </postal>
        <email>thomas.morin@orange.com</email>
      </address>
    </author>


    <date month="June" year="2016" />


    <!-- Meta-data Declarations -->

    <area>Routing</area>

    <workgroup>BESS Working Group</workgroup>




    <abstract>
      <t>
        The BGP-based control procedures for Multicast Virtual Private
        Networks (MVPNs) make use of a BGP attribute known as the "P-Multicast
   Service Interface (PMSI) Tunnel" attribute.  The attribute contains
        a one-octet "Flags" field.  The purpose of this document is to
        establish an IANA registry for the assignment of the bits in this
        field.  Since the "Flags" field contains only eight bits, this
        document also defines a new BGP Extended Community, "Additional PMSI
        Tunnel Attribute Flags", that can be used to carry additional flags
        for the "P-Multicast Service Interface (PMSI) Tunnel" attribute.  This document updates RFC 6514.
      </t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction" anchor="introduction">
      <t>
        A BGP attribute, "P-Multicast
   Service Interface (PMSI) Tunnel" attribute
        is defined in <xref target="RFC6514"/>.  This
        attribute, referred to as the "PMSI Tunnel" attribute in this document, contains a one-octet "Flags" field.  Only one flag is
        defined in that RFC, but there is now a need to define additional
        flags.  However, that RFC did not create an IANA registry for the
        assignment of bits in the "Flags" field.  This document creates a
        registry for that purpose.  In addition, there may be a need to
        define more than eight flags.  Therefore this document defines a new
        BGP Extended Community, "Additional PMSI Tunnel Attribute Flags",
        that can be used to carry additional flags for the "PMSI Tunnel"
        attribute.  A registry is also created for this Extended Community,
        allowing IANA to assign flag bits from the Extended Community's
        six-octet value field.
     </t>
     <t>
       The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
       "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
       document are to be interpreted as described in <xref
       target="RFC2119"/>.
      </t>
     
    </section> <!-- introduction -->

    <section title="Extending the &quot;PMSI Tunnel&quot; Attribute &quot;Flags&quot; Field">
      <t>
        In <xref target="RFC6514"/>, only a single octet in the "PMSI Tunnel"
        attribute is defined to carry bit flags.  This allows eight flags,
        which is unlikely to be sufficient for all future applications.
      </t>
      <t>
        This document defines a new Transitive Opaque Extended Community
        (<xref target="RFC4360"/>, <xref target="RFC7153"/>), "Additional
        PMSI Tunnel Attribute Flags".  It also defines a new bit flag in the
        "PMSI Tunnel" attribute "Flags" field, called the "Extension" flag.
      </t>
      <t>
        The "Additional PMSI Tunnel Attribute Flags" Extended Community MUST
        NOT be carried by a given BGP UPDATE message unless the following
        conditions both hold:
        <list style="symbols">
          <t>
            the given BGP UPDATE message is also carrying a "PMSI Tunnel"
            attribute, and
          </t>
          <t>
            the "Extension" flag of that "PMSI Tunnel" attribute's "Flags"
            field is set.
          </t>
        </list>
      </t>
      <t>
        The six-octet value field of the "Additional PMSI Tunnel Attribute
        Flags" Extended Community is considered to be a string of 48 one-bit
        flags.  As shown in <xref target="ec-format"/>, the leftmost bit
        (the most significant bit of the most significant octet) is bit 0,
        and the rightmost bit (the least significant bit of the least
        significant octet) is bit 47.  
      </t>
      <figure align="center" anchor="ec-format"
              title="Value Field of the &quot;Additional PMSI Tunnel Attribute
                     Flags&quot; Extended Community">
        <artwork align="center"><![CDATA[

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |               |               |               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 3               4
 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      </figure>
      
      <t>
        A BGP speaker MUST NOT attach more than one "Additional PMSI Tunnel
        Attribute Flags" Extended Community to a given BGP UPDATE.  If a
        given BGP UPDATE already contains an "Additional PMSI Tunnel
        Attribute Flags" Extended Community, a BGP speaker MUST NOT attach
        any additional such Extended Communities.
      </t>
      <t>
        If a BGP speaker receives a BGP UPDATE with more than one
        "Additional PMSI Tunnel Attribute Flags" Extended Communities
        attached, only the flag settings in first occurrence of the Extended
        Community are significant. Flag settings in subsequent occurrences
        of the Extended Community MUST be ignored.  When propagating the
        UPDATE, all instances of the Extended Community other than the first
        SHOULD be removed.
      </t>      
      <t>
        Suppose a BGP speaker receives an UPDATE message that contains a
        "PMSI Tunnel" attribute, but does not contain an "Additional PMSI
        Tunnel Attribute Flags" Extended Community.  If the "Extension" flag
        of the "PMSI Tunnel" attribute is set, the UPDATE is considered to
        be malformed, and the "treat-as-withdraw" procedure of <xref
        target="RFC7606"/> MUST be applied.
      </t>

      <t>
        If a BGP speaker receives an UPDATE message that contains one or
        more "Additional PMSI Tunnel Attribute Flags" Extended Communities,
        but either (a) that UPDATE message does not contain a "PMSI Tunnel"
        attribute, or (b) the "Extension" flag of the "PMSI Tunnel" attribute is
        not set, then the Extended Community(ies) SHOULD be removed and
        SHOULD NOT be redistributed.  The BGP UPDATE message MUST be
        processed (and if necessary, redistributed) as if the Extended
        Community(ies) had not been present.
      </t>
      <t>
        A BGP speaker that supports the current document, but does not
        recognize a particular flag (either in the" PMSI Tunnel" attribute
        "Flags" field or in the "Additional PMSI Tunnel Attribute Flags"
        Extended Community) MUST simply ignore that flag.  If the BGP
        speaker propagates either the "PMSI Tunnel" attribute, the
        "Additional PMSI Tunnel Attribute Flags" Extended Community, or both
        along with the UPDATE message, it SHOULD leave the setting of the
        flag unchanged.
      </t>
      <t>
        It is possible that a particular application will require all
        members of a particular set of BGP speakers to support a particular
        flag.  How it is determined whether all such BGP speakers support
        that flag is outside the scope of this document.
      </t>
      <t>
        In some situations, a BGP speaker may need to modify or replace the
        "PMSI Tunnel" attribute before propagating an UPDATE.  If the
        "Extension" flag of the "PMSI Tunnel" attribute was set before the
        attribute is modified or replaced, but that flag is no longer set
        after the attribute is modified or replaced, any "Additional PMSI
        Tunnel Attribute Flags" Extended Communities MUST be removed before
        the UPDATE is propagated.  If the "PMSI Tunnel" attribute is removed
        entirely before an UPDATE is propagated, the "Additional PMSI Tunnel
        Attribute Flags" Extended Communities (if any) MUST also be removed.
      </t>
    </section> <!-- extending -->


    <section title="IANA Considerations">
      <t>
        IANA has created a new registry called "P-Multicast
        Service Interface (PMSI) Tunnel Attribute Flags" in the "Border
        Gateway Protocol (BGP) Parameters" registry.
      </t>
      <t>
        Per Section 5 of <xref target="RFC6514"/>, a "PMSI Tunnel" attribute
        contains a "Flags" octet.  The "Flags" field is a single octet, with
        bits numbered, left-to-right, from 0 to 7.  IANA has initialized the registry as follows:
      </t>

      <figure align="left" title="&quot;PMSI Tunnel&quot; Attribute Flags">
        <artwork align="left"><![CDATA[
    Bit Position      Description                      Reference
    (left to right)
         0            unassigned
         1            Extension                        This document
         2            unassigned
         3            unassigned
         4            unassigned
         5            unassigned
         6            unassigned
         7            Leaf Information Required (L)    RFC 6514
]]>
        </artwork>
      </figure>
      <t>
        The registration procedure for this registry is Standards Action.
      </t>
      <t>
        IANA has also assigned the codepoint 0x07 from the "First Come,
        First Served" range of the "Transitive Opaque Extended Community
        Sub-Types" registry for "Additional PMSI Tunnel Attribute Flags".
      </t>
      <t>
        IANA has established a registry for the bit flags
        carried in the "Additional PMSI Tunnel Attribute Flags" Extended
        Community. The bits are numbered 0-47, with 0 being the most
        significant bit and 47 being the least significant bit.  The
        registration policy for this registry is "Standards
        Action".</t>
        <t>The initial registry should be as follows:
      </t>

      <figure align="left" title="Additional PMSI Tunnel Attribute Flags">
        <artwork align="left"><![CDATA[

    Bit Flag          Name          Reference

     0-47            Unassigned
]]>
        </artwork>
      </figure>
    </section>


    <section title="Security Considerations">
     <t>
       This document establishes an IANA registry, and defines a new
       Transitive Opaque Extended Community (<xref target="RFC4360"/>, <xref
       target="RFC7153"/>).
     </t>
     <t>
       Establishment of an IANA registry does not raise any security
       considerations.
     </t>
     <t>
       While this document defines a new Extended Community for carrying bit
       flags, it does not define any of the bit flags in that Extended
       Community.  Therefore, no security considerations are raised.
     </t>
     <t>
       This document defines a new flag, the "Extension" flag, in the "PMSI
       Tunnel" attribute.  If a particular UPDATE contains a "PMSI Tunnel"
       attribute with this flag set, but the UPDATE does not contain an
       "Additional PMSI Tunnel Attribute Flags" Extended Community, then the
       UPDATE is considered to be malformed, and the "treat-as-withdraw"
       procedure of <xref target="RFC7606"/> is invoked.  Thus, one can cause
       an UPDATE to be treated as a withdrawal by incorrectly setting this
       bit.  
     </t>
    </section>


    <?rfc needLines="8" ?>


 

  </middle>

  <!--  *****BACK MATTER ***** -->

  <back>


    <references title="Normative References">
      &RFC2119;
      &RFC4360;
      &RFC6514;
      &RFC7153;
      &RFC7606;
    </references>
    <section title="Acknowledgments" numbered="no">
      <t>
        The authors wish to thank Martin Vigoureux for his review of this
        document.  We also thank Christian Huitema and Alexey Melnikov for
        their review and comments.
      </t>
    </section>
  </back>
</rfc>
