The description of edge node procedures and functions for TSN over DetNet MPLS scenarios follows the concepts from [
RFC 3985] and covers the edge node components shown in
Figure 1. In this section, the following procedures of DetNet edge nodes are described:
The subsections describe procedures for forwarding packets by DetNet edge nodes, where such packets are received from either directly connected CEs (TSN nodes) or some other DetNet edge nodes.
The TSN TG of the IEEE 802.1 Working Group has defined (and is defining) a number of amendments to [
IEEE8021Q] that provide zero congestion loss and bounded latency in bridged networks. [
IEEE8021CB] defines packet replication and elimination functions for a TSN network.
The implementation of a TSN entity (i.e., TSN packet processing functions) must be compliant with the relevant IEEE 802.1 standards.
TSN-specific functions are executed on the data received by the DetNet edge node from the connected CE before being forwarded to connected CE(s) or presented to the DetNet service proxy function for transmission across the DetNet domain. TSN-specific functions are also executed on the data received from a DetNet PW by a PE before the data is output on the AC(s).
The TSN packet processing function(s) of edge nodes (T-PE) belongs to the NSP [
RFC 3985] block. This is similar to other functionalities being defined by standards bodies other than the IETF (for example, in the case of Ethernet, stripping, overwriting, or adding VLAN tags, etc.). Depending on the TSN role of the edge node in the end-to-end TSN service, selected TSN functions are supported.
When a PE receives a packet from a CE on a given AC with DetNet service, it first checks via Stream identification (see Clause 6 of [
IEEE8021CB] and [
IEEEP8021CBdb]) whether the packet belongs to a configured TSN Stream (i.e., App-flow from the DetNet perspective). If no Stream ID is matched and no other (VPN) service is configured for the AC, then the packet
MUST be dropped. If there is a matching TSN Stream, then the Stream-ID-specific TSN functions are executed (e.g., ingress policing, header field manipulation in the case of active Stream identification, FRER, etc.). Source Media Access Control (MAC) lookup may also be used for local MAC address learning.
If the PE decides to forward the packet, the packet
MUST be forwarded according to the TSN-Stream-specific configuration to connected CE(s) (in case of local bridging) and/or to the DetNet service proxy (in case of forwarding to remote CE(s)). If there are no TSN-Stream-specific forwarding configurations, the PE
MUST flood the packet to other locally attached CE(s) and to the DetNet service proxy. If the administrative policy on the PE does not allow flooding, the PE
MUST drop the packet.
When a TSN entity of the PE receives a packet from the DetNet service proxy, it first checks via Stream identification (see Clause 6 of [
IEEE8021CB] and [
IEEEP8021CBdb]) whether the packet belongs to a configured TSN Stream. If no Stream ID is matched, then the packet is dropped. If there is a matching TSN Stream, then the Stream-ID-specific TSN functions are executed (e.g., header field manipulation in case of active Stream identification, FRER, etc.). Source MAC lookup may also be used for local MAC address learning.
If the PE decides to forward the packet, the packet is forwarded according to the TSN-Stream-specific configuration to connected CE(s). If there are no TSN-Stream-specific forwarding configurations, the PE floods the packet to locally attached CE(s). If the administrative policy on the PE does not allow flooding, the PE drops the packet.
Implementations of this document
SHALL use management and control information to ensure TSN-specific functions of the edge node according to the expectations of the connected TSN network.
The service proxy function maps between App-flows and DetNet flows. The DetNet edge node TSN entity
MUST support the TSN Stream identification functions (as defined in Clause 6 of [
IEEE8021CB] and [
IEEEP8021CBdb]) and the related managed objects (as defined in Clause 9 of [
IEEE8021CB] and [
IEEEP8021CBdb]) to recognize the packets related to App-flow. The service proxy presents TSN Streams as an App-flow to a DetNet flow.
When a DetNet service proxy receives a packet from the TSN entity, it
MUST check whether such an App-flow is present in its mapping table. If present, it associates the internal DetNet flow ID to the packet and
MUST forward it to the DetNet service and forwarding sub-layers. If no match is found, it
MUST drop the packet.
When a DetNet service proxy receives a packet from the DetNet service and forwarding sub-layers, it
MUST be forwarded to the edge node TSN entity.
Implementations of this document
SHALL use management and control information to map a TSN Stream to a DetNet flow. N:1 mapping (aggregating multiple TSN Streams in a single DetNet flow)
SHALL be supported. The management or control function that provisions flow mapping
SHALL ensure that adequate resources are allocated and configured to fulfill the service requirements of the mapped flows.
Due to the (intentional) similarities of the DetNet PREOF and TSN FRER functions, service protection function interworking is possible between the TSN and the DetNet domains. Such service protection interworking scenarios might require copying of sequence number fields from TSN (L2) to PW (MPLS) encapsulation. However, such interworking is out of scope in this document and is left for further study.
In the design presented in [
RFC 8964], an MPLS service label (the S-Label), similar to a PW label [
RFC 3985], is used to identify both the DetNet flow identity and the MPLS payload type. The DetNet sequence number is carried in the d-CW, which carries the Data/OAM discriminator as well. In [
RFC 8964], two sequence number sizes are supported: a 16-bit sequence number and a 28-bit sequence number.
PREOF functions and the provided service recovery are available only within the DetNet domain as the DetNet flow ID and the DetNet sequence number are not valid outside the DetNet network. MPLS (DetNet) edge nodes terminate all related information elements encoded in the MPLS labels.
When a PE receives a packet from the service proxy function, it
MUST handle the packet as defined in [
RFC 8964].
When a PE receives an MPLS packet from a remote PE, then, after processing the MPLS label stack, if the top MPLS label ends up being a DetNet S-Label that was advertised by this node, then the PE
MUST forward the packet according to the configured DetNet service and forwarding sub-layer rules to other PE nodes or via the DetNet service proxy function towards locally connected CE(s).
For further details on DetNet service and forwarding sub-layers, see [
RFC 8964].