rfc9024xml2.original.xml | rfc9024.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="utf-8"?> | |||
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
<!ENTITY rfc2119 PUBLIC "" "http://xml2rfc.tools.ietf.org/public/rfc/bibxml/refe | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
rence.RFC.2119.xml"> | ||||
<!ENTITY rfc3031 PUBLIC "" "http://xml2rfc.tools.ietf.org/public/rfc/bibxml/refe | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie | |||
rence.RFC.3031.xml"> | tf-detnet-tsn-vpn-over-mpls-07" ipr="trust200902" submissionType="IETF" obsolete | |||
<!ENTITY rfc3985 PUBLIC "" "http://xml2rfc.tools.ietf.org/public/rfc/bibxml/refe | s="" updates="" xml:lang="en" tocInclude="true" symRefs="true" sortRefs="true" v | |||
rence.RFC.3985.xml"> | ersion="3" consensus="true" number="9024"> | |||
]> | ||||
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?> | ||||
<?rfc toc="yes"?> | ||||
<?rfc symrefs="yes"?> | ||||
<?rfc sortrefs="yes"?> | ||||
<?rfc iprnotified="no"?> | ||||
<?rfc strict="yes"?> | ||||
<?rfc compact="yes"?> | ||||
<?rfc subcompact="no"?> | ||||
<rfc category="std" | ||||
docName="draft-ietf-detnet-tsn-vpn-over-mpls-07" | ||||
ipr="trust200902" | ||||
submissionType="IETF"> | ||||
<front> | <front> | |||
<title abbrev="TSN over DetNet MPLS"> | <title abbrev="TSN over DetNet MPLS"> | |||
DetNet Data Plane: IEEE 802.1 Time Sensitive Networking over MPLS</title> | Deterministic Networking (DetNet) Data Plane: IEEE 802.1 Time-Sensitive Netw | |||
orking over MPLS</title> | ||||
<author role="editor" fullname="Balázs Varga" initials="B." surname=" | <seriesInfo name="RFC" value="9024"/> | |||
Varga"> | <author role="editor" fullname="Balázs Varga" initials="B." surname="Varga"> | |||
<organization>Ericsson</organization> | <organization>Ericsson</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>Magyar Tudosok krt. 11.</street> | <street>Magyar Tudosok krt. 11.</street> | |||
<city>Budapest</city> | <city>Budapest</city> | |||
<country>Hungary</country> | <country>Hungary</country> | |||
<code>1117</code> | <code>1117</code> | |||
</postal> | </postal> | |||
<email>balazs.a.varga@ericsson.com</email> | <email>balazs.a.varga@ericsson.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="János Farkas" initials="J." surname="Farkas"> | ||||
<author fullname="János Farkas" initials="J." surname="Farkas"> | ||||
<organization>Ericsson</organization> | <organization>Ericsson</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>Magyar Tudosok krt. 11.</street> | <street>Magyar Tudosok krt. 11.</street> | |||
<city>Budapest</city> | <city>Budapest</city> | |||
<country>Hungary</country> | <country>Hungary</country> | |||
<code>1117</code> | <code>1117</code> | |||
</postal> | </postal> | |||
<email>janos.farkas@ericsson.com</email> | <email>janos.farkas@ericsson.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Andrew G. Malis" initials="A." surname="Malis"> | ||||
<author fullname="Andrew G. Malis" initials="A.G." surname="Malis"> | ||||
<organization>Malis Consulting</organization> | <organization>Malis Consulting</organization> | |||
<address> | <address> | |||
<email>agmalis@gmail.com</email> | <email>agmalis@gmail.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Stewart Bryant" initials="S." surname="Bryant"> | <author fullname="Stewart Bryant" initials="S." surname="Bryant"> | |||
<organization>Futurewei Technologies</organization> | <organization>Futurewei Technologies</organization> | |||
<address> | <address> | |||
<email>stewart.bryant@gmail.com</email> | <email>sb@stewartbryant.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Don Fedyk" initials="D." surname="Fedyk"> | <author fullname="Don Fedyk" initials="D." surname="Fedyk"> | |||
<organization>LabN Consulting, L.L.C.</organization> | <organization>LabN Consulting, L.L.C.</organization> | |||
<address> | <address> | |||
<email>dfedyk@labn.net</email> | <email>dfedyk@labn.net</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date month="June" year="2021"/> | ||||
<workgroup>DetNet</workgroup> | ||||
<date /> | <keyword>interconnecting TSN networks</keyword> | |||
<workgroup>DetNet</workgroup> | <abstract> | |||
<t> | ||||
<abstract> | ||||
<t> | ||||
This document specifies the Deterministic Networking data plane | This document specifies the Deterministic Networking data plane | |||
when TSN networks are interconnected over a DetNet MPLS Network. | when Time-Sensitive Networking (TSN) networks are interconnected over a Det | |||
</t> | Net MPLS network. | |||
</abstract> | </t> | |||
</front> | </abstract> | |||
<middle> | </front> | |||
<section title="Introduction" anchor="sec_intro"> | <middle> | |||
<t> | <section anchor="sec_intro" numbered="true" toc="default"> | |||
The Time-Sensitive Networking Task Group (TSN TG) within IEEE 802.1 Work | <name>Introduction</name> | |||
ing | <t> | |||
The Time-Sensitive Networking Task Group (TSN TG) within the IEEE 802.1 | ||||
Working | ||||
Group deals with deterministic services through IEEE 802 networks. | Group deals with deterministic services through IEEE 802 networks. | |||
Deterministic Networking (DetNet) defined by IETF is a service that can be | Deterministic Networking (DetNet) defined by the IETF is a service that can | |||
offered by a L3 network to DetNet flows. General background and concept | be | |||
s | offered by an L3 network to DetNet flows. General background and concep | |||
of DetNet can be found in <xref target="RFC8655"/>. | ts | |||
</t> | of DetNet can be found in <xref target="RFC8655" format="default"/>. | |||
<t> | </t> | |||
<t> | ||||
This document specifies the use of a DetNet MPLS network to interconnect TSN | This document specifies the use of a DetNet MPLS network to interconnect TSN | |||
nodes/network segments. DetNet MPLS data plane is defined in | nodes/network segments. The DetNet MPLS data plane is defined in | |||
<xref target="RFC8964"/>. | <xref target="RFC8964" format="default"/>. | |||
<vspace blankLines="100" /> </t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Terminology"> | <name>Terminology</name> | |||
<section title="Terms Used in This Document"> | <section numbered="true" toc="default"> | |||
<t> | <name>Terms Used in This Document</name> | |||
<t> | ||||
This document uses the terminology and concepts established in the DetNe t | This document uses the terminology and concepts established in the DetNe t | |||
architecture <xref target="RFC8655"/> and | architecture <xref target="RFC8655" format="default"/> | |||
<xref target="RFC8938"/>, and | <xref target="RFC8938" format="default"/> | |||
<xref target="RFC8964"/>. TSN specific terms are defined in the TSN TG | <xref target="RFC8964" format="default"/>. TSN-specific terms are defin | |||
of IEEE 802.1 Working Group. The reader is assumed | ed in the TSN TG | |||
of the IEEE 802.1 Working Group. The reader is assumed | ||||
to be familiar with these documents and their terminology. | to be familiar with these documents and their terminology. | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Abbreviations"> | <name>Abbreviations</name> | |||
<t> | <t> | |||
The following abbreviations are used in this document: | The following abbreviations are used in this document: | |||
<list style="hanging" hangIndent="14"> | </t> | |||
<t hangText="AC">Attachment Circuit.</t> | <dl newline="false" spacing="normal" indent="14"> | |||
<t hangText="CE">Customer Edge equipment.</t> | <dt>AC</dt> | |||
<t hangText="d-CW">DetNet Control Word.</t> | <dd>Attachment Circuit</dd> | |||
<t hangText="DetNet">Deterministic Networking.</t> | <dt>CE</dt> | |||
<t hangText="DF">DetNet Flow.</t> | <dd>Customer Edge equipment</dd> | |||
<t hangText="FRER">Frame Replication and Elimination for Redundancy | <dt>d-CW</dt> | |||
(TSN function).</t> | <dd>DetNet Control Word</dd> | |||
<t hangText="L2">Layer 2.</t> | <dt>DetNet</dt> | |||
<t hangText="L2VPN">Layer 2 Virtual Private Network.</t> | <dd>Deterministic Networking</dd> | |||
<t hangText="L3">Layer 3.</t> | <dt>DF</dt> | |||
<t hangText="LSR">Label Switching Router.</t> | <dd>DetNet Flow</dd> | |||
<t hangText="MPLS">Multiprotocol Label Switching.</t> | <dt>FRER</dt> | |||
<t hangText="MPLS-TE">Multiprotocol Label Switching - Traffic Engineering.</ | <dd>Frame Replication and Elimination for Redundancy | |||
t> | (TSN function)</dd> | |||
<t hangText="NSP">Native Service Processing.</t> | <dt>L2</dt> | |||
<t hangText="OAM">Operations, Administration, and Maintenance.</t> | <dd>Layer 2</dd> | |||
<t hangText="PE">Provider Edge.</t> | <dt>L2VPN</dt> | |||
<t hangText="PREOF">Packet Replication, Elimination and Ordering Functions.< | <dd>Layer 2 Virtual Private Network</dd> | |||
/t> | <dt>L3</dt> | |||
<t hangText="PW">PseudoWire.</t> | <dd>Layer 3</dd> | |||
<t hangText="S-PE">Switching Provider Edge.</t> | <dt>LSP</dt><dd>Label Switched Path</dd> | |||
<t hangText="T-PE">Terminating Provider Edge.</t> | <dt>LSR</dt> | |||
<t hangText="TSN">Time-Sensitive Network.</t> | <dd>Label Switching Router</dd> | |||
</list> | <dt>MPLS</dt> | |||
</t> | <dd>Multiprotocol Label Switching</dd> | |||
</section> | <dt>MPLS-TE</dt> | |||
<dd>Multiprotocol Label Switching - Traffic Engineering</dd> | ||||
<section title="Requirements Language"> | <dt>NSP</dt> | |||
<t> | <dd>Native Service Processing</dd> | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | <dt>OAM</dt> | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | <dd>Operations, Administration, and Maintenance</dd> | |||
"OPTIONAL" in this document are to be interpreted as described in | <dt>PE</dt> | |||
BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and | <dd>Provider Edge</dd> | |||
only when, they appear in all capitals, as shown here. | <dt>PREOF</dt> | |||
</t> | <dd>Packet Replication, Elimination and Ordering Functions</dd> | |||
</section> | <dt>PW</dt> | |||
</section> <!-- end of terminology --> | <dd>Pseudowire</dd> | |||
<dt>S-PE</dt> | ||||
<!-- =========================================== --> | <dd>Switching Provider Edge</dd> | |||
<!-- TSN over DetNet MPLS --> | <dt>T-PE</dt> | |||
<!-- =========================================== --> | <dd>Terminating Provider Edge</dd> | |||
<dt>TSN</dt> | ||||
<dd>Time-Sensitive Network</dd> | ||||
</dl> | ||||
</section> | ||||
<section numbered="true" toc="default"> | ||||
<name>Requirements Language</name> | ||||
<t> | ||||
The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU | ||||
IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL | ||||
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14> | ||||
RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | ||||
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to | ||||
be interpreted as | ||||
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
when, and only when, they appear in all capitals, as shown here. | ||||
</t> | ||||
</section> | ||||
<section title="IEEE 802.1 TSN Over DetNet MPLS Data Plane Scenario" | </section> | |||
anchor="sec_tsn_mpls_dt_dp_scen"> | ||||
<t> | <section anchor="sec_tsn_mpls_dt_dp_scen" numbered="true" toc="default"> | |||
<xref target="fig_tsn_mpls_detnet"/> shows IEEE 802.1 TSN end | <name>IEEE 802.1 TSN over DetNet MPLS Data Plane Scenario</name> | |||
stations operating over a TSN aware DetNet service running over an MPLS | <t> | |||
network. DetNet Edge Nodes sit at the boundary of a DetNet domain. They are | <xref target="fig_tsn_mpls_detnet" format="default"/> shows IEEE 802.1 TSN en | |||
responsible for mapping non-DetNet aware L2 traffic to DetNet services. | d | |||
stations operating over a TSN-aware DetNet service running over an MPLS | ||||
network. DetNet edge nodes sit at the boundary of a DetNet domain. They are | ||||
responsible for mapping non-DetNet-aware L2 traffic to DetNet services. | ||||
They also support the imposition and disposition of the required DetNet | They also support the imposition and disposition of the required DetNet | |||
encapsulation. These are functionally similar to pseudowire (PW) | encapsulation. These are functionally similar to PW | |||
Terminating Provider Edge (T-PE) nodes which use MPLS-TE LSPs. In this | T-PE nodes, which use MPLS-TE LSPs. In this | |||
example TSN Streams are simple applications over DetNet flows. The specific | example, TSN Streams are simple applications over DetNet flows. The specific | |||
s | ||||
of this operation are discussed later in this document. | of this operation are discussed later in this document. | |||
</t> | </t> | |||
<figure anchor="fig_tsn_mpls_detnet"> | ||||
<figure anchor="fig_tsn_mpls_detnet" align="center" | <name>A TSN over DetNet MPLS-Enabled Network</name> | |||
title="A TSN over DetNet MPLS Enabled Network"> | <artwork align="center" name="" type="" alt=""><![CDATA[ | |||
<artwork align="center"><![CDATA[ | ||||
TSN Edge Transit Edge TSN | TSN Edge Transit Edge TSN | |||
End System Node Node Node End System | End System Node Node Node End System | |||
(T-PE) (LSR) (T-PE) | (T-PE) (LSR) (T-PE) | |||
+----------+ +----------+ | +----------+ +----------+ | |||
| TSN | <---------End to End TSN Service----------> | TSN | | | TSN | <-------- End-to-End TSN Service ---------> | TSN | | |||
| Applic. | | Applic. | | | Applic. | | Applic. | | |||
+----------+ +.........+ +.........+ +----------+ | +----------+ +.........+ +.........+ +----------+ | |||
| | | \S-Proxy: :S-Proxy/ | | | | | | | \S-Proxy: :S-Proxy/ | | | | |||
| TSN | | +.+---+<-- DetNet flow -->+---+ | | | TSN | | | TSN | | +.+---+<-- DetNet flow -->+---+ | | | TSN | | |||
| | |TSN| |Svc| |Svc| |TSN| | | | | | |TSN| |Svc| |Svc| |TSN| | | | |||
+----------+ +---+ +---+ +----------+ +---+ +---+ +----------+ | +----------+ +---+ +---+ +----------+ +---+ +---+ +----------+ | |||
| L2 | | L2| |Fwd| |Forwarding| |Fwd| |L2 | | L2 | | | L2 | | L2| |Fwd| |Forwarding| |Fwd| |L2 | | L2 | | |||
+------.---+ +-.-+ +-.-+ +---.----.-+ +--.+ +-.-+ +---.------+ | +------.---+ +-.-+ +-.-+ +---.----.-+ +--.+ +-.-+ +---.------+ | |||
: Link : / ,-----. \ : Link : / ,-----. \ | : Link : / ,-----. \ : Link : / ,-----. \ | |||
+........+ +-[ Sub ]-+ +........+ +-[ TSN ]-+ | +........+ +-[ Sub ]-+ +........+ +-[ TSN ]-+ | |||
[Network] [Network] | [Network] [Network] | |||
`-----' `-----' | `-----' `-----' | |||
|<------ DetNet MPLS ------>| | |<------ DetNet MPLS ------>| | |||
|<---------------------- TSN --------------------->| | |<---------------------- TSN --------------------->| | |||
]]></artwork> | ]]></artwork> | |||
</figure> | </figure> | |||
<t> | ||||
<t> | ||||
In this example, edge nodes provide a service proxy function that | In this example, edge nodes provide a service proxy function that | |||
"associates" the DetNet flows and native flows (i.e., TSN Streams) at | "associates" the DetNet flows and native flows (i.e., TSN Streams) at | |||
the edge of the DetNet domain. TSN streams are treated as App-flows | the edge of the DetNet domain. TSN Streams are treated as App-flows | |||
for DetNet. The whole DetNet domain behaves as a TSN relay node f or | for DetNet. The whole DetNet domain behaves as a TSN relay node f or | |||
the TSN streams. The service proxy behaves as a port of that TSN | the TSN Streams. The service proxy behaves as a port of that TSN | |||
relay node. | relay node. | |||
</t> | </t> | |||
<t> | ||||
<t> | <xref target="fig_8021_detnet" format="default"/> illustrates how DetNet can | |||
<xref target="fig_8021_detnet"/> illustrates how DetNet can provide services | provide services | |||
for IEEE 802.1 TSN end systems, CE1 and CE2, over a DetNet enabled MPLS | for IEEE 802.1 TSN end systems, CE1 and CE2, over a DetNet-enabled MPLS | |||
network. Edge nodes, E1 and E2, insert and remove required DetNet data | network. Edge nodes E1 and E2 insert and remove the required DetNet data | |||
plane encapsulation. The 'X' in the edge nodes and relay node, R1, | plane encapsulation. The 'X' in the edge nodes and relay node, R1, | |||
represent a potential DetNet compound flow packet replication and | represent a potential DetNet compound flow packet replication and | |||
elimination point. This conceptually parallels L2VPN services, and could | elimination point. This conceptually parallels L2VPN services and could | |||
leverage existing related solutions as discussed below. | leverage existing related solutions as discussed below. | |||
</t> | </t> | |||
<figure anchor="fig_8021_detnet"> | ||||
<figure align="center" anchor="fig_8021_detnet" | <name>IEEE 802.1TSN over DetNet</name> | |||
title="IEEE 802.1TSN Over DetNet"> | <artwork name="" type="" align="left" alt=""><![CDATA[ | |||
<artwork><![CDATA[ | TSN |<------- End-to-End DetNet Service ------>| TSN | |||
TSN |<------- End to End DetNet Service ------>| TSN | ||||
Service | Transit Transit | Service | Service | Transit Transit | Service | |||
TSN (AC) | |<-Tnl->| |<-Tnl->| | (AC) TSN | TSN (AC) | |<-Tnl->| |<-Tnl->| | (AC) TSN | |||
End | V V 1 V V 2 V V | End | End | V V 1 V V 2 V V | End | |||
System | +--------+ +--------+ +--------+ | System | System | +--------+ +--------+ +--------+ | System | |||
+---+ | | E1 |=======| R1 |=======| E2 | | +---+ | +---+ | | E1 |=======| R1 |=======| E2 | | +---+ | |||
| |--|----|._X_....|..DF1..|.._ _...|..DF3..|...._X_.|---|---| | | | |--|----|._X_....|..DF1..|.._ _...|..DF3..|...._X_.|---|---| | | |||
|CE1| | | \ | | X | | / | | |CE2| | |CE1| | | \ | | X | | / | | |CE2| | |||
| | | \_.|..DF2..|._/ \_..|..DF4..|._/ | | | | | | | \_.|..DF2..|._/ \_..|..DF4..|._/ | | | | |||
+---+ | |=======| |=======| | +---+ | +---+ | |=======| |=======| | +---+ | |||
^ +--------+ +--------+ +--------+ ^ | ^ +--------+ +--------+ +--------+ ^ | |||
| Edge Node Relay Node Edge Node | | | Edge Node Relay Node Edge Node | | |||
| (T-PE) (S-PE) (T-PE) | | | (T-PE) (S-PE) (T-PE) | | |||
| | | | | | |||
|<- TSN -> <------- TSN Over DetNet MPLS -------> <- TSN ->| | |<- TSN -> <------- TSN over DetNet MPLS -------> <- TSN ->| | |||
| | | | | | |||
|<-------- Time Sensitive Networking (TSN) Service ------->| | |<-------- Time-Sensitive Networking (TSN) Service ------->| | |||
X = Service protection | X = Service protection | |||
DFx = DetNet member flow x over a TE LSP | DFx = DetNet member flow x over a TE LSP | |||
AC = Attachment Circuit | AC = Attachment Circuit | |||
Tnl = Tunnel | Tnl = Tunnel | |||
]]> | ]]></artwork> | |||
</artwork> | </figure> | |||
</figure> | </section> | |||
</section> | ||||
<!-- ================================================= --> | ||||
<!-- DetNet MPLS data plane OVERVIEW --> | ||||
<!-- ================================================= --> | ||||
<section title="DetNet MPLS Data Plane" anchor="sec_dt_dp"> | ||||
<section title="Overview" anchor="sec_dt_dp_ov"> | <section anchor="sec_dt_dp" numbered="true" toc="default"> | |||
<t> | <name>DetNet MPLS Data Plane</name> | |||
The basic approach defined in <xref target="RFC8964"/> | <section anchor="sec_dt_dp_ov" numbered="true" toc="default"> | |||
supports the DetNet service sub-layer based on existing pseudowire (PW) | <name>Overview</name> | |||
encapsulations and mechanisms, and supports the DetNet forwarding | <t> | |||
The basic approach defined in <xref target="RFC8964" format="default"/> | ||||
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 | sub-layer based on existing MPLS Traffic Engineering encapsulations | |||
and mechanisms. | and mechanisms. | |||
</t> | </t> | |||
<t> | <t> | |||
A node operating on a DetNet flow in the Detnet service sub-layer, i.e. | A node operating on a DetNet flow in the DetNet service sub-layer, i.e., | |||
a node processing a DetNet packet which has the S-Label as top of stack | a node processing a DetNet packet that has the S-Label as top of stack, | |||
uses the local context associated with that S-Label, for example a recei | uses the local context associated with that S-Label. For example, a rece | |||
ved | ived | |||
F-Label, to determine what local DetNet operation(s) are applied to that | F-Label can be used to determine what local DetNet operation(s) is appli | |||
ed to that | ||||
packet. An S-Label may be unique when taken from the platform | packet. An S-Label may be unique when taken from the platform | |||
label space <xref target="RFC3031"/>, which would enable correct DetNet flow | label space <xref target="RFC3031" format="default"/>, which would enabl e correct DetNet flow | |||
identification regardless of which input interface or LSP the packet arr ives | identification regardless of which input interface or LSP the packet arr ives | |||
on. The service sub-layer functions (i.e., PREOF) use a DetNet control w ord | on. The service sub-layer functions (i.e., PREOF) use a DetNet control w ord | |||
(d-CW). | (d-CW). | |||
</t> | </t> | |||
<t> | <t> | |||
The DetNet MPLS data plane builds on MPLS Traffic Engineering | The DetNet MPLS data plane builds on MPLS Traffic Engineering | |||
encapsulations and mechanisms to provide a forwarding sub-layer that | encapsulations and mechanisms to provide a forwarding sub-layer that | |||
is responsible for providing resource allocation and explicit | is responsible for providing resource allocation and explicit | |||
routes. The forwarding sub-layer is supported by one or more | routes. The forwarding sub-layer is supported by one or more | |||
forwarding labels (F-Labels). | forwarding labels (F-Labels). | |||
</t> | </t> | |||
<t> | <t> | |||
DetNet edge/relay nodes are DetNet service sub-layer | DetNet edge/relay nodes are DetNet service sub-layer | |||
aware, understand the particular needs of DetNet flows and | aware, understand the particular needs of DetNet flows, and | |||
provide both DetNet service and forwarding sub-layer functions. | provide both DetNet service and forwarding sub-layer functions. | |||
They add, remove and process d-CWs, S-Labels and F-labels as | They add, remove, and process d-CWs, S-Labels, and F-Labels as | |||
needed. MPLS DetNet nodes and transit nodes include | needed. MPLS DetNet nodes and transit nodes include | |||
DetNet forwarding sub-layer functions, notably, support for | DetNet forwarding sub-layer functions -- notably, support for | |||
explicit routes and resource allocation to eliminate (or | explicit routes and resource allocation to eliminate (or | |||
reduce) congestion loss and jitter. Unlike other DetNet node type s, | reduce) congestion loss and jitter. Unlike other DetNet node type s, | |||
transit nodes provide no service sub-layer processing. | transit nodes provide no service sub-layer processing. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="tom-encap" numbered="true" toc="default"> | ||||
<section anchor="tom-encap" | <name>TSN over DetNet MPLS Encapsulation</name> | |||
title="TSN over DetNet MPLS Encapsulation"> | <t> | |||
<t> | ||||
The basic encapsulation approach is to treat a TSN Stream as an App-flow | The basic encapsulation approach is to treat a TSN Stream as an App-flow | |||
from the DetNet MPLS perspective. The corresponding example shown in | from the DetNet MPLS perspective. The corresponding example is shown in | |||
<xref target="fig_tsn_mpls_ex"/>. Note, that three example flows are | <xref target="fig_tsn_mpls_ex" format="default"/>. Note that three examp | |||
le flows are | ||||
shown in the figure. | shown in the figure. | |||
</t> | </t> | |||
<figure anchor="fig_tsn_mpls_ex"> | ||||
<figure title="Examples of TSN over MPLS Encapsulation Formats" | <name>Examples of TSN over MPLS Encapsulation Formats</name> | |||
anchor="fig_tsn_mpls_ex"> | <artwork align="center" name="" type="" alt=""><![CDATA[ | |||
<artwork align="center"><![CDATA[ | ||||
/-> +------+ +------+ +------+ TSN ^ ^ | /-> +------+ +------+ +------+ TSN ^ ^ | |||
MPLS | | X | | X | | X |<- Appli : : | MPLS | | X | | X | | X |<- Appli : : | |||
App-Flow <-+ +------+ +------+ +------+ cation : :(1) | App-Flow <-+ +------+ +------+ +------+ cation : :(1) | |||
| |TSN-L2| |TSN-L2| |TSN-L2| : v | | |TSN-L2| |TSN-L2| |TSN-L2| : v | |||
\-> +---+======+--+======+--+======+-----+ : | \-> +---+======+--+======+--+======+-----+ : | |||
| d-CW | | d-CW | | d-CW | : | | d-CW | | d-CW | | d-CW | : | |||
DetNet-MPLS +------+ +------+ +------+ :(2) | DetNet-MPLS +------+ +------+ +------+ :(2) | |||
|Labels| |Labels| |Labels| v | |Labels| |Labels| |Labels| v | |||
+---+======+--+======+--+======+-----+ | +---+======+--+======+--+======+-----+ | |||
Link/Sub-Network | L2 | | TSN | | UDP | | Link/Sub-Network | L2 | | TSN | | UDP | | |||
+------+ +------+ +------+ | +------+ +------+ +------+ | |||
| IP | | | IP | | |||
+------+ | +------+ | |||
| L2 | | | L2 | | |||
+------+ | +------+ | |||
(1) TSN Stream | (1) TSN Stream | |||
(2) DetNet MPLS Flow | (2) DetNet MPLS Flow | |||
]]> | ]]></artwork> | |||
</artwork> | </figure> | |||
</figure> | <t> | |||
<t> | ||||
In the figure, "Application" indicates the application payload carried b y | In the figure, "Application" indicates the application payload carried b y | |||
the TSN network. "MPLS App-Flow" indicates that the TSN Stream is the | the TSN network. "MPLS App-Flow" indicates that the TSN Stream is the | |||
payload from the perspective of the DetNet MPLS data plane defined in | payload from the perspective of the DetNet MPLS data plane defined in | |||
<xref target="RFC8964"/>. A single DetNet MPLS flow | <xref target="RFC8964" format="default"/>. A single DetNet MPLS flow | |||
can aggregate multiple TSN Streams. | can aggregate multiple TSN Streams. | |||
</t> | </t> | |||
<t> | <aside> | |||
Note: In order to avoid fragmentation (see section 5.3 of | <t> | |||
<xref target="RFC3985"/>), the network operator has to make sure | Note: Network fragmentation for DetNet is not supported and MUST | |||
that | be avoided. The reason for this is that network fragmentation is not consistent | |||
all the DetNet encapsulation overhead plus the TSN App-flow do no | with the packet delivery times needed for DetNet. Therefore, when IP is used as | |||
t | the sub-network, IPv6 fragmentation MUST NOT be used, and IPv4 packets MUST be | |||
exceed the DetNet network's MTU. | sent with the DF bit set. This means that the network operator MUST ensure that | |||
</t> | all the DetNet encapsulation overhead plus the maximum TSN App-flow frame size d | |||
oes not exceed the DetNet network's MTU. | ||||
</section> | </t></aside> | |||
</section> | ||||
</section> <!-- end of DetNet MPLS data plane overview --> | </section> | |||
<!-- ================================================= --> | ||||
<!-- TSN over DetNet MPLS procedures --> | ||||
<!-- ================================================= --> | ||||
<section title="TSN over MPLS Data Plane Procedures" anchor="tom_proc"> | ||||
<t> | ||||
The description of Edge Nodes procedures and functions for TSN over DetN | ||||
et MPLS | ||||
scenarios follows the concepts from <xref target="RFC3985"/>, and covers | ||||
the | ||||
Edge Nodes components shown in <xref target="fig_tsn_mpls_detnet"/>. In | ||||
this section the following procedures of DetNet Edge Nodes are described | ||||
: | ||||
<list style="symbols"> | ||||
<t> | ||||
TSN related (<xref target="tom_tsn_proc"/>) | ||||
</t><t> | ||||
DetNet Service Proxy (<xref target="tom_svc_prx_proc"/>) | ||||
</t><t> | ||||
DetNet service and forwarding sub-layer (<xref target="t | ||||
om_dn_sub_proc"/>) | ||||
</t> | ||||
</list> | ||||
</t> | ||||
<t> | ||||
The sub-sections describe procedures for forwarding packets by De | ||||
tNet | ||||
Edge nodes, where such packets are received from either directly | ||||
connected CEs (TSN nodes) or some other DetNet Edge nodes. | ||||
</t> | ||||
<section title="Edge Node TSN Procedures" anchor="tom_tsn_proc"> | <section anchor="tom_proc" numbered="true" toc="default"> | |||
<t> | <name>TSN over MPLS Data Plane Procedures</name> | |||
The Time-Sensitive Networking (TSN) Task Group of the IEEE 802.1 | <t> | |||
Working Group have defined (and are defining) a number of amendm | The description of edge node procedures and functions for TSN over DetNe | |||
ents | t MPLS | |||
to <xref target="IEEE8021Q"/> that provide zero | scenarios follows the concepts from <xref target="RFC3985" format="defau | |||
lt"/> and covers the | ||||
edge node components shown in <xref target="fig_tsn_mpls_detnet" format= | ||||
"default"/>. In | ||||
this section, the following procedures of DetNet edge nodes are describe | ||||
d: | ||||
</t> | ||||
<ul spacing="normal"> | ||||
<li> | ||||
TSN related (<xref target="tom_tsn_proc" format="default | ||||
"/>) | ||||
</li> | ||||
<li> | ||||
DetNet Service Proxy (<xref target="tom_svc_prx_proc" fo | ||||
rmat="default"/>) | ||||
</li> | ||||
<li> | ||||
DetNet service and forwarding sub-layer (<xref target="t | ||||
om_dn_sub_proc" format="default"/>) | ||||
</li> | ||||
</ul> | ||||
<t> | ||||
The subsections describe procedures for forwarding packets by Det | ||||
Net | ||||
edge nodes, where such packets are received from either directly | ||||
connected CEs (TSN nodes) or some other DetNet edge nodes. | ||||
</t> | ||||
<section anchor="tom_tsn_proc" numbered="true" toc="default"> | ||||
<name>Edge Node TSN Procedures</name> | ||||
<t> | ||||
The TSN TG of the IEEE 802.1 | ||||
Working Group has defined (and is defining) a number of amendmen | ||||
ts | ||||
to <xref target="IEEE8021Q" format="default"/> that provide zero | ||||
congestion loss and bounded latency in bridged networks. | congestion loss and bounded latency in bridged networks. | |||
<xref target="IEEE8021CB"/> defines packet | <xref target="IEEE8021CB" format="default"/> defines packet | |||
replication and elimination functions for a TSN network. | replication and elimination functions for a TSN network. | |||
</t> | </t> | |||
<t> | <t> | |||
The implementation of TSN entity (i.e., TSN packet proc | The implementation of a TSN entity (i.e., TSN packet pr | |||
essing | ocessing | |||
functions) must be compliant with the relevant IEEE 802 .1 | functions) must be compliant with the relevant IEEE 802 .1 | |||
standards. | standards. | |||
</t> | </t> | |||
<t> | <t> | |||
TSN specific functions are executed on the data received by | TSN-specific functions are executed on the data received by | |||
the DetNet Edge Node from the connected CE before being forwarde | the DetNet edge node from the connected CE before being forwarde | |||
d to | d to | |||
connected CE(s) or presented to the DetNet Servic | connected CE(s) or presented to the DetNet servic | |||
e Proxy function for | e proxy function for | |||
transmission across the DetNet domain. TSN specific functions | transmission across the DetNet domain. TSN-specific functions | |||
are also executed on the data received from a Det Net PW by a PE | are also executed on the data received from a Det Net PW by a PE | |||
before the data is output on the Attachment Circu | before the data is output on the AC(s). | |||
it(s) (AC). | </t> | |||
</t> | <t> | |||
<t> | The TSN packet processing function(s) of edge nodes (T-PE) belon | |||
TSN packet processing function(s) of Edge Nodes (T-PE) are belon | gs to the | |||
ging to the | NSP <xref target="RFC3985" format="default"/> | |||
native service processing (NSP) <xref target="RFC3985"/> | block. This is similar to other functionalities being defined by | |||
block. This is similar to other functionalities being defined by | standards | |||
standard | bodies other than the IETF (for example, in the case of Ethernet | |||
bodies other than the IETF (for example in case of Ethernet: str | , stripping, | |||
ipping, | overwriting, or adding VLAN tags, etc.). Depending on the TSN ro | |||
overwriting or adding VLAN tags, etc.). Depending on the TSN rol | le of | |||
e of | the edge node in the end-to-end TSN service, selected TSN functi | |||
the Edge Node in the end-to-end TSN service selected TSN functio | ons | |||
ns | ||||
are supported. | are supported. | |||
</t> | </t> | |||
<t> | <t> | |||
When a PE receives a packet from a CE, on a given AC with | When a PE receives a packet from a CE on a given AC with | |||
DetNet service, | DetNet service, | |||
it first checks via Stream Identification | it first checks via Stream identification | |||
(see Clause 6. of <xref target="IEEE8021CB"/> and | (see Clause 6 of <xref target="IEEE8021CB" format="defaul | |||
<xref target="IEEEP8021CBdb"/>) | t"/> and | |||
<xref target="IEEEP8021CBdb" format="default"/>) | ||||
whether the packet belongs | whether the packet belongs | |||
to a configured TSN Stream (i.e., App-flow from DetNet pe rspective). | to a configured TSN Stream (i.e., App-flow from the DetNe t perspective). | |||
If no Stream ID is matched and no other (VPN) service is configured | 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 | for the AC, then the packet <bcp14>MUST</bcp14> be droppe | |||
a matching TSN | d. If there is a matching TSN | |||
Stream, then the Stream ID specific TSN functions are exe | Stream, then the Stream-ID-specific TSN functions are exe | |||
cuted | cuted | |||
(e.g., ingress policing, header field manipulation in cas | (e.g., ingress policing, header field manipulation in the | |||
e | case | |||
of active Stream Identification, FRER, etc.). Source MAC | of active Stream identification, FRER, etc.). Source Medi | |||
lookup | a Access Control (MAC) lookup | |||
may also be used for local MAC address learning. | may also be used for local MAC address learning. | |||
</t> | </t> | |||
<t> | <t> | |||
If the PE decides to forward the packet, the packet MUST | If the PE decides to forward the packet, the packet <bcp1 | |||
be forwarded | 4>MUST</bcp14> be forwarded | |||
according to the TSN Stream specific configuration to con | according to the TSN-Stream-specific configuration to con | |||
nected CE(s) | nected CE(s) | |||
(in case of local bridging) and/or to the DetNet Service | (in case of local bridging) and/or to the DetNet service | |||
Proxy | proxy | |||
(in case of forwarding to remote CE(s)). If there are no | (in case of forwarding to remote CE(s)). If there are no | |||
TSN Stream specific forwarding configurations, the PE MUS | TSN-Stream-specific forwarding configurations, the PE <bc | |||
T flood | p14>MUST</bcp14> flood | |||
the packet to other locally attached CE(s) and to the Det | the packet to other locally attached CE(s) and to the Det | |||
Net Service | Net service | |||
Proxy. If the administrative policy on the PE does not al | proxy. If the administrative policy on the PE does not al | |||
low | low | |||
flooding, the PE MUST drop the packet. | flooding, the PE <bcp14>MUST</bcp14> drop the packet. | |||
</t> | </t> | |||
<t> | <t> | |||
When a TSN entity of the PE receives a packet from the De tNet | When a TSN entity of the PE receives a packet from the De tNet | |||
Service Proxy, it first checks via Stream Identification | service proxy, it first checks via Stream identification | |||
(see Clause 6. of <xref target="IEEE8021CB"/> and | (see Clause 6 of <xref target="IEEE8021CB" format="defaul | |||
<xref target="IEEEP8021CBdb"/>) whether | t"/> and | |||
<xref target="IEEEP8021CBdb" format="default"/>) whether | ||||
the packet belongs to a configured TSN Stream. If no Stre am ID is | the packet belongs to a configured TSN Stream. If no Stre am ID is | |||
matched, then the packet is dropped. If there is a matchi ng TSN | matched, then the packet is dropped. If there is a matchi ng TSN | |||
Stream, then the Stream ID specific TSN functions are exe cuted | Stream, then the Stream-ID-specific TSN functions are exe cuted | |||
(e.g., header field manipulation in case of active Stream | (e.g., header field manipulation in case of active Stream | |||
Identification, FRER, etc.). Source MAC lookup may also b e used for | identification, FRER, etc.). Source MAC lookup may also b e used for | |||
local MAC address learning. | local MAC address learning. | |||
</t> | </t> | |||
<t> | <t> | |||
If the PE decides to forward the packet, the packet is fo rwarded | If the PE decides to forward the packet, the packet is fo rwarded | |||
according to the TSN Stream specific configuration to con | according to the TSN-Stream-specific configuration to con | |||
nected CE(s). | nected CE(s). | |||
If there are no TSN Stream specific forwarding configurat | If there are no TSN-Stream-specific forwarding configurat | |||
ions, the | ions, the | |||
PE floods the packet to locally attached CE(s). If the | PE floods the packet to locally attached CE(s). If the | |||
administrative policy on the PE does not allow flooding, the PE | administrative policy on the PE does not allow flooding, the PE | |||
drops the packet. | drops the packet. | |||
</t> | </t> | |||
<t> | <t> | |||
Implementations of this document SHALL use management and | Implementations of this document <bcp14>SHALL</bcp14> use management | |||
control information to ensure TSN specific functions of the Edge Nod | and | |||
e | control information to ensure TSN-specific functions of the edge nod | |||
e | ||||
according to the expectations of the connected TSN network. | according to the expectations of the connected TSN network. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="tom_svc_prx_proc" numbered="true" toc="default"> | ||||
<section title="Edge Node DetNet Service Proxy Procedures" anchor="tom_svc_prx | <name>Edge Node DetNet Service Proxy Procedures</name> | |||
_proc"> | <t> | |||
<t> | The service proxy | |||
The Service Proxy | ||||
function maps between App-flows and DetNet flows. | function maps between App-flows and DetNet flows. | |||
The DetNet Edge Node TSN entity MUST support the | The DetNet edge node TSN entity <bcp14>MUST</bcp1 | |||
TSN Stream | 4> support the TSN Stream | |||
identification functions and the related managed objects as | identification functions (as defined in Clause 6 of <xref target | |||
defined in Clause 6. and Clause 9. of | ="IEEE8021CB" format="default"/> and <xref target="IEEEP8021CBdb" format="defaul | |||
<xref target="IEEE8021CB"/> and | t"/>) and the related managed objects (as | |||
<xref target="IEEEP8021CBdb"/> to | defined in Clause 9 of <xref target="IEEE8021CB" format="default | |||
recognize the App-flow related packets. The Service Proxy | "/> and <xref target="IEEEP8021CBdb" format="default"/>) to | |||
presents TSN Streams as an App-flow to a DetNet Flow. | recognize the packets related to App-flow. The service proxy | |||
</t> | presents TSN Streams as an App-flow to a DetNet flow. | |||
<t> | </t> | |||
When a DetNet Service Proxy receives a packet from the TS | <t> | |||
N Entity | When a DetNet service proxy receives a packet from the TS | |||
it MUST check whether such an App-flow is present in its | N entity, | |||
mapping table. | it <bcp14>MUST</bcp14> check whether such an App-flow is | |||
If present it associates the internal DetNet flow-ID to t | present in its mapping table. | |||
he packet and | If present, it associates the internal DetNet flow ID to | |||
MUST forward it to the DetNet Service and Forwarding sub- | the packet and | |||
layers. If | <bcp14>MUST</bcp14> forward it to the DetNet service and | |||
no match is found it MUST drop the packet. | forwarding sub-layers. If | |||
</t> | no match is found, it <bcp14>MUST</bcp14> drop the packet | |||
<t> | . | |||
When a DetNet Service Proxy receives a packet from the De | </t> | |||
tNet Service | <t> | |||
and Forwarding sub-layers it MUST be forwarded to the Edg | When a DetNet service proxy receives a packet from the De | |||
e Node | tNet service | |||
TSN Entity. | and forwarding sub-layers, it <bcp14>MUST</bcp14> be forw | |||
</t> | arded to the edge node | |||
<t> | TSN entity. | |||
Implementations of this document SHALL use management and | </t> | |||
<t> | ||||
Implementations of this document <bcp14>SHALL</bcp14> use manage | ||||
ment and | ||||
control information to map a TSN Stream to a DetNet flow. | control information to map a TSN Stream to a DetNet flow. | |||
N:1 mapping (aggregating multiple TSN Streams in a single | N:1 mapping (aggregating multiple TSN Streams in a single | |||
DetNet flow) SHALL be supported. The management or control | DetNet flow) <bcp14>SHALL</bcp14> be supported. The management o | |||
function that provisions flow mapping SHALL ensure that | r control | |||
function that provisions flow mapping <bcp14>SHALL</bcp14> ensur | ||||
e that | ||||
adequate resources are allocated and configured to | adequate resources are allocated and configured to | |||
fulfil the service requirements of the mapped flows. | fulfill the service requirements of the mapped flows. | |||
</t> | </t> | |||
<t> | <t> | |||
Due to the (intentional) similarities of the DetNet PREOF and | Due to the (intentional) similarities of the DetNet PREOF and | |||
TSN FRER functions service protection function interworking is | TSN FRER functions, service protection function interworking is | |||
possible between the TSN and the DetNet domains. Such service | possible between the TSN and the DetNet domains. Such service | |||
protection interworking scenarios might require to copy sequence | protection interworking scenarios might require copying of seque nce | |||
number fields from TSN (L2) to PW (MPLS) encapsulation. | number fields from TSN (L2) to PW (MPLS) encapsulation. | |||
However, such interworking is out-of-scope in this document and | However, such interworking is out of scope in this document and | |||
left for further study. | is left for further study. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="tom_dn_sub_proc" numbered="true" toc="default"> | ||||
<section title="Edge Node DetNet Service and Forwarding Sub-Layer Procedures" | <name>Edge Node DetNet Service and Forwarding Sub-Layer Procedures</name | |||
anchor="tom_dn_sub_proc"> | > | |||
<t> | <t> | |||
In the design of <xref target="RFC8964"/> an MPLS service | In the design presented in <xref target="RFC8964" format="defaul | |||
label (the S-Label), similar to a pseudowire (PW) label | t"/>, an MPLS service | |||
<xref target="RFC3985"/>, is used to identify both the DetNet fl | label (the S-Label), similar to a PW label | |||
ow | <xref target="RFC3985" format="default"/>, is used to identify b | |||
identity and the payload MPLS payload type. The DetNet sequence | oth the DetNet flow | |||
number is carried in the DetNet Control word (d-CW) which carrie | identity and the MPLS payload type. The DetNet sequence | |||
s the | number is carried in the d-CW, which carries the | |||
Data/OAM discriminator as well. In | Data/OAM discriminator as well. In | |||
<xref target="RFC8964"/> two sequence number sizes | <xref target="RFC8964" format="default"/>, two sequence number s | |||
are supported: a 16 bit sequence number and a 28 bit sequence nu | izes | |||
mber. | are supported: a 16-bit sequence number and a 28-bit sequence nu | |||
</t> | mber. | |||
<t> | </t> | |||
PREOF functions and the provided service recovery is available | <t> | |||
only within the DetNet domain as the DetNet flow-ID and the DetN | PREOF functions and the provided service recovery are available | |||
et | only within the DetNet domain as the DetNet flow ID and the DetN | |||
et | ||||
sequence number are not valid outside the DetNet network. MPLS | sequence number are not valid outside the DetNet network. MPLS | |||
(DetNet) Edge nodes terminate all related information elements | (DetNet) edge nodes terminate all related information elements | |||
encoded in the MPLS labels. | encoded in the MPLS labels. | |||
</t> | </t> | |||
<t> | <t> | |||
When a PE receives a packet from the Service Proxy functi | When a PE receives a packet from the service proxy functi | |||
on it MUST | on, it <bcp14>MUST</bcp14> | |||
handle the packet as defined in <xref target="RFC8964"/>. | handle the packet as defined in <xref target="RFC8964" fo | |||
</t> | rmat="default"/>. | |||
<t> | </t> | |||
<t> | ||||
When a PE receives an MPLS packet from a remote PE, then, after | When a PE receives an MPLS packet from a remote PE, then, after | |||
processing the MPLS label stack, if the top MPLS label en ds up being | processing the MPLS label stack, if the top MPLS label en ds up being | |||
a DetNet S-label that was advertised by this node, then t | a DetNet S-Label that was advertised by this node, then t | |||
he PE | he PE | |||
MUST forward the packet according to the configured DetNe | <bcp14>MUST</bcp14> forward the packet according to the c | |||
t Service and | onfigured DetNet service and | |||
Forwarding sub-layer rules to other PE nodes or via the D | forwarding sub-layer rules to other PE nodes or via the D | |||
etnet Service | etNet service | |||
Proxy function towards locally connected CE(s). | proxy function towards locally connected CE(s). | |||
</t> | ||||
<t> | ||||
For further details on DetNet Service and Forwarding sub-layers | ||||
see <xref target="RFC8964"/>. | ||||
</t> | </t> | |||
</section> | <t> | |||
For further details on DetNet service and forwarding sub-layers, | ||||
</section> <!-- End of Procedures Section --> | see <xref target="RFC8964" format="default"/>. | |||
</t> | ||||
<!-- ========================================================== --> | </section> | |||
<!-- Management and Control Plane Considerations --> | </section> | |||
<!-- ========================================================== --> | ||||
<section title="Controller Plane (Management and Control) Considerations" ancho | ||||
r="cp_considerations"> | ||||
<t> | <section anchor="cp_considerations" numbered="true" toc="default"> | |||
TSN Stream(s) to DetNet flow mapping related information are | <name>Controller Plane (Management and Control) Considerations</name> | |||
required only for the service proxy function of MPLS (DetNet) Edge nodes | <t> | |||
. | Information related to TSN Stream(s) to DetNet flow mapping is | |||
From the Data Plane perspective there is no practical difference | required only for the service proxy function of MPLS (DetNet) edge nodes | |||
based on the origin of flow mapping related information (manageme | . | |||
nt | From the data plane perspective, there is no practical difference | |||
based on the origin of flow-mapping-related information (manageme | ||||
nt | ||||
plane or control plane). | plane or control plane). | |||
</t> | </t> | |||
<t> | <t> | |||
The following summarizes the set of information that is needed to | The following summarizes the set of information that is needed to | |||
configure TSN over DetNet MPLS: | configure TSN over DetNet MPLS: | |||
<list style="symbols"> | </t> | |||
<t>TSN related configuration information according to t | <ul spacing="normal"> | |||
he | <li>TSN-related configuration information according to the | |||
TSN role of the DetNet MPLS node, as per | TSN role of the DetNet MPLS node, as per | |||
<xref target="IEEE8021Q"/>, <xref target="IEEE80 | <xref target="IEEE8021Q" format="default"/>, <xr | |||
21CB"/> and | ef target="IEEE8021CB" format="default"/>, and | |||
<xref target="IEEEP8021CBdb"/>. </t> | <xref target="IEEEP8021CBdb" format="default"/>. </l | |||
<t>DetNet MPLS related configuration information accord | i> | |||
ing to the | <li>DetNet MPLS-related configuration information according to the | |||
DetNet role of the DetNet MPLS node, as per | DetNet role of the DetNet MPLS node, as per | |||
<xref target="RFC8964"/>. </t> | <xref target="RFC8964" format="default"/>. </li> | |||
<t>App-Flow identification information to map received TSN | <li>App-flow identification information to map received TSN | |||
Stream(s) to the DetNet flow. Parameters of TSN stream | Stream(s) to the DetNet flow. Parameters of TSN Stream | |||
identification are defined in <xref target="IEEE8021CB" | identification are defined in <xref target="IEEE8021CB" | |||
/> and | format="default"/> and | |||
<xref target="IEEEP8021CBdb"/>. </t> | <xref target="IEEEP8021CBdb" format="default"/>. </li> | |||
</list> | </ul> | |||
This information MUST be provisioned per DetNet flow. | <t> | |||
</t> | This information <bcp14>MUST</bcp14> be provisioned per DetNet flow. | |||
<t> | </t> | |||
<t> | ||||
Mappings between DetNet and TSN management and control pl anes are | Mappings between DetNet and TSN management and control pl anes are | |||
out of scope of the document. Some of the challanges are | out of scope of the document. Some of the challenges are | |||
highligthed below. | highlighted below. | |||
</t> | </t> | |||
<t> | <t> | |||
MPLS DetNet Edge nodes are member of both the DetNet domain and the | MPLS DetNet edge nodes are a member of both the DetNet domain and the | |||
connected TSN network. From the TSN network perspective the MPLS | connected TSN network. From the TSN network perspective, the MPLS | |||
(DetNet) Edge node has a "TSN relay node" role, so TSN specific | (DetNet) edge node has a "TSN relay node" role, so TSN-specific | |||
management and control plane functionalities must be implemented. | management and control plane functionalities must be implemented. | |||
There are many similarities in the management plane techniques used in | There are many similarities in the management plane techniques used in | |||
DetNet and TSN, but that is not the case for the control plane | DetNet and TSN, but that is not the case for the control plane | |||
protocols. For example, RSVP-TE and MSRP behaves differently. | protocols. For example, RSVP-TE and MSRP behave differently. | |||
Therefore management and control plane design is an important asp | Therefore, management and control plane design is an important as | |||
ect | pect | |||
of scenarios, where mapping between DetNet and TSN is require | of scenarios where mapping between DetNet and TSN is required. | |||
d. | </t> | |||
</t> | <t> | |||
<t> | Note that as the DetNet network is just a portion of the end-to-end TSN | |||
Note that, as the DetNet network is just a portion of the end to end TSN | path (i.e., single hop from the Ethernet perspective), some parameters | |||
path (i.e., single hop from Ethernet perspective), some parameters | ||||
(e.g., delay) may differ significantly. Since there is no interworking | (e.g., delay) may differ significantly. Since there is no interworking | |||
function the bandwidth of DetNet network is assumed to be set large enou | function, the bandwidth of the DetNet network is assumed to be set large | |||
gh to | enough to | |||
handle all TSN Flows it will support. At the egress of the Detnet Domai | handle all TSN flows it will support. At the egress of the DetNet domai | |||
n the MPLS | n, the MPLS | |||
headers are stripped and the TSN flow continues on as a normal TSN | headers are stripped, and the TSN flow continues on as a normal TSN | |||
flow. | flow. | |||
</t> | </t> | |||
<t> | ||||
<t> | ||||
In order to use a DetNet network to interconnect TSN segments, | In order to use a DetNet network to interconnect TSN segments, | |||
TSN specific information must be converted to DetNet domain | TSN-specific information must be converted to DetNet-domain-specific inf | |||
specific ones. TSN Stream ID(s) and stream(s) related | ormation. TSN Stream ID(s) and stream-related | |||
parameters/requirements must be converted to a DetNet flow-ID and | parameters/requirements must be converted to a DetNet flow ID and | |||
flow related parameters/requirements. | flow-related parameters/requirements. | |||
</t> | </t> | |||
<t> | ||||
In some case it may be challenging to determine some egress node | <t> | |||
related information. For example, it may be not trivial to | In some cases, it may be challenging to determine some information relat | |||
ed to the egress-node. For example, it may be not trivial to | ||||
locate the egress point/interface of a TSN Stream with a | locate the egress point/interface of a TSN Stream with a | |||
multicast destination MAC address. Such scenarios may | multicast destination MAC address. Such scenarios may | |||
require interaction between control and management plane | require interaction between control and management plane | |||
functions and between DetNet and TSN domains. | functions and between DetNet and TSN domains. | |||
</t> | </t> | |||
<t> | <t> | |||
Mapping between DetNet flow identifiers and TSN Stream | Mapping between DetNet flow identifiers and TSN Stream | |||
identifiers, if not provided explicitly, can be done by the service | identifiers, if not provided explicitly, can be done by the service | |||
proxy function of an MPLS (DetNet) Edge node locally based on informatio | proxy function of an MPLS (DetNet) edge node locally based on informatio | |||
n | n | |||
provided for configuration of the TSN Stream identification functions | provided for the configuration of the TSN Stream identification function | |||
s | ||||
(e.g., Mask-and-Match Stream identification). | (e.g., Mask-and-Match Stream identification). | |||
</t> | </t> | |||
<t> | <t> | |||
Triggering the setup/modification of a DetNet flow in the | Triggering the setup/modification of a DetNet flow in the | |||
DetNet network is an example where management and/or | DetNet network is an example where management and/or | |||
control plane interactions are required between the DetNet | control plane interactions are required between the DetNet | |||
and the TSN network. | and the TSN network. | |||
</t> | </t> | |||
<t> | <t> | |||
Configuration of TSN specific functions (e.g., FRER) | Configuration of TSN-specific functions (e.g., FRER) | |||
inside the TSN network is a TSN domain specific decision | inside the TSN network is a TSN-domain-specific decision | |||
and may not be visible in the DetNet domain. Service protection | and may not be visible in the DetNet domain. Service protection | |||
interworking scenarios are left for further study. | interworking scenarios are left for further study. | |||
</t> | </t> | |||
</section> <!-- End of Management and Control Plane COnsiderations --> | </section> | |||
<section title="Security Considerations"> | <section numbered="true" toc="default"> | |||
<t> | <name>Security Considerations</name> | |||
Security considerations for DetNet are described in detail in <xref | <t> | |||
target="I-D.ietf-detnet-security"/>. General security | Security considerations for DetNet are described in detail in <xref target= | |||
considerations are described in <xref | "I-D.ietf-detnet-security" format="default"/>. General security | |||
target="RFC8655"/>. | considerations are described in <xref target="RFC8655" format="default"/>. | |||
</t> | </t> | |||
<t> | <t> | |||
DetNet MPLS data plane specific considerations are summarized and | Considerations specific to the DetNet MPLS data plane are summarized and | |||
described in <xref target="RFC8964"/> including any | described in <xref target="RFC8964" format="default"/>, including any | |||
application flow types. This document focuses on the scenario where TSN | application flow types. This document focuses on a scenario where TSN St | |||
Streams are the application flows for DetNet and it is already covered | reams are the application flows for DetNet, which is already covered | |||
by those DetNet MPLS data plane security considerations. | by those DetNet MPLS data plane security considerations. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="iana" numbered="true" toc="default"> | ||||
<section anchor="iana" title="IANA Considerations"> | <name>IANA Considerations</name> | |||
<t> | <t> | |||
This document makes no IANA requests. | This document has no IANA actions. | |||
</t> | </t> | |||
</section> | </section> | |||
</middle> | ||||
<back> | ||||
<displayreference target="I-D.ietf-detnet-security" to="DETNET-SEC"/> | ||||
<references> | ||||
<name>References</name> | ||||
<references> | ||||
<name>Normative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.2119.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.3031.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8174.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8655.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8938.xml"/> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.8964.xml"/> | ||||
<reference anchor="IEEE8021CB" target="https://ieeexplore.ieee.org/docum | ||||
ent/8091139"> | ||||
<front> | ||||
<title>Standard for Local and metropolitan area networks -- Frame Re | ||||
plication and Elimination for Reliability</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date month="October" year="2017"/> | ||||
</front> | ||||
<seriesInfo name="IEEE" value="802.1CB-2017"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2017.8091139"/> | ||||
</reference> | ||||
<reference anchor="IEEEP8021CBdb" target=" https://1.ieee802.org/tsn/802 | ||||
-1cbdb"> | ||||
<front> | ||||
<title>Draft Standard for Local and metropolitan area networks - Fra | ||||
me Replication and Elimination for Reliability - Amendment: Extended Stream Iden | ||||
tification Functions</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date month="April" year="2021"/> | ||||
</front> | ||||
<seriesInfo name="IEEE P802.1CBdb" value="D1.3"/> | ||||
</reference> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.3985.xml"/> | ||||
<section anchor="acks" title="Acknowledgements"> | <reference anchor='I-D.ietf-detnet-security'> | |||
<t> | <front> | |||
The authors wish to thank Norman Finn, Lou Berger, Craig Gunther, | <title>Deterministic Networking (DetNet) Security Considerations</title> | |||
Christophe Mangin and Jouni Korhonen for their various contributions | ||||
to this work. | ||||
</t> | ||||
</section> | ||||
</middle> | ||||
<back> | <author initials='E' surname='Grossman' fullname='Ethan Grossman' role="editor"> | |||
<references title="Normative References"> | <organization /> | |||
&rfc2119; | </author> | |||
<?rfc include="reference.RFC.3031"?> | ||||
<?rfc include="reference.RFC.8174"?> | ||||
<?rfc include="reference.RFC.8655"?> | ||||
<?rfc include="reference.RFC.8938"?> | ||||
<?rfc include="reference.RFC.8964"?> | ||||
<reference anchor="IEEE8021CB" | <author initials='T' surname='Mizrahi' fullname='Tal Mizrahi'> | |||
target="http://standards.ieee.org/about/get/"> | <organization /> | |||
<front> | </author> | |||
<title>Standard for Local and metropolitan area networks - | ||||
Frame Replication and Elimination for Reliability | ||||
(IEEE Std 802.1CB-2017)</title> | ||||
<author> | ||||
<organization>IEEE 802.1</organization> | ||||
</author> | ||||
<date year="2017"/> | ||||
</front> | ||||
<format type="PDF" target="http://standards.ieee.org/about/get/"/> | ||||
</reference> | ||||
<reference anchor="IEEEP8021CBdb" | <author initials='A' surname='Hacker' fullname='Andrew Hacker'> | |||
target="http://www.ieee802.org/1/files/private/db-drafts/d1/802 | <organization /> | |||
-1CBdb-d1-0.pdf"> | </author> | |||
<front> | ||||
<title>Extended Stream identification functions</title> | ||||
<author initials="C. M." surname="Mangin" fullname="Christophe Mangin" | ||||
> | ||||
<organization>IEEE 802.1</organization> | ||||
</author> | ||||
<date month="September" year="2020"/> | ||||
</front> | ||||
<seriesInfo name="IEEE P802.1CBdb /D1.0" value="P802.1CBdb"/> | ||||
<format type="PDF" target="http://www.ieee802.org/1/files/private/db-dra | ||||
fts/d1/802-1CBdb-d1-0.pdf"/> | ||||
</reference> | ||||
</references> | <date month='March' day='2' year='2021' /> | |||
<references title="Informative References"> | ||||
&rfc3985; | ||||
<?rfc include="reference.I-D.ietf-detnet-security"?> | ||||
<!-- <?rfc include="reference.RFC.4301"?> --> | ||||
<!-- <reference anchor="IEEE802.1AE-2018" | </front> | |||
target="https://ieeexplore.ieee.org/document/8585421"> | ||||
<front> | ||||
<title>IEEE Std 802.1AE-2018 MAC Security (MACsec)</title> | ||||
<author> | ||||
<organization>IEEE Standards Association</organization> | ||||
</author> | ||||
<date year="2018" /> | ||||
</front> | ||||
</reference> --> | ||||
<reference anchor="IEEE8021Q" | <seriesInfo name='Internet-Draft' value='draft-ietf-detnet-security-16' /> | |||
target="http://standards.ieee.org/about/get/"> | <format type='TXT' | |||
<front> | target='http://www.ietf.org/internet-drafts/draft-ietf-detnet-security.t | |||
<title>Standard for Local and metropolitan area networks--Bridges | xt' /> | |||
and Bridged Networks (IEEE Std 802.1Q-2018)</title> | </reference> | |||
<author> | ||||
<organization>IEEE 802.1</organization> | ||||
</author> | ||||
<date year="2018"/> | ||||
</front> | ||||
<format type="PDF" target="http://standards.ieee.org/about/get/"/> | ||||
</reference> | ||||
</references> | <reference anchor="IEEE8021Q" target="https://ieeexplore.ieee.org/document | |||
/8403927"> | ||||
<front> | ||||
<title>Standard for Local and Metropolitan Area Networks--Bridges | ||||
and Bridged Networks</title> | ||||
<author> | ||||
<organization>IEEE</organization> | ||||
</author> | ||||
<date year="2018" month="July"/> | ||||
</front> | ||||
<seriesInfo name="IEEE Std." value="802.1Q-2018"/> | ||||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2018.8403927"/> | ||||
</back> | </reference> | |||
</references> | ||||
</references> | ||||
<section anchor="acks" numbered="false" toc="default"> | ||||
<name>Acknowledgements</name> | ||||
<t> | ||||
The authors wish to thank <contact fullname="Norman Finn"/>, <contact fullna | ||||
me="Lou Berger"/>, <contact fullname="Craig Gunther"/>, | ||||
<contact fullname="Christophe Mangin"/>, and <contact fullname="Jouni Kor | ||||
honen"/> for their various contributions | ||||
to this work. | ||||
</t> | ||||
</section> | ||||
</back> | ||||
</rfc> | </rfc> | |||
End of changes. 100 change blocks. | ||||
579 lines changed or deleted | 607 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |