Internet-Draft Flex-Algo for SR based NRP October 2024
Zhu, et al. Expires 24 April 2025 [Page]
Workgroup:
LSR Working Group
Internet-Draft:
draft-zhu-lsr-isis-sr-vtn-flexalgo-08
Published:
Intended Status:
Standards Track
Expires:
Authors:
Y. Zhu
China Telecom
J. Dong
Huawei Technologies
Z. Hu
Huawei Technologies

Using Flex-Algo for Segment Routing (SR) based Network Resource Partition (NRP)

Abstract

Enhanced VPNs aim to deliver VPN services with enhanced characteristics, such as guaranteed resources, latency, jitter, etc., so as to support customers requirements for connectivity services with these enhanced characteristics. Enhanced VPN requires integration between the overlay VPN connectivity and the characteristics provided by the underlay network. A Network Resource Partition (NRP) is a subset of the network resources and associated policies on each of a connected set of links in the underlay network. An NRP could be used as the underlay to support one or a group of enhanced VPN services.

In some network scenarios, each NRP can be associated with a unique Flexible Algorithm (Flex-Algo), which can provide constraint-path computation based on the customized topological constraints. This document specifies a mechanism to build Segment Routing (SR) based NRPs by combining SR Flex-Algo and IGP L2 bundles with minor extensions.

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 24 April 2025.

Table of Contents

1. Introduction

Enhanced VPNs aim to deliver VPN services with enhanced characteristics, such as guaranteed resources, latency, jitter, etc., so as to support customers requirements for connectivity services with these enhanced characteristics. Enhanced VPN requires integration between the overlay VPN connectivity and the characteristics provided by the underlay network. [RFC9543] discusses the general framework, components, and interfaces for requesting and operating network slices using IETF technologies. Network slice is considered as one target use case of enhanced VPNs.

[RFC9543] also introduces the concept of the Network Resource Partition (NRP), which is a subset of the buffer/queuing/scheduling resources and associated policies on each of a connected set of links in an underlay network. An NRP can be associated with a logical network topology to select or specify the set of links and nodes involved. [I-D.ietf-teas-enhanced-vpn] specifies the framework of NRP-based enhanced VPNs and describes the candidate component technologies in different network planes and network layers. An NRP could be used as the underlay to meet the requirement of one or a group of enhanced VPN services. To meet the requirement of enhanced VPN services, a number of NRPs can be created, each with a subset of network resources allocated on network nodes and links in a customized topology of the physical network.

[I-D.ietf-spring-resource-aware-segments] introduces resource awareness to Segment Routing (SR) [RFC8402]. The resource-aware SIDs have additional semantics to identify the set of network resources available for the packet processing action associated with the SIDs. As described in [I-D.ietf-spring-sr-for-enhanced-vpn], the resource- aware SIDs can be used to build SR-based NRPs with the required network topology and network resource attributes to support enhanced VPN services. In an SR-based data plane, Segment Identifiers (SIDs) can be used to represent both the topological instructions and a subset of network resources on the network nodes and links which are allocated to an NRP. The SR SIDs and the associated topology and resource attributes of an NRP need to be distributed using a control plane.

In some network scenarios, the required number of NRPs could be small, then it can be assumed that each NRP is associated with an independent logical topology, and has a set of dedicated or shared network resources. For such scenarios, this document describes a simple mechanism to build Segment Routing (SR) based NRPs, by combining SR Flex-Algo and IGP L2 bundles with minor extensions. More specifically, each NRP is associated with a unique Flex-Algo, and the subset of network resources allocated to the NRP are instantiated using either virtual sub-interfaces or layer-2 member links of L3 interfaces.

This document updates [RFC8668] by defining a new flag in the Parent L3 Neighbor Descriptor in the L2 Bundle Member Attributes TLV. [RFC8668] states that all bit fields not defined in that document "MUST be set to zero on transmission and ignored on receipt". Section 3 of this document defines a new flag and specifies when it should be set and how it should be processed.

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. Advertisement of NRP Topology Attributes

[RFC9350] specifies the mechanism to provide distributed constraint-path computation, and the use of SR-MPLS prefix-SIDs and SRv6 locators in data plane for steering traffic along the constrained paths.

The Flex-Algo Definition (FAD) is the combination of calculation-type, metric-type and the topological constraints used for path computation. According to the network nodes' participation of a Flex-Algo, and the rules of including or excluding Admin Groups (i.e. colors) and Shared Risk Link Groups (SRLGs), the topology of an NRP can be described using the associated Flex-Algo. If each NRP is associated with a unique Flex-Algo, the Flex-Algo identifier could be used as the identifier of the NRP in the control plane.

With the mechanisms defined in[RFC8667] [RFC9350], SR-MPLS prefix-SID advertisement can be associated with a constrained topology, which can be defined by a Flex-Algo. This allows the nodes to use the prefix-SIDs to steer traffic along distributed computed constraint paths according to the associated Flex-Algo in a particular topology.

[RFC9352] specifies the IS-IS extensions to support SRv6 data plane, in which the SRv6 locators advertisement is associated with a constrained topology, which can be defined by a Flex-Algo. This allows the nodes to use the SRv6 locators to steer traffic along constraint paths computed using the Flex-Algo in the associated topology. In addition, SRv6 End SIDs and End.X SIDs which are associated with a Flex-Algo can be used to enforce traffic over the Loop-Free Alternatives (LFA) computed backup paths.

3. Advertisement of NRP Resource Attributes

Each NRP can be allocated with a set of dedicated or shared network resources on a connected set of links in the underlay network.

In order for a network controller or the ingress nodes to perform constraint based path computation for each NRP, the resource attributes of each NRP need to be advertised in the control plane, and distributed to the network controller. This way, the network controller or the ingress node can compute an SR-TE path in the NRP by taking both the Flex-Algo constraints and the resource attributes of the NRP into consideration.

IS-IS L2 Bundle [RFC8668] was defined to advertise the link attributes of the layer-2 bundle member links. In this section, it is extended to advertise different subset of link resources and attributes associated with different NRPs on a layer-3 link.

The layer-3 link must have the capability of partitioning the link resources into different subsets and allocate them to different NRPs it participates in. Each partition of the link resources can be instantiated as a virtual sub-interface, which can be seen as a virtual layer-2 member link of the layer-3 link. When the layer-3 link is a layer-2 link bundle, the subset of link resources allocated to a specific NRP may be provided by one or multiple physical layer-2 member links in the link bundle.

Normally the member links of a L2 link bundle are used in load-balancing mode, some extension is needed to indicate that each member link is used exclusively for traffic of a specific NRP. A new flag "E" (Exclusive) is defined in the flag field of the Parent L3 Neighbor Descriptor in the L2 Bundle Member Attributes TLV (25).

             0 1 2 3 4 5 6 7
            +-+-+-+-+-+-+-+-+
            |P|E|           |
            +-+-+-+-+-+-+-+-+

E flag: When the E flag is set, it indicates each member link under the Parent L3 link is used exclusively for one NRP, and load balancing among the member links is not allowed. When the E flag is clear, it indicates load balancing and sharing among the member links are allowed.

The E flag can be used by a network controller to compute paths which only use the set of dedicated member link resources of an NRP. In addition, it can also be used by network nodes which perform Flex-Algo based constrained path computation, taking the exclusive member link resource into consideration. This way, packets with Flex-Algo specific SR SIDs can be steered to only use the member link resources associated with the Flex-Algo for forwarding. Note that a legacy implementations of [RFC8668] will set the E flag to zero (clear) meaning that load balancing among the component links is the default behavior. Further, when a legacy implementation receives an E flag that is set, it will ignore the flag and so will assume that load balancing among component links is allowed even when the sender has requested it to not be used. The Flex-Algo associated with the NRP can be defined that only nodes which support the E flag and the mechanisms defined in this document are included in the constraint-based path computation and packet forwarding of the NRP.

For each virtual or physical layer-2 member link under the layer-3 interface, the Admin Groups (AG) or Extended Admin Group (EAG) attribute MUST be advertised using the mechanisms as defined in [RFC8668]. Other TE attributes as defined in [RFC5305] such as the Maximum Link Bandwidth attribute MAY be advertised for the constraint-based path computation. The SR-MPLS Adj-SIDs or SRv6 End.X SIDs associated with each of the virtual or physical layer-2 member links SHOULD be advertised according to [RFC8668] and [I-D.dong-lsr-l2bundle-srv6].

In order to correlate the virtual or physical layer-2 member links with the associated Flex-Algo ID of the NRP, each NRP SHOULD be assigned with a unique Admin Group (AG) or Extended Admin Group (EAG), and the virtual or physical layer-2 member links associated with this NRP SHOULD be configured with the AG or EAG of the NRP. The AG or EAG of the parent layer-3 link SHOULD be set to the union of all the AGs or EAGs of its virtual or physical layer-2 member links. In the definition of the Flex-Algo which is associated with the NRP, the Include-Any Admin Group with only the AG or EAG assigned to the NRP SHOULD be used as the link constraints, the Include-All Admin Goup or the Exclude Admin Group rules MUST NOT be used for a Flex-Algo associated with an NRP. This is to ensure that the layer-3 link is included in the Flex-Algo constraint path computation for each NRP it participates in.

4. Forwarding Plane Operations

For the SR-MPLS data plane, a prefix SID is associated with the paths calculated using the Flex-Algo corresponding to the NRP. An outgoing layer-3 interface is determined for each path. In addition, the prefix-SID also steers the traffic to use the virtual or physical layer-2 member link which is associated with the NRP on the outgoing layer-3 interface for packet forwarding. A forwarding entry MUST be installed in the forwarding plane using the MPLS label that corresponds to the Prefix-SID associated with the Flex-algorithm corresponding to the NRP. The Adj-SIDs associated with the virtual or physical member links of an NRP MAY be used together with the prefix-SIDs of the same NRP to build SR-MPLS TE paths under the topological and resource constraints of the NRP.

For the SRv6 data plane, an SRv6 Locator is a prefix which is associated with the paths calculated using the Flex-Algo corresponding to the NRP. An outgoing Layer-3 interface is determined for each path. In addition, the SRv6 Locator prefix also steers the traffic to use the virtual or physical layer-2 member link which is associated with the NRP on the outgoing layer-3 interface for packet forwarding. A forwarding entry for the SRv6 Locator prefix MUST be installed in the forwarding plane for the Flex-algorithm corresponding to the NRP. The End.XU SIDs associated with the virtual or physical member links of an NRP MAY be used together with other types of SRv6 SIDs of the same NRP to build SRv6 paths under the topological and resource constraints of the NRP.

5. Scalability Considerations

The mechanism described in this document assumes that each NRP is associated with a unique Flex-Algo, so that the Flex-Algo IDs can be reused to identify the NRPs in the control plane. While this brings the benefit of simplicity, it also has some limitations. For example, it means that even if multiple NRPs share the same constrained topology, they would still need to be identified using different Flex-Algos in the control plane, then independent path computation needs to be executed for each NRP. Thus the number of NRPs supported in a network may be dependent on the number of topologies supported, which is related to both the number of topologies supported in the protocol and the control plane overhead which the network nodes could accomodate. The mechanism described in this document is considered useful for network scenarios in which the required number of NRPs is small, as minor control protocol extension is required. For network scenarios where the number of required NRPs is large, more scalable solution would be needed, which may require further protocol extensions and enhancements. A detailed analysis about the NRP scalability and the possible optimizations for supporting a large number of NRPs is described in [I-D.ietf-teas-nrp-scalability].

6. Security Considerations

This document introduces no additional security vulnerabilities to IS-IS.

The mechanism proposed in this document is subject to the same vulnerabilities as any other protocol that relies on IS-IS.

7. IANA Considerations

This document does not request any IANA actions.

8. Acknowledgments

The authors would like to thank Zhenbin Li, Peter Psenak, Adrian Farrel and Gyan Mishra for the review and discussion of this document.

9. References

9.1. Normative References

[I-D.dong-lsr-l2bundle-srv6]
Dong, J. and Z. Hu, "Advertising SRv6 SIDs for Layer 2 Bundle Member Links in IGP", Work in Progress, Internet-Draft, draft-dong-lsr-l2bundle-srv6-02, , <https://datatracker.ietf.org/api/v1/doc/document/draft-dong-lsr-l2bundle-srv6/>.
[I-D.ietf-spring-resource-aware-segments]
Dong, J., Miyasaka, T., Zhu, Y., Qin, F., and Z. Li, "Introducing Resource Awareness to SR Segments", Work in Progress, Internet-Draft, draft-ietf-spring-resource-aware-segments-09, , <https://datatracker.ietf.org/doc/html/draft-ietf-spring-resource-aware-segments-09>.
[I-D.ietf-spring-sr-for-enhanced-vpn]
Dong, J., Miyasaka, T., Zhu, Y., Qin, F., and Z. Li, "Segment Routing based Network Resource Partition (NRP) for Enhanced VPN", Work in Progress, Internet-Draft, draft-ietf-spring-sr-for-enhanced-vpn-08, , <https://datatracker.ietf.org/doc/html/draft-ietf-spring-sr-for-enhanced-vpn-08>.
[I-D.ietf-teas-enhanced-vpn]
Dong, J., Bryant, S., Li, Z., Miyasaka, T., and Y. Lee, "A Framework for Network Resource Partition (NRP) based Enhanced Virtual Private Networks", Work in Progress, Internet-Draft, draft-ietf-teas-enhanced-vpn-20, , <https://datatracker.ietf.org/doc/html/draft-ietf-teas-enhanced-vpn-20>.
[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>.
[RFC5305]
Li, T. and H. Smit, "IS-IS Extensions for Traffic Engineering", RFC 5305, DOI 10.17487/RFC5305, , <https://www.rfc-editor.org/info/rfc5305>.
[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>.
[RFC8402]
Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., Decraene, B., Litkowski, S., and R. Shakir, "Segment Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, , <https://www.rfc-editor.org/info/rfc8402>.
[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>.
[RFC8668]
Ginsberg, L., Ed., Bashandy, A., Filsfils, C., Nanduri, M., and E. Aries, "Advertising Layer 2 Bundle Member Link Attributes in IS-IS", RFC 8668, DOI 10.17487/RFC8668, , <https://www.rfc-editor.org/info/rfc8668>.
[RFC9350]
Psenak, P., Ed., Hegde, S., Filsfils, C., Talaulikar, K., and A. Gulko, "IGP Flexible Algorithm", RFC 9350, DOI 10.17487/RFC9350, , <https://www.rfc-editor.org/info/rfc9350>.
[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>.
[RFC9543]
Farrel, A., Ed., Drake, J., Ed., Rokui, R., Homma, S., Makhijani, K., Contreras, L., and J. Tantsura, "A Framework for Network Slices in Networks Built from IETF Technologies", RFC 9543, DOI 10.17487/RFC9543, , <https://www.rfc-editor.org/info/rfc9543>.

9.2. Informative References

[I-D.ietf-teas-nrp-scalability]
Dong, J., Li, Z., Gong, L., Yang, G., and G. S. Mishra, "Scalability Considerations for Network Resource Partition", Work in Progress, Internet-Draft, draft-ietf-teas-nrp-scalability-05, , <https://datatracker.ietf.org/doc/html/draft-ietf-teas-nrp-scalability-05>.

Authors' Addresses

Yongqing Zhu
China Telecom
Jie Dong
Huawei Technologies
Zhibo Hu
Huawei Technologies