Internet-Draft DetNet MPLS Queue June 2022
Song & Xiong Expires 26 December 2022 [Page]
DetNet Working Group
Intended Status:
Standards Track
X. Song
ZTE Corp.
Q. Xiong
ZTE Corp.

DetNet Queue Encapsulation with MPLS Data Plane


This document specifies format and principals for the MPLS header which contains the queuing delay information, designed for use over a DetNet network with MPLS data plane. The guaranteed delay support enables forwarding and scheduling decisions for time-sensitive service running on DetNet transit nodes that operate within a constrained network domain. This document also specifies a representation for the delay field values in such 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

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 26 December 2022.

Table of Contents

1. Introduction

As specified in [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. The DetNet data planes specification refers to [RFC8938].

Based on the updates for DetNet Charter at March, 2022. It is required to support a data plane method of packet treatment including forwarding, service protection, and queuing over Layer 3. 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) and an identifying service label (S-Label), an aggregation label (A-Label) is a special case of S-Label used for aggregation. The DetNet forwarding sub-layer supports one or more forwarding labels (F-Labels) for providing necessary resource allocation and explicit routes.

To support time-sensitive service with ultra-low packet loss rates and bounded end-to-end delivery latency, necessary and feasible queuing mechanisms applied to specific applicability on DetNet flows are required. As described in [I-D.ietf-detnet-bounded-latency], the end-to-end bounded latency depends on the value of queuing delay bound along with the queuing mechanisms. The queuing methodology, mentioned in [I-D.ietf-detnet-bounded-latency] and [RFC8655], describes queuing mechanisms that can be used in packets of control and data plane to achieve DetNet service with bounded latency guarantee. The queuing mechanisms include, time-scheduling queuing mechanisms that include the Time Aware Shaping IEEE802.1Qbv, priority-scheduling queuing mechanisms that include the Credit-Based Shaper IEEE802.1Q-2014 with Asynchronous Traffic Shaping IEEE802.1Qcr, the cyclic-scheduling queuing mechanism proposed in IEEE802.1Qch.

This draft uses the queuing mechanisms described in [I-D.ietf-detnet-bounded-latency] as the proof for queuing selection, leverages the existing DetNet MPLS encapsulations and mechanisms [RFC8964], and defines the extensible DetNet MPLS options for queuing support over DetNet flows in the context of MPLS data plane so as to make appropriate packet forwarding and scheduling decisions to achieve the end-to-end bounded latency from customers' SLA requirements.

2. Conventions

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

Refer to [RFC8655], [RFC8964], and [I-D.ietf-detnet-bounded-latency] for the key terms used in this document.

3. DetNet queue encapsulation with MPLS data plane

3.1. Queuing delay

[RFC8655] provides the architecture for deterministic networking (DetNet) enables the service delivery of DetNet flows with extremely low packet loss rates and bounded end-to-end latency. The reference for computation and selection for methodology of queuing is described at [I-D.ietf-detnet-bounded-latency]. The end-to-end latency bound for one DetNet flow is the sum of delay bound of non-queuing and queuing processing. 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 queuing delay of DetNet flows in MPLS data plane.

3.2. DetNet MPLS Queue Encapsulation

DetNet MPLS Queue, uses DetNet-MPLS based encapsulation with queuing option extension, listed as the below,

|       DetNet App-Flow     |
|       Payload Packet      |
|     DetNet Control Word   |   |
+---------------------------+   |
|          S-Label          |   | DetNet Data Plane
+---------------------------+   | MPLS Encapsulation
|          F-Label(s)       |   |
+---------------------------+   |
|     SPL (DetNet Queque)   |   |
|         Data-Link         |
|          Physical         |
Figure 1: DetNet queue encapsulation in MPLS data plane

The SPL (Special Purpose Label) may be B-SPL [RFC9017], new-SPL, extended SPL [RFC9017]. Refer to [I-D.andersson-mpls-mna-fwk], the SPL carries the action indicator for queue support showed as the Figure 2.

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
|                Label                  |x x x|S|H|x x x x x x x|
         Label:  Label value, 20 bits
         x:      Bit available for other solutions definition
         S:      Bottom of Stack, 1 bit
         H:      Indicator of hop-by-hop processing, 1 bit
Figure 2: SPL encapsulation for DetNet queuing indicator

Generally speaking the queuing mechanisms are processed hop by hop, end-to-end processing for queuing support is FFS.

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      |      Flags    |           Length              |
|                         sub-TLV(s)                            |
+                                                               +
|                                                               |
         Type      :  Type value, TBD, 1 Octet
         Flags     :  Identifier for quequing mechanisms, 1 Octet
         Length    :  Length value, 2 Octet
         sub-TLV(s):  Specific ququing information carried, 8 Octet
Figure 3: Uniform queuing options TLV

The Flags field is designed as follow:

        0 1 2 3 4 5 6 7 8
        |T|P|C|         |
Figure 4: Flag field

T flag: 1 bit, time-scheduling queuing indicator, e.g., Time Aware Shaping [IIEEE802.1Qbv]. If the flag is set 1, the time-scheduling queuing mechanism 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, priority-scheduling queuing indicator, e.g., Credit-Based Shaper [IEEE802.1q-2014].

C Flag: 1 bit, cyclic-scheduling queueing indicator, e.g., CQF [IEEE802.1Qch].

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 sub-TLV to carry detailed or ancillary data for specific queuing delay information. The encapsulation for sub-TLV is showed below:

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                            |
Figure 5: Special Queuing options Sub-TLV

The encapsulation for queuing delay information will follow the requirements and framework of MPLS MNA discussed in MPLS WG.

The encapsulation for Special Queuing Ancillary Data field is specific for queuing mechanisms. E.g., the sub-TLV for queuing scheduling mechanism may carry deadline time data related, refer to [I-D.peng-6man-deadline-option].The sub-TLV for cyclic-scheduling queuing mechanism may carry cycle time related, refer to [I-D.dang-queuing-with-multiple-cyclic-buffers]

4. IANA Considerations

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 "DetNet MPLS Queue Flags". There are 4 flags in the 8-bit Flags field, defined as in Table 1.

Table 1: DetNet MPLS Queue Flags
Bit Description Reference
0-7 unassigned this document

5. Security Considerations

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.

6. Acknowledgements

The authors would like to acknowledge Shaofu Peng for his thorough review and very helpful comments.

7. References

7.1. Normative References

Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <>.
Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol Label Switching Architecture", RFC 3031, DOI 10.17487/RFC3031, , <>.
Rosen, E., Tappan, D., Fedorkow, G., Rekhter, Y., Farinacci, D., Li, T., and A. Conta, "MPLS Label Stack Encoding", RFC 3032, DOI 10.17487/RFC3032, , <>.
Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, , <>.
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <>.
Finn, N., Thubert, P., Varga, B., and J. Farkas, "Deterministic Networking Architecture", RFC 8655, DOI 10.17487/RFC8655, , <>.
Varga, B., Ed., Farkas, J., Berger, L., Malis, A., Bryant, S., and J. Korhonen, "Deterministic Networking (DetNet) Data Plane: MPLS", RFC 8964, DOI 10.17487/RFC8964, , <>.
Andersson, L., Kompella, K., and A. Farrel, "Special-Purpose Label Terminology", RFC 9017, DOI 10.17487/RFC9017, , <>.

7.2. Informative References

Andersson, L., Bryant, S., Bocci, M., and T. Li, "MPLS Network Actions Framework", Work in Progress, Internet-Draft, draft-andersson-mpls-mna-fwk-03, , <>.
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, , <>.
Finn, N., Boudec, J. L., Mohammadpour, E., Zhang, J., and B. Varga, "DetNet Bounded Latency", Work in Progress, Internet-Draft, draft-ietf-detnet-bounded-latency-10, , <>.
Peng, S. and B. Tan, "Deadline Option", Work in Progress, Internet-Draft, draft-peng-6man-deadline-option-00, , <>.
Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. Bryant, "Deterministic Networking (DetNet) Data Plane Framework", RFC 8938, DOI 10.17487/RFC8938, , <>.
Grossman, E., Ed., Mizrahi, T., and A. Hacker, "Deterministic Networking (DetNet) Security Considerations", RFC 9055, DOI 10.17487/RFC9055, , <>.

Authors' Addresses

Xueyan Song
ZTE Corp.
Quan Xiong
ZTE Corp.