Internet-Draft Data Fields for DetNet Enhanced Data Pla March 2023
Xiong & Yang Expires 11 September 2023 [Page]
Workgroup:
DETNET
Internet-Draft:
draft-xiong-detnet-data-fields-edp-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
Q. Xiong
ZTE Corporation
D. Yang
Beijing Jiaotong University

Data Fields for DetNet Enhanced Data Plane

Abstract

This document discusses the specific metadata which should be carried in Enhanced Data plane (EDP), proposes the DetNet data fields and option types for EDP such as Deterministic Latency Action Option. DetNet Data-Fields for EDP can be encapsulated into a variety of protocols such as MPLS, IPv6 and SRv6 networks.

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.

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]. The existing deterministic technologies are facing large-scale number of nodes and long-distance transmission, traffic scheduling, dynamic flows, and other controversial issues in large-scale networks. The DetNet Enhanced Data plane (EDP) is required to support a data plane method of flow identification and packet treatment. [I-D.ietf-detnet-scaling-requirements]has described the enhancement requirements for DetNet enhanced data plane, such as aggregated flow identification, redundancy, explicit path selection and deterministic latency guarantees. [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 enhanced DetNet.

This document discusses the specific metadata which should be carried in Enhanced Data plane (EDP), proposes the DetNet data fields and option types for EDP such as Deterministic Latency Action Option. DetNet Data-Fields for EDP can be encapsulated into a variety of protocols such as MPLS, IPv6 and SRv6 networks.

2. Conventions used in this document

2.1. Terminology

The terminology is defined as [RFC8655], [RFC8938] and [I-D.ietf-detnet-scaling-requirements].

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. Specific Metadata for DetNet Enhanced Data Plane

3.1. Queuing-based Metadata

The queuing-based mechanisms is an important type of resource to ensure the deterministic latency. As described in [RFC9320], the end-to-end bounded latency depends on the value of queuing delay bound along with the queuing mechanisms. Multiple queuing mechanisms can be used to guarantee the bounded latency in DetNet.

And many types of queuing mechanisms have been proposed to provide diversified deterministic service for various applications. For example, time-scheduling queuing mechanisms includes the TAS (Time Aware Shaping) [IIEEE802.1Qbv] and priority-scheduling includes the CBS (Credit-Based Shaper)[IEEE802.1Q-2014] with ATS (Asynchronous Traffic Shaping)[IEEE802.1Qcr]. The cyclic-scheduling queuing mechanism has been proposed such as CQF (Cyclic Queuing and Forwarding) in [IEEE802.1Qch] and improved in [I-D.dang-queuing-with-multiple-cyclic-buffers]. The deadline-scheduling queuing mechanism has been proposed in [I-D.stein-srtsn] and improved in [I-D.peng-detnet-deadline-based-forwarding]. The per-flow queuing mechanism includes Guaranteed-Service Integrated service (IntServ) [RFC2212]. The asynchronous queuing mechanism includes the Asynchronous Deterministic Networking (ADN) as per [I-D.joung-detnet-asynch-detnet-framework]. The Packet Timeslot Mechanism is also proposed as per [I-D.peng-detnet-packet-timeslot-mechanism]. The functions such as the queuing mechanisms should be provided for enhanced DetNet to ensure the deterministic latency.

And when queuing mechanisms used in large-scale networks, some queuing parameters should be carried for coordination between nodes so as to make appropriate packet forwarding and scheduling decisions to meet the time bounds. The DetNet forwarding nodes along the path can apply the function and the deterministic latency related information should be carried as metadata in the packet to achieve the end-to-end bounded latency.

4. Data Fields for DetNet Enhanced Data Plane

4.1. DetNet Option-Types and Data-Fields

The enhanced functions and related metadata for DetNet EDP should be confirmed before the encapsulations. While more than one metadata should be carried in EDP, the common DetNet Header for EDP should be considered to cover all option-types and data.

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | DetNet-Type   | DetNet-Length |         RESERVED              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                                                               |
   ~                 DetNet Option and Data Space                  ~
   |                                                               |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 1: DetNet Header for EDP

DetNet-Type: 8-bit unsigned integer, defining the DetNet Option-type for EDP. This document defines an Option:

Deterministic Latency Action Option as defined in section 4.2.

DetNet-Length: 8-bit unsigned integer, defined the Length of the DetNet Header for EDP in 4-octet units.

4.2. DetNet Deterministic Latency Action Option

The DetNet Deterministic Latency Action (DLA) Option carries data that is added by the DetNet encapsulating node and interpreted by the decapsulating node. The DetNet transit nodes MAY process the data by forwarding the option data determined by option type and may modify it. The DetNet DLA Option consist of a fixed-size "DetNet DLA Option Header" and a variable-size "DetNet DLA Option Data". The Header and Data may be encapsulated continuously or separately. A Data or more than one Data in lists can be carried in packets.

4.2.1. DetNet DLA Option Header

DetNet Deterministic Latency Action (DLA) Option 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
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        DLA Type               |   Data Len    | Ancillary Len |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 2: DLA Option header

DLA(Deterministic Latency Action) Type(16 bits): indicates the type of deterministic latency actions for DetNet metadata.

The DLA Type can be divided into two parts including behaviour action type and function/queuing type. The format is 16 bits such as 0xFFFF.

The DLA Type field is designed as follow:


         0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |  DLA B-type   |  DLA Q-type   |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: DLA Type

4.2.1.1. DetNet DLA Behaviour Type

DLA B-type(8 bits): indicates the behaviour action type of packet treatment ensuring the deterministic latency as following shown.



        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        | Type  |   Behaviour  Action                 |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0000 |   Unassigned                        |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0100 |  Bandwidth guarantee                |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0200 |  Jitter guarantee                   |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0300 |  Delay guarantee                    |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0400 |  Low delay and jitter guarantee     |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0500 |Ultra-low delay and jitter guarantee |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 4: Behaviour Type (B-type)

4.2.1.2. DetNet DLA Queuing Type

DLA Q-type(8 bits): indicates the type of queuing-based mechanisms or functions ensuring the deterministic latency and related metadata. For example, the functions such as a particular queuing mechanism may be indicated and related parameters should be provided as section 3.1.2 shown.



        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |Sub-type|   Queuing/Function Action          |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0000  |   Unassigned                       |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0001  |  Cycle Information                 |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0002  |  Deadline Information              |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0003  |  Local Deadline Information        |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |0x0004  |  Time Slot Information             |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 5: Queuing/Function Action Sub-type

Data Len: 8-bit unsigned integer. Length of DLA option data, in octets.

Ancillary Len: 8-bit unsigned integer. Length of DLA ancillary data, in octets.

The types of Deterministic Latency functions should cover all the mechanisms ensuring the Deterministic Latency such as the existing queuing and scheduling mechanisms and other mechanisms which may be proposed in the future.

4.2.2. DetNet DLA Option Data

DetNet Deterministic Latency Action option data MUST be aligned by 4 octets:

         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 option data field determined by DLA Q-Type (variable) |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     DLA ancillary data field determined by DLA Type (variable)|
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 6: DLA Option Data Field

DLA option data: Variable-length field. It provides function-based or queuing-based information for a node to forward a DetNet flow. The data of which is determined by the DLA Q-type. The examples of different types of queuing-based data is as following sections shown.

DLA ancillary data: Variable-length field. It provides additional information for a node to forward a DetNet flow. The data of which is determined by the DLA type.

The DetNet option data and Ancillary data can be provided one time or in list.

4.2.2.1. Cycle Queuing Data

When the Sub-type is set to 0x0001, indicates the Multiple Cyclic Queuing mechanism as defined in [I-D.dang-queuing-with-multiple-cyclic-buffers]. The Cycle Queuing Data may be carried and designed as following shown:


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                     Cycle Profile ID                          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                        Cycle ID                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 7: Cycle Queuing Data

Cycle Profile ID (32bits): indicates the profile ID which the cyclic queue applied at a node.

Cycle ID (32bits): indicates the Cycle ID for a node to forward a DetNet flow.

4.2.2.2. Deadline Queuing Data

When the Sub-type is set to 0x0002, indicates the deadline mechanisms as defined in [I-D.peng-detnet-deadline-based-forwarding]. The Deadline Queuing Data may be carried and designed as follow:


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     Flags |M|D|              Planned Deadline                 |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | Accumulated Planned Deadline / Accumulated Deadline Deviation |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |          Accumulated Actual Residence Time / Reserved         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Figure 8: Deadline Queuing Data

Planned and deadline Deviation has been provided as defined in [I-D.peng-6man-deadline-option].

4.2.2.3. Local Deadline Queuing Data

When the Sub-type is set to 0x0003, indicates the local deadline mechanisms as defined in [I-D.stein-srtsn]. The Local Deadline Queuing Data may be carried and designed as follow:


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                           Local Deadline                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 9: Local Deadline Queuing Data

Local Deadline: indicates the local deadline as defined in [I-D.stein-srtsn].

4.2.2.4. Timeslot Queuing Data

When the Sub-type is set to 0x0004, indicates the local deadline mechanisms as defined in [I-D.peng-detnet-packet-timeslot-mechanism]. The time-slot information may be carried and designed as follow:


    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                            Timeslot ID                        |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 10: Timeslot Queuing Data

Timeslot ID: indicates the identifier of the timeslot as defined in [I-D.peng-detnet-packet-timeslot-mechanism].

5. Encapsulation Considerations for DetNet Enhanced Data Plane

5.1. Metadata for DetNet Enhanced Data Plane

For the functions ensuring the deterministic latency such as queuing mechanisms should be provided and the queuing related information should be carried as metadata. The metadata and definitions should be common among different candidate queuing solutions.

Information and metadata MUST be simplified and limited to be carried in DetNet packets for provided bounded latency related scheduling along the forwarding path.

The requirement of the flow or service may be not suitable to be carried explicitly in DetNet data plane. The packet treatment should schedule the resources and indicate the behaviour to ensure the deterministic latency in forwarding sub-layer. So the queuing mechanisms could be viewed as a type of deterministic resources. The resources type and queuing type should be explicitly indicated.

5.2. Encoding for DetNet Enhanced Data Plane

For IPv4 and traditional MPLS networks, it is not suitable to carry new metadata and it is suggested to reuse the original bits such as DSCP [I-D.eckert-detnet-tcqf]. The mapping from DSCP and the metadata such as queuing information MUST be provided in the controller plane.

The DetNet-specific metadata can also be encoded as a common data fields and the definition of data fields is independent from the encapsulating protocols. The data fields could be encapsulated into a variety of protocols, such as MPLS 2.0 [I-D.sx-detnet-mpls-queue], IPv6 [I-D.xiong-detnet-6man-queuing-option], SRv6 [draft-xiong-detnet-spring-srh-extensions] and so on.

6. Security Considerations

TBA

9. Normative References

[I-D.dang-queuing-with-multiple-cyclic-buffers]
Liu, B. and J. Dang, "A Queuing Mechanism with Multiple Cyclic Buffers", Work in Progress, Internet-Draft, draft-dang-queuing-with-multiple-cyclic-buffers-00, , <https://datatracker.ietf.org/doc/html/draft-dang-queuing-with-multiple-cyclic-buffers-00>.
[I-D.eckert-detnet-tcqf]
Eckert, T. T., Bryant, S., Malis, A. G., and G. Li, "Deterministic Networking (DetNet) Data Plane - Tagged Cyclic Queuing and Forwarding (TCQF) for bounded latency with low jitter in large scale DetNets", Work in Progress, Internet-Draft, draft-eckert-detnet-tcqf-01, , <https://datatracker.ietf.org/doc/html/draft-eckert-detnet-tcqf-01>.
[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.joung-detnet-asynch-detnet-framework]
Joung, J., Ryoo, J., Cheung, T., Li, Y., and P. Liu, "Asynchronous Deterministic Networking Framework for Large-Scale Networks", Work in Progress, Internet-Draft, draft-joung-detnet-asynch-detnet-framework-01, , <https://datatracker.ietf.org/doc/html/draft-joung-detnet-asynch-detnet-framework-01>.
[I-D.peng-6man-deadline-option]
Peng, S., Tan, B., and P. Liu, "Deadline Option", Work in Progress, Internet-Draft, draft-peng-6man-deadline-option-01, , <https://datatracker.ietf.org/doc/html/draft-peng-6man-deadline-option-01>.
[I-D.peng-detnet-deadline-based-forwarding]
Peng, S., Tan, B., and P. Liu, "Deadline Based Deterministic Forwarding", Work in Progress, Internet-Draft, draft-peng-detnet-deadline-based-forwarding-04, , <https://datatracker.ietf.org/doc/html/draft-peng-detnet-deadline-based-forwarding-04>.
[I-D.peng-detnet-packet-timeslot-mechanism]
Peng, S., Tan, B., and P. Liu, "Generic Packet Timeslot Mechanism", Work in Progress, Internet-Draft, draft-peng-detnet-packet-timeslot-mechanism-00, , <https://datatracker.ietf.org/doc/html/draft-peng-detnet-packet-timeslot-mechanism-00>.
[I-D.stein-srtsn]
Stein, Y. J., "Segment Routed Time Sensitive Networking", Work in Progress, Internet-Draft, draft-stein-srtsn-01, , <https://datatracker.ietf.org/doc/html/draft-stein-srtsn-01>.
[I-D.sx-detnet-mpls-queue]
Song, X. and Q. Xiong, "MPLS Sub-Stack Encapsulation for Deterministic Latency Action", Work in Progress, Internet-Draft, draft-sx-detnet-mpls-queue-03, , <https://datatracker.ietf.org/doc/html/draft-sx-detnet-mpls-queue-03>.
[I-D.xiong-detnet-6man-queuing-option]
Xiong, Q. and J. Zhao, "DetNet Deterministic Latency Option for IPv6", Work in Progress, Internet-Draft, draft-xiong-detnet-6man-queuing-option-03, , <https://datatracker.ietf.org/doc/html/draft-xiong-detnet-6man-queuing-option-03>.
[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>.
[RFC2212]
Shenker, S., Partridge, C., and R. Guerin, "Specification of Guaranteed Quality of Service", RFC 2212, DOI 10.17487/RFC2212, , <https://www.rfc-editor.org/info/rfc2212>.
[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>.
[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
Dong Yang
Beijing Jiaotong University
Beijing
China