Internet-Draft | Data Fields for DetNet Enhanced Data Pla | July 2024 |
Xiong, et al. | Expires 2 January 2025 | [Page] |
The DetNet-specific metadata should be carried in enhanced data plane based on the enhancement requirements. This document proposes the common DetNet data fields and option types such as Aggregation Option and Deterministic Latency Option. The common DetNet Data-Fields can be encapsulated into a variety of protocols such as MPLS, IPv6 and SRv6 networks.¶
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 2 January 2025.¶
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 (https://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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
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]. 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 has been proposed to guarantee the bounded latency in IEEE802.1 TSN (Time-Sensitive Networking) Task Group. But 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-dataplane-taxonomy] has discussed the data plane enhancement solutions and queuing mechanisms in DetNet, and also described the classification criteria and the suitability of the solutions for various services. For scaling networks, [I-D.ietf-detnet-scaling-requirements] has described the enhancement requirements for DetNet enhanced data plane, such as aggregated flow identification and deterministic latency guarantees. For example, the flow identification with service-level aggregation and explicit aggregated flow identification should be supported. And queuing mechanisms and solutions require different information to be defined as the DetNet-specific metadata to help the functions of ensuring deterministic latency, including regulation, queue management, etc.¶
This document discusses the specific metadata which should be carried in enhanced data plane and proposes the common DetNet data fields and option types such as Aggregation Option and Deterministic Latency Option. The common DetNet Data-Fields can be encapsulated into a variety of protocols such as MPLS, IPv6 and SRv6 networks.¶
The terminology is defined as [RFC8655], [RFC8938] and [I-D.ietf-detnet-scaling-requirements].¶
Deterministic Latency (DL): The bound of network latency and delay variation between two DetNet endpoints.¶
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:¶
As per [RFC8655], the DetNet data plane must support the aggregation of DetNet flows in order to support larger numbers of DetNet flows and improve scalability by reducing the per-hop states. And the flow aggregation may be necessary for scaling networks. As per [I-D.ietf-detnet-scaling-requirements], the deterministic services may demand different deterministic QoS requirements according to different levels of application requirements. For example, industrial applications may demand tight jitter, strict latency limit requirements. The video applications may demand relative loose latency requirements and so on. The flow identification with service-level aggregation and explicit aggregated flow identification should be supported.¶
The flow identification is required to be dynamic and simplified to ensure the aggregated flows have compatible DetNet flow-specific QoS characteristics. In DetNet MPLS, A-Label defined as per [RFC8964] can be added explicitly to the packets. But in other DetNet data plane, no aggregated flow specific information is available. And for the data plane, individual flows may be aggregated for treatment based on shared service specification on aggregated-class level which identified by an aggregation class as per [I-D.xiong-detnet-flow-aggregation]. The aggregation-based metadata should be defined as the DetNet-specific metadata for DetNet enhanced data plane. The DetNet nodes along the path can identify the aggregated flow to achieve the end-to-end QoS in scaling networks.¶
As described in [RFC9320], the end-to-end bounded latency depends on the queuing delay bound and the queuing mechanisms. Multiple queuing mechanisms have been proposed such as TAS [IIEEE802.1Qbv], CBS [IEEE802.1Q-2014],ATS [IEEE802.1Qcr], CQF [IEEE802.1Qch] and so on.¶
In scaling networks which has large variation in latency among hops, great number of flows and multiple domains, [I-D.ietf-detnet-scaling-requirements] has described the technical requirements for enhanced data plane solutions. Many variations and extensions of queuing mechanisms have been proposed to resolve the scalability issues in DetNet. [I-D.ietf-detnet-dataplane-taxonomy] has described the classification criteria of the solutions. As shown in Figure 1, the CQF variations for cyclic-based scheduling includes the ECQF [IEEE 802.1Qdv], Multi-CQF [I-D.dang-queuing-with-multiple-cyclic-buffers], TCQF [I-D.eckert-detnet-tcqf] and CSQF [I-D.chen-detnet-sr-based-bounded-latency]. The TAS variations for timeslot-based scheduling includes TQF [I-D.peng-detnet-packet-timeslot-mechanism]. The FQ variations for rate-based scheduling includes C-SCORE [I-D.joung-detnet-stateless-fair-queuing] ATS [IEEE802.1Qcr] and gLBF [I-D.eckert-detnet-glbf]. The EDF variations for deadline-based scheduling includes EDF[I-D.peng-detnet-deadline-based-forwarding] and Local Deadline [I-D.stein-srtsn]. The Damper variations for damper-based scheduling includes Damper [I-D.mohammadpour-detnet-bounded-delay-variation] and gLBF [I-D.eckert-detnet-glbf].¶
And when queuing mechanisms used in large-scale networks, the per-flow states can not be maintained with scalability issues. 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. As per [I-D.ietf-detnet-scaling-requirements], the information used by functions ensuring deterministic latency should be supported as such queuing-based information. And queuing mechanisms and solutions require different information to help the functions of ensuring deterministic latency, including regulation, queue management. The deterministic latency metadata should be defined as the DetNet-specific metadata for DetNet enhanced data plane. The DetNet forwarding nodes along the path can apply the queuing mechanisms and get the related deterministic latency metadata in the packet to achieve the end-to-end bounded latency.¶
The enhanced functions and related metadata for DetNet should be confirmed before the encapsulations. While more than one metadata should be carried in enhanced data plane, the common DetNet header should be considered to cover all option-types and data.¶
DetNet-Type: 8-bit unsigned integer, defining the DetNet Option-type for enhanced DetNet. This document defines two options and option-types:¶
Aggregation Option as defined in section 5.¶
Deterministic Latency Option as defined in section 6.¶
DetNet-Length: 8-bit unsigned integer, defined the Length of the DetNet Header 4-octet units.¶
Aggregation type(16 bits): indicates the aggregation type of packet treatment ensuring the deterministic latency as following shown. This type can also indicate the aggregated class.¶
Flag: 8-bit flags field. When E is set to 1, it indicates the explicit aggregated flow identification. The related option data is defined as following section.¶
Data Len:8-bit unsigned integer. Length of option data, in octets.¶
Aggregation ID: 32bits. It provides explicit and unique identifier for aggregated flow identification. DetNet nodes performing aggregation using aggregation ID.¶
End-to-end Delay Budget: 32bits. It provides the value of end-to-end delay budget for the aggregated flow.¶
End-to-end Delay Variation Budget: 32bits. It provides the value of end-to-end delay variation budget for the aggregated flow.¶
The DetNet Deterministic Latency 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 Deterministic Latency Option consist of a fixed-size "Deterministic Latency Option Header" and a variable-size "Deterministic Latency 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.¶
DetNet Deterministic Latency Option header:¶
Deterministic Latency Type(16 bits): indicates the type of deterministic latency information and related queuing and scheduling metadata.¶
Flag: 8-bit flags field.¶
Data Len: 8-bit unsigned integer. Length of option data, in octets.¶
DetNet Deterministic Latency Action option data MUST be aligned by 4 octets:¶
Deterministic latency 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 deterministic latency type. The DetNet option data can be provided one time or in list. The examples of different types of data is as following sections shown.¶
When the type is set to 0x0001, indicates the Cyclic-based queuing and scheduling solutions. The cycle information may be carried and designed as following shown:¶
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.¶
When the type is set to 0x0002, indicates the timeslot-based queuing and scheduling solutions. The timeslot information may be carried and designed as follow:¶
Timeslot ID: indicates the identifier of the timeslot as defined in [I-D.peng-detnet-packet-timeslot-mechanism].¶
When the type is set to 0x0003, indicates the deadline-based queuing and scheduling solutions. The deadline information may be carried and designed as follow:¶
Planned and deadline Deviation has been provided as defined in [I-D.peng-6man-deadline-option]. Local deadline has been proposed in [I-D.stein-srtsn].¶
When the type is set to 0x0004, indicates the rate-based queuing and scheduling solutions. The ratio information may be carried and designed as follow:¶
Maximum packet size and service rate has been described as per C-SCORE [I-D.joung-detnet-stateless-fair-queuing] which the latency bound is primarily influenced by the ratio of a flow's maximum packet size to its allocated service rate.¶
When the type is set to 0x0005, indicates the damper-based queuing and scheduling solutions. The damper information may be carried and designed as follow:¶
Damper information such as timestamps and budget delay should be carried to compute the compensate PDV by means of dampers as per [I-D.mohammadpour-detnet-bounded-delay-variation].¶
The packet treatment should indicate the behaviour action ensuring the deterministic latency at DetNet nodes such as queuing-based mechanisms. The deterministic latency action type and related parameters such as queuing-based information should be carried as metadta in data plane. And the definitions may follow these polices.¶
The data plane enhancement must be generic and the format must be applied to all functions and queuing mechanisms. 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 deterministic latency related scheduling along the forwarding path. For example, the queuing-based information should be carried in metadata for coordination between nodes.¶
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.¶
DetNet needs to encode specific aggregated flow and deterministic latency metadata in packets by reusing the existing fields or new fields.¶
Reusing the DSCP or existing field is reasonable and simple to define and easy to standardize. For example, in 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.¶
DSCP value may be not sufficient and hard to distinguish between the original DiffServ service and the deterministic service. 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.sxg-mpls-mna-deterministic-latency], IPv6 [I-D.xiong-detnet-6man-queuing-option], SRv6 [I-D.xiong-detnet-spring-srh-extensions] and so on.¶
Security considerations for DetNet are covered in the DetNet Architecture [RFC8655] and DetNet data plane [RFC8938], [RFC8939], [RFC8964] and DetNet security considerations [RFC9055]. The security considerations specified in [I-D.ietf-detnet-scaling-requirements] are also applicable to the procedures defined in this document.¶
IANA has defined a registry group named "DetNet Data Fields". This group includes the DetNet Option-Type registry. This registry defines code points for the DetNet Option-Type field for identifying DetNet-Option-Types. The following code points are defined in this document:¶
TBD1: DetNet Aggregation Option-Type¶
TBD2: DetNet Deterministic Latency Option-Type¶
The authors would like to acknowledge Peng Liu, Bin Tan for his thorough review and very helpful comments.¶