summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc8655.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc8655.txt')
-rw-r--r--doc/rfc/rfc8655.txt2072
1 files changed, 2072 insertions, 0 deletions
diff --git a/doc/rfc/rfc8655.txt b/doc/rfc/rfc8655.txt
new file mode 100644
index 0000000..178c553
--- /dev/null
+++ b/doc/rfc/rfc8655.txt
@@ -0,0 +1,2072 @@
+
+
+
+
+Internet Engineering Task Force (IETF) N. Finn
+Request for Comments: 8655 Huawei
+Category: Standards Track P. Thubert
+ISSN: 2070-1721 Cisco
+ B. Varga
+ J. Farkas
+ Ericsson
+ October 2019
+
+
+ Deterministic Networking Architecture
+
+Abstract
+
+ This document provides the overall architecture for Deterministic
+ Networking (DetNet), which provides a capability to carry specified
+ unicast or multicast data flows for real-time applications with
+ extremely low data loss rates and bounded latency within a network
+ domain. Techniques used include 1) reserving data-plane resources
+ for individual (or aggregated) DetNet flows in some or all of the
+ intermediate nodes along the path of the flow, 2) providing explicit
+ routes for DetNet flows that do not immediately change with the
+ network topology, and 3) distributing data from DetNet flow packets
+ over time and/or space to ensure delivery of each packet's data in
+ spite of the loss of a path. DetNet operates at the IP layer and
+ delivers service over lower-layer technologies such as MPLS and Time-
+ Sensitive Networking (TSN) as defined by IEEE 802.1.
+
+Status of This Memo
+
+ This is an Internet Standards Track document.
+
+ 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). Further information on
+ Internet Standards is available in 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/rfc8655.
+
+Copyright Notice
+
+ Copyright (c) 2019 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. Dictionary of Terms Used by TSN and DetNet
+ 3. Providing the DetNet Quality of Service
+ 3.1. Primary Goals Defining the DetNet QoS
+ 3.2. Mechanisms to Achieve DetNet QoS
+ 3.2.1. Resource Allocation
+ 3.2.2. Service Protection
+ 3.2.3. Explicit Routes
+ 3.3. Secondary Goals for DetNet
+ 3.3.1. Coexistence with Normal Traffic
+ 3.3.2. Fault Mitigation
+ 4. DetNet Architecture
+ 4.1. DetNet Stack Model
+ 4.1.1. Representative Protocol Stack Model
+ 4.1.2. DetNet Data-Plane Overview
+ 4.1.3. Network Reference Model
+ 4.2. DetNet Systems
+ 4.2.1. End System
+ 4.2.2. DetNet Edge, Relay, and Transit Nodes
+ 4.3. DetNet Flows
+ 4.3.1. DetNet Flow Types
+ 4.3.2. Source Transmission Behavior
+ 4.3.3. Incomplete Networks
+ 4.4. Traffic Engineering for DetNet
+ 4.4.1. The Application Plane
+ 4.4.2. The Controller Plane
+ 4.4.3. The Network Plane
+ 4.5. Queuing, Shaping, Scheduling, and Preemption
+ 4.6. Service Instance
+ 4.7. Flow Identification at Technology Borders
+ 4.7.1. Exporting Flow Identification
+ 4.7.2. Flow Attribute Mapping between Layers
+ 4.7.3. Flow-ID Mapping Examples
+ 4.8. Advertising Resources, Capabilities, and Adjacencies
+ 4.9. Scaling to Larger Networks
+ 4.10. Compatibility with Layer 2
+ 5. Security Considerations
+ 6. Privacy Considerations
+ 7. IANA Considerations
+ 8. Informative References
+ Acknowledgements
+ Authors' Addresses
+
+1. Introduction
+
+ This document provides the overall architecture for Deterministic
+ Networking (DetNet), which provides a capability for the delivery of
+ data flows with extremely low packet loss rates and bounded end-to-
+ end delivery latency. DetNet is for networks that are under a single
+ administrative control or within a closed group of administrative
+ control; these include campus-wide networks and private WANs. DetNet
+ is not for large groups of domains such as the Internet.
+
+ DetNet operates at the IP layer and delivers service over lower-layer
+ technologies such as MPLS and IEEE 802.1 Time-Sensitive Networking
+ (TSN). DetNet provides a reliable and available service by
+ dedicating network resources such as link bandwidth and buffer space
+ to DetNet flows and/or classes of DetNet flows, and by replicating
+ packets along multiple paths. Unused reserved resources are
+ available to non-DetNet packets as long as all guarantees are
+ fulfilled.
+
+ The "Deterministic Networking Problem Statement" [RFC8557] introduces
+ DetNet, and "Deterministic Networking Use Cases" [RFC8578] summarizes
+ the need for it. See [DETNET-FRAMEWORK] for specific techniques that
+ can be used to identify DetNet flows and assign them to specific
+ paths through a network.
+
+ A goal of DetNet is a converged network in all respects, including
+ the convergence of sensitive non-IP networks onto a common network
+ infrastructure. The presence of DetNet flows does not preclude non-
+ DetNet flows, and the benefits offered DetNet flows should not,
+ except in extreme cases, prevent existing Quality-of-Service (QoS)
+ mechanisms from operating in a normal fashion, subject to the
+ bandwidth required for the DetNet flows. A single source-destination
+ pair can trade both DetNet and non-DetNet flows. End systems and
+ applications need not instantiate special interfaces for DetNet
+ flows. Networks are not restricted to certain topologies;
+ connectivity is not restricted. Any application that generates a
+ data flow that can be usefully characterized as having a maximum
+ bandwidth should be able to take advantage of DetNet, as long as the
+ necessary resources can be reserved. Reservations can be made by the
+ application itself, via network management, centrally by an
+ application's controller, or by other means, for instance, by placing
+ on-demand reservation via a distributed Control Plane, e.g.,
+ leveraging the Resource Reservation Protocol (RSVP) [RFC2205]. QoS
+ requirements of DetNet flows can be met if all network nodes in a
+ DetNet domain implement DetNet capabilities. DetNet nodes can be
+ interconnected with different sub-network technologies
+ (Section 4.1.2) where the nodes of the subnet are not DetNet aware
+ (Section 4.1.3).
+
+ Many applications that are intended to be served by DetNet require
+ the ability to synchronize the clocks in end systems to a sub-
+ microsecond accuracy. Some of the queue-control techniques defined
+ in Section 4.5 also require time synchronization among network nodes.
+ The means used to achieve time synchronization are not addressed in
+ this document. DetNet can accommodate various time-synchronization
+ techniques and profiles that are defined elsewhere to address the
+ needs of different market segments.
+
+2. Terminology
+
+2.1. Terms Used in This Document
+
+ The following terms are used in the context of DetNet in this
+ document:
+
+ allocation
+ The dedication of resources to support a DetNet flow. Depending
+ on an implementation, the resource may be reused by non-DetNet
+ flows when it is not used by the DetNet flow.
+
+ App-flow
+ The payload (data) carried over a DetNet service.
+
+ DetNet compound flow and DetNet member flow
+ A DetNet compound flow is a DetNet flow that has been separated
+ into multiple duplicate DetNet member flows for service protection
+ at the DetNet service sub-layer. Member flows are merged back
+ into a single DetNet compound flow such that there are no
+ duplicate packets. "Compound" and "member" are strictly relative
+ to each other, not absolutes; a DetNet compound flow comprising
+ multiple DetNet member flows can, in turn, be a member of a
+ higher-order compound.
+
+ DetNet destination
+ An end system capable of terminating a DetNet flow.
+
+ DetNet domain
+ The portion of a network that is DetNet aware. It includes end
+ systems and DetNet nodes.
+
+ DetNet edge node
+ An instance of a DetNet relay node that acts as a source and/or
+ destination at the DetNet service sub-layer. For example, it can
+ include a DetNet service sub-layer proxy function for DetNet
+ service protection (e.g., the addition or removal of packet
+ sequencing information) for one or more end systems, it can start
+ or terminate resource allocation at the DetNet forwarding sub-
+ layer, or it can aggregate DetNet services into new DetNet flows.
+ It is analogous to a Label Edge Router (LER) or a Provider Edge
+ (PE) router.
+
+ DetNet flow
+ A sequence of packets that conforms uniquely to a flow identifier
+ and to which the DetNet service is to be provided. It includes
+ any DetNet headers added to support the DetNet service and
+ forwarding sub-layers.
+
+ DetNet forwarding sub-layer
+ DetNet functionality is divided into two sub-layers. One of them
+ is the DetNet forwarding sub-layer, which optionally provides
+ resource allocation for DetNet flows over paths provided by the
+ underlying network.
+
+ DetNet intermediate node
+ A DetNet relay node or DetNet transit node.
+
+ DetNet node
+ A DetNet edge node, a DetNet relay node, or a DetNet transit node.
+
+ DetNet relay node
+ A DetNet node that includes a service sub-layer function that
+ interconnects different DetNet forwarding sub-layer paths to
+ provide service protection. A DetNet relay node participates in
+ the DetNet service sub-layer. It typically incorporates DetNet
+ forwarding sub-layer functions as well, in which case it is
+ collocated with a transit node.
+
+ DetNet service sub-layer
+ DetNet functionality is divided into two sub-layers. One of them
+ is the DetNet service sub-layer, at which a DetNet service (e.g.,
+ service protection) is provided.
+
+ DetNet service proxy
+ A proxy that maps between App-flows and DetNet flows.
+
+ DetNet source
+ An end system capable of originating a DetNet flow.
+
+ DetNet system
+ A DetNet-aware end system, transit node, or relay node. "DetNet"
+ may be omitted in some text.
+
+ DetNet transit node
+ A DetNet node, operating at the DetNet forwarding sub-layer, that
+ utilizes link-layer and/or network-layer switching across multiple
+ links and/or sub-networks to provide paths for DetNet service sub-
+ layer functions. It typically provides resource allocation over
+ those paths. An MPLS Label Switch Router (LSR) is an example of a
+ DetNet transit node.
+
+ DetNet-UNI
+ A User-to-Network Interface (UNI) with DetNet-specific
+ functionalities. It is a packet-based reference point and may
+ provide multiple functions like encapsulation, status,
+ synchronization, etc.
+
+ end system
+ Commonly called a "host" in the RFC series and an "end station" in
+ IEEE 802 standards. End systems of interest to this document are
+ either sources or destinations of DetNet flows, and they may or
+ may not be aware of DetNet forwarding sub-layers or DetNet service
+ sub-layers.
+
+ link
+ A connection between two DetNet nodes. It may be composed of a
+ physical link or a sub-network technology that can provide
+ appropriate traffic delivery for DetNet flows.
+
+ Packet Elimination Function (PEF)
+ A function that eliminates duplicate copies of packets to prevent
+ excess packets flooding the network or duplicate packets being
+ sent out of the DetNet domain. A PEF can be implemented by a
+ DetNet edge node, a DetNet relay node, or an end system.
+
+ Packet Replication Function (PRF)
+ A function that replicates DetNet flow packets and forwards them
+ to one or more next hops in the DetNet domain. The number of
+ packet copies sent to the next hops is a parameter specific to the
+ DetNet flow at the point of replication. A PRF can be implemented
+ by a DetNet edge node, a DetNet relay node, or an end system.
+
+ PREOF
+ A collective name for Packet Replication, Elimination, and
+ Ordering Functions.
+
+ Packet Ordering Function (POF)
+ A function that reorders packets within a DetNet flow that are
+ received out of order. This function can be implemented by a
+ DetNet edge node, a DetNet relay node, or an end system.
+
+ reservation
+ The set of resources allocated between a source and one or more
+ destinations through DetNet nodes and subnets associated with a
+ DetNet flow in order to provide the provisioned DetNet service.
+
+2.2. Dictionary of Terms Used by TSN and DetNet
+
+ This section serves as a dictionary for translating the terms used by
+ the Time-Sensitive Networking (TSN) Task Group [IEEE802.1TSNTG] of
+ the IEEE 802.1 WG to those of the Deterministic Networking (detnet)
+ WG of the IETF.
+
+ Listener
+ The term used by IEEE 802.1 for a destination of a DetNet flow.
+
+ Relay system
+ The term used by IEEE 802.1 for a DetNet intermediate node.
+
+ Stream
+ The term used by IEEE 802.1 for a DetNet flow.
+
+ Talker
+ The term used by IEEE 802.1 for the source of a DetNet flow.
+
+3. Providing the DetNet Quality of Service
+
+3.1. Primary Goals Defining the DetNet QoS
+
+ The DetNet QoS can be expressed in terms of:
+
+ * Minimum and maximum end-to-end latency from source to destination,
+ timely delivery, and bounded jitter (packet delay variation)
+ derived from these constraints.
+
+ * Packet loss ratio under various assumptions as to the operational
+ states of the nodes and links.
+
+ * An upper bound on out-of-order packet delivery. It is worth
+ noting that some DetNet applications are unable to tolerate any
+ out-of-order delivery.
+
+ It is a distinction of DetNet that it is concerned solely with worst-
+ case values for the end-to-end latency, jitter, and misordering.
+ Average, mean, or typical values are of little interest, because they
+ do not affect the ability of a real-time system to perform its tasks.
+ In general, a trivial priority-based queuing scheme will give better
+ average latency to a data flow than DetNet; however, it may not be a
+ suitable option for DetNet because of its worst-case latency.
+
+ Three techniques are used by DetNet to provide these qualities of
+ service:
+
+ * Resource allocation (Section 3.2.1)
+
+ * Service protection (Section 3.2.2)
+
+ * Explicit routes (Section 3.2.3)
+
+ Resource allocation operates by assigning resources, e.g., buffer
+ space or link bandwidth, to a DetNet flow (or flow aggregate) along
+ its path. Resource allocation greatly reduces, or even eliminates
+ entirely, packet loss due to output packet contention within the
+ network, but it can only be supplied to a DetNet flow that is limited
+ at the source to a maximum packet size and transmission rate. As
+ DetNet flows are assumed to be rate limited and DetNet is designed to
+ provide sufficient allocated resources (including provisioned
+ capacity), the use of transport-layer congestion control [RFC2914]
+ for App-flows is not required; however, if resources are allocated
+ appropriately, use of congestion control should not impact
+ transmission negatively.
+
+ Resource allocation addresses two of the DetNet QoS requirements:
+ latency and packet loss. Given that DetNet nodes have a finite
+ amount of buffer space, resource allocation necessarily results in a
+ maximum end-to-end latency. Resource allocation also addresses
+ contention-related packet loss.
+
+ Other important contributions to packet loss are random media errors
+ and equipment failures. Service protection is the name for the
+ mechanisms used by DetNet to address these losses. The mechanisms
+ employed are constrained by the need to meet the users' latency
+ requirements. Packet replication and elimination (Section 3.2.2.2)
+ and packet encoding (Section 3.2.2.3) are described in this document
+ to provide service protection, but other mechanisms may also be
+ found. For instance, packet encoding can be used to provide service
+ protection against random media errors, while packet replication and
+ elimination can be used to provide service protection against
+ equipment failures. This mechanism distributes the contents of
+ DetNet flows over multiple paths in time and/or space, so that the
+ loss of some of the paths does need not cause the loss of any
+ packets.
+
+ The paths are typically (but not necessarily) explicit routes so that
+ they do not normally suffer temporary interruptions caused by the
+ convergence of routing or bridging protocols.
+
+ These three techniques can be applied individually or applied
+ together; it results that eight combinations, including none (no
+ DetNet), are possible. Some combinations, however, are of wider
+ utility than others. This separation keeps the protocol stack
+ coherent and maximizes interoperability with existing and developing
+ standards in the IETF and other Standards Development Organizations.
+ The following are examples of typical expected combinations:
+
+ * The combination of explicit routes and service protection is the
+ technique employed by seamless redundancy mechanisms applied on a
+ ring topology, e.g., as described in [IEC-62439-3]. In this
+ example, explicit routes are achieved by limiting the physical
+ topology of the network to a ring. Sequentialization,
+ replication, and duplicate elimination are facilitated by packet
+ tags added at the front or the end of Ethernet frames. [RFC8227]
+ provides another example in the context of MPLS.
+
+ * Resource allocation alone was originally offered by Audio Video
+ Bridging as defined by IEEE 802.1 [IEEE802.1BA]. As long as the
+ network suffers no failures, packet loss due to output packet
+ contention can be eliminated through the use of a reservation
+ protocol (e.g., the Multiple Stream Registration Protocol
+ [IEEE802.1Q]), shapers in every bridge, and proper dimensioning.
+
+ * Using all three together gives maximum protection.
+
+ There are, of course, simpler methods available (and employed today)
+ to achieve levels of latency and packet loss that are satisfactory
+ for many applications. Prioritization and over-provisioning is one
+ such technique. However, these methods generally work best in the
+ absence of any significant amount of noncritical traffic in the
+ network (if, indeed, such traffic is supported at all). They may
+ also work only if the critical traffic constitutes only a small
+ portion of the network's theoretical capacity, if all systems are
+ functioning properly, or if actions by end systems that disrupt the
+ network's operations are absent.
+
+ There are any number of methods in use, defined, or in progress for
+ accomplishing each of the above techniques. It is expected that the
+ DetNet architecture defined in this document will assist various
+ vendors, users, and/or "vertical" Standards Development Organizations
+ (dedicated to a single industry) in making selections among the
+ available means of implementing DetNet networks.
+
+3.2. Mechanisms to Achieve DetNet QoS
+
+3.2.1. Resource Allocation
+
+3.2.1.1. Eliminate Contention Loss
+
+ The primary means by which DetNet achieves its QoS assurances is to
+ reduce, or even completely eliminate, packet loss due to output
+ packet contention within a DetNet node as a cause of packet loss.
+ This can be achieved only by the provision of sufficient buffer
+ storage at each node through the network to ensure that no packets
+ are dropped due to a lack of buffer storage. Note that App-flows are
+ generally not expected to be responsive to implicit [RFC2914] or
+ explicit congestion notification [RFC3168].
+
+ Ensuring adequate buffering requires, in turn, that the source and
+ every DetNet node along the path to the destination (or nearly every
+ node; see Section 4.3.3) be careful to regulate its output to not
+ exceed the data rate for any DetNet flow, except for brief periods
+ when making up for interfering traffic. Any packet sent ahead of its
+ time potentially adds to the number of buffers required by the next-
+ hop DetNet node and may thus exceed the resources allocated for a
+ particular DetNet flow. Furthermore, rate limiting (e.g., using
+ traffic policing) and shaping functions (e.g., shaping as defined in
+ [RFC2475]) at the ingress of the DetNet domain must be applied. This
+ is needed for meeting the requirements of DetNet flows as well as for
+ protecting non-DetNet traffic from potentially misbehaving DetNet
+ traffic sources. Note that large buffers have some issues (see,
+ e.g., [BUFFERBLOAT]).
+
+ The low-level mechanisms described in Section 4.5 provide the
+ necessary regulation of transmissions by an end system or DetNet node
+ to provide resource allocation. The allocation of the bandwidth and
+ buffers for a DetNet flow requires provisioning. A DetNet node may
+ have other resources requiring allocation and/or scheduling that
+ might otherwise be over-subscribed and trigger the rejection of a
+ reservation.
+
+3.2.1.2. Jitter Reduction
+
+ A core objective of DetNet is to enable the convergence of sensitive
+ non-IP networks onto a common network infrastructure. This requires
+ the accurate emulation of currently deployed mission-specific
+ networks, which, for example, rely on point-to-point analog (e.g.,
+ 4-20mA modulation) and serial-digital cables (or buses) for highly
+ reliable, synchronized, and jitter-free communications. While the
+ latency of analog transmissions is basically the speed of light,
+ legacy serial links are usually slow (in the order of Kbps) compared
+ to, say, Gigabit Ethernet, and some latency is usually acceptable.
+ What is not acceptable is the introduction of excessive jitter, which
+ may, for instance, affect the stability of control systems.
+
+ Applications that are designed to operate on serial links usually do
+ not provide services to recover the jitter, because jitter simply
+ does not exist there. DetNet flows are generally expected to be
+ delivered in order, and the precise time of reception influences the
+ processes. In order to converge such existing applications, there is
+ a desire to emulate all properties of the serial cable, such as clock
+ transportation, perfect flow isolation, and fixed latency. While
+ minimal jitter (in the form of specifying minimum, as well as
+ maximum, end-to-end latency) is supported by DetNet, there are
+ practical limitations on packet-based networks in this regard. In
+ general, users are encouraged to use a combination of:
+
+ * Sub-microsecond time synchronization among all source and
+ destination end systems, and
+
+ * Time-of-execution fields in the application packets.
+
+ Jitter reduction is provided by the mechanisms described in
+ Section 4.5 that also provide resource allocation.
+
+3.2.2. Service Protection
+
+ Service protection aims to mitigate or eliminate packet loss due to
+ equipment failures, including random media and/or memory faults.
+ These types of packet loss can be greatly reduced by spreading the
+ data over multiple disjoint forwarding paths. Various service
+ protection methods are described in [RFC6372], e.g., 1+1 linear
+ protection. The functional details of an additional method are
+ described in Section 3.2.2.2, which can be implemented as described
+ in Section 3.2.2.3 or as specified in [DETNET-MPLS] in order to
+ provide 1+n hitless protection. The appropriate service protection
+ mechanism depends on the scenario and the requirements.
+
+3.2.2.1. In-Order Delivery
+
+ Out-of-order packet delivery can be a side effect of service
+ protection. Packets delivered out of order impact the amount of
+ buffering needed at the destination to properly process the received
+ data. Such packets also influence the jitter of a flow. The
+ guarantees of a DetNet service include a maximum amount of
+ misordering as a constraint. Zero misordering would be a valid
+ service constraint to reflect that the end system(s) of the flow
+ cannot tolerate any out-of-order delivery. A DetNet Packet Ordering
+ Function (POF) (Section 3.2.2.2) can be used to provide in-order
+ delivery.
+
+3.2.2.2. Packet Replication and Elimination
+
+ This section describes a service protection method that sends copies
+ of the same packets over multiple paths.
+
+ The DetNet service sub-layer includes the PRF, PEF, and POF for use
+ in DetNet edge, relay node, and end-system packet processing. These
+ functions can be enabled in a DetNet edge node, relay node, or end
+ system. The collective name for all three functions is Packet
+ Replication, Elimination, and Ordering Functions (PREOF). The packet
+ replication and elimination service protection method altogether
+ involves four capabilities:
+
+ * Sequencing information is provided to the packets of a DetNet
+ compound flow. This may be done by adding a sequence number or
+ time stamp as part of DetNet, or it may be inherent in the packet,
+ e.g., in a higher-layer protocol or associated to other physical
+ properties such as the precise time (and radio channel) of
+ reception of the packet. This is typically done once, at or near
+ the source.
+
+ * The PRF replicates these packets into multiple DetNet member flows
+ and typically sends them along multiple different paths to the
+ destination(s), e.g., over the explicit routes described in
+ Section 3.2.3. The location within a DetNet node and the
+ mechanism used for the PRF are left open for implementations.
+
+ * The PEF eliminates duplicate packets of a DetNet flow based on the
+ sequencing information and a history of received packets. The
+ output of the PEF is always a single packet. This may be done at
+ any DetNet node along the path to save network resources further
+ downstream, in particular if multiple replication points exist.
+ But the most common case is to perform this operation at the very
+ edge of the DetNet network, preferably in or near the receiver.
+ The location within a DetNet node and the mechanism used for the
+ PEF is left open for implementations.
+
+ * The POF uses the sequencing information to reorder a DetNet flow's
+ packets that are received out of order.
+
+ The order in which a DetNet node applies PEF, POF, and PRF to a
+ DetNet flow is left open for implementations.
+
+ Some service protection mechanisms rely on switching from one flow to
+ another when a failure of a flow is detected. Contrarily, packet
+ replication and elimination combines the DetNet member flows sent
+ along multiple different paths and performs a packet-by-packet
+ selection of which to discard, e.g., based on sequencing information.
+
+ In the simplest case, this amounts to 1) replicating each packet in a
+ source that has two interfaces and 2) conveying them through the
+ network along separate (Shared Risk Link Group (SRLG) disjoint) paths
+ to the similarly dual-homed destinations that 3) reorder the packets
+ and 4) discard the duplicates. This ensures that one path remains,
+ even if some DetNet intermediate node fails. The sequencing
+ information can also be used for loss detection and for reordering.
+
+ DetNet relay nodes in the network can provide replication and
+ elimination facilities at various points in the network so that
+ multiple failures can be accommodated.
+
+ This is shown in Figure 1, where the two relay nodes each replicate
+ (R) the DetNet flow on input, sending the DetNet member flows to both
+ the other relay node and to the end system, and eliminate duplicates
+ (E) on the output interface to the right-hand end system. Any one
+ link in the network can fail, and the DetNet compound flow can still
+ get through. Furthermore, two links can fail, as long as they are in
+ different segments of the network.
+
+ > > > > > > > > > relay > > > > > > > >
+ > /------------+ R node E +------------\ >
+ > / v + ^ \ >
+ end R + v | ^ + E end
+ system + v | ^ + system
+ > \ v + ^ / >
+ > \------------+ R relay E +-----------/ >
+ > > > > > > > > > node > > > > > > > >
+
+ Figure 1: Packet Replication and Elimination
+
+ Packet replication and elimination does not react to and correct
+ failures; it is entirely passive. Thus, intermittent failures,
+ mistakenly created packet filters, or misrouted data is handled just
+ the same as the equipment failures that are handled by typical
+ routing and bridging protocols.
+
+ If member flows that take different-length paths through the network
+ are combined, a merge point may require extra buffering to equalize
+ the delays over the different paths. This equalization ensures that
+ the resultant compound flow will not exceed its contracted bandwidth
+ even after one of the paths is restored after a failure. The extra
+ buffering can be also used to provide in-order delivery.
+
+3.2.2.3. Packet Encoding for Service Protection
+
+ There are methods for using multiple paths to provide service
+ protection that involve encoding the information in a packet
+ belonging to a DetNet flow into multiple transmission units,
+ combining information from multiple packets into any given
+ transmission unit. Such techniques, also known as "network coding",
+ can be used as a DetNet service protection technique.
+
+3.2.3. Explicit Routes
+
+ In networks controlled by typical dynamic control protocols such as
+ IS-IS or OSPF, a network topology event in one part of the network
+ can impact, at least briefly, the delivery of data in parts of the
+ network remote from the failure or recovery event. Even the use of
+ redundant paths through a network, e.g., as defined by [RFC6372],
+ does not eliminate the chances of packet loss. Furthermore, out-of-
+ order packet delivery can be a side effect of route changes.
+
+ Many real-time networks rely on physical rings of two-port devices,
+ with a relatively simple ring control protocol. This supports
+ redundant paths for service protection with a minimum of wiring. As
+ an additional benefit, ring topologies can often utilize different
+ topology management protocols from those used for a mesh network,
+ with a consequent reduction in the response time to topology changes.
+ Of course, this comes at some cost in terms of increased hop count,
+ and thus latency, for the typical path.
+
+ In order to get the advantages of low hop count and still ensure
+ against even very brief losses of connectivity, DetNet employs
+ explicit routes where the path taken by a given DetNet flow does not
+ change, at least not immediately and likely not at all, in response
+ to network topology events. Service protection (see Sections 3.2.2
+ and 3.2.2.3) over explicit routes provides a high likelihood of
+ continuous connectivity. Explicit routes can be established in
+ various ways, e.g., with RSVP-TE [RFC3209], with Segment Routing (SR)
+ [RFC8402], via a SDN approach [RFC8453], with IS-IS [RFC7813], etc.
+ Explicit routes are typically used in MPLS TE (Traffic Engineering)
+ Label Switched Paths (LSPs).
+
+ Out-of-order packet delivery can be a side effect of distributing a
+ single flow over multiple paths, especially when there is a change
+ from one path to another when combining the flow. This is
+ irrespective of the distribution method used and also applies to
+ service protection over explicit routes. As described in
+ Section 3.2.2.1, out-of-order packets influence the jitter of a flow
+ and impact the amount of buffering needed to process the data;
+ therefore, the guarantees of a DetNet service include a maximum
+ amount of misordering as a constraint. The use of explicit routes
+ helps to provide in-order delivery because there is no immediate
+ route change with the network topology, but the changes are plannable
+ as they are between the different explicit routes.
+
+3.3. Secondary Goals for DetNet
+
+ Many applications require DetNet to provide additional services,
+ including coexistence with other QoS mechanisms (Section 3.3.1) and
+ protection against misbehaving transmitters (Section 3.3.2).
+
+3.3.1. Coexistence with Normal Traffic
+
+ A DetNet network supports the dedication of a high proportion of the
+ network bandwidth to DetNet flows. But, no matter how much is
+ dedicated for DetNet flows, it is a goal of DetNet to coexist with
+ existing Class-of-Service schemes (e.g., DiffServ). It is also
+ important that non-DetNet traffic not disrupt the DetNet flow, of
+ course (see Sections 3.3.2 and 5). For these reasons:
+
+ * Bandwidth (transmission opportunities) not utilized by a DetNet
+ flow is available to non-DetNet packets (though not to other
+ DetNet flows).
+
+ * DetNet flows can be shaped or scheduled, in order to ensure that
+ the highest-priority non-DetNet packet is also ensured a worst-
+ case latency.
+
+ * When transmission opportunities for DetNet flows are scheduled in
+ detail, the algorithm constructing the schedule should leave
+ sufficient opportunities for non-DetNet packets to satisfy the
+ needs of the users of the network. Detailed scheduling can also
+ permit the time-shared use of buffer resources by different DetNet
+ flows.
+
+ Starvation of non-DetNet traffic must be avoided, for example, by
+ traffic policing and shaping functions (e.g., [RFC2475]). Thus, the
+ net effect of the presence of DetNet flows in a network on the non-
+ DetNet flows is primarily a reduction in the available bandwidth.
+
+3.3.2. Fault Mitigation
+
+ Robust real-time systems require reducing the number of possible
+ failures. Filters and policers should be used in a DetNet network to
+ detect if DetNet packets are received on the wrong interface, at the
+ wrong time, or in too great a volume. Furthermore, filters and
+ policers can take actions to discard the offending packets or flows,
+ or trigger shutting down the offending flow or the offending
+ interface.
+
+ It is also essential that filters and service remarking be employed
+ at the network edge to prevent non-DetNet packets from being mistaken
+ for DetNet packets and thus impinging on the resources allocated to
+ DetNet packets. In particular, sending DetNet traffic into networks
+ that have not been provisioned in advance to handle that DetNet
+ traffic has to be treated as a fault. The use of egress traffic
+ filters, or equivalent mechanisms, to prevent this from happening are
+ strongly recommended at the edges of DetNet networks and DetNet
+ supporting networks. In this context, the term 'provisioned' has a
+ broad meaning, e.g., provisioning could be performed via an
+ administrative decision that the downstream network has the available
+ capacity to carry the DetNet traffic that is being sent into it.
+
+ Note that the sending of App-flows that do not use transport-layer
+ congestion control per [RFC2914] into a network that is not
+ provisioned to handle such traffic has to be treated as a fault and
+ prevented. PRF-generated DetNet member flows also need to be treated
+ as not using transport-layer congestion control even if the original
+ App-flow supports transport-layer congestion control because PREOF
+ can remove congestion indications at the PEF and thereby hide such
+ indications (e.g., drops, ECN markings, increased latency) from end
+ systems.
+
+ The mechanisms to support these requirements are both Data Plane and
+ implementation specific. Solutions that are data-plane specific will
+ be specified in the relevant data-plane solution document. There
+ also exist techniques, at present and/or in various stages of
+ standardization, that can support these fault-mitigation tasks that
+ deliver a high probability that misbehaving systems will have zero
+ impact on well-behaved DetNet flows with the exception, of course, of
+ the receiving interface(s) immediately downstream from the
+ misbehaving device. Examples of such techniques include traffic
+ policing and shaping functions (e.g., those described in [RFC2475]),
+ separating flows into per-flow rate-limited queues, and potentially
+ applying active queue management [RFC7567].
+
+4. DetNet Architecture
+
+4.1. DetNet Stack Model
+
+ DetNet functionality (Section 3) is implemented in two adjacent sub-
+ layers in the protocol stack: the DetNet service sub-layer and the
+ DetNet forwarding sub-layer. The DetNet service sub-layer provides
+ DetNet service, e.g., service protection, to higher layers in the
+ protocol stack and applications. The DetNet forwarding sub-layer
+ supports DetNet service in the underlying network, e.g., by providing
+ explicit routes and resource allocation to DetNet flows.
+
+4.1.1. Representative Protocol Stack Model
+
+ Figure 2 illustrates a conceptual DetNet data-plane layering model.
+ One may compare it to that in [IEEE802.1CB], Annex C.
+
+ | packets going | ^ packets coming ^
+ v down the stack v | up the stack |
+ +-----------------------+ +-----------------------+
+ | Source | | Destination |
+ +-----------------------+ +-----------------------+
+ | Service sub-layer: | | Service sub-layer: |
+ | Packet sequencing | | Duplicate elimination |
+ | Flow replication | | Flow merging |
+ | Packet encoding | | Packet decoding |
+ +-----------------------+ +-----------------------+
+ | Forwarding sub-layer: | | Forwarding sub-layer: |
+ | Resource allocation | | Resource allocation |
+ | Explicit routes | | Explicit routes |
+ +-----------------------+ +-----------------------+
+ | Lower layers | | Lower layers |
+ +-----------------------+ +-----------------------+
+ v ^
+ \_________________________/
+
+ Figure 2: DetNet Data-Plane Protocol Stack
+
+ Not all sub-layers are required for any given application, or even
+ for any given network. The functionality shown in Figure 2 is:
+
+ Application
+ Shown as "source" and "destination" in the diagram.
+
+ Packet sequencing
+ As part of the DetNet service sub-layer, the packet sequencing
+ function supplies the sequence number for packet replication and
+ elimination for DetNet service protection (Section 3.2.2.2); thus,
+ its peer is duplicate elimination. This sub-layer is not needed
+ if a higher-layer protocol is expected to perform any packet
+ sequencing and duplicate elimination required by the DetNet flow
+ replication.
+
+ Duplicate elimination
+ As part of the DetNet service sub-layer, based on the sequence
+ number supplied by its peer (packet sequencing), duplicate
+ elimination discards any duplicate packets generated by DetNet
+ flow replication. It can operate on member flows, compound flows,
+ or both. The replication may also be inferred from other
+ information such as the precise time of reception in a scheduled
+ network. The duplicate elimination sub-layer may also perform
+ resequencing of packets to restore packet order in a flow that was
+ disrupted by the loss of packets on one or another of the multiple
+ paths taken.
+
+ Flow replication
+ As part of DetNet service protection, packets that belong to a
+ DetNet compound flow are replicated into two or more DetNet member
+ flows. This function is separate from packet sequencing. Flow
+ replication can be an explicit replication and remarking of
+ packets or can be performed by, for example, techniques similar to
+ ordinary multicast replication, albeit with resource allocation
+ implications. Its peer is DetNet flow merging.
+
+ Flow merging
+ As part of the DetNet service sub-layer, the flow merging function
+ combines DetNet member flows together for packets coming up the
+ stack belonging to a specific DetNet compound flow. DetNet flow
+ merging, together with packet sequencing, duplicate elimination,
+ and DetNet flow replication perform packet replication and
+ elimination (Section 3.2.2). Its peer is DetNet flow replication.
+
+ Packet encoding
+ As part of DetNet service protection, as an alternative to packet
+ sequencing and flow replication, packet encoding combines the
+ information in multiple DetNet packets, perhaps from different
+ DetNet compound flows, and transmits that information in packets
+ on different DetNet member flows. Its peer is packet decoding.
+
+ Packet decoding
+ As part of DetNet service protection, as an alternative to flow
+ merging and duplicate elimination, packet decoding takes packets
+ from different DetNet member flows and computes from those packets
+ the original DetNet packets from the compound flows input to
+ packet encoding. Its peer is packet encoding.
+
+ Resource allocation
+ The DetNet forwarding sub-layer provides resource allocation. See
+ Section 4.5. The actual queuing and shaping mechanisms are
+ typically provided by the underlying subnet. These can be closely
+ associated with the means of providing paths for DetNet flows.
+ The path and the resource allocation are conflated in this figure.
+
+ Explicit routes
+ Explicit routes are arrangements of fixed paths operated at the
+ DetNet forwarding sub-layer that are determined in advance to
+ avoid the impact of network convergence on DetNet flows.
+
+ Operations, Administration, and Maintenance (OAM) leverages in-band
+ and out-of-band signaling that validates whether the service is
+ effectively obtained within QoS constraints. OAM is not shown in
+ Figure 2; it may reside in any number of the layers. OAM can involve
+ specific tagging added in the packets for tracing implementation or
+ network configuration errors; traceability enables finding whether a
+ packet is a replica, which DetNet relay node performed the
+ replication, and which segment was intended for the replica. Active
+ and hybrid OAM methods require additional bandwidth to perform fault
+ management and performance monitoring of the DetNet domain. OAM may,
+ for instance, generate special test probes or add OAM information
+ into the data packet.
+
+ The packet replication and elimination functions may be performed
+ either at the source and destination ends of a DetNet compound flow
+ or in a DetNet relay node.
+
+4.1.2. DetNet Data-Plane Overview
+
+ A "Deterministic Network" will be composed of DetNet-enabled end
+ systems, DetNet edge nodes, and DetNet relay nodes, which
+ collectively deliver DetNet services. DetNet relay and edge nodes
+ are interconnected via DetNet transit nodes (e.g., LSRs), which
+ support DetNet but are not DetNet service aware. All DetNet nodes
+ are connected to sub-networks, where a point-to-point link is also
+ considered a simple sub-network. These sub-networks provide DetNet-
+ compatible service for support of DetNet traffic. Examples of sub-
+ network technologies include MPLS TE, TSN as defined by IEEE 802.1,
+ and OTN (Optical Transport Network). Of course, multilayer DetNet
+ systems may also be possible, where one DetNet appears as a sub-
+ network and provides service to a higher-layer DetNet system. A
+ simple DetNet concept network is shown in Figure 3. Note that in
+ this and following figures, "Forwarding" and "Fwd" refer to the
+ DetNet forwarding sub-layer, and "Service" and "Svc" refer to the
+ DetNet service sub-layer; both of these sub-layers are described in
+ detail in Section 4.1.1.
+
+ TSN Edge Transit Relay DetNet
+ End System Node Node Node End System
+
+ +----------+ +.........+ +----------+
+ | Appl. |<--:Svc Proxy:-- End-to-End Service -------->| Appl. |
+ +----------+ +---------+ +---------+ +----------+
+ | TSN | |TSN| |Svc|<- DetNet flow --: Service :-->| Service |
+ +----------+ +---+ +---+ +--------+ +---------+ +----------+
+ |Forwarding| |Fwd| |Fwd| | Fwd | |Fwd| |Fwd| |Forwarding|
+ +-------.--+ +-.-+ +-.-+ +--.----.+ +-.-+ +-.-+ +---.------+
+ : Link : / ,-----. \ : Link : / ,-----. \
+ +........+ +-[ Sub- ]-+ +.......+ +-[ Sub- ]-+
+ [network] [network]
+ `-----' `-----'
+
+ Figure 3: A Simple DetNet-Enabled Network
+
+ DetNet Data Plane is divided into two sub-layers: the DetNet service
+ sub-layer and the DetNet forwarding sub-layer. This helps to explore
+ and evaluate various combinations of the data-plane solutions
+ available. Some of them are illustrated in Figure 4. This
+ separation of DetNet sub-layers, while helpful, should not be
+ considered a formal requirement. For example, some technologies may
+ violate these strict sub-layers and still be able to deliver a DetNet
+ service.
+
+ .
+ .
+ +-----------------------------+
+ | DetNet Service sub-layer | PW, UDP, GRE
+ +-----------------------------+
+ | DetNet Forwarding sub-layer | IPv6, IPv4, MPLS TE LSPs, MPLS SR
+ +-----------------------------+
+ .
+ .
+
+ Figure 4: DetNet Adaptation to Data Plane
+
+ In some networking scenarios, the end system initially provides a
+ DetNet flow encapsulation, which contains all information needed by
+ DetNet nodes (e.g., DetNet flow based on the Real-time Transport
+ Protocol (RTP) [RFC3550] that is carried over a native UDP/IP network
+ or pseudowire (PW)). In other scenarios, the encapsulation formats
+ might differ significantly.
+
+ There are many valid options to create a data-plane solution for
+ DetNet traffic by selecting a technology approach for the DetNet
+ service sub-layer and also selecting a technology approach for the
+ DetNet forwarding sub-layer. There are a large number of valid
+ combinations.
+
+ One of the most fundamental differences between different potential
+ data-plane options is the basic headers used by DetNet nodes. For
+ example, the basic service can be delivered based on an MPLS label or
+ an IP header. This decision impacts the basic forwarding logic for
+ the DetNet service sub-layer. Note that in both cases, IP addresses
+ are used to address DetNet nodes. The selected DetNet forwarding
+ sub-layer technology also needs to be mapped to the subnet technology
+ used to interconnect DetNet nodes. For example, DetNet flows will
+ need to be mapped to TSN Streams.
+
+4.1.3. Network Reference Model
+
+ Figure 5 shows another view of the DetNet service-related reference
+ points and main components.
+
+ DetNet DetNet
+ End System End System
+ _ _
+ / \ +----DetNet-UNI (U) / \
+ /App\ | /App\
+ /-----\ | /-----\
+ | NIC | v ________ | NIC |
+ +--+--+ _____ / \ DetNet-UNI (U) --+ +--+--+
+ | / \__/ \ | |
+ | / +----+ +----+ \_____ | |
+ | / | | | | \_______ | |
+ +------U PE +----+ P +----+ \ _ v |
+ | | | | | | | ___/ \ |
+ | +--+-+ +----+ | +----+ | / \_ |
+ \ | | | | | / \ |
+ \ | +----+ +--+-+ +--+PE |------ U-----+
+ \ | | | | | | | | | \_ _/
+ \ +---+ P +----+ P +--+ +----+ | \____/
+ \___ | | | | /
+ \ +----+__ +----+ DetNet-1 DetNet-2
+ | \_____/ \___________/ |
+ | |
+ | | End-to-End Service | | | |
+ <------------------------------------------------------------->
+ | | DetNet Service | | | |
+ | <------------------------------------------------> |
+ | | | | | |
+
+ Figure 5: DetNet Service Reference Model (Multidomain)
+
+ DetNet User-to-Network Interfaces (DetNet-UNIs) ("U" in Figure 5) are
+ assumed in this document to be packet-based reference points and
+ provide connectivity over the packet network. A DetNet-UNI may
+ provide multiple functions. For example, it may:
+
+ * add encapsulation specific to networking technology to the DetNet
+ flows if necessary,
+
+ * provide status of the availability of the resources associated
+ with a reservation,
+
+ * provide a synchronization service for the end system, or
+
+ * carry enough signaling to place the reservation in a network
+ without a controller or in a network where the controller only
+ deals with the network but not the end systems.
+
+ Internal reference points of end systems (between the application and
+ the Network Interface Card (NIC)) are more challenging from the
+ control perspective, and they may have extra requirements (e.g., in-
+ order delivery is expected in end system internal reference points,
+ whereas it is considered optional over the DetNet-UNI).
+
+4.2. DetNet Systems
+
+4.2.1. End System
+
+ The traffic characteristics of an App-flow can be CBR (constant bit
+ rate) or VBR (variable bit rate) and can have Layer 1, Layer 2, or
+ Layer 3 encapsulation (e.g., TDM (time-division multiplexing)
+ Ethernet, IP). These characteristics are considered as input for
+ resource reservation and might be simplified to ensure determinism
+ during packet forwarding (e.g., making reservations for the peak rate
+ of VBR traffic, etc.).
+
+ An end system may or may not be aware of the DetNet forwarding sub-
+ layer or DetNet service sub-layer. That is, an end system may or may
+ not contain DetNet-specific functionality. End systems with DetNet
+ functionalities may have the same or different forwarding sub-layer
+ as the connected DetNet domain. Categorization of end systems are
+ shown in Figure 6.
+
+ End system
+ |
+ |
+ | DetNet aware ?
+ / \
+ +------< >------+
+ NO | \ / | YES
+ | v |
+ DetNet-unaware |
+ End system |
+ | Service/Forwarding
+ | sub-layer
+ / \ aware ?
+ +--------< >-------------+
+ f-aware | \ / | s-aware
+ | v |
+ | | both |
+ | | |
+ DetNet f-aware | DetNet s-aware
+ End system | End system
+ v
+ DetNet sf-aware
+ End system
+
+ Figure 6: Categorization of End Systems
+
+ The following are some known use case examples for end systems:
+
+ DetNet unaware
+ The classic case requiring service proxies.
+
+ DetNet f-aware
+ A system that is aware of the DetNet forwarding sub-layer. It
+ knows about some TSN functions (e.g., reservation) but not about
+ service protection.
+
+ DetNet s-aware
+ A system that is aware of the DetNet service sub-layer. It
+ supplies sequence numbers but doesn't know about resource
+ allocation.
+
+ DetNet sf-aware
+ A fully functioning DetNet end system. It has DetNet
+ functionalities and usually the same forwarding paradigm as the
+ connected DetNet domain. It can be treated as an integral part of
+ the DetNet domain.
+
+4.2.2. DetNet Edge, Relay, and Transit Nodes
+
+ As shown in Figure 3, DetNet edge nodes providing proxy service and
+ DetNet relay nodes providing the DetNet service sub-layer are DetNet
+ aware, and DetNet transit nodes need only be aware of the DetNet
+ forwarding sub-layer.
+
+ In general, if a DetNet flow passes through one or more DetNet-
+ unaware network nodes between two DetNet nodes providing the DetNet
+ forwarding sub-layer for that flow, there is a potential for
+ disruption or failure of the DetNet QoS. A network administrator
+ needs to 1) ensure that the DetNet-unaware network nodes are
+ configured to minimize the chances of packet loss and delay and 2)
+ provision enough extra buffer space in the DetNet transit node
+ following the DetNet-unaware network nodes to absorb the induced
+ latency variations.
+
+4.3. DetNet Flows
+
+4.3.1. DetNet Flow Types
+
+ A DetNet flow can have different formats while its packets are
+ forwarded between the peer end systems depending on the type of the
+ end systems. Corresponding to the end system types, the following
+ possible types/formats of a DetNet flow are distinguished in this
+ document. The different flow types have different requirements to
+ DetNet nodes.
+
+ App-flow
+ The payload (data) carried over a DetNet flow between DetNet-
+ unaware end systems. An App-flow does not contain any DetNet-
+ related attributes and does not imply any specific requirement on
+ DetNet nodes.
+
+ DetNet-f-flow
+ The specific format of a DetNet flow. It only requires the
+ resource allocation features provided by the DetNet forwarding
+ sub-layer.
+
+ DetNet-s-flow
+ The specific format of a DetNet flow. It only requires the
+ service protection feature ensured by the DetNet service sub-
+ layer.
+
+ DetNet-sf-flow
+ The specific format of a DetNet flow. It requires both the DetNet
+ service sub-layer and the DetNet forwarding sub-layer functions
+ during forwarding.
+
+4.3.2. Source Transmission Behavior
+
+ For the purposes of resource allocation, DetNet flows can be
+ synchronous or asynchronous. In synchronous DetNet flows, at least
+ the DetNet nodes (and possibly the end systems) are closely time
+ synchronized, typically to better than 1 microsecond. By
+ transmitting packets from different DetNet flows or classes of DetNet
+ flows at different times, using repeating schedules synchronized
+ among the DetNet nodes, resources such as buffers and link bandwidth
+ can be shared over the time domain among different DetNet flows.
+ There is a trade-off among techniques for synchronous DetNet flows
+ between the burden of fine-grained scheduling and the benefit of
+ reducing the required resources, especially buffer space.
+
+ In contrast, asynchronous DetNet flows are not coordinated with a
+ fine-grained schedule, so relay and end systems must assume worst-
+ case interference among DetNet flows contending for buffer resources.
+ Asynchronous DetNet flows are characterized by:
+
+ * A maximum packet size;
+
+ * An observation interval; and
+
+ * A maximum number of transmissions during that observation
+ interval.
+
+ These parameters, together with knowledge of the protocol stack used
+ (and thus the size of the various headers added to a packet), provide
+ the bandwidth that is needed for the DetNet flow.
+
+ The source is required not to exceed these limits in order to obtain
+ DetNet service. If the source transmits less data than this limit
+ allows, then the unused resource, such as link bandwidth, can be made
+ available by the DetNet system to non-DetNet packets as long as all
+ guarantees are fulfilled. However, making those resources available
+ to DetNet packets in other DetNet flows would serve no purpose.
+ Those other DetNet flows have their own dedicated resources, on the
+ assumption that all DetNet flows can use all of their resources over
+ a long period of time.
+
+ There is no expectation in DetNet for App-flows to be responsive to
+ congestion control [RFC2914] or explicit congestion notification
+ [RFC3168]. The assumption is that a DetNet flow, to be useful, must
+ be delivered in its entirety. That is, while any useful application
+ is written to expect a certain number of lost packets, the real-time
+ applications of interest to DetNet demand that the loss of data due
+ to the network is a rare event.
+
+ Although DetNet strives to minimize the changes required of an
+ application to allow it to shift from a special-purpose digital
+ network to an Internet Protocol network, one fundamental shift in the
+ behavior of network applications is impossible to avoid: the
+ reservation of resources before the application starts. In the first
+ place, a network cannot deliver finite latency and practically zero
+ packet loss to an arbitrarily high offered load. Secondly, achieving
+ practically zero packet loss for DetNet flows means that DetNet nodes
+ have to dedicate buffer resources to specific DetNet flows or to
+ classes of DetNet flows. The requirements of each reservation have
+ to be translated into the parameters that control each DetNet
+ system's queuing, shaping, and scheduling functions, and they have to
+ be delivered to the DetNet nodes and end systems.
+
+ All nodes in a DetNet domain are expected to support the data
+ behavior required to deliver a particular DetNet service. If a node
+ itself is not DetNet service aware, the DetNet nodes that are
+ adjacent to them must ensure that the node that is non-DetNet aware
+ is provisioned to appropriately support the DetNet service. For
+ example, a TSN node (as defined by IEEE 802.1) may be used to
+ interconnect DetNet-aware nodes, and these DetNet nodes can map
+ DetNet flows to 802.1 TSN flows. As another example, an MPLS-TE or
+ MPLS-TP (Transport Profile) domain may be used to interconnect
+ DetNet-aware nodes, and these DetNet nodes can map DetNet flows to TE
+ LSPs, which can provide the QoS requirements of the DetNet service.
+
+4.3.3. Incomplete Networks
+
+ The presence in the network of intermediate nodes or subnets that are
+ not fully capable of offering DetNet services complicates the ability
+ of the intermediate nodes and/or controller to allocate resources, as
+ extra buffering must be allocated at points downstream from the non-
+ DetNet intermediate node for a DetNet flow. This extra buffering may
+ increase latency and/or jitter.
+
+4.4. Traffic Engineering for DetNet
+
+ Traffic Engineering Architecture and Signaling (TEAS) [TEAS] defines
+ traffic-engineering architectures for generic applicability across
+ packet and nonpacket networks. From a TEAS perspective, Traffic
+ Engineering (TE) refers to techniques that enable operators to
+ control how specific traffic flows are treated within their networks.
+
+ Because of its very nature of establishing explicit optimized paths,
+ DetNet can be seen as a new, specialized branch of TE, and it
+ inherits its architecture with a separation into planes.
+
+ The DetNet architecture is thus composed of three planes: a (User)
+ Application Plane, a Controller Plane, and a Network Plane. This
+ echoes the composition of Figure 1 of "Software-Defined Networking
+ (SDN): Layers and Architecture Terminology" [RFC7426] and the
+ controllers identified in [RFC8453] and [RFC7149].
+
+4.4.1. The Application Plane
+
+ Per [RFC7426], the Application Plane includes both applications and
+ services. In particular, the Application Plane incorporates the User
+ Agent, a specialized application that interacts with the end user and
+ operator and performs requests for DetNet services via an abstract
+ Flow Management Entity (FME), which may or may not be collocated with
+ (one of) the end systems.
+
+ At the Application Plane, a management interface enables the
+ negotiation of flows between end systems. An abstraction of the flow
+ called a Traffic Specification (TSpec) provides the representation.
+ This abstraction is used to place a reservation over the (Northbound)
+ Service Interface and within the Application Plane. It is associated
+ with an abstraction of location, such as IP addresses and DNS names,
+ to identify the end systems and possibly specify DetNet nodes.
+
+4.4.2. The Controller Plane
+
+ The Controller Plane corresponds to the aggregation of the Control
+ and Management Planes in [RFC7426], though Common Control and
+ Measurement Plane (CCAMP) (as defined by the CCAMP Working Group
+ [CCAMP]) makes an additional distinction between management and
+ measurement. When the logical separation of the Control,
+ Measurement, and other Management entities is not relevant, the term
+ "Controller Plane" is used for simplicity to represent them all, and
+ the term "Controller Plane Function (CPF)" refers to any device
+ operating in that plane, whether it is a Path Computation Element
+ (PCE) [RFC4655], a Network Management Entity (NME), or a distributed
+ control protocol. The CPF is a core element of a controller, in
+ charge of computing deterministic paths to be applied in the Network
+ Plane.
+
+ A (Northbound) Service Interface enables applications in the
+ Application Plane to communicate with the entities in the Controller
+ Plane as illustrated in Figure 7.
+
+ One or more CPFs collaborate to implement the requests from the FME
+ as per-flow, per-hop behaviors installed in the DetNet nodes for each
+ individual flow. The CPFs place each flow along a deterministic
+ arrangement of DetNet nodes so as to respect per-flow constraints
+ such as security and latency, and to optimize the overall result for
+ metrics such as an abstract aggregated cost. The deterministic
+ arrangement can typically be more complex than a direct arrangement
+ and include redundant paths with one or more packet replication and
+ elimination points. Scaling to larger networks is discussed in
+ Section 4.9.
+
+4.4.3. The Network Plane
+
+ The Network Plane represents the network devices and protocols as a
+ whole, regardless of the layer at which the network devices operate.
+ It includes the Data Plane and Operational Plane (e.g., OAM) aspects.
+
+ The Network Plane comprises the Network Interface Cards (NICs) in the
+ end systems, which are typically IP hosts, and DetNet nodes, which
+ are typically IP routers and MPLS switches.
+
+ A Southbound (Network) Interface enables the entities in the
+ Controller Plane to communicate with devices in the Network Plane as
+ illustrated in Figure 7. This interface leverages and extends TEAS
+ to describe the physical topology and resources in the Network Plane.
+
+ End End
+ System System
+
+ -+-+-+-+-+-+-+ Northbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
+
+ CPF CPF CPF CPF
+
+ -+-+-+-+-+-+-+ Southbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
+
+ DetNet DetNet DetNet DetNet
+ Node Node Node Node
+ NIC NIC
+ DetNet DetNet DetNet DetNet
+ Node Node Node Node
+
+ Figure 7: Northbound and Southbound Interfaces
+
+ The DetNet nodes (and possibly the end systems' NICs) expose their
+ capabilities and physical resources to the controller (the CPF) and
+ update the CPFs with their dynamic perception of the topology across
+ the Southbound Interface. In return, the CPFs set the per-flow paths
+ up, providing a Flow Characterization that is more tightly coupled to
+ the DetNet node operation than a TSpec.
+
+ At the Network Plane, DetNet nodes may exchange information regarding
+ the state of the paths, between adjacent DetNet nodes and possibly
+ with the end systems, and forward packets within constraints
+ associated to each flow, or, when unable to do so, perform a last-
+ resort operation such as drop or declassify.
+
+ This document focuses on the Southbound interface and the operation
+ of the Network Plane.
+
+4.5. Queuing, Shaping, Scheduling, and Preemption
+
+ DetNet achieves bounded delivery latency by reserving bandwidth and
+ buffer resources at each DetNet node along the path of the DetNet
+ flow. The reservation itself is not sufficient, however.
+ Implementors and users of a number of proprietary and standard real-
+ time networks have found that standards for specific data-plane
+ techniques are required to enable these assurances to be made in a
+ multivendor network. The fundamental reason is that latency
+ variation in one DetNet system results in the need for extra buffer
+ space in the next-hop DetNet system(s), which in turn increases the
+ worst-case per-hop latency.
+
+ Standard queuing and transmission-selection algorithms allow TE
+ (Section 4.4) to compute the latency contribution of each DetNet node
+ to the end-to-end latency, to compute the amount of buffer space
+ required in each DetNet node for each incremental DetNet flow, and
+ most importantly, to translate from a flow specification to a set of
+ values for the managed objects that control each relay or end system.
+ For example, the IEEE 802.1 WG has specified (and is specifying) a
+ set of queuing, shaping, and scheduling algorithms that enable each
+ DetNet node, and/or a central controller, to compute these values.
+ These algorithms include:
+
+ * A credit-based shaper [IEEE802.1Qav] (incorporated to
+ [IEEE802.1Q]).
+
+ * Time-gated queues governed by a rotating time schedule based on
+ synchronized time [IEEE802.1Qbv] (incorporated to [IEEE802.1Q]).
+
+ * Synchronized double (or triple) buffers driven by synchronized
+ time ticks. [IEEE802.1Qch] (incorporated to [IEEE802.1Q]).
+
+ * Preemption of an Ethernet packet in transmission by a packet with
+ a more stringent latency requirement, followed by the resumption
+ of the preempted packet [IEEE802.1Qbu] (incorporated to
+ [IEEE802.1Q]) [IEEE802.3br] (incorporated to [IEEE802.3]).
+
+ While these techniques are currently embedded in Ethernet [IEEE802.3]
+ and bridging standards, we can note that they are all, except perhaps
+ for packet preemption, equally applicable to media other than
+ Ethernet and to routers as well as bridges. Other media may have
+ their own methods (see, e.g., [TSCH-ARCH] and [RFC7554]). Further
+ techniques are defined by the IETF (e.g., [RFC8289] and [RFC8033]).
+ DetNet may include such definitions in the future or may define how
+ these techniques can be used by DetNet nodes.
+
+4.6. Service Instance
+
+ A service instance represents all the functions required on a DetNet
+ node to allow the end-to-end service between the UNIs.
+
+ The DetNet network general reference model is shown in Figure 8 for a
+ DetNet service scenario (i.e., between two DetNet-UNIs). In this
+ figure, end systems ("A" and "B") are connected directly to the edge
+ nodes of an IP/MPLS network ("PE1" and "PE2"). End systems
+ participating in DetNet communication may require connectivity before
+ setting up an App-flow that requires the DetNet service. Such a
+ connectivity-related service instance and the one dedicated for
+ DetNet service share the same access. Packets belonging to a DetNet
+ flow are selected by a filter configured on the access ("F1" and
+ "F2"). As a result, data-flow-specific access ("access-A + F1" and
+ "access-B + F2") is terminated in the flow-specific service instance
+ ("SI-1" and "SI-2"). A tunnel is used to provide connectivity
+ between the service instances.
+
+ The tunnel is exclusively used for the packets of the DetNet flow
+ between "SI-1" and "SI-2". The service instances are configured to
+ implement DetNet functions and a flow-specific DetNet forwarding.
+ The service instance and the tunnel may or may not be shared by
+ multiple DetNet flows. Sharing the service instance by multiple
+ DetNet flows requires properly populated forwarding tables of the
+ service instance.
+
+ access-A access-B
+ <-----> <-------- tunnel ----------> <----->
+
+ +---------+ ___ _ +---------+
+ End system | +----+ | / \/ \_ | +----+ | End system
+ "A" -------F1+ | | / \ | | +F2----- "B"
+ | | +========+ IP/MPLS +=======+ | |
+ | |SI-1| | \__ Net._/ | |SI-2| |
+ | +----+ | \____/ | +----+ |
+ |PE1 | | PE2|
+ +---------+ +---------+
+
+ Figure 8: DetNet Network General Reference Model
+
+ The tunnel between the service instances may have some special
+ characteristics. For example, in case of a DetNet L3 service, there
+ are differences in the usage of the PW for DetNet traffic compared to
+ the network model described in [RFC6658]. In the DetNet scenario,
+ the PW is likely to be used exclusively by the DetNet flow, whereas
+ [RFC6658] states:
+
+ | The packet PW appears as a single point-to-point link to the
+ | client layer. Network-layer adjacency formation and maintenance
+ | between the client equipments will follow the normal practice
+ | needed to support the required relationship in the client layer.
+
+ and
+
+ | This packet pseudowire is used to transport all of the required
+ | layer 2 and layer 3 protocols between LSR1 and LSR2.
+
+ Further details are network technology specific and can be found in
+ [DETNET-FRAMEWORK].
+
+4.7. Flow Identification at Technology Borders
+
+ This section discusses what needs to be done at technology borders
+ including Ethernet as one of the technologies. Flow identification
+ for MPLS and IP Data Planes are described in [DETNET-MPLS] and
+ [DETNET-IP], respectively.
+
+4.7.1. Exporting Flow Identification
+
+ A DetNet node may need to map specific flows to lower-layer flows (or
+ Streams) in order to provide specific queuing and shaping services
+ for specific flows. For example:
+
+ * A non-IP, strictly L2 source end system X may be sending multiple
+ flows to the same L2 destination end system Y. Those flows may
+ include DetNet flows with different QoS requirements and may
+ include non-DetNet flows.
+
+ * A router may be sending any number of flows to another router.
+ Again, those flows may include DetNet flows with different QoS
+ requirements and may include non-DetNet flows.
+
+ * Two routers may be separated by bridges. For these bridges to
+ perform any required per-flow queuing and shaping, they must be
+ able to identify the individual flows.
+
+ * A Label Edge Router (LER) may have a Label Switched Path (LSP) set
+ up for handling traffic destined for a particular IP address
+ carrying only non-DetNet flows. If a DetNet flow to that same
+ address is requested, a separate LSP may be needed in order for
+ all of the Label Switch Routers (LSRs) along the path to the
+ destination to give that flow special queuing and shaping.
+
+ The need for a lower-layer node to be aware of individual higher-
+ layer flows is not unique to DetNet. But, given the endless
+ complexity of layering and relayering over tunnels that is available
+ to network designers, DetNet needs to provide a model for flow
+ identification that is better than packet inspection. That is not to
+ say that packet inspection to Layer 4 or Layer 5 addresses will not
+ be used or the capability standardized; however, there are
+ alternatives.
+
+ A DetNet relay node can connect DetNet flows on different paths using
+ different flow identification methods. For example:
+
+ * A single unicast DetNet flow passing from router A through a
+ bridged network to router B may be assigned a TSN Stream
+ identifier that is unique within that bridged network. The
+ bridges can then identify the flow without accessing higher-layer
+ headers. Of course, the receiving router must recognize and
+ accept that TSN Stream.
+
+ * A DetNet flow passing from LSR A to LSR B may be assigned a
+ different label than that used for other flows to the same IP
+ destination.
+
+ In any of the above cases, it is possible that an existing DetNet
+ flow can be an aggregate carrying multiple other DetNet flows (not to
+ be confused with DetNet compound vs. member flows). Of course, this
+ requires that the aggregate DetNet flow be provisioned properly to
+ carry the aggregated flows.
+
+ Thus, rather than packet inspection, there is the option to export
+ higher-layer information to the lower layer. The requirement to
+ support one or the other method for flow identification (or both) is
+ a complexity that is part of DetNet control models.
+
+4.7.2. Flow Attribute Mapping between Layers
+
+ Forwarding of packets of DetNet flows over multiple technology
+ domains may require that lower layers are aware of specific flows of
+ higher layers. Such an "exporting of flow identification" is needed
+ each time when the forwarding paradigm is changed on the forwarding
+ path (e.g., two LSRs are interconnected by an L2 bridged domain,
+ etc.). The three representative forwarding methods considered for
+ DetNet are:
+
+ * IP routing
+
+ * MPLS label switching
+
+ * Ethernet bridging
+
+ A packet with corresponding Flow-IDs is illustrated in Figure 9,
+ which also indicates where each Flow-ID can be added or removed.
+
+ add/remove add/remove
+ Eth Flow-ID IP Flow-ID
+ | |
+ v v
+ +-----------------------------------------------------------+
+ | | | | |
+ | Eth | MPLS | IP | Application data |
+ | | | | |
+ +-----------------------------------------------------------+
+ ^
+ |
+ add/remove
+ MPLS Flow-ID
+
+ Figure 9: Packet with Multiple Flow-IDs
+
+ The additional (domain-specific) Flow-ID can be:
+
+ * created by a domain-specific function or
+
+ * derived from the Flow-ID added to the App-flow.
+
+ The Flow-ID must be unique inside a given domain. Note that the
+ Flow-ID added to the App-flow is still present in the packet, but
+ some nodes may lack the function to recognize it; that's why the
+ additional Flow-ID is added.
+
+4.7.3. Flow-ID Mapping Examples
+
+ IP nodes and MPLS nodes are assumed to be configured to push such an
+ additional (domain-specific) Flow-ID when sending traffic to an
+ Ethernet switch (as shown in the examples below).
+
+ Figure 10 shows a scenario where an IP end system ("IP-A") is
+ connected via two Ethernet switches ("ETH-n") to an IP router ("IP-
+ 1").
+
+ IP domain
+ <-----------------------------------------------
+
+ +======+ +======+
+ |L3-ID | |L3-ID |
+ +======+ /\ +-----+ +======+
+ / \ Forward as | |
+ /IP-A\ per ETH-ID |IP-1 | Recognize
+ Push ------> +-+----+ | +---+-+ <----- ETH-ID
+ ETH-ID | +----+-----+ |
+ | v v |
+ | +-----+ +-----+ |
+ +------+ | | +---------+
+ +......+ |ETH-1+----+ETH-2| +======+
+ .L3-ID . +-----+ +-----+ |L3-ID |
+ +======+ +......+ +======+
+ |ETH-ID| .L3-ID . |ETH-ID|
+ +======+ +======+ +------+
+ |ETH-ID|
+ +======+
+
+ Ethernet domain
+ <---------------->
+
+ Figure 10: IP Nodes Interconnected by an Ethernet Domain
+
+ End system "IP-A" uses the original App-flow-specific ID ("L3-ID"),
+ but as it is connected to an Ethernet domain, it has to push an
+ Ethernet-domain-specific Flow-ID ("ETH-ID") before sending the packet
+ to "ETH-1". Ethernet switch "ETH-1" can recognize the data flow
+ based on the "ETH-ID", and it does forwarding toward "ETH-2". "ETH-
+ 2" switches the packet toward the IP router. "IP-1" must be
+ configured to receive the Ethernet Flow-ID-specific multicast flow,
+ but (as it is an L3 node) it decodes the data flow ID based on the
+ "L3-ID" fields of the received packet.
+
+ Figure 11 shows a scenario where MPLS domain nodes ("PE-n" and "P-m")
+ are connected via two Ethernet switches ("ETH-n").
+
+ MPLS domain
+ <----------------------------------------------->
+
+ +=======+ +=======+
+ |MPLS-ID| |MPLS-ID|
+ +=======+ +-----+ +-----+ +=======+ +-----+
+ | | Forward as | | | |
+ |PE-1 | per ETH-ID | P-2 +-----------+ PE-2|
+ Push -----> +-+---+ | +---+-+ +-----+
+ ETH-ID | +-----+----+ | \ Recognize
+ | v v | +-- ETH-ID
+ | +-----+ +-----+ |
+ +---+ | | +----+
+ +.......+ |ETH-1+----+ETH-2| +=======+
+ .MPLS-ID. +-----+ +-----+ |MPLS-ID|
+ +=======+ +=======+
+ |ETH-ID | +.......+ |ETH-ID |
+ +=======+ .MPLS-ID. +-------+
+ +=======+
+ |ETH-ID |
+ +=======+
+ Ethernet domain
+ <---------------->
+
+ Figure 11: MPLS Nodes Interconnected by an Ethernet Domain
+
+ "PE-1" uses the MPLS-specific ID ("MPLS-ID"), but as it is connected
+ to an Ethernet domain, it has to push an Ethernet-domain-specific
+ Flow-ID ("ETH-ID") before sending the packet to "ETH-1". Ethernet
+ switch "ETH-1" can recognize the data flow based on the "ETH-ID", and
+ it does forwarding toward "ETH-2". "ETH-2" switches the packet
+ toward the MPLS node ("P-2"). "P-2" must be configured to receive
+ the Ethernet Flow-ID-specific multicast flow, but (as it is an MPLS
+ node) it decodes the data flow ID based on the "MPLS-ID" fields of
+ the received packet.
+
+ One can appreciate from the above example that, when the means used
+ for DetNet flow identification is altered or exported, the means for
+ encoding the sequence number information must similarly be altered or
+ exported.
+
+4.8. Advertising Resources, Capabilities, and Adjacencies
+
+ Provisioning of DetNet requires knowledge about:
+
+ * Details of the DetNet system's capabilities that are required in
+ order to accurately allocate that DetNet system's resources, as
+ well as other DetNet systems' resources. This includes, for
+ example, which specific queuing and shaping algorithms are
+ implemented (Section 4.5), the number of buffers dedicated for
+ DetNet allocation, and the worst-case forwarding delay and
+ misordering.
+
+ * The actual state of a DetNet node's DetNet resources.
+
+ * The identity of the DetNet system's neighbors and the
+ characteristics of the link(s) between the DetNet systems,
+ including the latency of the links (in nanoseconds).
+
+4.9. Scaling to Larger Networks
+
+ Reservations for individual DetNet flows require considerable state
+ information in each DetNet node, especially when adequate fault
+ mitigation (Section 3.3.2) is required. The DetNet Data Plane, in
+ order to support larger numbers of DetNet flows, must support the
+ aggregation of DetNet flows. Such aggregated flows can be viewed by
+ the DetNet nodes' Data Plane largely as individual DetNet flows.
+ Without such aggregation, the per-relay system may limit the scale of
+ DetNet networks. Example techniques that may be used include MPLS
+ hierarchy and IP DiffServ Code Points (DSCPs).
+
+4.10. Compatibility with Layer 2
+
+ Standards providing similar capabilities for bridged networks (only)
+ have been and are being generated in the IEEE 802 LAN/MAN Standards
+ Committee. The present architecture describes an abstract model that
+ can be applicable both at Layer 2 and Layer 3, and over links not
+ defined by IEEE 802.
+
+ DetNet-enabled end systems and DetNet nodes can be interconnected by
+ sub-networks, i.e., Layer 2 technologies. These sub-networks will
+ provide DetNet compatible service for support of DetNet traffic.
+ Examples of sub-network technologies include MPLS TE, TSN as defined
+ by IEEE 802.1, and a point-to-point OTN link. Of course, multilayer
+ DetNet systems may be possible too, where one DetNet appears as a
+ sub-network and provides service to a higher-layer DetNet system.
+
+5. Security Considerations
+
+ Security considerations for DetNet are described in detail in
+ [DETNET-SECURITY]. This section considers exclusively security
+ considerations that are specific to the DetNet architecture.
+
+ Security aspects that are unique to DetNet are those whose aim is to
+ provide the specific QoS aspects of DetNet, which are primarily to
+ deliver data flows with extremely low packet loss rates and bounded
+ end-to-end delivery latency. A DetNet may be implemented using MPLS
+ and/or IP (including both v4 and v6) technologies and thus inherits
+ the security properties of those technologies at both the Data Plane
+ and the Controller Plane.
+
+ Security considerations for DetNet are constrained (compared to, for
+ example, the open Internet) because DetNet is defined to operate only
+ within a single administrative domain (see Section 1). The primary
+ considerations are to secure the request and control of DetNet
+ resources, maintain confidentiality of data traversing the DetNet,
+ and provide the availability of the DetNet QoS.
+
+ To secure the request and control of DetNet resources, authentication
+ and authorization can be used for each device connected to a DetNet
+ domain, most importantly to network controller devices. Control of a
+ DetNet network may be centralized or distributed (within a single
+ administrative domain). In the case of centralized control,
+ precedent for security considerations as defined for Abstraction and
+ Control of Traffic Engineered Networks (ACTN) can be found in
+ Section 9 of [RFC8453]. In the case of distributed control
+ protocols, DetNet security is expected to be provided by the security
+ properties of the protocols in use. In any case, the result is that
+ manipulation of administratively configurable parameters is limited
+ to authorized entities.
+
+ To maintain confidentiality of data traversing the DetNet,
+ application flows can be protected through whatever means is provided
+ by the underlying technology. For example, encryption may be used,
+ such as that provided by IPsec [RFC4301], for IP flows and by MACSec
+ [IEEE802.1AE] for Ethernet (Layer 2) flows.
+
+ DetNet flows are identified on a per-flow basis, which may provide
+ attackers with additional information about the data flows (when
+ compared to networks that do not include per-flow identification).
+ This is an inherent property of DetNet that has security implications
+ that should be considered when determining if DetNet is a suitable
+ technology for any given use case.
+
+ To provide uninterrupted availability of the DetNet QoS, provisions
+ can be made against DoS attacks and delay attacks. To protect
+ against DoS attacks, excess traffic due to malicious or
+ malfunctioning devices can be prevented or mitigated, for example,
+ through the use of traffic admission control applied at the input of
+ a DetNet domain as described in Section 3.2.1 and through the fault-
+ mitigation methods described in Section 3.3.2. To prevent DetNet
+ packets from being delayed by an entity external to a DetNet domain,
+ DetNet technology definition can allow for the mitigation of man-in-
+ the-middle attacks, for example, through use of authentication and
+ authorization of devices within the DetNet domain.
+
+ Because DetNet mechanisms or applications that rely on DetNet can
+ make heavy use of methods that require precise time synchronization,
+ the accuracy, availability, and integrity of time synchronization is
+ of critical importance. Extensive discussion of this topic can be
+ found in [RFC7384].
+
+ DetNet use cases are known to have widely divergent security
+ requirements. The intent of this section is to provide a baseline
+ for security considerations that are common to all DetNet designs and
+ implementations, without burdening individual designs with specifics
+ of security infrastructure that may not be germane to the given use
+ case. Designers and implementors of DetNet systems are expected to
+ take use-case-specific considerations into account in their DetNet
+ designs and implementations.
+
+6. Privacy Considerations
+
+ DetNet provides a QoS, and the generic considerations for such
+ mechanisms apply. In particular, such markings allow for an attacker
+ to correlate flows or to select particular types of flow for more
+ detailed inspection.
+
+ However, the requirement for every (or almost every) node along the
+ path of a DetNet flow to identify DetNet flows may present an
+ additional attack surface for privacy should the DetNet paradigm be
+ found useful in broader environments.
+
+7. IANA Considerations
+
+ This document has no IANA actions.
+
+8. Informative References
+
+ [BUFFERBLOAT]
+ Gettys, J. and K. Nichols, "Bufferbloat: Dark Buffers in
+ the Internet", DOI 10.1145/2063176.2063196, Communications
+ of the ACM, Volume 55, Issue 1, January 2012,
+ <https://doi.org/10.1145/2063176.2063196>.
+
+ [CCAMP] IETF, "Common Control and Measurement Plane (ccamp)",
+ October 2019,
+ <https://datatracker.ietf.org/wg/ccamp/charter/>.
+
+ [DETNET-FRAMEWORK]
+ Varga, B., Farkas, J., Berger, L., Fedyk, D., Malis, A.,
+ Bryant, S., and J. Korhonen, "DetNet Data Plane
+ Framework", Work in Progress, Internet-Draft, draft-ietf-
+ detnet-data-plane-framework-02, 13 September 2019,
+ <https://tools.ietf.org/html/draft-ietf-detnet-data-plane-
+ framework-02>.
+
+ [DETNET-IP]
+ Varga, B., Farkas, J., Berger, L., Fedyk, D., Malis, A.,
+ Bryant, S., and J. Korhonen, "DetNet Data Plane: IP", Work
+ in Progress, Internet-Draft, draft-ietf-detnet-ip-01, 1
+ July 2019,
+ <https://tools.ietf.org/html/draft-ietf-detnet-ip-01>.
+
+ [DETNET-MPLS]
+ Varga, B., Farkas, J., Berger, L., Fedyk, D., Malis, A.,
+ Bryant, S., and J. Korhonen, "DetNet Data Plane: MPLS",
+ Work in Progress, Internet-Draft, draft-ietf-detnet-mpls-
+ 01, 1 July 2019,
+ <https://tools.ietf.org/html/draft-ietf-detnet-mpls-01>.
+
+ [DETNET-SECURITY]
+ Mizrahi, T., Grossman, E., Hacker, A., Das, S., Dowdell,
+ J., Austad, H., Stanton, K., and N. Finn, "Deterministic
+ Networking (DetNet) Security Considerations", Work in
+ Progress, Internet-Draft, draft-ietf-detnet-security-05,
+ 29 August 2019, <https://tools.ietf.org/html/draft-ietf-
+ detnet-security-05>.
+
+ [IEC-62439-3]
+ IEC, "Industrial communication networks - High
+ availability automation networks - Part 3: Parallel
+ Redundancy Protocol (PRP) and High-availability Seamless
+ Redundancy (HSR)", TC 65 / SC 65C, IEC 62439-3:2016, March
+ 2016, <https://webstore.iec.ch/publication/24447>.
+
+ [IEEE802.1AE]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks-Media Access Control (MAC) Security", IEEE
+ 802.1AE-2018,
+ <https://ieeexplore.ieee.org/document/8585421>.
+
+ [IEEE802.1BA]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks--Audio Video Bridging (AVB) Systems", IEEE
+ 802.1BA-2011,
+ <https://ieeexplore.ieee.org/document/6032690>.
+
+ [IEEE802.1CB]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks--Frame Replication and Elimination for
+ Reliability", DOI 10.1109/IEEESTD.2017.8091139, IEEE
+ 802.1CB-2017, October 2019,
+ <https://ieeexplore.ieee.org/document/8091139>.
+
+ [IEEE802.1Q]
+ IEEE, "IEEE Standard for Local and Metropolitan Area
+ Network--Bridges and Bridged Networks", IEEE 802.1Q-2018,
+ <https://ieeexplore.ieee.org/document/8403927>.
+
+ [IEEE802.1Qav]
+ IEEE, "IEEE Standard for Local and Metropolitan Area
+ Networks - Virtual Bridged Local Area Networks Amendment
+ 12: Forwarding and Queuing Enhancements for Time-Sensitive
+ Streams", IEEE 802.1Qav-2009,
+ <https://ieeexplore.ieee.org/document/5375704>.
+
+ [IEEE802.1Qbu]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks -- Bridges and Bridged Networks -- Amendment 26:
+ Frame Preemption", IEEE 802.1Qbu-2016,
+ <https://ieeexplore.ieee.org/document/7553415>.
+
+ [IEEE802.1Qbv]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks -- Bridges and Bridged Networks - Amendment 25:
+ Enhancements for Scheduled Traffic", IEEE 802.1Qbv-2015,
+ <https://ieeexplore.ieee.org/document/7440741>.
+
+ [IEEE802.1Qch]
+ IEEE, "IEEE Standard for Local and metropolitan area
+ networks--Bridges and Bridged Networks--Amendment 29:
+ Cyclic Queuing and Forwarding", IEEE 802.1Qch-2017,
+ <https://ieeexplore.ieee.org/document/7961303>.
+
+ [IEEE802.1TSNTG]
+ IEEE, "Time-Sensitive Networking (TSN) Task Group",
+ <https://1.ieee802.org/tsn/>.
+
+ [IEEE802.3]
+ IEEE, "IEEE Standard for Ethernet", IEEE 802.3-2018,
+ <https://ieeexplore.ieee.org/document/8457469>.
+
+ [IEEE802.3br]
+ IEEE, "IEEE Standard for Ethernet Amendment 5:
+ Specification and Management Parameters for Interspersing
+ Express Traffic", IEEE 802.3br,
+ <https://ieeexplore.ieee.org/document/7900321>.
+
+ [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S.
+ Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
+ Functional Specification", RFC 2205, DOI 10.17487/RFC2205,
+ September 1997, <https://www.rfc-editor.org/info/rfc2205>.
+
+ [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
+ and W. Weiss, "An Architecture for Differentiated
+ Services", RFC 2475, DOI 10.17487/RFC2475, December 1998,
+ <https://www.rfc-editor.org/info/rfc2475>.
+
+ [RFC2914] Floyd, S., "Congestion Control Principles", BCP 41,
+ RFC 2914, DOI 10.17487/RFC2914, September 2000,
+ <https://www.rfc-editor.org/info/rfc2914>.
+
+ [RFC3168] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition
+ of Explicit Congestion Notification (ECN) to IP",
+ RFC 3168, DOI 10.17487/RFC3168, September 2001,
+ <https://www.rfc-editor.org/info/rfc3168>.
+
+ [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
+ and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
+ Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
+ <https://www.rfc-editor.org/info/rfc3209>.
+
+ [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V.
+ Jacobson, "RTP: A Transport Protocol for Real-Time
+ Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550,
+ July 2003, <https://www.rfc-editor.org/info/rfc3550>.
+
+ [RFC4301] Kent, S. and K. Seo, "Security Architecture for the
+ Internet Protocol", RFC 4301, DOI 10.17487/RFC4301,
+ December 2005, <https://www.rfc-editor.org/info/rfc4301>.
+
+ [RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path
+ Computation Element (PCE)-Based Architecture", RFC 4655,
+ DOI 10.17487/RFC4655, August 2006,
+ <https://www.rfc-editor.org/info/rfc4655>.
+
+ [RFC6372] Sprecher, N., Ed. and A. Farrel, Ed., "MPLS Transport
+ Profile (MPLS-TP) Survivability Framework", RFC 6372,
+ DOI 10.17487/RFC6372, September 2011,
+ <https://www.rfc-editor.org/info/rfc6372>.
+
+ [RFC6658] Bryant, S., Ed., Martini, L., Swallow, G., and A. Malis,
+ "Packet Pseudowire Encapsulation over an MPLS PSN",
+ RFC 6658, DOI 10.17487/RFC6658, July 2012,
+ <https://www.rfc-editor.org/info/rfc6658>.
+
+ [RFC7149] Boucadair, M. and C. Jacquenet, "Software-Defined
+ Networking: A Perspective from within a Service Provider
+ Environment", RFC 7149, DOI 10.17487/RFC7149, March 2014,
+ <https://www.rfc-editor.org/info/rfc7149>.
+
+ [RFC7384] Mizrahi, T., "Security Requirements of Time Protocols in
+ Packet Switched Networks", RFC 7384, DOI 10.17487/RFC7384,
+ October 2014, <https://www.rfc-editor.org/info/rfc7384>.
+
+ [RFC7426] Haleplidis, E., Ed., Pentikousis, K., Ed., Denazis, S.,
+ Hadi Salim, J., Meyer, D., and O. Koufopavlou, "Software-
+ Defined Networking (SDN): Layers and Architecture
+ Terminology", RFC 7426, DOI 10.17487/RFC7426, January
+ 2015, <https://www.rfc-editor.org/info/rfc7426>.
+
+ [RFC7554] Watteyne, T., Ed., Palattella, M., and L. Grieco, "Using
+ IEEE 802.15.4e Time-Slotted Channel Hopping (TSCH) in the
+ Internet of Things (IoT): Problem Statement", RFC 7554,
+ DOI 10.17487/RFC7554, May 2015,
+ <https://www.rfc-editor.org/info/rfc7554>.
+
+ [RFC7567] Baker, F., Ed. and G. Fairhurst, Ed., "IETF
+ Recommendations Regarding Active Queue Management",
+ BCP 197, RFC 7567, DOI 10.17487/RFC7567, July 2015,
+ <https://www.rfc-editor.org/info/rfc7567>.
+
+ [RFC7813] Farkas, J., Ed., Bragg, N., Unbehagen, P., Parsons, G.,
+ Ashwood-Smith, P., and C. Bowers, "IS-IS Path Control and
+ Reservation", RFC 7813, DOI 10.17487/RFC7813, June 2016,
+ <https://www.rfc-editor.org/info/rfc7813>.
+
+ [RFC8033] Pan, R., Natarajan, P., Baker, F., and G. White,
+ "Proportional Integral Controller Enhanced (PIE): A
+ Lightweight Control Scheme to Address the Bufferbloat
+ Problem", RFC 8033, DOI 10.17487/RFC8033, February 2017,
+ <https://www.rfc-editor.org/info/rfc8033>.
+
+ [RFC8227] Cheng, W., Wang, L., Li, H., van Helvoort, H., and J.
+ Dong, "MPLS-TP Shared-Ring Protection (MSRP) Mechanism for
+ Ring Topology", RFC 8227, DOI 10.17487/RFC8227, August
+ 2017, <https://www.rfc-editor.org/info/rfc8227>.
+
+ [RFC8289] Nichols, K., Jacobson, V., McGregor, A., Ed., and J.
+ Iyengar, Ed., "Controlled Delay Active Queue Management",
+ RFC 8289, DOI 10.17487/RFC8289, January 2018,
+ <https://www.rfc-editor.org/info/rfc8289>.
+
+ [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L.,
+ Decraene, B., Litkowski, S., and R. Shakir, "Segment
+ Routing Architecture", RFC 8402, DOI 10.17487/RFC8402,
+ July 2018, <https://www.rfc-editor.org/info/rfc8402>.
+
+ [RFC8453] Ceccarelli, D., Ed. and Y. Lee, Ed., "Framework for
+ Abstraction and Control of TE Networks (ACTN)", RFC 8453,
+ DOI 10.17487/RFC8453, August 2018,
+ <https://www.rfc-editor.org/info/rfc8453>.
+
+ [RFC8557] Finn, N. and P. Thubert, "Deterministic Networking Problem
+ Statement", RFC 8557, DOI 10.17487/RFC8557, May 2019,
+ <https://www.rfc-editor.org/info/rfc8557>.
+
+ [RFC8578] Grossman, E., Ed., "Deterministic Networking Use Cases",
+ RFC 8578, DOI 10.17487/RFC8578, May 2019,
+ <https://www.rfc-editor.org/info/rfc8578>.
+
+ [TEAS] IETF, "Traffic Engineering Architecture and Signaling
+ (teas)", October 2019,
+ <https://datatracker.ietf.org/doc/charter-ietf-teas/>.
+
+ [TSCH-ARCH]
+ Thubert, P., "An Architecture for IPv6 over the TSCH mode
+ of IEEE 802.15.4", Work in Progress, Internet-Draft,
+ draft-ietf-6tisch-architecture-26, 27 August 2019,
+ <https://tools.ietf.org/html/draft-ietf-6tisch-
+ architecture-26>.
+
+Acknowledgements
+
+ The authors wish to thank Lou Berger, David Black, Stewart Bryant,
+ Rodney Cummings, Ethan Grossman, Craig Gunther, Marcel Kiessling,
+ Rudy Klecka, Jouni Korhonen, Erik Nordmark, Shitanshu Shah, Wilfried
+ Steiner, George Swallow, Michael Johas Teener, Pat Thaler, Thomas
+ Watteyne, Patrick Wetterwald, Karl Weber, and Anca Zamfir for their
+ various contributions to this work.
+
+Authors' Addresses
+
+ Norman Finn
+ Huawei
+ 3101 Rio Way
+ Spring Valley, California 91977
+ United States of America
+
+ Phone: +1 925 980 6430
+ Email: nfinn@nfinnconsulting.com
+
+
+ Pascal Thubert
+ Cisco Systems
+ Batiment T3
+ Village d'Entreprises Green Side, 400, Avenue de Roumanille
+ 06410 Biot - Sophia Antipolis
+ France
+
+ Phone: +33 4 97 23 26 34
+ Email: pthubert@cisco.com
+
+
+ Balázs Varga
+ Ericsson
+ Budapest
+ Magyar tudosok korutja 11
+ 1117
+ Hungary
+
+ Email: balazs.a.varga@ericsson.com
+
+
+ János Farkas
+ Ericsson
+ Budapest
+ Magyar tudosok korutja 11
+ 1117
+ Hungary
+
+ Email: janos.farkas@ericsson.com