idnits 2.17.1 draft-fuller-lisp-alt-05.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 lines with private range IPv4 addresses in the document. If these are generic example addresses, they should be changed to use any of the ranges defined in RFC 6890 (or successor): 192.0.2.x, 198.51.100.x or 203.0.113.x. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (February 24, 2009) is 5539 days in the past. Is this intentional? Checking references for intended status: Experimental ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 2858 (Obsoleted by RFC 4760) == Outdated reference: A later version (-12) exists of draft-farinacci-lisp-11 Summary: 1 error (**), 0 flaws (~~), 3 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group D. Farinacci 3 Internet-Draft V. Fuller 4 Intended status: Experimental D. Meyer 5 Expires: August 28, 2009 D. Lewis 6 Cisco 7 February 24, 2009 9 LISP Alternative Topology (LISP+ALT) 10 draft-fuller-lisp-alt-05.txt 12 Status of this Memo 14 This Internet-Draft is submitted to IETF in full conformance with the 15 provisions of BCP 78 and BCP 79. 17 Internet-Drafts are working documents of the Internet Engineering 18 Task Force (IETF), its areas, and its working groups. Note that 19 other groups may also distribute working documents as Internet- 20 Drafts. 22 Internet-Drafts are draft documents valid for a maximum of six months 23 and may be updated, replaced, or obsoleted by other documents at any 24 time. It is inappropriate to use Internet-Drafts as reference 25 material or to cite them other than as "work in progress." 27 The list of current Internet-Drafts can be accessed at 28 http://www.ietf.org/ietf/1id-abstracts.txt. 30 The list of Internet-Draft Shadow Directories can be accessed at 31 http://www.ietf.org/shadow.html. 33 This Internet-Draft will expire on August 28, 2009. 35 Copyright Notice 37 Copyright (c) 2009 IETF Trust and the persons identified as the 38 document authors. All rights reserved. 40 This document is subject to BCP 78 and the IETF Trust's Legal 41 Provisions Relating to IETF Documents 42 (http://trustee.ietf.org/license-info) in effect on the date of 43 publication of this document. Please review these documents 44 carefully, as they describe your rights and restrictions with respect 45 to this document. 47 Abstract 49 This document describes a method of building an alternative, logical 50 topology for managing Endpoint Identifier to Routing Locator mappings 51 using the Locator/ID Separation Protocol. The logical network is 52 built as an overlay on the public Internet using existing 53 technologies and tools, specifically the Border Gateway Protocol and 54 the Generic Routing Encapsulation. An important design goal for 55 LISP+ALT is to allow for the relatively easy deployment of an 56 efficient mapping system while minimizing changes to existing 57 hardware and software. 59 Table of Contents 61 1. Requirements Notation . . . . . . . . . . . . . . . . . . . . 4 62 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 63 3. Definition of Terms . . . . . . . . . . . . . . . . . . . . . 6 64 4. The LISP 1.5 model . . . . . . . . . . . . . . . . . . . . . . 8 65 4.1. Connectivity to non-LISP sites . . . . . . . . . . . . . . 8 66 4.2. Caveats on the use of Data Probes . . . . . . . . . . . . 9 67 5. LISP+ALT: Overview . . . . . . . . . . . . . . . . . . . . . . 10 68 5.1. ITR traffic handling . . . . . . . . . . . . . . . . . . . 10 69 5.2. EID Assignment - Hierarchy and Topology . . . . . . . . . 11 70 5.3. LISP+ALT Router . . . . . . . . . . . . . . . . . . . . . 12 71 5.4. ITR and ETR in a LISP+ALT Environment . . . . . . . . . . 12 72 5.5. Use of GRE and BGP between LISP+ALT Routers . . . . . . . 13 73 6. EID Prefix Propagation and Map-Request Forwarding . . . . . . 14 74 6.1. Changes to ITR behavior with LISP+ALT . . . . . . . . . . 14 75 6.2. Changes to ETR behavior with LISP+ALT . . . . . . . . . . 14 76 7. BGP configuration and protocol considerations . . . . . . . . 16 77 7.1. Autonomous System Numbers (ASNs) in LISP+ALT . . . . . . . 16 78 7.2. Sub-Address Family Identifier (SAFI) for LISP+ALT . . . . 16 79 8. EID-Prefix Aggregation . . . . . . . . . . . . . . . . . . . . 17 80 8.1. Traffic engineering with LISP and LISP+ALT . . . . . . . . 17 81 8.2. Edge aggregation and dampening . . . . . . . . . . . . . . 18 82 9. Connecting sites to the ALT network . . . . . . . . . . . . . 19 83 9.1. ETRs originating information into the ALT . . . . . . . . 19 84 9.2. ITRs Using the ALT . . . . . . . . . . . . . . . . . . . . 19 85 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 86 11. Security Considerations . . . . . . . . . . . . . . . . . . . 22 87 11.1. Apparent LISP+ALT Vulnerabilities . . . . . . . . . . . . 22 88 11.2. Survey of LISP+ALT Security Mechanisms . . . . . . . . . . 23 89 11.3. Using existing BGP Security mechanisms . . . . . . . . . . 23 90 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 24 91 13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 25 92 13.1. Normative References . . . . . . . . . . . . . . . . . . . 25 93 13.2. Informative References . . . . . . . . . . . . . . . . . . 25 95 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 26 97 1. Requirements Notation 99 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 100 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 101 document are to be interpreted as described in [RFC2119]. 103 2. Introduction 105 This document describes a method of building an alternative logical 106 topology for managing Endpoint identifier to Routing Locator mappings 107 using the Locator/ID Separation Protocol [LISP]. This logical 108 topology uses existing technology and tools, specifically the Border 109 Gateway Protocol [RFC4271] and its multi-protocol extension 110 [RFC2858], along with the Generic Routing Encapsulation [RFC2784] 111 protocol to construct an overlay network of devices that advertise 112 EID-prefixes only. These Endpoint Identifier Prefix Aggregators hold 113 hierarchically-assigned pieces of the Endpoint Identifier space 114 (i.e., prefixes) and their next hops toward the network element which 115 is authoritative for Endpoint Identifier-to-Routing Locator mapping 116 for that prefix. Tunnel routers can use this overlay to make queries 117 against and respond to mapping requests made against the distributed 118 Endpoint Identifier-to-Routing Locator mapping database. Note the 119 database is distributed (as described in [LISP]) and is stored in the 120 ETRs. 122 Note that an important design goal of LISP+ALT is to minimize the 123 number of changes to existing hardware and/or software that are 124 required to deploy the mapping system. It is envisioned that in most 125 cases existing technology can be used to implement and deploy LISP+ 126 ALT. Since the deployment of LISP+ALT adds new devices to the 127 network, existing devices not need changes or upgrades. They can 128 function as they are to realize an underlying and robust physical 129 topology. 131 The remainder of this document is organized as follows: Section 3 132 provides the definitions of terms used in this document. Section 4 133 outlines the basic LISP 1.5 model. Section 5 provides a basic 134 overview of the LISP Alternate Topology architecture, and Section 6 135 describes how the ALT uses BGP to propagate Endpoint Identifier 136 reachability over the overlay network. Section 8 describes the 137 construction of the ALT aggregation hierarchy, and Section 9 138 discusses how LISP+ALT elements are connected to form the overlay 139 network. 141 3. Definition of Terms 143 LISP+ALT operates on two name spaces and introduces a new network 144 element, the LISP+ALT Router (see below). This section provides 145 high-level definitions of the LISP+ALT name spaces, network elements, 146 and message types. 148 The Alternative Logical Topology (ALT): The virtual overlay network 149 made up of tunnels between EID Prefix Aggregators. The Border 150 Gateway Protocol (BGP) runs between LISP+ALT routers and is used 151 to carry reachability information for EID prefixes. 153 Legacy Internet: The portion of the Internet which does not run LISP 154 and does not participate in LISP+ALT. 156 LISP+ALT Router: The devices which run on the ALT. The ALT is a 157 static network built using tunnels between LISP+ALT routers. 158 These routers are deployed in a hierarchy in which routers at each 159 level in the this hierarchy are responsible for aggregating all 160 EID prefixes learned from those logically "below" them and 161 advertising summary prefixes to the routers logically "above" 162 them. All prefix learning and propagation between levels is done 163 using BGP. LISP+ALT routers at the lowest level, or "edge", of 164 the ALT learn EID prefixes either over a BGP session to ETRs or 165 through static routes (in the case of the "low-opex ETR"). See 166 Section 7 for details on how BGP is configured between the 167 different network elements. 169 The primary function of LISP+ALT routers is to provide a 170 lightweight forwarding infrastructure for LISP control-plane 171 messages (Map-Request and Map-Reply), and to transport data 172 packets when the packet has the same destination address in both 173 the inner (encapsulating) destination and outer destination 174 addresses ((i.e., a Data Probe packet). 176 Endpoint ID (EID): A 32-bit (for IPv4) or 128-bit (for ipv6) value 177 used in the source and destination address fields of the first 178 (most inner) LISP header of a packet. A packet that is emitted by 179 a system contains EIDs in its headers and LISP headers are 180 prepended only when the packet reaches an Ingress Tunnel Router 181 (ITR) on the data path to the destination EID. 183 In LISP+ALT, EID-prefixes MUST BE assigned in a hierarchical 184 manner (in power-of-two) such that they can be aggregated by LISP+ 185 ALT routers. In addition, a site may have site-local structure in 186 how EIDs are topologically organized (subnetting) for routing 187 within the site; this structure is not visible to the global 188 routing system. 190 EID-Prefix Aggregate: A set of EID-prefixes said to be aggregatable 191 in the [RFC4632] sense. That is, an EID-Prefix aggregate is 192 defined to be a single contiguous power-of-two EID-prefix block. 193 Such a block is characterized by a prefix and a length. 195 Routing Locator (RLOC): An IP address of an egress tunnel router 196 (ETR). It is the output of a EID-to-RLOC mapping lookup. An EID 197 maps to one or more RLOCs. Typically, RLOCs are numbered from 198 topologically-aggregatable blocks that are assigned to a site at 199 each point to which it attaches to the global Internet; where the 200 topology is defined by the connectivity of provider networks, 201 RLOCs can be thought of as Provider Aggregatable (PA) addresses. 202 Note that in LISP+ALT, RLOCs are not carried by LISP+ALT routers. 204 EID-to-RLOC Mapping: A binding between an EID and the RLOC-set that 205 can be used to reach the EID. The term "mapping" refers to an 206 EID-to-RLOC mapping. 208 EID Prefix Reachability: An EID prefix is said to be "reachable" if 209 one or more of its locators are reachable. That is, an EID prefix 210 is reachable if the ETR (or its proxy) that is authoritative for a 211 given EID-to-RLOC mapping is reachable. 213 Default Mapping: A Default Mapping is a mapping entry for EID- 214 prefix 0.0.0.0/0. It maps to a locator-set used for all EIDs in 215 the Internet. If there is a more specific EID-prefix in the 216 mapping cache it overrides the Default Mapping entry. The Default 217 Mapping route can be learned by configuration or from a Map-Reply 218 message. 220 Default Route: A Default Route in the context of LISP+ALT is a EID- 221 prefix value of 0.0.0.0/0 which is advertised by BGP on top of the 222 ALT. The Default Route is used to realize a path for Data Probe 223 or Map-Request packets. 225 4. The LISP 1.5 model 227 As documented in [LISP], the LISP 1.5 model uses the same basic 228 query/response protocol machinery as LISP 1.0. In particular, LISP+ 229 ALT provides two mechanisms for an ITR to obtain EID-to-RLOC mappings 230 (both of these techniques are described in more detail in 231 Section 9.2): 233 Data Probe: An ITR may send the first few data packets into the ALT 234 to minimize packet loss and to probe for the mapping; the 235 authoritative ETR will respond to the ITR with a Map-Reply message 236 when it receives the data packet over the ALT. Note that in this 237 case, the inner Destination Address (DA), which is an EID, is 238 copied to the outer DA and is routed over the ALT. 240 Map-Request: An ITR may also send a Map-Request message into the ALT 241 to request the mapping. As in the Data Probe case, the 242 authoritative ETR will respond to the ITR with a Map-Reply 243 message. In this case, the DA of the Map-Request MUST be an EID. 244 See [LISP] for the format of Map-Request and Map-Reply packets. 246 As with LISP 1.0, EIDs are routable and can be used, unaltered, as 247 the source and destination addresses in IP datagrams. Unlike in LISP 248 1.0, LISP 1.5 EIDs are not routable on the public Internet; instead, 249 they are only routed over a separate, virtual topology referred to as 250 the LISP Alternative Virtual Network. This network is built as an 251 overlay on the public Internet using tunnels to interconnect LISP+ALT 252 routers. BGP is run over these tunnels to propagate the information 253 needed to route Data Probes and Map-Request/Replies. Importantly, 254 while the ETRs are the source(s) of the unaggregated EID prefix data, 255 LISP+ALT uses existing BGP mechanisms to aggressively aggregate this 256 information. Note that ETRs are not required to participate (or 257 prevented from participating) in LISP+ALT; they may choose 258 communicate their mappings to their serving LISP+ALT router(s) at 259 subscription time via configuration. ITRs are also not required to 260 participate in (nor prevented from participating in) LISP+ALT. 262 4.1. Connectivity to non-LISP sites 264 As stated above, EIDs used as IP addresses by LISP sites are not 265 routable on the public Internet. This implies that, absent a 266 mechanism for communication between LISP and non-LISP sites, 267 connectivity between them is not possible. To resolve this problem, 268 an "interworking" technology has been defined; see [Interworking] for 269 details. 271 4.2. Caveats on the use of Data Probes 273 It is worth noting that there has been a great deal of discussion and 274 controversy about whether Data Probes are a good idea. On the one 275 hand, using them offers a method of avoiding the "first packet drop" 276 problem when an ITR does not have a mapping for a particular EID- 277 prefix. On the other hand, forwarding data packets on the ALT would 278 require that it either be engineered to support relatively high 279 traffic rates, which is not generally feasible for a tunneled 280 network, or that it be carefully designed to aggressively rate- limit 281 traffic to avoid congestion or DoS attacks. There are also other 282 issues involving latency or other differences between the ALT path 283 that initial a Data Probe would take and the path that subsequent 284 packets on the same flow would take once a mapping were in place on 285 an ITR. For these and other reasons use of Data Probes should be 286 considered experimental and should be disabled by default in all ITR 287 implementations. 289 5. LISP+ALT: Overview 291 LISP+ALT is a hybrid push/pull architecture. Aggregated EID prefixes 292 are "pushed" among the LISP+ALT routers and, optionally, out to ITRs 293 (which may elect to receive the aggregated information, as opposed to 294 simply using a default mapping). Specific EID-to-RLOC mappings are 295 "pulled" by ITRs when they either send explicit LISP requests or data 296 packets on the alternate topology that result in triggered replies 297 being generated by ETRs. 299 The basic idea embodied in LISP+ALT is to use BGP, running over 300 tunneled overlay network, to establish reachability required to route 301 Data Probes and Map-Requests over an alternate logical topology 302 (ALT). The ALT BGPRoute Information Base (RIB) is comprised of EID 303 prefixes and associated next hops. LISP+ALT routers interconnect 304 using eBGP and propagate EID prefix updates, which are learned over 305 eBGP connections to authoritative ETRs, or by static configuration. 306 ITRs may also eBGP peer with one or more LISP+ALT to learn the best 307 ALT router to use to forward a Data Proble or Map-Request for a 308 particular prefix; in most cases, an ITR will have a default EID 309 mapping pointing to one or more LISP+ALT routers. 311 Note that while this document specifies the use of Generic Routing 312 Encapsulation (GRE) as a tunneling mechanism, there is no reason that 313 an ALT cannot be built using other tunneling technologies. In cases 314 where GRE does not meet security, management, or other operational 315 requirements, it is reasonable to use another tunneling technology 316 that does. References to "GRE tunnel" in later sections of this 317 document should therefore not be taken as prohibiting or precluding 318 the use of other, available tunneling mechanisms. 320 In summary, LISP+ALT uses BGP to propagate EID-prefix update 321 information to facilitate forwarding a Map-Reqeusts or Data Probe to 322 the ETR that holds the EID-to-RLOC mapping for that EID-prefix. This 323 reachability is carried as IPv4 or IPv6 NLRI without modification 324 (since an EID prefix has the same syntax as IPv4 or IPv6 address 325 prefix). LISP+ALT routers eBGP peer with one another, forming the 326 ALT. A LISP+ALT router near the edge learns EID prefixes originated 327 by authoritative ETRs, either by eBGP peering with them or by 328 configuration. LISP+ALT routers aggregate EID prefixes, and forward 329 Data Probes and Map-Requests. 331 5.1. ITR traffic handling 333 When an ITR receives a packet originated by an end system within its 334 site (i.e. a host for which the ITR is the exit path out of the site) 335 and the destination for that packet is not known in the ITR's mapping 336 cache, the ITR encapsulates the packet in a LISP header, copying the 337 inner destination address (EID) to the outer destination address 338 (RLOC), and transmits it through a GRE tunnel to a LISP+ALT router in 339 the ALT. This "first hop" LISP+ALT router uses EID-prefix routing 340 information learned from other LISP+ALT routers via BGP to guide the 341 packet to the ETR which "owns" the prefix. Upon receipt by the ETR, 342 normal LISP processing occurs: the ETR responds to the ITR with a 343 LISP Map-Reply that lists the RLOCs (and, thus, the ETRs to use) for 344 the EID prefix. The ETR also de-encapsulates the packet and 345 transmits it toward its destination. 347 Upon receipt of the Map-Reply, the ITR installs the RLOC information 348 for a given prefix into a local mapping database. With these mapping 349 entries stored, additional packets destined to the given EID prefix 350 are routed directly to a viable ETR without use of the ALT, until 351 either the entry's TTL has expired, or the ITR can otherwise find no 352 reachable ETR. Note that a valid mapping (not timed-out) may exist 353 that contains no reachable RLOCs (i.e. all paths to that ETR are 354 down); in this case, packets destined to the EID prefix are dropped, 355 not routed through the ALT. 357 Traffic routed over the ALT therefore consists of: 359 o EID prefix Map-Requests, and 361 o data packets destined for those EID prefixes while the ITR awaits 362 map replies 364 5.2. EID Assignment - Hierarchy and Topology 366 EID-prefixes will be allocated to a LISP site by Internet Registries. 367 Multiple allocations may not be in power-of-2 blocks. But when they 368 are, they will be aggregated into a single, advertised EID-prefix. 369 The ALT network is built in a tree-structured hierarchy to allow 370 aggregation at merge points in the tree. Building such a structure 371 should minimize the number of EID-prefixes carried by LISP+ALT nodes 372 near the top of the hierarchy. 374 Since the ALT will not need to change due to subscription or policy 375 reasons, the topology can remain relatively static and aggregation 376 can be sustained. Because routing on the ALT uses BGP, the same 377 rules apply for generating aggregates; in particular, a LISP+ALT 378 router should only be configured to generate an aggregate if it is 379 configured with BGP sessions to all of the originators of components 380 (more-specifics prefixes) of that aggregae; not all of the components 381 of need to be present for the aggregate to be originated (some may be 382 holes in the covering prefix and some may be down) but the 383 aggregating router must be configured to learn the state of all of 384 the components. 386 As an example, consider ETRs that are originating EID prefixes for 387 10.1.0.0/24, 10.1.64.0/24, 10.1.128.0/24, and 10.1.192.0/24. An ALT 388 router should only be configured to generate an aggregate for 389 10.1.0.0/16 if it has BGP sessions configured with all of these ETRs, 390 in other words, only if it has sufficient knowledge about the state 391 of those prefixes to summarize them. 393 Under what circumstances the ALT router actually generates the 394 aggregate is a matter of local policy: in some cases, it will be 395 statically configured to do so at all times with a "static discard" 396 route. In other cases, it may be configured to only generate the 397 aggregate prefix if at least one of the components of the aggregate 398 is learned via BGP. 400 This implies that two ALTs that share an overlapping set of prefixes 401 must exchange those prefixes if either is to generate and export a 402 covering aggregate for those prefixes. It also implies that an ETR 403 that originates a prefix must maintain BGP sessions with all ALT 404 routers that are configured to originate an aggregate which covers 405 that prefix. 407 Note: much is currently uncertain about the best way to build the ALT 408 network; as testing and prototype deployment proceeds, a guide to how 409 to best build the ALT network will be developed. 411 5.3. LISP+ALT Router 413 A LISP+ALT Router has the following functionality: 415 1. It runs, at a minimum, the eBGP part of the BGP protocol. 417 2. It supports a separate RIB which uses next-hop GRE tunnel 418 interfaces for forwarding Data Probes and Map-Requests. 420 3. It can act as a "proxy-ITR" to support non-LISP sites. 422 4. It can act as an ETR, or as a recursive or re-encapsulating ITR 423 to reduce mapping tables in site-based LISP routers. 425 5.4. ITR and ETR in a LISP+ALT Environment 427 An ITR using LISP+ALT may have additional functionality as follows: 429 1. If it is also acting as a LISP+ALT Router, it sends Data Probes 430 or Map-Requests on the BGP best path computed GRE tunnel for each 431 EID prefix. 433 2. When acting solely as a ITR, it sends Data Probes or Map-Requests 434 directly to a configured LISP+ALT router. 436 An ETR using LISP+ALT may also behave slightly differently: 438 1. If it is also acting as a LISP+ALT router, it advertises its 439 configured EID-prefixes into BGP for distribution through the 440 ALT. 442 2. It receives Data Probes and Map-Requests only over GRE tunnel(s) 443 to its "upstream" LISP+ALT router(s) and responds with Map- 444 Replies for the EID prefixes that it "owns". 446 5.5. Use of GRE and BGP between LISP+ALT Routers 448 The ALT network is built using GRE tunnels between LISP+ALT routers. 449 eBGP sessions are configured over those tunnels, with each LISP+ALT 450 router acting as a separate AS "hop" in a Path Vector for BGP. For 451 the purposes of LISP+ALT, the AS-path is used solely as a shortest- 452 path determination and loop-avoidance mechanism. Because all next- 453 hops are on tunnel interfaces, no IGP is required to resolve those 454 next-hops to exit interfaces. 456 LISP+ALT's use of GRE and BGP reduces provider Operational Expense 457 (OPEX) because no new protocols need to be either defined or used on 458 the overlay topology. Also, since tunnel IP addresses are local in 459 scope, no coordination is needed for their assignment; any addressing 460 scheme (including private addressing) can be used for tunnel 461 addressing. 463 6. EID Prefix Propagation and Map-Request Forwarding 465 As described in Section 9.2, an ITR may send either a Map-Request or 466 a data probe to find a given EID-to-RLOC mapping. The ALT provides 467 the infrastructure that allows these requests to reach the 468 authoritative ETR. 470 Note that, under normal circumstances, Map-Replies are not sent over 471 the ALT - an ETR sends a Map-Reply to the source RLOC learned from 472 the original Map-Request. There may be scenarios, perhaps to 473 encourage caching of EID-to-RLOC mappings by ALT routers, where Map- 474 Replies could be sent over the ALT or where a "first-hop" ALT router 475 might modify the originating RLOC on a Map-Request received from an 476 ITR to force the Map-Reply to be sent to it; these cases will not be 477 supported by initial LISP+ALT implementations but may be subject to 478 future experimentation. 480 LISP+ALT routers propagate mapping information for use by ITRs (when 481 making Map-Requests or sending Data Probes) using eBGP [RFC4271]. 482 eBGP is run on the inter-LISP+ALT router links, and and possibly 483 between an edge ("last hop") LISP+ALT router and an ETR or between an 484 edge ("first hop") LISP+ALT router and an ITR. The ALT eBGP RIB 485 consists of aggregated EID prefixes and their next hops toward the 486 authoritative ETR for that EID prefix. 488 6.1. Changes to ITR behavior with LISP+ALT 490 When using LISP+ALT, an ITR always sends either Data Probes or Map- 491 Requests to one of its "upstream" LISP+ALT routers. As in basic 492 LISP, it should use one of its RLOCs as the source address of these 493 queries; it should explicitly not use a tunnel interface as the 494 source address as doing so will cause replies to be forwarded over 495 the tunneled topology and may be problematic if the tunnel interface 496 address is not explicitly routed throughout the ALT. If the ITR is 497 running BGP with the LISP+ALT router(s), it selects the appropriate 498 LISP+ALT router based on the BGP information received. If it is not 499 running BGP, it uses static configuration to select a LISP+ALT 500 router; in the general case, this will effectively be an "EID-prefix 501 default route". 503 6.2. Changes to ETR behavior with LISP+ALT 505 If an ETR connects using BGP to one or more LISP+ALT router(s), it 506 simply announces its EID-prefix to those LISP+ALT routers. In the 507 "low-opex" case, where the ETR does not use BGP, it will still have a 508 GRE tunnel to one or more LISP+ALT routers; these LISP+ALT router(s) 509 the ETR must route Map-Requests and Data Probes to the ETR and 510 contain configuration (in effect, static routes) for the ETR's EID- 511 prefixes. Note that in either case, when an ETR generates a Map- 512 Reply message to return to a querying ITR, it sends it to the ITR's 513 source-RLOC (i.e., on the underlying Internet topology, not on the 514 ALT; this avoids any latency penalty that might be incurred by 515 routing over the ALT). 517 See also Section 9 for more details about the "low-opex" ETR and ITR 518 configurations. 520 7. BGP configuration and protocol considerations 522 7.1. Autonomous System Numbers (ASNs) in LISP+ALT 524 The primary use of BGP today is to define the global Internet routing 525 topology in terms of its participants, known as Autonomous Systems. 526 LISP+ALT specifies the use of BGP to create a global EID-to-RLOC 527 mapping database which, while related to the global routing database, 528 serves a very different purpose and is organized into a very 529 different hierarchy. Because LISP+ALT does use BGP, however, it uses 530 ASNs in the paths that are propagated among LISP+ALT routers. To 531 avoid confusion, it needs to be stressed that that these LISP+ALT 532 ASNs use a new numbering space that is unrelated to the ASNs used by 533 the global routing system. Exactly how this new space will be 534 assigned and managed will be determined during experimental 535 deployment of LISP+ALT. 537 Note that the LISP+ALT routers that make up the "core" of the ALT 538 will not be associated with any existing core-Internet ASN because 539 topology, hierarchy, and aggregation boundaries are completely 540 separate from and independent of the global Internet routing system. 542 7.2. Sub-Address Family Identifier (SAFI) for LISP+ALT 544 As defined by this document, LISP+ALT may be implemented using BGP 545 without modification. Given the fundamental operational difference 546 between propagating global Internet routing information (the current, 547 dominant use of BGP) and managing the global EID-to-RLOC database 548 (the use of BGP proposed by this document), it may be desirable to 549 assign a new SAFI [RFC2858] to prevent operational confusion and 550 difficulties, including the inadvertent leaking of information from 551 one domain to the other. At present, this document does not require 552 the assignment of a new SAFI but the authors anticipate that 553 experimentation may suggest the need for one in the future. 555 8. EID-Prefix Aggregation 557 The ALT BGP peering topology should be arranged in a tree-like 558 fashion (with some meshiness), with redundancy to deal with node and 559 link failures. A basic assumption is that as long as the routers are 560 up and running, the underlying topology will provide alternative 561 routes to maintain BGP connectivity among LISP+ALT routers. 563 Note that, as mentioned in Section 5.2, the use of BGP by LISP+ALT 564 requires that information can only be aggregated where all active 565 more-specific prefixes of a generated aggregate prefix are known. 566 This implies, for example, that if a given set of prefixes is used by 567 multiple, ALT networks, those networks must interconnect and share 568 information about all of the prefixes if either were to generate an 569 aggregate prefix that covered all of them. This is no different than 570 the way that BGP route aggregation works in the existing global 571 routing system: a service provider only generates an aggregate route 572 if it is configured to learn to all prefixes that make up that 573 aggregate. 575 8.1. Traffic engineering with LISP and LISP+ALT 577 It is worth noting that LISP+ALT does not directly propagate EID-to- 578 RLOC mappings. What it does is provide a mechanism for a LISP ITR to 579 find the ETR that holds the mapping for a particular EID prefix. 580 This distinction is important for several reasons. First, it means 581 that the reachability of RLOCs is learned through the LISP ITR-ETR 582 exchange so "flapping" of state information through BGP is not likely 583 nor can mapping information become "stale" by slow propagation 584 through the ALT BGP mesh. Second, by deferring EID-to-RLOC mapping 585 to an ITR-ETR exchange, it is possible to perform site-to-site 586 traffic engineering through a combination of setting the preference 587 and weight fields and by returning more-specific EID-to-RLOC 588 information in LISP Map-Reply messages. This is a powerful mechanism 589 that can conceivably replace the traditional practice of routing 590 prefix deaggregation for traffic engineering purposes. Rather than 591 propagating more-specific information into the global routing system 592 for local- or regional-optimization of traffic flows, such more- 593 specific information can be exchanged, through LISP (not LISP+ALT), 594 on an as-needed basis between only those ITRs/ETRs (and, thus, site 595 pairs) that need it; should a receiving ITR decide that it does not 596 wish to store such more-specific information, it has the option of 597 discarding it as long as a shorter, covering EID prefix exists. Not 598 only does this greatly improve the scalability of the global routing 599 system but it also allows improved traffic engineering techniques by 600 allowing richer and more fine-grained policies to be applied. 602 8.2. Edge aggregation and dampening 604 Note also that normal BGP best common practices apply to the ALT 605 network. In particular, first-hop ALT routers will aggregate EID 606 prefixes and dampen changes to them in the face of excessive updates. 607 Since EID prefix assignments are not expected to change with anywhere 608 as frequently BGP prefix reachability on the Internet, such dampening 609 should be very rare and might be worthy of logging as an exceptional 610 event. It is again worth noting that the ALT carries only EID 611 prefixes, along with BGP-generated paths to the ETRs that source 612 those prefixes as advertisements travel over the logical topology; 613 this set of information is considerablly less volitile than the 614 actual EID-to-RLOC mappings. 616 9. Connecting sites to the ALT network 618 9.1. ETRs originating information into the ALT 620 EID prefix information is originated into the ALT by two different 621 mechanisms: 623 eBGP: An ETR may participate in the LISP+ALT overlay network by 624 running eBGP to one or more LISP+ALT router(s) over GRE tunnel(s). 625 In this case, the ETR advertises reachability for its EID prefixes 626 over these eBGP connection(s). The LISP+ALT router(s) that 627 receive(s) these prefixes then propagate(s) them into the ALT. 628 Here the ETR is simply an eBGP peer of LISP+ALT router(s) at the 629 edge of the ALT. Where possible, a LISP+ALT router that receives 630 EID prefixes from an ETR via eBGP should aggregate that 631 information. 633 Configuration: One or more LISP+ALT router(s) may be configured to 634 originate an EID prefix on behalf of the non-BGP-speaking ETR that 635 is authoritative for a prefix. As in the case above, the ETR is 636 connected to LISP+ALT router(s) using GRE tunnel(s) but rather 637 than BGP being used, the LISP+ALT router(s) are configured with 638 what are in effect "static routes" for the EID prefixes "owned" by 639 the ETR. The GRE tunnel is used to route Map-Requests to the ETR. 640 Note that the LISP+ALT router could also serve as a proxy for its 641 TCP-connected ETRs. 643 Note: in both cases, an ETR may have connections to to multiple 644 LISP+ALT routers for the following reasons: 646 * redundancy, so that a particular ETR is still reachable through 647 the ALT even if one path or tunnel is unavailable. 649 * to connect to different parts of the ALT hierarchy if the ETR 650 "owns" multiple EID-to-RLOC mappings for EID prefixes that 651 cannot be aggregated by the same LISP+ALT router (i.e. are not 652 topologically "close" to each other in the ALT). 654 9.2. ITRs Using the ALT 656 In order to source Map-Requests to the ALT or to route a Data Probe 657 packet over the ALT, each ITR participating in the ALT establishes a 658 connection to one or more LISP+ALT routers. These connections can be 659 either eBGP or TCP (as described above). 661 In the case in which the ITR is running eBGP, the peer LISP+ALT 662 routers use these connections to advertise highly aggregated EID- 663 prefixes to the peer ITRs. The ITR then installs the received 664 prefixes into a forwarding table that is used to to send LISP Map- 665 Requests to the appropriate LISP+ALT router. In most cases, a LISP+ 666 ALT router will send a default mapping to its client ITRs so that 667 they can send request for any EID prefix into the ALT. 669 In the case in which the ITR is connected to some set of LISP+ALT 670 routers without eBGP, the ITR sends Map-Requests to any of its 671 connected LISP+ALT routers. 673 An ITR may also choose to send the first few data packets over the 674 ALT to minimize packet loss and reduce mapping latency. In this 675 case, the data packet serves as a mapping probe (Data Probe) and the 676 ETR which receives the data packet (over the ALT) responds with a 677 Map-Reply is sent to the ITR's source-RLOC using the underlying 678 topology. Note that the use of Data Probes is discouraged at this 679 time (see Section 4.2). 681 In general, an ITR will establish connections only to LISP+ALT 682 routers at the "edge" of the ALT (typically two for redundancy) but 683 there may also be situations where an ITR would connect to other 684 LISP+ALT routers to receive additional, shorter path information 685 about a portion of the ALT of interest to it. This can be 686 accomplished by establishing GRE tunnels between the ITR and the set 687 of LISP+ALT routers with the additional information. This is a 688 purely local policy issue between the ITR and the LISP+ALT routers in 689 question. 691 10. IANA Considerations 693 This document makes no request of the IANA. 695 11. Security Considerations 697 LISP+ALT shares many of the security characteristics of BGP. Its 698 security mechanisms are comprised of existing technologies in wide 699 operational use today. Securing LISP+ALT is much simpler than 700 securing BGP. 702 Compared to BGP, LISP+ALT routers are not topologically bound, 703 allowing them to be put in locations away from the vulnerable AS 704 border (unlike eBGP speakers). 706 11.1. Apparent LISP+ALT Vulnerabilities 708 This section briefly lists of the apparent vulnerabilities of LISP+ 709 ALT. 711 Mapping Integrity: Can an attacker insert bogus mappings to black- 712 hole (create a DoS) or intercept LISP data-plane packets? 714 LISP+ALT router Availability: Can an attacker DoS the LISP+ALT 715 routers connected to a given ETR? without access to its mappings, 716 a site is essentially unavailable. 718 ITR Mapping/Resources: Can an attacker force an ITR or LISP+ALT 719 router to drop legitimate mapping requests by flooding it with 720 random destinations that it will have to query for. Further study 721 is required to see the impact of admission control on the overlay 722 network. 724 EID Map-Request Exploits for Reconnaissance: Can an attacker learn 725 about a LISP destination sites' TE policy by sending legitimate 726 mapping requests messages and then observing the RLOC mapping 727 replies? Is this information useful in attacking or subverting 728 peer relationships? Note that LISP 1.0 has a similar data-plane 729 reconnaissance issue. 731 Scaling of LISP+ALT router Resources: Paths through the ALT may be 732 of lesser bandwidth than more "direct" paths; this may make them 733 more prone to high-volume denial-of-service attacks. For this 734 reason, all components of the ALT (ETRs and ALT routers) should be 735 prepared to rate-limit traffic that could be received across the 736 ALT (Map-Requests and Data Probes). 738 UDP Map-Reply from ETR: Since Map-Replies packets are sent directly 739 from the ETR to the ITR's RLOC, the ITR's RLOC may be vulnerable 740 to various types of DoS attacks. 742 11.2. Survey of LISP+ALT Security Mechanisms 744 Explicit peering: The devices themselves can both prioritize 745 incoming packets as well as potentially do key checks in hardware 746 to protect the control plane. 748 Use of TCP to connect elements: This makes it difficult for third 749 parties to inject packets. 751 Use of HMAC Protected TCP Connections: HMAC is used to verify 752 message integrity and authenticity, making it nearly impossible 753 for third party devices to either insert or modify messages. 755 Message Sequence Numbers and Nonce Values in Messages: This allows 756 for devices to verify that the mapping-reply packet was in 757 response to the mapping-request that they sent. 759 11.3. Using existing BGP Security mechanisms 761 LISP+ALT's use of BGP allows for the ALT to take advantage of BGP 762 security features designed for existing Internet BGP use. 764 For example, should either sBGP [I-D.murphy-bgp-secr] or soBGP 765 [I-D.white-sobgparchitecture] become widely deployed it expected that 766 LISP+ALT could use these mechanisms to provide authentication of EID- 767 to-RLOC mappings, and EID origination. 769 12. Acknowledgments 771 Many of the ideas described in this document were developed during 772 detailed discussions with Scott Brim and Darrel Lewis, who made many 773 insightful comments on earlier versions of this document. 775 13. References 777 13.1. Normative References 779 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 780 Requirement Levels", BCP 14, RFC 2119, March 1997. 782 [RFC2784] Farinacci, D., Li, T., Hanks, S., Meyer, D., and P. 783 Traina, "Generic Routing Encapsulation (GRE)", RFC 2784, 784 March 2000. 786 [RFC2858] Bates, T., Rekhter, Y., Chandra, R., and D. Katz, 787 "Multiprotocol Extensions for BGP-4", RFC 2858, June 2000. 789 [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway 790 Protocol 4 (BGP-4)", RFC 4271, January 2006. 792 [RFC4632] Fuller, V. and T. Li, "Classless Inter-domain Routing 793 (CIDR): The Internet Address Assignment and Aggregation 794 Plan", BCP 122, RFC 4632, August 2006. 796 13.2. Informative References 798 [I-D.murphy-bgp-secr] 799 Murphy, S., "BGP Security Analysis", 800 draft-murphy-bgp-secr-04 (work in progress), 801 November 2001. 803 [I-D.white-sobgparchitecture] 804 White, R., "Architecture and Deployment Considerations for 805 Secure Origin BGP (soBGP)", 806 draft-white-sobgparchitecture-00 (work in progress), 807 May 2004. 809 [Interworking] 810 Lewis, D., Meyer, D., Farinacci, D., and V. Fuller, 811 "Interworking LISP with IPv4 and ipv6", 812 draft-lewis-lisp-interworking-02.txt (work in progress), 813 January 2009. 815 [LISP] Farinacci, D., Fuller, V., and D. Meyer, "Locator/ID 816 Separation Protocol (LISP)", draft-farinacci-lisp-11.txt 817 (work in progress), December 2008. 819 Authors' Addresses 821 Dino Farinacci 822 Cisco 823 Tasman Drive 824 San Jose, CA 95134 825 USA 827 Email: dino@cisco.com 829 Vince Fuller 830 Cisco 831 Tasman Drive 832 San Jose, CA 95134 833 USA 835 Email: vaf@cisco.com 837 Dave Meyer 838 Cisco 839 Tasman Drive 840 San Jose, CA 95134 841 USA 843 Email: dmm@cisco.com 845 Darrel Lewis 846 Cisco 847 Tasman Drive 848 San Jose, CA 95134 849 USA 851 Email: darlewis@cisco.com