Internet-Draft | MPLS Sub-Stack for DLA | October 2022 |
Song & Xiong | Expires 27 April 2023 | [Page] |
This document specifies formats and principals for the MPLS header which contains the Deterministic Latency Action (DLA) information, designed for use over a DetNet network with MPLS data plane. It enables guaranteed delay support and makes scheduling decisions for time-sensitive service running on DetNet nodes that operate within a constrained network domain.¶
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 27 April 2023.¶
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 (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.¶
As specified in [RFC8655] and [RFC8938], Deterministic Networking (DetNet) operates at the IP layer and delivers service with low data loss rates and bounded latency guarantee within a network domain.¶
As defined in [RFC8964], the DetNet MPLS data plane provides a foundation of building blocks to enable PREOF (Packet Replication, Elimination and Ordering Functions (PREOF)) functions to DetNet service and forwarding sub-layer. The DetNet service sub-layer includes a DetNet Control Word (d-CW), service label (S-Label), an aggregation label (A-Label) in special case of S-Label used for aggregation. The DetNet forwarding sub-layer supports one or more forwarding labels (F-Labels) used to forward a DetNet flow over MPLS domains. The DetNet forwarding sub-layer provides corresponding forwarding assurance with IETF existing functions using resource allocations and explicit routes. But these functions can not provide the deterministic latency (including bounded latency, low packet loss and in-order delivery) assurance.¶
To support time-sensitive service with ultra-low loss rates and deterministic latency, it is required to apply feasible scheduling mechanisms to specific applications for deterministic networking. As described in [I-D.ietf-detnet-bounded-latency], the end-to-end bounded latency is considered as the sum of non-queuing and queuing delay bounds along with the queuing mechanisms. The value for non-queuing delay bounds (which consist of packet output delay, link delay, frame preemption delay and processing delay) is relative with the physical capability of on-used networks and can be considered to be stable. The unstable latency delay bounds are mainly from queuing delay and regulation delay. The regulation delay is mainly from regulation policy. To simplify the question this draft assumes there is no regulation policy. So the question is left to address the selection for queuing mechanisms and queuing delay information encapsulation in data plane.¶
The queuing mechanisms, as mentioned in [I-D.ietf-detnet-bounded-latency] and [RFC8655], which include Time Aware Shaping IEEE802.1Qbv, Asynchronous Traffic Shaping IEEE802.1Qcr, cyclic-scheduling queuing mechanism proposed in IEEE802.1Qch. In terms of delay guarantee, to select the right scheduling/queuing mechanism applied to a specific application is required.¶
Based on the existing DetNet MPLS encapsulations and mechanisms [RFC8964], the draft defines the encoding format for Deterministic Latency Action (DLA) carried in MPLS sub-stack.¶
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.¶
Refer to [RFC8655], [RFC8964], [I-D.jags-mpls-mna-hdr] and [I-D.ietf-detnet-bounded-latency] for the key terms used in this document.¶
[RFC8655] provides the architecture for deterministic networking (DetNet) which enables the service delivery of DetNet flows with extremely low packet loss rates and deterministic latency. The forwarding sub-layer provides corresponding forwarding assurance but can not provide the deterministic latency (including bounded latency, low packet loss and in-order delivery). As described at [I-D.ietf-detnet-bounded-latency], the end-to-end bounded latency for one DetNet flow is the sum of delay bound of non-queuing and queuing processing latency. The delay bound for non-queuing processing may include output delay, link delay, frame preemption delay, and processing delay, the delay bound for queuing processing may include regulator delay, queuing delay. It is assumed that the delay of non-queuing processing is fixed or be ignorable, the delay of queuing processing is variable. To realize the guarantee of bounded latency service it is important to select right queuing methodology applied to specific applications and carry necessary queuing delay information for computation of end-to-end latency.¶
The DetNet data plane encapsulation in transport network with MPLS data plane is specified in [RFC8964]. This document provides additional encapsulation for the DLA in MPLS data plane.¶
The DetNet MPLS header follows [RFC8964], as showed the below figure 1, the SP-Lable (SPL) is added to indicate Deterministic Latency Action (DLA).¶
+---------------------------+ | DetNet App-Flow | | Payload Packet | +---------------------------+--\ | DetNet Control Word | | +---------------------------+ | | S-Label | | DetNet Data Plane +---------------------------+ | MPLS Encapsulation | SP-Lable | | +---------------------------+ | | F-Label(s) | | +---------------------------+--/ | Data-Link | +---------------------------+ | Physical | +---------------------------+
The SPL (Special Purpose Label) may be B-SPL [RFC9017], new-SPL, extended SPL [RFC9017]. This draft follows the MNA (MPLS Network Action) solution specified in [I-D.jags-mpls-mna-hdr] and [I-D.ietf-mpls-mna-fwk], and uses b-SPL to indicate the presence of the MPLS Network Action Sub-Stack (NASS). The value for the bSPL value is to be assigned by IANA and follows the assignment in [I-D.jags-mpls-mna-hdr]. The SP-Label field is formatted as below figure.¶
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NASI Label = bSPL (TBA1) | TC |S| TTL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
NASI Label:¶
A new bSPL value is to be assigned by IANA. It is used to indicate the presence of the MPLS Network Action Sub-Stack (NASS). The assignment for this field value refers to [I-D.jags-mpls-mna-hdr].¶
The MPLS sub-stack encoding format for DetNet Latency Action (DLA) is showed as figure 3. The format provides DetNet Latency Network Action Indicator (NAI) indicates the specific DLA. Its detailed information is carried in Ancillary Data.¶
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NAI-Opcode | Flag-Based NAI |R| 2 |S| 0 |IHS| NASL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |1| Ancillary Data |S| Ancillary Data| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |1| Ancillary Data |S| Ancillary Data| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
NAI-Opcode:¶
This is the first 8-bit value in the Label Field. The value is used to indicate DLA and to be assigned by IANA. It ranges from 0 to 255.¶
Flag-Based NAIs:¶
The Flag-Based NAIs field carries flags for DetNet Queuing mechanisms.¶
R bit:¶
R bit in the TC field is Reserved for future use.¶
NAL (Network Action Length):¶
The 2-bit field in TC is used to carry the number of additional LSEs used to carry the Ancillary Data for the Network Action. The NAL value for DetNet is set to 2.¶
S bit:¶
Indicator for bottom of MPLS stack.¶
P,H (Post-Stack Network Action Presence and Post-Stack Hop-By-hop processing Indicator) bit:¶
This is 2-bit flag, where "P" bit indicates the presence of Post-Stack Network Actions and "H" bit indicates the presence of Post-Stack Hop-By-Hop and/or Select processing scope options. While encoding the Post-Stack NAs, the HBH/Select scope NAs MUST be encoded first (closer to the BOS) and then I2E. The DetNet Queuing Option is proposed to use in-stack encoding, the P,H field is set to 0.¶
IHS (I2E, HBH, and Select Scope):¶
This 2-bit value indicates the scope of In-Stack NAIs. DetNet Queuing Option is considered to be processed by HBH, so the value is set to 01 refers to table 1 in [I-D.jags-mpls-mna-hdr].¶
NASL (Network Action Sub-Stack Length):¶
This is a 4-bit field in the TTL. This indicates the total length of the current NASS.¶
The first bit in the Label field of the second and third LSE MUST be set to "1". As specified in [I-D.jags-mpls-mna-hdr] this is to prevent aliasing the label field with other bSPLs on the legacy routers.¶
Ancillary Data:¶
The 19-bit Label field and 4-bit TC field and 8-bit TTL field (except S bit) in the additional LSEs are used to carry the Ancillary Data for specific DetNet queuing delay information.¶
The Flag-Based NAIs field is designed as follow:¶
0 1 2 3 4 5 6 7 0 1 2 3 4 +-+-+-+-+-+-+-+-+-+-+-+-+ |T|P|C| | +-+-+-+-+-+-+-+-+-+-+-+-+
T Flag: 1 bit, TAS (Time Aware Shaping) [IIEEE802.1Qbv] queuing indicator. If the flag is set 1, the TAS is used for the DetNet flows, the can be correlated with the special label encapsulated in figure 2, or be mapped with F-Label (s) or S-Label showed in figure 1.¶
P Flag: 1 bit, Credit-Based Shaper [IEEE802.1q-2014] queuing indicator.¶
C Flag: 1 bit, CQF [IEEE802.1Qch] queuing indicator.¶
Note: For one specific DetNet flow, there is one or more choices for queuing mechanisms selection, the queuing mechanisms can be used respectively or combined with each other.¶
If the flag field is set 1 it will associate its AD (Ancillary Data) for specific queuing delay information. The encapsulation for AD is showed as TLV format.¶
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Special Queuing Ancillary Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The encapsulation for specific queuing delay information follows the requirements and framework of MPLS MNA discussed in MPLS WG.¶
The encapsulation for Special Queuing Ancillary Data field is specific for queuing mechanisms. For example, the deadline queuing may carry deadline delay information, refer to [I-D.peng-6man-deadline-option].The cyclic-scheduling queuing may carry cycle ID related information, refer to [I-D.dang-queuing-with-multiple-cyclic-buffers]. The detailed format depends on the discussion on the corresponding drafts and left for FFS.¶
This document describes a new IANA-managed registry to identify DetNet application processing. The registration procedure is "IETF Review" [RFC8126]. The registry name is "NAI-Opcode" and assigned for DetNet application, as defined in Table 1.¶
Value | Description | Reference |
---|---|---|
0-255 | NAI-Opcode | this document |
This document describes a new IANA-managed registry to identify DetNet MPLS Queue Flags Bits. The registration procedure is "IETF Review" [RFC8126]. The registry name is "Flag-based-NAIs". There is 12-bit Flag field, as defined in Table 2.¶
Bit | Description | Reference |
---|---|---|
0-7 | Flags for DLA Indicator | this document |
Security considerations for DetNet are covered in the DetNet Architecture RFC8655 and DetNet Security Considerations [RFC9055]. MPLS security considerations are covered in [RFC8964], [RFC3031], [RFC3032]. These security considerations also apply to this document.¶
The authors would like to acknowledge Shaofu Peng for his thorough review and very helpful comments.¶