idnits 2.17.1 draft-ietf-idr-bgp-optimal-route-reflection-09.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 : ---------------------------------------------------------------------------- ** The abstract seems to contain references ([RFC4456]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (April 26, 2015) is 3289 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'RFC2119' is defined on line 323, but no explicit reference was found in the text == Unused Reference: 'RFC4271' is defined on line 326, but no explicit reference was found in the text == Unused Reference: 'RFC4360' is defined on line 329, but no explicit reference was found in the text == Unused Reference: 'RFC5492' is defined on line 332, but no explicit reference was found in the text == Unused Reference: 'I-D.ietf-idr-add-paths' is defined on line 337, but no explicit reference was found in the text == Unused Reference: 'RFC1997' is defined on line 342, but no explicit reference was found in the text == Unused Reference: 'RFC1998' is defined on line 345, but no explicit reference was found in the text == Unused Reference: 'RFC4384' is defined on line 349, but no explicit reference was found in the text == Unused Reference: 'RFC4893' is defined on line 356, but no explicit reference was found in the text == Unused Reference: 'RFC5283' is defined on line 359, but no explicit reference was found in the text == Unused Reference: 'RFC5668' is defined on line 363, but no explicit reference was found in the text == Unused Reference: 'RFC5714' is defined on line 366, but no explicit reference was found in the text == Unused Reference: 'RFC6774' is defined on line 369, but no explicit reference was found in the text == Outdated reference: A later version (-15) exists of draft-ietf-idr-add-paths-10 -- Obsolete informational reference (is this intentional?): RFC 4893 (Obsoleted by RFC 6793) Summary: 1 error (**), 0 flaws (~~), 15 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 IDR Working Group R. Raszuk 3 Internet-Draft Mirantis Inc. 4 Intended status: Standards Track C. Cassar 5 Expires: October 28, 2015 Cisco Systems 6 E. Aman 7 TeliaSonera 8 B. Decraene 9 S. Litkowski 10 Orange 11 April 26, 2015 13 BGP Optimal Route Reflection (BGP-ORR) 14 draft-ietf-idr-bgp-optimal-route-reflection-09 16 Abstract 18 [RFC4456] asserts that, because the Interior Gateway Protocol (IGP) 19 cost to a given point in the network will vary across routers, "the 20 route reflection approach may not yield the same route selection 21 result as that of the full IBGP mesh approach." One practical 22 implication of this assertion is that the deployment of route 23 reflection may thwart the ability to achieve hot potato routing. Hot 24 potato routing attempts to direct traffic to the closest AS egress 25 point in cases where no higher priority policy dictates otherwise. 26 As a consequence of the route reflection method, the choice of exit 27 point for a route reflector and its clients will be the egress point 28 closest to the route reflector - and not necessarily closest to the 29 RR clients. 31 Section 11 of [RFC4456] describes a deployment approach and a set of 32 constraints which, if satsified, would result in the deployment of 33 route reflection yielding the same results as the iBGP full mesh 34 approach. Such a deployment approach would make route reflection 35 compatible with the application of hot potato routing policy. 37 As networks evolved to accommodate architectural requirements of new 38 services, tunneled (LSP/IP tunneling) networks with centralized route 39 reflectors became commonplace. This is one type of common deployment 40 where it would be impractical to satisfy the constraints described in 41 Section 11 of [RFC4456]. Yet, in such an environment, hot potato 42 routing policy remains desirable. 44 This document proposes a new solution which can be deployed to 45 facilitate the application of closest exit point policy in 46 centralized route reflection deployments. 48 Status of This Memo 50 This Internet-Draft is submitted in full conformance with the 51 provisions of BCP 78 and BCP 79. 53 Internet-Drafts are working documents of the Internet Engineering 54 Task Force (IETF). Note that other groups may also distribute 55 working documents as Internet-Drafts. The list of current Internet- 56 Drafts is at http://datatracker.ietf.org/drafts/current/. 58 Internet-Drafts are draft documents valid for a maximum of six months 59 and may be updated, replaced, or obsoleted by other documents at any 60 time. It is inappropriate to use Internet-Drafts as reference 61 material or to cite them other than as "work in progress." 63 This Internet-Draft will expire on October 28, 2015. 65 Copyright Notice 67 Copyright (c) 2015 IETF Trust and the persons identified as the 68 document authors. All rights reserved. 70 This document is subject to BCP 78 and the IETF Trust's Legal 71 Provisions Relating to IETF Documents 72 (http://trustee.ietf.org/license-info) in effect on the date of 73 publication of this document. Please review these documents 74 carefully, as they describe your rights and restrictions with respect 75 to this document. Code Components extracted from this document must 76 include Simplified BSD License text as described in Section 4.e of 77 the Trust Legal Provisions and are provided without warranty as 78 described in the Simplified BSD License. 80 Table of Contents 82 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 83 2. Proposed solution . . . . . . . . . . . . . . . . . . . . . . 4 84 3. Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 5 85 4. Advantages and deployment considerations . . . . . . . . . . 6 86 5. Security considerations . . . . . . . . . . . . . . . . . . . 7 87 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 88 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 89 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 90 8.1. Normative References . . . . . . . . . . . . . . . . . . 7 91 8.2. Informative References . . . . . . . . . . . . . . . . . 8 92 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 94 1. Introduction 96 There are three types of BGP deployments within Autonomous Systems 97 today: full mesh, confederations and route reflection. 99 BGP route reflection is the most popular way to distribute BGP routes 100 between BGP speakers belonging to the same administrative domain. 101 Traditionally route reflectors have been deployed in the forwarding 102 path and carefully placed on the POP to core boundaries. That model 103 of BGP route reflector placement has started to evolve. The 104 placement of route reflectors outside the forwarding path was 105 triggered by applications which required traffic to be tunneled from 106 AS ingress PE to egress PE: for example L3VPN. 108 This evolving model of intra-domain network design has enabled 109 deployments of centralized route reflectors. Initially this model 110 was only employed for new address families e.g. L3VPNs, L2VPNs etc 112 With edge to edge MPLS or IP encapsulation also being used to carry 113 internet traffic, this model has been gradually extended to other BGP 114 address families including IPv4 and IPv6 Internet routing. This is 115 also applicable to new services achieved with BGP as control plane 116 for example 6PE. 118 Such centralized route reflectors can be placed on the POP to core 119 boundaries, but they are often placed in arbitrary locations in the 120 core of large networks. 122 Such deployments suffer from a critical drawback in the context of 123 best path selection. A route reflector with knowledge of multiple 124 paths for a given prefix will typically (unless other techniques like 125 add paths are in use) pick the best path and only advertise that best 126 path to the the route reflector clients. If the best path for a 127 prefix is selected on the basis of an IGP tie break, the best path 128 advertised from the route reflector to its clients will be the exit 129 point closest to the route reflector. But route reflector clients 130 will be in a place in the network topology which is different from 131 the route reflector. In networks with centralized route reflectors, 132 this difference will be even more acute. It follows that the best 133 path chosen by the route reflector is not necessarily the same as the 134 path which would have been chosen by the client if the client 135 considered the same set of candidate paths as the route reflector. 136 Furthermore, the path chosen by the client might have been a better 137 path from that chosen by the route reflector for traffic entering the 138 network at the client. The path chosen by the client would have 139 guaranteed the lowest cost and delay trajectory through the network. 141 Route reflector clients switch packets using routing information 142 learnt from route reflectors which are not on the forwarding path of 143 the packet through the network even in the absence of end-to-end 144 encapsulation. In those cases the path chosen as best and propagated 145 to the clients will often not be the optimal path chosen by the 146 client given all available paths. 148 Eliminating the IGP distance to the BGP nexthop as a tie breaker on 149 centralized route reflectors does not address the issue. Ignoring 150 IGP distance to the BGP next hop results in the tie breaking 151 procedure contributing the best path by differentiating between paths 152 using attributes otherwise considered less important than IGP cost to 153 the BGP nexthop. 155 One possible valid solution or workaround to this problem requires 156 sending all domain external paths from the RR to all its clients. 157 This approach suffers the significant drawback of pushing a large 158 amount of BGP state to all the edge routers. In many networks, the 159 number of EBGP peers over which full Internet routing information is 160 received would correlate directly to the number of paths present in 161 each ASBR. This could easily result in tens of paths for each 162 prefix. 164 Notwithstanding this drawback, there are a number of reasons for 165 sending more than just the single best path to the clients. Improved 166 path diversity at the edge is a requirement for fast connectivity 167 restoration, and a requirement for effective BGP level load 168 balancing. 170 In practical terms, add/diverse path deployments are expected to 171 result in the distribution of 2, 3 or n (where n is a small number) 172 'good' paths rather than all domain external paths. While the route 173 reflector chooses one set of n paths and distributes those same n 174 paths to all its route reflector clients, those n paths may not be 175 the right n paths for all clients. In the context of the problem 176 described above, those n paths will not necessarily include the 177 closest egress point out of the network for each route reflector 178 client. The mechanisms proposed in this document are likely to be 179 complementary to mechanisms aimed at improving path diversity. 181 2. Proposed solution 183 This document proposes a simple solution to the problem described 184 above - overwrite of the default IGP location placement of the route 185 reflector - which is used for determining cost to the next hop 186 contained in BGP paths. 188 The presented solution makes it possible for route reflector clients 189 to direct traffic to their closest exit point in hot potato routing 190 deployments, without requiring further state to be pushed out to the 191 edge. This solution is primarily applicable in deployments using 192 centralized route reflectors, which are typically implemented in 193 devices without a capable forwarding plane or which are being moved 194 to the NFV enabled cloud. 196 The solution rely upon all route reflectors learning all paths which 197 are eligible for consideration for hot potato routing. In order to 198 satisfy this requirement, path diversity enhancing mechanisms such as 199 add paths/diverse paths may need to be deployed between route 200 reflectors. 202 The core of the proposed solution is the ability for operator to 203 specify on a per route reflector basis or per peer/update group basis 204 or per neighbour basis the virtual IGP location placement allowing to 205 have given group of clients to consider optimal distance to the next 206 hops from the position of the configured virtual IGP location. The 207 choice of specific granularity is left to the implementation 208 decision. Implementation is considered as compliant with the 209 document if it supports at least one listed grouping of virtual IGP 210 placement. 212 The computation of the virtual IGP location with any of the above 213 described granularity is outside of the scope of this document. 214 Operator may configure it manually, implementation may automate it 215 based on specified heuristic or it can be computed centrally and 216 configured by external system. 218 By optimal we refer in this document to the decision made during best 219 path selection at the IGP metric to BGP next hop comparison step. 220 Clearly the overall path selection preference may be chosen based 221 other policy step and provisions as defined in this document would 222 not apply. 224 A significant advantage of this approach is that the RR clients do 225 not need to run new software or hardware. 227 3. Discussion 229 Determining the shortest path and associated cost between any two 230 arbitrary points in a network based on the IGP topology learned by a 231 router is expected to add some extra cost in terms of CPU resource. 232 However SPF tree generation code is now implemented efficiently in a 233 number of implementations, and therefor this is not expected to be a 234 major drawback. The number of SPTs computed in the general non- 235 hierarchical case is expected to be of the order of the number of 236 clients of an RR whenever a topology change is detected. Advanced 237 optimizations like partial and incremental SPF may also be exploited. 238 By the nature of route reflection, the number of clients can be split 239 arbitrarily by the deployment of more route reflectors for a given 240 number of clients. While this is not expected to be necessary in 241 existing networks with best in class route reflectors available 242 today, this avenue to scaling up the route reflection infrastructure 243 would be available. If we consider the overall network wide cost/ 244 benefit factor, the only alternative to achieve the same level of 245 optimality would require significantly increasing state on the edges 246 of the network, which, in turn, will consume CPU and memory resources 247 on all BGP speakers in the network. Building this client perspective 248 into the route reflectors seems appropriate. 250 4. Advantages and deployment considerations 252 The solution described provides a model for integrating the client 253 perspective into the best path computation for RRs. More 254 specifically, the choice of BGP path factors in the IGP metric 255 between the client and the nexthop, rather than the distance from the 256 RR to the nexthop. The documented method does not require any BGP or 257 IGP protocol changes as required changes are contained within the RR 258 implementation. 260 This solution can be deployed in traditional hop-by-hop forwarding 261 networks as well as in end-to-end tunneled environments. In the 262 networks where there are multiple route reflectors and hop-by-hop 263 forwarding without encapsulation, such optimizations should be 264 enabled in a consistent way on all route reflectors. Otherwise 265 clients may receive an inconsistent view of the network and in turn 266 lead to intra-domain forwarding loops. 268 With this approach, an ISP can effect a hot potato routing policy 269 even if route reflection has been moved from the forwarding plane 270 (example ABR) tothe core and hop-by-hop switching has been replaced 271 by end to end MPLS or IP encapsulation. 273 As per above, the approach reduces the amount of state which needs to 274 be pushed to the edge in order to perform hot potato routing. The 275 memory and CPU resource required at the edge to provide hot potato 276 routing using this approach is lower than what would be required in 277 order to achieve the same level of optimality by pushing and 278 retaining all available paths (potentially 10s) per each prefix at 279 the edge. 281 The proposal allows for a fast and safe transition to BGP control 282 plane route reflection without compromising an operator's closest 283 exit operational principle. Hot potato routing is important to most 284 ISPs. The inability to perform hot potato routing effectively stops 285 migrations to centralized route reflection and edge-to-edge LSP/IP 286 encapsulation for traffic to IPv4 and IPv6 prefixes. 288 Regarding potential for intra-domain forwarding loops at ASBR level, 289 this could be solved by enforcing external route preference or by 290 performing tunnel to external interface switching action on ASBRs. 292 Regarding client's IGP best-path selection, it should be self evident 293 that this solution does not interfere with policies enforced above 294 IGP tie breaking in the BGP best path algorithm. 296 The solution applies to NLRIs of all address families which can be 297 route reflected. 299 5. Security considerations 301 No new security issues are introduced to the BGP protocol by this 302 specification. 304 6. IANA Considerations 306 IANA is requested to allocate a type code for the Standard BGP 307 Community to be used for inter cluster propagation of angular 308 position of the clients. 310 IANA is requested to allocate a new type code from BGP OPEN Optional 311 Parameter Types registry to be used for Group_ID propagation. 313 7. Acknowledgments 315 Authors would like to thank Keyur Patel, Eric Rosen, Clarence 316 Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand and Jon 317 Mitchell for their valuable input. 319 8. References 321 8.1. Normative References 323 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 324 Requirement Levels", BCP 14, RFC 2119, March 1997. 326 [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway 327 Protocol 4 (BGP-4)", RFC 4271, January 2006. 329 [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended 330 Communities Attribute", RFC 4360, February 2006. 332 [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement 333 with BGP-4", RFC 5492, February 2009. 335 8.2. Informative References 337 [I-D.ietf-idr-add-paths] 338 Walton, D., Retana, A., Chen, E., and J. Scudder, 339 "Advertisement of Multiple Paths in BGP", draft-ietf-idr- 340 add-paths-10 (work in progress), October 2014. 342 [RFC1997] Chandrasekeran, R., Traina, P., and T. Li, "BGP 343 Communities Attribute", RFC 1997, August 1996. 345 [RFC1998] Chen, E. and T. Bates, "An Application of the BGP 346 Community Attribute in Multi-home Routing", RFC 1998, 347 August 1996. 349 [RFC4384] Meyer, D., "BGP Communities for Data Collection", BCP 114, 350 RFC 4384, February 2006. 352 [RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route 353 Reflection: An Alternative to Full Mesh Internal BGP 354 (IBGP)", RFC 4456, April 2006. 356 [RFC4893] Vohra, Q. and E. Chen, "BGP Support for Four-octet AS 357 Number Space", RFC 4893, May 2007. 359 [RFC5283] Decraene, B., Le Roux, JL., and I. Minei, "LDP Extension 360 for Inter-Area Label Switched Paths (LSPs)", RFC 5283, 361 July 2008. 363 [RFC5668] Rekhter, Y., Sangli, S., and D. Tappan, "4-Octet AS 364 Specific BGP Extended Community", RFC 5668, October 2009. 366 [RFC5714] Shand, M. and S. Bryant, "IP Fast Reroute Framework", RFC 367 5714, January 2010. 369 [RFC6774] Raszuk, R., Fernando, R., Patel, K., McPherson, D., and K. 370 Kumaki, "Distribution of Diverse BGP Paths", RFC 6774, 371 November 2012. 373 Authors' Addresses 374 Robert Raszuk 375 Mirantis Inc. 376 615 National Ave. #100 377 Mt View, CA 94043 378 USA 380 Email: robert@raszuk.net 382 Christian Cassar 383 Cisco Systems 384 10 New Square Park 385 Bedfont Lakes, FELTHAM TW14 8HA 386 UK 388 Email: ccassar@cisco.com 390 Erik Aman 391 TeliaSonera 392 Marbackagatan 11 393 Farsta SE-123 86 394 Sweden 396 Email: erik.aman@teliasonera.com 398 Bruno Decraene 399 Orange 400 38-40 rue du General Leclerc 401 Issy les Moulineaux cedex 9 92794 402 France 404 Email: bruno.decraene@orange.com 406 Stephane Litkowski 407 Orange 408 9 rue du chene germain 409 Cesson Sevigne 35512 410 France 412 Email: stephane.litkowski@orange.com