Internet-Draft DetNet MPLS Queue October 2022
Song & Xiong Expires 24 April 2023 [Page]
Workgroup:
DetNet Working Group
Internet-Draft:
draft-sx-detnet-mpls-queue-01
Published:
Intended Status:
Standards Track
Expires:
Authors:
X. Song
ZTE Corp.
Q. Xiong
ZTE Corp.

DetNet Queue Encapsulation with MPLS Data Plane

Abstract

This document specifies formats and principals for the MPLS header which contains the queuing delay 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 document also specifies the encapsulation for delay field 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 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 24 April 2023.

Table of Contents

1. Introduction

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.

To support time-sensitive service with ultra-low loss rates and bounded end-to-end delivery latency, it is required to apply feasible queuing mechanisms to specific applications for deterministic networking. As described in [I-D.ietf-detnet-bounded-latency], the end-to-end bounded latency is 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 mechanism applied to a specific application is required.

This draft uses the queuing mechanisms described in [I-D.ietf-detnet-bounded-latency] as the proof for queuing selection, makes necessary enhancements for vertical industry deterministic service. In data plane the draft leverages the existing DetNet MPLS encapsulations and mechanisms [RFC8964], and defines the DetNet MPLS Queue option for queuing enhanced support over DetNet flows.

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], [I-D.jags-mpls-mna-hdr] 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 computation and selection for queuing mechanisms is described at [I-D.ietf-detnet-bounded-latency]. The end-to-end 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 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
|     SPL (DetNet Queque)   |   |
+---------------------------+   |
|          F-Label(s)       |   |
+---------------------------+--/
|         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]. The MPLS encoding needs follow the solution specified in [I-D.jags-mpls-mna-hdr] to encode MPLS Network Actions (MNA) (i.e., DetNet application option in this draft) in an MPLS label stack. The figure 2 refers to section 3 in [I-D.jags-mpls-mna-hdr].

 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      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| D-NAI-Opcode  |    Flag-Based NAI     |R| 2 |S| 0 |IHS|  NASL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|             Ancillary Data                |S| Ancillary Data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|             Ancillary Data                |S| Ancillary Data|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: DetNet queuing action indicator

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

D-NAI-Opcode:

This is the first 8-bit value in the Label Field. The value is used to indicate DetNet application processing 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 third and forth 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|                 |
        +-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Flag-based NAIs

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 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 4: Ancillary data for queuing delay

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. 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 is FFS.

4. IANA Considerations

This document describes a new IANA-managed registry to identify DetNet application processing. The registration procedure is "IETF Review" [RFC8126]. The registry name is "D-NAI-Opcode" and indicates DetNet application, as defined in Table 1.

Table 1: DetNet MPLS Queue Flags
Value Description Reference
0-255 D-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 "DetNet MPLS Queue Flags". There is 12-bit Flag field, as defined in Table 2.

Table 2: DetNet MPLS Queue Flags
Bit Description Reference
0-7 DetNet MPLS Queue Flags 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

[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>.
[RFC3031]
Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol Label Switching Architecture", RFC 3031, DOI 10.17487/RFC3031, , <https://www.rfc-editor.org/info/rfc3031>.
[RFC3032]
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, , <https://www.rfc-editor.org/info/rfc3032>.
[RFC8126]
Cotton, M., Leiba, B., and T. Narten, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 8126, DOI 10.17487/RFC8126, , <https://www.rfc-editor.org/info/rfc8126>.
[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>.
[RFC8964]
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, , <https://www.rfc-editor.org/info/rfc8964>.
[RFC9017]
Andersson, L., Kompella, K., and A. Farrel, "Special-Purpose Label Terminology", RFC 9017, DOI 10.17487/RFC9017, , <https://www.rfc-editor.org/info/rfc9017>.

7.2. Informative 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://www.ietf.org/archive/id/draft-dang-queuing-with-multiple-cyclic-buffers-00.txt>.
[I-D.ietf-detnet-bounded-latency]
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, , <https://www.ietf.org/archive/id/draft-ietf-detnet-bounded-latency-10.txt>.
[I-D.jags-mpls-mna-hdr]
Rajamanickam, J., Gandhi, R., Zigler, R., Song, H., and K. Kompella, "MPLS Network Action (MNA) Header Encodings", Work in Progress, Internet-Draft, draft-jags-mpls-mna-hdr-02, , <https://www.ietf.org/archive/id/draft-jags-mpls-mna-hdr-02.txt>.
[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://www.ietf.org/archive/id/draft-peng-6man-deadline-option-01.txt>.
[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>.
[RFC9055]
Grossman, E., Ed., Mizrahi, T., and A. Hacker, "Deterministic Networking (DetNet) Security Considerations", RFC 9055, DOI 10.17487/RFC9055, , <https://www.rfc-editor.org/info/rfc9055>.

Authors' Addresses

Xueyan Song
ZTE Corp.
Nanjing
China
Quan Xiong
ZTE Corp.
Wuhan
China