draft-ietf-lsvr-bgp-spf-14.txt   draft-ietf-lsvr-bgp-spf-15.txt 
Network Working Group K. Patel Network Working Group K. Patel
Internet-Draft Arrcus, Inc. Internet-Draft Arrcus, Inc.
Intended status: Standards Track A. Lindem Intended status: Standards Track A. Lindem
Expires: December 31, 2021 Cisco Systems Expires: January 2, 2022 Cisco Systems
S. Zandi S. Zandi
LinkedIn LinkedIn
W. Henderickx W. Henderickx
Nokia Nokia
June 29, 2021 July 1, 2021
BGP Link-State Shortest Path First (SPF) Routing BGP Link-State Shortest Path First (SPF) Routing
draft-ietf-lsvr-bgp-spf-14 draft-ietf-lsvr-bgp-spf-15
Abstract Abstract
Many Massively Scaled Data Centers (MSDCs) have converged on Many Massively Scaled Data Centers (MSDCs) have converged on
simplified layer 3 routing. Furthermore, requirements for simplified layer 3 routing. Furthermore, requirements for
operational simplicity have led many of these MSDCs to converge on operational simplicity have led many of these MSDCs to converge on
BGP as their single routing protocol for both their fabric routing BGP as their single routing protocol for both their fabric routing
and their Data Center Interconnect (DCI) routing. This document and their Data Center Interconnect (DCI) routing. This document
describes extensions to BGP to use BGP Link-State distribution and describes extensions to BGP to use BGP Link-State distribution and
the Shortest Path First (SPF) algorithm used by Internal Gateway the Shortest Path First (SPF) algorithm used by Internal Gateway
skipping to change at page 1, line 44 skipping to change at page 1, line 44
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 December 31, 2021. This Internet-Draft will expire on January 2, 2022.
Copyright Notice Copyright Notice
Copyright (c) 2021 IETF Trust and the persons identified as the Copyright (c) 2021 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
skipping to change at page 3, line 8 skipping to change at page 3, line 8
5.3. NEXT_HOP Manipulation . . . . . . . . . . . . . . . . . . 17 5.3. NEXT_HOP Manipulation . . . . . . . . . . . . . . . . . . 17
6. Decision Process with SPF Algorithm . . . . . . . . . . . . . 18 6. Decision Process with SPF Algorithm . . . . . . . . . . . . . 18
6.1. BGP NLRI Selection . . . . . . . . . . . . . . . . . . . 19 6.1. BGP NLRI Selection . . . . . . . . . . . . . . . . . . . 19
6.1.1. BGP Self-Originated NLRI . . . . . . . . . . . . . . 20 6.1.1. BGP Self-Originated NLRI . . . . . . . . . . . . . . 20
6.2. Dual Stack Support . . . . . . . . . . . . . . . . . . . 20 6.2. Dual Stack Support . . . . . . . . . . . . . . . . . . . 20
6.3. SPF Calculation based on BGP-LS-SPF NLRI . . . . . . . . 20 6.3. SPF Calculation based on BGP-LS-SPF NLRI . . . . . . . . 20
6.4. IPv4/IPv6 Unicast Address Family Interaction . . . . . . 25 6.4. IPv4/IPv6 Unicast Address Family Interaction . . . . . . 25
6.5. NLRI Advertisement . . . . . . . . . . . . . . . . . . . 25 6.5. NLRI Advertisement . . . . . . . . . . . . . . . . . . . 25
6.5.1. Link/Prefix Failure Convergence . . . . . . . . . . . 25 6.5.1. Link/Prefix Failure Convergence . . . . . . . . . . . 25
6.5.2. Node Failure Convergence . . . . . . . . . . . . . . 26 6.5.2. Node Failure Convergence . . . . . . . . . . . . . . 26
7. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 26 7. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 27
7.1. Processing of BGP-LS-SPF TLVs . . . . . . . . . . . . . . 26 7.1. Processing of BGP-LS-SPF TLVs . . . . . . . . . . . . . . 27
7.2. Processing of BGP-LS-SPF NLRIs . . . . . . . . . . . . . 27 7.2. Processing of BGP-LS-SPF NLRIs . . . . . . . . . . . . . 28
7.3. Processing of BGP-LS Attribute . . . . . . . . . . . . . 28 7.3. Processing of BGP-LS Attribute . . . . . . . . . . . . . 29
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 29 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
9. Security Considerations . . . . . . . . . . . . . . . . . . . 30 9. Security Considerations . . . . . . . . . . . . . . . . . . . 30
10. Management Considerations . . . . . . . . . . . . . . . . . . 31 10. Management Considerations . . . . . . . . . . . . . . . . . . 31
10.1. Configuration . . . . . . . . . . . . . . . . . . . . . 31 10.1. Configuration . . . . . . . . . . . . . . . . . . . . . 31
10.1.1. Link Metric Configuration . . . . . . . . . . . . . 31 10.1.1. Link Metric Configuration . . . . . . . . . . . . . 31
10.1.2. backoff-config . . . . . . . . . . . . . . . . . . . 31 10.1.2. backoff-config . . . . . . . . . . . . . . . . . . . 31
10.2. Operational Data . . . . . . . . . . . . . . . . . . . . 31 10.2. Operational Data . . . . . . . . . . . . . . . . . . . . 32
11. Implementation Status . . . . . . . . . . . . . . . . . . . . 32 11. Implementation Status . . . . . . . . . . . . . . . . . . . . 32
12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 32 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 33
13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 32 13. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 33
14. References . . . . . . . . . . . . . . . . . . . . . . . . . 33 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 33
14.1. Normative References . . . . . . . . . . . . . . . . . . 33 14.1. Normative References . . . . . . . . . . . . . . . . . . 33
14.2. Informational References . . . . . . . . . . . . . . . . 35 14.2. Informational References . . . . . . . . . . . . . . . . 35
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 36 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 37
1. Introduction 1. Introduction
Many Massively Scaled Data Centers (MSDCs) have converged on Many Massively Scaled Data Centers (MSDCs) have converged on
simplified layer 3 routing. Furthermore, requirements for simplified layer 3 routing. Furthermore, requirements for
operational simplicity have led many of these MSDCs to converge on operational simplicity have led many of these MSDCs to converge on
BGP [RFC4271] as their single routing protocol for both their fabric BGP [RFC4271] as their single routing protocol for both their fabric
routing and their Data Center Interconnect (DCI) routing [RFC7938]. routing and their Data Center Interconnect (DCI) routing [RFC7938].
This document describes an alternative solution which leverages BGP- This document describes an alternative solution which leverages BGP-
LS [RFC7752] and the Shortest Path First algorithm used by Internal LS [RFC7752] and the Shortest Path First algorithm used by Internal
skipping to change at page 22, line 40 skipping to change at page 22, line 40
next Prefix NLRI is examined in Step 4. next Prefix NLRI is examined in Step 4.
* If the Current-Prefix's corresponding prefix is not in the * If the Current-Prefix's corresponding prefix is not in the
LOC-RIB, the prefix is installed with the Current-Node's next- LOC-RIB, the prefix is installed with the Current-Node's next-
hops installed as the LOC-RIB route's next-hops and the metric hops installed as the LOC-RIB route's next-hops and the metric
being updated. If the IGP Route Tag TLV (1153) is included in being updated. If the IGP Route Tag TLV (1153) is included in
the Current-Prefix's NLRI Attribute, the tag(s) are installed the Current-Prefix's NLRI Attribute, the tag(s) are installed
in the current LOC-RIB route's tag(s). in the current LOC-RIB route's tag(s).
* If the Current-Prefix's corresponding prefix is in the LOC-RIB * If the Current-Prefix's corresponding prefix is in the LOC-RIB
and the cost is less than the current route's metric, the and the cost is less than the LOC-RIB route's metric, the
prefix is installed with the Current-Node's next-hops prefix is installed with the Current-Node's next-hops
replacing the LOC-RIB route's next-hops and the metric being replacing the LOC-RIB route's next-hops and the metric being
updated and any route tags removed. If the IGP Route Tag TLV updated and any route tags removed. If the IGP Route Tag TLV
(1153) is included in the Current-Prefix's NLRI Attribute, the (1153) is included in the Current-Prefix's NLRI Attribute, the
tag(s) are installed in the current LOC-RIB route's tag(s). tag(s) are installed in the current LOC-RIB route's tag(s).
* If the Current-Prefix's corresponding prefix is in the LOC-RIB * If the Current-Prefix's corresponding prefix is in the LOC-RIB
and the cost is the same as the current route's metric, the and the cost is the same as the LOC-RIB route's metric, the
Current-Node's next-hops will be merged with LOC-RIB route's Current-Node's next-hops will be merged with LOC-RIB route's
next-hops. If the IGP Route Tag TLV (1153) is included in the next-hops. If the number of merged next-hops exceeds the
Current-Prefix's NLRI Attribute, the tag(s) are merged into Equal-Cost Multi-Path (ECMP) limit, the number of next-hops is
the LOC-RIB route's current tags. reduced with next-hops on numbered links preferred over next-
hops on unnumbered links. Among next-hops on numbered links,
the next-hops with the highest IPv4 or IPv6 addresses are
preferred. Among next-hops on unnumbered links, the next-hops
with the highest Remote Identifiers are preferred [RFC5307].
If the IGP Route Tag TLV (1153) is included in the Current-
Prefix's NLRI Attribute, the tag(s) are merged into the LOC-
RIB route's current tags.
5. All the Link NLRI with the same Node Identifiers as the Current- 5. All the Link NLRI with the same Node Identifiers as the Current-
Node will be considered for installation. Each link will be Node will be considered for installation. Each link will be
examined and will be referred to in the following text as the examined and will be referred to in the following text as the
Current-Link. The cost of the Current-Link is the advertised IGP Current-Link. The cost of the Current-Link is the advertised IGP
Metric TLV (1095) from the Link NLRI BGP-LS attribute added to Metric TLV (1095) from the Link NLRI BGP-LS attribute added to
the cost to reach the Current-Node. If the Current-Node is for the cost to reach the Current-Node. If the Current-Node is for
the local BGP Router, the next-hop for the link will be a direct the local BGP Router, the next-hop for the link will be a direct
next-hop pointing to the corresponding local interface. For any next-hop pointing to the corresponding local interface. For any
other Current-Node, the next-hop(s) for the Current-Link will be other Current-Node, the next-hop(s) for the Current-Link will be
skipping to change at page 24, line 4 skipping to change at page 24, line 13
as follows: as follows:
+ If the Remote-Node's NLRI attribute includes an SPF Status + If the Remote-Node's NLRI attribute includes an SPF Status
TLV indicating the node is unreachable, the next link for TLV indicating the node is unreachable, the next link for
the Current-Node is examined in Step 5. the Current-Node is examined in Step 5.
+ All the Link NLRI corresponding the Remote-Node will be + All the Link NLRI corresponding the Remote-Node will be
searched for a Link NLRI pointing to the Current-Node. searched for a Link NLRI pointing to the Current-Node.
Each Link NLRI is examined for Remote Node Descriptors Each Link NLRI is examined for Remote Node Descriptors
matching the Current-Node and Link Descriptors matching matching the Current-Node and Link Descriptors matching
the Current-Link (e.g., sharing a common IPv4 or IPv6 the Current-Link. For numbered links to match, the Link
subnet). If both these conditions are satisfied for one Descriptors MUST share a common IPv4 or IPv6 subnet. For
of the Remote-Node's links, the bi-directional unnumbered links to match, the Current Link's Local
connectivity check succeeds and the Remote-Node may be Identifier MUST match the Remote Node Link's Remote
processed further. The Remote-Node's Link NLRI providing Identifier and the Current Link's Remote Identifier MUST
bi-directional connectivity will be referred to as the the Remote Node Link's Local Identifier [RFC5307]. If
Remote-Link. If no Remote-Link is found, the next link these conditions are satisfied for one of the Remote-
for the Current-Node is examined in Step 5. Node's links, the bi-directional connectivity check
succeeds and the Remote-Node may be processed further.
The Remote-Node's Link NLRI providing bi-directional
connectivity will be referred to as the Remote-Link. If
no Remote-Link is found, the next link for the Current-
Node is examined in Step 5.
+ If the Remote-Link NLRI attribute includes an SPF Status + If the Remote-Link NLRI attribute includes an SPF Status
TLV indicating the link is down, the Remote-Link NLRI is TLV indicating the link is down, the Remote-Link NLRI is
considered down and the next link for the Current-Node is considered down and the next link for the Current-Node is
examined in Step 5. examined in Step 5.
+ If the Remote-Node is not on the CAN-LIST, it is inserted + If the Remote-Node is not on the CAN-LIST, it is inserted
based on the cost. The Remote Node's cost is the cost of based on the cost. The Remote Node's cost is the cost of
Current-Node added the Current-Link's IGP Metric TLV Current-Node added the Current-Link's IGP Metric TLV
(1095). The next-hop(s) for the Remote-Node are inherited (1095). The next-hop(s) for the Remote-Node are inherited
skipping to change at page 32, line 39 skipping to change at page 33, line 9
It is up to the individual working groups to use this information as It is up to the individual working groups to use this information as
they see fit". they see fit".
The BGP-LS-SPF implementation status is documented in The BGP-LS-SPF implementation status is documented in
[I-D.psarkar-lsvr-bgp-spf-impl]. [I-D.psarkar-lsvr-bgp-spf-impl].
12. Acknowledgements 12. Acknowledgements
The authors would like to thank Sue Hares, Jorge Rabadan, Boris The authors would like to thank Sue Hares, Jorge Rabadan, Boris
Hassanov, Dan Frost, Matt Anderson, Fred Baker, Lukas Krattiger, Hassanov, Dan Frost, Matt Anderson, Fred Baker, Lukas Krattiger,
Yingzhen Qu for their review and comments. Thanks to Pushpasis Yingzhen Qu, and Haibo Wang for their review and comments. Thanks to
Sarkar for discussions on preventing a BGP SPF Router from being used Pushpasis Sarkar for discussions on preventing a BGP SPF Router from
for non-local traffic (i.e., transit traffic). being used for non-local traffic (i.e., transit traffic).
The authors extend special thanks to Eric Rosen for fruitful The authors extend special thanks to Eric Rosen for fruitful
discussions on BGP-LS-SPF convergence as compared to IGPs. discussions on BGP-LS-SPF convergence as compared to IGPs.
13. Contributors 13. Contributors
In addition to the authors listed on the front page, the following In addition to the authors listed on the front page, the following
co-authors have contributed to the document. co-authors have contributed to the document.
Derek Yeung Derek Yeung
skipping to change at page 36, line 5 skipping to change at page 36, line 25
[RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P. [RFC4915] Psenak, P., Mirtorabi, S., Roy, A., Nguyen, L., and P.
Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF", Pillay-Esnault, "Multi-Topology (MT) Routing in OSPF",
RFC 4915, DOI 10.17487/RFC4915, June 2007, RFC 4915, DOI 10.17487/RFC4915, June 2007,
<https://www.rfc-editor.org/info/rfc4915>. <https://www.rfc-editor.org/info/rfc4915>.
[RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for [RFC5286] Atlas, A., Ed. and A. Zinin, Ed., "Basic Specification for
IP Fast Reroute: Loop-Free Alternates", RFC 5286, IP Fast Reroute: Loop-Free Alternates", RFC 5286,
DOI 10.17487/RFC5286, September 2008, DOI 10.17487/RFC5286, September 2008,
<https://www.rfc-editor.org/info/rfc5286>. <https://www.rfc-editor.org/info/rfc5286>.
[RFC5307] Kompella, K., Ed. and Y. Rekhter, Ed., "IS-IS Extensions
in Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 5307, DOI 10.17487/RFC5307, October 2008,
<https://www.rfc-editor.org/info/rfc5307>.
[RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010, (BFD)", RFC 5880, DOI 10.17487/RFC5880, June 2010,
<https://www.rfc-editor.org/info/rfc5880>. <https://www.rfc-editor.org/info/rfc5880>.
[RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of [RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of
BGP, LDP, PCEP, and MSDP Issues According to the Keying BGP, LDP, PCEP, and MSDP Issues According to the Keying
and Authentication for Routing Protocols (KARP) Design and Authentication for Routing Protocols (KARP) Design
Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013, Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013,
<https://www.rfc-editor.org/info/rfc6952>. <https://www.rfc-editor.org/info/rfc6952>.
 End of changes. 14 change blocks. 
29 lines changed or deleted 46 lines changed or added

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