IDR Working Group                                              R. Raszuk
Internet-Draft                                             Mirantis Inc.
Intended status: Standards Track                               C. Cassar
Expires: January 3, 2016                                   Cisco Systems
                                                                 E. Aman
                                                             B. Decraene
                                                            S. Litkowski
                                                            July 2, 2015

                 BGP Optimal Route Reflection (BGP-ORR)


   This document proposes a solution for BGP route reflectors to
   facilitate the application of closest exit point policy (hot potato
   routing) without requiring further state or any new features to be
   placed on the RR clients.  This solution is primarily applicable in
   deployments using centralized route reflectors.

   The solution relies upon all route reflectors learning all paths
   which are eligible for consideration for hot potato routing.  Best
   path selection is performed in each route reflector based on a
   configured virtual location in the IGP.  The location can be the same
   for all clients or different per peer/update group or per neighbour.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   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

   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 January 3, 2016.

Raszuk, et al.           Expires January 3, 2016                [Page 1]

Internet-Draft        bgp-optimal-route-reflection             July 2015

Copyright Notice

   Copyright (c) 2015 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
   ( in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Problem Statement . . . . . . . . . . . . . . . . . . . .   2
     1.2.  Existing/Alternative Solutions  . . . . . . . . . . . . .   3
   2.  Proposed Solution . . . . . . . . . . . . . . . . . . . . . .   4
   3.  CPU and Memory Scalability  . . . . . . . . . . . . . . . . .   5
   4.  Advantages and Deployment Considerations  . . . . . . . . . .   6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   6
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .   7
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     8.2.  Informative References  . . . . . . . . . . . . . . . . .   7
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   8

1.  Introduction

   There are three types of BGP deployments within Autonomous Systems
   today: full mesh, confederations and route reflection.  BGP route
   reflection [RFC4456] is the most popular way to distribute BGP routes
   between BGP speakers belonging to the same Autonomous System.  In
   some situations, this method suffers from non-optimal path selection.

1.1.  Problem Statement

   [RFC4456] asserts that, because the Interior Gateway Protocol (IGP)
   cost to a given point in the network will vary across routers, "the
   route reflection approach may not yield the same route selection
   result as that of the full IBGP mesh approach."  One practical
   implication of this assertion is that the deployment of route
   reflection may thwart the ability to achieve hot potato routing.  Hot
   potato routing attempts to direct traffic to the closest AS egress

Raszuk, et al.           Expires January 3, 2016                [Page 2]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   point in cases where no higher priority policy dictates otherwise.
   As a consequence of the route reflection method, the choice of exit
   point for a route reflector and its clients will be the egress point
   closest to the route reflector - not necessarily the one closest to
   the RR clients.

   Section 11 of [RFC4456] describes a deployment approach and a set of
   constraints which, if satisfied, would result in the deployment of
   route reflection yielding the same results as the iBGP full mesh
   approach.  This deployment approach makes route reflection compatible
   with the application of hot potato routing policy.  In accordance
   with these design rules, route reflectors have traditionally often
   been deployed in the forwarding path and carefully placed on the POP
   to core boundaries.

   The evolving model of intra-domain network design has enabled
   deployments of route reflectors outside of the forwarding path.
   Initially this model was only employed for new address families, e.g.
   L3VPNs and L2VPNs.  This model has been gradually extended to other
   BGP address families including IPv4 and IPv6 Internet using either
   native routing or 6PE.  In such environments, hot potato routing
   policy remains desirable.

   Route reflectors outside of the forwarding path can be placed on the
   POP to core boundaries, but they are often placed in arbitrary
   locations in the core of large networks.

   Such deployments suffer from a critical drawback in the context of
   best path selection: A route reflector with knowledge of multiple
   paths for a given prefix will typically pick its best path and only
   advertise that best path to its clients.  If the best path for a
   prefix is selected on the basis of an IGP tie break, the path
   advertised will be the exit point closest to the route reflector.
   But the clients will be in a different place in the network topology
   than the route reflector.  In networks where the route reflectors are
   not in the forwarding path, this difference will be even more acute.
   It follows that the best path chosen by the route reflector is not
   necessarily the same as the path which would have been chosen by the
   client if the client had considered the same set of candidate paths
   as the route reflector.  The path chosen by the client would have
   guaranteed the lowest cost and delay trajectory through the network.

1.2.  Existing/Alternative Solutions

   Eliminating the IGP distance to the BGP nexthop as a tie breaker on
   centralized route reflectors does not address the issue.  Ignoring
   IGP distance to the BGP next hop results in the tie breaking
   procedure contributing the best path by differentiating between paths

Raszuk, et al.           Expires January 3, 2016                [Page 3]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   using attributes otherwise considered less important than IGP cost to
   the BGP nexthop.

   One possible valid solution or workaround to the best path selection
   problem requires sending all domain external paths from the RR to all
   its clients.  This approach suffers the significant drawback of
   pushing a large amount of BGP state to all edge routers.  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

   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 those same n
   paths 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 egress 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.

2.  Proposed Solution

   The core of the proposed solution is the ability for an operator to
   specify on a per route reflector basis or per peer/update group basis
   or per neighbour basis the virtual IGP location placement of the
   route reflector.  This enables having a given group of clients to
   receive routes with optimal distance to the next hops from the
   position of the configured virtual IGP location.  This also provides
   freedom on route reflector location and allows transient or permanent
   migration of such network control plane function to optimal location.
   The choice of specific granularity is left to the implementation
   decision.  An implementation is considered compliant with the
   document if it supports at least one listed grouping of virtual IGP

   By optimal we refer in this document to the decision made during best
   path selection at the IGP metric to BGP next hop comparison step.
   This document does not apply to path selection preference based other
   policy steps and provisions.

Raszuk, et al.           Expires January 3, 2016                [Page 4]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   The solution relies upon all route reflectors learning all paths
   which are eligible for consideration for hot potato routing.  In
   order to satisfy this requirement, path diversity enhancing
   mechanisms such as ADD-PATH/diverse paths may need to be deployed
   between route reflectors.

   A significant advantage of this approach is that the RR clients do
   not need to run new software or hardware.

   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 heuristic or it can be computed centrally and
   configured by an external system.

   The solution does not require any BGP or IGP protocol changes as
   required changes are contained within the RR implementation.

   The solution applies to NLRIs of all address families which can be
   route reflected.

3.  CPU and Memory Scalability

   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 SPF tree generation code is now implemented efficiently in a
   number of implementations, and therefore this is not expected to be a
   major drawback.  The number of SPTs computed is expected to be of the
   order of the number of clients of an RR 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

   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
   would be available.

   If we consider the overall network wide cost/benefit factor, the only
   alternative to achieve the same level of optimality would require
   significantly increasing state on the edges of the network, which, in
   turn, will consume CPU and memory resources on all BGP speakers in

Raszuk, et al.           Expires January 3, 2016                [Page 5]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   the network.  Building this client perspective into the route
   reflectors seems appropriate.

4.  Advantages and Deployment Considerations

   The solution described provides a model for integrating the client
   perspective into the best path computation for RRs.  More
   specifically, the choice of BGP path factors in the IGP metric
   between the client and the nexthop, rather than the distance from the
   RR to the nexthop.

   This solution 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 and in turn
   lead to intra-domain forwarding loops.

   With this approach, an ISP can effect a hot potato routing policy
   even if route reflection has been moved from the forwarding plane and
   hop-by-hop switching has been replaced by end-to-end MPLS or IP

   As per above, the approach reduces the amount of state which needs to
   be pushed to the edge in order to perform hot potato routing.  The
   memory and CPU resource required at the edge to provide hot potato
   routing using this approach is lower than what would be required in
   order to achieve the same level of optimality by pushing and
   retaining all available paths (potentially 10s) per each prefix at
   the edge.

   The proposal allows for a fast and safe transition to a BGP control
   plane with centralized route reflection without compromising an
   operator's closest exit operational principle.  This enables edge-to-
   edge LSP/IP encapsulation for traffic to IPv4 and IPv6 prefixes.

   Regarding the client's IGP best-path selection, it should be self
   evident that this solution does not interfere with policies enforced
   above IGP tie breaking in the BGP best path algorithm.

5.  Security Considerations

   No new security issues are introduced to the BGP protocol by this

Raszuk, et al.           Expires January 3, 2016                [Page 6]

Internet-Draft        bgp-optimal-route-reflection             July 2015

6.  IANA Considerations

   This document does not request any IANA allocations.

7.  Acknowledgments

   Authors would like to thank Keyur Patel, Eric Rosen, Clarence
   Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand and Jon
   Mitchell for their valuable input.

8.  References

8.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC4271]  Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
              Protocol 4 (BGP-4)", RFC 4271, January 2006.

   [RFC4360]  Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended
              Communities Attribute", RFC 4360, February 2006.

   [RFC5492]  Scudder, J. and R. Chandra, "Capabilities Advertisement
              with BGP-4", RFC 5492, February 2009.

8.2.  Informative References

              Walton, D., Retana, A., Chen, E., and J. Scudder,
              "Advertisement of Multiple Paths in BGP", draft-ietf-idr-
              add-paths-10 (work in progress), October 2014.

   [RFC1997]  Chandrasekeran, R., Traina, P., and T. Li, "BGP
              Communities Attribute", RFC 1997, August 1996.

   [RFC1998]  Chen, E. and T. Bates, "An Application of the BGP
              Community Attribute in Multi-home Routing", RFC 1998,
              August 1996.

   [RFC4384]  Meyer, D., "BGP Communities for Data Collection", BCP 114,
              RFC 4384, February 2006.

   [RFC4456]  Bates, T., Chen, E., and R. Chandra, "BGP Route
              Reflection: An Alternative to Full Mesh Internal BGP
              (IBGP)", RFC 4456, April 2006.

Raszuk, et al.           Expires January 3, 2016                [Page 7]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   [RFC4893]  Vohra, Q. and E. Chen, "BGP Support for Four-octet AS
              Number Space", RFC 4893, May 2007.

   [RFC5283]  Decraene, B., Le Roux, JL., and I. Minei, "LDP Extension
              for Inter-Area Label Switched Paths (LSPs)", RFC 5283,
              July 2008.

   [RFC5668]  Rekhter, Y., Sangli, S., and D. Tappan, "4-Octet AS
              Specific BGP Extended Community", RFC 5668, October 2009.

   [RFC5714]  Shand, M. and S. Bryant, "IP Fast Reroute Framework", RFC
              5714, January 2010.

   [RFC6774]  Raszuk, R., Fernando, R., Patel, K., McPherson, D., and K.
              Kumaki, "Distribution of Diverse BGP Paths", RFC 6774,
              November 2012.

Authors' Addresses

   Robert Raszuk
   Mirantis Inc.
   615 National Ave. #100
   Mt View, CA  94043


   Christian Cassar
   Cisco Systems
   10 New Square Park
   Bedfont Lakes, FELTHAM  TW14 8HA


   Erik Aman
   Marbackagatan 11
   Farsta  SE-123 86


Raszuk, et al.           Expires January 3, 2016                [Page 8]

Internet-Draft        bgp-optimal-route-reflection             July 2015

   Bruno Decraene
   38-40 rue du General Leclerc
   Issy les Moulineaux cedex 9  92794


   Stephane Litkowski
   9 rue du chene germain
   Cesson Sevigne  35512


Raszuk, et al.           Expires January 3, 2016                [Page 9]