draft-ietf-idr-bgp-optimal-route-reflection-20.txt   draft-ietf-idr-bgp-optimal-route-reflection-21.txt 
IDR Working Group R. Raszuk, Ed. IDR Working Group R. Raszuk, Ed.
Internet-Draft Bloomberg LP Internet-Draft Bloomberg LP
Intended status: Standards Track C. Cassar Intended status: Standards Track C. Cassar
Expires: July 11, 2020 Tesla Expires: December 18, 2020 Tesla
E. Aman E. Aman
Telia Company Telia Company
B. Decraene B. Decraene, Ed.
Orange Orange
K. Wang K. Wang
Juniper Networks Juniper Networks
January 8, 2020 June 16, 2020
BGP Optimal Route Reflection (BGP-ORR) BGP Optimal Route Reflection (BGP-ORR)
draft-ietf-idr-bgp-optimal-route-reflection-20 draft-ietf-idr-bgp-optimal-route-reflection-21
Abstract Abstract
This document proposes a solution for BGP route reflectors to allow This document defines an extension to BGP route reflectors. On route
them to choose the best path for their clients that the clients reflectors, BGP route selection is modified in order to choose the
themselves would have chosen under the same conditions, without best path for their clients standpoint, rather than from the route
requiring further state or any new features to be placed on the reflectors standpoint. Multiple type of granularity are proposed,
clients. This facilitates, for example, best exit point policy (hot from a per client BGP route selection or to a per peer group,
potato routing). This solution is primarily applicable in depending on the scaling and precision requirements on route
deployments using centralized route reflectors. selection. This solution is particularly applicable in deployments
using centralized route reflectors, where choosing the best route
based on the Route Reflector IGP location is suboptimal. This
facilitates, for example, best exit point policy (hot potato
routing).
The solution relies upon all route reflectors learning all paths The solution relies upon all route reflectors learning all paths
which are eligible for consideration. Best path selection is which are eligible for consideration. Best path selection is
performed in each route reflector based on a configured virtual performed in each route reflector based on the IGP cost from a
location in the IGP. The location can be the same for all clients or selected location in the link state IGP.
different per peer/update group or per peer. Best path selection can
also be performed based on user configured policies in each route
reflector.
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 https://datatracker.ietf.org/drafts/current/. Drafts is at https://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 July 11, 2020.
This Internet-Draft will expire on December 18, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 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
(https://trustee.ietf.org/license-info) in effect on the date of (https://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. Definitions of Terms Used in This Memo . . . . . . . . . . . 2 1. Definitions of Terms Used in This Memo . . . . . . . . . . . 3
2. Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Modifications to BGP Best Path selection . . . . . . . . . . 5
3.1. Problem Statement . . . . . . . . . . . . . . . . . . . . 4 3.1. IGP Based Best Path Selection from a different SPT root . 6
3.2. Existing/Alternative Solutions . . . . . . . . . . . . . 5 3.1.1. Restriction when BGP next hop is BGP prefix . . . . . 7
4. Two Proposed Solutions . . . . . . . . . . . . . . . . . . . 6 3.2. Best Path Selections granularity . . . . . . . . . . . . 7
4.1. Client's Perspective IGP Based Best Path Selection . . . 7 4. Solution Interactions . . . . . . . . . . . . . . . . . . . . 8
4.1.1. Restriction when BGP next hop is BGP prefix . . . . . 8 4.1. IGP and policy based optimal route refresh . . . . . . . 8
4.2. Client's Perspective Policy Based Best Path Selection . . 8 4.2. Add-paths plus IGP and policy optimal route refresh . . . 8
4.3. Solution Interactions . . . . . . . . . . . . . . . . . . 9 4.3. Likely Deployments and need for backup . . . . . . . . . 8
4.3.1. IGP and policy based optimal route refresh . . . . . 9 5. CPU and Memory Scalability . . . . . . . . . . . . . . . . . 9
4.3.2. Add-paths plus IGP and policy optimal route refresh . 9
4.3.3. Likely Deployments and need for backup . . . . . . . 9
5. CPU and Memory Scalability . . . . . . . . . . . . . . . . . 10
6. Advantages and Deployment Considerations . . . . . . . . . . 10 6. Advantages and Deployment Considerations . . . . . . . . . . 10
7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11
9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 11
10.1. Normative References . . . . . . . . . . . . . . . . . . 12 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 12
10.2. Informative References . . . . . . . . . . . . . . . . . 13 11.1. Normative References . . . . . . . . . . . . . . . . . . 12
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14 11.2. Informative References . . . . . . . . . . . . . . . . . 12
Appendix A. Appendix: alternative solutions with limited
applicability . . . . . . . . . . . . . . . . . . . 14
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15
1. Definitions of Terms Used in This Memo 1. Definitions of Terms Used in This Memo
NLRI - Network Layer Reachability Information. NLRI - Network Layer Reachability Information.
RIB - Routing Information Base. RIB - Routing Information Base.
AS - Autonomous System number. AS - Autonomous System number.
VRF - Virtual Routing and Forwarding instance. VRF - Virtual Routing and Forwarding instance.
skipping to change at page 3, line 41 skipping to change at page 3, line 47
best path selection - the decision process detailed in [RFC 4271] best path selection - the decision process detailed in [RFC 4271]
section 9.1.2 and its subsections section 9.1.2 and its subsections
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in BCP "OPTIONAL" in this document are to be interpreted as described in BCP
14 [RFC2119] [RFC8174] when, and only when, they appear in all 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
2. Authors 2. Introduction
Following authors substantially contributed to the current format of
the document:
Stephane Litkowski
Orange
9 rue du chene germain
Cesson Sevigne, 35512
France
stephane.litkowski@orange.com
Adam Chappell
Interoute Communications
31st Floor
25 Canada Square
London, E14 5LQ
United Kingdom
adam.chappell@interoute.com
3. 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. BGP route today: full mesh, confederations and route reflection. BGP route
reflection [RFC4456] is the most popular way to distribute BGP routes reflection [RFC4456] is the most popular way to distribute BGP routes
between BGP speakers belonging to the same Autonomous System. between BGP speakers belonging to the same Autonomous System.
However, in some situations, this method suffers from non-optimal However, in some situations, this method suffers from non-optimal
path selection. path selection.
3.1. Problem Statement
[RFC4456] asserts that, because the Interior Gateway Protocol (IGP) [RFC4456] asserts that, because the Interior Gateway Protocol (IGP)
cost to a given point in the network will vary across routers, "the cost to a given point in the network will vary across routers, "the
route reflection approach may not yield the same route selection route reflection approach may not yield the same route selection
result as that of the full IBGP mesh approach." One practical result as that of the full IBGP mesh approach." One practical
implication of this assertion is that the deployment of route implication of this assertion is that the deployment of route
reflection may thwart the ability to achieve hot potato routing. Hot reflection may thwart the ability to achieve hot potato routing. Hot
potato routing attempts to direct traffic to the best AS exit point potato routing attempts to direct traffic to the best AS exit point
in cases where no higher priority policy dictates otherwise. As a in cases where no higher priority policy dictates otherwise. As a
consequence of the route reflection method, the choice of exit point consequence of the route reflection method, the choice of exit point
for a route reflector and its clients will be the exit point best for for a route reflector and its clients will be the exit point best for
skipping to change at page 5, line 31 skipping to change at page 5, line 15
In addition, there are deployment scenarios where service providers In addition, there are deployment scenarios where service providers
want to have more control in choosing the exit points for clients want to have more control in choosing the exit points for clients
based on other factors, such as traffic type, traffic load, etc. based on other factors, such as traffic type, traffic load, etc.
This further complicates the issue and makes it less likely for the This further complicates the issue and makes it less likely for the
route reflector to select the best path from the client's route reflector to select the best path from the client's
perspective. It follows that the best path chosen by the route perspective. It follows that the best path chosen by the route
reflector is not necessarily the same as the path which would have 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 been chosen by the client if the client had considered the same set
of candidate paths as the route reflector. of candidate paths as the route reflector.
3.2. Existing/Alternative Solutions 3. Modifications to BGP Best Path selection
One possible valid solution or workaround to the best path selection
problem requires sending all domain external paths from the route
reflector 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
balancing.
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 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
o defer selection to end clients, but lose potential route scale
capacity
The latter can be a viable option, but it is clearly a decision that
needs to be made on an application and address family basis, with
strong consideration for the number of available paths per prefix
(which may even vary per prefix range, depending on peering policy,
e.g. consider bilateral peerings versus onward transit arrangements)
4. Two Proposed Solutions 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 IGP location of the route reflector. This core
ability enables the route reflector to send to a given group of
clients routes with shortest distance to the next hops from the
position of the selected IGP location. This core ability provides
for freedom of route reflector physical location, and allows
transient or permanent migration of this network control plane
function to an arbitrary location.
This document is describes two solution to allow a route reflector to The choice of specific granularity (route reflector basis, peer/
choose the best path for its clients that the clients themselves update group basis, or peer peer basis) is configured by the network
would have chosen had they considered the same set of candidate operator. An implementation is considered compliant with the
paths. document if it supports at least one listed grouping of IGP location.
For purposes of route selection, the perspective of a client can For purposes of route selection, the perspective of a client can
differ from that of a route reflector or another client in two differ from that of a route reflector or another client in two
distinct ways: distinct ways:
it can, and usually will, have a different position in the IGP it can, and usually will, have a different position in the IGP
topology, and topology, and
it can have a different routing policy. it can have a different routing policy.
These factors correspond to the issues described earlier. These factors correspond to the issues described earlier.
Accordingly, this document specifies two distinct modifications to
the best path algorithm, to address these two distinct factors. A This document defines, on BGP Route Reflectors [RFC4456], two changes
route reflector can implement either or both of the modifications in to the BGP Best Path selection algorithm:
order to allow it to choose the best path for its clients that the
The first change is related to the IGP cost to the BGP Next Hop,
which is done in the step e) in the BGP decision process. The
change consists in using the IGP cost from a different source than
the route reflector itself.
The second change is the granularity of the BGP decision process,
to allow for running multiple decisions process using different
perspective or policies.
A route reflector can implement either or both of the modifications
in order to allow it to choose the best path for its clients that the
clients themselves would have chosen given the same set of candidate clients themselves would have chosen given the same set of candidate
paths. paths.
Both modifications rely upon all route reflectors learning all paths Both modifications rely upon all route reflectors learning all paths
that are eligible for consideration. In order to satisfy this that are eligible for consideration. In order to satisfy this
requirement, path diversity enhancing mechanisms such as add-path/ requirement, path diversity enhancing mechanisms such as add-path may
diverse paths may need to be deployed between route reflectors. need to be deployed between route reflectors.
A significant advantage of these approaches is that the route A significant advantage of these approaches is that the route
reflector clients do not need to run new software or hardware. reflector clients do not need to run new software or hardware.
4.1. Client's Perspective IGP Based Best Path Selection 3.1. IGP Based Best Path Selection from a different SPT root
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 core ability enables the route reflector to send to
a given group of clients routes with shortest distance to the next
hops from the position of the configured virtual IGP location. This
core ability provides for freedom of route reflector location, and
allows transient or permanent migration of this network control plane
function to an arbitrary location.
The choice of specific granularity (route reflector basis, peer/
update group basis, or peer peer basis) is 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 In this approach, optimal refers 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.
This approach does not apply to path selection preference based on This approach does not apply to path selection preference based on
other policy steps and provisions. other policy steps and provisions.
The computation of the virtual IGP location with any of the above In addition to the change specified in [RFC4456] section 9, the BGP
described granularity is outside of the scope of this document. The Decision Process Tie Breaking rules ([RFC4271] Sect. 9.1.2.2) are
operator may configure it manually, implementation may automate it modified as follows.
based on heuristics, or it can be computed centrally and configured
by an external system.
This solution does not require any BGP or IGP protocol changes, as The below text in step e)
all required changes are contained within the route reflector
implementation. e) Remove from consideration any routes with less-preferred
interior cost. The interior cost of a route is determined by
calculating the metric to the NEXT_HOP for the route using the
Routing Table.
...is replaced by this new text:
e) Remove from consideration any routes with less-preferred
interior cost. The interior cost of a route is determined by
calculating the metric from the selected IGP location to the
NEXT_HOP for the route using the shortest IGP path tree rooted on
the selected IGP location.
This extension requires the knowledge of the IGP topology in order to
be able to compute the shortest path tree rooted on any location and
in particular on the selected IGP locations. This knowledge can be
gained with the use of the link state IGP such as IS-IS [ISO10589] or
OSPF [RFC2328] [RFC5340] or via BGP-LS [RFC7752]. If an IGP is used,
the selected IGP location MUST to be within the area/level of the
IGP.
The configuration of the IGP location is outside of the scope of this
document. The operator may configure it manually, implementation may
automate it based on heuristics, or it can be computed centrally and
configured by an external system.
This solution does not require any change (BGP or IGP) on the
clients, as all required changes are limited to the route reflector.
This solution applies to NLRIs of all address families, that can be This solution applies to NLRIs of all address families, that can be
route reflected. route reflected.
4.1.1. Restriction when BGP next hop is BGP prefix 3.1.1. Restriction when BGP next hop is BGP prefix
In situations where the BGP next hop is a BGP prefix itself the 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 metric of a route used for its resolution SHOULD be the final IGP
cost to reach such next hop. Implementations which can not inform 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 BGP of the final IGP metric to a recursive next hop SHOULD treat such
paths as least preferred during next hop metric comparison. However paths as least preferred during next hop metric comparison. However
such paths SHOULD still be considered valid for best path selection. such paths SHOULD still be considered valid for best path selection.
4.2. Client's Perspective Policy Based Best Path Selection 3.2. Best Path Selections granularity
Optimal route reflection based on virtual IGP location could reflect
the best path to the client from IGP cost perspective. However,
there are also cases where the client might want the best path based
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. BGP Route Reflector as per [RFC4456] runs the usual single Best Path
Selection used to compute the node's routing table. This may be
suboptimal or even not usuable when the Route Reflector clients has
significantly different IGP locations or BGP policies. In some
cases, there is a need to compute the Best Path Selection with an
increased granularity, such as per peer/update group or per client
basis.
The user MAY specify and apply a general policy on the route This requires running multiple best path selections or multiple
reflector to select a subset of exit points as the candidate exit subset of the best path selection. If the required routing
points for its clients. For a given client, the policy SHOULD also optimization is limited to the IGP cost to the BGP Next-Hop, which is
allow the operator to select different candidate exit points for typical if the goal is hot potato routing or a routing (more) similar
different address families. Regular path selection, including to the one resulting from an iBGP full mesh between clients, only the
client's perspective IGP based best path selection stated above, will step e) as defined [RFC4271] Sect. 9.1.2.2, needs to be duplicated
be applied to the candidate paths to select the final paths to on a per granularity basis. If the routing routing optimization
advertise to the clients. requires the use of different BGP policy for each element (e.g.
peer), the a larger part of the decision process needs to be
duplicated, up to the whole decision process as defined in section
9.1 of [RFC4271]. This is for example the case when there is a need
to use different policies to compute different degree of preference
during Pahse 1. This nedded for use cases involved traffic
engineering perspective, or dedicating certain exit points for
certain clients points.
Since the policy is applied on the route reflector on behalf of its In the latter case, the user MAY specify and apply a general policy
clients, the route reflector will be able to reflect only the optimal on the route reflector to select a subset of exit points as the
paths to its clients. An additional advantage of this approach is candidate exit points for its clients. For a given client, the
that configuration need only be done on a small number of route policy SHOULD also allow the operator to select different candidate
reflectors, rather than on a significantly larger number of clients. 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.
4.3. Solution Interactions 4. Solution Interactions
4.3.1. IGP and policy based optimal route refresh 4.1. IGP and policy based optimal route refresh
Depending on the actual deployment scenarios, service providers may Depending on the actual deployment scenarios, service providers may
configure IGP based optimal route reflection or policy based optimal configure IGP based optimal route reflection or policy based optimal
route reflection. It is also possible to configure both approaches route reflection. It is also possible to configure both approaches
together. In cases where both are configured together, policy based together. In cases where both are configured together, policy based
optimal route reflection MUST be applied first to select the optimal route reflection MUST be applied first to select the
candidate paths, then IGP based optimal route reflection can be candidate paths, then IGP based optimal route reflection can be
applied on top of the candidate paths to select the final path to applied on top of the candidate paths to select the final path to
advertise to the client. advertise to the client.
skipping to change at page 9, line 29 skipping to change at page 8, line 38
reflecting all paths to the client because the client either: does reflecting all paths to the client because the client either: does
not support add-paths or does not have the capacity to process all of not support add-paths or does not have the capacity to process all of
the paths. Typically the route reflector would just reflect a single the paths. Typically the route reflector would just reflect a single
optimal route to the client. However, the solutions MUST NOT prevent optimal route to the client. However, the solutions MUST NOT prevent
reflecting more than one optimal path to the client as path diversity reflecting more than one optimal path to the client as path diversity
may be desirable for load balancing or fast restoration. In cases may be desirable for load balancing or fast restoration. In cases
where add-path and optimal route reflection are configured together, where add-path and optimal route reflection are configured together,
the route reflector MUST reflect n optimal paths to a client, where n the route reflector MUST reflect n optimal paths to a client, where n
is the add-path count. is the add-path count.
4.3.2. Add-paths plus IGP and policy optimal route refresh 4.2. Add-paths plus IGP and policy optimal route refresh
The most complicated scenario is where add-path is configured The most complicated scenario is where add-path is configured
together with both IGP based and policy based optimal route together with both IGP based and policy based optimal route
reflection. In this scenario, the policy based optimal route reflection. In this scenario, the policy based optimal route
reflection MUST be applied first to select the candidate paths (from reflection MUST be applied first to select the candidate paths (from
add-path). Subsequently, IGP based optimal route reflection will be add-path). Subsequently, IGP based optimal route reflection will be
applied on top of the candidate paths to select the best n paths to applied on top of the candidate paths to select the best n paths to
advertise to the client. advertise to the client.
4.3.3. Likely Deployments and need for backup 4.3. Likely Deployments and need for backup
With IGP based optimal route reflection, even though the virtual IGP With IGP based optimal route reflection, even though the IGP location
location could be specified on a per route reflector basis or per could be specified on a per route reflector basis or per peer/update
peer/update group basis or per peer basis, in reality, it's most group basis or per peer basis, in reality, it's most likely to be
likely to be specified per peer/update group basis. All clients with specified per peer/update group basis. All clients with the same or
the same or similar IGP location can be grouped into the same peer/ similar IGP location can be grouped into the same peer/update group.
update group. A virtual IGP location is then specified for the peer/ An IGP location is then specified for the peer/update group. The
update group. The virtual location is usually specified as the location is usually specified as the location of one of the clients
location of one of the clients from the peer group or an ABR to the from the peer group or an ABR to the area where clients are located.
area where clients are located. Also, one or more backup virtual Also, one or more backup locations SHOULD be allowed to be specified
locations SHOULD be allowed to be specified for redundancy. for redundancy. Implementations may wish to take advantage of peer
Implementations may wish to take advantage of peer group mechanisms group mechanisms in order to provide for better scalability of
in order to provide for better scalability of optimal route reflector optimal route reflector client groups with similar properties.
client groups with similar properties.
5. CPU and Memory Scalability 5. CPU and Memory Scalability
For IGP based optimal route reflection, determining the shortest path For IGP based optimal route reflection, determining the shortest path
and associated cost between any two arbitrary points in a network 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 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 extra cost in terms of CPU resources. However, current SPF tree
generation code is implemented efficiently in a number of generation code is implemented efficiently in a number of
implementations, and therefore this is not expected to be a major implementations, and therefore this is not expected to be a major
drawback. The number of SPTs computed is expected to be of the order drawback. The number of SPTs computed is expected to be of the order
skipping to change at page 11, line 43 skipping to change at page 11, line 7
compromising an operator's closest exit operational principle. This compromising an operator's closest exit operational principle. This
enables edge-to-edge LSP/IP encapsulation for traffic to IPv4 and enables edge-to-edge LSP/IP encapsulation for traffic to IPv4 and
IPv6 prefixes. IPv6 prefixes.
Regarding the client's IGP best-path selection, it should be self Regarding the client's IGP best-path selection, it should be self
evident that this solution does not interfere with policies enforced evident that this solution does not interfere with policies enforced
above IGP tie breaking in the BGP best path algorithm. above IGP tie breaking in the BGP best path algorithm.
7. Security Considerations 7. Security Considerations
This document does not introduce any new BGP functionality therefor Similarly to [RFC4456], this extension to BGP does not change the
it does not change the underlying security issues inherent in the underlying security issues inherent in the existing IBGP [RFC4456].
existing IBGP path propagation when BGP Route Reflection [RFC4456] is
used.
It however enables the deployment of base BGP Route Reflection as It however enables the deployment of base BGP Route Reflection as
described in [RFC4456] to be possible using virtual compute described in [RFC4456] to be possible using virtual compute
environments without any negative consequence on the BGP routing path environments without any negative consequence on the BGP routing path
optimality. optimality.
This document does not introduce requirements for any new protection This document does not introduce requirements for any new protection
measures, but it also does not relax best operational practices for measures, but it also does not relax best operational practices for
keeping the IGP network stable or to pace rate of policy based IGP keeping the IGP network stable or to pace rate of policy based IGP
cost to next hops such that it does not have any substantial effect cost to next hops such that it does not have any substantial effect
skipping to change at page 12, line 24 skipping to change at page 11, line 34
This document does not request any IANA allocations. This document does not request any IANA allocations.
9. Acknowledgments 9. 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, Jon Filsfils, Uli Bornhauser, Russ White, Jakob Heitz, Mike Shand, Jon
Mitchell, John Scudder, Jeff Haas, Martin Djernaes, Daniele Mitchell, John Scudder, Jeff Haas, Martin Djernaes, Daniele
Ceccarelli, Kieran Milne, Job Snijders and Randy Bush for their Ceccarelli, Kieran Milne, Job Snijders and Randy Bush for their
valuable input. valuable input.
10. References 10. Contributors
10.1. Normative References Following persons substantially contributed to the current format of
the document:
Stephane Litkowski
Orange
9 rue du chene germain
Cesson Sevigne, 35512
France
stephane.litkowski@orange.com
Adam Chappell
Interoute Communications
31st Floor
25 Canada Square
London, E14 5LQ
United Kingdom
adam.chappell@interoute.com
11. References
11.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Border Gateway Protocol 4 (BGP-4)", RFC 4271, Border Gateway Protocol 4 (BGP-4)", RFC 4271,
DOI 10.17487/RFC4271, January 2006, DOI 10.17487/RFC4271, January 2006,
<https://www.rfc-editor.org/info/rfc4271>. <https://www.rfc-editor.org/info/rfc4271>.
skipping to change at page 13, line 5 skipping to change at page 12, line 39
February 2006, <https://www.rfc-editor.org/info/rfc4360>. February 2006, <https://www.rfc-editor.org/info/rfc4360>.
[RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement
with BGP-4", RFC 5492, DOI 10.17487/RFC5492, February with BGP-4", RFC 5492, DOI 10.17487/RFC5492, February
2009, <https://www.rfc-editor.org/info/rfc5492>. 2009, <https://www.rfc-editor.org/info/rfc5492>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
10.2. Informative References 11.2. Informative References
[ISO10589]
International Organization for Standardization,
"Intermediate system to Intermediate system intra-domain
routeing information exchange protocol for use in
conjunction with the protocol for providing the
connectionless-mode Network Service (ISO 8473)", ISO/
IEC 10589:2002, Second Edition, Nov 2002.
[RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities
Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996, Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996,
<https://www.rfc-editor.org/info/rfc1997>. <https://www.rfc-editor.org/info/rfc1997>.
[RFC1998] Chen, E. and T. Bates, "An Application of the BGP [RFC1998] Chen, E. and T. Bates, "An Application of the BGP
Community Attribute in Multi-home Routing", RFC 1998, Community Attribute in Multi-home Routing", RFC 1998,
DOI 10.17487/RFC1998, August 1996, DOI 10.17487/RFC1998, August 1996,
<https://www.rfc-editor.org/info/rfc1998>. <https://www.rfc-editor.org/info/rfc1998>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
DOI 10.17487/RFC2328, April 1998,
<https://www.rfc-editor.org/info/rfc2328>.
[RFC4384] Meyer, D., "BGP Communities for Data Collection", BCP 114, [RFC4384] Meyer, D., "BGP Communities for Data Collection", BCP 114,
RFC 4384, DOI 10.17487/RFC4384, February 2006, RFC 4384, DOI 10.17487/RFC4384, February 2006,
<https://www.rfc-editor.org/info/rfc4384>. <https://www.rfc-editor.org/info/rfc4384>.
[RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route [RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route
Reflection: An Alternative to Full Mesh Internal BGP Reflection: An Alternative to Full Mesh Internal BGP
(IBGP)", RFC 4456, DOI 10.17487/RFC4456, April 2006, (IBGP)", RFC 4456, DOI 10.17487/RFC4456, April 2006,
<https://www.rfc-editor.org/info/rfc4456>. <https://www.rfc-editor.org/info/rfc4456>.
[RFC4893] Vohra, Q. and E. Chen, "BGP Support for Four-octet AS [RFC4893] Vohra, Q. and E. Chen, "BGP Support for Four-octet AS
Number Space", RFC 4893, DOI 10.17487/RFC4893, May 2007, Number Space", RFC 4893, DOI 10.17487/RFC4893, May 2007,
<https://www.rfc-editor.org/info/rfc4893>. <https://www.rfc-editor.org/info/rfc4893>.
[RFC5283] Decraene, B., Le Roux, JL., and I. Minei, "LDP Extension [RFC5283] Decraene, B., Le Roux, JL., and I. Minei, "LDP Extension
for Inter-Area Label Switched Paths (LSPs)", RFC 5283, for Inter-Area Label Switched Paths (LSPs)", RFC 5283,
DOI 10.17487/RFC5283, July 2008, DOI 10.17487/RFC5283, July 2008,
<https://www.rfc-editor.org/info/rfc5283>. <https://www.rfc-editor.org/info/rfc5283>.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF
for IPv6", RFC 5340, DOI 10.17487/RFC5340, July 2008,
<https://www.rfc-editor.org/info/rfc5340>.
[RFC5668] Rekhter, Y., Sangli, S., and D. Tappan, "4-Octet AS [RFC5668] Rekhter, Y., Sangli, S., and D. Tappan, "4-Octet AS
Specific BGP Extended Community", RFC 5668, Specific BGP Extended Community", RFC 5668,
DOI 10.17487/RFC5668, October 2009, DOI 10.17487/RFC5668, October 2009,
<https://www.rfc-editor.org/info/rfc5668>. <https://www.rfc-editor.org/info/rfc5668>.
[RFC5714] Shand, M. and S. Bryant, "IP Fast Reroute Framework", [RFC5714] Shand, M. and S. Bryant, "IP Fast Reroute Framework",
RFC 5714, DOI 10.17487/RFC5714, January 2010, RFC 5714, DOI 10.17487/RFC5714, January 2010,
<https://www.rfc-editor.org/info/rfc5714>. <https://www.rfc-editor.org/info/rfc5714>.
[RFC6774] Raszuk, R., Ed., Fernando, R., Patel, K., McPherson, D., [RFC6774] Raszuk, R., Ed., Fernando, R., Patel, K., McPherson, D.,
and K. Kumaki, "Distribution of Diverse BGP Paths", and K. Kumaki, "Distribution of Diverse BGP Paths",
RFC 6774, DOI 10.17487/RFC6774, November 2012, RFC 6774, DOI 10.17487/RFC6774, November 2012,
<https://www.rfc-editor.org/info/rfc6774>. <https://www.rfc-editor.org/info/rfc6774>.
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and
S. Ray, "North-Bound Distribution of Link-State and
Traffic Engineering (TE) Information Using BGP", RFC 7752,
DOI 10.17487/RFC7752, March 2016,
<https://www.rfc-editor.org/info/rfc7752>.
[RFC7911] Walton, D., Retana, A., Chen, E., and J. Scudder, [RFC7911] Walton, D., Retana, A., Chen, E., and J. Scudder,
"Advertisement of Multiple Paths in BGP", RFC 7911, "Advertisement of Multiple Paths in BGP", RFC 7911,
DOI 10.17487/RFC7911, July 2016, DOI 10.17487/RFC7911, July 2016,
<https://www.rfc-editor.org/info/rfc7911>. <https://www.rfc-editor.org/info/rfc7911>.
Appendix A. Appendix: alternative solutions with limited applicability
One possible valid solution or workaround to the best path selection
problem requires sending all domain external paths from the route
reflector to all its clients. This approach suffers the significant
drawback of pushing a large amount of BGP state and churn 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
balancing.
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 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
o defer selection to end clients, but lose potential route scale
capacity
The latter can be a viable option, but it is clearly a decision that
needs to be made on an application and address family basis, with
strong consideration for the number of available paths per prefix
(which may even vary per prefix range, depending on peering policy,
e.g. consider bilateral peerings versus onward transit arrangements)
Authors' Addresses Authors' Addresses
Robert Raszuk (editor) Robert Raszuk (editor)
Bloomberg LP Bloomberg LP
731 Lexington Ave 731 Lexington Ave
New York City, NY 10022 New York City, NY 10022
USA USA
Email: robert@raszuk.net Email: robert@raszuk.net
skipping to change at page 14, line 29 skipping to change at page 16, line 4
UK UK
Email: ccassar@tesla.com Email: ccassar@tesla.com
Erik Aman Erik Aman
Telia Company Telia Company
Solna SE-169 94 Solna SE-169 94
Sweden Sweden
Email: erik.aman@teliacompany.com Email: erik.aman@teliacompany.com
Bruno Decraene (editor)
Bruno Decraene
Orange Orange
38-40 rue du General Leclerc
Issy les Moulineaux cedex 9 92794
France
Email: bruno.decraene@orange.com Email: bruno.decraene@orange.com
Kevin Wang Kevin Wang
Juniper Networks Juniper Networks
10 Technology Park Drive 10 Technology Park Drive
Westford, MA 01886 Westford, MA 01886
USA USA
Email: kfwang@juniper.net Email: kfwang@juniper.net
 End of changes. 40 change blocks. 
208 lines changed or deleted 262 lines changed or added

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