--- 1/draft-ietf-idr-bgp-optimal-route-reflection-15.txt 2018-04-11 02:13:28.416562393 -0700 +++ 2/draft-ietf-idr-bgp-optimal-route-reflection-16.txt 2018-04-11 02:13:28.452563250 -0700 @@ -1,25 +1,25 @@ IDR Working Group R. Raszuk, Ed. Internet-Draft Bloomberg LP Intended status: Standards Track C. Cassar -Expires: April 17, 2018 Cisco Systems +Expires: October 13, 2018 Tesla E. Aman Telia Company B. Decraene Orange K. Wang Juniper Networks - October 14, 2017 + April 11, 2018 BGP Optimal Route Reflection (BGP-ORR) - draft-ietf-idr-bgp-optimal-route-reflection-15 + draft-ietf-idr-bgp-optimal-route-reflection-16 Abstract This document proposes a solution for BGP route reflectors to allow them to choose the best path for their clients that the clients themselves would have chosen under the same conditions, without requiring further state or any new features to be placed on the clients. This facilitates, for example, best exit point policy (hot potato routing). This solution is primarily applicable in deployments using centralized route reflectors. @@ -39,57 +39,57 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on April 17, 2018. + This Internet-Draft will expire on October 13, 2018. Copyright Notice - Copyright (c) 2017 IETF Trust and the persons identified as the + 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. Definitions of Terms Used in This Memo . . . . . . . . . . . 2 2. Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 - 3. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 + 3. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 3.1. Problem Statement . . . . . . . . . . . . . . . . . . . . 4 3.2. Existing/Alternative Solutions . . . . . . . . . . . . . 5 4. Proposed Solutions . . . . . . . . . . . . . . . . . . . . . 6 - 4.1. Client's Perspective IGP Based Best Path Selection . . . 6 - 4.2. Client's Perspective Policy Based Best Path Selection . . 7 + 4.1. Client's Perspective IGP Based Best Path Selection . . . 7 + 4.2. Client's Perspective Policy Based Best Path Selection . . 8 4.3. Solution Interactions . . . . . . . . . . . . . . . . . . 8 5. CPU and Memory Scalability . . . . . . . . . . . . . . . . . 9 6. Advantages and Deployment Considerations . . . . . . . . . . 10 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 11 10.1. Normative References . . . . . . . . . . . . . . . . . . 11 - 10.2. Informative References . . . . . . . . . . . . . . . . . 11 - Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 12 + 10.2. Informative References . . . . . . . . . . . . . . . . . 12 + Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 1. Definitions of Terms Used in This Memo NLRI - Network Layer Reachability Information. RIB - Routing Information Base. AS - Autonomous System number. VRF - Virtual Routing and Forwarding instance. @@ -101,23 +101,37 @@ POP - Point Of Presence L3VPN - Layer 3 Virtual Private Networks RFC4364 6PE - IPv6 Provider Edge Router IGP - Interior Gateway Protocol SPT - Shortest Path Tree + best path - the route chosen by the decision process detailed in + [RFC 4271] section 9.1.2 and its subsections + + best path computation - the decision process detailed in [RFC 4271] + section 9.1.2 and its subsections + + best path algorithm - the decision process detailed in [RFC 4271] + section 9.1.2 and its subsections + + best path selection - the decision process detailed in [RFC 4271] + section 9.1.2 and its subsections + 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] + "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. 2. Authors Following authors substantially contributed to the current format of the document: Stephane Litkowski Orange 9 rue du chene germain Cesson Sevigne, 35512 @@ -208,44 +220,44 @@ Many networks receive full Internet routing information in a large number of locations. This could easily result in tens of paths for each prefix that would need to be distributed to clients. Notwithstanding this drawback, there are a number of reasons for sending more than just the single best path to the clients. Improved path diversity at the edge is a requirement for fast connectivity restoration, and a requirement for effective BGP level load balancing. - In practical terms, add/diverse path deployments are expected to - result in the distribution of 2, 3, or n (where n is a small number) - good paths rather than all domain external paths. While the route - reflector chooses one set of n paths and distributes them to all its - route reflector clients, those n paths may not be the right n paths - for all clients. In the context of the problem described above, - those n paths will not necessarily include the best exit point out of - the network for each route reflector client. The mechanisms proposed - in this document are likely to be complementary to mechanisms aimed - at improving path diversity. + In practical terms, add/diverse path deployments [RFC7911] [RFC6774] + are expected to result in the distribution of 2, 3, or n (where n is + a small number) good paths rather than all domain external paths. + When the route reflector chooses one set of n paths and distributes + them to all its route reflector clients, those n paths may not be the + right n paths for all clients. In the context of the problem + described above, those n paths will not necessarily include the + closest exit point out of the network for each route reflector + client. The mechanisms proposed in this document are likely to be + complementary to mechanisms aimed at improving path diversity. Another possibility to optimize exit point selection is the implementation of distributed route reflector functionality at key IGP locations in order to ensure that these locations see their viewpoints respected in exit selection. Typically, however, this requires the installation of physical nodes to implement the reflection, and if exit policy subsequently changes, the reflector placement and position can become inappropriate. To counter the burden of physical installation, it is possible to build a logical overlay of tunnels with appropriate IGP metrics in order to simulate closeness to key locations required to implement exit policy. There is significant complexity overhead in this - approach, however, enough so to make it typically undesirable. + approach, however, enough so to typically make it undesirable. Trends in control plane decoupling are causing a shift from traditional routers to compute virtualization platforms, or even third-party cloud platforms. As a result, without this proposal, operators are left with a difficult choice for the distribution and reflection of address families with significant exit diversity: o centralized path selection, and tolerate the associated suboptimal paths, or @@ -281,49 +293,48 @@ diverse paths may need to be deployed between route reflectors. A significant advantage of these approaches is that the route reflector clients do not need to run new software or hardware. 4.1. Client's Perspective IGP Based Best Path Selection The core of this solution is the ability for an operator to specify on a per route reflector basis or per peer/update group basis or per peer basis the virtual IGP location placement of the route reflector. - This enables having a given group of clients receive routes with - optimal distance to the next hops from the position of the configured - virtual IGP location. This also provides for freedom of route + shortest distance to the next hops from the position of the + configured virtual IGP location. This provides for freedom of route reflector location, and allows transient or permanent migration of - this network control plane function to an optimal location. + this network control plane function to an arbitrary location. - The choice of specific granularity is left to the implementation + The choice of specific granularity left as an implementation decision. An implementation is considered compliant with the document if it supports at least one listed grouping of virtual IGP location. In this approach, optimal refers to the decision made during best path selection at the IGP metric to BGP next hop comparison step. This approach does not apply to path selection preference based on other policy steps and provisions. The computation of the virtual IGP location with any of the above described granularity is outside of the scope of this document. The operator may configure it manually, implementation may automate it - based on specified heuristics, or it can be computed centrally and - configured by an external system. + based on heuristics, or it can be computed centrally and configured + by an external system. - In situations where BGP next hop is a BGP prefix itself the IGP - metric of a route used for its resolution should be the final IGP + In situations where the BGP next hop is a BGP prefix itself the IGP + metric of a route used for its resolution SHOULD be the final IGP cost to reach such next hop. Implementations which can not inform - BGP of the final IGP metric to a recursive next hop should treat such - paths to be least preferred during next hop metric comparison, - however should be still considered valid for best path selection. + BGP of the final IGP metric to a recursive next hop SHOULD treat such + paths as least preferred during next hop metric comparison. However + such paths SHOULD still be considered valid for best path selection. This solution does not require any BGP or IGP protocol changes, as all required changes are contained within the route reflector implementation. This solution applies to NLRIs of all address families, that can be route reflected. 4.2. Client's Perspective Policy Based Best Path Selection @@ -333,21 +344,21 @@ on factors beyond IGP cost. Examples include, but not limited to: o Selecting the best path for the clients from a traffic engineering perspective. o Dedicating certain exit points for certain ingress points. The solution proposed here allows the user to apply a general policy on the route reflector to select a subset of exit points as the candidate exit points for its clients. For a given client, the - policy should also allow the operator to select different candidate + policy SHOULD also allow the operator to select different candidate exit points for different address families. Regular path selection, including client's perspective IGP based best path selection stated above, will be applied to the candidate paths to select the final paths to advertise to the clients. Since the policy is applied on the route reflector on behalf of its clients, the route reflector will be able to reflect only the optimal paths to its clients. An additional advantage of this approach is that configuration need only be done on a small number of route reflectors, rather than on a significantly larger number of clients. @@ -384,21 +395,21 @@ With IGP based optimal route reflection, even though the virtual IGP location could be specified on a per route reflector basis or per peer/update group basis or per peer basis, in reality, it's most likely to be specified per peer/update group basis. All clients with the same or similar IGP location can be grouped into the same peer/ update group. A virtual IGP location is then specified for the peer/ update group. The virtual location is usually specified as the location of one of the clients from the peer group or an ABR to the area where clients are located. Also, one or more backup virtual - location SHOULD be allowed to be specified for redundancy. + locations SHOULD be allowed to be specified for redundancy. Implementations may wish to take advantage of peer group mechanisms in order to provide for better scalability of optimal route reflector client groups with similar properties. 5. CPU and Memory Scalability For IGP based optimal route reflection, determining the shortest path and associated cost between any two arbitrary points in a network based on the IGP topology learned by a router is expected to add some extra cost in terms of CPU resources. However, current SPF tree @@ -407,21 +418,21 @@ drawback. The number of SPTs computed is expected to be of the order of the number of clients of a route reflector whenever a topology change is detected. Advanced optimizations like partial and incremental SPF may also be exploited. The number of SPTs computed is expected to be higher but comparable to some existing deployed features such as (Remote) Loop Free Alternate which computes a (r)SPT per IGP neighbor. For policy based optimal route reflection, there will be some overhead to apply the policy to select the candidate paths. This - overhead is comparable to existing BGP export policies therefore + overhead is comparable to existing BGP export policies and therefore should be manageable. By the nature of route reflection, the number of clients can be split arbitrarily by the deployment of more route reflectors for a given number of clients. While this is not expected to be necessary in existing networks with best in class route reflectors available today, this avenue to scaling up the route reflection infrastructure is available. If we consider the overall network wide cost/benefit factor, the only @@ -439,26 +450,26 @@ cost between the client and the nexthop (rather than the IGP cost from the route reflector to the nexthop) or other user configured policies. Implementations considered compliant with this document allow the configuration of a logical location from which the best path will be computed, on the basis of either a peer, a peer group, or an entire routing instance. These solutions can be deployed in traditional hop-by-hop forwarding - networks as well as in end-to-end tunneled environments. In the - networks where there are multiple route reflectors and hop-by-hop - forwarding without encapsulation, such optimizations should be - enabled in a consistent way on all route reflectors. Otherwise, - clients may receive an inconsistent view of the network, in turn - leading to intra-domain forwarding loops. + networks as well as in end-to-end tunneled environments. In networks + where there are multiple route reflectors and hop-by-hop forwarding + without encapsulation, such optimizations SHOULD be enabled in a + consistent way on all route reflectors. Otherwise, clients may + receive an inconsistent view of the network, in turn leading to + intra-domain forwarding loops. With this approach, an ISP can effect a hot potato routing policy even if route reflection has been moved out of the forwarding plane, and hop-by-hop switching has been replaced by end-to-end MPLS or IP encapsulation. As per above, these approaches reduce the amount of state which needs to be pushed to the edge of the network in order to perform hot potato routing. The memory and CPU resources required at the edge of the network to provide hot potato routing using these approaches is @@ -483,21 +494,22 @@ 8. IANA Considerations This document does not request any IANA allocations. 9. Acknowledgments Authors would like to thank Keyur Patel, Eric Rosen, Clarence Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand, Jon Mitchell, John Scudder, Jeff Haas, Martin Djernaes, Daniele - Ceccarelli, Kieran Milne and Job Snijders for their valuable input. + Ceccarelli, Kieran Milne, Job Snijders and Randy Bush for their + valuable input. 10. References 10.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, . @@ -507,26 +519,25 @@ . [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended Communities Attribute", RFC 4360, DOI 10.17487/RFC4360, February 2006, . [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement with BGP-4", RFC 5492, DOI 10.17487/RFC5492, February 2009, . -10.2. Informative References + [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC + 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, + May 2017, . - [I-D.ietf-idr-add-paths] - Walton, D., Retana, A., Chen, E., and J. Scudder, - "Advertisement of Multiple Paths in BGP", draft-ietf-idr- - add-paths-15 (work in progress), May 2016. +10.2. Informative References [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996, . [RFC1998] Chen, E. and T. Bates, "An Application of the BGP Community Attribute in Multi-home Routing", RFC 1998, DOI 10.17487/RFC1998, August 1996, . @@ -555,36 +566,42 @@ [RFC5714] Shand, M. and S. Bryant, "IP Fast Reroute Framework", RFC 5714, DOI 10.17487/RFC5714, January 2010, . [RFC6774] Raszuk, R., Ed., Fernando, R., Patel, K., McPherson, D., and K. Kumaki, "Distribution of Diverse BGP Paths", RFC 6774, DOI 10.17487/RFC6774, November 2012, . + [RFC7911] Walton, D., Retana, A., Chen, E., and J. Scudder, + "Advertisement of Multiple Paths in BGP", RFC 7911, + DOI 10.17487/RFC7911, July 2016, + . + Authors' Addresses Robert Raszuk (editor) Bloomberg LP 731 Lexington Ave New York City, NY 10022 USA Email: robert@raszuk.net + Christian Cassar - Cisco Systems - 10 New Square Park - Bedfont Lakes, FELTHAM TW14 8HA + Tesla + 43 Avro Way + Weybridge KT13 0XY UK - Email: ccassar@cisco.com + Email: ccassar@tesla.com Erik Aman Telia Company Solna SE-169 94 Sweden Email: erik.aman@teliacompany.com Bruno Decraene Orange