Internet Engineering Task Force (IETF)                     B. Varga, Ed.
Request for Comments: 9037                                     J. Farkas
Category: Informational                                         Ericsson
ISSN: 2070-1721                                                 A. Malis
                                                        Malis Consulting
                                                               S. Bryant
                                                  Futurewei Technologies
                                                                May
                                                               June 2021

Deterministic Networking (DetNet) Data Plane: MPLS over IEEE 802.1 Time-
                       Sensitive Networking (TSN)

Abstract

   This document specifies the Deterministic Networking (DetNet) MPLS
   data plane when operating over an IEEE 802.1 Time-Sensitive
   Networking (TSN) sub-network.  This document does not define new
   procedures or processes.  Whenever this document makes statements or
   recommendations, they are taken from normative text in the referenced
   RFCs.

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Not all documents
   approved by the IESG are candidates for any level of Internet
   Standard; see Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc9037.

Copyright Notice

   Copyright (c) 2021 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 Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction
   2.  Terminology
     2.1.  Terms Used in This Document
     2.2.  Abbreviations
   3.  DetNet MPLS Data Plane Overview
   4.  DetNet MPLS Operation over IEEE 802.1 TSN Sub-networks
     4.1.  Functions for DetNet Flow to TSN Stream Mapping
     4.2.  TSN Requirements of MPLS DetNet Nodes
     4.3.  Service Protection within the TSN Sub-network
     4.4.  Aggregation during DetNet Flow to TSN Stream Mapping
   5.  Management and Control Implications
   6.  Security Considerations
   7.  IANA Considerations
   8.  References
     8.1.  Normative References
     8.2.  Informative References
   Acknowledgements
   Authors' Addresses

1.  Introduction

   Deterministic Networking (DetNet) is a service that can be offered by
   a network to DetNet flows.  DetNet provides these flows with low
   packet loss rate and assured maximum end-to-end delivery latency.
   General background and concepts of DetNet can be found in [RFC8655].

   The DetNet architecture decomposes DetNet-related data plane
   functions into two sub-layers: a service sub-layer and a forwarding
   sub-layer.  The service sub-layer is used to provide DetNet service
   protection and reordering.  The forwarding sub-layer is used to
   provide congestion protection (low loss, assured latency, and limited
   reordering) leveraging MPLS Traffic Engineering mechanisms.

   [RFC8964] specifies the DetNet data plane operation for an MPLS-based
   PSN.  MPLS-encapsulated DetNet flows can be carried over network
   technologies that can provide the DetNet-required level of service.
   This document focuses on the scenario where MPLS (DetNet) nodes are
   interconnected by an IEEE 802.1 TSN sub-network.  There is close
   cooperation between the IETF DetNet Working Group and the IEEE 802.1
   Time-Sensitive Networking Task Group (TSN TG).

2.  Terminology

2.1.  Terms Used in This Document

   This document uses the terminology established in the DetNet
   architecture [RFC8655] [RFC8964].  TSN-specific terms are defined in
   the TSN TG of the IEEE 802.1 Working Group.  The reader is assumed to
   be familiar with these documents and their terminology.

2.2.  Abbreviations

   The following abbreviations are used in this document:

   A-Label       Aggregation label; a special case of an S-Label.

   d-CW          DetNet Control Word

   DetNet        Deterministic Networking

   F-Label       Forwarding label that identifies the LSP used by a
                 DetNet flow.

   FRER          Frame Replication and Elimination for Redundancy (TSN
                 function)

   L2            Layer 2

   L3            Layer 3

   LSP           Label Switched Path

   MPLS          Multiprotocol Label Switching

   PREOF         Packet Replication, Elimination, and Ordering Functions

   PSN           Packet Switched Network

   PW            Pseudowire

   RSVP-TE       Resource Reservation Protocol - Traffic Engineering

   S-Label       Service label

   TSN           Time-Sensitive Networking

3.  DetNet MPLS Data Plane Overview

   The basic approach defined in [RFC8964] supports the DetNet service
   sub-layer based on existing PW encapsulations and mechanisms and
   supports the DetNet forwarding sub-layer based on existing MPLS
   Traffic Engineering encapsulations and mechanisms.

   A node operates on a DetNet flow in the DetNet service sub-layer,
   i.e., a node processing a DetNet packet that has the service label
   (S-Label) as the top of stack uses the local context associated with
   that S-Label, for example, a received forwarding label (F-Label), to
   determine what local DetNet operation(s) is applied to that packet.
   An S-Label may be unique when taken from the platform label space
   [RFC3031], which would enable correct DetNet flow identification
   regardless of which input interface or LSP the packet arrives on.
   The service sub-layer functions (i.e., PREOF) use a d-CW.

   The DetNet MPLS data plane builds on MPLS Traffic Engineering
   encapsulations and mechanisms to provide a forwarding sub-layer that
   is responsible for providing resource allocation and explicit routes.
   The forwarding sub-layer is supported by one or more F-Labels.

   DetNet edge/relay nodes are DetNet service sub-layer-aware,
   understand the particular needs of DetNet flows, and provide both
   DetNet service and forwarding sub-layer functions.  They add, remove,
   and process d-CWs, S-Labels, and F-Labels as needed.  MPLS DetNet
   nodes and transit nodes include DetNet forwarding sub-layer
   functions, notable support for explicit routes, and resource
   allocation to eliminate (or reduce) congestion loss and jitter.
   Unlike other DetNet node types, transit nodes provide no service sub-
   layer processing.

   MPLS (DetNet) nodes and transit nodes interconnected by a TSN sub-
   network are the primary focus of this document.  The mapping of
   DetNet MPLS flows to TSN Streams and TSN protection mechanisms are
   covered in Section 4.

4.  DetNet MPLS Operation over IEEE 802.1 TSN Sub-networks

   The DetNet WG collaborates with IEEE 802.1 TSN in order to define a
   common architecture for both Layer 2 and Layer 3 that maintains
   consistency across diverse networks.  Both DetNet MPLS and TSN use
   the same techniques to provide their deterministic service:

   *  Service protection

   *  Resource allocation

   *  Explicit routes

   As described in the DetNet architecture [RFC8655], from the MPLS
   perspective, a sub-network provides a single-hop connection between
   MPLS (DetNet) nodes.  Functions used for resource allocation and
   explicit routes are treated as domain internal functions and do not
   require function interworking across the DetNet MPLS network and the
   TSN sub-network.

   In the case of the service protection function, due to the
   similarities of the DetNet PREOF and TSN FRER functions, some level
   of interworking is possible.  However, such interworking is out of
   scope of this document and left for further study.

   Figure 1 illustrates a scenario where two MPLS (DetNet) nodes are
   interconnected by a TSN sub-network.  Node-1 is single-homed, and
   Node-2 is dual-homed to the TSN sub-network.

      MPLS (DetNet)                 MPLS (DetNet)
         Node-1                        Node-2

      +----------+                  +----------+
   <--| Service* |-- DetNet flow ---| Service* |-->
      +----------+                  +----------+
      |Forwarding|                  |Forwarding|
      +--------.-+    <-TSN Str->   +-.-----.--+
                \      ,-------.     /     /
                 +----[ TSN Sub-]---+     /
                      [ network ]--------+
                       `-------'
   <---------------- DetNet MPLS --------------->

   Note: * no service sub-layer required for transit nodes

        Figure 1: DetNet-Enabled MPLS Network over a TSN Sub-network

   At the time of this writing, the TSN TG of the IEEE 802.1 Working
   Group have defined (and are defining) a number of amendments to
   [IEEE8021Q] that provide zero congestion loss and bounded latency in
   bridged networks.  Furthermore, [IEEE8021CB] defines frame
   replication and elimination functions for reliability that should
   prove both compatible with and useful to DetNet networks.  All these
   functions have to identify flows that require TSN treatment (i.e.,
   applying TSN functions during forwarding).

   TSN capabilities of the TSN sub-network are made available for MPLS
   (DetNet) flows via the protocol interworking function defined in
   Annex C.5 of [IEEE8021CB].  For example, when applied on the TSN edge
   port, it can convert an ingress unicast MPLS (DetNet) flow to use a
   specific Layer 2 multicast destination Media Access Control (MAC)
   address and a VLAN, in order to direct the packet through a specific
   path inside the bridged network.  A similar interworking function
   pair at the other end of the TSN sub-network would restore the packet
   to its original Layer 2 destination MAC address and VLAN.

   The placement of TSN functions depends on the TSN capabilities of the
   nodes along the path.  MPLS (DetNet) nodes may or may not support TSN
   functions.  For a given TSN Stream (i.e., DetNet flow), an MPLS
   (DetNet) node is treated as a Talker or a Listener inside the TSN
   sub-network.

4.1.  Functions for DetNet Flow to TSN Stream Mapping

   Mapping of a DetNet MPLS flow to a TSN Stream is provided via the
   combination of a passive and an active Stream identification function
   that operate at the frame level.  The passive Stream identification
   function is used to catch the MPLS label(s) of a DetNet MPLS flow,
   and the active Stream identification function is used to modify the
   Ethernet header according to the ID of the mapped TSN Stream.

   Clause 6.8 of [IEEEP8021CBdb] defines a Mask-and-Match Stream
   identification function that can be used as a passive function for
   MPLS DetNet flows.

   Clause 6.6 of [IEEE8021CB] defines an Active Destination MAC and a
   VLAN Stream identification function that can replace some Ethernet
   header fields, namely (1) the destination MAC address, (2) the VLAN-
   ID, and (3) priority parameters with alternate values.  Replacement
   is provided for the frame that is passed either down the stack from
   the upper layers or up the stack from the lower layers.

   Active Destination MAC and VLAN Stream identification can be used
   within a Talker to set flow identity or a Listener to recover the
   original addressing information.  It can also be used in a TSN bridge
   that is providing translation as a proxy service for an end system.

4.2.  TSN Requirements of MPLS DetNet Nodes

   This section covers required behavior of a TSN-aware MPLS (DetNet)
   node using a TSN sub-network.  The implementation of TSN packet-
   processing functions must be compliant with the relevant IEEE 802.1
   standards.

   From the TSN sub-network perspective, MPLS (DetNet) nodes are treated
   as a Talker or Listener, which may be (1) TSN-unaware or (2) TSN-
   aware.

   In cases of TSN-unaware MPLS DetNet nodes, the TSN relay nodes within
   the TSN sub-network must modify the Ethernet encapsulation of the
   DetNet MPLS flow (e.g., MAC translation, VLAN-ID setting, sequence
   number addition, etc.) to allow proper TSN-specific handling inside
   the sub-network.  There are no requirements defined for TSN-unaware
   MPLS DetNet nodes in this document.

   MPLS (DetNet) nodes that are TSN-aware can be treated as a
   combination of a TSN-unaware Talker/Listener and a TSN-Relay, as
   shown in Figure 2.  In such cases, the MPLS (DetNet) node must
   provide the TSN sub-network-specific Ethernet encapsulation over the
   link(s) towards the sub-network.

                 MPLS (DetNet)
                     Node
      <---------------------------------->

      +----------+
   <--| Service* |-- DetNet flow ------------------
      +----------+
      |Forwarding|
      +----------+    +---------------+
      |    L2    |    | L2 Relay with |<--- TSN ---
      |          |    | TSN function  |    Stream
      +-----.----+    +--.------.---.-+
             \__________/        \   \______
                                  \_________
       TSN-unaware
        Talker /          TSN-Bridge
        Listener             Relay
                                          <----- TSN Sub-network -----
      <------- TSN-aware Tlk/Lstn ------->

   Note: * no service sub-layer required for transit nodes

              Figure 2: MPLS (DetNet) Node with TSN Functions

   A TSN-aware MPLS (DetNet) node implementation must support the Stream
   identification TSN component for recognizing flows.

   A Stream identification component must be able to instantiate the
   following functions: (1) Active Destination MAC and VLAN Stream
   identification function, (2) Mask-and-Match Stream identification
   function, and (3) the related managed objects in Clause 9 of
   [IEEE8021CB] and [IEEEP8021CBdb].

   A TSN-aware MPLS (DetNet) node implementation must support the
   Sequencing function and the Sequence encode/decode function as
   defined in Clauses 7.4 and 7.6 of [IEEE8021CB] in order for FRER to
   be used inside the TSN sub-network.

   The Sequence encode/decode function must support the Redundancy tag
   (R-TAG) format as per Clause 7.8 of [IEEE8021CB].

   A TSN-aware MPLS (DetNet) node implementation must support the Stream
   splitting function and the Individual recovery function as defined in
   Clauses 7.5 and 7.7 of [IEEE8021CB] in order for that node to be a
   replication or elimination point for FRER.

4.3.  Service Protection within the TSN Sub-network

   TSN Streams supporting DetNet flows may use FRER as defined in Clause
   8 of [IEEE8021CB] based on the loss service requirements of the TSN
   Stream, which is derived from the DetNet service requirements of the
   DetNet mapped flow.  The specific operation of FRER is not modified
   by the use of DetNet and follows [IEEE8021CB].

   FRER function and the provided service recovery is available only
   within the TSN sub-network as the TSN Stream-ID and the TSN sequence
   number are not valid outside the sub-network.  An MPLS (DetNet) node
   represents an L3 border, and as such, it terminates all related
   information elements encoded in the L2 frames.

   As the Stream-ID and the TSN sequence number are paired with similar
   MPLS flow parameters, FRER can be combined with PREOF functions.
   Such service protection interworking scenarios may require moving
   sequence number fields among TSN (L2) and PW (MPLS) encapsulations,
   and they are left for further study.

4.4.  Aggregation during DetNet Flow to TSN Stream Mapping

   Implementation of this document shall use management and control
   information to map a DetNet flow to a TSN Stream.  N:1 mapping
   (aggregating DetNet flows in a single TSN Stream) shall be supported.
   The management or control function that provisions flow mapping shall
   ensure that adequate resources are allocated and configured to
   provide proper service requirements of the mapped flows.

5.  Management and Control Implications

   Information related to DetNet flow and TSN Stream mapping is required
   only for TSN-aware MPLS (DetNet) nodes.  From the data plane
   perspective, there is no practical difference based on the origin of
   flow-mapping-related information (management plane or control plane).

   The following summarizes the set of information that is needed to
   configure DetNet MPLS over TSN:

   *  DetNet MPLS-related configuration information according to the
      DetNet role of the DetNet MPLS node, as per [RFC8964].

   *  TSN-related configuration information according to the TSN role of
      the DetNet MPLS node, as per [IEEE8021Q], [IEEE8021CB], and
      [IEEEP8021CBdb].

   *  Mapping between a DetNet MPLS flow(s) (label information:
      A-Labels, S-Labels, and F-Labels as defined in [RFC8964]) and a
      TSN Stream(s) (as Stream identification information defined in
      [IEEEP8021CBdb]).  Note that managed objects for TSN Stream
      identification can be found in [IEEEP8021CBcv].

   This information must be provisioned per DetNet flow.

   Mappings between DetNet and TSN management and control planes are out
   of scope of this document.  Some of the challenges are highlighted
   below.

   TSN-aware MPLS DetNet nodes are members of both the DetNet domain and
   the TSN sub-network.  Within the TSN sub-network, the TSN-aware MPLS
   (DetNet) node has a TSN-aware Talker/Listener role, so TSN-specific
   management and control plane functionalities must be implemented.
   There are many similarities in the management plane techniques used
   in DetNet and TSN, but that is not the case for the control plane
   protocols.  For example, RSVP-TE and the Multiple Stream Registration
   Protocol (MSRP) behave differently.  Therefore, management and
   control plane design are important aspects of scenarios where mapping
   between DetNet and TSN is required.

   In order to use a TSN sub-network between DetNet nodes, DetNet-
   specific information must be converted to information specific to the
   TSN sub-network.  DetNet flow ID and flow-related parameters/
   requirements must be converted to a TSN Stream ID and stream-related
   parameters/requirements.  Note that, as the TSN sub-network is just a
   portion of the end-to-end DetNet path (i.e., a single hop from the
   MPLS perspective), some parameters (e.g., delay) may differ
   significantly.  Other parameters (like bandwidth) also may have to be
   tuned due to the L2 encapsulation used within the TSN sub-network.

   In some cases, it may be challenging to determine some TSN-Stream-
   related information.  For example, on a TSN-aware MPLS (DetNet) node
   that acts as a Talker, it is quite obvious which DetNet node is the
   Listener of the mapped TSN Stream (i.e., the MPLS next hop).
   However, it may be not trivial to locate the point/interface where
   that Listener is connected to the TSN sub-network.  Such attributes
   may require interaction between control and management plane
   functions and between DetNet and TSN domains.

   Mapping between DetNet flow identifiers and TSN Stream identifiers,
   if not provided explicitly, can be done by a TSN-aware MPLS (DetNet)
   node locally based on information provided for configuration of the
   TSN Stream identification functions (Mask-and-Match Stream
   identification and active Stream identification).

   Triggering the setup/modification of a TSN Stream in the TSN sub-
   network is an example where management and/or control plane
   interactions are required between the DetNet and TSN sub-network.
   TSN-unaware MPLS (DetNet) nodes make such a triggering even more
   complicated as they are fully unaware of the sub-network and run
   independently.

   Configuration of TSN-specific functions (e.g., FRER) inside the TSN
   sub-network is a TSN-domain-specific decision and may not be visible
   in the DetNet domain.  Service protection interworking scenarios are
   left for further study.

6.  Security Considerations

   Security considerations for DetNet are described in detail in
   [DETNET-SECURITY].  General security considerations are described in
   [RFC8655].  Considerations specific to the DetNet MPLS data plane are
   summarized in [RFC8964].  This section considers exclusively security
   considerations that are specific to the DetNet MPLS over TSN sub-
   network scenario.

   The sub-network between DetNet nodes needs to be subject to
   appropriate confidentiality.  Additionally, knowledge of what DetNet/
   TSN services are provided by a sub-network may supply information
   that can be used in a variety of security attacks.  The ability to
   modify information exchanges between connected DetNet nodes may
   result in bogus operations.  Therefore, it is important that the
   interface between DetNet nodes and the TSN sub-network are subject to
   authorization, authentication, and encryption.

   The TSN sub-network operates at Layer 2, so various security
   mechanisms defined by IEEE can be used to secure the connection
   between the DetNet nodes (e.g., encryption may be provided using
   MACsec [IEEE802.1AE-2018]).

7.  IANA Considerations

   This document has no IANA actions.

8.  References

8.1.  Normative References

   [IEEE8021CB]
              IEEE, "IEEE Standard for Local and metropolitan area
              networks--Frame Replication and Elimination for
              Reliability", IEEE Std 802.1CB-2017,
              DOI 10.1109/IEEESTD.2017.8091139, October 2017,
              <https://ieeexplore.ieee.org/document/8091139>.

   [IEEEP8021CBdb]
              IEEE, "Draft Standard for Local and metropolitan area
              networks  -— Frame Replication and Elimination for
              Reliability  -— Amendment: Extended Stream Identification
              Functions", IEEE P802.1CBdb, September 2020,
              <http://www.ieee802.org/1/files/private/db-drafts/d1/802-
              1CBdb-d1-0.pdf>. P802.1CBdb / D1.3, April 2021,
              <https://1.ieee802.org/tsn/802-1cbdb/>.

   [RFC3031]  Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol
              Label Switching Architecture", RFC 3031,
              DOI 10.17487/RFC3031, January 2001,
              <https://www.rfc-editor.org/info/rfc3031>.

   [RFC8655]  Finn, N., Thubert, P., Varga, B., and J. Farkas,
              "Deterministic Networking Architecture", RFC 8655,
              DOI 10.17487/RFC8655, October 2019,
              <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, January
              2021, <https://www.rfc-editor.org/info/rfc8964>.

8.2.  Informative References

   [DETNET-SECURITY]
              Grossman, E., Mizrahi, T., and A. J. Hacker,
              "Deterministic Networking (DetNet) Security
              Considerations", Work in Progress, Internet-Draft, draft-
              ietf-detnet-security-16, 2 March 2021,
              <https://tools.ietf.org/html/draft-ietf-detnet-security-
              16>.

   [IEEE802.1AE-2018]
              IEEE, "IEEE Standard for Local and metropolitan area
              networks-Media Access Control (MAC) Security", IEEE Std
              802.1AE-2018, DOI 10.1109/IEEESTD.2018.8585421, December
              2018, <https://ieeexplore.ieee.org/document/8585421>.

   [IEEE8021Q]
              IEEE, "IEEE Standard for Local and metropolitan area
              networks--Bridges and Bridged Networks", IEEE Std 802.1Q-
              2018, DOI 10.1109/IEEESTD.2018.8403927, July 2018,
              <https://ieeexplore.ieee.org/document/8403927/>.

   [IEEEP8021CBcv]
              IEEE 802.1, "Draft Standard for Local and metropolitan
              area networks--Frame networks -- Frame Replication and Elimination for
              Reliability--Amendment:
              Reliability -- Amendment: Information Model, YANG Data
              Model and Management Information Base Module", IEEE
              P802.1CBcv, Draft 1.1, February 2021,
              <https://1.ieee802.org/tsn/802-1cbcv/>.

Acknowledgements

   The authors wish to thank Norman Finn, Lou Berger, Craig Gunther,
   Christophe Mangin, and Jouni Korhonen for their various contributions
   to this work.

Authors' Addresses

   Balázs Varga (editor)
   Ericsson
   Budapest
   Magyar Tudosok krt. 11.
   1117
   Hungary

   Email: balazs.a.varga@ericsson.com

   János Farkas
   Ericsson
   Budapest
   Magyar Tudosok krt. 11.
   1117
   Hungary

   Email: janos.farkas@ericsson.com

   Andrew G. Malis
   Malis Consulting

   Email: agmalis@gmail.com

   Stewart Bryant
   Futurewei Technologies

   Email: stewart.bryant@gmail.com sb@stewartbryant.com