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 [
RFC 8655], 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
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.
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.
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
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.
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.
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.