Skip to main content

Encoding Network Slice Identification for SRv6
draft-cheng-spring-srv6-encoding-network-sliceid-06

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Active".
Authors Weiqiang Cheng , Guangming Yang , Changwang Lin , Liyan Gong , Shay Zadok , Mingyu Wu , xuewei wang
Last updated 2023-04-17 (Latest revision 2022-10-20)
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-cheng-spring-srv6-encoding-network-sliceid-06
SPRING Working Group                                           W. Cheng
Internet Draft                                             China Mobile
Intended status: Standards Track                               GM. Yang
Expires: October 18, 2023                                 China Telecom
                                                                 C. Lin
                                                   New H3C Technologies
                                                                L. Gong
                                                           China Mobile
                                                               S. Zadok
                                                               Broadcom
                                                                   M.Wu
                                                         CentecNetworks
                                                                X. Wang
                                              Ruijie Networks Co., Ltd.
                                                         April 18, 2023

              Encoding Network Slice Identification for SRv6
            draft-cheng-spring-srv6-encoding-network-sliceid-06

Abstract

   This document describes a method to encode network slicing
   identifier within SRv6 domain.

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.

   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 October 18, 2023.

Cheng, et al.           Expires October 18, 2023               [Page 1]
Internet-Draft    Encoding Network Slice Identification      April 2023

Copyright Notice

   Copyright (c) 2022 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...................................................2
      1.1. Requirements Language.....................................3
   2. Slice Identifier...............................................3
   3. SLID Assignment................................................3
   4. Per-Slice Forwarding...........................................4
   5. Example........................................................5
   6. Backward Compatibility.........................................6
   7. Acknowledgements...............................................6
   8. Security Considerations........................................6
   9. IANA Considerations............................................6
   10. References....................................................6
      10.1. Normative References.....................................6
      10.2. Informative References...................................7
   Authors' Addresses................................................8

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.

   This document describes a novel method to encode slice identifier in
   the outer IPv6 header of an SR domain. Unlike other proposed methods
   before, which will bring side effects on existed functions, by
   encoding network slicing identifier in the source IPv6 address of

Cheng, et al.          Expires October 18, 2023               [Page 2]
Internet-Draft    Encoding Network Slice Identification      April 2023

   the outer header, this method avoids the drawbacks which previous
   proposals incur.

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.

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.

Cheng, et al.          Expires October 18, 2023               [Page 3]
Internet-Draft    Encoding Network Slice Identification      April 2023

    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 (1)    |           Flow Label                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Payload Length        |  Next Header  |   Hop Limit   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |            SPI (2)            ~                               |
   ++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-                               +
   |                                                               |
   +                         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:

   o 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.

   o 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. In this case,
      the IPv6 address used as the network slice source address may
      have the following format:

      +------------+---------+---------+------+
      | 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.

Cheng, et al.          Expires October 18, 2023               [Page 4]
Internet-Draft    Encoding Network Slice Identification      April 2023

   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.

                       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

Cheng, et al.          Expires October 18, 2023               [Page 5]
Internet-Draft    Encoding Network Slice Identification      April 2023

   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.

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>.

Cheng, et al.          Expires October 18, 2023               [Page 6]
Internet-Draft    Encoding Network Slice Identification      April 2023

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>.

   [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-14, August 2022,
             <https://www.ietf.org/archive/id/draft-ietf-teas-ietf-
             network-slices-14.txt>.

Cheng, et al.          Expires October 18, 2023               [Page 7]
Internet-Draft    Encoding Network Slice Identification      April 2023

Authors' Addresses

   Weiqiang Cheng
   China Mobile
   Beijing
   China
   Email: chengweiqiang@chinamobile.com

   Guangming Yang
   China Telecom
   No.109 West Zhongshan Ave., Tianhe District
   Guangzhou
   China
   Email: yangguangm.chinatelecom.cn@hotmail.com

   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

   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 October 18, 2023               [Page 8]