Network Working Group V. Kamath Internet-Draft VMware Intended status: Standards Track R. Chokkanathapuram Sundaram Expires: April 22, 2019 Cisco Systems, Inc. October 19, 2018 PIM NULL Register packing draft-ietf-pim-null-register-packing-00 Abstract In PIM-SM networks PIM registers are sent from the first hop router to the RP (Rendezvous Point) to signal the presence of Multicast source in the network.There are periodic PIM Null registers sent from first hop router to the RP to keep the state alive at the RP as long as the source is active. The PIM null register packet carry information about a single Multicast source and group. This document defines a standard to send multiple Multicast source and group information in a single pim null register packet and the interoperability between the PIM routers which do not understand the packet format with multiple Multicast source and group details. 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 April 22, 2019. Copyright Notice Copyright (c) 2018 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 Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 1] Internet-Draft PIM NULL Register packing October 2018 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 1.1. Conventions Used in This Document . . . . . . . . . . . . 2 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 2. PIM Register Stop format with capability option . . . . . . . 3 3. New PIM Null register format . . . . . . . . . . . . . . . . 4 4. New Packed PIM Register Stop format . . . . . . . . . . . . . 5 5. Protocol operation . . . . . . . . . . . . . . . . . . . . . 6 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 8.2. Informative References . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 1. Introduction PIM Null registers are sent by First hop routers periodically for Multicast streams to keep the states active on the RP as long as the Multicast source is alive. As the number of multicast sources increase, the number of PIM null register packets that are sent increases at a given time. This results in more PIM packet processing at RP and FHR. The control plane policing(COPP), monitors the packets that gets processed by the control plane. Due to the high rate at which NULL registers are received at the RP, this can lead to COPP drops of Multicast PIM null register packets. This draft proposes a method to efficiently pack multiple PIM null registers and register stop into a single message as these packets anyway don't contain data. The draft also proposes interoperability with the routers that do not understand the new packet format. 1.1. Conventions Used in This Document 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 RFC 2119 [RFC2119]. Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 2] Internet-Draft PIM NULL Register packing October 2018 1.2. Terminology RP: Rendezvous Point RPF: Reverse Path Forwarding SPT: Shortest Path Tree FHR: First Hop Router, directly connected to the source LHR: Last Hop Router, directly connected to the receiver 2. PIM Register Stop format with capability option A router (FHR) can decide to pack multiple NULL registers based on the capability received from the RP as part of Register Stop. This ensures compatibility with routers that don't support processing of the new format. The capability information can be indicated by the RP via the PIM register stop message sent to the FHR. Thus a FHR will switch to the new format only when it learns RP is capable of handling the packed null register messages. Conversely, a FHR that doesn't support the new format can continue generating the PIM NULL register the usual way since they don't check for the capability information present in the Register stop message. To exchange the capability information in the Register Stop message, the "reserved" field can be used to indicate this capability in those register stop messages. One bit of the reserved field is used to indicate the "packing" capability (P bit). The rest of the bits in the "Reserved" field will be retained for future use. Figure 2: PIM Register Stop packet with capability option 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 |P| Reserved | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Group Address (Encoded-Group format) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address (Encoded-Unicast format) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ PIM Version, Reserved, Type, Checksum, Group Address, Source Address Same as RFC 7761 (Section 4.9.4) P Capability bit used to indicate support for Packed NULL Register Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 3] Internet-Draft PIM NULL Register packing October 2018 3. New PIM Null register format PIM null-register packet format is enhanced to include the count of the number of null-register records and pack multiple null-register records in the same packet. Currently the data part in the NULL register packet is a dummy IPv4 header which carries the source and group information and the other fields are unused. To indicate that the null register is in a new format the "Type" field in the PIM register packet format is used. To indicate the number of null register records a new field "record count" is introduced which can hold 8 bit value (max 255 records can be packed) which can be based on MTU. Even though null registers are supposed to be sent exactly every 60s, its fine to send a null register earlier, so as to merge the registers. When one register is sent, multiple registers can be packed together which are close enough in time. Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 4] Internet-Draft PIM NULL Register packing October 2018 Figure 1: New PIM NULL Register packet format 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 | Reserved | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Record count | Reserved2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Group Address[1] (Encoded-Group format) | | Source Address[1] (Encoded-Unicast format) | . . . . . . . . . Group Address[N] . | Source Address[N] | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ PIM Version, Reserved, Checksum Same as RFC 7761 (Section 4.9.3) Type The new packed NULL Register type value TBD Record count The count of the number of packed NULL register records. A record consists of Group and Source Address Group Address IP address of the Multicast Group Source Address IP Address of the Multicast Source 4. New Packed PIM Register Stop format The PIM register stop can be optimized to include multiple multicast group and source information. The Record count can indicate the number of S,G records that are packed and the Type value is used to indicate the new format. Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 5] Internet-Draft PIM NULL Register packing October 2018 Figure 3: New PIM Packed Register Stop packet formats 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 | Reserved | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Record count | Reserved2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Group Address[1] (Encoded-Group format) | | Source Address[1] (Encoded-Unicast format) | . . . . . . . . . Group Address[N] . | Source Address[N] | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ PIM Version, Reserved, Checksum Same as RFC 7761 (Section 4.9.3) Type The new packed Register Stop type value TBD Record count The count of the number of packed register stop records. A record consists of Group and Source Address Group Address IP address of the Multicast Group Source Address IP Address of the Multicast Source 5. Protocol operation Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 6] Internet-Draft PIM NULL Register packing October 2018 The following combinations exist - FHR and RP both support the new PIM Register formats - a. FHR sends the PIM register towards the RP when a new source is detected b. RP sends a modified register stop towards the FHR that includes capability information by setting the P bit (Figure 2) c. Based on the receipt of the modified Register Stop, FHR will start packing of NULL registers using the new packed register format (Figure 1) d. RP processes the NULL registers and can generate Register Stop messages by packing multiple S,Gs towards the same FHR (Figure 3) FHR supports but RP doesn't support new PIM Register formats- a. FHR sends the PIM register towards the RP b. RP sends a normal register stop without any capability information c. FHR then sends NULL registers in the old format RP supports but FHR doesn't support the new PIM Register formats- a. FHR sends the PIM register towards the RP b. RP sends a modified register stop towards the FHR that includes capability information c. Since FHR doesn't support the new format, it sends NULL registers in the old format 6. IANA Considerations This document requires the assignment of 2 new PIM message types for the packed pim register and pim register stop. 7. Acknowledgments The authors would like to thank Stig Venaas and Umesh Dudani for contributing to the original idea and also their very helpful comments on the draft. 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, . [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, . Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 7] Internet-Draft PIM NULL Register packing October 2018 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, . Authors' Addresses Vikas Ramesh Kamath VMware 3401 Hillview Ave Palo Alto CA 94304 USA Email: vkamath@vmware.com Ramakrishnan Chokkanathapuram Sundaram Cisco Systems, Inc. Tasman Drive San Jose CA 95134 USA Email: ramaksun@cisco.com Kamath & ChokkanathapuramExpiresaApril 22, 2019 [Page 8]