draft-ietf-idr-bgp-optimal-route-reflection-09.txt   draft-ietf-idr-bgp-optimal-route-reflection-10.txt 
IDR Working Group R. Raszuk IDR Working Group R. Raszuk
Internet-Draft Mirantis Inc. Internet-Draft Mirantis Inc.
Intended status: Standards Track C. Cassar Intended status: Standards Track C. Cassar
Expires: October 28, 2015 Cisco Systems Expires: January 3, 2016 Cisco Systems
E. Aman E. Aman
TeliaSonera TeliaSonera
B. Decraene B. Decraene
S. Litkowski S. Litkowski
Orange Orange
April 26, 2015 July 2, 2015
BGP Optimal Route Reflection (BGP-ORR) BGP Optimal Route Reflection (BGP-ORR)
draft-ietf-idr-bgp-optimal-route-reflection-09 draft-ietf-idr-bgp-optimal-route-reflection-10
Abstract Abstract
[RFC4456] asserts that, because the Interior Gateway Protocol (IGP) This document proposes a solution for BGP route reflectors to
cost to a given point in the network will vary across routers, "the facilitate the application of closest exit point policy (hot potato
route reflection approach may not yield the same route selection routing) without requiring further state or any new features to be
result as that of the full IBGP mesh approach." One practical placed on the RR clients. This solution is primarily applicable in
implication of this assertion is that the deployment of route deployments using centralized route reflectors.
reflection may thwart the ability to achieve hot potato routing. Hot
potato routing attempts to direct traffic to the closest AS egress
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 - and not necessarily closest to the
RR clients.
Section 11 of [RFC4456] describes a deployment approach and a set of
constraints which, if satsified, would result in the deployment of
route reflection yielding the same results as the iBGP full mesh
approach. Such a deployment approach would make route reflection
compatible with the application of hot potato routing policy.
As networks evolved to accommodate architectural requirements of new
services, tunneled (LSP/IP tunneling) networks with centralized route
reflectors became commonplace. This is one type of common deployment
where it would be impractical to satisfy the constraints described in
Section 11 of [RFC4456]. Yet, in such an environment, hot potato
routing policy remains desirable.
This document proposes a new solution which can be deployed to The solution relies upon all route reflectors learning all paths
facilitate the application of closest exit point policy in which are eligible for consideration for hot potato routing. Best
centralized route reflection deployments. 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 Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 28, 2015. This Internet-Draft will expire on January 3, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Proposed solution . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Problem Statement . . . . . . . . . . . . . . . . . . . . 2
3. Discussion . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2. Existing/Alternative Solutions . . . . . . . . . . . . . 3
4. Advantages and deployment considerations . . . . . . . . . . 6 2. Proposed Solution . . . . . . . . . . . . . . . . . . . . . . 4
5. Security considerations . . . . . . . . . . . . . . . . . . . 7 3. CPU and Memory Scalability . . . . . . . . . . . . . . . . . 5
4. Advantages and Deployment Considerations . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 7 8.1. Normative References . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . 8 8.2. Informative References . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction 1. Introduction
There are three types of BGP deployments within Autonomous Systems There are three types of BGP deployments within Autonomous Systems
today: full mesh, confederations and route reflection. 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.
BGP route reflection is the most popular way to distribute BGP routes 1.1. Problem Statement
between BGP speakers belonging to the same administrative domain.
Traditionally route reflectors have been deployed in the forwarding
path and carefully placed on the POP to core boundaries. That model
of BGP route reflector placement has started to evolve. The
placement of route reflectors outside the forwarding path was
triggered by applications which required traffic to be tunneled from
AS ingress PE to egress PE: for example L3VPN.
This evolving model of intra-domain network design has enabled [RFC4456] asserts that, because the Interior Gateway Protocol (IGP)
deployments of centralized route reflectors. Initially this model cost to a given point in the network will vary across routers, "the
was only employed for new address families e.g. L3VPNs, L2VPNs etc 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
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.
With edge to edge MPLS or IP encapsulation also being used to carry Section 11 of [RFC4456] describes a deployment approach and a set of
internet traffic, this model has been gradually extended to other BGP constraints which, if satisfied, would result in the deployment of
address families including IPv4 and IPv6 Internet routing. This is route reflection yielding the same results as the iBGP full mesh
also applicable to new services achieved with BGP as control plane approach. This deployment approach makes route reflection compatible
for example 6PE. 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.
Such centralized route reflectors can be placed on the POP to core The evolving model of intra-domain network design has enabled
boundaries, but they are often placed in arbitrary locations in the deployments of route reflectors outside of the forwarding path.
core of large networks. 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 Such deployments suffer from a critical drawback in the context of
best path selection. A route reflector with knowledge of multiple best path selection: A route reflector with knowledge of multiple
paths for a given prefix will typically (unless other techniques like paths for a given prefix will typically pick its best path and only
add paths are in use) pick the best path and only advertise that best advertise that best path to its clients. If the best path for a
path to the the route reflector clients. If the best path for a prefix is selected on the basis of an IGP tie break, the path
prefix is selected on the basis of an IGP tie break, the best path advertised will be the exit point closest to the route reflector.
advertised from the route reflector to its clients will be the exit But the clients will be in a different place in the network topology
point closest to the route reflector. But route reflector clients than the route reflector. In networks where the route reflectors are
will be in a place in the network topology which is different from not in the forwarding path, this difference will be even more acute.
the route reflector. In networks with centralized route reflectors, It follows that the best path chosen by the route reflector is not
this difference will be even more acute. It follows that the best necessarily the same as the path which would have been chosen by the
path chosen by the route reflector is not necessarily the same as the client if the client had considered the same set of candidate paths
path which would have been chosen by the client if the client as the route reflector. The path chosen by the client would have
considered the same set of candidate paths as the route reflector.
Furthermore, the path chosen by the client might have been a better
path from that chosen by the route reflector for traffic entering the
network at the client. The path chosen by the client would have
guaranteed the lowest cost and delay trajectory through the network. guaranteed the lowest cost and delay trajectory through the network.
Route reflector clients switch packets using routing information 1.2. Existing/Alternative Solutions
learnt from route reflectors which are not on the forwarding path of
the packet through the network even in the absence of end-to-end
encapsulation. In those cases the path chosen as best and propagated
to the clients will often not be the optimal path chosen by the
client given all available paths.
Eliminating the IGP distance to the BGP nexthop as a tie breaker on Eliminating the IGP distance to the BGP nexthop as a tie breaker on
centralized route reflectors does not address the issue. Ignoring centralized route reflectors does not address the issue. Ignoring
IGP distance to the BGP next hop results in the tie breaking IGP distance to the BGP next hop results in the tie breaking
procedure contributing the best path by differentiating between paths procedure contributing the best path by differentiating between paths
using attributes otherwise considered less important than IGP cost to using attributes otherwise considered less important than IGP cost to
the BGP nexthop. the BGP nexthop.
One possible valid solution or workaround to this problem requires One possible valid solution or workaround to the best path selection
sending all domain external paths from the RR to all its clients. problem requires sending all domain external paths from the RR to all
This approach suffers the significant drawback of pushing a large its clients. This approach suffers the significant drawback of
amount of BGP state to all the edge routers. In many networks, the pushing a large amount of BGP state to all edge routers. Many
number of EBGP peers over which full Internet routing information is networks receive full Internet routing information in a large number
received would correlate directly to the number of paths present in of locations. This could easily result in tens of paths for each
each ASBR. This could easily result in tens of paths for each prefix that would need to be distributed to clients.
prefix.
Notwithstanding this drawback, there are a number of reasons for Notwithstanding this drawback, there are a number of reasons for
sending more than just the single best path to the clients. Improved sending more than just the single best path to the clients. Improved
path diversity at the edge is a requirement for fast connectivity path diversity at the edge is a requirement for fast connectivity
restoration, and a requirement for effective BGP level load restoration, and a requirement for effective BGP level load
balancing. balancing.
In practical terms, add/diverse path deployments are expected to 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) 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 'good' paths rather than all domain external paths. While the route
reflector chooses one set of n paths and distributes those same n 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 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 the right n paths for all clients. In the context of the problem
described above, those n paths will not necessarily include the described above, those n paths will not necessarily include the
closest egress point out of the network for each route reflector closest egress point out of the network for each route reflector
client. The mechanisms proposed in this document are likely to be client. The mechanisms proposed in this document are likely to be
complementary to mechanisms aimed at improving path diversity. complementary to mechanisms aimed at improving path diversity.
2. Proposed solution 2. Proposed Solution
This document proposes a simple solution to the problem described
above - overwrite of the default IGP location placement of the route
reflector - which is used for determining cost to the next hop
contained in BGP paths.
The presented solution makes it possible for route reflector clients
to direct traffic to their closest exit point in hot potato routing
deployments, without requiring further state to be pushed out to the
edge. This solution is primarily applicable in deployments using
centralized route reflectors, which are typically implemented in
devices without a capable forwarding plane or which are being moved
to the NFV enabled cloud.
The solution rely 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 paths/diverse paths may need to be deployed between route
reflectors.
The core of the proposed solution is the ability for operator to 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 specify on a per route reflector basis or per peer/update group basis
or per neighbour basis the virtual IGP location placement allowing to or per neighbour basis the virtual IGP location placement of the
have given group of clients to consider optimal distance to the next route reflector. This enables having a given group of clients to
hops from the position of the configured virtual IGP location. The receive routes with optimal distance to the next hops from the
choice of specific granularity is left to the implementation position of the configured virtual IGP location. This also provides
decision. Implementation is considered as compliant with the 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 document if it supports at least one listed grouping of virtual IGP
placement. placement.
The computation of the virtual IGP location with any of the above
described granularity is outside of the scope of this document.
Operator may configure it manually, implementation may automate it
based on specified heuristic or it can be computed centrally and
configured by external system.
By optimal we refer in this document to the decision made during best 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. path selection at the IGP metric to BGP next hop comparison step.
Clearly the overall path selection preference may be chosen based This document does not apply to path selection preference based other
other policy step and provisions as defined in this document would policy steps and provisions.
not apply.
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 A significant advantage of this approach is that the RR clients do
not need to run new software or hardware. not need to run new software or hardware.
3. Discussion 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 Determining the shortest path and associated cost between any two
arbitrary points in a network based on the IGP topology learned by a 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 resource. router is expected to add some extra cost in terms of CPU resources.
However SPF tree generation code is now implemented efficiently in a However SPF tree generation code is now implemented efficiently in a
number of implementations, and therefor this is not expected to be a number of implementations, and therefore this is not expected to be a
major drawback. The number of SPTs computed in the general non- major drawback. The number of SPTs computed is expected to be of the
hierarchical case is expected to be of the order of the number of order of the number of clients of an RR whenever a topology change is
clients of an RR whenever a topology change is detected. Advanced detected. Advanced optimizations like partial and incremental SPF
optimizations like partial and incremental SPF may also be exploited. 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.
By the nature of route reflection, the number of clients can be split By the nature of route reflection, the number of clients can be split
arbitrarily by the deployment of more route reflectors for a given arbitrarily by the deployment of more route reflectors for a given
number of clients. While this is not expected to be necessary in number of clients. While this is not expected to be necessary in
existing networks with best in class route reflectors available existing networks with best in class route reflectors available
today, this avenue to scaling up the route reflection infrastructure today, this avenue to scaling up the route reflection infrastructure
would be available. If we consider the overall network wide cost/ would be available.
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 the network. Building this client perspective
into the route reflectors seems appropriate.
4. Advantages and deployment considerations 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
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 The solution described provides a model for integrating the client
perspective into the best path computation for RRs. More perspective into the best path computation for RRs. More
specifically, the choice of BGP path factors in the IGP metric specifically, the choice of BGP path factors in the IGP metric
between the client and the nexthop, rather than the distance from the between the client and the nexthop, rather than the distance from the
RR to the nexthop. The documented method does not require any BGP or RR to the nexthop.
IGP protocol changes as required changes are contained within the RR
implementation.
This solution can be deployed in traditional hop-by-hop forwarding This solution can be deployed in traditional hop-by-hop forwarding
networks as well as in end-to-end tunneled environments. In the networks as well as in end-to-end tunneled environments. In the
networks where there are multiple route reflectors and hop-by-hop networks where there are multiple route reflectors and hop-by-hop
forwarding without encapsulation, such optimizations should be forwarding without encapsulation, such optimizations should be
enabled in a consistent way on all route reflectors. Otherwise enabled in a consistent way on all route reflectors. Otherwise
clients may receive an inconsistent view of the network and in turn clients may receive an inconsistent view of the network and in turn
lead to intra-domain forwarding loops. lead to intra-domain forwarding loops.
With this approach, an ISP can effect a hot potato routing policy With this approach, an ISP can effect a hot potato routing policy
even if route reflection has been moved from the forwarding plane even if route reflection has been moved from the forwarding plane and
(example ABR) tothe core and hop-by-hop switching has been replaced hop-by-hop switching has been replaced by end-to-end MPLS or IP
by end to end MPLS or IP encapsulation. encapsulation.
As per above, the approach reduces the amount of state which needs to 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 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 memory and CPU resource required at the edge to provide hot potato
routing using this approach is lower than what would be required in routing using this approach is lower than what would be required in
order to achieve the same level of optimality by pushing and order to achieve the same level of optimality by pushing and
retaining all available paths (potentially 10s) per each prefix at retaining all available paths (potentially 10s) per each prefix at
the edge. the edge.
The proposal allows for a fast and safe transition to BGP control The proposal allows for a fast and safe transition to a BGP control
plane route reflection without compromising an operator's closest plane with centralized route reflection without compromising an
exit operational principle. Hot potato routing is important to most operator's closest exit operational principle. This enables edge-to-
ISPs. The inability to perform hot potato routing effectively stops edge LSP/IP encapsulation for traffic to IPv4 and IPv6 prefixes.
migrations to centralized route reflection and edge-to-edge LSP/IP
encapsulation for traffic to IPv4 and IPv6 prefixes.
Regarding potential for intra-domain forwarding loops at ASBR level,
this could be solved by enforcing external route preference or by
performing tunnel to external interface switching action on ASBRs.
Regarding 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.
The solution applies to NLRIs of all address families which can be Regarding the client's IGP best-path selection, it should be self
route reflected. evident that this solution does not interfere with policies enforced
above IGP tie breaking in the BGP best path algorithm.
5. Security considerations 5. Security Considerations
No new security issues are introduced to the BGP protocol by this No new security issues are introduced to the BGP protocol by this
specification. specification.
6. IANA Considerations 6. IANA Considerations
IANA is requested to allocate a type code for the Standard BGP This document does not request any IANA allocations.
Community to be used for inter cluster propagation of angular
position of the clients.
IANA is requested to allocate a new type code from BGP OPEN Optional
Parameter Types registry to be used for Group_ID propagation.
7. Acknowledgments 7. Acknowledgments
Authors would like to thank Keyur Patel, Eric Rosen, Clarence Authors would like to thank Keyur Patel, Eric Rosen, Clarence
Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand and Jon Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand and Jon
Mitchell for their valuable input. Mitchell for their valuable input.
8. References 8. References
8.1. Normative References 8.1. Normative References
 End of changes. 32 change blocks. 
166 lines changed or deleted 141 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/