Internet DRAFT - draft-mitchell-rtgwg-pseudo-bgp-nh-cost
draft-mitchell-rtgwg-pseudo-bgp-nh-cost
Routing Area Working Group J. Mitchell
Internet-Draft October 19, 2015
Intended status: Informational
Expires: April 21, 2016
A Pseudo-Protocol for BGP Next Hop Cost Manipulation
draft-mitchell-rtgwg-pseudo-bgp-nh-cost-00
Abstract
This describes a local router implementation option that provides a
facility for the manipulation of the costs of IGP learned routes that
are utilized as BGP NextHops rather than using the SPF calculated
cost to the same route when running the BGP path selection algorithm.
The result is something that works like a pseudo-routing protocol but
only impacting the BGP decision making process.
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 http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 21, 2016.
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
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
Mitchell Expires April 21, 2016 [Page 1]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Implementation Overview . . . . . . . . . . . . . . . . . . . 3
3. Implementation Details . . . . . . . . . . . . . . . . . . . 3
3.1. Key-Value Store . . . . . . . . . . . . . . . . . . . . . 3
3.2. Cost Replacement Mechanism . . . . . . . . . . . . . . . 4
3.2.1. Simple Implementation Option . . . . . . . . . . . . 4
3.2.2. Alternative Implementation Option (for use with ORR) 4
3.2.3. IGP Shortcuts Like Implementation Option . . . . . . 5
3.2.4. Handling Router Maintenance . . . . . . . . . . . . . 5
4. Relationship to Other Work . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 7
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 7
8.1. Normative References . . . . . . . . . . . . . . . . . . 7
8.2. Informative References . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
In networks where out of band route reflectors are in use that also
deploy tunneling technologies such as RSVP-TE LSPs and where the
operator has selected to use non-IGP SPF derived metrics on those
tunnels which influence the BGP path selection process at the point
when it reaches step (e) of section 9.1.2.2 of [RFC4271], an operator
wishing to make the same decision for BGP prefixes that reach this
point in the process on a router which does not deploy the tunneling
technology has little capability to do so given existing
functionality available in vendor implementations. This limits the
ability for the out of band BGP route reflector from being deployed
in these networks without implementing the tunnel technologies in use
similiar to a router in the forwarding path (in band) or choosing to
live with the IGP SPF derived decision for this step, neither of
which are an ideal deployment scenario. Presumably, the metrics
configured on the tunnels deployed have value from a traffic
engineering standpoint versus the IGP derived metrics, and issues may
occur meeting the network requirements if the route reflector in
question were to make a different decision than that made by a
similarly located client.
This draft proposes a way for an implementation to provide a simple
capability to manipulate the cost to the typically IGP learned
prefixes that are utilized as BGP next hops.
Mitchell Expires April 21, 2016 [Page 2]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
2. Implementation Overview
A pseudo-protocol can be used to manipulate the cost to a BGP nexthop
in cases where the normal IGP SPF cost is not desirable. To
accomplish this, the pseudo-protocol would need the desired cost and
a way to inject this cost in the BGP bestpath calculation. This can
be accomplished via two components:
o A key-value store (e.g. an associative array) for associating
nexthop prefixes to costs
o A cost replacement mechanism for utilizing the looked up
information in place of the normally utilized IGP cost to the
nexthop available in the routing table when doing the BGP bestpath
calculation.
3. Implementation Details
As discussed above the implementation must provide two distinct
components, a key-value store and a cost replacement mechanism.
3.1. Key-Value Store
An implementation must provide a basic key-value store such as an
associative array to store the replacement cost information
configured by the operator. The key in this mechanism MUST be
represented by an actual prefix, typically a host route such a /32 in
IPv4 or a /128 for IPv6. The value stored to represent the nexthop
cost MUST be an unsigned integer with possible values of 0 to a
minimum of 2^32 to cover the maximum path metrics utilized by the
most widely deployed IGPs, such as OSPF [RFC2328] or IS-IS [RFC1195]
when utilizing wide metrics [RFC3784]. Implementations MAY support
maximum values up to 2^64 for a wider range of applications.
The implementation MAY choose to represent the operator input data
into the store directly in the router configuration or utilize a
separate storage mechanism to store the configured information,
however the implementation MUST persist this information through
router reload or other events regardless of local representation of
the data. An implementation MAY also provide a separate ephemeral
mechanism for this information that replaces information from the
persistent option, however no use case requiring this is discussed
further in the draft. Specifying the method for configuring these
values (for instance through CLI or NetConf/Yang) is out of the scope
of this draft.
Mitchell Expires April 21, 2016 [Page 3]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
3.2. Cost Replacement Mechanism
There are several implementation options for using the data in key-
value store described above to replace the BGP nexthop costs. These
are described in the sections below.
3.2.1. Simple Implementation Option
Upon finishing the computation of the SPF, or for non link-state
protocols, at any point upon which a route is due to be added or
updated in the routing information base (RIB), a lookup MUST be done
on the route in the key value store and the cost to the nexthop for
that prefix MUST be replaced by the value returned if one is
available. The implementation SHOULD provide a mechanism that allows
the operator to utilize either the nexthop replacement information or
the SPF or normal routing protocol derived cost. For instance an
implementation MAY do this by associating a different, operator
configurable, route preference with the routes created by the pseudo-
protocol versus the IGP protocol route preference. If the
replacement routes are installed into the RIB and Forwarding
Information Base (FIB) of the router, the associated Layer3 and
Layer2 information and any other adjacency information required to
forward on the route should be copied from the original route so that
traffic from the router itself is still forwarding correctly.
3.2.2. Alternative Implementation Option (for use with ORR)
In the case that the router performing the implementation described
in this document does not actually need to forward along the BGP
prefixes received (is out of band from a network traffic forwarding
standpoint) and has an implementation of BGP optimal route reflection
[I-D.ietf-idr-bgp-optimal-route-reflection] in place, the BGP nexthop
costs can be associated only with the decision made for the BGP
optimal route reflection group. The information in the local key-
value store could be used to replace directly the IGP costs from the
topology standpoint of the out of band router or the costs that would
have been computed from the virtual IGP placement configured by ORR.
In either of these cases, there is no need to actually place the
information in the RIB or FIB of the local router, if nexthop
information is stored only for the purpose of BGP bestpath
calculations, as it is not necessary for local decisions as long as
the appropriately configured BGP clients receive the appropriate
paths as a result from the BGP bestpath decision.
Mitchell Expires April 21, 2016 [Page 4]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
3.2.3. IGP Shortcuts Like Implementation Option
In some cases, operators may not find it sufficient to only replace
configured nexthop costs directly using the mechanism described
above. If the desire of the operator is to utilize the BGP pseudo-
protocol to mirror the operational BGP bestpath behavior of traffic
forwarding routers in the network that utilize RSVP-TE LSPs in
conjunction with a deployment of IGP Shortcuts [RFC3906], a more
complicated implementation approach can resolve such a use case. It
should be noted this implementation option is only required if in the
use case the operator utilizes an absolute or relative configured
metric for the on the RSVP-TE LSPs in question, and does not
dynamically derive the metrics to points beyond the tail-end of the
tunnel strictly from the IGP SPF cost to that prefix. In this
situation the implementation MAY attempt to come to same cost system
as this design requires by implementing a similar approach as
sections 4 through 6 of [RFC3906] describe but with the important
difference that the router running this implementation does not
actually have RSVP-TE LSPs configured. The way that they can
implement the approach is by considering at every node processed in
the SPF algorithm whether the key-value store contains an entry
representing the traffic engineering router id for that node (for
instance as described in Section 4.3 of [RFC5305] for IS-IS or for
OSPF, Section 3.4.1 of [RFC3630] or Section 3 of [RFC5329] for OSPFv2
and OSPFv3 respectively. If the key-value store does have such an
entry, the cost up to that step in the SPF algorithm should be
replaced with the value for that entry so the end result is that all
downstream derived costs are influenced by the replacement cost
looked up in the key-value store. This is similar in operation to
Section 5 of [RFC3906] with the same end result in respect to the
costs used by the BGP path selection process.
3.2.4. Handling Router Maintenance
Having a hard coded value that represents the cost to a prefix
negates the normal reaction of costs to network events and for the
most part this is the operator desired behavior when utilizing this
feature. However in the case where the prefix in question was sent
by a router that has been taken out of service from an IGP
standpoint, for instance by utilizing the IS-IS overload bit or by
configuring unusually high IGP costs, for instance as described in
[RFC6987], the operator's intentions are likely to be different in
respect to direct traffic to that prefix. To simplify the language,
this draft refers to any of these mechanisms as "overloading" the
router. To avoid utilizing the pseudo-protocol's costs in the case
of overloaded routers, an implementation MAY choose not to replace
the costs normally derived via the IGP (effectively ignoring the
existence of the entry in the key-value store) in the cases where
Mitchell Expires April 21, 2016 [Page 5]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
that entry represents a router or prefix which appears to be
overloaded. In the case of implementations that have the "IGP
Shortcuts Like Implementation" functionality, no cost replacements
should happen for any nodes beyond the node that appears to be
overloaded either.
4. Relationship to Other Work
The mechanism in this draft solves similar problems as those
described in BGP optimal route reflection
[I-D.ietf-idr-bgp-optimal-route-reflection] with the primary
differences being the source of the authoritative information for the
nexthop replacement cost information as well as the optional
implementation approach outlined for IGP Shortcut Like impact on
downstream routers.
Another draft aimed at similar use cases is
[I-D.ietf-idr-bgp-nh-cost] which currently proposes utilizing BGP-LS
to distribute next hop cost information from a controller or router
in the network to the router upon which cost manipulation may happen.
The primary difference between this draft and that is the reduced
protocol complexity. In networks that use absolute metrics on tunnel
infrastructure that influence BGP bestpath decisions, this
information is already typically centrally stored, so adding protocol
complexity necessary to send this information between routers and
then utilize that information received is not necessary for the
solution to be implemented. This draft does not require or propose
any BGP protocol extensions. Another advantage of this approach than
receiving the information from the client is the lack of delay as the
router doing the calculation is receiving SPF updates on a similar
timeframe as the client and is not waiting for it to finish the
calculation and then repackage the information after change into a
BGP-LS message to send to the out of band route reflector.
5. Security Considerations
The design does not introduce any additional security concerns.
General BGP security considerations are discussed in [RFC4271] and
[RFC4272].
6. IANA Considerations
This document includes no request to IANA.
Mitchell Expires April 21, 2016 [Page 6]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
7. Acknowledgements
Thanks to Ina Minei for initial review of this document and helpful
suggestions.
8. References
8.1. Normative References
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI
10.17487/RFC4271, January 2006,
<http://www.rfc-editor.org/info/rfc4271>.
8.2. Informative References
[RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and
dual environments", RFC 1195, DOI 10.17487/RFC1195,
December 1990, <http://www.rfc-editor.org/info/rfc1195>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, DOI 10.17487/
RFC2328, April 1998,
<http://www.rfc-editor.org/info/rfc2328>.
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630, DOI
10.17487/RFC3630, September 2003,
<http://www.rfc-editor.org/info/rfc3630>.
[RFC3784] Smit, H. and T. Li, "Intermediate System to Intermediate
System (IS-IS) Extensions for Traffic Engineering (TE)",
RFC 3784, DOI 10.17487/RFC3784, June 2004,
<http://www.rfc-editor.org/info/rfc3784>.
[RFC3906] Shen, N. and H. Smit, "Calculating Interior Gateway
Protocol (IGP) Routes Over Traffic Engineering Tunnels",
RFC 3906, DOI 10.17487/RFC3906, October 2004,
<http://www.rfc-editor.org/info/rfc3906>.
[RFC4272] Murphy, S., "BGP Security Vulnerabilities Analysis", RFC
4272, DOI 10.17487/RFC4272, January 2006,
<http://www.rfc-editor.org/info/rfc4272>.
[RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic
Engineering", RFC 5305, DOI 10.17487/RFC5305, October
2008, <http://www.rfc-editor.org/info/rfc5305>.
Mitchell Expires April 21, 2016 [Page 7]
Internet-Draft draft-mitchell-rtgwg-pseudo-bgp-nh-cost October 2015
[RFC5329] Ishiguro, K., Manral, V., Davey, A., and A. Lindem, Ed.,
"Traffic Engineering Extensions to OSPF Version 3", RFC
5329, DOI 10.17487/RFC5329, September 2008,
<http://www.rfc-editor.org/info/rfc5329>.
[RFC6987] Retana, A., Nguyen, L., Zinin, A., White, R., and D.
McPherson, "OSPF Stub Router Advertisement", RFC 6987, DOI
10.17487/RFC6987, September 2013,
<http://www.rfc-editor.org/info/rfc6987>.
[I-D.ietf-idr-bgp-optimal-route-reflection]
Raszuk, R., Cassar, C., Aman, E., Decraene, B., and S.
Litkowski, "BGP Optimal Route Reflection (BGP-ORR)",
draft-ietf-idr-bgp-optimal-route-reflection-10 (work in
progress), July 2015.
[I-D.ietf-idr-bgp-nh-cost]
Varlashkin, I., Raszuk, R., Patel, K., Bhardwaj, M., and
S. Bayraktar, "Carrying next-hop cost information in BGP",
draft-ietf-idr-bgp-nh-cost-02 (work in progress), May
2015.
Author's Address
Jon Mitchell
Email: jrmitche@puck.nether.net
Mitchell Expires April 21, 2016 [Page 8]