Network Working GroupInternet Engineering Task Force (IETF) V. MorenoInternet-DraftRequest for Comments: 8378 Cisco SystemsIntended status:Category: Experimental D. FarinacciExpires: September 9, 2018ISSN: 2070-1721 lispers.netMarch 8,April 2018 Signal-FreeLISPLocator/ID Separation Protocol (LISP) Multicastdraft-ietf-lisp-signal-free-multicast-09Abstract When multicast sources and receivers are active atLISPLocator/ID Separation Protocol (LISP) sites, the core network is required to use native multicast so packets can be delivered from sources to group members. When multicast is not available to connect the multicast sites together, a signal-free mechanism can be used to allow traffic to flow between sites. The mechanism within here uses unicast replication and encapsulation over the core network for thedata-planedata plane and uses the LISP mapping database system so encapsulators at the source LISP multicast site can find decapsulators at the receiver LISP multicast sites. Status of This Memo ThisInternet-Draftdocument issubmitted in full conformance with the provisions of BCP 78not an Internet Standards Track specification; it is published for examination, experimental implementation, andBCP 79. Internet-Drafts are working documentsevaluation. This document defines an Experimental Protocol for the Internet community. This document is a product of the Internet Engineering Task Force (IETF).Note that other groups may also distribute working documents as Internet-Drafts. The listIt represents the consensus ofcurrent Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draftthe IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documentsvalidapproved by the IESG are candidates fora maximumany level ofsix monthsInternet Standard; see Section 2 of RFC 7841. Information about the current status of this document, any errata, and how to provide feedback on it may beupdated, replaced, or obsoleted by other documentsobtained atany 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 September 9, 2018.https://www.rfc-editor.org/info/rfc8378. 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 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 . . . . . . . . . . . . . . . . . . . . . . . .32 2. Definition of Terms . . . . . . . . . . . . . . . . . . . . . 4 3. Requirements Language . . . . . . . . . . . . . . . . . . . . 5 4. Reference Model . . . . . . . . . . . . . . . . . . . . . . . 54.5. General Procedures . . . . . . . . . . . . . . . . . . . . . 74.1.5.1. General Receiver-Site Procedures . . . . . . . . . . . . 84.1.1.5.1.1. Multicast Receiver Detection . . . . . . . . . . . . 84.1.2.5.1.2. Receiver-Site Registration . . . . . . . . . . . . . 84.1.3.5.1.3. Consolidation of theReplication-ListReplication List . . . . . . . . 94.2.5.2. General Source-Site Procedures . . . . . . . . . . . . . 104.2.1.5.2.1. Multicast Tree Building at theSource-SiteSource Site . . . . . 104.2.2.5.2.2. Multicast Destination Resolution . . . . . . . . . . 104.3.5.3. General LISP Notification Procedures . . . . . . . . . . 115. Source Specific6. Source-Specific Multicast Trees . . . . . . . . . . . . . . . 115.1.6.1. Source Directly Connected to Source-ITRs . . . . . . . . 125.2.6.2. SourcenotNot Directly Connected to Source-ITRs . . . . . . 126. Multi-Homing7. Multihoming Considerations . . . . . . . . . . . . . . . . . 126.1.7.1. Multiple ITRs at aSource-SiteSource Site . . . . . . . . . . . . . 126.2.7.2. Multiple ETRs at aReceiver-SiteReceiver Site . . . . . . . . . . . . 136.3.7.3. Multiple RLOCs for an ETR at aReceiver-SiteReceiver Site . . . . . . 136.4.7.4. Multicast RLOCs for an ETR at aReceiver-SiteReceiver Site . . . . . . 147.8. PIMAny SourceAny-Source Multicast Trees . . . . . . . . . . . . . . . 148.9. Signal-Free Multicast for Replication Engineering . . . . . . 159.10. Security Considerations . . . . . . . . . . . . . . . . . . . 1810.11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 1911. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 1912. References . . . . . . . . . . . . . . . . . . . . . . . . . 19 12.1. Normative References . . . . . . . . . . . . . . . . . . 19 12.2. Informative References . . . . . . . . . . . . . . . . . 20Appendix A. Document Change Log . . . . . . .Acknowledgements . . . . . . . . .21 A.1. Changes to draft-ietf-lisp-signal-free-multicast-09. . .21 A.2. Changes to draft-ietf-lisp-signal-free-multicast-08. . .21 A.3. Changes to draft-ietf-lisp-signal-free-multicast-07. . .21 A.4. Changes to draft-ietf-lisp-signal-free-multicast-06. . .21 A.5. Changes to draft-ietf-lisp-signal-free-multicast-05. . . 21A.6. Changes to draft-ietf-lisp-signal-free-multicast-04 . . . 22 A.7. Changes to draft-ietf-lisp-signal-free-multicast-03 . . . 22 A.8. Changes to draft-ietf-lisp-signal-free-multicast-02 . . . 22 A.9. Changes to draft-ietf-lisp-signal-free-multicast-01 . . . 22 A.10. Changes to draft-ietf-lisp-signal-free-multicast-00 . . . 23 A.11. Changes to draft-farinacci-lisp-signal-free-multicast-04 23 A.12. Changes to draft-farinacci-lisp-signal-free-multicast-03 23 A.13. Changes to draft-farinacci-lisp-signal-free-multicast-02 23 A.14. Changes to draft-farinacci-lisp-signal-free-multicast-01 23 A.15. Changes to draft-farinacci-lisp-signal-free-multicast-00 23Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . .2321 1. Introduction When multicast sources and receivers are active at LISP sites, and the core network between the sites does not provide multicast support, a signal-free mechanism can be used to create an overlay that will allow multicast traffic to flow between sites and connect the multicast trees at the different sites. The signal-free mechanism proposed here does not extend PIM [RFC7761] over the overlay as proposed in [RFC6831], nor does the mechanism utilize direct signaling between the Receiver-ETRs and Sender-ITRs as described in[I-D.farinacci-lisp-mr-signaling].[LISP-MULTI-SIGNALING]. The signal-free mechanism proposed reduces the amount of signaling required between sites to a minimum and is centered around the registration ofReceiver-sitesreceiver sites for a particularmulticast-groupmulticast group ormulticast-channelmulticast channel with the LISPMapping System.mapping system. Registrations from the differentreceiver-sitesreceiver sites will be merged at theMapping Systemmapping system to assemble a multicast-replication-list inclusive of allRLOCsRouting Locators (RLOCs) that lead to receivers for a particularmulticast-groupmulticast group ormulticast-channel.multicast channel. Thereplication-listreplication list for each specificmulticast-multicast entry is maintained as a database mapping entry in the LISPMapping System.mapping system. When theITRIngress Tunnel Router (ITR) at thesource-sitesource site receives multicast traffic from sources at its site, the ITR can query the mapping system by issuing Map-Request messages for the (S,G) source and destination addresses in the packets received. TheMapping Systemmapping system will return the RLOCreplication-listreplication list to the ITR, which the ITR will cache as per standard LISP procedure. Since the core is assumed to not support multicast, the ITR will replicate the multicast traffic for each RLOC on thereplication-listreplication list and will unicast encapsulate the traffic to each RLOC. The combined function or replicating and encapsulating the traffic to the RLOCs in thereplication-listreplication list is referred to as"rep- encapsulation""rep-encapsulation" in this document. The document describesthe General Proceduresgeneral procedures (Section4)5) and information encoding that are required at theReceiver-sitesreceiver sites andSource-sitessource sites to achieve signal-free multicast interconnectivity. TheGeneral Proceduresgeneral procedures forMapping System Notificationsmapping system notifications to different sites are also described. A section dedicated to the specific case ofSSMSource- Specific Multicast (SSM) trees discusses the implications to theGeneral Proceduresgeneral procedures for SSM multicast trees over different topological scenarios. A section onASMAny-Source Multicast (ASM) support is included to identify the constraints that come along with supporting it using LISPSignal-Freesignal-free multicast. There is a section dedicated to ReplicationEngineering. AEngineering, which is a mechanism to reduce the impact of head-end replication. The mapping system, via LISPSignal-Freesignal-free mechanisms, can be used to build a layer ofRTRs. Requirements Language 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 [RFC2119].Re-encapsulating Tunnel Routers (RTRs). 2. Definition of TermsLISP relatedLISP-related terms, notably Map-Request, Map-Reply, Ingress Tunnel Router (ITR), Egress Tunnel Router (ETR), Map-Server(MS)(MS), andMap- ResolverMap-Resolver (MR) are defined in the LISP specification [RFC6830]. Extensions to the definitions in [RFC6830] for their application to multicast routing are documented in [RFC6831]. Terms defining interactions with the LISPMapping Systemmapping system are defined in [RFC6833]. The following terms are consistent with the definitions in [RFC6830] and [RFC6831]. The terms are specific cases of the general terms and areheredefined here to facilitate the descriptions and discussions within this particular document. Source: Multicast sourceend-point. Host originatingendpoint. The host that originates multicast packets. Receiver: Multicast group memberend-point. Hostendpoint. The host joins a multicast group as a receiver of multicast packets sent to the group.Receiver-site:Receiver site: LISP site where multicast receivers are located.Source-site:Source site: LISP site where multicast sources are located.RP-site:RP site: LISP site where an ASM PIM Rendezvous Point (RP) [RFC7761] is located. TheRP-siteRP site and theSource-sitesource site MAY be the same in some situations. Receiver-ETR: LISP decapsulatingxTRthe Tunnel Router (xTR) at theReceiver-site.receiver site. This is a multicast ETR. Source-ITR: LISP encapsulating xTR at theSource-site.source site. This is a multicast ITR. RP-xTR: LISP xTR at theRP-site.RP site. This is typically a multicast ITR.Replication-list:Replication list: Mapping-entry containing the list of RLOCs that have registeredReceiversreceivers for a particularmulticast-entry. Multicast-entry:multicast entry. Multicast entry: A tuple identifying a multicast tree.Multicast-Multicast entries are in the form of (S-prefix, G-prefix). Rep-encapsulation: The process of replicating and then encapsulating traffic to multiple RLOCs. Re-encapsulating Tunnel Router (RTR): An RTR is a router that implements the re-encapsulating tunnel function detailed in Section 8 of the main LISP specification [RFC6830]. A LISP RTR performs packet re-routing by chaining ETR and ITR functions, whereby it first removes the LISP header of an ingress packet and then prepends a new LISP header to an egress packet. RTR Level: An RTR level is encoded in aReplication-List-EntryReplication List Entry (RLE)LCAFLISP Canonical Address Format (LCAF) Type detailed in [RFC8060]. Each entry in the replication list contains an address of an xTR and a level value. Level values are used to create a replication hierarchy so that ITRs at source LISP sites replicate to the lowest (smaller value) level number RTRs ina RLE entry.an RLE. And then RTRs at a given level replicate to the next higher level of RTRs. The number of RTRs at each level are engineered to control the fan-out or replicationfactorfactor, so atradeofftrade-off between the width of the level versus the number of levels can be selected. ASM: Any-Source Multicast as defined in [RFC3569]and [RFC7761]where multicast distribution trees are built with a RendezvousPoint.Point [RFC7761]. SSM:Source SpecificSource-Specific Multicast as defined in [RFC3569] where multicast distribution trees are built and rooted at the multicast router(s) directly connected to the multicast source. 3. Requirements Language 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. 4. Reference Model The reference model that will be used for the discussion of theSignal-Freesignal-free multicast tree interconnection is illustrated in Figure 1. MS/MR +---+ | | +---+ +---+ +---+ +---+ +---+ Src-1 ----| R1|-----|ITR| | |ETR|------| R2|------ Rcv-2 +---+ +---+ | +---+ +---+ \ | / Source-site-1 \ | / Receiver-site-2 \ | / \ | / \ | / Core / \ / \ / \ / \ / \ +---+ +---+ Src-3 --------------|ITR| |ETR|----------------- Rcv-4 +---+ +---+ Source-site-3 Receiver-site-4 Figure 1: LISP Multicast Generic Reference Model Sites 1 and 3 areSource-sites.source sites. Source-site-3 presents aSourcesource (Src-3) that is directly connected to theSource-ITRSource-ITR. Source-site-1 presents aSourcesource (Src-1) that is one hop or more away from theSource-ITRSource-ITR. Receiver-site-2 and4-4 are receiver sites with not-directly connected and directly connectedReceiver end-points respectivelyreceiver endpoints, respectively. R1 is a multicast router in Source-site-1. R2 is a multicast router at theReceiver-site. Thereceiver site. Map-Servers andResolversMap-Resolvers are reachable in the RLOC space in theCore,core; only one is shown for illustration purposes, but these can be many or even part of aDistributed Mapping System,distributed mapping system, such as aDDT Tree.Delegated Database Tree (DDT). The procedures for interconnecting multicastTreestrees over an overlay can be broken down into three functional areas: o Receiver-site procedures o Source-site procedures o LISP notification procedures Thereceiver sitereceiver-site procedures will be common for most tree types and topologies. The procedures at the source site can vary depending on the type of trees being interconnected as well asbased onthe topological relation between sources and source-site xTRs. For ASM trees, a special case of theSource-sitesource site is theRP-siteRP site for which a variation of theSource-sitesource-site procedures MAY be necessary if ASM trees are to be supported in future specifications of LISPSignal-Freesignal-free multicast. The LISP notification procedures between sites are normalized for the different possible scenarios. Certain scenarios MAY benefit from a simplified notification mechanism or no notification requirement at all.4.5. General Procedures The interconnection of multicast trees across different LISP sites involves the following procedures to build the necessary multicast distribution trees across sites. 1. The presence of multicastReceiver end-pointsreceiver endpoints is detected by the Receiver-ETRs at theReceiver-sites.receiver sites. 2. Receiver-ETRs register their RLOCs as part of thereplication-replication list for themulticast-entrymulticast entry the detectedReceiversreceivers subscribe to. 3. TheMapping-systemmapping system merges allreceiver-ETRReceiver-ETR or delivery-group RLOCs to build a comprehensivereplication-listreplication list inclusive of allReceiver-sitesreceiver sites for eachmulticast-entry.multicast entry. 4. LISP Map-Notify messages MUST be sent to the Source-ITR informing of any changes in thereplication-list.replication list. 5.Multicast-treeMulticast tree building at theSource-sitesource site is initiated when the Source-ITR receives the LISPNotification.notification. Once the multicast distribution trees are built, the following forwarding procedures may take place: 1. TheSourcesource sends multicast packets to the multicast group destination address. 2. Multicast traffic follows the multicast tree built at theSource-source site and makes its way to the Source-ITRs. 3. The Source-ITR will issue amap-requestMap-Request to resolve thereplication-listreplication list for themulticast-entry.multicast entry. 4. TheMapping Systemmapping system responds to the Source-ITR with amap-replyMap-Reply containing thereplication-listreplication list for the multicast group requested. 5. The Source-ITR caches thereplication-listreplication list received in themap- replymap-reply for themulticast-entry.multicast entry. 6. Multicast traffic is rep-encapsulated. That is, the packet is replicated for each RLOC in thereplication-listreplication list and then encapsulated to each one.4.1.5.1. General Receiver-Site Procedures4.1.1.5.1.1. Multicast Receiver Detection When the Receiver-ETRs are directly connected to theReceivers (e.g.receivers (e.g., Receiver-site-4 in Figure 1), the Receiver-ETRs will receive IGMPReportsreports from theReceiversreceivers indicating which group theReceiversreceivers wish to subscribe to. Based on these IGMPReports,reports, thereceiver-ETRReceiver-ETR is made aware of the presence ofReceiversreceivers as well as which group they are interested in. When the Receiver-ETRs are several hops away from theReceivers (e.g.receivers (e.g., Receiver-site-2 in Figure 1), the Receiver-ETRs will receive PIM joinmessagesmessages, which will allow the Receiver-ETR to know that there are multicastReceiversreceivers at the site and also to learn which multicast group theReceiversreceivers are for.4.1.2.5.1.2. Receiver-Site Registration Once the Receiver-ETRs detect the presence ofReceiversreceivers at theReceiver-site,receiver site, the Receiver-ETRs MUST issue Map-Register messages to include the Receiver-ETR RLOCs in thereplication-listreplication list for themulticast-entrymulticast entry theReceiversreceivers joined. The Map-Register message MUST use themulticast-entrymulticast entry (Source, Group) tuple as itsEIDEndpoint ID (EID) record type with the Receiver-ETR RLOCs conforming the locator set. The EID in the Map-Register message MUST be encoded using the MulticastInformationInfo LCAFtypeType defined in [RFC8060]. The RLOC in the Map-Register message MUST be encoded using theReplication List Entry (RLE)RLE LCAFtypeType defined in [RFC8060] with the Level Value fields for all entries set to 128 (decimal). The encoding described above MUST be used consistently for Map- Register messages, entries in theMapping System, Map-reply messagesmapping system, Map-Reply messages, as well as the map-cache at the Source-ITRs. The Map-Register messages [RFC6830] sent by thereceiver-ETRsReceiver-ETRs MUST have the following bits set ashere specified:specified here: 1.merge-request-bitmerge-request bit set to 1. The Map-Register messages are sent with "Merge Semantics". The Map-Server will receive registrations from a multitude of Receiver-ETRs. The Map-Server will merge the registrations for common EIDs and maintain a consolidatedreplication-listreplication list for eachmulticast-entry.multicast entry. 2.want-map-notify-bitwant-map-notify bit (M) set to 0. This tells theMapping Systemmapping system that thereceiver-ETRReceiver-ETR does not expect to receive Map-Notify messages as it does not need to be notified of all changes to thereplication-list.replication list. 3.proxy-reply-bitproxy-reply bit (P) set to 1. The mergedreplication-listreplication list is kept in the Map-Servers. By setting the proxy-reply bit, thereceiver-ETRsReceiver-ETRs instruct theMapping-systemmapping system to proxy reply tomap- requestsMap- Requests issued for the multicast entries. Map-Register messages for a particularmulticast-entrymulticast entry MAY be sent for every receiver detected, even if previous receivers have been detected for the particularmulticast-entry.multicast entry. This allows thereplication-listreplication list to remain up to date. Receiver-ETRs MUST be configured to know what Map-Servers Map- Register messages are sent to. The configuration is likely to be associated with an S-prefix that multiple (S,G) entries match to and are more specific for. Therefore, the S-prefix determines the Map- Server set in the least number of configuration statements.4.1.3.5.1.3. Consolidation of theReplication-ListReplication List The Map-Server will receive registrations from a multitude of Receiver-ETRs. The Map-Server will merge the registrations for common EIDs and consolidate areplication-listreplication list for eachmulticast-multicast entry. When an ETR sends an RLE RLOC-record in a Map-Register and the RLEentryalready exists in the Map-Server'sRLE mergedRLE-merged list, theMap- ServerMap-Server will replace the single RLEentrywith the information from theMap-RegisterMap- Register RLOC-record. The Map-Server MUST NOT merge duplicate RLOCs in the consolidatedreplication-list. 4.2.replication list. 5.2. General Source-Site Procedures Source-ITRs MUST register the unicast EIDs of anySourcessources or Rendezvous Points that may be present on theSource-site.source site. In other words, it is assumed that theSourcessources and RPs are LISP EIDs. The registration of the unicast EIDs for theSourcessources or Rendezvous Points allows the Map-Server to know where to send Map-Notify messages to. Therefore, the Source-ITR MUST register the unicast S-prefix EID with thewant-map-notify-bitwant-map-notify bit set in order to receive Map-Notify messages whenever there is a change in thereplication-replication list.4.2.1.5.2.1. Multicast Tree Building at theSource-SiteSource Site When the source site receives the Map-Notify messages from the mapping system as described in Section4.3,5.3, it will initiate the process of building a multicast distribution tree that will allow the multicast packets from theSourcesource to reach the Source-ITR. The Source-ITR MUST issue a PIM join for themulticast-entrymulticast entry for which it received the Map-Notify message. The join will be issued in the direction of the source or in the direction of the RP for the SSM and ASMcasescases, respectively.4.2.2.5.2.2. Multicast Destination Resolution On reception of multicast packets, thesource-ITRSource-ITR obtains thereplication-listreplication list for the (S,G) addresses in the packets. In order to obtain thereplication-list,replication list, the Source-ITR MUST issue a Map-Request message in which the EID is the (S,G) multicasttupletuple, which is encoded using the Multicast Info LCAFtypeType defined in [RFC8060]. TheMapping Systemmapping system (most likely the Map-Server) willMap-replyMap-Reply with the mergedreplication-listreplication list maintained in theMapping System.mapping system. TheMap-replyMap-Reply message MUST follow the format defined in[RFC6830],[RFC6830]; its EID is encoded using the Multicast Info LCAFtypeType, and the corresponding RLOC-records are encoded using the RLE LCAFtype.Type. Both LCAFtypesTypes are defined in [RFC8060].4.3.5.3. General LISP Notification Procedures The Map-Server will issue LISP Map-Notify messages to inform theSource-sitesource site of the presence of receivers for a particular multicast group over the overlay. Updated Map-Notify messages SHOULD be issued every time a new registration is received from aReceiver-site.receiver site. This guarantees that thesource-sitessource sites are aware of any potential changes in the multicast- distribution-list membership. The Map-Notify messages carry (S,G) multicast EIDs encoded using the Multicast Info LCAFtypeType defined in [RFC8060]. Map-Notify messages will be sent by the Map-Server to the RLOCs with which the unicast S-prefix EID was registered. In the case when sources are discovered dynamically[I-D.ietf-lisp-eid-mobility],[LISP-EID-MOBILITY], xTRs MUST register sources explicitly with thewant-map-notify-bitwant-map-notify bit set. This is so the ITR in the site the source has moved to can get the most current replication list. When both theReceiver-sitesreceiver sites and theSource-sitessource sites register to the same Map-Server, the Map-Server has all the necessary information to send the Map-Notify messages to theSource-site.source site. When the Map-Servers are distributed (when using LISP-DDT [RFC8111]), theReceiver-sitesreceiver sites MAY register to one Map-Server while theSource-source site registers to a different Map-Server. In this scenario, the Map- Server for the receiver sites MUST resolve the unicast S-prefix EID across a distributed mapping transport system, per standard LISP lookupproceduresprocedures, and obtain the necessary information to send the Map-Notify messages to theSource-site.source site. The Map-Notify messages are sent with an authentication length of 0 as they would not be authenticated. When the Map-Servers are distributed, differentReceiver-sitesreceiver sites MAY register to different Map-Servers. However, this is not supported with the currently defined mechanisms.5. Source Specific6. Source-Specific Multicast Trees The interconnection ofSource Specific Multicast (SSM) TreesSSM trees across sites will follow theGeneral Receiver-site Proceduresgeneral receiver-site procedures described in Section4.15.1 on theReceiver-sites.receiver sites. TheSource-site Proceduressource-site procedures will vary depending on the topological location of theSourcesource within theSource-sitesource site as described inSection 5.1Sections 6.1 andSection 5.26.2 .5.1.6.1. Source Directly Connected to Source-ITRs When theSourcesource is directly connected to thesource-ITR,Source-ITR, it is not necessary to trigger signaling to build a local multicast tree at theSource-site.source site. Therefore Map-Notify messages are not required to initiate building of the multicast tree at theSource-site.source site. Map-Notify messages are still required to ensure that any changes to thereplication-listreplication list are communicated to theSource-sitesource site so that the map-cache at the Source-ITRs is kept updated.5.2.6.2. SourcenotNot Directly Connected to Source-ITRs TheGeneralgeneral LISPNotification Proceduresnotification procedures described in Section4.35.3 MUST be followed when theSourcesource is not directly connected to thesource-ITR.Source-ITR. On reception of Map-Notify messages, local multicast signaling MUST be initiated at theSource-sitesource site per theGeneral Source Site Proceduresgeneral source-site procedures forMulticast Treemulticast tree building described in Section4.2.1.5.2.1. In the SSM case, the IP address of theSourcesource isknownknown, and it is also registered with the LISP mapping system. Thus, the mapping system MAY resolve the mapping for theSourcesource address in order to sendMap- NotifyMap-Notify messages to the correctsource-ITR. 6. Multi-HomingSource-ITR. 7. Multihoming Considerations6.1.7.1. Multiple ITRs at aSource-SiteSource Site When multiple ITRs exist at a source multicast site, care MUST be taken that more than one ITR does not head-end replicatepackets elsepackets; otherwise, receiver multicast sites will receive duplicate packets. The following procedures will be used for each topologyscenarios:scenario: o When more than one ITR is directly connected to the source host, either the PIM DR or the IGMP querier (when PIM is not enabled on the ITRs) is responsible for packet replication. All other ITRs silently drop the packet. In the IGMP querier case, one or more ITRs on the source LAN MUST be IGMP querier candidates. Therefore, it is required that theyarebe configured as such. o When more than one ITR is multiple hops away from the source host and one of the ITRs is the PIM Rendezvous Point, then the PIM RP is responsible for packet replication. o When more than one ITR is multiple hops away from the source host and the PIM Rendezvous Point is not one of the ITRs, then one of the ITRs MUST join to the RP. When a Map-Notify is received from the Map-Server by an ITR, only the highest RLOC addressed ITR will join toward the PIM RP or toward the source.6.2.7.2. Multiple ETRs at aReceiver-SiteReceiver Site When multiple ETRs exist in a receiver multicastsite,site and eachcreateone creates a multicast join state,theyeachMap-Register theirMap-Registers its RLOCaddressesaddress to the mapping system. In this scenario, the replication happens on the overlay causing multiple ETR entry points to replicate to all receiversversusinstead of a single ETR entry point replicating to all receivers. If an ETR does not create join state, because it has not received PIM joins or IGMP reports, it will not Map-Register its RLOC addresses to the mapping system. The same procedures in Section4.15.1 are followed. When multiple ETRs exist on the same LAN as a receiver host, then the PIMDR, whenDR (when PIM isenabled,enabled) or the IGMP querier is responsible for sending a Map-Register for its RLOC. In the IGMP case, one or more ETRs on a LAN MUST be IGMP querier candidates. Therefore, it is required that they are configured as such.6.3.7.3. Multiple RLOCs for an ETR at aReceiver-SiteReceiver Site It MAY be desirable to have multiple underlay paths to an ETR for multicast packet delivery. This can be done by having multiple RLOCs assigned to an ETR and having the ETR send Map-Registers for all its RLOCs. By doing this, an ITR can choose a specific path based on underlay performance and/or RLOC reachability. It is recommended that an ETRsendssend a Map-Register with a singleRLOC-recordRLOC- record that uses theELPExplicit Locator Path (ELP) LCAFtypeType [RFC8060] that is nested inside the RLEentryLCAF. Forexampleexample, say ETR1 has assigned RLOC1 and RLOC2 for a LISP receiver site.AndAlso, there is ETR2 in another LISP receiversite,site that has RLOC3. The two receiver sites have the same (S,G) being joined. Here is how the RLOC-record is encoded on each ETR: ETR1: EID-record: (S,G) RLOC-record: RLE[ ELP{ (RLOC1,s,p), (RLOC2,s,p) } ] ETR2: EID-record: (S,G) RLOC-record: RLE[ RLOC3 ] And here is how the entry is merged and stored on the Map-Server since the Map-Registers have anRLE encodedRLE-encoded RLOC-record: MS: EID-record: (S,G) RLOC-record: RLE[ RLOC3, ELP{ (RLOC1,s,p), (RLOC2,s,p) } ] When the ITR receives a packet from a multicast source S for group G, it uses the mergedRLOC-record,RLOC-record returned from the Map-Server. The ITR replicates the packet to (RLOC3 and RLOC1) or (RLOC3 and RLOC2). Since it is required for the s-bit to be set for RLOC1, the ITR MUST replicate to RLOC1 if it is reachable. When the required p-bit is also set, the RLOC-reachability mechanisms from [RFC6830] are followed. If the ITR determines that RLOC1 is unreachable, it uses RLOC2, as long as RLOC2 is reachable.6.4.7.4. Multicast RLOCs for an ETR at aReceiver-SiteReceiver Site This specification is focused on underlays without multicast support, but it does not preclude the use of multicast RLOCs inRLE entries.RLEs. ETRs MAY register multicast EID entries using multicast RLOCs. In suchcasescases, the ETRs willgetbe joined to underlay multicast distribution trees by using IGMP as a multicast host using mechanisms in [RFC2236] and [RFC3376].7.8. PIMAny SourceAny-Source Multicast Trees LISP signal-free multicast can support ASMTreestrees in limited but acceptable topologies. It issuggestedsuggested, for the simplification of building ASM trees across the LISPoverlayoverlay, to have PIM-ASM run independently in each LISP site. What thismeans,means is that a PIMRendezvous Point (RP)RP is configured in each LISP site so PIM Register procedures and (*,G) state maintenance is contained within the LISP site. The following procedure will be used to support ASM in each LISP site: 1. In aReceiver-site,receiver site, the RP iscolocatedco-located with the ETR. RPs for different groups can be spread across each ETR, but is not required. 2. When (*,G) state is created in an ETR, the procedures in Section4.1.25.1.2 are followed. In addition, the ETR registers (S-prefix,G), where S-prefix is 0/0 (the respective unicast default route for the address-family) to the mapping system. 3. In aSource-site,source site, the RP iscolocatedco-located with the ITR. RPs for different groups can be spread across each ITR, but is not required. 4. When a multicast source sends a packet, a PIM Register message is delivered to theITRITR, and the procedures in Section4.25.2 are followed. 5. When the ITR sends a Map-Request for (S,G) and noReceiver-sitereceiver site has registered for (S,G), the mapping system will return the (0/0,G) entry to the ITR so it has a replication list of all the ETRs that have received (*,G) state. 6. The ITR stores thereplication-listreplication list in its map-cache for (S,G). It replicates packets to all ETRs in the list. 7. ETRs decapsulate packets and forward based on (*,G) state in their site. 8. When last-hop PIM routers join the newly discovered (S,G), the ETR will store the state and follow the procedures in Section4.1.2. 8.5.1.2. 9. Signal-Free Multicast for Replication Engineering The mechanisms in thisdraftspecification can be applied to theLISP Replication- Engineering [I-D.coras-lisp-re]"LISP Replication Engineering" [LISP-RE] design. Rather thanhavinghave the layered LISP-RE RTR hierarchy use signaling mechanisms, the RTRs can register their availability for multicast tree replication via the mapping database system. As stated in[I-D.coras-lisp-re],[LISP-RE], theRTR layeredRTR-layered hierarchy is used to avoid head-end replication in replicating nodes closest to a multicast source. Rather than have multicast ITRs replicate to each ETR in an RLEentryofaan (S,G) mapping database entry, it could replicate to one or morelayer-0layer 0 RTRs in the LISP-RE hierarchy. Thisdraft documentsdocument specifies how the RTR hierarchy is determined but notwhat arethe optimal layers of RTRs touse.be used. Methods for determining optimal paths or RTR topological closeness are out of scope forhisthis document. There are two formats an (S,G) mapping database entry could have. One format is a'complete-format''complete-format', and the other is a 'filtered- format'. A 'complete-format' entails an (S,G) entry having multipleRLOC records whichRLOC-records that contain both ETRs that have registered as well as the RTRs at the first level of the LISP-RE hierarchy for the ITR to replicate to. When using 'complete-format', the ITR has the ability to select if it replicates to RTRs or to the registered ETRs at the receiver sites. A 'filtered-format' (S,G) entry is one where the Map-Server returns the RLOC-records that it decides the ITR SHOULD use. So replication policy is shifted from the ITRs to the mapping system. The Map-Servers can also decide for a givenITR,ITR if it uses a different set of replication targets per (S,G) entry for which the ITR is replicating for. The procedure for the LISP-RE RTRs to make themselves available for replication can occur before or after any receivers join an (S,G) entry or any sources send for a particular (S,G) entry. Therefore, newly configured RTR state will be used to create new (S,G) state and will be inherited into existing (S,G) state. A set of RTRs can register themselves to the mapping system or athird-partythird party can do so on their behalf. When RTR registration occurs, it is done with an (S-prefix, G-prefix) entry so it can advertise its replication services for awide-rangewide range of source/group combinations. When a Map-Server receives (S,G) registrations from ETRs and (S-prefix, G-prefix) registrations from RTRs, it has the option of merging the RTR RLOC-records for each (S,G) that ismore-specificmore specific for the (S-prefix, G-prefix) entry orkeepkeeping them separate. When merging, a Map-Server is ready to return a 'complete-format'Map-Reply.Map- Reply. When keeping the entries separate, the Map-Server can decide what to include in a Map-Reply when a Map-Request is received. It can include a combination of RLOC-records from each entry or decide to use one or the other depending on policy configured. +---+ +----+ Src-1 --------------|ITR| |ETR1|---------------- Rcv-1 +---+ +----+ \ / Source-site-1 \ / Receiver-site-1 \ / \ / +----+ \ / +----+ |RTR1| \ / |RTR2| Level-0 +----+ \ / +----+ \ <^^^^^^^^^^^^^^> / \ < > / <Core-NetworkCore Network > < > <vvvvvvvvvvvvvv> / / \ \ / / \ \ +----+ / / \ \ +----+ |RTR3| / \ |RTR4| Level-1 +----+ / \ +----+ / \ / \ +----+ +----+ Rcv-2 --------------|ETR2| |ETR3|---------------- Rcv-3 +----+ +----+ Receiver-site-2 Receiver-site-3 Figure 2: LISP-RE Reference Model Here is a specific example, illustrated in Figure 2, of (S,G) and (S-prefix, G-prefix) mapping database entries when a source S is behind anITRITR, and there are receiver sites joined to (S,G) via ETR1, ETR2, and ETR3. And there exists a LISP-RE hierarchy of RTR1 and RTR2 at level-0 and RTR3 and RTR4 at level-1: EID-record: (S,G) RLOC-record: RLE: (ETR1, ETR2, ETR3), p1 EID-record: (S-prefix, G-prefix) RLOC-record: RLE: (RTR1(L0), RTR2(L0), RTR3(L1), RTR4(L1)), p1 The above entries are in the formof howin which they were registered and are stored in a Map-Server. When a Map-Server uses'complete-format', a'complete- format', the Map-Reply it originates has the mapping record encoded as: EID-record: (S,G) RLOC-record: RLE: (RTR1(L0), RTR3(L1)), p1 RLOC-record: RLE: (ETR1, ETR2, ETR3), p1 The above Map-Reply allows the ITR to decide if it replicates to the ETRs or if it SHOULD replicate only to level-0 RTR1. This decision is left to the ITR since both RLOC-records have priority 1. If the Map-Server wanted to force the ITR to replicate to RTR1, it would set the ETRs RLOC-record to a priority greater than 1. When a Map_server uses "filtered-format',athe Map-Reply it originates has the mapping record encoded as: EID-record: (S,G) RLOC-record: RLE: (RTR1(L0), RTR3(L1)), p1 An (S,G) entry can contain alternate RTRs. So rather than replicating to multiple RTRs, oneof aRTR set MAY be used based on the RTR reachability status. An ITR can test reachability status to anylayer-0layer 0 RTR usingRLOC-probingRLOC-probing, so it can choose one RTR from a set to replicate to. When this isdonedone, the RTRs are encoded in different RLOC-recordsversusinstead of together in one RLE RLOC-record. This moves the replication load off the ITRs at the source site to the RTRs inside the network infrastructure. This mechanism can also be used by level-n RTRs to level-n+1 RTRs. The following mapping would be encoded in a Map-Reply sent by a Map- Server and stored in the ITR. The ITR would use RTR1 until it went unreachable and then switch to use RTR2: EID-record: (S,G) RLOC-record: RTR1, p1 RLOC-record: RTR2, p29.10. Security Considerations[I-D.ietf-lisp-sec][LISP-SEC] defines a set of security mechanisms that provide origin authentication,integrityintegrity, and anti-replay protection to LISP'sEID-to-RLOCEID- to-RLOC mapping data conveyed via the mapping lookup process. LISP- SEC also enables verification of authorization on EID-prefix claims in Map-Reply messages. Additional security mechanisms to protect the LISP Map-Register messages are defined in [RFC6833]. The security of theMapping System Infrastructuremapping system infrastructure depends on the particular mapping database used.The [RFC8111] specification, asAs an example, [RFC8111] defines apublic-key basedpublic-key-based mechanism that provides origin authentication and integrity protection to the LISP DDT protocol. Map-Replies received by thesource-ITRSource-ITR can be signed (by the Map-Server)Server), so the ITR knows thereplication-listreplication list is from alegitlegitimate source. Data-plane encryption can be used when doing unicast rep- encapsulation as described in [RFC8061].10.11. IANA Considerations This document has no IANAimplicationsactions. 12. References 12.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>. [RFC2236] Fenner, W., "Internet Group Management Protocol, Version 2", RFC 2236, DOI 10.17487/RFC2236, November 1997, <https://www.rfc-editor.org/info/rfc2236>. [RFC3376] Cain, B., Deering, S., Kouvelas, I., Fenner, B., and A. Thyagarajan, "Internet Group Management Protocol, Version 3", RFC 3376, DOI 10.17487/RFC3376, October 2002, <https://www.rfc-editor.org/info/rfc3376>. [RFC3569] Bhattacharyya, S., Ed., "An Overview of Source-Specific Multicast (SSM)", RFC 3569, DOI 10.17487/RFC3569, July 2003, <https://www.rfc-editor.org/info/rfc3569>. [RFC6830] Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "The Locator/ID Separation Protocol (LISP)", RFC 6830, DOI 10.17487/RFC6830, January 2013, <https://www.rfc-editor.org/info/rfc6830>. [RFC6831] Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas, "The Locator/ID Separation Protocol (LISP) for Multicast Environments", RFC 6831, DOI 10.17487/RFC6831, January 2013, <https://www.rfc-editor.org/info/rfc6831>. [RFC6833] Fuller, V. and D. Farinacci, "Locator/ID Separation Protocol (LISP) Map-Server Interface", RFC 6833, DOI 10.17487/RFC6833, January 2013, <https://www.rfc-editor.org/info/rfc6833>. [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>. [RFC8060] Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical Address Format (LCAF)", RFC 8060, DOI 10.17487/RFC8060, February 2017, <https://www.rfc-editor.org/info/rfc8060>. [RFC8111] Fuller, V., Lewis, D., Ermagan, V., Jain, A., and A. Smirnov, "Locator/ID Separation Protocol Delegated Database Tree (LISP-DDT)", RFC 8111, DOI 10.17487/RFC8111, May 2017, <https://www.rfc-editor.org/info/rfc8111>. [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>. 12.2. Informative References[I-D.coras-lisp-re] Coras, F., Cabellos-Aparicio, A., Domingo-Pascual, J.,[LISP-EID-MOBILITY] Portoles-Comeras, M., Ashtaputre, V., Moreno, V., Maino, F., and D. Farinacci, "LISPReplication Engineering", draft-coras-lisp-re-08 (workL2/L3 EID Mobility Using a Unified Control Plane", Work inprogress),Progress, draft-ietf-lisp- eid-mobility-01, November2015. [I-D.farinacci-lisp-mr-signaling]2017. [LISP-MULTI-SIGNALING] Farinacci, D. and M. Napierala, "LISP Control-Plane Multicast Signaling",draft-farinacci-lisp-mr-signaling-06 (workWork inprogress),Progress, draft-farinacci- lisp-mr-signaling-06, February 2015.[I-D.ietf-lisp-eid-mobility] Portoles-Comeras, M., Ashtaputre, V., Moreno, V.,[LISP-RE] Coras, F., Cabellos-Aparicio, A., Domingo-Pascual, J., Maino, F., and D. Farinacci, "LISPL2/L3 EID Mobility Using a Unified Control Plane", draft-ietf-lisp-eid-mobility-01 (workReplication Engineering", Work inprogress),Progress, draft-coras-lisp-re-08, November2017. [I-D.ietf-lisp-sec]2015. [LISP-SEC] Maino, F., Ermagan, V., Cabellos-Aparicio, A., and D. Saucez, "LISP-Security (LISP-SEC)",draft-ietf-lisp-sec-14 (workWork inprogress),Progress, draft-ietf-lisp-sec-14, October 2017. [RFC8061] Farinacci, D. and B. Weis, "Locator/ID Separation Protocol (LISP) Data-Plane Confidentiality", RFC 8061, DOI 10.17487/RFC8061, February 2017, <https://www.rfc-editor.org/info/rfc8061>.11.Acknowledgements The authors want to thank Greg Shepherd, JoelHalpernHalpern, and Sharon Barkai for their insightful contribution to shaping the ideas in this document. A special thanks to Luigi Iannone, LISP WG co-chair, for shepherding this working group document. Thanks also goes to Jimmy Kyriannis, Paul Vinciguerra, Florin Coras, and Yan Filyurin for testing an implementation of thisdraft.document. Authors' Addresses Victor Moreno Cisco Systems 170 Tasman Drive San Jose, California 95134USAUnited States of America Email: vimoreno@cisco.com Dino Farinacci lispers.net San Jose, CA 95120USAUnited States of America Email: farinacci@gmail.com