Internet-Draft BGP-SPF SRv6 February 2025
Zhang & Dong Expires 29 August 2025 [Page]
Workgroup:
LSVR
Internet-Draft:
draft-li-lsvr-bgp-spf-srv6-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
L. Zhang
Huawei Technologies
J. Dong
Huawei Technologies

Applying BGP-LS Segment Routing over IPv6(SRv6) Extensions to BGP-LS-SPF

Abstract

For network scenarios such as Massively Scaled Data Centers (MSDCs), BGP is extended for Link-State (LS) distribution and the Shortest Path First (SPF) algorithm based calculation. BGP-LS-SPF leverages the mechanisms of both BGP protocol and BGP-LS protocol extensions. Segment Routing over IPv6 (SRv6) provides a source routing mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SRv6 domain. In some networks, it may be useful to enable SRv6 based source routing mechanism together with BGP-LS-SPF. This document proposes to introduce the BGP Link-State (BGP-LS) extensions for SRv6 to the BGP-LS-SPF SAFI.

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 https://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 29 August 2025.

Table of Contents

1. Introduction

For network scenarios such as Massively Scaled Data Centers (MSDCs), BGP is extended for Link-State (LS) distribution and the Shortest Path First (SPF) algorithm based calculation. BGP-LS-SPF leverages the mechanisms of both BGP protocol [RFC4271] and BGP-LS protocol extensions [RFC9552], with the extensions to BGP-LS attribute and new NLRI selection rules defined in [I-D.ietf-lsvr-bgp-spf].

Segment Routing over IPv6 (SRv6) allows for a flexible definition of end-to-end paths within various topologies by encoding paths as sequences of topological or functional sub-paths called "segments". SRv6 provides a mechanism that allows a flow to be restricted to a specific topological path, while maintaining per-flow state only at the ingress node(s) to the SRv6 domain.

In networks where BGP-LS-SPF is used as the underlay routing protocol, it may be useful to enable SRv6 based source routing mechanism for traffic engineering and optimization. This document proposes to introduce the BGP Link-State (BGP-LS) extensions for SRv6 to the BGP-LS-SPF SAFI, and discusses which SRv6 extensions can be applied to BGP-LS-SPF SAFI.

1.1. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

2. SRv6 Node Attribute TLVs

Based on [RFC9514], the following SRv6 Node Attributes TLV SHOULD be supported in BGP-LS-SPF.

Table 1: Node Attribute TLVs for SRv6 with BGP-LS-SPF
Type Description Reference
1138 SRv6 Capabilities TLV RFC 9514
266 Node MSD TLV RFC 8814
1035 SR Algorithm TLV RFC 9085

2.1. SRv6 Capabilities TLV

The SRv6 Capabilities TLV defined in [RFC9514] is used to announce the SRv6 capabilities of the node along with the BGP-LS Node NLRI and indicates the SRv6 support by the node.

For BGP-LS-SPF, it SHOULD support this TLV to announce the SRv6 capabilities of BGP-LS-SPF nodes. A single instance of this TLV MUST be included in the BGP-SPF Node Attribute for each SRv6-capable node. [RFC9514] defines the value of this TLV is copied from the ISIS SRv6 Capabilities sub-TLV or from the OSPFv3 SRv6 Capabilities TLV, but both of them have the same flag definition, therefore, the flags format of SRv6 Capabilities TLV of BGP-LS-SPF is consistent with that in ISIS SRv6 Capabilities sub-TLV and OSPFv3 SRv6 Capabilities TLV.

2.2. SRv6 Node MSD Types

The Node MSD TLV defined in [RFC8814] is used to advertise the limits and the Segment Routing Header (SRH) operations supported by the SRv6-capable node.

For BGP-LS-SPF, it SHOULD support this TLV to advertise the limits and operations supported by BGP-LS-SPF node to enable segment routing. The SRv6 MSD types specified in Section 4 of [RFC9352] are also used with the BGP-LS-SPF Node MSD TLV.

The SRv6 Node MSD TLV is an optional TLV, for a specific MSD type, if the advertised value is zero or no value is advertised, then the headend can apply an SR Policy that only contains one segment without inserting any SRH header.

2.3. SR-Algorithm TLV

[RFC9514] specifies that the algorithm support for SRv6 is advertised via the SR-Algorithm TLV specified in [RFC9085]. The SR-Algorithm is used to advertise the SR algorithms supported by the node.

This TLV is a basic TLV of SR and SHOULD be supported in BGP-LS-SPF. The format of Algorithm fields in this TLV is consistent with that in ISIS, as defined in Section 3.2 of [RFC8667].

The SR-Algorithm TLV is an optional TLV, when the originating router does not advertise the SR-Algorithm TLV, it implies that algorithm 0 is the only algorithm supported by the router.

4. SRv6 Prefix Attribute TLVs

Based on [RFC9514], the BGP-LS SRv6 Prefix Attributes only includes the SRv6 Locator TLV. This TLV SHOULD be supported by BGP-LS-SPF.

Table 3: Prefix Attribute TLVs for SRv6 with BGP-LS-SPF
Type Description Reference
1162 SRv6 Locator TLV RFC 9514

4.1. SRv6 Locator TLV

The SRv6 Locator TLV defined in [RFC9514] is used to advertise the locators supported by each node. Each locator is advertised in a SRv6 Locator TLV. Locator is the key component of SRv6 SID, BGP-LS-SPF SHOULD support this TLV to enable segment routing.

The flags fields of this TLV in BGP-LS-SPF is not used and MUST be set to zero on transmission and MUST be ignored on receipt.

5. SRv6 SID NLRI

The SRv6 SID NLRI defined in [RFC9514] is used to carry the SRv6 SID information. When SRv6 SIDs need to be advertised in BGP-SPF, the following NLRI type and attributes TLV for SRv6 SID SHOULD be supported in BGP-LS-SPF SAFI:

Table 4: SRv6 SID NLRI with BGP-LS-SPF
Type NLRI Type Reference
6 SRv6 SID NLRI RFC 9514
518 SRv6 SID Information TLV RFC 9514
1250 SRv6 Endpoint Behavior TLV RFC 9514
1252 SRv6 SID Structure TLV RFC 9514

The format of local node descriptors in this NLRI is consistent with BGP-LS local node descriptors Section 5.2.1.2 of [RFC9552], which MAY contain the Autonomous System and BGP-LS Identifier sub-TLV.

5.1. SRv6 SID Information TLV

The SRv6 SID Information TLV is used to carry the SRv6 SID associated with a node in a SRv6 SID NLRI. This TLV SHOULD be supported in BGP-LS-SPF to advertise SRv6 SIDs.

5.2. SRv6 Endpoint Behavior TLV

The Endpoint Behavior TLV defined in [RFC9514] is a mandatory TLV included in the BGP-LS Attribute, used to advertise the behaviors associated with a SID. The BGP-LS-SPF SHOULD support this TLV to enable advertisement of behaviors associated with a SRv6 SID.

5.3. SRv6 SID Structure TLV

The SRv6 SID Structure TLV defined in [RFC9514] is used to advertise the length of each individual part of the SRv6 SID as defined in [RFC8986]. It is an optional TLV in the BGP-LS Attribute for SRv6 SID NLRI and a sub-TLV of the SRv6 End.X SID. BGP-LS-SPF MAY support this TLV to indicate the length of each individual part of the SRv6 SID of BGP-LS-SPF especially in some scenarios using compressed SID.

6. Operational Considerations

TBD

7. Security Considerations

This document introduces no additional security vulnerabilities in addition to the ones as described in [RFC9552].

8. IANA Considerations

9. Acknowledgements

TBD

10. References

10.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, , <https://www.rfc-editor.org/info/rfc4271>.
[RFC9552]
Talaulikar, K., Ed., "Distribution of Link-State and Traffic Engineering Information Using BGP", RFC 9552, DOI 10.17487/RFC9552, , <https://www.rfc-editor.org/info/rfc9552>.
[I-D.ietf-lsvr-bgp-spf]
Patel, K., Lindem, A., Zandi, S., and W. Henderickx, "BGP Link-State Shortest Path First (SPF) Routing", Work in Progress, Internet-Draft, draft-ietf-lsvr-bgp-spf-51, , <https://datatracker.ietf.org/doc/html/draft-ietf-lsvr-bgp-spf-51>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/info/rfc8174>.
[RFC9514]
Dawra, G., Filsfils, C., Talaulikar, K., Ed., Chen, M., Bernier, D., and B. Decraene, "Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing over IPv6 (SRv6)", RFC 9514, DOI 10.17487/RFC9514, , <https://www.rfc-editor.org/info/rfc9514>.
[RFC8814]
Tantsura, J., Chunduri, U., Talaulikar, K., Mirsky, G., and N. Triantafillis, "Signaling Maximum SID Depth (MSD) Using the Border Gateway Protocol - Link State", RFC 8814, DOI 10.17487/RFC8814, , <https://www.rfc-editor.org/info/rfc8814>.
[RFC9352]
Psenak, P., Ed., Filsfils, C., Bashandy, A., Decraene, B., and Z. Hu, "IS-IS Extensions to Support Segment Routing over the IPv6 Data Plane", RFC 9352, DOI 10.17487/RFC9352, , <https://www.rfc-editor.org/info/rfc9352>.
[RFC9085]
Previdi, S., Talaulikar, K., Ed., Filsfils, C., Gredler, H., and M. Chen, "Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing", RFC 9085, DOI 10.17487/RFC9085, , <https://www.rfc-editor.org/info/rfc9085>.

10.2. Informative References

[RFC8667]
Previdi, S., Ed., Ginsberg, L., Ed., Filsfils, C., Bashandy, A., Gredler, H., and B. Decraene, "IS-IS Extensions for Segment Routing", RFC 8667, DOI 10.17487/RFC8667, , <https://www.rfc-editor.org/info/rfc8667>.
[RFC9086]
Previdi, S., Talaulikar, K., Ed., Filsfils, C., Patel, K., Ray, S., and J. Dong, "Border Gateway Protocol - Link State (BGP-LS) Extensions for Segment Routing BGP Egress Peer Engineering", RFC 9086, DOI 10.17487/RFC9086, , <https://www.rfc-editor.org/info/rfc9086>.
[RFC8986]
Filsfils, C., Ed., Camarillo, P., Ed., Leddy, J., Voyer, D., Matsushima, S., and Z. Li, "Segment Routing over IPv6 (SRv6) Network Programming", RFC 8986, DOI 10.17487/RFC8986, , <https://www.rfc-editor.org/info/rfc8986>.

Authors' Addresses

Li Zhang
Huawei Technologies
No. 156 Beiqing Road
Beijing
China
Jie Dong
Huawei Technologies
No. 156 Beiqing Road
Beijing
China