idnits 2.17.1 draft-farinacci-lisp-decent-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 2 instances of too long lines in the document, the longest one being 5 characters in excess of 72. == There are 9 instances of lines with non-RFC2606-compliant FQDNs in the document. == There are 19 instances of lines with multicast IPv4 addresses in the document. If these are generic example addresses, they should be changed to use the 233.252.0.x range defined in RFC 5771 ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 270: '... An ITR SHOULD lookup its mapping sy...' RFC 2119 keyword, line 417: '... The Hash Mask MUST include the stri...' RFC 2119 keyword, line 429: '...t messages, xTRs MAY round robin EID l...' RFC 2119 keyword, line 472: '... However, an implementation SHOULD do...' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (September 13, 2020) is 1321 days in the past. Is this intentional? Checking references for intended status: Experimental ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 6830 (Obsoleted by RFC 9300, RFC 9301) ** Obsolete normative reference: RFC 6833 (Obsoleted by RFC 9301) == Outdated reference: A later version (-12) exists of draft-ietf-lisp-ecdsa-auth-03 == Outdated reference: A later version (-15) exists of draft-ietf-lisp-pubsub-06 == Outdated reference: A later version (-31) exists of draft-ietf-lisp-rfc6833bis-28 == Outdated reference: A later version (-29) exists of draft-ietf-lisp-sec-21 Summary: 4 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group D. Farinacci 3 Internet-Draft lispers.net 4 Intended status: Experimental C. Cantrell 5 Expires: March 17, 2021 Nexus 6 September 13, 2020 8 A Decent LISP Mapping System (LISP-Decent) 9 draft-farinacci-lisp-decent-06 11 Abstract 13 This draft describes how the LISP mapping system designed to be 14 distributed for scale can also be decentralized for management and 15 trust. 17 Status of This Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at https://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on March 17, 2021. 34 Copyright Notice 36 Copyright (c) 2020 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (https://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 52 2. Definition of Terms . . . . . . . . . . . . . . . . . . . . . 3 53 3. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 4 54 4. Push-Based Mapping System . . . . . . . . . . . . . . . . . . 5 55 4.1. Components of a Pushed-Based LISP-Decent xTR . . . . . . 5 56 4.2. No LISP Protocol Changes . . . . . . . . . . . . . . . . 6 57 4.3. Configuration and Authentication . . . . . . . . . . . . 7 58 4.4. Core Seed-Group . . . . . . . . . . . . . . . . . . . . . 7 59 5. Pull-Based Mapping System . . . . . . . . . . . . . . . . . . 9 60 5.1. Components of a Pulled-Based LISP-Decent xTR . . . . . . 9 61 5.2. Deployment Example . . . . . . . . . . . . . . . . . . . 10 62 5.3. Management Considerations . . . . . . . . . . . . . . . . 11 63 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 64 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 65 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 66 8.1. Normative References . . . . . . . . . . . . . . . . . . 12 67 8.2. Informative References . . . . . . . . . . . . . . . . . 13 68 Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 13 69 Appendix B. Document Change Log . . . . . . . . . . . . . . . . 14 70 B.1. Changes to draft-farinacci-lisp-decent-06 . . . . . . . . 14 71 B.2. Changes to draft-farinacci-lisp-decent-05 . . . . . . . . 14 72 B.3. Changes to draft-farinacci-lisp-decent-04 . . . . . . . . 14 73 B.4. Changes to draft-farinacci-lisp-decent-03 . . . . . . . . 14 74 B.5. Changes to draft-farinacci-lisp-decent-02 . . . . . . . . 14 75 B.6. Changes to draft-farinacci-lisp-decent-01 . . . . . . . . 15 76 B.7. Changes to draft-farinacci-lisp-decent-00 . . . . . . . . 15 77 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 79 1. Introduction 81 The LISP architecture and protocols [RFC6830] introduces two new 82 numbering spaces, Endpoint Identifiers (EIDs) and Routing Locators 83 (RLOCs) which is intended to provide overlay network functionality. 84 To map from EID to a set or RLOCs, a control-plane mapping system are 85 used [RFC6836] [RFC8111]. These mapping systems are distributed in 86 nature in their deployment for scalability but are centrally managed 87 by a third- party entity, namely a Mapping System Provider (MSP). 88 The entities that use the mapping system, such as data-plane xTRs, 89 depend on and trust the MSP. They do not participate in the mapping 90 system other than to register and retrieve information to/from the 91 mapping system [RFC6833]. 93 This document introduces a Decentralized Mapping System (DMS) so the 94 xTRs can participate in the mapping system as well as use it. They 95 can trust each other rather than rely on third-party infrastructure. 97 The xTRs act as Map-Servers to maintain distributed state for scale 98 and reducing attack surface. 100 2. Definition of Terms 102 Mapping System Provider (MSP): is an infrastructure service that 103 deploys LISP Map-Resolvers and Map-Servers [RFC6833] and possibly 104 ALT-nodes [RFC6836] or DDT-nodes [RFC8111]. The MSP can be 105 managed by a separate organization other than the one that manages 106 xTRs. This model provides a business separation between who 107 manages and is responsible for the control-plane versus who 108 manages the data-plane overlay service. 110 Decentralized Mapping System (DMS): is a mapping system entity that 111 is not third-party to the xTR nodes that use it. The xTRs 112 themselves are part of the mapping system. The state of the 113 mapping system is fully distributed, decentralized, and the trust 114 relies on the xTRs that use and participate in their own mapping 115 system. 117 Pull-Based Mapping System: the mapping system is pull-based meaning 118 that xTRs will lookup and register mappings by algorithmic 119 transformation to locate which Map-Resolvers and Map-Servers are 120 used. It is required that the lookup and registration uses a 121 consistent algorithmic transformation function. Map-Registers are 122 pushed to specific Map-Servers. Map-Requests are external lookups 123 to Map-Resolvers on xTRs that do not participate in the mapping 124 system and internal lookups when they do. 126 Modulus Value: this value is used in the Pull-Based Mapping System. 127 It defines the number of map-server sets used for the mapping 128 system. The modulus value is used to produce a Name Index used 129 for a DNS lookup. 131 Name Index: this index value is used in the Pull-Based 132 Mapping System. For a mapping system that is configured with a 133 map-server set of DNS names in the form of .domain.com, the 134 name index is prepended to to form the lookup name 135 ..domain.com. If the Modulus Value is 8, then the 136 name indexes are 0 through 7. 138 Hash Mask: The Hash Mask is used in the Pull-Based Mapping System. 139 It is a mask value with 1 bits left justified. The mask is used 140 to select what high-order bits of an EID-prefix is used in the 141 hash function. 143 Push-Based Mapping System: the mapping system is push-based meaning 144 that xTRs will push registrations via IP multicast to a group of 145 Map-Servers and do local lookups acting as their own Map- 146 Resolvers. 148 Replication List Entry (RLE): is an RLOC-record format that contains 149 a list of RLOCs that an ITR replicates multicast packets on a 150 multicast overlay. The RLE format is specified in [RFC8060]. 151 RLEs are used with the Pushed-Based mapping system. 153 Group Address EID: is an EID-record format that contains IPv4 154 (0.0.0.0/0, G) or IPv6 (0::/0, G) state. This state is encoded as 155 a Multicast Info Type LCAF specified in [RFC8060]. Members of a 156 seed-group send Map-Registers for (0.0.0.0/0, G) or (0::/0, G) 157 with an RLOC-record that RLE encodes its RLOC address. Details 158 are specified in [RFC8378]. 160 Seed-Group: is a set of Map-Servers joined to a multicast group for 161 the Push-Based Mapping system or are mapped by DNS names in a 162 Pull-Based Mapping System. A core seed-group is used to bootstrap 163 a set of LISP-Decent xTRs so they can learn about each other and 164 use each other's mapping system service. A seed-group can be 165 pull-based to bootstrap a push-based mapping system. That is, a 166 set of DNS mapped map-servers can be used to join the mapping 167 system's IP multicast group. 169 3. Overview 171 The clients of the Decentralized Mapping System (DMS) are also the 172 providers of mapping state. Clients are typically ETRs that Map- 173 Register EID-to-RLOC mapping state to the mapping database system. 174 ITRs are clients in that they send Map-Requests to the mapping 175 database system to obtain EID-to-RLOC mappings that are cached for 176 data-plane use. When xTRs participate in a DMS, they are also acting 177 as Map-Resolvers and Map-Servers using the protocol machinery defined 178 in LISP control-plane specifications [RFC6833], [I-D.ietf-lisp-sec], 179 and [I-D.ietf-lisp-ecdsa-auth]. The xTRs are not required to run the 180 database mapping transport system protocols specified in [RFC6836] or 181 [RFC8111]. 183 This document will describe two decentralized and distributed mapping 184 system mechanisms. A Push-Based Mapping System uses IP multicast so 185 xTRs can find each other by locally joining an IP multicast group. A 186 Pull-Based Mapping System uses DNS with an algorithmic transformation 187 function so xTRs can find each other. 189 4. Push-Based Mapping System 191 The xTRs are organized in a mapping-system group. The group is 192 identified by an IPv4 or IPv6 multicast group address or using a 193 pull-based approach in described in Section 5. When using multicast, 194 the xTRs join the same multicast group and receive LISP control-plane 195 messages addressed to the group. Messages sent to the multicast 196 group are distributed when the underlay network supports IP multicast 197 [RFC6831] or is achieved with the overlay multicast mechanism 198 described in [RFC8378]. When overlay multicast is used and LISP Map- 199 Register messages are sent to the group, they are LISP data 200 encapsulated with a instance-ID set to 0xffffff in the LISP header. 201 The inner header of the encapsulated packet has the destination 202 address set to the multicast group address and the outer header that 203 is prepended has the destination address set to the RLOC of mapping 204 system member. The members of the mapping system group are kept in 205 the LISP data-plane map-cache so packets for the group can be 206 replicated to each member RLOC. 208 All xTRs in a mapping system group will store the same registered 209 mappings and maintain the state as Map-Servers normally do. The 210 members are not only receivers of the multicast group but also send 211 packets to the group. 213 4.1. Components of a Pushed-Based LISP-Decent xTR 215 When an xTR is configured to be a LISP-Decent xTR (or PxTR 216 [RFC6832]), it runs the ITR, ETR, Map-Resolver, and Map-Server LISP 217 network functions. 219 The following diagram shows 3 LISP-Decent xTRs joined to mapping 220 system group 224.1.1.1. When the ETR function of xTR1 originates a 221 Map-Register, it is sent to all xTRs (including itself) synchronizing 222 all 3 Map-Servers in xTR1, xTR2, and xTR3. The ITR function can 223 populate its map-cache by sending a Map-Request locally to its Map- 224 Resolver so it can replicate packets to each RLOC for EID 224.1.1.1. 226 xTR1 227 Map-Request +--------------------+ 228 (always local) | +-----+ +-----+ | 229 +---------------| ITR | | ETR |-------------+ 230 | | +-----+ +-----+ | | 231 | | | | Map-Register to EID 232 | | +-------+ | | 224.1.1.1 encapsulated to 233 +------------------>| MR/MS |<---------------+ RLOCs xTR1, xTR2, and xTR3 234 | +-------+ | | 235 +--------------------+ | 236 | 237 +--------------------+------------+ 238 | | 239 | | 240 +----------v---------+ +----------v---------+ 241 | +--------+ | | +--------+ | 242 | | MR/MS | | | | MR/MS | | 243 | +--------+ | | +--------+ | 244 | +-----+ +-----+ | | +-----+ +-----+ | 245 | | ITR | | ETR | | | | ITR | | ETR | | 246 | +-----+ +-----+ | | +-----+ +-----+ | 247 +--------------------+ +--------------------+ 248 xTR2 xTR3 250 Note if any external xTR would like to use a Map-Resolver from the 251 mapping system group, it only needs to have one of the LISP-Decent 252 Map-Resolvers configured. By doing a looking to this Map-Resolver 253 for EID 224.1.1,1, the external xTR could get the complete list of 254 members for the mapping system group. 256 For future study, an external xTR could multicast the Map-Request to 257 224.1.1.1 and either one of the LISP-Decent Map-Resolvers would 258 return a Map-Reply or the external xTR is prepared to receive 259 multiple Map-Replies. 261 4.2. No LISP Protocol Changes 263 There are no LISP protocol changes required to support the push-based 264 LISP-Decent set of procedures. However, an implementation that sends 265 Map-Register messages to a multicast group versus a specific Map- 266 Server unicast address must change to call the data-plane component 267 so the ITR functionality in the node can encapsulate the Map-Register 268 as a unicast packet to each member of the mapping system group. 270 An ITR SHOULD lookup its mapping system group address periodically to 271 determine if the membership has changed. The ITR can also use the 272 pubsub capability documented in [I-D.ietf-lisp-pubsub] to be notified 273 when a new member joins or leaves the multicast group. 275 4.3. Configuration and Authentication 277 When xTRs are joined to a multicast group, they must have their site 278 registration configuration consistent. Any policy or authentication 279 key material must be configured correctly and consistently among all 280 members. When [I-D.ietf-lisp-ecdsa-auth] is used to sign Map- 281 Register messages, public-keys can be registered to the mapping 282 system group using the site authentication key mentioned above or 283 using a different authentication key from the one used for 284 registering EID records. 286 4.4. Core Seed-Group 288 A core seed-group can be discovered using a multicast group in a 289 push-based system or a Map-Server set of DNS names in a pull-based 290 system (see Section 5 for details). 292 When using multicast for the mapping system group, a core seed-group 293 multicast group address can be preconfigured to bootstrap the 294 decentralized mapping system. The group address (or DNS name that 295 maps to a group address) can be explicitly configured in a few xTRs 296 to start building up the registrations. Then as other xTRs come 297 online, they can add themselves to the core seed-group by joining the 298 seed-group multicast group. 300 Alternatively or additionally, new xTRs can join a new mapping system 301 multicast group to form another layer of a decentralized mapping 302 system. The group address and members of this new layer seed-group 303 would be registered to the core seed-group address and stored in the 304 core seed-group mapping system. Note each mapping system layer could 305 have a specific function or a specific circle of trust. 307 This multi-layer mapping system can be illustrated: 309 __________ --------- 310 / core \ 224.2.2.2 / layer-1 \ 311 | seed-group | --------> | I | 312 | 224.1.1.1 | | / \ | 313 \__________/ | J---K | 314 | \_________/ 315 | 224.3.3.3 316 | 317 v 318 --------- 319 / layer-2 \ 320 | X | 321 | / \ | 322 | Y---Z | 323 \_________/ 325 Configured in xTRs A, B, and C (they make up the core seed-group): 326 224.1.1.1 -> RLE: A, B, C 328 core seed-group DMS, mapping state in A, B, and C: 329 224.2.2.2 -> RLE: I, J, K 330 224.3.3.3 -> RLE: X, Y, Z 332 layer-1 seed-group DMS (inter-continental), mapping state in I, J, K: 333 EID1 -> RLOCs: i(1), j(2) 334 ... 335 EIDn -> RLOCs: i(n), j(n) 337 layer-2 seed-group DMS (intra-continental), mapping sate in X, Y, Z:: 338 EIDa -> RLOCs: x(1), y(2) 339 ... 340 EIDz -> RLOCs: x(n), y(n) 342 The core seed-group multicast address 224.1.1.1 is configured in xTRs 343 A, B and C so when each of them send Map-Register messages, they 344 would all be able to maintain synchronized mapping state. Any EID 345 can be registered to this DMS but in this example, seed-group 346 multicast group EIDs are being registered only to find other mapping 347 system groups. 349 For example, lets say that xTR I boots up and it wants to find its 350 other peers in its mapping system group 224.2.2.2. Group address 351 224.2.2.2 is configured so xTR I knows what group to join for its 352 mapping system group. But xTR I needs a mapping system to register 353 to, so the core seed-group is used and available to receive Map- 354 Registers. The other xTRs J and K in the mapping system group do the 355 same so when any of I, J or K needs to register EIDs, they can now 356 send their Map-Register messages to group 224.2.2.2. Examples of 357 EIDs being register are EID1 through EIDn shown above. 359 When Map-Registers are sent to group 224.2.2.2, they are encapsulated 360 by the LISP data-plane by looking up EID 224.2.2.2 in the core seed- 361 group mapping system. For the map-cache entry to be populated for 362 224.2.2.2, the data-plane must send a Map-Request so the RLOCs I, J, 363 and K are cached for replication. To use the core seed-group mapping 364 system, the data-plane must know of at least one of the RLOCs A, B, 365 and/or C. 367 5. Pull-Based Mapping System 369 5.1. Components of a Pulled-Based LISP-Decent xTR 371 When an xTR is configured to be a LISP-Decent xTR (or PxTR 372 [RFC6832]), it runs the ITR, ETR, Map-Resolver, and Map-Server LISP 373 network functions. 375 Unlike the Push-Based Mapping System, the xTRs do not need to be 376 organized by joining a multicast group. In a Pull-Based Mappig 377 System, a hash function over an EID is used to identify which xTR is 378 used as the Map-Resolver and Map-Server. The Domain Name System 379 (DNS) [RFC1034] [RFC1035] is used as a resource discovery mechanism. 381 The RLOC addresses of the xTRs will be A and AAAA records for DNS 382 names that map algorithmically from the hash of the EID. A SHA-256 383 hash function [RFC6234] over the following ASCII formatted EID string 384 is used: 386 []/ 387 []/-/ 389 Where is the instance-ID and is the EID of any EID-type 390 defined in [RFC8060]. And then the Modulus Value is used to 391 produce the Name Index used to build the DNS lookup name: 393 eid = "[]/" 394 index = hash.sha_256(eid) MOD mv 396 The Hash Mask is used to select what bits are used in the SHA-256 397 hash function. This is required to support longest match lookups in 398 the mapping system. The same map-server set needs to be selected 399 when looking up a more-specific EID found in the Map-Request message 400 with one that could match a less-specific EID-prefix registered and 401 found in the Map-Register message. For example, if an EID-prefix 403 [0]240.0.1.0/24 is registered to the mapping system and EID 404 [0]240.0.1.1/32 is looked up to match the registered prefix, a Hash 405 Mask of 8 bytes can be used to AND both the /32 or /24 entries to 406 produce the same hash string bits of "[0]240.0". 408 For (*,G) and (S,G) multicast entries in the mapping system, the hash 409 strings are: 411 sg-eid = "[]/-/" 412 index = hash.sha_256(sg-eid) MOD mv 414 starg-eid = "[]/-0.0.0.0/0" 415 index = hash.sha_256(starg-eid) MOD mv 417 The Hash Mask MUST include the string "[]" and not string 418 . So when looking up [0](2.2.2.2, 224.1.1.1) that will match 419 a (*, 224.1.1.1/32), the hash string produced with a Hash Mask of 12 420 bytes is "[0]224.1.1.1". 422 When the is computed from a unicast or multicast EID, the DNS 423 lookup name becomes: 425 .map-server.domain.com 427 When an xTR does a DNS lookup on the lookup name, it will send Map- 428 Register messages to all A and AAAA records for EID registrations. 429 For Map-Request messages, xTRs MAY round robin EID lookup requests 430 among the A and AAAA records. 432 5.2. Deployment Example 434 Here is an example deployment of a pull-based model. Let's say 4 435 map-server sets are provisioned for the mapping system. Therefore 4 436 distinct DNS names are allocated and a Modulus Value 4 is used. Each 437 DNS name is allocated Name Index 0 through 3: 439 0.map-server.lispers.net 440 1.map-server.lispers.net 441 2.map-server.lispers.net 442 3.map-server.lispers.net 444 The A records for each name can be assigned as: 446 0.map-server.lispers.net: 447 A 448 A 449 1.map-server.lispers.net: 450 A 451 A 452 2.map-server.lispers.net: 453 A 454 A 455 3.map-server.lispers.net: 456 A 457 A 459 When an xTR wants to register "[1000]fd::2222", it hashes the EID 460 string to produce, for example, hash value 0x66. Using the modulus 461 value 4 (0x67 & 0x3) produces index 0x3, so the DNS name 3.map- 462 server.lispers.net is used and a Map-Regiter is sent to 463 and . 465 Note that the pull-based method can be used for a core seed-group for 466 bootstraping a push-based mapping system where multicast groups are 467 registered. 469 5.3. Management Considerations 471 There are no LISP protocol changes required to support the pull-based 472 LISP-Decent set of procedures. However, an implementation SHOULD do 473 periodic DNS lookups to determine if A records have changed for a DNS 474 entry. 476 When xTRs derive Map-Resolver and Map-Server names from the DNS, they 477 need to use the same Modulus Value otherwise some xTRs will lookup 478 EIDs to the wrong place they were registered. 480 The Modulus Value can be configured or pushed to the LISP-Decent 481 xTRs. A future version of this document will describe a push 482 mechanism so all xTRs use a consistent modulus value. 484 6. Security Considerations 486 Refer to the Security Considerations section of 487 [I-D.ietf-lisp-rfc6833bis] for a complete list of security mechanisms 488 as well as pointers to threat analysis drafts. 490 7. IANA Considerations 492 At this time there are no specific requests for IANA. 494 8. References 496 8.1. Normative References 498 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 499 STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987, 500 . 502 [RFC1035] Mockapetris, P., "Domain names - implementation and 503 specification", STD 13, RFC 1035, DOI 10.17487/RFC1035, 504 November 1987, . 506 [RFC6234] Eastlake 3rd, D. and T. Hansen, "US Secure Hash Algorithms 507 (SHA and SHA-based HMAC and HKDF)", RFC 6234, 508 DOI 10.17487/RFC6234, May 2011, 509 . 511 [RFC6830] Farinacci, D., Fuller, V., Meyer, D., and D. Lewis, "The 512 Locator/ID Separation Protocol (LISP)", RFC 6830, 513 DOI 10.17487/RFC6830, January 2013, 514 . 516 [RFC6831] Farinacci, D., Meyer, D., Zwiebel, J., and S. Venaas, "The 517 Locator/ID Separation Protocol (LISP) for Multicast 518 Environments", RFC 6831, DOI 10.17487/RFC6831, January 519 2013, . 521 [RFC6832] Lewis, D., Meyer, D., Farinacci, D., and V. Fuller, 522 "Interworking between Locator/ID Separation Protocol 523 (LISP) and Non-LISP Sites", RFC 6832, 524 DOI 10.17487/RFC6832, January 2013, 525 . 527 [RFC6833] Fuller, V. and D. Farinacci, "Locator/ID Separation 528 Protocol (LISP) Map-Server Interface", RFC 6833, 529 DOI 10.17487/RFC6833, January 2013, 530 . 532 [RFC6836] Fuller, V., Farinacci, D., Meyer, D., and D. Lewis, 533 "Locator/ID Separation Protocol Alternative Logical 534 Topology (LISP+ALT)", RFC 6836, DOI 10.17487/RFC6836, 535 January 2013, . 537 [RFC8060] Farinacci, D., Meyer, D., and J. Snijders, "LISP Canonical 538 Address Format (LCAF)", RFC 8060, DOI 10.17487/RFC8060, 539 February 2017, . 541 [RFC8111] Fuller, V., Lewis, D., Ermagan, V., Jain, A., and A. 542 Smirnov, "Locator/ID Separation Protocol Delegated 543 Database Tree (LISP-DDT)", RFC 8111, DOI 10.17487/RFC8111, 544 May 2017, . 546 [RFC8378] Moreno, V. and D. Farinacci, "Signal-Free Locator/ID 547 Separation Protocol (LISP) Multicast", RFC 8378, 548 DOI 10.17487/RFC8378, May 2018, 549 . 551 8.2. Informative References 553 [I-D.ietf-lisp-ecdsa-auth] 554 Farinacci, D. and E. Nordmark, "LISP Control-Plane ECDSA 555 Authentication and Authorization", draft-ietf-lisp-ecdsa- 556 auth-03 (work in progress), March 2020. 558 [I-D.ietf-lisp-pubsub] 559 Rodriguez-Natal, A., Ermagan, V., Cabellos-Aparicio, A., 560 Barkai, S., and M. Boucadair, "Publish/Subscribe 561 Functionality for LISP", draft-ietf-lisp-pubsub-06 (work 562 in progress), July 2020. 564 [I-D.ietf-lisp-rfc6833bis] 565 Farinacci, D., Maino, F., Fuller, V., and A. Cabellos- 566 Aparicio, "Locator/ID Separation Protocol (LISP) Control- 567 Plane", draft-ietf-lisp-rfc6833bis-28 (work in progress), 568 July 2020. 570 [I-D.ietf-lisp-sec] 571 Maino, F., Ermagan, V., Cabellos-Aparicio, A., and D. 572 Saucez, "LISP-Security (LISP-SEC)", draft-ietf-lisp-sec-21 573 (work in progress), July 2020. 575 Appendix A. Acknowledgments 577 The authors would like to thank the LISP WG for their review and 578 acceptance of this draft. 580 The authors would also like to give a special thanks to Roman 581 Shaposhnik for several discussions that occured before the first 582 draft was published. 584 Appendix B. Document Change Log 586 [RFC Editor: Please delete this section on publication as RFC.] 588 B.1. Changes to draft-farinacci-lisp-decent-06 590 o Posted September 2020. 592 o Update references and document expiry timer. 594 B.2. Changes to draft-farinacci-lisp-decent-05 596 o Posted March 2020. 598 o Update references and document expiry timer. 600 B.3. Changes to draft-farinacci-lisp-decent-04 602 o Posted September 2019. 604 o Update references and document expiry timer. 606 B.4. Changes to draft-farinacci-lisp-decent-03 608 o Posted March 2019. 610 o Introduce the Hash Mask which is used to grab common bits from a 611 registered prefix and a lookup prefix. 613 o Spec how multicast lookups are done in the pull-based mapping 614 system. 616 o Indicate the hash string includes the unicast EID mask-length and 617 multicast group and source mask-lengths. 619 B.5. Changes to draft-farinacci-lisp-decent-02 621 o Posted November 2018. 623 o Changed references from peer-group to seed-group to make the 624 algorithms in this document more like how blockchain networks 625 initialize the peer-to-peer network. 627 o Added pull mechanism to compliment the push mechanism. The pull 628 mechanism could be used as a seed-group to bootstrap the push 629 mechanism. 631 B.6. Changes to draft-farinacci-lisp-decent-01 633 o Posted July 2018. 635 o Document timer and reference update. 637 B.7. Changes to draft-farinacci-lisp-decent-00 639 o Initial draft posted January 2018. 641 Authors' Addresses 643 Dino Farinacci 644 lispers.net 645 San Jose, CA 646 USA 648 Email: farinacci@gmail.com 650 Colin Cantrell 651 Nexus 652 Tempe, AZ 653 USA 655 Email: colin@nexus.io