rfc9816xml2.original.xml   rfc9816.xml 
<?xml version="1.0" encoding="US-ASCII"?> <?xml version='1.0' encoding='UTF-8'?>
<?rfc toc="yes"?>
<?rfc tocompact="yes"?> <!DOCTYPE rfc [
<?rfc tocdepth="3"?> <!ENTITY nbsp "&#160;">
<?rfc tocindent="yes"?> <!ENTITY zwsp "&#8203;">
<?rfc symrefs="yes"?> <!ENTITY nbhy "&#8209;">
<?rfc sortrefs="yes"?> <!ENTITY wj "&#8288;">
<?rfc comments="yes"?> ]>
<?rfc inline="yes"?>
<?rfc compact="yes"?> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" docName="draft-i
<?rfc subcompact="no"?> etf-lsvr-applicability-22" number="9816" ipr="trust200902" submissionType="IETF"
<rfc category="info" docName="draft-ietf-lsvr-applicability-22" tocDepth="3" version="3" tocInclude="true" symRefs="true" sortRefs="true" updat
ipr="trust200902" submissionType="IETF" tocDepth="5" version="2"> es="" obsoletes="" consensus="true" xml:lang="en">
<front> <front>
<!--[rfced] BGP-LS and SPF
a) Would you like to update the title of the document as shown below
or otherwise, to more closely match how "BGP-LS" and "SPF"
are handled in the title of RFC-to-be 9815?
Original:
Usage and Applicability of BGP Link-State Shortest Path
Routing (BGP-SPF) in Data Centers
Option A:
Usage and Applicability of BGP Link-State
Shortest Path First (SPF) Routing in Data Centers
Option B:
Usage and Applicability of BGP - Link State (BGP-LS)
Shortest Path First (SPF) Routing in Data Centers
b) To match how the companion document expands "BGP-LS" and
"SPF", may we update the Abstract and Introduction as shown
below for consistency?
Original (Abstract):
This document discusses the usage and applicability of BGP Link-State
Shortest Path First (BGP-SPF) extensions in data center networks
utilizing Clos or Fat-Tree topologies.
Perhaps:
This document discusses the usage and applicability of BGP - Link State
(BGP-LS) Shortest Path First (SPF) extensions in data center networks
utilizing Clos or Fat Tree topologies.
...
Original (Introduction):
This document complements [I-D.ietf-lsvr-bgp-spf] by discussing the
applicability of the BGP-SPF technology in a simple and fairly common
deployment scenario, which is described in Section 3.
Perhaps:
This document complements [RFC9815] by discussing the applicability of
the BGP - Link State (BGP-LS) Shortest Path First (SPF) technology in
a simple and fairly common deployment scenario, which is described in
Section 3.
c) Throughout the text, we note "BGP-SPF" vs. "BGP SPF". "BGP SPF" is
used both in the companion document and the IANA registry at
<https://www.iana.org/assignments/bgp-spf/>. Would you like to update
each instance of "BGP-SPF" to "BGP SPF" for consistency? See one
example below:
Original:
The document is intended to provide simplified guidance
for the deployment of BGP-SPF extensions.
Perhaps:
The document is intended to provide simplified guidance
for the deployment of BGP SPF extensions.
-->
<title abbrev="BGP-SPF Applicability">Usage and Applicability of BGP <title abbrev="BGP-SPF Applicability">Usage and Applicability of BGP
Link-State Shortest Path Routing (BGP-SPF) in Data Centers</title> Link-State Shortest Path Routing (BGP-SPF) in Data Centers</title>
<seriesInfo name="RFC" value="9816"/>
<author fullname="Keyur Patel" initials="K" surname="Patel"> <author fullname="Keyur Patel" initials="K" surname="Patel">
<organization>Arrcus, Inc.</organization> <organization>Arrcus, Inc.</organization>
<address> <address>
<postal> <postal>
<street>2077 Gateway Pl</street> <street>2077 Gateway Pl</street>
<city>San Jose</city><region>CA</region>
<city>San Jose, CA</city> <country>United States of America</country>
<country>USA</country>
<code>95110</code> <code>95110</code>
</postal> </postal>
<phone/>
<email>keyur@arrcus.com</email> <email>keyur@arrcus.com</email>
</address> </address>
</author> </author>
<author fullname="Acee Lindem" initials="A" surname="Lindem"> <author fullname="Acee Lindem" initials="A" surname="Lindem">
<organization>LabN Consulting, L.L.C.</organization> <organization>LabN Consulting, L.L.C.</organization>
<address> <address>
<postal> <postal>
<street>301 Midenhall Way</street> <street>301 Midenhall Way</street>
<city>Cary</city><region>NC</region>
<city>Cary, NC</city> <country>United States of America</country>
<country>USA</country>
<code>95110</code> <code>95110</code>
</postal> </postal>
<phone/>
<email>acee.ietf@gmail.com</email> <email>acee.ietf@gmail.com</email>
</address> </address>
</author> </author>
<author fullname="Shawn Zandi" initials="S" surname="Zandi"> <author fullname="Shawn Zandi" initials="S" surname="Zandi">
<organization>Linkedin</organization> <organization>LinkedIn</organization>
<address> <address>
<postal> <postal>
<street>222 2nd Street</street> <street>222 2nd Street</street>
<city>San Francisco</city> <city>San Francisco</city>
<region>CA</region> <region>CA</region>
<code>94105</code> <code>94105</code>
<country>United States of America</country>
<country>USA</country>
</postal> </postal>
<email>szandi@linkedin.com</email> <email>szandi@linkedin.com</email>
</address> </address>
</author> </author>
<author fullname="Gaurav Dawra" initials="G" surname="Dawra"> <author fullname="Gaurav Dawra" initials="G" surname="Dawra">
<organization>Linkedin</organization> <organization>Linkedin</organization>
<address> <address>
<postal> <postal>
<street>222 2nd Street</street> <street>222 2nd Street</street>
<city>San Francisco</city> <city>San Francisco</city>
<region>CA</region> <region>CA</region>
<code>94105</code> <code>94105</code>
<country>United States of America</country>
<country>USA</country>
</postal> </postal>
<email>gdawra@linkedin.com</email> <email>gdawra@linkedin.com</email>
</address> </address>
</author> </author>
<author fullname="Jie Dong" initials="J." surname="Dong"> <author fullname="Jie Dong" initials="J." surname="Dong">
<organization>Huawei Technologies</organization> <organization>Huawei Technologies</organization>
<address> <address>
<postal> <postal>
<street>No. 156 Beiqing Road</street> <street>No. 156 Beiqing Road</street>
<city>Beijing</city> <city>Beijing</city>
<region/>
<code/>
<country>China</country> <country>China</country>
</postal> </postal>
<email>jie.dong@huawei.com</email> <email>jie.dong@huawei.com</email>
</address> </address>
</author> </author>
<date month="July" year="2025"/>
<area>RTG</area>
<workgroup>lsvr</workgroup>
<date/> <!-- [rfced] Please insert any keywords (beyond those that appear in
the title) for use on https://www.rfc-editor.org/search. -->
<abstract> <abstract>
<t>This document discusses the usage and applicability of BGP Link-State <t>This document discusses the usage and applicability of BGP Link-State
Shortest Path First (BGP-SPF) extensions in data center networks Shortest Path First (BGP-SPF) extensions in data center networks
utilizing Clos or Fat-Tree topologies. The document is intended to utilizing Clos or Fat Tree topologies. The document is intended to
provide simplified guidance for the deployment of BGP-SPF provide simplified guidance for the deployment of BGP-SPF
extensions.</t> extensions.</t>
</abstract> </abstract>
</front> </front>
<middle> <middle>
<section title="Introduction"> <section>
<t>This document complements <xref format="default" <name>Introduction</name>
target="I-D.ietf-lsvr-bgp-spf"/> by discussing the applicability of the <t>This document complements <xref format="default" target="RFC9815"/> by
BGP-SPF technology in a simple and fairly common deployment scenario, discussing the applicability of the
which is described in <xref format="default" target="usecases"/>.</t> BGP-SPF technology in a simple and fairly common deployment scenario, whic
h is described in
<xref format="default" target="usecases"/>.</t>
<t><xref format="default" target="motivation"/> describes the reasons <t><xref format="default" target="motivation"/> describes the reasons
for BGP modifications for such deployments.</t> for BGP modifications for such deployments.</t>
<t><xref format="default" target="bgpspf"/> covers the BGP Link-State <t><xref format="default" target="bgpspf"/> covers the BGP-SPF protocol en
Shortest Path First (IGP-SPF) protocol enhancements to BGP to meet these hancements to BGP to meet these
requirements and their applicability to data center <xref requirements and their applicability to data center <xref format="default"
format="default" target="Clos"/> networks.</t> target="Clos"/> networks.</t>
</section> </section>
<section anchor="reco">
<name>Recommended Reading</name>
<section anchor="reco" title="Recommended Reading"> <!-- [rfced] We updated "RFC 5580" to "RFC 5880" in the following
sentence, and elsewhere in the document where "BFD" is
referenced, as "BFD" is defined in RFC 5880 and not mentioned
in RFC 5580. If this is not correct, please let us know.
Original:
This document also assumes knowledge of data center routing
protocols such as BGP [RFC4271], BGP-SPF [I-D.ietf-lsvr-bgp-spf], OSPF
[RFC2328] [RFC5340], as well as data center Operations,
Administration, and Maintenance (OAM) protocols like Link Layer
Discovery Protocol (LLDP) [RFC4957] and Bi- Directional Forwarding
Detection (BFD) [RFC5580].
Current:
This document also assumes knowledge of data center routing
protocols such as BGP [RFC4271], BGP-SPF [RFC9815], and OSPF
[RFC2328] [RFC5340] as well as data center Operations,
Administration, and Maintenance (OAM) protocols like the Link Layer
Discovery Protocol (LLDP) [RFC4957] and Bidirectional Forwarding
Detection (BFD) [RFC5580].
-->
<t>This document assumes knowledge of existing data center networks and <t>This document assumes knowledge of existing data center networks and
data center network topologies <xref format="default" target="Clos"/>. data center network topologies <xref format="default" target="Clos"/>.
This document also assumes knowledge of data center routing protocols This document also assumes knowledge of data center routing protocols
such as BGP <xref format="default" target="RFC4271"/>, BGP-SPF <xref such as BGP <xref format="default" target="RFC4271"/>, BGP-SPF <xref forma
format="default" target="I-D.ietf-lsvr-bgp-spf"/>, OSPF <xref t="default" target="RFC9815"/>, and OSPF <xref format="default" target="RFC2328"
format="default" target="RFC2328"/> <xref target="RFC5340"/>, as well as /> <xref target="RFC5340"/> as well as
data center Operations, Administration, and Maintenance (OAM) protocols data center Operations, Administration, and Maintenance (OAM) protocols
like Link Layer Discovery Protocol (LLDP) <xref format="default" like the Link Layer Discovery Protocol (LLDP) <xref format="default" targe
target="RFC4957"/> and Bi-Directional Forwarding Detection (BFD) <xref t="RFC4957"/> and Bidirectional Forwarding Detection (BFD) <xref format="default
format="default" target="RFC5580"/>.</t> " target="RFC5880"/>.</t>
</section> </section>
<section anchor="usecases">
<section anchor="usecases" title="Common Deployment Scenario"> <name>Common Deployment Scenario</name>
<t>Within a data center, servers are commonly interconnected using the <t>Within a data center, servers are commonly interconnected using the
Clos topology <xref format="default" target="Clos"/>. The Clos topology Clos topology <xref format="default" target="Clos"/>. The Clos topology
is fully non-blocking and the topology is realized using Equal Cost is fully non-blocking, and the topology is realized using Equal-Cost
Multi-Path (ECMP). In a multi-stage Clos topology, the minimum number of Multipath (ECMP). In a multi-stage Clos topology, the minimum number of
parallel paths in each tier is determined by the width of the stage as parallel paths in each tier is determined by the width of the stage as
shown in the figure 1.</t> shown in <xref target="fig1"/>.</t>
<figure anchor="fig1">
<t> <name>Illustration of the Basic Clos</name>
<figure anchor="fig1"> <artwork align="left" alt="" name="" type=""><![CDATA[
<name>Illustration of the basic Clos</name>
<artwork align="left" alt="" name="" type=""><![CDATA[
Tier 1 Tier 1
+-----+ +-----+
|NODE | |NODE |
+->| 1 |--+ +->| 1 |--+
| +-----+ | | +-----+ |
Tier 2 | | Tier 2 Tier 2 | | Tier 2
+-----+ | +-----+ | +-----+ +-----+ | +-----+ | +-----+
+------------->|NODE |--+->|NODE |--+--|NODE |--------------+ +------------->|NODE |--+->|NODE |--+--|NODE |--------------+
| +-----| 5 |--+ | 2 | +--| 7 |-----+ | | +-----| 5 |--+ | 2 | +--| 7 |-----+ |
| | +-----+ +-----+ +-----+ | | | | +-----+ +-----+ +-----+ | |
skipping to change at line 194 skipping to change at line 228
| +------+---->|NODE |--+ |NODE | +--|NODE |-----+------+ | | +------+---->|NODE |--+ |NODE | +--|NODE |-----+------+ |
| | | +---| 6 |--+->| 3 |--+--| 8 |---+ | | | | | | +---| 6 |--+->| 3 |--+--| 8 |---+ | | |
| | | | +-----+ | +-----+ | +-----+ | | | | | | | | +-----+ | +-----+ | +-----+ | | | |
| |Tier 3| | | | | |Tier 3| | | |Tier 3| | | | | |Tier 3| |
+-----+ +-----+ | +-----+ | +-----+ +-----+ +-----+ +-----+ | +-----+ | +-----+ +-----+
|NODE | |NODE | +->|NODE |--+ |NODE | |NODE | |NODE | |NODE | +->|NODE |--+ |NODE | |NODE |
| 9 | | 10 | | 4 | | 11 | | 12 | | 9 | | 10 | | 4 | | 11 | | 12 |
+-----+ +-----+ +-----+ +-----+ +-----+ +-----+ +-----+ +-----+ +-----+ +-----+
| | | | | | | | | | | | | | | | | | | | | | | |
<- Servers -> <- Servers -> <- Servers -> <- Servers ->
]]></artwork>
</figure>
Tier 1 is comprised of Nodes 1, 2, 3, and 4 <ul spacing="normal">
Tier 2 is comprised of Nodes 5, 6, 7, and 8 <li>Tier 1 is comprised of Nodes 1, 2, 3, and 4</li>
Tier 3 is comprised of Nodes 9, 10, 11, and 12 <li>Tier 2 is comprised of Nodes 5, 6, 7, and 8</li>
<li>Tier 3 is comprised of Nodes 9, 10, 11, and 12</li>
</ul>
]]></artwork>
</figure>
</t>
</section> </section>
<section anchor="motivation">
<section anchor="motivation" title="Justification for BGP-SPF Extension"> <name>Justification for the BGP-SPF Extension</name>
<t>To simplify L3 routing and operations, many data centers use BGP as a <t>To simplify Layer 3 (L3) routing and operations, many data centers use
BGP as a
routing protocol to create both an underlay and an overlay network for routing protocol to create both an underlay and an overlay network for
their Clos Topologies <xref format="default" target="RFC7938"/>. their Clos topologies <xref format="default" target="RFC7938"/>.
However, BGP is a path-vector routing protocol. Since it does not create However, BGP is a path-vector routing protocol. Since it does not create
a fabric topology, it uses hop-by-hop External BGP (EBGP) peering to a fabric topology, it uses hop-by-hop External BGP (EBGP) peering to
facilitate hop-by-hop routing to create the underlay network and to facilitate hop-by-hop routing to create the underlay network and to
resolve any overlay next hops. The hop-by-hop BGP peering paradigm resolve any overlay next hops. The hop-by-hop BGP peering paradigm
imposes several restrictions within a Clos. It prohibits the deployment imposes several restrictions within a Clos. It prohibits the deployment
of Route Reflectors/Route Controllers as the EBGP sessions are congruent of route reflectors / route controllers as the EBGP sessions are congruent
with the data path. The BGP best-path algorithm is prefix-based and it with the data path. The BGP best-path algorithm is prefix based, and it
prevents announcements of prefixes to other BGP speakers until the prevents announcements of prefixes to other BGP speakers until the
best-path decision process has been performed for the prefix at each best-path decision process has been performed for the prefix at each
intermediate hop. These restrictions significantly delay the overall intermediate hop. These restrictions significantly delay the overall
convergence of the underlay network within a Clos network.</t> convergence of the underlay network within a Clos network.</t>
<!--[rfced] "SPF" is not mentioned in RFC 9552. Should a different RFC be
referenced or was "OSPF" perhaps intended?
Original:
The BGP-SPF modifications allow BGP to overcome these limitations.
Furthermore, using the BGP-LS Network Layer Reachability Information
(NLRI) format allows the BGP-SPF data to be advertised for nodes,
links, and prefixes in the BGP routing domain and used for Short-
Path-First (SPF) computations [RFC9552].
-->
<t>The BGP-SPF modifications allow BGP to overcome these limitations. <t>The BGP-SPF modifications allow BGP to overcome these limitations.
Furthermore, using the BGP-LS Network Layer Reachability Information Furthermore, using the BGP-LS Network Layer Reachability Information
(NLRI) format allows the BGP-SPF data to be advertised for nodes, links, (NLRI) format allows the BGP-SPF data to be advertised for nodes, links,
and prefixes in the BGP routing domain and used for Short-Path-First and prefixes in the BGP routing domain and used for SPF computations <xref
(SPF) computations <xref target="RFC9552"/>.</t> target="RFC9552"/>.</t>
<t>Additional motivation for deploying BGP-SPF is included in <xref target
<t>Additional motivation for deploying BGP-SPF is included in <xref ="RFC9815"/>.</t>
target="I-D.ietf-lsvr-bgp-spf"/>.</t>
</section> </section>
<section anchor="bgpspf">
<section anchor="bgpspf" title="BGP-SPF Applicability to Clos Networks"> <name>BGP-SPF Applicability to Clos Networks</name>
<t>With the BGP-SPF extensions <xref format="default" <t>With the BGP-SPF extensions <xref format="default" target="RFC9815"/>,
target="I-D.ietf-lsvr-bgp-spf"/>, the BGP best-path computation and the BGP best-path computation and
route computation are replaced with link-state algorithms such as those route computation are replaced with link-state algorithms such as those
used by OSPF <xref format="default" target="RFC2328"/>, both to used by OSPF <xref format="default" target="RFC2328"/>, both to
determine whether an BGP-LS-SPF NLRI has changed and needs to be determine whether a BGP-LS-SPF NLRI has changed and needs to be
re-advertised and to compute the BGP routes. These modifications will readvertised and to compute the BGP routes. These modifications will
significantly improve convergence of the underlay while affording the significantly improve convergence of the underlay while affording the
operational benefits of a single routing protocol <xref format="default" operational benefits of a single routing protocol <xref format="default" t
target="RFC7938"/>.</t> arget="RFC7938"/>.</t>
<t>Data center controllers typically require visibility to the BGP <t>Data center controllers typically require visibility to the BGP
topology to compute traffic-engineered paths. These controllers learn topology to compute traffic-engineered paths. These controllers learn
the topology and other relevant information via the BGP-LS address the topology and other relevant information via the BGP-LS address
family <xref format="default" target="RFC9552"/> which is totally family <xref format="default" target="RFC9552"/>, which is totally
independent of the underlay address families (usually IPv4/IPv6 independent of the underlay address families (usually IPv4/IPv6
unicast). Furthermore, in traditional BGP underlays, all the BGP routers unicast). Furthermore, in traditional BGP underlays, all the BGP routers
will need to advertise their BGP-LS information independently. With the will need to advertise their BGP-LS information independently. With the
BGP-SPF extensions, controllers can learn the topology using the same BGP-SPF extensions, controllers can learn the topology using the same
BGP advertisements used to compute the underlay routes. Furthermore, BGP advertisements used to compute the underlay routes. Furthermore,
these data center controllers can avail the convergence advantages of these data center controllers can avail the convergence advantages of
the BGP-SPF extensions. The placement of controllers can be outside of the BGP-SPF extensions. The placement of controllers can be outside of
the forwarding path or within the forwarding path.</t> the forwarding path or within the forwarding path.</t>
<t>Alternatively, as each and every router in the BGP-SPF domain will <t>Alternatively, as each and every router in the BGP-SPF domain will
have a complete view of the topology, the operator can also choose to have a complete view of the topology, the operator can also choose to
configure BGP sessions in the hop-by-hop peering model described in configure BGP sessions in the hop-by-hop peering model described in
<xref format="default" target="RFC7938"/> along with BFD <xref <xref format="default" target="RFC7938"/> along with BFD <xref format="def
format="default" target="RFC5580"/>. In doing so, while the hop-by-hop ault" target="RFC5580"/>. In doing so, while the hop-by-hop
peering model lacks the inherent benefits of the controller-based model, peering model lacks the inherent benefits of the controller-based model,
BGP updates need not be serialized by the BGP best-path algorithm in BGP updates need not be serialized by the BGP best-path algorithm in
either of these models. This helps overall network convergence.</t> either of these models. This helps overall network convergence.</t>
<section anchor="lsvrsafi">
<section anchor="lsvrsafi" title="Usage of BGP-LS SPF SAFI"> <name>Usage of BGP-LS-SPF SAFI</name>
<t>Section 5.1 of <xref format="default" <t><xref section="5.1" sectionFormat="of" format="default" target="RFC98
target="I-D.ietf-lsvr-bgp-spf"/> defines a new BGP-LS-SPF SAFI for 15"/> defines a new BGP-LS-SPF SAFI for
announcement of the BGP-SPF link-state. The NLRI format and its announcement of the BGP-SPF link-state. The NLRI format and its
associated attributes follow the format of BGP-LS for node, link, and associated attributes follow the format of BGP-LS for node, link, and
prefix announcements. Whether the peering model within a Clos follows prefix announcements. Whether the peering model within a Clos follows
hop-by-hop peering described in <xref format="default" hop-by-hop peering described in <xref format="default" target="RFC7938"/
target="RFC7938"/> or any controller-based or route-reflector peering, > or any controller-based or route-reflector peering,
an operator can exchange BGP-LS-SPF SAFI routes over the BGP peering an operator can exchange BGP-LS-SPF SAFI routes over the BGP peering
by simply configuring BGP-LS-SPF SAFI between the necessary BGP by simply configuring BGP-LS-SPF SAFI between the necessary BGP
speakers.</t> speakers.</t>
<t>The BGP-LS-SPF SAFI can also coexist with BGP IP Unicast SAFI
<t>The BGP-LS-SPF SAFI can also co-exist with BGP IP Unicast SAFI <xref target="RFC4760"/>, which could exchange overlapping IP routes.
<xref target="RFC4760"/> which could exchange overlapping IP routes.
One use case for this is where BGP-LS-SPF routes are used for the One use case for this is where BGP-LS-SPF routes are used for the
underlay and BGP IP Unicast routes for VPNs are advertised in the underlay and BGP IP Unicast routes for VPNs are advertised in the
overlay as described in <xref target="RFC4364"/>. The routes received overlay as described in <xref target="RFC4364"/>. The routes received
by these SAFIs are evaluated, stored, and announced independently by these SAFIs are evaluated, stored, and announced independently
according to the rules of <xref format="default" target="RFC4760"/>. according to the rules of <xref format="default" target="RFC4760"/>.
The tie-breaking of route installation is a matter of the local The tiebreaking of route installation is a matter of the local
policies and preferences of the network operator.</t> policies and preferences of the network operator.</t>
<t>Finally, as the BGP-SPF peering is done following the procedures <t>Finally, as the BGP-SPF peering is done following the procedures
described in <xref format="default" target="RFC4271"/>, all the described in <xref format="default" target="RFC4271"/>, all the
existing transport security mechanisms including <xref existing transport security mechanisms including those in <xref format="
format="default" target="RFC5925"/> are available for the BGP-LS-SPF default" target="RFC5925"/> are available for the BGP-LS-SPF
SAFI.</t> SAFI.</t>
<section anchor="other-safi">
<section anchor="other-safi" <name>Relationship to Other BGP AFI/SAFI Tuples</name>
title="Relationship to Other BGP AFI/SAFI Tuples">
<t>Normally, the BGP-LS-SPF AFI/SAFI is used solely to compute the <t>Normally, the BGP-LS-SPF AFI/SAFI is used solely to compute the
underlay and is given precedence over other AFI/SAFIs in route underlay and is given precedence over other AFI/SAFIs in route
processing. Other BGP SAFIs, e.g., IPv6/IPv6 Unicast VPN would use processing. Other BGP SAFIs, e.g., IPv6/IPv6 unicast VPN, would use
the BGP-SPF computed routes for next hop resolution.</t> the BGP-SPF computed routes for next-hop resolution.</t>
</section> </section>
</section> </section>
<section anchor="peering">
<section anchor="peering" title="Peering Models"> <name>Peering Models</name>
<t>As previously stated, BGP-SPF can be deployed using the existing <t>As previously stated, BGP-SPF can be deployed using the existing
peering model where there is a single-hop BGP session on each and peering model where there is a single-hop BGP session on each and
every link in the data center fabric <xref format="default" every link in the data center fabric <xref format="default" target="RFC7
target="RFC7938"/>. This provides for both the advertisement of routes 938"/>. This provides for both the advertisement of routes
and the determination of link and neighboring router availability. and the determination of link and neighboring router availability.
With BGP-SPF, the underlay will converge faster due to changes to the With BGP-SPF, the underlay will converge faster due to changes to the
decision process that will allow NLRI changes to be advertised faster decision process that will allow NLRI changes to be advertised faster
after detecting a change.</t> after detecting a change.</t>
<section anchor="sparse-peering">
<section anchor="sparse-peering" title="Sparse Peering Model"> <name>Sparse Peering Model</name>
<t>Alternately, BFD <xref format="default" target="RFC5580"/> can be <t>Alternately, BFD <xref format="default" target="RFC5580"/> can be
used to swiftly determine the availability of links and the BGP used to swiftly determine the availability of links, and the BGP
peering model can be significantly sparser than the data center peering model can be significantly sparser than the data center
fabric. BGP-SPF sessions only need to be established with enough fabric. BGP-SPF sessions only need to be established with enough
peers to provide a bi-connected graph. If Internal BGP (IBGP) is peers to provide a biconnected graph. If Internal BGP (IBGP) is
used, then the BGP routers at tier N-1 will act as route-reflectors used, then the BGP routers at tier N-1 will act as route-reflectors
for the routers at tier N.</t> for the routers at tier N.</t>
<t>The obvious usage of sparse peering is to avoid parallel BGP <t>The obvious usage of sparse peering is to avoid parallel BGP
sessions on links between the same two routers in the data center sessions on links between the same two routers in the data center
fabric. However, this use case is not very useful since parallel L3 fabric. However, this use case is not very useful since parallel L3
links between the same two BGP routers are rare in Clos or Fat-Tree links between the same two BGP routers are rare in Clos or Fat Tree
topologies. Additionally, when there are multiple links, they are topologies. Additionally, when there are multiple links, they are
often aggregated at the link layer using Link Aggregation Groups often aggregated using Link Aggregation Groups
(LAGs) <xref target="IEEE.802.1AX"/> rather than at the IP layer. (LAGs) at the link layer <xref target="IEEE.802.1AX"/> rather than at
the IP layer.
Two more interesting scenarios are described below.</t> Two more interesting scenarios are described below.</t>
<t>In current data center topologies, there is often a very dense <t>In current data center topologies, there is often a very dense
mesh of links between levels, e.g., leaf and spine, providing mesh of links between levels, e.g., leaf and spine, providing
32-way, 64-way, or more Equal-Cost Multi-Path (ECMP) paths. In these 32-way paths, 64-way paths, or more ECMPs. In these
topologies, it is desirable not to have a BGP session on every link topologies, it is desirable not to have a BGP session on every link,
and techniques such as the one described in <xref format="default" and techniques such as the one described in <xref format="default" tar
target="bi-connected"/> can be used to establish sessions on some get="bi-connected"/> can be used to establish sessions on some
subset of northbound links. For example, in a Spine-Leaf topology, subset of northbound links. For example, in a Spine/Leaf topology,
each leaf router would only peer with a subset of the spines each leaf router would only peer with a subset of the spines
dependent on the flooding redundancy required to be reasonably dependent on the flooding redundancy required to be reasonably
certain that every node within the BGP-SPF routing domain has the certain that every node within the BGP-SPF routing domain has the
complete topology.</t> complete topology.</t>
<t>Alternately, controller-based data center topologies are <t>Alternately, controller-based data center topologies are
envisioned where BGP speakers within the data center only establish envisioned where BGP speakers within the data center only establish
BGP sessions with two or more controllers. In these topologies, BGP sessions with two or more controllers. In these topologies,
fabric nodes below the first tier, as shown in Figure 1 of <xref fabric nodes below the first tier, as shown in Figure 1 of <xref forma
format="default" target="RFC7938"/>, will establish BGP multi-hop t="default" target="RFC7938"/>, will establish BGP multi-hop
sessions with the controllers. For the multi-hop sessions, sessions with the controllers. For the multi-hop sessions,
determining the route to the controllers without depending on BGP determining the route to the controllers without depending on BGP
would need to be through some other means beyond the scope of this would need to be through some other means beyond the scope of this
document. However, the BGP discovery mechanisms described in <xref document. However, the BGP discovery mechanisms described in <xref for
format="default" target="bgp-discovery"/> would be one mat="default" target="bgp-discovery"/> would be one
possibility.</t> possibility.</t>
</section> </section>
<section anchor="bi-connected">
<section anchor="bi-connected" title="Bi-Connected Graph Heuristic"> <name>Biconnected Graph Heuristic</name>
<t>With this heuristic, discovery of BGP SPF peers is assumed, e.g., <t>With a biconnected graph heuristic, discovery of BGP SPF peers is a
ssumed, e.g.,
as described in <xref format="default" target="bgp-discovery"/>. In as described in <xref format="default" target="bgp-discovery"/>. In
this context, "bi-connected" refers to the fact that there must be this context, "biconnected" refers to the fact that there must be
an adverised link NLRI for both BGP SPF peers associated with the an advertised Link NLRI for both BGP and SPF peers associated with the
link before the link can be used in the BGP SPF route calcuation. link before the link can be used in the BGP SPF route calculation.
Additionally, it assumed that the direction of the peering can be Additionally, it is assumed that the direction of the peering can be
ascertained. In the context of a data center fabric, the direction ascertained. In the context of a data center fabric, the direction
is either northbound (toward the spine), southbound (toward the is either northbound (toward the spine), southbound (toward the
Top-Of-Rack (ToR) routers) or east-west (same level in the Top-of-Rack (ToR) routers), or east-west (same level in the
hierarchy). The determination of the direction is beyond the scope hierarchy). The determination of the direction is beyond the scope
of this document. However, it would be reasonable to assume a of this document. However, it would be reasonable to assume a
technique where the ToR routers can be identified and the number of technique where the ToR routers can be identified and the number of
hops to the ToR is used to determine the direction.</t> hops to the ToR is used to determine the direction.</t>
<t>In this heuristic, BGP speakers allow passive session <t>In this heuristic, BGP speakers allow passive session
establishment for southbound BGP sessions. For northbound sessions, establishment for southbound BGP sessions. For northbound sessions,
BGP speakers will attempt to maintain two northbound BGP sessions BGP speakers will attempt to maintain two northbound BGP sessions
with different routers. For east-west sessions, passive BGP session with different routers. For east-west sessions, passive BGP session
establishment is allowed. However, a BGP speaker will never actively establishment is allowed. However, a BGP speaker will never actively
establish an east-west BGP session unless it cannot establish two establish an east-west BGP session unless it cannot establish two
northbound BGP sessions.</t> northbound BGP sessions.</t>
<t>BGP SPF sparse peering deployments not using this heuristic are
<t>BGP SPF sparse peering deployments not using this hueristic are
possible but are not described herein and are considered out of possible but are not described herein and are considered out of
scope.</t> scope.</t>
</section> </section>
</section> </section>
<section anchor="bgp-policy">
<section anchor="bgp-policy" title="BGP Spine/Leaf Topology Policy"> <name>BGP Spine/Leaf Topology Policy</name>
<t>One of the advantages of using BGP-SPF as the underlay protocol is <t>One of the advantages of using BGP-SPF as the underlay protocol is
that BGP policy can be applied at any level. For example, depending on that BGP policy can be applied at any level. For example, depending on
the topology, it may be possible to aggregate or filter prefix the topology, it may be possible to aggregate or filter prefix
advertisements using existing BGP policy. In Spine/Leaf topologies, it advertisements using the existing BGP policy. In Spine/Leaf topologies,
is not necessary to advertise BGP-LS Prefix NLRI received by leaf it
nodes from the spine back to other spine nodes. If a common AS is used is not necessary to advertise a BGP-LS Prefix NLRI received by leaf
nodes from the spine back to other spine nodes. If a common Autonomous S
ystem (AS) is used
for the spine nodes, this can easily be accomplished with EBGP and a for the spine nodes, this can easily be accomplished with EBGP and a
simple policy to filter advertisements from the leaves to the spine if simple policy to filter advertisements from the leaves to the spine if
the first AS in the AS path is the spine AS.</t> the first AS in the AS path is the spine AS.</t>
<t>In the figure below, the leaves would not advertise any NLRIs with
<t>In the figure below, the leaves would not advertise any NLRI with
AS 64512 as the first AS in the AS path.</t> AS 64512 as the first AS in the AS path.</t>
<figure anchor="fig2">
<t> <name>Spine/Leaf Topology Policy</name>
<figure anchor="fig2"> <artwork align="left" alt="" name="" type=""><![CDATA[
<name>Spine/Leaf Topology Policy</name>
<artwork align="left" alt="" name="" type=""><![CDATA[
+--------+ +--------+ +--------+ +--------+ +--------+ +--------+
AS 64512 | | | | | | AS 64512 | | | | | |
for Spine | Spine 1+----+ Spine 2+- ......... -+ Spine N| for Spine | Spine 1+----+ Spine 2+- ......... -+ Spine N|
Nodes at | | | | | | Nodes at | | | | | |
this Level +-+-+-+-++ ++-+-+-+-+ +-+-+-+-++ this Level +-+-+-+-++ ++-+-+-+-+ +-+-+-+-++
+------+ | | | | | | | | | | | +------+ | | | | | | | | | | |
| +-----|-|-|------+ | | | | | | | | +-----|-|-|------+ | | | | | | |
| | +--|-|-|--------+-|-|-----------------+ | | | | | +--|-|-|--------+-|-|-----------------+ | | |
| | | | | | +---+ | | | | | | | | | | | +---+ | | | | |
| | | | | | | +--|-|-------------------+ | | | | | | | | | +--|-|-------------------+ | |
| | | | | | | | | | +------+ +----+ | | | | | | | | | | +------+ +----+
| | | | | | | | | +--------------|----------+ | | | | | | | | | | +--------------|----------+ |
| | | | | | | | +-------------+ | | | | | | | | | | | +-------------+ | | |
| | | | | +----|--|----------------|--|--------+ | | | | | | | +----|--|----------------|--|--------+ | |
| | | | +------|--|--------------+ | | | | | | | | | +------|--|--------------+ | | | | |
| | | +------+ | | | | | | | | | | | +------+ | | | | | | | |
++--+--++ +-+-+--++ ++-+--+-+ ++-+--+-+ ++--+--++ +-+-+--++ ++-+--+-+ ++-+--+-+
| Leaf 1| | Leaf 2| ........ | Leaf X| | Leaf Y| | Leaf 1| | Leaf 2| ........ | Leaf X| | Leaf Y|
+-------+ +-------+ +-------+ +-------+ +-------+ +-------+ +-------+ +-------+
]]></artwork>
]]></artwork> </figure>
</figure>
</t>
</section> </section>
<section anchor="bgp-discovery-con">
<section anchor="bgp-discovery-con" <name>BGP Peer Discovery Considerations</name>
title="BGP Peer Discovery Considerations"> <t>The basic functionality of peer discovery is to discover the
<t>The basic functionality of peer discovery is to be discover the address of a single-hop peer in the case where the peer address is not
address of a single-hop peer in case where the peer address is not preconfigured. This is being accomplished today by using IPv6 Router
pre-configured. This is being accomplished today by using IPv6 Router Advertisements (RAs) <xref format="default" target="RFC4861"/> and
Advertisements (RA) <xref format="default" target="RFC4861"/> and
assuming that a BGP session is desired with any discovered peer. assuming that a BGP session is desired with any discovered peer.
Beyond the basic functionality, it may be useful to have the following Beyond the basic functionality, it may be useful to have the following
information relating to the BGP session:</t> information relating to the BGP session:</t>
<ul spacing="normal">
<list style="symbols"> <li>
<t>Autonomous System (AS) and BGP Identifier of a potential <t>The AS and BGP Identifier of a potential
peer.</t> peer.</t>
</li>
<t>Security capabilities supported and for cryptographic <li>
authentication, the security capabilities and possibly a key-chain <t>Supported security capabilities, and for cryptographic
<xref format="default" target="RFC8177"/> to be used.</t> authentication, the security capabilities and possibly a key chain
<xref format="default" target="RFC8177"/> for use.</t>
<t>Session Policy Identifier - A group number or name used to </li>
<li>
<t>A Session Policy Identifier, which is a group number or name used
to
associate common session parameters with the peer. For example, in a associate common session parameters with the peer. For example, in a
data center, BGP sessions with a ToR device could have different data center, BGP sessions with a ToR device could have different
parameters than BGP sessions between leaf and spine.</t> parameters than BGP sessions between leaf and spine.</t>
</list> </li>
</ul>
<t>In a data center fabric, it is often useful to know whether a peer <t>In a data center fabric, it is often useful to know whether a peer
is southbound (towards the servers) or northbound (towards the spine is southbound (towards the servers) or northbound (towards the spine
or super-spine), e.g., <xref format="default" target="bi-connected"/>. or super-spine), e.g., see <xref format="default" target="bi-connected"/ >.
One mechanism, without specifying all the details, might be for the One mechanism, without specifying all the details, might be for the
ToR routers to be identified when installed and for the others routers ToR routers to be identified when installed and for the other routers
in the fabric to determine their level based on the distance from the in the fabric to determine their level based on the distance from the
closest ToR router.</t> closest ToR router.</t>
<t>If there are multiple links between BGP speakers or the links <t>If there are multiple links between BGP speakers or the links
between BGP speakers are unnumbered, it is also useful to be able to between BGP speakers are unnumbered, it is also useful to be able to
establish multi-hop sessions using the loopback addresses. This will establish multi-hop sessions using the loopback addresses. This will
often require the discovery protocol to install route(s) toward the often require the discovery protocol to install one or more routes towar d the
potential peer loopback addresses prior to BGP session potential peer loopback addresses prior to BGP session
establishment.</t> establishment.</t>
<t>Finally, a simple BGP discovery protocol may be used to establish a <t>Finally, a simple BGP discovery protocol may be used to establish a
multi-hop session with one or more controllers by advertising multi-hop session with one or more controllers by advertising
connectivity to one or more controllers.</t> connectivity to one or more controllers.</t>
</section> </section>
<section anchor="bgp-discovery">
<section anchor="bgp-discovery" title="BGP Peer Discovery"> <name>BGP Peer Discovery</name>
<section anchor="bgp-ipv6-peering" title="BGP IPv6 Simplified Peering"> <section anchor="bgp-ipv6-peering">
<name>BGP IPv6 Simplified Peering</name>
<t>To conserve IPv4 address space and simplify operations, BGP-SPF <t>To conserve IPv4 address space and simplify operations, BGP-SPF
routers in Clos/Fat Tree deployments can use IPv6 addresses as peer routers in Clos / Fat Tree deployments can use IPv6 addresses as the p eer
address. For IPv4 address families, IPv6 peering as specified in address. For IPv4 address families, IPv6 peering as specified in
<xref format="default" target="RFC8950"/> can be deployed to avoid <xref format="default" target="RFC8950"/> can be deployed to avoid
configuring IPv4 addresses on router interfaces. When this is done, configuring IPv4 addresses on router interfaces. When this is done,
dynamic discovery mechanisms, as described in <xref format="default" dynamic discovery mechanisms, as described in <xref format="default" t
target="bgp-discovery"/>, can be used to learn the global or arget="bgp-discovery"/>, can be used to learn the global or
link-local IPv6 peer addresses and IPv4 addresses need not be link-local IPv6 peer addresses, and IPv4 addresses need not be
configured on these interfaces. If IPv6 link-local peering is used, configured on these interfaces. If IPv6 link-local peering is used,
then configuration of IPv6 global addresses is also not required then configuration of IPv6 global addresses is also not required
<xref target="RFC7404"/> . The Link Local/Remote Identifiers of the <xref target="RFC7404"/>.
peering interfaces MUST be used in the link NLRI as described in
section 5.2.2 of <xref target="I-D.ietf-lsvr-bgp-spf"/>.</t> <!-- [rfced] We see that the approved I-D (v22) contains one instance
of a keyword ("MUST" in Section 5.5.1). Is this intentional? If
so, we will add the typical paragraph from BCP 14 regarding use
of keywords after the Introduction and add RFCs 2119 and 8174 to
the Normative References section. Otherwise, we will update
"MUST" to "must".
Original:
The Link Local/Remote Identifiers of the peering interfaces MUST be
used in the link NLRI as described in section 5.2.2 of
[I-D.ietf-lsvr-bgp-spf].
-->
The Link Local/Remote Identifiers of the
peering interfaces MUST be used in the Link NLRI as described in
<xref section="5.2.2" sectionFormat="of" target="RFC9815"/>.</t>
</section> </section>
<section anchor="config-checking">
<section anchor="config-checking" <!--[rfced] Is "BGP-LS SPF Topology" correct or should it perhaps be
title="BGP-LS SPF Topology Visibility for Management"> "BGP-LS-SPF Topology" for consistency?
Original:
5.5.2 BGP-LS SPF Topology Visibility for Management
Perhaps:
5.5.2 BGP-LS-SPF Topology Visibility for Management
-->
<name>BGP-LS SPF Topology Visibility for Management</name>
<t>Irrespective of whether or not BGP-SPF is used for route <t>Irrespective of whether or not BGP-SPF is used for route
calculation, the BGP-LS-SPF route advertisements can be used to calculation, the BGP-LS-SPF route advertisements can be used to
periodically construct the Clos/Fat Tree topology. This is periodically construct the Clos / Fat Tree topology. This is
especially useful in deployments where an Interior Gateway Protocol especially useful in deployments where an Interior Gateway Protocol
(IGP) is not used and the base BGP-LS routes <xref format="default" (IGP) is not used and the base BGP-LS routes <xref format="default" ta
target="RFC9552"/> are not available. The resultant topology rget="RFC9552"/> are not available. The resultant topology
visibility can then be used for troubleshooting and consistency visibility can then be used for troubleshooting and consistency
checking. This would normally be done on a central controller or checking. This would normally be done on a central controller or
other management tool which could also be used for fabric data path other management tool that could also be used for fabric data path
verification. The precise algorithms and heuristics, as well as the verification. The precise algorithms and heuristics, as well as the
complete set of management applications is beyond the scope of this complete set of management applications, is beyond the scope of this
document.</t> document.</t>
</section> </section>
<section anchor="dci">
<section anchor="dci" <name>Data Center Interconnect (DCI) Applicability</name>
title="Data Center Interconnect (DCI) Applicability"> <t>Since BGP-SPF is to be used for the routing underlay and Data Cente
<t>Since BGP-SPF is to be used for the routing underlay and DCI r Interconnect (DCI)
gateway boxes typically have direct or very simple connectivity, BGP gateway boxes typically have direct or very simple connectivity, BGP
external sessions would typically not include the BGP-LS-SPF external sessions would typically not include the BGP-LS-SPF
SAFI.</t> SAFI.</t>
</section> </section> </section>
</section>
</section> </section>
<!--[rfced] Would repeating "Non" make this section title more clear?
The meaning seems to be applicability to topologies that are
neither Clos nor Fat Tree topologies.
<section anchor="other-env" Original:
title="Non-CLOS/FAT Tree Topology Applicability"> 6. Non-CLOS/FAT Tree Topology Applicability
<t>The BGP-SPF extensions <xref format="default"
target="I-D.ietf-lsvr-bgp-spf"/> can be used in other topologies and Current:
6. Non-Clos / Fat Tree Topology Applicability
Perhaps:
6. Non-Clos / Non-Fat-Tree Topology Applicability
-->
<section anchor="other-env">
<name>Non-Clos / Fat Tree Topology Applicability</name>
<t>The BGP-SPF extensions <xref format="default" target="RFC9815"/> can be
used in other topologies and
avail the inherent convergence improvements. Additionally, sparse avail the inherent convergence improvements. Additionally, sparse
peering techniques may be utilized <xref format="default" peering techniques may be utilized <xref format="default" target="peering"
target="peering"/>. However, determining whether to establish a BGP />. However, determining whether to establish a BGP
session is more complex and the heuristic described in <xref session is more complex, and the heuristic described in <xref format="defa
format="default" target="bi-connected"/> cannot be used. In such ult" target="bi-connected"/> cannot be used. In such
topologies, other techniques such as those described in <xref topologies, other techniques such as those described in <xref format="defa
format="default" target="RFC9667"/> may be employed. One potential ult" target="RFC9667"/> may be employed. One potential
deployment would be the underlay for a Service Provider (SP) backbone deployment would be the underlay for a Service Provider (SP) backbone
where usage of a single protocol, i.e., BGP, is desired.</t> where usage of a single protocol, i.e., BGP, is desired.</t>
</section> </section>
<section anchor="non-transit-node">
<section anchor="non-transit-node" title="Non-Transit Node Capability"> <name>Non-Transit Node Capability</name>
<t>In certain scenarios, a BGP node wishes to participate in the BGP-SPF <t>In certain scenarios, a BGP node wishes to participate in the BGP-SPF
topology but never be used for transit traffic. These include situations topology but never be used for transit traffic. These include situations
where a server wants to make application services available to clients where a server wants to make application services available to clients
homed at subnets throughout the BGP-SPF domain but does not ever want to homed at subnets throughout the BGP-SPF domain but does not ever want to
be used as a router (i.e., carry transit traffic). Another specific be used as a router (i.e., carry transit traffic). Another specific
instance is where a controller is resident on a server and direct instance is where a controller is resident on a server and direct
connectivity to the controller is required throughout the entire domain. connectivity to the controller is required throughout the entire domain.
This can readily be accomplished using the BGP-LS Node NLRI Attribute This can readily be accomplished using the BGP-LS-SPF Node NLRI Attribute
SPF Status TLV as described in <xref format="default" SPF Status TLV as described in <xref format="default" target="RFC9815"/>.<
target="I-D.ietf-lsvr-bgp-spf"/>.</t> /t>
</section> </section>
<section anchor="policy">
<section anchor="policy" title="BGP Policy Applicability"> <name>BGP Policy Applicability</name>
<t>Existing BGP policy such as prefix filtering may be used in <t>Existing BGP policy such as prefix filtering may be used in
conjunction with the BGP-LS-SPF SAFI. When BGP policy is used with the conjunction with the BGP-LS-SPF SAFI. When BGP policy is used with the
BGP-LS-SPF SAFI, BGP speakers in the BGP-LS-SPF routing domain will not BGP-LS-SPF SAFI, BGP speakers in the BGP-LS-SPF routing domain will not
all have the same set of NLRI and will compute a different BGP local all have the same set of NLRIs and will compute a different BGP local
routing table. Consequently, care must be taken to assure routing is routing table. Consequently, care must be taken to assure routing is
consistent and blackholes or routing loops do not ensue. However, this consistent and blackholes or routing loops do not ensue. However, this
is no different than if traditional BGP routing using the IPv4 and IPv6 is no different than if traditional BGP routing using the IPv4 and IPv6
address families were used.</t> address families were used.</t>
</section> </section>
<section anchor="IANA">
<section anchor="IANA" title="IANA Considerations"> <name>IANA Considerations</name>
<t>No IANA updates are requested by this document.</t> <t>This document has no IANA actions.</t>
</section> </section>
<section anchor="Security">
<section anchor="Security" title="Security Considerations"> <name>Security Considerations</name>
<t>This document introduces no new security considerations above and <t>This document introduces no new security considerations above and
beyond those already specified in the <xref format="default" beyond those already specified in <xref format="default" target="RFC4271"/
target="RFC4271"/> and <xref format="default" > and <xref format="default" target="RFC9815"/>.</t>
target="I-D.ietf-lsvr-bgp-spf"/>.</t>
</section>
<section anchor="Acknowledgements" title="Acknowledgements">
<t>The authors would like to thank Alvaro Retana, Yan Filyurin, Boris
Hassanov, Stig Venaas, Ron Bonica, Mallory Knodel, Dhruv Dhody, Erik
Kline, Eric Vyncke, and John Scudder for their review and comments.</t>
</section> </section>
</middle> </middle>
<back> <back>
<references title="Normative References"> <references>
<?rfc include='reference.I-D.ietf-lsvr-bgp-spf.xml'?> <name>References</name>
</references> <references>
<name>Normative References</name>
<references title="Informative References">
<?rfc include='reference.RFC.2328.xml'?>
<?rfc include='reference.RFC.4271.xml'?>
<?rfc include='reference.RFC.4364.xml'?>
<?rfc include='reference.RFC.4760.xml'?>
<?rfc include='reference.RFC.4861.xml'?>
<?rfc include='reference.RFC.4957.xml'?>
<?rfc include='reference.RFC.5340.xml'?>
<?rfc include='reference.RFC.5580.xml'?>
<?rfc include='reference.RFC.5925.xml'?> <!--[RFC9815] draft-ietf-lsvr-bgp-spf-51 is RFC-to-be 9815.
Note: will need an update to the title based on author reply -->
<?rfc include='reference.RFC.7404.xml'?> <reference anchor="RFC9815" target="https://www.rfc-editor.org/info/rfc9
815">
<front>
<title>BGP Link-State Shortest Path First (SPF) Routing</title>
<author initials="K." surname="Patel" fullname="Keyur Patel">
<organization>Arrcus, Inc.</organization>
</author>
<author initials="A." surname="Lindem" fullname="Acee Lindem">
<organization>LabN Consulting, LLC</organization>
</author>
<author initials="S." surname="Zandi" fullname="Shawn Zandi">
<organization>LinkedIn</organization>
</author>
<author initials="W." surname="Henderickx" fullname="Wim Henderickx"
>
<organization>Nokia</organization>
</author>
<date month="July" year="2025" />
</front>
<seriesInfo name="RFC" value="9815"/>
<seriesInfo name="DOI" value="10.17487/RFC9815"/>
</reference>
</references>
<?rfc include='reference.RFC.7938.xml'?> <references>
<name>Informative References</name>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2
328.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
271.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
364.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
760.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
861.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4
957.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
340.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.55
80.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
880.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5
925.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7
404.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7
938.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
177.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8
950.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
552.xml"/>
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9
667.xml"/>
<reference anchor="IEEE.802.1AX">
<front>
<title>IEEE Standard for Local and Metropolitan Area Networks--Link
Aggregation</title>
<author>
<organization>IEEE</organization>
</author>
<date month="May" year="2020"/>
</front>
<seriesInfo name="IEEE Std" value="802.1AX-2020"/>
<seriesInfo name="DOI" value="10.1109/IEEESTD.2020.9105034"/>
</reference>
<?rfc include='reference.RFC.8177.xml'?> <reference anchor="Clos" target="">
<front>
<title>A Study of Non-Blocking Switching Networks</title>
<author initials="C." surname="Clos">
<organization/>
</author>
<date month="March" year="1953"/>
</front>
<refcontent>The Bell System Technical Journal, vol. 32, no. 2, pp. 406
-424</refcontent>
<seriesInfo name="DOI" value="10.1002/j.1538-7305.1953.tb01433.x"/>
</reference>
</references>
</references>
<?rfc include='reference.RFC.8950.xml'?> <section anchor="Acknowledgements" numbered="false">
<name>Acknowledgements</name>
<t>The authors would like to thank <contact fullname="Alvaro Retana"/>,
<contact fullname="Yan Filyurin"/>, <contact fullname="Boris
Hassanov"/>, <contact fullname="Stig Venaas"/>, <contact fullname="Ron
Bonica"/>, <contact fullname="Mallory Knodel"/>, <contact
fullname="Dhruv Dhody"/>, <contact fullname="Erik Kline"/>, <contact
fullname="Éric Vyncke"/>, and <contact fullname="John Scudder"/> for
their reviews and comments.</t>
</section>
<?rfc include='reference.RFC.9552.xml'?> <!-- [rfced] FYI - We updated the following terms for
consistency. Please let us know of any objections.
<?rfc include='reference.RFC.9667.xml'?> BGP-LS Node NLRI Attribute SPF Status TLV ->
BGP-LS-SPF Node NLRI Attribute SPF Status TLV (per the companion doc)
BGP-LS SPF SAFI -> BGP-LS-SPF SAFI (per the companion doc)
Clos Topologies -> Clos topologies
Fat-Tree -> Fat Tree (per use in the RFC Series)
link NLRI -> Link NLRI (per RFC 9552)
Route Controllers -> route controllers (per companion document)
Route Reflectors -> route reflectors (per companion document)
Spine Nodes -> spine nodes
Unicast -> unicast
-->
<reference anchor="IEEE.802.1AX" <!-- [rfced] FYI - We have updated the expansions for the following
target="https://standards.ieee.org/standard/802_1AX-2020.html"> abbreviations to reflect the form on the right for consistency with
<front> the companion document and/or RFC Series.
<title>IEEE Standard for Local and Metropolitan Area Networks: Link
Aggregation</title>
<author> Bi-Directional Forwarding Detection (BFD) ->
<organization>IEEE</organization> Bidirectional Forwarding Detection (BFD)
</author>
<date year="2020"/> Equal-Cost Multi-Path (ECMP) -> Equal-Cost Multipath (ECMP)
</front>
<seriesInfo name="IEEE Std" value="802.1AX-2020"/> Top-Of-Rack (ToR) -> Top-of-Rack (ToR)
</reference> -->
<reference anchor="Clos" target=""> <!-- [rfced] Please review the "Inclusive Language" portion of the online
<front> Style Guide <https://www.rfc-editor.org/styleguide/part2/#inclusive_language>
<title>A Study of Non-Blocking Switching Networks</title> and let us know if any changes are needed. Updates of this nature typically
result in more precise language, which is helpful for readers.
<author initials="" surname=""> For example, please consider whether the following should be updated:
<organization/> - blackhole
</author>
<date month="March" year="1953"/> In addition, please consider whether "traditional" should be updated
</front> for clarity. While the NIST website
<https://web.archive.org/web/20250214092458/https://www.nist.gov/
nist-research-library/nist-technical-series-publications-author-instructions#tab
le1>
indicates that this term is potentially biased, it is also ambiguous.
"Tradition" is a subjective term, as it is not the same for everyone.
-->
<seriesInfo name=""
value="The Bell System Technical Journal, Vol. 32(2), DOI 10
.1002/j.1538-7305.1953.tb01433.x"/>
</reference>
</references>
</back> </back>
</rfc> </rfc>
 End of changes. 136 change blocks. 
322 lines changed or deleted 477 lines changed or added

This html diff was produced by rfcdiff 1.48.