Network Working Group                                          S. Venaas
Internet-Draft                                       Cisco Systems, Inc.
Obsoletes: 6166 (if approved)                                  A. Retana
Updates: 3973, 5015, 5059, 6754, 7761,      Futurewei Technologies, Inc.
         8364 (if approved)                              August 15, 2019
Intended status: Standards Track
Expires: February 16, 2020


           PIM Message Type Space Extension and Reserved Bits
                    draft-ietf-pim-reserved-bits-03

Abstract

   The PIM version 2 messages share a common message header format.  The
   common header definition contains eight reserved bits.  This document
   specifies how these bits may be used by individual message types, and
   creates a registry containing the per message type usage.  This
   document also extends the PIM type space by defining three new
   message types.  For each of the new types, four of the previously
   reserved bits are used to form an extended type range.

   This document Updates RFC7761 and RFC3973 by defining the use of the
   currently Reserved field in the PIM common header.  This document
   further updates RFC7761 and RFC3973, along with RFC5015, RFC5059,
   RFC6754 and RFC8364, by specifying the use of the currently Reserved
   bits for each PIM message.

   This document obsoletes RFC6166.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on February 16, 2020.





Venaas & Retana         Expires February 16, 2020               [Page 1]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


Copyright Notice

   Copyright (c) 2019 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
   (https://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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Conventions used in this document . . . . . . . . . . . . . .   3
   3.  PIM header common format  . . . . . . . . . . . . . . . . . .   3
   4.  Flag Bit definitions  . . . . . . . . . . . . . . . . . . . .   3
     4.1.  Flag Bits for Type 4 (Bootstrap)  . . . . . . . . . . . .   4
     4.2.  Flag Bits for Type 10 (DF Election) . . . . . . . . . . .   4
     4.3.  Flag Bits for Type 12 (PFM) . . . . . . . . . . . . . . .   4
     4.4.  Flag Bits for Types 13, 14 and 15 (Type Space Extension)    4
   5.  PIM Type Space Extension  . . . . . . . . . . . . . . . . . .   4
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   7.  IANA considerations . . . . . . . . . . . . . . . . . . . . .   5
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   6
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   6
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   The PIM version 2 messages share a common message header format
   defined in the PIM Sparse Mode [RFC7761] specification.  The common
   header definition contains eight Reserved bits.  The message types
   defined in these documents all use this common header.  There is no
   document formally specifying that these bits are to be used per
   message type.

   This document refers to the bits specified as Reserved in the common
   PIM header [RFC7761] as PIM message type Flag Bits, or simply Flag
   Bits, and it specifies that they are to be separately used on a per
   message type basis.  It creates a registry containing the per message
   type usage.  Documents defining a new message type MUST define the
   usage of the corresponding Flag Bits.



Venaas & Retana         Expires February 16, 2020               [Page 2]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


   This document Updates [RFC7761] and [RFC3973] by defining the use of
   the currently Reserved field in the PIM common header.  This document
   further updates [RFC7761] and [RFC3973], along with [RFC5015],
   [RFC5059], [RFC6754] and [RFC8364], by specifying the use of the
   currently Reserved bits for each PIM message.

   The currently defined PIM message types are in the range from 0 to
   15.  That type space is almost exhausted.  Message type 15 was
   reserved by [RFC6166] for type space extension.  In Section 5, this
   document specifies the use of the Flag Bits for message types 13, 14
   and 15 in order to extend the PIM type space.  This document
   Obsoletes [RFC6166].

2.  Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

3.  PIM header common format

   The common PIM header is defined in section 4.9 of [RFC7761].  This
   document updates the definition of the Reserved field and refers to
   that field as PIM message type Flag Bits, or simply Flag Bits.  The
   new common header format is as below.

       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |PIM Ver| Type  |   Flags Bits  |           Checksum            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        FIgure 1: New Common Header

   The Flags Bits field is defined in Section 4.  All other fields
   remain unchanged.

4.  Flag Bit definitions

   Unless otherwise specified, all the Flag Bits for each PIM type are
   Reserved [RFC8126].  They MUST be set to zero on transmission, and
   they MUST be ignored upon receipt.  The specification of a new PIM
   type, MUST indicate whether the bits should be treated differently.

   When defining Flag Bits it is helpful to have a well defined way of
   referring to a particular bit.  The most significant of the Flag



Venaas & Retana         Expires February 16, 2020               [Page 3]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


   Bits, the bit immediately following the type field is referred to as
   bit 7.  The least significant, the bit right in front of the checksum
   field is referred to as bit 0.  This is shown in the diagram below.

       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |PIM Ver| Type  |7 6 5 4 3 2 1 0|           Checksum            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            Figure 2: Flag Bits

4.1.  Flag Bits for Type 4 (Bootstrap)

   PIM message type 4 (Bootstrap) [RFC5059] defines Flag Bit 7 as No-
   Forward.  The usage of the bit is defined in that document.  The
   remaining Flag Bits are Reserved.

4.2.  Flag Bits for Type 10 (DF Election)

   PIM message type 10 (DF Election) [RFC5015] specifies that the four
   most significant Flag Bits (bits 4-7) are to be used as a sub-type.
   The remaining Flag Bits are Reserved.

4.3.  Flag Bits for Type 12 (PFM)

   PIM message type 12 (PFM) [RFC8364] defines Flag Bit 7 as No-Forward.
   The usage of the bit is defined in that document.  The remaining Flag
   Bits are Reserved.

4.4.  Flag Bits for Types 13, 14 and 15 (Type Space Extension)

   These types and the corresponding Flag Bits are defined in Section 5.

5.  PIM Type Space Extension

   This document defines types 13, 14 and 15, such that each of these
   types has 16 subtypes, providing a total of 48 subtypes available for
   future pim extensions.  This is achieved by defining a new SubType
   field (see Figure 3) using the four most significant Flag Bits (bits
   4-7).  The notation Type.SubType is used to reference these new
   extended types.  The remaining four Flag Bits (bits 0-3) are Reserved
   to be used by each extended type.  Documents defining a new extended
   message type MUST define the usage of the corresponding Flag Bits.







Venaas & Retana         Expires February 16, 2020               [Page 4]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


       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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |PIM Ver| Type  |SubType| Rsvd  |           Checksum            |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            Figure 3: Sub-Types

6.  Security Considerations

   This document clarifies the use of the Flag Bits in the common PIM
   header and it extends the PIM type space.  As such, there is no
   impact on security or changes to the considerations in [RFC7761] and
   [RFC3973].

7.  IANA considerations

   This document updates the PIM Message Types registry to indicate
   which Flag Bits are defined for use by each of the PIM message types.
   The Registry should now reference this document instead of [RFC6166].
   The Registration Policy remains IETF Review [RFC8126].

   The updated PIM Message Types registry is shown below.




























Venaas & Retana         Expires February 16, 2020               [Page 5]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


    Type       Flag Bits              Name                 Reference
   ---------------------------------------------------------------------
     0           N/A      Hello                       [RFC3973][RFC7761]
     0           0-7      Reserved                    [RFC3973][RFC7761]
     1           N/A      Register                    [RFC7761]
     1           0-7      Reserved                    [RFC7761]
     2           N/A      Register Stop               [RFC7761]
     2           0-7      Reserved                    [RFC7761]
     3           N/A      Join/Prune                  [RFC3973][RFC7761]
     3           0-7      Reserved                    [RFC3973][RFC7761]
     4           N/A      Bootstrap                   [RFC7761]
     4           0-6      Reserved                    [RFC5059][RFC7761]
     4           7        No-Forward                  [RFC5059]
     5           N/A      Assert                      [RFC3973][RFC7761]
     5           0-7      Reserved                    [RFC3973][RFC7761]
     6           N/A      Graft                       [RFC3973]
     6           0-7      Reserved                    [RFC3973]
     7           N/A      Graft-Ack                   [RFC3973]
     7           0-7      Reserved                    [RFC3973]
     8           N/A      Candidate RP Advertisement  [RFC7761]
     8           0-7      Reserved                    [RFC7761]
     9           N/A      State Refresh               [RFC3973]
     9           0-7      Reserved                    [RFC3973]
    10           N/A      DF Election                 [RFC5015]
    10           0-3      Reserved                    [RFC5015]
    10           4-7      Subtype                     [RFC5015]
    11           N/A      ECMP Redirect               [RFC6754]
    11           0-7      Reserved                    [RFC6754]
    12           N/A      PIM Flooding Mechanism      [RFC8364]
    12           0-6      Reserved                    [RFC8364]
    12           7        No-Forward                  [RFC8364]
    13.0-13.15   N/A      Unassigned                  [this document]
    14.0-14.15   N/A      Unassigned                  [this document]
    15.0-15.15   N/A      Unassigned                  [this document]

                Table 1: Updated PIM Message Types Registry

8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.






Venaas & Retana         Expires February 16, 2020               [Page 6]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


   [RFC7761]  Fenner, B., Handley, M., Holbrook, H., Kouvelas, I.,
              Parekh, R., Zhang, Z., and L. Zheng, "Protocol Independent
              Multicast - Sparse Mode (PIM-SM): Protocol Specification
              (Revised)", STD 83, RFC 7761, DOI 10.17487/RFC7761, March
              2016, <https://www.rfc-editor.org/info/rfc7761>.

   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
              Writing an IANA Considerations Section in RFCs", BCP 26,
              RFC 8126, DOI 10.17487/RFC8126, June 2017,
              <https://www.rfc-editor.org/info/rfc8126>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

8.2.  Informative References

   [RFC3973]  Adams, A., Nicholas, J., and W. Siadak, "Protocol
              Independent Multicast - Dense Mode (PIM-DM): Protocol
              Specification (Revised)", RFC 3973, DOI 10.17487/RFC3973,
              January 2005, <https://www.rfc-editor.org/info/rfc3973>.

   [RFC5015]  Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano,
              "Bidirectional Protocol Independent Multicast (BIDIR-
              PIM)", RFC 5015, DOI 10.17487/RFC5015, October 2007,
              <https://www.rfc-editor.org/info/rfc5015>.

   [RFC5059]  Bhaskar, N., Gall, A., Lingard, J., and S. Venaas,
              "Bootstrap Router (BSR) Mechanism for Protocol Independent
              Multicast (PIM)", RFC 5059, DOI 10.17487/RFC5059, January
              2008, <https://www.rfc-editor.org/info/rfc5059>.

   [RFC6166]  Venaas, S., "A Registry for PIM Message Types", RFC 6166,
              DOI 10.17487/RFC6166, April 2011,
              <https://www.rfc-editor.org/info/rfc6166>.

   [RFC6754]  Cai, Y., Wei, L., Ou, H., Arya, V., and S. Jethwani,
              "Protocol Independent Multicast Equal-Cost Multipath
              (ECMP) Redirect", RFC 6754, DOI 10.17487/RFC6754, October
              2012, <https://www.rfc-editor.org/info/rfc6754>.

   [RFC8364]  Wijnands, IJ., Venaas, S., Brig, M., and A. Jonasson, "PIM
              Flooding Mechanism (PFM) and Source Discovery (SD)",
              RFC 8364, DOI 10.17487/RFC8364, March 2018,
              <https://www.rfc-editor.org/info/rfc8364>.






Venaas & Retana         Expires February 16, 2020               [Page 7]


Internet-Draft    PIM Type Extention and Reserved Bits       August 2019


Authors' Addresses

   Stig Venaas
   Cisco Systems, Inc.
   Tasman Drive
   San Jose  CA 95134
   USA

   Email: stig@cisco.com


   Alvaro Retana
   Futurewei Technologies, Inc.
   2330 Central Expressway
   Santa Clara  CA 95050
   USA

   Email: alvaro.retana@futurewei.com

































Venaas & Retana         Expires February 16, 2020               [Page 8]