SPRING Working Group W. Cheng
Internet Draft China Mobile
Intended status: Standards Track P. Ma
Expires: January 01, 2025 China Telecom
F. Ren
China Unicom
C. Lin
New H3C Technologies
L. Gong
China Mobile
S. Zadok
Broadcom
M.Wu
CentecNetworks
X. Wang
Ruijie Networks Co., Ltd.
July 02, 2024
Encoding Network Slice Identification for SRv6
draft-cheng-spring-srv6-encoding-network-sliceid-09
Abstract
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. For packet
forwarding in a specific NRP, some fields in the data packet are
used to identify the NRP the packet belongs to, so that NRP-specific
processing can be performed on each node along a path in the NRP.
This document describes a novel method to encode NRP-ID in the outer
IPv6 header of an SRv6 domain, which could be used to identify the
NRP-specific processing to be performed on the packets by each
network node along a network path in the NRP.
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), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Cheng, et al. Expire January 01, 2025 [Page 1]
Internet-Draft Encoding Network Slice Identification July 2024
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on January 01, 2025.
Copyright Notice
Copyright (c) 2024 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.
Table of Contents
1. Introduction...................................................3
1.1. Requirements Language.....................................3
2. Slice Identifier...............................................3
3. SLID Assignment................................................4
4. Per-Slice Forwarding...........................................5
5. Example........................................................5
6. Backward Compatibility.........................................6
7. Acknowledgements...............................................7
8. Security Considerations........................................7
9. IANA Considerations............................................7
10. References....................................................7
10.1. Normative References.....................................7
10.2. Informative References...................................7
Authors' Addresses................................................9
Cheng, et al. Expires January 01, 2025 [Page 2]
Internet-Draft Encoding Network Slice Identification July 2024
1. Introduction
SRv6 Network Programming [RFC8986] enables the creation of overlays
with underlay optimization to be deployed in an SR domain [RFC8402].
As defined in [RFC8754], all inter-domain packets are encapsulated
for the part of the packet journey that is within the SR domain. The
outer IPv6 header [RFC8200] is originated by a node of the SR domain
and is destined to a node of the SR domain.
Network slicing provides the ability to partition a physical network
into multiple isolated logical networks of varying sizes,
structures, and functions so that each slice can be dedicated to
specific services or customers. [I-D.ietf-teas-ietf-network-slices]
defines the term "IETF Network Slice" and establishes the general
principles of network slicing in the IETF context.
In a network that provides slicing services, the NRP-ID can be
carried in the packet. In the process of packet forwarding, the
routers on the forwarding path can extract NRP-ID from the packet,
determine the NRP to which the packet belongs, and then forward the
packet using the resources associated with the NRP.
This document describes a novel method to encode NRP-ID in the outer
IPv6 header of an SRv6 domain, which could be used to identify the
NRP-specific processing to be performed on the packets by each
network node along a network path in the NRP.
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. Slice Identifier
The Slice identifier (SLID) is a network slicing identifier encoded
within the IPv6 packet that allows transit routers to apply the
proper forwarding treatment with associated network resources.
[I-D.ietf-teas-ietf-network-slices] defines the network resource
mapped to the network slice as NRP (Network Resource Partition). A
NRP may be associated with a unique IETF network slice or a group of
slices. In this document, SLID also refers to NRP-ID, which is used
to identify the network resource used in the forwarding process.
Cheng, et al. Expires January 01, 2025 [Page 3]
Internet-Draft Encoding Network Slice Identification July 2024
3. SLID Assignment
When an SR domain enables network slicing, the ingress PE should
reserve least significant bits in a local IPv6 address for slicing
use. The number of bits used to encode SLID is governed by local
policy and uniform within the SR domain.
When a packet enters the SR domain from an ingress PE, the ingress
PE encapsulates the packet in an outer IPv6 header and optional SRH
as defined in [RFC8754]. The ingress PE MAY also classify the packet
into a slice and set the slice identifier as follows:
o Write this SLID in the least significant bits of source address
of the outer IPv6 header.
o Set the SLID Presence Indicator (SPI) in the outer IPv6 header.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| SPI (Option A)| Flow Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Payload Length | Next Header | Hop Limit |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SPI (Option B) ~ |
++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +
| |
+ Source Address +
| |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ~ SLID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Destination Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Encoding of SLID and SPI
The SPI is used to inform transit routers that a SLID is encoded in
the packet. There are two possible places in the outer IPv6 header
that may be used to encode SPI:
Cheng, et al. Expires January 01, 2025 [Page 4]
Internet-Draft Encoding Network Slice Identification July 2024
o SPI Option A - Traffic Class: The SPI is encoded as a specific
bit in the Traffic Class field. The choice of the SPI bit is
governed by local policy and uniform within the SR domain.
Traffic Class
+---------------+
| .....SPI Bit. |
+---------------+
o SPI Option B - Source Address: The SPI is encoded as a specific
prefix covering the Source Address. The assignment of the SPI
prefix is governed by local policy and uniform within the SR
domain. Furthermore, some bits in the SPI prefix can be masked,
which provides greater flexibility for network administrators to
plan IPv6 addresses.
Source Address
+------------+---------+---------+------+
| SPI Prefix | Node ID | Padding | SLID |
+------------+---------+---------+------+
4. Per-Slice Forwarding
Any router within the SR domain that forwards a packet with SPI set
uses the SLID to select a slice and apply per-slice policies.
The most significant bit of SLID may be used to carry an S-flag,
which is used to indicate whether the packet MUST be forwarded
strictly using the network resource associated with the SLID. When
the network resource associated with the SLID does not exist or is
not available, if the S-flag is set to 1, the packet MUST be
discarded, otherwise the packet SHOULD be forwarded using the
default network resource or ignoring the SLID.
+------------+
|S| SLID |
+------------+
5. Example
Figure 2 shows an example of network slice packet forwarding using
the proposed encoding method. Assume the SPI is encoded using option
B as the SPI prefix in Source Address.
Cheng, et al. Expires January 01, 2025 [Page 5]
Internet-Draft Encoding Network Slice Identification July 2024
SPI prefix: AA::/64
+--------------+--------------+
| | |
v v v
+---+ +---+ +---+ +---+ +---+
|CE1|------|PE1|----------|P1 |----------|PE2|-----|CE2|
+---+ +---+ +---+ +---+ +---+
^
|
IPv6 Addr: AA::1:0:0 (Lowest 32 bits reserved for SLID)
+------------+ +------------+
| IPv6 | | IPv6 |
|SA=AA::1:0:5| |SA=AA::1:0:5|
+------------+ +------------+
| SRH | | SRH |
+-------+ +------------+ +------------+ +-------+
|Payload| --> | Payload | --> | Payload | --> |Payload|
+-------+ PE1 +------------+ P1 +------------+ PE2 +-------+
Figure 2: Packet Forwarding for Network Slice
The PE and P routers are configured to use the prefix AA::/64 as
SPI. The IPv6 address AA::1:0:0 is assigned to PE1 as the source
address used for network slicing. And the lowest 32 bits of the
address is reserved for SLID.
PE1 encapsulates the network slice packet with an outer IPv6 header
along with an SRH. The Source Address in the outer header is
AA::1:0:5, in which the lowest 32 bits carries the SLID 5. P1 checks
the Source Address and finds it matching the SPI prefix AA::/64. So,
P1 parses SLID 5 from the Source Address, and uses the network
resources associated with SLID 5 to forward the packet. PE2
decapsulates the outer IPv6 header and SRH.
6. Backward Compatibility
PE routers that do not set the SPI do not enable the SLID semantic
of the IPv6 source address bits. Hence, SLID-aware routers would not
attempt to classify these packets into a slice.
Any router that does not process the SPI nor the SLID forwards
packets as usual.
Cheng, et al. Expires January 01, 2025 [Page 6]
Internet-Draft Encoding Network Slice Identification July 2024
7. Acknowledgements
The authors would like to thank AAAA, BBBB and CCCC for their
insightful feedback on this document.
8. Security Considerations
TBD
9. IANA Considerations
TBD
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, May 2017
[RFC8200] Deering, S., and Hinden, D., "Internet Protocol, Version 6
(IPv6) Specification", RFC 8200, DOI 10.17487/RFC8200,
July 2017, <https://www.rfc-editor.org/info/rfc8200>.
[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,
July 2018, <https://www.rfc-editor.org/info/rfc8402>.
10.2. Informative References
[RFC8754] Filsfils, C., Ed., Dukes, D., Ed., Previdi, S., Leddy, J.,
Matsushima, S., and D. Voyer, "IPv6 Segment Routing Header
(SRH)", RFC 8754, DOI 10.17487/RFC8754, March 2020,
<https://www.rfc-editor.org/info/rfc8754>.
[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, February 2021, <https://www.rfc-
editor.org/info/rfc8986>.
Cheng, et al. Expires January 01, 2025 [Page 7]
Internet-Draft Encoding Network Slice Identification July 2024
[I-D.ietf-teas-ietf-network-slices] Farrel, A., Drake, J., Rokui,
R., Homma, S., Makhijani, K., Contreras, L. M., and J.
Tantsura, "Framework for IETF Network Slices", Work
inProgress, Internet-Draft, draft-ietf-teas-ietf-network-
slices-21, June 2023,
<https://www.ietf.org/archive/id/draft-ietf-teas-ietf-
network-slices-21.txt>.
Cheng, et al. Expires January 01, 2025 [Page 8]
Internet-Draft Encoding Network Slice Identification July 2024
Authors' Addresses
Weiqiang Cheng
China Mobile
Beijing
China
Email: chengweiqiang@chinamobile.com
Peiyong Ma
China Telecom
Guangzhou
China
Email: mapeiy@chinatelecom.cn
Fenghua Ren
China Unicom
Beijing
China
Email: renfh3@chinaunicom.cn
Changwang Lin
New H3C Technologies
Beijing
China
Email: linchangwang.04414@h3c.com
Liyan Gong
China Mobile
Beijing
China
Email: gongliyan@chinamobile.com
Shay Zadok
Broadcom
Israel
Email: shay.zadok@broadcom.com
Cheng, et al. Expires January 01, 2025 [Page 9]
Internet-Draft Encoding Network Slice Identification July 2024
Mingyu Wu
CentecNetworks
Suzhou Industrial Park
China
Email: wumy@centec.com
Xuewei Wang
Ruijie Networks Co., Ltd.
Beijing
China
Email: wangxuewei1@ruijie.com.cn
Cheng, et al. Expires January 01, 2025 [Page 10]