Internet-Draft Segment Routing Header Extensions for De March 2023
Xiong, et al. Expires 11 September 2023 [Page]
Workgroup:
DETNET
Internet-Draft:
draft-xiong-detnet-spring-srh-extensions-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
Q. Xiong
ZTE Corporation
H. Wu
ZTE Corporation
D. Yang
Beijing Jiaotong University

Segment Routing Header Extensions for DetNet Data Fields

Abstract

This document defines how DetNet data fields are encapsulated as part of the Segment Routing with IPv6 data plane (SRv6) header [RFC8754].

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 11 September 2023.

Table of Contents

1. Introduction

According to [RFC8655], Deterministic Networking (DetNet) operates at the IP layer and delivers service which provides extremely low data loss rates and bounded latency within a network domain. DetNet data planes has been specified in [RFC8938]. [I-D.ietf-detnet-scaling-requirements]has described the enhancement requirements for DetNet enhanced data plane in large-scale networks. [I-D.xiong-detnet-large-scale-enhancements] has proposed the overall framework of DetNet enhancements for large-scale deterministic networks. The packet treatment should schedule the resources and indicate the behaviour to ensure the deterministic latency. Moreover, new functions and related metadata should be supported in DetNet Enhanced Data plane. [I-D.xiong-detnet-data-fields-edp] has proposed a common DetNet data fields and option types for enhanced DetNet data plane and defined a Deterministic Latency Action (DLA) option to carry queuing-based metadata.

This document defines how DetNet data fields are encapsulated as part of the Segment Routing with IPv6 data plane (SRv6) header [RFC8754].

2. Conventions used in this document

2.1. Terminology

The terminology is defined as [RFC8655] ,[RFC8938] and [RFC8754].

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

Abbreviations and definitions used in this document:

EDP:
Enhanced Data plane
SRH:
Segment Routing Header
SRv6:
Segment Routing for IPv6 forwarding plane
DLA:
Deterministic Latency Action

3. DetNet Data Fields Encapsulation in SRH

The DetNet data fields such as DLA option are defined in [I-D.xiong-detnet-data-fields-edp], and can be used for ensuring deterministic latency in enhanced DetNet data plane. The SRv6 encapsulation header (SRH) is defined in [RFC8754] and DetNet data fields can be encapsulated in the SRH.

The DetNet data fields can be divided into option header and data. And it can be carried in SRH extensions including the options such as SRH header field, segment List, TLV and the last segment. This enables the DetNet enhanced functions to build on the network programmability capability of SRv6.

The following sections discuss the optional SRH extensions for enhanced DetNet data plane in encapsulating the Deterministic Latency Action Option.

3.1. SRH Segment List Extensions

The DetNet data field can be carried in SRH segment list. This enables the ability of SRv6 networks to forward a DetNet flow per segment list. The SRH segment list extensions for DetNet DLA Option is as follows.



        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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Next Header   |  Hdr Ext Len  | Routing Type  | Segments Left |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |  Last Entry   |     Flags   |D|     TAG       |  DLA  Q-Type  |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[0] (128-bit IPv6 address)             |
    |            DLA Option Data List[0]                            |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |                                                               |
                                  ...
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[n] (128-bit IPv6 address)             |
    |            DLA Option Data List[n]                            |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    //                                                             //
    //         Optional Type Length Value objects (variable)       //
    //                                                             //
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


Figure 1: SRH Segment List Extensions for DLA Option

D (Deterministic Flag) : when it is set, indicates the SRH extension for DLA Option Data.

DLA Q-Type (8bits): as defined by the DLA Option Header field, and is defined in Section 4.2.1.2 of [I-D.xiong-detnet-data-fields-edp].

DLA Option Data List (variable): as defined by the DLA Option Data field, and is defined in Section 4.2.2 of [I-D.xiong-detnet-data-fields-edp].

3.2. SRH TLV Extensions

The DetNet data field can be carried in SRH TLV. This enables the ability for an SRv6 node to determine whether to process or ignore some specific SRH TLVs is based on the SID function. The nodes which support the enhanced DetNet functionality can process the SRH TLV and the others can ignore the SRH DetNet TLV. The SRH TLV for DetNet DLA Option is as follows.


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |  SRH-TLV-Type |SRH-TLV-Length |   DetNet-Type | DetNet-Length |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         DLA   Type            |   Data Len    | Ancillary Len |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                 DLA Data List[0](variable)                    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                            ...
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                 DLA Data List[n](variable)                    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 2: SRH TLV Extensions for DLA Option

SRH-TLV-Type/SRH-TLV-Length (8 bits): DetNet TLV Type for SRH is defined as TBA1. Length of the SRH TLV in 4-octet units. The fields related to the encapsulation of DetNet data fields in the SRH are defined as follows:

DetNet-Length (8 bits): indicates the DetNet option length.

DetNet-Type (8 bits): indicates the DetNet option type.

DLA Type (16 bits): as defined by the Option Type field, and is defined in Section 4.1 of [I-D.xiong-detnet-data-fields-edp].

Data Len (8 bits): unsigned integer. This field specifies the length of DLA option data added by each node.

Ancillary Len (8 bits): unsigned integer. This field specifies the length of DLA ancillary data added by each node.

DLA Data List(variable): as defined by the Data field including option data and ancillary data, and is defined in Section 4.2 of [I-D.xiong-detnet-data-fields-edp]. The DLA Option Data can be carried one time or in list.

3.3. SRH DetNet Segment Extensions

The DetNet data field can be carried in SRH segment called DetNet Segment when a particular option data is processed within each node. The mapping from DLA data of current node to DLA data of next node SHOULD be provided in the control plane. It SHOULD swap and encapsulate the DetNet Segment at each forwarding node. The SRH segment extensions for DetNet DLA Option is as follows.


    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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Next Header   |  Hdr Ext Len  | Routing Type  | Segments Left |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |  Last Entry   |     Flags   |D|              Tag              |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[0] (128-bit IPv6 address)             |
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |                                                               |
                                ...
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    |            Segment List[n] (128-bit IPv6 address)             |
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    | SRv6 DetNet Segment (Segment List[n+1] (128-bit IPv6 value)   |
    |                                                               |
    |                                                               |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    //                                                             //
    //         Optional Type Length Value objects (variable)       //
    //                                                             //
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 3: SRH DetNet Segment Extensions for DLA Option

D (Deterministic Flag) : when it is set, indicates the SRH extension for DLA Option Data.

The SRv6 DetNet Segment format is as follows.

     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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        DLA Type             |     Data len    | Ancillary Len |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     DLA Option data field determined by DLA Q-Type (variable) |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     DLA Ancillary data field determined by DLA Type (variable)|
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


Figure 4: DetNet Segment Format for DLA Option

The definition of the value can be referred as [I-D.xiong-detnet-data-fields-edp].

4. Security Considerations

TBA

5. IANA Considerations

TBA

6. Acknowledgements

TBA

7. Normative References

[I-D.ietf-detnet-scaling-requirements]
Liu, P., Li, Y., Eckert, T. T., Xiong, Q., Ryoo, J., zhushiyin, and X. Geng, "Requirements for Scaling Deterministic Networks", Work in Progress, Internet-Draft, draft-ietf-detnet-scaling-requirements-01, , <https://datatracker.ietf.org/doc/html/draft-ietf-detnet-scaling-requirements-01>.
[I-D.xiong-detnet-data-fields-edp]
Xiong, Q. and D. Yang, "Data Fields for DetNet Enhanced Data Plane", Work in Progress, Internet-Draft, draft-xiong-detnet-data-fields-edp-00, , <https://datatracker.ietf.org/api/v1/doc/document/draft-xiong-detnet-data-fields-edp/>.
[I-D.xiong-detnet-large-scale-enhancements]
Xiong, Q., Du, Z., Zhao, J., and D. Yang, "DetNet Data Plane Enhancements for Large-Scale Deterministic Networks", Work in Progress, Internet-Draft, draft-xiong-detnet-large-scale-enhancements-01, , <https://datatracker.ietf.org/doc/html/draft-xiong-detnet-large-scale-enhancements-01>.
[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>.
[RFC8655]
Finn, N., Thubert, P., Varga, B., and J. Farkas, "Deterministic Networking Architecture", RFC 8655, DOI 10.17487/RFC8655, , <https://www.rfc-editor.org/info/rfc8655>.
[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, , <https://www.rfc-editor.org/info/rfc8754>.
[RFC8938]
Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane Framework", RFC 8938, DOI 10.17487/RFC8938, , <https://www.rfc-editor.org/info/rfc8938>.
[RFC9320]
Finn, N., Le Boudec, J.-Y., Mohammadpour, E., Zhang, J., and B. Varga, "Deterministic Networking (DetNet) Bounded Latency", RFC 9320, DOI 10.17487/RFC9320, , <https://www.rfc-editor.org/info/rfc9320>.

Authors' Addresses

Quan Xiong
ZTE Corporation
No.6 Huashi Park Rd
Wuhan
Hubei, 430223
China
Haisheng Wu
ZTE Corporation
Nanjing
Jiangsu,
China
Dong Yang
Beijing Jiaotong University
Beijing
China