draft-ietf-detnet-architecture-05.txt   draft-ietf-detnet-architecture-06.txt 
DetNet N. Finn DetNet N. Finn
Internet-Draft Huawei Internet-Draft Huawei
Intended status: Standards Track P. Thubert Intended status: Standards Track P. Thubert
Expires: November 2, 2018 Cisco Expires: December 30, 2018 Cisco
B. Varga B. Varga
J. Farkas J. Farkas
Ericsson Ericsson
May 1, 2018 June 28, 2018
Deterministic Networking Architecture Deterministic Networking Architecture
draft-ietf-detnet-architecture-05 draft-ietf-detnet-architecture-06
Abstract Abstract
Deterministic Networking (DetNet) provides a capability to carry Deterministic Networking (DetNet) provides a capability to carry
specified unicast or multicast data flows for real-time applications specified unicast or multicast data flows for real-time applications
with extremely low data loss rates and bounded latency. Techniques with extremely low data loss rates and bounded latency. Techniques
used include: 1) reserving data plane resources for individual (or used include: 1) reserving data plane resources for individual (or
aggregated) DetNet flows in some or all of the intermediate nodes aggregated) DetNet flows in some or all of the intermediate nodes
(e.g. bridges or routers) along the path of the flow; 2) providing (e.g., bridges or routers) along the path of the flow; 2) providing
explicit routes for DetNet flows that do not rapidly change with the explicit routes for DetNet flows that do not immediately change with
network topology; and 3) distributing data from DetNet flow packets the network topology; and 3) distributing data from DetNet flow
over time and/or space to ensure delivery of each packet's data' in packets over time and/or space to ensure delivery of each packet's
spite of the loss of a path. The capabilities can be managed by data' in spite of the loss of a path.
configuration, or by manual or automatic network management.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on November 2, 2018. This Internet-Draft will expire on December 30, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 25 skipping to change at page 2, line 20
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1. Terms used in this document . . . . . . . . . . . . . . . 4 2.1. Terms used in this document . . . . . . . . . . . . . . . 4
2.2. IEEE 802 TSN to DetNet dictionary . . . . . . . . . . . . 6 2.2. IEEE 802.1 TSN to DetNet dictionary . . . . . . . . . . . 6
3. Providing the DetNet Quality of Service . . . . . . . . . . . 7 3. Providing the DetNet Quality of Service . . . . . . . . . . . 7
3.1. Primary goals defining the DetNet QoS . . . . . . . . . . 7 3.1. Primary goals defining the DetNet QoS . . . . . . . . . . 7
3.2. Mechanisms to achieve DetNet Qos . . . . . . . . . . . . 9 3.2. Mechanisms to achieve DetNet QoS . . . . . . . . . . . . 9
3.2.1. Congestion protection . . . . . . . . . . . . . . . . 9 3.2.1. Congestion protection . . . . . . . . . . . . . . . . 9
3.2.2. Explicit routes . . . . . . . . . . . . . . . . . . . 9 3.2.1.1. Eliminate congestion loss . . . . . . . . . . . . 9
3.2.3. Jitter Reduction . . . . . . . . . . . . . . . . . . 10 3.2.1.2. Jitter Reduction . . . . . . . . . . . . . . . . 10
3.2.4. Packet Replication and Elimination . . . . . . . . . 11 3.2.2. Service Protection . . . . . . . . . . . . . . . . . 11
3.2.5. Packet encoding for service protection . . . . . . . 12 3.2.2.1. In-Order Delivery . . . . . . . . . . . . . . . . 11
3.3. Secondary goals for DetNet . . . . . . . . . . . . . . . 13 3.2.2.2. Packet Replication and Elimination . . . . . . . 11
3.3.1. Coexistence with normal traffic . . . . . . . . . . . 13 3.2.2.3. Packet encoding for service protection . . . . . 13
3.3.2. Fault Mitigation . . . . . . . . . . . . . . . . . . 13 3.2.3. Explicit routes . . . . . . . . . . . . . . . . . . . 13
4. DetNet Architecture . . . . . . . . . . . . . . . . . . . . . 14 3.3. Secondary goals for DetNet . . . . . . . . . . . . . . . 14
4.1. DetNet stack model . . . . . . . . . . . . . . . . . . . 14 3.3.1. Coexistence with normal traffic . . . . . . . . . . . 14
4.1.1. Representative Protocol Stack Model . . . . . . . . . 14 3.3.2. Fault Mitigation . . . . . . . . . . . . . . . . . . 15
4.1.2. DetNet Data Plane Overview . . . . . . . . . . . . . 16 4. DetNet Architecture . . . . . . . . . . . . . . . . . . . . . 16
4.1.3. Network reference model . . . . . . . . . . . . . . . 18 4.1. DetNet stack model . . . . . . . . . . . . . . . . . . . 16
4.2. DetNet systems . . . . . . . . . . . . . . . . . . . . . 19 4.1.1. Representative Protocol Stack Model . . . . . . . . . 16
4.2.1. End system . . . . . . . . . . . . . . . . . . . . . 19 4.1.2. DetNet Data Plane Overview . . . . . . . . . . . . . 18
4.2.2. DetNet edge, relay, and transit nodes . . . . . . . . 20 4.1.3. Network reference model . . . . . . . . . . . . . . . 20
4.3. DetNet flows . . . . . . . . . . . . . . . . . . . . . . 21 4.2. DetNet systems . . . . . . . . . . . . . . . . . . . . . 21
4.3.1. DetNet flow types . . . . . . . . . . . . . . . . . . 21 4.2.1. End system . . . . . . . . . . . . . . . . . . . . . 21
4.3.2. Source guarantees . . . . . . . . . . . . . . . . . . 21 4.2.2. DetNet edge, relay, and transit nodes . . . . . . . . 22
4.3.3. Incomplete Networks . . . . . . . . . . . . . . . . . 23 4.3. DetNet flows . . . . . . . . . . . . . . . . . . . . . . 23
4.4. Traffic Engineering for DetNet . . . . . . . . . . . . . 23 4.3.1. DetNet flow types . . . . . . . . . . . . . . . . . . 23
4.4.1. The Application Plane . . . . . . . . . . . . . . . . 23 4.3.2. Source transmission behavior . . . . . . . . . . . . 23
4.4.2. The Controller Plane . . . . . . . . . . . . . . . . 24 4.3.3. Incomplete Networks . . . . . . . . . . . . . . . . . 25
4.4.3. The Network Plane . . . . . . . . . . . . . . . . . . 24 4.4. Traffic Engineering for DetNet . . . . . . . . . . . . . 25
4.4.1. The Application Plane . . . . . . . . . . . . . . . . 25
4.5. Queuing, Shaping, Scheduling, and Preemption . . . . . . 25 4.4.2. The Controller Plane . . . . . . . . . . . . . . . . 26
4.6. Service instance . . . . . . . . . . . . . . . . . . . . 26 4.4.3. The Network Plane . . . . . . . . . . . . . . . . . . 26
4.7. Flow identification at technology borders . . . . . . . . 27 4.5. Queuing, Shaping, Scheduling, and Preemption . . . . . . 27
4.7.1. Exporting flow identification . . . . . . . . . . . . 27 4.6. Service instance . . . . . . . . . . . . . . . . . . . . 28
4.7.2. Flow attribute mapping between layers . . . . . . . . 29 4.7. Flow identification at technology borders . . . . . . . . 29
4.7.3. Flow-ID mapping examples . . . . . . . . . . . . . . 30 4.7.1. Exporting flow identification . . . . . . . . . . . . 29
4.8. Advertising resources, capabilities and adjacencies . . . 32 4.7.2. Flow attribute mapping between layers . . . . . . . . 31
4.9. Provisioning model . . . . . . . . . . . . . . . . . . . 32 4.7.3. Flow-ID mapping examples . . . . . . . . . . . . . . 32
4.9.1. Centralized Path Computation and Installation . . . . 32 4.8. Advertising resources, capabilities and adjacencies . . . 34
4.9.2. Distributed Path Setup . . . . . . . . . . . . . . . 32 4.9. Scaling to larger networks . . . . . . . . . . . . . . . 34
4.10. Scaling to larger networks . . . . . . . . . . . . . . . 33 4.10. Compatibility with Layer-2 . . . . . . . . . . . . . . . 34
4.11. Connected islands vs. networks . . . . . . . . . . . . . 33 5. Security Considerations . . . . . . . . . . . . . . . . . . . 35
4.12. Compatibility with Layer-2 . . . . . . . . . . . . . . . 33 6. Privacy Considerations . . . . . . . . . . . . . . . . . . . 35
5. Security Considerations . . . . . . . . . . . . . . . . . . . 34
6. Privacy Considerations . . . . . . . . . . . . . . . . . . . 34
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 35 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 35
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 35 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 35
9. Access to IEEE 802.1 documents . . . . . . . . . . . . . . . 35 9. Informative References . . . . . . . . . . . . . . . . . . . 36
10. Informative References . . . . . . . . . . . . . . . . . . . 35 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 39
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 40
1. Introduction 1. Introduction
Deterministic Networking (DetNet) is a service that can be offered by Deterministic Networking (DetNet) is a service that can be offered by
a network to DetNet flows. DetNet provides these flows extremely low a network to DetNet flows. DetNet provides these flows with
packet loss rates and assured maximum end-to-end delivery latency. extremely low packet loss rates and assured maximum end-to-end
This is accomplished by dedicating network resources such as link delivery latency. This is accomplished by dedicating network
bandwidth and buffer space to DetNet flows and/or classes of DetNet resources such as link bandwidth and buffer space to DetNet flows
flows, and by replicating packets along multiple paths. Unused and/or classes of DetNet flows, and by replicating packets along
reserved resources are available to non-DetNet packets. multiple paths. Unused reserved resources are available to non-
DetNet packets.
The Deterministic Networking Problem Statement The Deterministic Networking Problem Statement
[I-D.ietf-detnet-problem-statement] introduces Deterministic [I-D.ietf-detnet-problem-statement] introduces Deterministic
Networking, and Deterministic Networking Use Cases Networking, and Deterministic Networking Use Cases
[I-D.ietf-detnet-use-cases] summarizes the need for it. See [I-D.ietf-detnet-use-cases] summarizes the need for it. See
[I-D.dt-detnet-dp-alt] for a discussion of specific techniques that [I-D.ietf-detnet-dp-sol-mpls] and [I-D.ietf-detnet-dp-sol-ip] for
can be used to identify DetNet Flows and assign them to specific specific techniques that can be used to identify DetNet Flows and
paths through a network. assign them to specific paths through a network.
A goal of DetNet is a converged network in all respects. That is, A goal of DetNet is a converged network in all respects. That is,
the presence of DetNet flows does not preclude non-DetNet flows, and the presence of DetNet flows does not preclude non-DetNet flows, and
the benefits offered DetNet flows should not, except in extreme the benefits offered DetNet flows should not, except in extreme
cases, prevent existing QoS mechanisms from operating in a normal cases, prevent existing QoS mechanisms from operating in a normal
fashion, subject to the bandwidth required for the DetNet flows. A fashion, subject to the bandwidth required for the DetNet flows. A
single source-destination pair can trade both DetNet and non-DetNet single source-destination pair can trade both DetNet and non-DetNet
flows. End systems and applications need not instantiate special flows. End systems and applications need not instantiate special
interfaces for DetNet flows. Networks are not restricted to certain interfaces for DetNet flows. Networks are not restricted to certain
topologies; connectivity is not restricted. Any application that topologies; connectivity is not restricted. Any application that
generates a data flow that can be usefully characterized as having a generates a data flow that can be usefully characterized as having a
maximum bandwidth should be able to take advantage of DetNet, as long maximum bandwidth should be able to take advantage of DetNet, as long
as the necessary resources can be reserved. Reservations can be made as the necessary resources can be reserved. Reservations can be made
by the application itself, via network management, by an applications by the application itself, via network management, by an applications
controller, or by other means. controller, or by other means, e.g., a dynamic control plane (e.g.,
[RFC2205]).
Many applications of interest to Deterministic Networking 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 relay and transit
nodes. The means used to achieve time synchronization are not
addressed in this document. DetNet should accommodate various
synchronization techniques and profiles that are defined elsewhere to
solve exchange time in different market segments.
Wired and wireless media differ greatly in a number of ways, Many applications, that are intended to be served by Deterministic
including connectivity possibilities and the reliability of packet Networking, require the ability to synchronize the clocks in end
transmission. While some of the techniques described in this systems to a sub-microsecond accuracy. Some of the queue control
document may be applicable to wireless media, the DetNet architecture techniques defined in Section 4.5 also require time synchronization
assumes the use of links with characteristics typical of wired, and among relay and transit nodes. The means used to achieve time
not wireless, media. synchronization are not addressed in this document. DetNet should
accommodate various synchronization techniques and profiles that are
defined elsewhere to solve exchange time in different market
segments.
2. Terminology 2. Terminology
2.1. Terms used in this document 2.1. Terms used in this document
The following special terms are used in this document in order to The following terms are used in the context of DetNet in this
avoid the assumption that a given element in the architecture does or document:
does not have Internet Protocol stack, functions as a router, bridge,
firewall, or otherwise plays a particular role at Layer-2 or higher. allocation
Resources are dedicated 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 App-flow
The native format of a DetNet flow. The native format of a DetNet flow.
destination DetNet destination
An end system capable of receiving a DetNet flow. An end system capable of terminating a DetNet flow.
DetNet domain DetNet domain
The portion of a network that is DetNet aware. It includes The portion of a network that is DetNet aware. It includes
end systems and other DetNet nodes. end systems and other DetNet nodes.
DetNet flow DetNet flow
A DetNet flow is a sequence of packets to which the DetNet A DetNet flow is a sequence of packets to which the DetNet
service is to be provided. service is to be provided.
DetNet compound flow and DetNet member flow DetNet compound flow and DetNet member flow
A DetNet compound flow is a DetNet flow that has been A DetNet compound flow is a DetNet flow that has been
separated into multiple duplicate DetNet member flows, which separated into multiple duplicate DetNet member flows for
are eventually merged back into a single DetNet compound service protection at the DetNet service layer. Member flows
flow, at the DetNet transport layer. "Compound" and "member" are merged back into a single DetNet compound flow such that
are strictly relative to each other, not absolutes; a DetNet 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 compound flow comprising multiple DetNet member flows can, in
turn, be a member of a higher-order compound. turn, be a member of a higher-order compound.
DetNet intermediate node DetNet intermediate node
A DetNet relay node or transit node. A DetNet relay node or transit node.
DetNet edge node DetNet edge node
An instance of a DetNet relay node that includes either a An instance of a DetNet relay node that acts as a source and/
DetNet service layer proxy function for DetNet service or destination at the DetNet service layer. For example, it
protection (e.g. the addition or removal of packet sequencing can include a DetNet service layer proxy function for DetNet
information) for one or more end systems, or starts or service protection (e.g., the addition or removal of packet
terminates congestion protection at the DetNet transport sequencing information) for one or more end systems, or
layer, analogous to a Label Edge Router (LER). starts or terminates congestion protection at the DetNet
transport layer, or aggregates DetNet services into new
DetNet flows. It is analogous to a Label Edge Router (LER)
or a Provider Edge (PE) router.
DetNet-UNI DetNet-UNI
User-to-Network Interface with DetNet specific User-to-Network Interface with DetNet specific
functionalities. It is a packet-based reference point and functionalities. It is a packet-based reference point and
may provide multiple functions like encapsulation, status, may provide multiple functions like encapsulation, status,
synchronization, etc. synchronization, etc.
end system end system
Commonly called a "host" or "node" in IETF documents, and an Commonly called a "host" in IETF documents, and an "end
"end station" is IEEE 802 documents. End systems of interest station" is IEEE 802 documents. End systems of interest to
to this document are either sources or destinations of DetNet this document are either sources or destinations of DetNet
flows. And end system may or may not be DetNet transport flows. And end system may or may not be DetNet transport
layer aware or DetNet service layer aware. layer aware or DetNet service layer aware.
link link
A connection between two DetNet nodes. It may be composed of A connection between two DetNet nodes. It may be composed of
a physical link or a sub-network technology that can provide a physical link or a sub-network technology that can provide
appropriate traffic delivery for DetNet flows. appropriate traffic delivery for DetNet flows.
DetNet node DetNet system
A DetNet aware end system, transit node, or relay node. A DetNet aware end system, transit node, or relay node.
"DetNet" may be omitted in some text. "DetNet" may be omitted in some text.
Detnet relay node DetNet relay node
A DetNet node including a service layer function that A DetNet node including a service layer function that
interconnects different DetNet transport layer paths to interconnects different DetNet transport layer paths to
provide service protection. A DetNet relay node can be a provide service protection. A DetNet relay node can be a
bridge, a router, a firewall, or any other system that bridge, a router, a firewall, or any other system that
participates in the DetNet service layer. It typically participates in the DetNet service layer. It typically
incorporates DetNet transport layer functions as well, in incorporates DetNet transport layer functions as well, in
which case it is collocated with a transit node. which case it is collocated with a transit node.
PEF A Packet Elimination Function (PEF) eliminates duplicate
copies of packets to prevent excess packets flooding the
network or duplicate packets being sent out of the DetNet
domain. PEF can be implemented by an edge node, a relay
node, or an end system.
PRF A Packet Replication Function (PRF) replicates DetNet flow
packets and forwards them to one or more next hops in the
DetNet domain. The number of packet copies sent to each next
hop is a DetNet flow specific parameter at the node doing the
replication. PRF can be implemented by an edge node, a relay
node, or an end system.
PREOF Collective name for Packet Replication, Elimination, and
Ordering Functions.
POF A Packet Ordering Function (POF) re-orders packets within a
DetNet flow that are received out of order. This function
can be implemented by an edge node, a relay node, or an end
system.
reservation reservation
A trail of configuration between source to destination(s) The set of resources allocated between a source and one or
through transit nodes and subnets associated with a DetNet more destinations through transit nodes and subnets
flow, to provide congestion protection. associated with a DetNet flow, to provide the expected DetNet
Service.
DetNet service layer DetNet service layer
The layer at which service protection is provided, either The layer at which A DetNet Service, such as congestion or
packet sequencing, replication, and elimination service protection is provided.
(Section 3.2.4) or packet encoding (Section 3.2.5).
source DetNet service proxy
An end system capable of sourcing a DetNet flow. Maps between App-flows and DetNet flows.
DetNet source
An end system capable of originating a DetNet flow.
DetNet transit node DetNet transit node
A node operating at the DetNet transport layer, that utilizes A node operating at the DetNet transport layer, that utilizes
link layer and/or network layer switching across multiple link layer and/or network layer switching across multiple
links and/or sub-networks to provide paths for DetNet service links and/or sub-networks to provide paths for DetNet service
layer functions. Optionally provides congestion protection layer functions. Typically provides congestion protection
over those paths. An MPLS LSR is an example of a DetNet over those paths. An MPLS LSR is an example of a DetNet
transit node. transit node.
DetNet transport layer DetNet transport layer
The layer that optionally provides congestion protection for The layer that optionally provides congestion protection for
DetNet flows over paths provided by the underlying network. DetNet flows over paths provided by the underlying network.
TSN 2.2. IEEE 802.1 TSN to DetNet dictionary
Time-Sensitive Networking, TSN is a Task Group of the IEEE
802.1 Working Group.
2.2. IEEE 802 TSN to DetNet dictionary
This section also serves as a dictionary for translating from the This section also serves as a dictionary for translating from the
terms used by the IEEE 802 Time-Sensitive Networking (TSN) Task Group terms used by the Time-Sensitive Networking (TSN) Task Group
to those of the DetNet WG. [IEEE802.1TSNTG] of the IEEE 802.1 WG to those of the DetNet WG.
Listener Listener
The IEEE 802 term for a destination of a DetNet flow. The IEEE 802.1 term for a destination of a DetNet flow.
relay system relay system
The IEEE 802 term for a DetNet intermediate node. The IEEE 802.1 term for a DetNet intermediate node.
Stream Stream
The IEEE 802 term for a DetNet flow. The IEEE 802.1 term for a DetNet flow.
Talker Talker
The IEEE 802 term for the source of a DetNet flow. The IEEE 802.1 term for the source of a DetNet flow.
bridged path
A VLAN bridge uses the VLAN ID and the destination MAC
address to select the outbound port hence the path for a
frame.
3. Providing the DetNet Quality of Service 3. Providing the DetNet Quality of Service
3.1. Primary goals defining the DetNet QoS 3.1. Primary goals defining the DetNet QoS
The DetNet Quality of Service can be expressed in terms of: The DetNet Quality of Service can be expressed in terms of:
o Minimum and maximum end-to-end latency from source to destination; o Minimum and maximum end-to-end latency from source to destination;
timely delivery and jitter avoidance derive from these constraints timely delivery, and bounded jitter (packet delay variation)
derived from these constraints.
o Probability of loss of a packet, under various assumptions as to o Probability of loss of a packet, under various assumptions as to
the operational states of the nodes and links. A derived property the operational states of the nodes and links. If packet
is whether it is acceptable to deliver a duplicate packet, which replication is used to reduce the probability of packet loss, then
is an inherent risk in highly reliable and/or broadcast a related property is the probability (may be zero) of delivery of
transmissions a duplicate packet. Duplicate packet delivery is an inherent risk
in highly reliable and/or broadcast transmissions.
o 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- It is a distinction of DetNet that it is concerned solely with worst-
case values for the end-to-end latency. Average, mean, or typical case values for the end-to-end latency, jitter, and misordering.
values are of no interest, because they do not affect the ability of Average, mean, or typical values are of little interest, because they
a real-time system to perform its tasks. In general, a trivial do not affect the ability of a real-time system to perform its tasks.
priority-based queuing scheme will give better average latency to a In general, a trivial priority-based queuing scheme will give better
data flow than DetNet, but of course, the worst-case latency can be average latency to a data flow than DetNet, but of course, the worst-
essentially unbounded. case latency can be essentially unbounded.
Three techniques are used by DetNet to provide these qualities of Three techniques are used by DetNet to provide these qualities of
service: service:
o Congestion protection (Section 3.2.1). o Congestion protection (Section 3.2.1).
o Explicit routes (Section 3.2.2). o Service protection (Section 3.2.2).
o Service protection (Section 3.2.4). o Explicit routes (Section 3.2.3).
Congestion protection operates by reserving resources along the path Congestion protection operates by allocating resources along the path
of a DetNet Flow, e.g. buffer space or link bandwidth. Congestion of a DetNet Flow, e.g., buffer space or link bandwidth. Congestion
protection greatly reduces, or even eliminates entirely, packet loss protection greatly reduces, or even eliminates entirely, packet loss
due to output packet congestion within the network, but it can only due to output packet congestion within the network, but it can only
be supplied to a DetNet flow that is limited at the source to a be supplied to a DetNet flow that is limited at the source to a
maximum packet size and transmission rate. maximum packet size and transmission rate.
Congestion protection addresses both of the DetNet QoS requirements Congestion protection addresses two of the DetNet QoS requirements:
(latency and packet loss). Given that DetNet nodes have a finite latency and packet loss. Given that DetNet nodes have a finite
amount of buffer space, congestion protection necessarily results in amount of buffer space, congestion protection necessarily results in
a maximum end-to-end latency. It also addresses the largest a maximum end-to-end latency. It also addresses the largest
contribution to packet loss, which is buffer congestion. contribution to packet loss, which is buffer congestion.
After congestion, the most important contributions to packet loss are After congestion, the most important contributions to packet loss are
typically from random media errors and equipment failures. Service typically from random media errors and equipment failures. Service
protection is the name for the mechanisms used by DetNet to address protection is the name for the mechanisms used by DetNet to address
these losses. The mechanisms employed are constrained by the these losses. The mechanisms employed are constrained by the
requirement to meet the users' latency requirements. Packet requirement to meet the users' latency requirements. Packet
replication and elimination (Section 3.2.4) and packet encoding replication and elimination (Section 3.2.2) and packet encoding
(Section 3.2.5) are described in this document to provide service (Section 3.2.2.3) are described in this document to provide service
protection; others may be found. This mechanism distributes the protection; others may be found. For instance, packet encoding can
contents of DetNet flows over multiple paths in time and/or space, so be used to provide service protection against random media errors,
that the loss of some of the paths does need not cause the loss of packet replication and elimination can be used to provide service
any packets. The paths are typically (but not necessarily) explicit protection against equipment failures. This mechanism distributes
routes, so that they cannot suffer temporary interruptions caused by the contents of DetNet flows over multiple paths in time and/or
the reconvergence of routing or bridging protocols. 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 independently, giving eight These three techniques can be applied independently, giving eight
possible combinations, including none (no DetNet), although some possible combinations, including none (no DetNet), although some
combinations are of wider utility than others. This separation keeps combinations are of wider utility than others. This separation keeps
the protocol stack coherent and maximizes interoperability with the protocol stack coherent and maximizes interoperability with
existing and developing standards in this (IETF) and other Standards existing and developing standards in this (IETF) and other Standards
Development Organizations. Some examples of typical expected Development Organizations. Some examples of typical expected
combinations: combinations:
o Explicit routes plus service protection are exactly the techniques o Explicit routes plus service protection are exactly the techniques
employed by [HSR-PRP]. Explicit routes are achieved by limiting employed by seamless redundancy mechanisms applied on a ring
the physical topology of the network, and the sequentialization, topology as described, e.g., in [IEEE802.1CB]. In this case,
replication, and duplicate elimination are facilitated by packet explicit routes are achieved by limiting the physical topology of
tags added at the front or the end of Ethernet frames. 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.
o Congestion protection alone is is offered by IEEE 802.1 Audio o Congestion protection alone is offered by IEEE 802.1 Audio Video
Video bridging [IEEE802.1BA-2011]. As long as the network suffers bridging [IEEE802.1BA]. As long as the network suffers no
no failures, zero congestion loss can be achieved through the use failures, zero congestion loss can be achieved through the use of
of a reservation protocol (MSRP), shapers in every bridge, and a a reservation protocol (MSRP [IEEE802.1Q]), shapers in every
bit of network calculus. bridge, and proper dimensioning.
o Using all three together gives maximum protection. o Using all three together gives maximum protection.
There are, of course, simpler methods available (and employed, today) There are, of course, simpler methods available (and employed, today)
to achieve levels of latency and packet loss that are satisfactory to achieve levels of latency and packet loss that are satisfactory
for many applications. Prioritization and over-provisioning is one for many applications. Prioritization and over-provisioning is one
such technique. However, these methods generally work best in the such technique. However, these methods generally work best in the
absence of any significant amount of non-critical traffic in the absence of any significant amount of non-critical traffic in the
network (if, indeed, such traffic is supported at all), or work only network (if, indeed, such traffic is supported at all), or work only
if the critical traffic constitutes only a small portion of the if the critical traffic constitutes only a small portion of the
skipping to change at page 9, line 7 skipping to change at page 9, line 36
functioning properly, or in the absence of actions by end systems functioning properly, or in the absence of actions by end systems
that disrupt the network's operations. that disrupt the network's operations.
There are any number of methods in use, defined, or in progress for There are any number of methods in use, defined, or in progress for
accomplishing each of the above techniques. It is expected that this accomplishing each of the above techniques. It is expected that this
DetNet Architecture will assist various vendors, users, and/or DetNet Architecture will assist various vendors, users, and/or
"vertical" Standards Development Organizations (dedicated to a single "vertical" Standards Development Organizations (dedicated to a single
industry) to make selections among the available means of industry) to make selections among the available means of
implementing DetNet networks. implementing DetNet networks.
3.2. Mechanisms to achieve DetNet Qos 3.2. Mechanisms to achieve DetNet QoS
3.2.1. Congestion protection 3.2.1. Congestion protection
3.2.1.1. Eliminate congestion loss
The primary means by which DetNet achieves its QoS assurances is to The primary means by which DetNet achieves its QoS assurances is to
reduce, or even completely eliminate, congestion at an output port as reduce, or even completely eliminate, congestion within a node as a
a cause of packet loss. Given that a DetNet flow cannot be cause of packet loss. Given that a DetNet flow cannot be throttled,
throttled, this can be achieved only by the provision of sufficient this can be achieved only by the provision of sufficient buffer
buffer storage at each hop through the network to ensure that no storage at each hop through the network to ensure that no packets are
packets are dropped due to a lack of buffer storage. dropped due to a lack of buffer storage.
Ensuring adequate buffering requires, in turn, that the source, and Ensuring adequate buffering requires, in turn, that the source, and
every intermediate node along the path to the destination (or nearly every intermediate node along the path to the destination (or nearly
every node -- see Section 4.3.3) be careful to regulate its output to 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 not exceed the data rate for any DetNet flow, except for brief
periods when making up for interfering traffic. Any packet sent periods when making up for interfering traffic. Any packet sent
ahead of its time potentially adds to the number of buffers required ahead of its time potentially adds to the number of buffers required
by the next hop, and may thus exceed the resources allocated for a by the next hop and may thus exceed the resources allocated for a
particular DetNet flow. particular DetNet flow.
The low-level mechanisms described in Section 4.5 provide the The low-level mechanisms described in Section 4.5 provide the
necessary regulation of transmissions by an end system or necessary regulation of transmissions by an end system or
intermediate node to provide congestion protection. The reservation intermediate node to provide congestion protection. The allocation
of the bandwidth and buffers for a DetNet flow requires the of the bandwidth and buffers for a DetNet flow requires provisioning
provisioning described in Section 4.9. A DetNet node may have other A DetNet node may have other resources requiring allocation and/or
resources requiring allocation and/or scheduling, that might scheduling, that might otherwise be over-subscribed and trigger the
otherwise be over-subscribed and trigger the rejection of a rejection of a reservation.
reservation.
3.2.2. Explicit routes
In networks controlled by typical peer-to-peer protocols such as IEEE
802.1 ISIS bridged networks or IETF OSPF routed networks, 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. Thus, even redundant paths through a
network, if controlled by the typical peer-to-peer protocols, do not
eliminate the chances of brief losses of contact.
Many real-time networks rely on physical rings or chains 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 than 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 immediately, and likely not at all, in response to
network topology events. Service protection (Section 3.2.4 or
Section 3.2.5) over explicit routes provides a high likelihood of
continuous connectivity. Explicit routes are commonly used in MPLS
TE LSPs.
3.2.3. Jitter Reduction 3.2.1.2. Jitter Reduction
A core objective of DetNet is to enable the convergence of Non-IP A core objective of DetNet is to enable the convergence of sensitive
networks onto a common network infrastructure. This requires the non-IP networks onto a common network infrastructure. This requires
accurate emulation of currently deployed mission-specific networks, the accurate emulation of currently deployed mission-specific
which typically rely on point-to-point analog (e.g. 4-20mA networks, which for example rely on point-to-point analog (e.g.,
modulation) and serial-digital cables (or buses) for highly reliable, 4-20mA modulation) and serial-digital cables (or buses) for highly
synchronized and jitter-free communications. While the latency of reliable, synchronized and jitter-free communications. While the
analog transmissions is basically the speed of light, legacy serial latency of analog transmissions is basically the speed of light,
links are usually slow (in the order of Kbps) compared to, say, GigE, legacy serial links are usually slow (in the order of Kbps) compared
and some latency is usually acceptable. What is not acceptable is to, say, GigE, and some latency is usually acceptable. What is not
the introduction of excessive jitter, which may, for instance, affect acceptable is the introduction of excessive jitter, which may, for
the stability of control systems. instance, affect the stability of control systems.
Applications that are designed to operate on serial links usually do Applications that are designed to operate on serial links usually do
not provide services to recover the jitter, because jitter simply not provide services to recover the jitter, because jitter simply
does not exists there. Streams of information are expected to be does not exist there. DetNet flows are generally expected to be
delivered in-order and the precise time of reception influences the delivered in-order and the precise time of reception influences the
processes. In order to converge such existing applications, there is processes. In order to converge such existing applications, there is
a desire to emulate all properties of the serial cable, such as clock a desire to emulate all properties of the serial cable, such as clock
transportation, perfect flow isolation and fixed latency. While transportation, perfect flow isolation and fixed latency. While
minimal jitter (in the form of specifying minimum, as well as minimal jitter (in the form of specifying minimum, as well as
maximum, end-to-end latency) is supported by DetNet, there are maximum, end-to-end latency) is supported by DetNet, there are
practical limitations on packet-based networks in this regard. In practical limitations on packet-based networks in this regard. In
general, users are encouraged to use, instead of, "do this when you general, users are encouraged to use, instead of, "do this when you
get the packet," a combination of: get the packet," a combination of:
o Sub-microsecond time synchronization among all source and o Sub-microsecond time synchronization among all source and
destination end systems, and destination end systems, and
o Time-of-execution fields in the application packets. o Time-of-execution fields in the application packets.
Jitter reduction is provided by the mechanisms described in Jitter reduction is provided by the mechanisms described in
Section 4.5 that also provide congestion protection. Section 4.5 that also provide congestion protection.
3.2.4. Packet Replication and Elimination 3.2.2. Service Protection
After congestion loss has been eliminated, the most important causes Service protection aims to mitigate or eliminate packet loss due to
of packet loss are random media and/or memory faults, and equipment equipment failures, random media and/or memory faults. These types
failures. Both causes of packet loss can be greatly reduced by of packet loss can be greatly reduced by spreading the data over
spreading the data in a packet over multiple transmissions. One such multiple disjoint forwarding paths. Various service protection
method for service protection is described in this section, which methods are described in [RFC6372], e.g., 1+1 linear protection.
sends the same packets over multiple paths. This section describes the functional details of an additional method
in Section 3.2.2.2, which can be implemented as described in
Section 3.2.2.3 or as specified in [I-D.ietf-detnet-dp-sol-mpls] in
order to provide 1+n hitless protection. The appropriate service
protection mechanism depends on the scenario and the requirements.
Packet replication and elimination, also known as seamless redundancy 3.2.2.1. In-Order Delivery
[HSR-PRP], or 1+1 hitless protection, is a function of the DetNet
service layer. It involves three capabilities:
o Providing sequencing information, once, at or near the source, to Out-of-order packet delivery can be a side effect of service
the packets of a DetNet compound flow. This may be done by adding protection. Packets delivered out-of-order impact the amount of
a sequence number or time stamp as part of DetNet, or may be buffering needed at the destination to properly process the received
inherent in the packet, e.g. in a transport protocol, or data. Such packets also influence the jitter of a flow. The DetNet
associated to other physical properties such as the precise time service includes maximum allowed misordering as a constraint. Zero
(and radio channel) of reception of the packet. Section 3.2.2. misordering would be a valid service constraint to reflect that the
end system(s) of the flow cannot tolerate any out-of-order delivery.
Service protection may provide a mechanism to support in-order
delivery.
o Replicating these packets into multiple DetNet member flows and, 3.2.2.2. Packet Replication and Elimination
typically, sending them along at least two different paths to the
destination(s), e.g. over the explicit routes of
o Eliminating duplicated packets. This may be done at any step This section describes a service protection method that sends copies
along the path to save network resources further down, in of the same packets over multiple paths.
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.
This function is a "hitless" version of, e.g., the 1+1 linear The DetNet service layer includes the packet replication (PRF), the
protection in [RFC6372]. That is, instead of switching from one flow packet elimination (PEF), and the packet ordering functionality (POF)
to the other when a failure of a flow is detected, DetNet combines for use in DetNet edge, relay node, and end system packet processing.
both flows, and performs a packet-by-packet selection of which to Either of these functions can be enabled in a DetNet edge node, relay
discard, based on sequence number. node or end system. The collective name for all three functions is
PREOF. The packet replication and elimination service protection
method altogether involves four capabilities:
o Providing sequencing information 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 may be inherent in the packet,
e.g., in a transport 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.
o The Packet Replication Function (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 of Section 3.2.3. The location within a node, and
the mechanism used for the PRF is implementation specific.
o The Packet Elimination Function (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 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 node, and
mechanism used for the PEF is implementation specific.
o The Packet Ordering Function (POF) uses the sequencing information
to re-order a DetNet flow's packets that are received out of
order.
The order in which a node applies PEF, POF, and PRF to a DetNet flow
is implementation specific.
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 replicating each packet in a In the simplest case, this amounts to replicating each packet in a
source that has two interfaces, and conveying them through the source that has two interfaces, and conveying them through the
network, along separate paths, to the similarly dual-homed network, along separate (disjoint non-SRLG) paths, to the similarly
destinations, that discard the extras. This ensures that one path dual-homed destinations, that discard the extras. This ensures that
(with zero congestion loss) remains, even if some intermediate node one path (with zero congestion loss) remains, even if some
fails. The sequence numbers can also be used for loss detection and intermediate node fails. The sequencing information can also be used
for re-ordering. for loss detection and for re-ordering.
Detnet relay nodes in the network can provide replication and DetNet relay nodes in the network can provide replication and
elimination facilities at various points in the network, so that elimination facilities at various points in the network, so that
multiple failures can be accommodated. multiple failures can be accommodated.
This is shown in the following figure, where the two relay nodes each This is shown in Figure 1, where the two relay nodes each replicate
replicate (R) the DetNet flow on input, sending the DetNet member (R) the DetNet flow on input, sending the DetNet member flows to both
flows to both the other relay node and to the end system, and the other relay node and to the end system, and eliminate duplicates
eliminate duplicates (E) on the output interface to the right-hand (E) on the output interface to the right-hand end system. Any one
end system. Any one link in the network can fail, and the Detnet link in the network can fail, and the DetNet compound flow can still
compound flow can still get through. Furthermore, two links can get through. Furthermore, two links can fail, as long as they are in
fail, as long as they are in different segments of the network. different segments of the network.
Packet replication and elimination
> > > > > > > > > relay > > > > > > > > > > > > > > > > > relay > > > > > > > >
> /------------+ R node E +------------\ > > /------------+ R node E +------------\ >
> / v + ^ \ > > / v + ^ \ >
end R + v | ^ + E end end R + v | ^ + E end
system + v | ^ + system system + v | ^ + system
> \ v + ^ / > > \ v + ^ / >
> \------------+ R relay E +-----------/ > > \------------+ R relay E +-----------/ >
> > > > > > > > > node > > > > > > > > > > > > > > > > > node > > > > > > > >
Figure 1 Figure 1: Packet replication and elimination
Packet replication and elimination does not react to and correct Packet replication and elimination does not react to and correct
failures; it is entirely passive. Thus, intermittent failures, failures; it is entirely passive. Thus, intermittent failures,
mistakenly created packet filters, or misrouted data is handled just mistakenly created packet filters, or misrouted data is handled just
the same as the equipment failures that are detected handled by the same as the equipment failures that are handled by typical
typical routing and bridging protocols. routing and bridging protocols.
If packet replication and elimination is used over paths providing If packet replication and elimination is used over paths providing
congestion protection (Section 3.2.1), and member flows that take congestion protection (Section 3.2.1), and member flows that take
different-length paths through the network are combined, a merge different-length paths through the network are combined, a merge
point may require extra buffering to equalize the delays over the point may require extra buffering to equalize the delays over the
different paths. This equalization ensures that the resultant different paths. This equalization ensures that the resultant
compound flow will not exceed its contracted bandwidth even after one compound flow will not exceed its contracted bandwidth even after one
or the other of the paths is restored after a failure. or the other of the paths is restored after a failure. The extra
buffering can be also used to provide in-order delivery.
3.2.5. Packet encoding for service protection 3.2.2.3. Packet encoding for service protection
There are methods for using multiple paths to provide service There are methods for using multiple paths to provide service
protection that involve encoding the information in a packet protection that involve encoding the information in a packet
belonging to a DetNet flow into multiple transmission units, belonging to a DetNet flow into multiple transmission units,
combining information from multiple packets into any given combining information from multiple packets into any given
transmission unit. Such techniques, also known as "network coding", transmission unit. Such techniques, also known as "network coding",
can be used as a DetNet service protection technique. 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 defined, e.g., by [RFC6372] do 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 or chains 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 than 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 immediately, and likely not at all, in response to
network topology events. Service protection (Section 3.2.2 or
Section 3.2.2.3) over explicit routes provides a high likelihood of
continuous connectivity. Explicit routes can be established various
ways, e.g., with RSVP-TE [RFC3209], with Segment Routing (SR)
[I-D.ietf-spring-segment-routing], via a Software Defined Networking
approach [RFC7426], with IS-IS [RFC7813], etc. Explicit routes are
typically used in MPLS TE 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, 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, DetNet
service includes maximum allowed 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 3.3. Secondary goals for DetNet
Many applications require DetNet to provide additional services, Many applications require DetNet to provide additional services,
including coesistence with other QoS mechanisms Section 3.3.1 and including coexistence with other QoS mechanisms Section 3.3.1 and
protection against misbehaving transmitters Section 3.3.2. protection against misbehaving transmitters Section 3.3.2.
3.3.1. Coexistence with normal traffic 3.3.1. Coexistence with normal traffic
A DetNet network supports the dedication of a high proportion (e.g. A DetNet network supports the dedication of a high proportion (e.g.
75%) of the network bandwidth to DetNet flows. But, no matter how 75%) 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 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 with existing Class of Service schemes (e.g., DiffServ). It is also
important that non-DetNet traffic not disrupt the DetNet flow, of important that non-DetNet traffic not disrupt the DetNet flow, of
course (see Section 3.3.2 and Section 5). For these reasons: course (see Section 3.3.2 and Section 5). For these reasons:
o Bandwidth (transmission opportunities) not utilized by a DetNet o Bandwidth (transmission opportunities) not utilized by a DetNet
flow are available to non-DetNet packets (though not to other flow are available to non-DetNet packets (though not to other
DetNet flows). DetNet flows).
o DetNet flows can be shaped or scheduled, in order to ensure that o DetNet flows can be shaped or scheduled, in order to ensure that
the highest-priority non-DetNet packet also is ensured a worst- the highest-priority non-DetNet packet is also ensured a worst-
case latency (at any given hop). case latency (at any given hop).
o When transmission opportunities for DetNet flows are scheduled in o When transmission opportunities for DetNet flows are scheduled in
detail, then the algorithm constructing the schedule should leave detail, then the algorithm constructing the schedule should leave
sufficient opportunities for non-DetNet packets to satisfy the sufficient opportunities for non-DetNet packets to satisfy the
needs of the users of the network. Detailed scheduling can also needs of the users of the network. Detailed scheduling can also
permit the time-shared use of buffer resources by different DetNet permit the time-shared use of buffer resources by different DetNet
flows. flows.
Ideally, the net effect of the presence of DetNet flows in a network Ideally, the net effect of the presence of DetNet flows in a network
on the non-DetNet packets is primarily a reduction in the available on the non-DetNet packets is primarily a reduction in the available
bandwidth. bandwidth.
3.3.2. Fault Mitigation 3.3.2. Fault Mitigation
One key to building robust real-time systems is to reduce the One key to building robust real-time systems is to reduce the
infinite variety of possible failures to a number that can be infinite variety of possible failures to a number that can be
analyzed with reasonable confidence. DetNet aids in the process by analyzed with reasonable confidence. DetNet aids in the process by
providing filters and policers to detect DetNet packets received on allowing for filters and policers to detect DetNet packets received
the wrong interface, or at the wrong time, or in too great a volume, on the wrong interface, or at the wrong time, or in too great a
and to then take actions such as discarding the offending packet, volume, and to then take actions such as discarding the offending
shutting down the offending DetNet flow, or shutting down the packet, shutting down the offending DetNet flow, or shutting down the
offending interface. offending interface.
It is also essential that filters and service remarking be employed It is also essential that filters and service remarking be employed
at the network edge to prevent non-DetNet packets from being mistaken at the network edge to prevent non-DetNet packets from being mistaken
for DetNet packets, and thus impinging on the resources allocated to for DetNet packets, and thus impinging on the resources allocated to
DetNet packets. DetNet packets.
There exist techniques, at present and/or in various stages of There exist techniques, at present and/or in various stages of
standardization, that can perform these fault mitigation tasks that standardization, that can perform these fault mitigation tasks that
deliver a high probability that misbehaving systems will have zero deliver a high probability that misbehaving systems will have zero
skipping to change at page 14, line 25 skipping to change at page 16, line 14
4. DetNet Architecture 4. DetNet Architecture
4.1. DetNet stack model 4.1. DetNet stack model
4.1.1. Representative Protocol Stack Model 4.1.1. Representative Protocol Stack Model
Figure 2 illustrates a conceptual DetNet data plane layering model. Figure 2 illustrates a conceptual DetNet data plane layering model.
One may compare it to that in [IEEE802.1CB], Annex C. One may compare it to that in [IEEE802.1CB], Annex C.
DetNet data plane protocol stack
| packets going | ^ packets coming ^ | packets going | ^ packets coming ^
v down the stack v | up the stack | v down the stack v | up the stack |
+----------------------+ +-----------------------+ +----------------------+ +-----------------------+
| Source | | Destination | | Source | | Destination |
+----------------------+ +-----------------------+ +----------------------+ +-----------------------+
| Service layer | | Service layer | | Service layer: | | Service layer: |
| Packet sequencing | | Duplicate elimination | | Packet sequencing | | Duplicate elimination |
| Flow duplication | | Flow merging | | Flow replication | | Flow merging |
| Packet encoding | | Packet decoding | | Packet encoding | | Packet decoding |
+----------------------+ +-----------------------+ +----------------------+ +-----------------------+
| Transport layer | | Transport layer | | Transport layer: | | Transport layer: |
| Congestion prot. | | Congestion prot. | | Congestion prot. | | Congestion prot. |
| Explicit routes | | Explicit routes |
+----------------------+ +-----------------------+ +----------------------+ +-----------------------+
| Lower layers | | Lower layers | | Lower layers | | Lower layers |
+----------------------+ +-----------------------+ +----------------------+ +-----------------------+
v ^ v ^
\_________________________/ \_________________________/
Figure 2 Figure 2: DetNet data plane protocol stack
Not all layers are required for any given application, or even for Not all layers are required for any given application, or even for
any given network. The layers are, from top to bottom: any given network. The functionality shown in Figure 2 is:
Application Application
Shown as "source" and "destination" in the diagram. Shown as "source" and "destination" in the diagram.
OAM
Operations, Administration, and Maintenance leverages in-band
and out-of-and 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 to find whether a packet is a replica,
which relay node performed the replication, and which segment
was intended for the replica.
Packet sequencing Packet sequencing
As part of DetNet service protection, supplies the sequence As part of DetNet service protection, supplies the sequence
number for packet replication and elimination number for packet replication and elimination
(Section 3.2.4). Peers with Duplicate elimination. This (Section 3.2.2). Peers with Duplicate elimination. This
layer is not needed if a higher-layer transport protocol is layer is not needed if a higher-layer transport protocol is
expected to perform any packet sequencing and duplicate expected to perform any packet sequencing and duplicate
elimination required by the DetNet flow duplication. elimination required by the DetNet flow replication.
Duplicate elimination Duplicate elimination
As part of the DetNet service layer, based on the sequenced As part of the DetNet service layer, based on the sequenced
number supplied by its peer, packet sequencing, Duplicate number supplied by its peer, packet sequencing, Duplicate
elimination discards any duplicate packets generated by elimination discards any duplicate packets generated by
DetNet flow duplication. It can operate on member flows, DetNet flow replication. It can operate on member flows,
compound flows, or both. The duplication may also be compound flows, or both. The replication may also be
inferred from other information such as the precise time of inferred from other information such as the precise time of
reception in a scheduled network. The duplicate elimination reception in a scheduled network. The duplicate elimination
layer may also perform resequencing of packets to restore layer may also perform resequencing of packets to restore
packet order in a flow that was disrupted by the loss of packet order in a flow that was disrupted by the loss of
packets on one or another of the multiple paths taken. packets on one or another of the multiple paths taken.
Flow duplication Flow replication
As part of DetNet service protection, packets that belong to As part of DetNet service protection, packets that belong to
a DetNet compound flow are replicated into two or more DetNet a DetNet compound flow are replicated into two or more DetNet
member flows. This function is separate from packet member flows. This function is separate from packet
sequencing. Flow duplication can be an explicit duplication sequencing. Flow replication can be an explicit replication
and remarking of packets, or can be performed by, for and remarking of packets, or can be performed by, for
example, techniques similar to ordinary multicast example, techniques similar to ordinary multicast
replication. Peers with DetNet flow merging. replication, albeit with resource allocation implications.
Peers with DetNet flow merging.
Network flow merging Flow merging
As part of DetNet service protection, merges DetNet member As part of DetNet service protection, merges DetNet member
flows together for packets coming up the stack belonging to a flows together for packets coming up the stack belonging to a
specific DetNet compound flow. Peers with DetNet flow specific DetNet compound flow. Peers with DetNet flow
duplication. DetNet flow merging, together with packet replication. DetNet flow merging, together with packet
sequencing, duplicate elimination, and DetNet flow sequencing, duplicate elimination, and DetNet flow
duplication, performs packet replication and elimination replication perform packet replication and elimination
(Section 3.2.4). (Section 3.2.2).
Packet encoding Packet encoding
As part of DetNet service protection, as an alternative to As part of DetNet service protection, as an alternative to
packet sequencing and flow duplication, packet encoding packet sequencing and flow replication, packet encoding
combines the information in multiple DetNet packets, perhaps combines the information in multiple DetNet packets, perhaps
from different DetNet compound flows, and transmits that from different DetNet compound flows, and transmits that
information in packets on different DetNet member Flows. information in packets on different DetNet member Flows.
Peers with Packet decoding. Peers with Packet decoding.
Packet decoding Packet decoding
As part of DetNet service protection, as an alternative to As part of DetNet service protection, as an alternative to
flow merging and duplicate elimination, packet decoding takes flow merging and duplicate elimination, packet decoding takes
packets from different DetNet member flows, and computes from packets from different DetNet member flows, and computes from
those packets the original DetNet packets from the compound those packets the original DetNet packets from the compound
flows input to packet encoding. Peers with Packet encoding. flows input to packet encoding. Peers with Packet encoding.
Congestion protection Congestion protection
The DetNet transport layer provides congestion protection. The DetNet transport layer provides congestion protection.
See Section 4.5. The actual queuing and shaping mechanisms See Section 4.5. The actual queuing and shaping mechanisms
are typically provided by underlying subnet layers, but since are typically provided by underlying subnet layers, these can
these are can be closely associated with the means of be closely associated with the means of providing paths for
providing paths for DetNet flows (e.g. MPLS LSPs or {VLAN, DetNet flows (e.g., MPLS LSPs or bridged paths), the path and
multicast destination MAC address} pairs), the path and the the congestion protection are conflated in this figure.
congestion protection are conflated in this figure.
The packet sequencing and duplication elimination functions at the Explicit routes
The DetNet transport layer provides mechanisms to ensure that
fixed paths are provided for DetNet flows. These explicit
paths avoid the impact of network convergence.
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 to find whether a
packet is a replica, which relay node performed the replication, and
which segment was intended for the replica.
The packet sequencing and replication elimination functions at the
source and destination ends of a DetNet compound flow may be source and destination ends of a DetNet compound flow may be
performed either in the end system or in a DetNet edge node. The performed either in the end system or in a DetNet relay node.
reader must not confuse a DetNet edge function with other kinds of
edge functions, e.g. an Label Edge Router, although the two functions
may be performed together. The DetNet edge function is concerned
with sequencing packets belonging to DetNet flows. The LER with
encapsulating/decapsulating packets for transport, and is considered
part of the network underlying the DetNet transport layer.
4.1.2. DetNet Data Plane Overview 4.1.2. DetNet Data Plane Overview
A "Deterministic Network" will be composed of DetNet enabled nodes A "Deterministic Network" will be composed of DetNet enabled end
i.e., End Systems, Edge Nodes, Relay Nodes and collectively deliver systems and nodes, i.e., edge nodes, relay nodes and collectively
DetNet services. DetNet enabled nodes are interconnected via Transit deliver DetNet services. DetNet enabled nodes are interconnected via
Nodes (i.e., routers) which support DetNet, but are not DetNet transit nodes (e.g., LSRs) which support DetNet, but are not DetNet
service aware. Transit nodes see DetNet nodes as end points. All service aware. All DetNet enabled nodes are connected to sub-
DetNet enabled nodes are connect to sub-networks, where a point-to- networks, where a point-to-point link is also considered as a simple
point link is also considered as a simple sub-network. These sub- sub-network. These sub-networks will provide DetNet compatible
networks will provide DetNet compatible service for support of DetNet service for support of DetNet traffic. Examples of sub-networks
traffic. Examples of sub-networks include IEEE 802.1 TSN and OTN. include MPLS TE, IEEE 802.1 TSN and OTN. Of course, multi-layer
Of course, multi-layer DetNet systems may also be possible, where one DetNet systems may also be possible, where one DetNet appears as a
DetNet appears as a sub-network, and provides service to, a higher sub-network, and provides service to, a higher layer DetNet system.
layer DetNet system. A simple DetNet concept network is shown in A simple DetNet concept network is shown in Figure 3.
Figure 3.
TSN Edge Transit Relay DetNet TSN Edge Transit Relay DetNet
End System Node Node Node End System End System Node Node Node End System
+---------+ +.........+ +---------+ +---------+ +.........+ +---------+
| Appl. |<---:Svc Proxy:-- End to End Service ---------->| Appl. | | Appl. |<--:Svc Proxy:-- End to End Service ---------->| Appl. |
+---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+ +---------+
| TSN | |TSN| |Svc|<-- DetNet flow ---: Service :-->| Service | | TSN | |TSN| |Svc|<-- DetNet flow ---: Service :-->| Service |
+---------+ +---+ +---+ +---------+ +---------+ +---------+ +---------+ +---+ +---+ +---------+ +---------+ +---------+
|Transport| |Trp| |Trp| |Transport| |Trp| |Trp| |Transport| |Transport| |Trp| |Trp| |Transport| |Trp| |Trp| |Transport|
+-------.-+ +-.-+ +-.-+ +--.----.-+ +-.-+ +-.-+ +---.-----+ +-------.-+ +-.-+ +-.-+ +--.----.-+ +-.-+ +-.-+ +---.-----+
: Link : / ,-----. \ : Link : / ,-----. \ : Link : / ,-----. \ : Link : / ,-----. \
+........+ +-[ Sub ]-+ +........+ +-[ Sub ]-+ +.......+ +-[ Sub ]-+ +........+ +-[ Sub ]-+
[Network] [Network] [Network] [Network]
`-----' `-----' `-----' `-----'
Figure 3: A Simple DetNet Enabled Network Figure 3: A Simple DetNet Enabled Network
Distinguishing the function of these two DetNet data plane layers, Distinguishing the function of two DetNet data plane layers, the
the DetNet service layer and the DetNet transport layer, helps to DetNet service layer and the DetNet transport layer, helps to explore
explore and evaluate various combinations of the data plane solutions and evaluate various combinations of the data plane solutions
available. This separation of DetNet layers, while helpful, should available, some are illustrated in Figure 4. This separation of
not be considered as formal requirement. For example, some DetNet layers, while helpful, should not be considered as formal
technologies may violate these strict layers and still be able to requirement. For example, some technologies may violate these strict
deliver a DetNet service. layers and still be able to deliver a DetNet service.
. .
. .
+-----------+ +-----------+
| Service | PW, RTP/(UDP), GRE | Service | PW, UDP, GRE
+-----------+ +-----------+
| Transport | (UDP)/IPv6, (UDP)/IPv4, MPLS LSPs, BIER | Transport | IPv6, IPv4, MPLS TE LSPs, MPLS SR
+-----------+ +-----------+
. .
. .
Figure 4: DetNet adaptation to data plane Figure 4: DetNet adaptation to data plane
In some networking scenarios, the end system initially provides a In some networking scenarios, the end system initially provides a
DetNet flow encapsulation, which contains all information needed by DetNet flow encapsulation, which contains all information needed by
DetNet nodes (e.g., Real-time Transport Protocol (RTP) [RFC3550] DetNet nodes (e.g., Real-time Transport Protocol (RTP) [RFC3550]
based DetNet flow transported over a native UDP/IP network or based DetNet flow transported over a native UDP/IP network or
PseudoWire). In other scenarios, the encapsulation formats might PseudoWire). In other scenarios, the encapsulation formats might
differ significantly. As an example, a CPRI "application's" I/Q data differ significantly.
mapped directly to Ethernet frames may have to be transported over an
MPLS-based packet switched network (PSN).
There are many valid options to create a data plane solution for There are many valid options to create a data plane solution for
DetNet traffic by selecting a technology approach for the DetNet DetNet traffic by selecting a technology approach for the DetNet
service layer and also selecting a technology approach for the DetNet service layer and also selecting a technology approach for the DetNet
transport layer. There are a high number of valid combinations. transport layer. There are a high number of valid combinations.
One of the most fundamental differences between different potential One of the most fundamental differences between different potential
data plane options is the basic addressing and headers used by DetNet data plane options is the basic headers used by DetNet nodes. For
end systems. For example, is the basic service a Layer 2 (e.g., example, the basic service can be delivered based on an MPLS label or
Ethernet) or Layer 3 (i.e., IP) service. This decision impacts how an IP header. This decision impacts the basic forwarding logic for
DetNet end systems are addressed, and the basic forwarding logic for the DetNet service layer. Note that in both cases, IP addresses are
the DetNet service layer. used to address DetNet nodes. The selected DetNet transport layer
technology also needs to be mapped to the sub-net technology used to
interconnect DetNet nodes. For example, DetNet flows will need to be
mapped to TSN Streams.
4.1.3. Network reference model 4.1.3. Network reference model
The figure below shows another view of the DetNet service related Figure 5 shows another view of the DetNet service related reference
reference points and main components (Figure 5). points and main components.
DetNet DetNet DetNet DetNet
end system end system end system end system
_ _ _ _
/ \ +----DetNet-UNI (U) / \ / \ +----DetNet-UNI (U) / \
/App\ | /App\ /App\ | /App\
/-----\ | /-----\ /-----\ | /-----\
| NIC | v ________ | NIC | | NIC | v ________ | NIC |
+--+--+ _____ / \ DetNet-UNI (U) --+ +--+--+ +--+--+ _____ / \ DetNet-UNI (U) --+ +--+--+
| / \__/ \ | | | / \__/ \ | |
| / +----+ +----+ \_____ | | | / +----+ +----+ \_____ | |
| / | | | | \_______ | | | / | | | | \_______ | |
+------U PE +----+ P +----+ \ _ v | +------U PE +----+ P +----+ \ _ v |
| | | | | | | ___/ \ | | | | | | | | ___/ \ |
| +--+-+ +----+ | +----+ | / \_ | | +--+-+ +----+ | +----+ | / \_ |
\ | | | | | / \ | \ | | | | | / \ |
\ | +----+ +--+-+ +--+PE |-------- U------+ \ | +----+ +--+-+ +--+PE |------ U-----+
\ | | | | | | | | | \_ _/ \ | | | | | | | | | \_ _/
\ +---+ P +----+ P +--+ +----+ | \____/ \ +---+ P +----+ P +--+ +----+ | \____/
\___ | | | | / \___ | | | | /
\ +----+__ +----+ DetNet-1 DetNet-2 \ +----+__ +----+ DetNet-1 DetNet-2
| \_____/ \___________/ | | \_____/ \___________/ |
| | | |
| | End-to-End-Service | | | | | | End-to-End-Service | | | |
<----------------------------------------------------------------> <------------------------------------------------------------->
| | DetNet-Service | | | | | | DetNet-Service | | | |
| <--------------------------------------------------> | | <------------------------------------------------> |
| | | | | | | | | | | |
Figure 5: DetNet Service Reference Model (multi-domain) Figure 5: DetNet Service Reference Model (multi-domain)
DetNet-UNIs ("U" in Figure 5) are assumed in this document to be DetNet-UNIs ("U" in Figure 5) are assumed in this document to be
packet-based reference points and provide connectivity over the packet-based reference points and provide connectivity over the
packet network. A DetNet-UNI may provide multiple functions, e.g., packet network. A DetNet-UNI may provide multiple functions, e.g.,
it may add networking technology specific encapsulation to the DetNet it may add networking technology specific encapsulation to the DetNet
flows if necessary; it may provide status of the availability of the flows if necessary; it may provide status of the availability of the
connection associated to a reservation; it may provide a resources associated with a reservation; it may provide a
synchronization service for the end system; it may carry enough synchronization service for the end system; it may carry enough
signaling to place the reservation in a network without a controller, signaling to place the reservation in a network without a controller,
or if the controller only deals with the network but not the end or if the controller only deals with the network but not the end
points. Internal reference points of end systems (between the systems. Internal reference points of end systems (between the
application and the NIC) are more challenging from control application and the NIC) are more challenging from control
perspective and they may have extra requirements (e.g., in-order perspective and they may have extra requirements (e.g., in-order
delivery is expected in end system internal reference points, whereas delivery is expected in end system internal reference points, whereas
it is considered optional over the DetNet-UNI), therefore not covered it is considered optional over the DetNet-UNI).
in this document.
4.2. DetNet systems 4.2. DetNet systems
4.2.1. End system 4.2.1. End system
The native data flow between the source/destination end systems is The native data flow between the source/destination end systems is
referred to as application-flow (App-flow). The traffic referred to as application-flow (App-flow). The traffic
characteristics of an App-flow can be CBR (constant bit rate) or VBR characteristics of an App-flow can be CBR (constant bit rate) or VBR
(variable bit rate) and can have L1 or L2 or L3 encapsulation (e.g., (variable bit rate) and can have L1 or L2 or L3 encapsulation (e.g.,
TDM (time-division multiplexing), Ethernet, IP). These TDM (time-division multiplexing), Ethernet, IP). These
characteristics are considered as input for resource reservation and characteristics are considered as input for resource reservation and
might be simplified to ensure determinism during transport (e.g., might be simplified to ensure determinism during transport (e.g.,
making reservations for the peak rate of VBR traffic, etc.). making reservations for the peak rate of VBR traffic, etc.).
An end system may or may not be DetNet transport layer aware or An end system may or may not be DetNet transport layer aware or
DetNet service layer aware. That is, an end system may or may not DetNet service layer aware. That is, an end system may or may not
contain DetNet specific functionality. End systems with DetNet contain DetNet specific functionality. End systems with DetNet
functionalities may have the same or different transport layer as the functionalities may have the same or different transport layer as the
connected DetNet domain. Grouping of end systems are shown in connected DetNet domain. Categorization of end systems are shown in
Figure 6. Figure 6.
End system End system
| |
| |
| DetNet aware ? | DetNet aware ?
/ \ / \
+------< >------+ +------< >------+
NO | \ / | YES NO | \ / | YES
| v | | v |
skipping to change at page 20, line 29 skipping to change at page 22, line 29
t-aware | \ / | s-aware t-aware | \ / | s-aware
| v | | v |
| | both | | | both |
| | | | | |
DetNet t-aware | DetNet s-aware DetNet t-aware | DetNet s-aware
End system | End system End system | End system
v v
DetNet st-aware DetNet st-aware
End system End system
Figure 6: Grouping of end systems Figure 6: Categorization of end systems
Note some known use cases for end systems: Note some known use case examples for end systems:
o DetNet unaware: The classic case requiring network proxies. o DetNet unaware: The classic case requiring service proxies.
o DetNet t-aware: An extant TSN system. It knows about some TSN o DetNet t-aware: An extant TSN system. It knows about some TSN
functions (e.g., reservation), but not about replication/ functions (e.g., reservation), but not about service protection.
elimination.
o DetNet s-aware: An extant IEC 62439-3 system. It supplies o DetNet s-aware: An extant IEC 62439-3 system. It supplies
sequence numbers, but doesn't know about zero congestion loss. sequence numbers, but doesn't know about zero congestion loss.
o DetNet st-aware: A full functioning DetNet end station, it has o DetNet st-aware: A full functioning DetNet end system, it has
DetNet functionalities and usually the same forwarding paradigm as DetNet functionalities and usually the same forwarding paradigm as
the connected DetNet domain. It can be treated as an integral the connected DetNet domain. It can be treated as an integral
part of the DetNet domain . part of the DetNet domain.
4.2.2. DetNet edge, relay, and transit nodes 4.2.2. DetNet edge, relay, and transit nodes
As shown in Figure 3, DetNet edge nodes providing proxy service and As shown in Figure 3, DetNet edge nodes providing proxy service and
DetNet relay nodes providing the DetNet service layer are DetNet- DetNet relay nodes providing the DetNet service layer are DetNet-
aware, and DetNet transit nodes need only be aware of the DetNet aware, and DetNet transit nodes need only be aware of the DetNet
transport layer. transport layer.
In general, if a DetNet flow passes through one or more DetNet- In general, if a DetNet flow passes through one or more DetNet-
unaware network node between two DetNet nodes providing the DetNet unaware network nodes between two DetNet nodes providing the DetNet
transport layer for that flow, there is a potential for disruption or transport layer for that flow, there is a potential for disruption or
failure of the DetNet QoS. A network administrator needs to ensure failure of the DetNet QoS. A network administrator needs to ensure
that the DetNet-unaware network nodes are configured to minimize the that the DetNet-unaware network nodes are configured to minimize the
chances of packet loss and delay, and provision enough exra buffer chances of packet loss and delay, and provision enough extra buffer
space in the DetNet transit node following the DetNet-unaware network space in the DetNet transit node following the DetNet-unaware network
nodes to absorb the induced latency variations. nodes to absorb the induced latency variations.
4.3. DetNet flows 4.3. DetNet flows
4.3.1. DetNet flow types 4.3.1. DetNet flow types
A DetNet flow can have different formats during while it is A DetNet flow can have different formats while it is transported
transported between the peer end systems. Therefore, the following between the peer end systems. Therefore, the following possible
possible types / formats of a DetNet flow are distinguished in this types / formats of a DetNet flow are distinguished in this document:
document:
o App-flow: native format of a DetNet flow. It does not contain any o App-flow: native format of the data carried over a DetNet flow.
DetNet related attributes. It does not contain any DetNet related attributes.
o DetNet-t-flow: specific format of a DetNet flow. Only requires o DetNet-t-flow: specific format of a DetNet flow. Only requires
the congestion / latency features provided by the Detnet transport the congestion / latency features provided by the DetNet transport
layer. layer.
o DetNet-s-flow: specific format of a DetNet flow. Only requires o DetNet-s-flow: specific format of a DetNet flow. Only requires
the replication/elimination feature ensured by the DetNet service the service protection feature ensured by the DetNet service
layer. layer.
o DetNet-st-flow: specific format of a DetNet flow. It requires o DetNet-st-flow: specific format of a DetNet flow. It requires
both DetNet service layer and DetNet transport layer functions both DetNet service layer and DetNet transport layer functions
during forwarding. during forwarding.
4.3.2. Source guarantees 4.3.2. Source transmission behavior
For the purposes of congestion protection, DetNet flows can be For the purposes of congestion protection, DetNet flows can be
synchronous or asynchronous. In synchronous DetNet flows, at least synchronous or asynchronous. In synchronous DetNet flows, at least
the intermediate nodes (and possibly the end systems) are closely the intermediate nodes (and possibly the end systems) are closely
time synchronized, typically to better than 1 microsecond. By time synchronized, typically to better than 1 microsecond. By
transmitting packets from different DetNet flows or classes of DetNet transmitting packets from different DetNet flows or classes of DetNet
flows at different times, using repeating schedules synchronized flows at different times, using repeating schedules synchronized
among the intermediate nodes, resources such as buffers and link among the intermediate nodes, resources such as buffers and link
bandwidth can be shared over the time domain among different DetNet bandwidth can be shared over the time domain among different DetNet
flows. There is a tradeoff among techniques for synchronous DetNet flows. There is a tradeoff among techniques for synchronous DetNet
skipping to change at page 22, line 22 skipping to change at page 24, line 19
o An observation interval; and o An observation interval; and
o A maximum number of transmissions during that observation o A maximum number of transmissions during that observation
interval. interval.
These parameters, together with knowledge of the protocol stack used These parameters, together with knowledge of the protocol stack used
(and thus the size of the various headers added to a packet), limit (and thus the size of the various headers added to a packet), limit
the number of bit times per observation interval that the DetNet flow the number of bit times per observation interval that the DetNet flow
can occupy the physical medium. can occupy the physical medium.
The source promises that these limits will not be exceeded. If the The source is required not to exceed these limits in order to obtain
source transmits less data than this limit allows, the unused DetNet service. If the source transmits less data than this limit
resources such as link bandwidth can be made available by the system allows, the unused resource such as link bandwidth can be made
to non-DetNet packets. However, making those resources available to available by the system to non-DetNet packets. However, making those
DetNet packets in other DetNet flows would serve no purpose. Those resources available to DetNet packets in other DetNet flows would
other DetNet flows have their own dedicated resources, on the serve no purpose. Those other DetNet flows have their own dedicated
assumption that all DetNet flows can use all of their resources over resources, on the assumption that all DetNet flows can use all of
a long period of time. their resources over a long period of time.
There is no provision in DetNet for throttling DetNet flows (reducing There is no provision in DetNet for throttling DetNet flows (reducing
the transmission rate via feedback); the assumption is that a DetNet end-to-end transmission rate via any explicit congestion
flow, to be useful, must be delivered in its entirety. That is, notification); the assumption is that a DetNet flow, to be useful,
while any useful application is written to expect a certain number of must be delivered in its entirety. That is, while any useful
lost packets, the real-time applications of interest to DetNet demand application is written to expect a certain number of lost packets,
that the loss of data due to the network is extraordinarily the real-time applications of interest to DetNet demand that the loss
infrequent. of data due to the network is an extraordinarily event.
Although DetNet strives to minimize the changes required of an Although DetNet strives to minimize the changes required of an
application to allow it to shift from a special-purpose digital application to allow it to shift from a special-purpose digital
network to an Internet Protocol network, one fundamental shift in the network to an Internet Protocol network, one fundamental shift in the
behavior of network applications is impossible to avoid: the behavior of network applications is impossible to avoid: the
reservation of resources before the application starts. In the first reservation of resources before the application starts. In the first
place, a network cannot deliver finite latency and practically zero place, a network cannot deliver finite latency and practically zero
packet loss to an arbitrarily high offered load. Secondly, achieving packet loss to an arbitrarily high offered load. Secondly, achieving
practically zero packet loss for unthrottled (though bandwidth practically zero packet loss for unthrottled (though bandwidth
limited) DetNet flows means that bridges and routers have to dedicate limited) DetNet flows means that bridges and routers have to dedicate
skipping to change at page 23, line 10 skipping to change at page 25, line 10
flows. The requirements of each reservation have to be translated flows. The requirements of each reservation have to be translated
into the parameters that control each system's queuing, shaping, and into the parameters that control each system's queuing, shaping, and
scheduling functions and delivered to the hosts, bridges, and scheduling functions and delivered to the hosts, bridges, and
routers. routers.
4.3.3. Incomplete Networks 4.3.3. Incomplete Networks
The presence in the network of transit nodes or subnets that are not The presence in the network of transit nodes or subnets that are not
fully capable of offering DetNet services complicates the ability of fully capable of offering DetNet services complicates the ability of
the intermediate nodes and/or controller to allocate resources, as the intermediate nodes and/or controller to allocate resources, as
extra buffering, and thus extra latency, must be allocated at points extra buffering must be allocated at points downstream from the non-
downstream from the non-DetNet intermediate node for a DetNet flow. DetNet intermediate node for a DetNet flow. This extra buffering may
increase latency and/or jitter.
4.4. Traffic Engineering for DetNet 4.4. Traffic Engineering for DetNet
Traffic Engineering Architecture and Signaling (TEAS) [TEAS] defines Traffic Engineering Architecture and Signaling (TEAS) [TEAS] defines
traffic-engineering architectures for generic applicability across traffic-engineering architectures for generic applicability across
packet and non-packet networks. From TEAS perspective, Traffic packet and non-packet networks. From a TEAS perspective, Traffic
Engineering (TE) refers to techniques that enable operators to Engineering (TE) refers to techniques that enable operators to
control how specific traffic flows are treated within their networks. control how specific traffic flows are treated within their networks.
Because if its very nature of establishing explicit optimized paths, Because if its very nature of establishing explicit optimized paths,
Deterministic Networking can be seen as a new, specialized branch of Deterministic Networking can be seen as a new, specialized branch of
Traffic Engineering, and inherits its architecture with a separation Traffic Engineering, and inherits its architecture with a separation
into planes. into planes.
The Deterministic Networking architecture is thus composed of three The Deterministic Networking architecture is thus composed of three
planes, a (User) Application Plane, a Controller Plane, and a Network planes, a (User) Application Plane, a Controller Plane, and a Network
skipping to change at page 24, line 13 skipping to change at page 26, line 13
nodes. nodes.
4.4.2. The Controller Plane 4.4.2. The Controller Plane
The Controller Plane corresponds to the aggregation of the Control The Controller Plane corresponds to the aggregation of the Control
and Management Planes in [RFC7426], though Common Control and and Management Planes in [RFC7426], though Common Control and
Measurement Plane (CCAMP) [CCAMP] makes an additional distinction Measurement Plane (CCAMP) [CCAMP] makes an additional distinction
between management and measurement. When the logical separation of between management and measurement. When the logical separation of
the Control, Measurement and other Management entities is not the Control, Measurement and other Management entities is not
relevant, the term Controller Plane is used for simplicity to relevant, the term Controller Plane is used for simplicity to
represent them all, and the term controller refers to any device represent them all, and the term controller plane entity (CPE) refers
operating in that plane, whether is it a Path Computation entity or a to any device operating in that plane, whether is it a Path
Network Management entity (NME). The Path Computation Element (PCE) Computation entity, or a Network Management entity (NME)), or a
[PCE] is a core element of a controller, in charge of computing distributed control plane. The Path Computation Element (PCE)
[RFC4655] is a core element of a controller, in charge of computing
Deterministic paths to be applied in the Network Plane. Deterministic paths to be applied in the Network Plane.
A (Northbound) Service Interface enables applications in the A (Northbound) Service Interface enables applications in the
Application Plane to communicate with the entities in the Controller Application Plane to communicate with the entities in the Controller
Plane. Plane as illustrated in Figure 7.
One or more PCE(s) collaborate to implement the requests from the FME One or more PCE(s) collaborate to implement the requests from the FME
as Per-Flow Per-Hop Behaviors installed in the intermediate nodes for as Per-Flow Per-Hop Behaviors installed in the intermediate nodes for
each individual flow. The PCEs place each flow along a deterministic each individual flow. The PCEs place each flow along a deterministic
sequence of intermediate nodes so as to respect per-flow constraints sequence of intermediate nodes so as to respect per-flow constraints
such as security and latency, and optimize the overall result for such as security and latency, and optimize the overall result for
metrics such as an abstract aggregated cost. The deterministic metrics such as an abstract aggregated cost. The deterministic
sequence can typically be more complex than a direct sequence and sequence can typically be more complex than a direct sequence and
include redundancy path, with one or more packet replication and include redundancy path, with one or more packet replication and
elimination points. elimination points.
skipping to change at page 24, line 50 skipping to change at page 26, line 51
The network Plane comprises the Network Interface Cards (NIC) in the The network Plane comprises the Network Interface Cards (NIC) in the
end systems, which are typically IP hosts, and intermediate nodes, end systems, which are typically IP hosts, and intermediate nodes,
which are typically IP routers and switches. Network-to-Network which are typically IP routers and switches. Network-to-Network
Interfaces such as used for Traffic Engineering path reservation in Interfaces such as used for Traffic Engineering path reservation in
[RFC5921], as well as User-to-Network Interfaces (UNI) such as [RFC5921], as well as User-to-Network Interfaces (UNI) such as
provided by the Local Management Interface (LMI) between network and provided by the Local Management Interface (LMI) between network and
end systems, are both part of the Network Plane, both in the control end systems, are both part of the Network Plane, both in the control
plane and the data plane. plane and the data plane.
A Southbound (Network) Interface enables the entities in the A Southbound (Network) Interface enables the entities in the
Controller Plane to communicate with devices in the Network Plane. Controller Plane to communicate with devices in the Network Plane as
This interface leverages and extends TEAS to describe the physical illustrated in Figure 7. This interface leverages and extends TEAS
topology and resources in the Network Plane. to describe the physical topology and resources in the Network Plane.
Flow Management Entity
End End End End
System System System System
-+-+-+-+-+-+-+ Northbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- -+-+-+-+-+-+-+ Northbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
PCE PCE PCE PCE CPE CPE CPE CPE
-+-+-+-+-+-+-+ Southbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- -+-+-+-+-+-+-+ Southbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
intermediate intermed. intermed. intermed. intermediate intermed. intermed. intermed.
Node Node Node Node Node Node Node Node
NIC NIC NIC NIC
intermediate intermed. intermed. intermed. intermediate intermed. intermed. intermed.
Node Node Node Node Node Node Node Node
Figure 7 Figure 7: Northbound and Southbound interfaces
The intermediate nodes (and eventually the end systems NIC) expose The intermediate nodes (and eventually the end systems NIC) expose
their capabilities and physical resources to the controller (the their capabilities and physical resources to the controller (the
PCE), and update the PCE with their dynamic perception of the CPE), and update the CPEs with their dynamic perception of the
topology, across the Southbound Interface. In return, the PCE(s) set topology, across the Southbound Interface. In return, the CPEs set
the per-flow paths up, providing a Flow Characterization that is more the per-flow paths up, providing a Flow Characterization that is more
tightly coupled to the intermediate node Operation than a TSpec. tightly coupled to the intermediate node Operation than a TSpec.
At the Network plane, intermediate nodes may exchange information At the Network plane, intermediate nodes may exchange information
regarding the state of the paths, between adjacent systems and regarding the state of the paths, between adjacent systems and
eventually with the end systems, and forward packets within eventually with the end systems, and forward packets within
constraints associated to each flow, or, when unable to do so, constraints associated to each flow, or, when unable to do so,
perform a last resort operation such as drop or declassify. perform a last resort operation such as drop or declassify.
This specification focuses on the Southbound interface and the This document focuses on the Southbound interface and the operation
operation of the Network Plane. of the Network Plane.
4.5. Queuing, Shaping, Scheduling, and Preemption 4.5. Queuing, Shaping, Scheduling, and Preemption
DetNet achieves congestion protection and bounded delivery latency by DetNet achieves congestion protection and bounded delivery latency by
reserving bandwidth and buffer resources at every hop along the path reserving bandwidth and buffer resources at every hop along the path
of the DetNet flow. The reservation itself is not sufficient, of the DetNet flow. The reservation itself is not sufficient,
however. Implementors and users of a number of proprietary and however. Implementors and users of a number of proprietary and
standard real-time networks have found that standards for specific standard real-time networks have found that standards for specific
data plane techniques are required to enable these assurances to be data plane techniques are required to enable these assurances to be
made in a multi-vendor network. The fundamental reason is that made in a multi-vendor network. The fundamental reason is that
latency variation in one system results in the need for extra buffer latency variation in one system results in the need for extra buffer
space in the next-hop system(s), which in turn, increases the worst- space in the next-hop system(s), which in turn, increases the worst-
case per-hop latency. case per-hop latency.
Standard queuing and transmission selection algorithms allow a Standard queuing and transmission selection algorithms allow a
central controller to compute the latency contribution of each central controller to compute the latency contribution of each
transit node to the end-to-end latency, to compute the amount of transit node to the end-to-end latency, to compute the amount of
buffer space required in each transit node for each incremental buffer space required in each transit node for each incremental
DetNet flow, and most importantly, to translate from a flow DetNet flow, and most importantly, to translate from a flow
specification to a set of values for the managed objects that control specification to a set of values for the managed objects that control
each relay or end system. The IEEE 802 has specified (and is each relay or end system. For example, the IEEE 802.1 WG has
specifying) a set of queuing, shaping, and scheduling algorithms that specified (and is specifying) a set of queuing, shaping, and
enable each transit node (bridge or router), and/or a central scheduling algorithms that enable each transit node (bridge or
controller, to compute these values. These algorithms include: router), and/or a central controller, to compute these values. These
algorithms include:
o A credit-based shaper [IEEE802.1Q-2014] Clause 34. o A credit-based shaper [IEEE802.1Q] Clause 34.
o Time-gated queues governed by a rotating time schedule, o Time-gated queues governed by a rotating time schedule,
synchronized among all transit nodes [IEEE802.1Qbv]. synchronized among all transit nodes [IEEE802.1Qbv].
o Synchronized double (or triple) buffers driven by synchronized o Synchronized double (or triple) buffers driven by synchronized
time ticks. [IEEE802.1Qch]. time ticks. [IEEE802.1Qch].
o Pre-emption of an Ethernet packet in transmission by a packet with o Pre-emption of an Ethernet packet in transmission by a packet with
a more stringent latency requirement, followed by the resumption a more stringent latency requirement, followed by the resumption
of the preempted packet [IEEE802.1Qbu], [IEEE802.3br]. of the preempted packet [IEEE802.1Qbu], [IEEE802.3br].
While these techniques are currently embedded in Ethernet and While these techniques are currently embedded in Ethernet [IEEE802.3]
bridging standards, we can note that they are all, except perhaps for and bridging standards, we can note that they are all, except perhaps
packet preemption, equally applicable to other media than Ethernet, for packet preemption, equally applicable to other media than
and to routers as well as bridges. Ethernet, and to routers as well as bridges. Other media may have
its own methods, see, e.g., [I-D.ietf-6tisch-architecture],
[RFC7554]. DetNet may include such definitions in the future, or may
define how these techniques can be used by DetNet nodes.
4.6. Service instance 4.6. Service instance
A Service instance represents all the functions required on a node to A Service instance represents all the functions required on a node to
allow the end-to-end service between the UNIs. allow the end-to-end service between the UNIs.
The DetNet network reference model is shown in Figure 8 for a DetNet- The DetNet network general reference model is shown in Figure 8 for a
Service scenario (i.e. between two DetNet-UNIs). In this figure, the DetNet-Service scenario (i.e., between two DetNet-UNIs). In this
end systems ("A" and "B") are connected directly to the edge nodes of figure, end systems ("A" and "B") are connected directly to the edge
the IP/MPLS network ("PE1" and "PE2"). End-systems participating nodes of an IP/MPLS network ("PE1" and "PE2"). End systems
DetNet communication may require connectivity before setting up an participating in DetNet communication may require connectivity before
App-flow that requires the DetNet service. Such a connectivity setting up an App-flow that requires the DetNet service. Such a
related service instance and the one dedicated for DetNet service connectivity related service instance and the one dedicated for
share the same access. Packets belonging to a DetNet flow are DetNet service share the same access. Packets belonging to a DetNet
selected by a filter configured on the access ("F1" and "F2"). As a flow are selected by a filter configured on the access ("F1" and
result, data flow specific access ("access-A + F1" and "access-B + "F2"). As a result, data flow specific access ("access-A + F1" and
F2") are terminated in the flow specific service instance ("SI-1" and "access-B + F2") are terminated in the flow specific service instance
"SI-2"). A tunnel is used to provide connectivity between the ("SI-1" and "SI-2"). A tunnel is used to provide connectivity
service instances. between the service instances.
The tunnel is used to transport exclusively the packets of the DetNet The tunnel is used to transport exclusively the packets of the DetNet
flow between "SI-1" and "SI-2". The service instances are configured flow between "SI-1" and "SI-2". The service instances are configured
to implement DetNet functions and a flow specific routing or bridging to implement DetNet functions and a flow specific DetNet transport.
function depending on what connectivity the participating end systems The service instance and the tunnel may or may not be shared by
require (L3 or L2). The service instance and the tunnel may or may multiple DetNet flows. Sharing the service instance by multiple
not be shared by multiple DetNet flows. Sharing the service instance DetNet flows requires properly populated forwarding tables of the
by multiple DetNet flows requires properly populated forwarding service instance.
tables of the service instance.
access-A access-B access-A access-B
<-----> <---------- tunnel ----------> <-----> <-----> <-------- tunnel ----------> <----->
+---------+ ___ _ +---------+ +---------+ ___ _ +---------+
End system | +----+ | / \/ \_ | +----+ | End system End system | +----+ | / \/ \_ | +----+ | End system
"A" -------F1+ | | / \ | | +F2----- "B" "A" -------F1+ | | / \ | | +F2----- "B"
| | +==========+ IP/MPLS +========+ | | | | +========+ IP/MPLS +=======+ | |
| |SI-1| | \__ Net._/ | |SI-2| | | |SI-1| | \__ Net._/ | |SI-2| |
| +----+ | \____/ | +----+ | | +----+ | \____/ | +----+ |
|PE1 | | PE2| |PE1 | | PE2|
+---------+ +---------+ +---------+ +---------+
Figure 8: DetNet network reference model Figure 8: DetNet network general reference model
The tunnel between the service instances may have some special The tunnel between the service instances may have some special
characteristics. For example, in case of a "packet PW" based tunnel, characteristics. For example, in case of a DetNet L3 service, there
there are differences in the usage of the packet PW for DetNet are differences in the usage of the PW for DetNet traffic compared to
traffic compared to the network model described in [RFC6658]. In the the network model described in [RFC6658]. In the DetNet scenario,
DetNet scenario, the packet PW is used exclusively by the DetNet the PW is likely to be used exclusively by the DetNet flow, whereas
flow, whereas [RFC6658] states: "The packet PW appears as a single [RFC6658] states: "The packet PW appears as a single point-to-point
point-to-point link to the client layer. Network-layer adjacency link to the client layer. Network-layer adjacency formation and
formation and maintenance between the client equipments will follow maintenance between the client equipment will follow the normal
the normal practice needed to support the required relationship in practice needed to support the required relationship in the client
the client layer ... This packet pseudowire is used to transport all layer ... This packet pseudowire is used to transport all of the
of the required layer 2 and layer 3 protocols between LSR1 and LSR2". required Layer-2 and Layer-3 protocols between LSR1 and LSR2".
Further details are network technology specific and can be found in
[I-D.ietf-detnet-dp-sol-mpls] and [I-D.ietf-detnet-dp-sol-ip].
4.7. Flow identification at technology borders 4.7. Flow identification at technology borders
4.7.1. Exporting flow identification 4.7.1. Exporting flow identification
An interesting feature of DetNet, and one that invites A DetNet node may need to map specific flows to lower layer flows (or
implementations that can be accused of "layering violations", is the Streams) in order to provide specific queuing and shaping services
need for lower layers to be aware of specific flows at higher layers, for specific flows. For example:
in order to provide specific queuing and shaping services for
specific flows. For example:
o A non-IP, strictly L2 source end system X may be sending multiple o 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 flows to the same L2 destination end system Y. Those flows may
include DetNet flows with different QoS requirements, and may include DetNet flows with different QoS requirements, and may
include non-DetNet flows. include non-DetNet flows.
o A router may be sending any number of flows to another router. o A router may be sending any number of flows to another router.
Again, those flows may include DetNet flows with different QoS Again, those flows may include DetNet flows with different QoS
requirements, and may include non-DetNet flows. requirements, and may include non-DetNet flows.
o Two routers may be separated by bridges. For these bridges to o Two routers may be separated by bridges. For these bridges to
perform any required per-flow queuing and shaping, they must be perform any required per-flow queuing and shaping, they must be
able to identify the individual flows. able to identify the individual flows.
o A Label Edge Router (LERs) may have a Label Switched Path (LSP) o A Label Edge Router (LER) may have a Label Switched Path (LSP) set
set up for handling traffic destined for a particular IP address up for handling traffic destined for a particular IP address
carrying only non-DetNet flows. If a DetNet flow to that same carrying only non-DetNet flows. If a DetNet flow to that same
address is requested, a separate LSP may be needed, in order that address is requested, a separate LSP may be needed, in order that
all of the Label Switch Routers (LSRs) along the path to the all of the Label Switch Routers (LSRs) along the path to the
destination give that flow special queuing and shaping. destination give that flow special queuing and shaping.
The need for a lower-level DetNet node to be aware of individual The need for a lower-layer node to be aware of individual higher-
higher-layer flows is not unique to DetNet. But, given the endless layer flows is not unique to DetNet. But, given the endless
complexity of layering and relayering over tunnels that is available complexity of layering and relayering over tunnels that is available
to network designers, DetNet needs to provide a model for flow to network designers, DetNet needs to provide a model for flow
identification that is at least somewhat better than packet identification that is better than packet inspection. That is not to
inspection. That is not to say that packet inspection to layer 4 or say that packet inspection to layer 4 or 5 addresses will not be
5 addresses will not be used, or the capability standardized; but, used, or the capability standardized; but, there are alternatives.
there are alternatives.
A DetNet relay node can connect DetNet flows on different paths using A DetNet relay node can connect DetNet flows on different paths using
different flow identification methods. For example: different flow identification methods. For example:
o A single unicast DetNet flow passing from router A through a o A single unicast DetNet flow passing from router A through a
bridged network to router B may be assigned a {VLAN, multicast bridged network to router B may be assigned a TSN Stream
destination MAC address} pair that is unique within that bridged identifier that is unique within that bridged network. The
network. The bridges can then identify the flow without accessing bridges can then identify the flow without accessing higher-layer
higher-layer headers. Of course, the receiving router must headers. Of course, the receiving router must recognize and
recognize and accept that multicast MAC address. accept that TSN Stream.
o A DetNet flow passing from LSR A to LSR B may be assigned a o 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 different label than that used for other flows to the same IP
destination. destination.
In any of the above cases, it is possible that an existing DetNet In any of the above cases, it is possible that an existing DetNet
flow can be used as a carrier for multiple DetNet sub-flows. (Not to flow can be an aggregate carrying multiple other DetNet flows. (Not
be confused with DetNet compound vs. member flows.) Of course, this to be confused with DetNet compound vs. member flows.) Of course,
requires that the aggregate DetNet flow be provisioned properly to this requires that the aggregate DetNet flow be provisioned properly
carry the sub-flows. to carry the aggregated flows.
Thus, rather than packet inspection, there is the option to export Thus, rather than packet inspection, there is the option to export
higher-layer information to the lower layer. The requirement to higher-layer information to the lower layer. The requirement to
support one or the other method for flow identification (or both) is support one or the other method for flow identification (or both) is
the essential complexity that DetNet brings to existing control plane a complexity that is part of DetNet control models.
models.
4.7.2. Flow attribute mapping between layers 4.7.2. Flow attribute mapping between layers
Transport of DetNet flows over multiple technology domains may Transport of DetNet flows over multiple technology domains may
require that lower layers are aware of specific flows of higher require that lower layers are aware of specific flows of higher
layers. Such an "exporting of flow identification" is needed each layers. Such an "exporting of flow identification" is needed each
time when the forwarding paradigm is changed on the transport path time when the forwarding paradigm is changed on the transport path
(e.g., two LSRs are interconnected by a L2 bridged domain, etc.). (e.g., two LSRs are interconnected by a L2 bridged domain, etc.).
The three main forwarding methods considered for deterministic The three representative forwarding methods considered for
networking are: deterministic networking are:
o IP routing o IP routing
o MPLS label switching o MPLS label switching
o Ethernet bridging o Ethernet bridging
add/remove add/remove A packet with corresponding Flow-IDs is illustrated in Figure 9.
Eth Flow-ID IP Flow-ID
| | add/remove add/remove
v v Eth Flow-ID IP Flow-ID
+-----------------------------------------------------------+ | |
| | | | | v v
| Eth | MPLS | IP | Application data | +-----------------------------------------------------------+
| | | | | | | | | |
+-----------------------------------------------------------+ | Eth | MPLS | IP | Application data |
^ | | | | |
| +-----------------------------------------------------------+
add/remove ^
MPLS Flow-ID |
add/remove
MPLS Flow-ID
Figure 9: Packet with multiple Flow-IDs Figure 9: Packet with multiple Flow-IDs
The additional (domain specific) Flow-ID can be The additional (domain specific) Flow-ID can be
o created by a domain specific function or o created by a domain specific function or
o derived from the Flow-ID added to the App-flow, o derived from the Flow-ID added to the App-flow.
so that it must be unique inside the given domain. Note that the 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 Flow-ID added to the App-flow is still present in the packet, but
transport nodes may lack the function to recognize it; that's why the transport nodes may lack the function to recognize it; that's why the
additional Flow-ID is added (pushed). additional Flow-ID is added.
4.7.3. Flow-ID mapping examples 4.7.3. Flow-ID mapping examples
IP nodes and MPLS nodes are assumed to be configured to push such an IP nodes and MPLS nodes are assumed to be configured to push such an
additional (domain specific) Flow-ID when sending traffic to an additional (domain specific) Flow-ID when sending traffic to an
Ethernet switch (as shown in the examples below). Ethernet switch (as shown in the examples below).
Figure 10 shows a scenario where an IP end system ("IP-A") is 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- connected via two Ethernet switches ("ETH-n") to an IP router ("IP-
1"). 1").
skipping to change at page 30, line 48 skipping to change at page 32, line 50
Figure 10: IP nodes interconnected by an Ethernet domain Figure 10: IP nodes interconnected by an Ethernet domain
End system "IP-A" uses the original App-flow specific ID ("L3-ID"), 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 but as it is connected to an Ethernet domain it has to push an
Ethernet-domain specific flow-ID ("VID + multicast MAC address", Ethernet-domain specific flow-ID ("VID + multicast MAC address",
referred as "ETH-ID") before sending the packet to "ETH-1" node. referred as "ETH-ID") before sending the packet to "ETH-1" node.
Ethernet switch "ETH-1" can recognize the data flow based on the 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 "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 packet toward the IP router. "IP-1" must be configured to receive
the Ethernet Flow-ID specific multicast stream, but (as it is an L3 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 node) it decodes the data flow ID based on the "L3-ID" fields of the
received packet. received packet.
Figure 11 shows a scenario where MPLS domain nodes ("PE-n" and "P-m") Figure 11 shows a scenario where MPLS domain nodes ("PE-n" and "P-m")
are connected via two Ethernet switches ("ETH-n"). are connected via two Ethernet switches ("ETH-n").
MPLS domain MPLS domain
<-----------------------------------------------> <----------------------------------------------->
+=======+ +=======+ +=======+ +=======+
skipping to change at page 31, line 41 skipping to change at page 33, line 43
Figure 11: MPLS nodes interconnected by an 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 "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 to an Ethernet domain it has to push an Ethernet-domain specific
flow-ID ("VID + multicast MAC address", referred as "ETH-ID") before flow-ID ("VID + multicast MAC address", referred as "ETH-ID") before
sending the packet to "ETH-1". Ethernet switch "ETH-1" can recognize 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 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"). "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 "P-2" must be configured to receive the Ethernet Flow-ID specific
multicast stream, but (as it is an MPLS node) it decodes the data multicast flow, but (as it is an MPLS node) it decodes the data flow
flow ID based on the "MPLS-ID" fields of the received packet. ID based on the "MPLS-ID" fields of the received packet.
One can appreciate from the above example that, when the means used One can appreciate from the above example that, when the means used
for DetNet flow identifcation is altered or exported, the means for for DetNet flow identification is altered or exported, the means for
encoding the sequence number information must similarly be altered or encoding the sequence number information must similarly be altered or
exported. exported.
4.8. Advertising resources, capabilities and adjacencies 4.8. Advertising resources, capabilities and adjacencies
There are three classes of information that a central controller or There are three classes of information that a central controller or
decentralized control plane needs to know that can only be obtained distributed control plane needs to know that can only be obtained
from the end systems and/or transit nodes in the network. When using from the end systems and/or nodes in the network. When using a peer-
a peer-to-peer control plane, some of this information may be to-peer control plane, some of this information may be required by a
required by a system's neighbors in the network. system's neighbors in the network.
o Details of the system's capabilities that are required in order to o Details of the system's capabilities that are required in order to
accurately allocate that system's resources, as well as other accurately allocate that system's resources, as well as other
systems' resources. This includes, for example, which specific systems' resources. This includes, for example, which specific
queuing and shaping algorithms are implemented (Section 4.5), the queuing and shaping algorithms are implemented (Section 4.5), the
number of buffers dedicated for DetNet allocation, and the worst- number of buffers dedicated for DetNet allocation, and the worst-
case forwarding delay. case forwarding delay and misordering.
o The dynamic state of an end or transit node's DetNet resources. o The dynamic state of a node's DetNet resources.
o The identity of the system's neighbors, and the characteristics of o The identity of the system's neighbors, and the characteristics of
the link(s) between the systems, including the length (in the link(s) between the systems, including the length (in
nanoseconds) of the link(s). nanoseconds) of the link(s).
4.9. Provisioning model 4.9. Scaling to larger networks
4.9.1. Centralized Path Computation and Installation
A centralized routing model, such as provided with a PCE (RFC 4655
[RFC4655]), enables global and per-flow optimizations. (See
Section 4.4.) The model is attractive but a number of issues are
left to be solved. In particular:
o Whether and how the path computation can be installed by 1) an end
device or 2) a Network Management entity,
o And how the path is set up, either by installing state at each hop
with a direct interaction between the forwarding device and the
PCE, or along a path by injecting a source-routed request at one
end of the path.
4.9.2. Distributed Path Setup
Significant work on distributed path setup can be leveraged from MPLS
Traffic Engineering, in both its GMPLS and non-GMPLS forms. The
protocols within scope are Resource ReSerVation Protocol [RFC3209]
[RFC3473](RSVP-TE), OSPF-TE [RFC4203] [RFC5392] and ISIS-TE [RFC5307]
[RFC5316]. These should be viewed as starting points as there are
feature specific extensions defined that may be applicable to DetNet.
In a Layer-2 only environment, or as part of a layered approach to a
mixed environment, IEEE 802.1 also has work, either completed or in
progress. [IEEE802.1Q-2014] Clause 35 describes SRP, a peer-to-peer
protocol for Layer-2 roughly analogous to RSVP [RFC2205].
[IEEE802.1Qca] defines how ISIS can provide multiple disjoint paths
or distribution trees. Also in progress is [IEEE802.1Qcc], which
expands the capabilities of SRP.
The integration/interaction of the DetNet control layer with an
underlying IEEE 802.1 sub-network control layer will need to be
defined.
4.10. Scaling to larger networks
Reservations for individual DetNet flows require considerable state Reservations for individual DetNet flows require considerable state
information in each transit node, especially when adequate fault information in each transit node, especially when adequate fault
mitigation (Section 3.3.2) is required. The DetNet data plane, in mitigation (Section 3.3.2) is required. The DetNet data plane, in
order to support larger numbers of DetNet flows, must support the order to support larger numbers of DetNet flows, must support the
aggregation of DetNet flows into tunnels, which themselves can be aggregation of DetNet flows. Such aggregated flows can be viewed by
viewed by the transit nodes' data planes largely as individual DetNet the transit nodes' data plane largely as individual DetNet flows.
flows. Without such aggregation, the per-relay system may limit the Without such aggregation, the per-relay system may limit the scale of
scale of DetNet networks. DetNet networks. Example techniques that may be used include MPLS
hierarchy and IP DiffServ Code Points (DSCPs).
4.11. Connected islands vs. networks
Given that users have deployed examples of the IEEE 802.1 TSN TG
standards, which provide capabilities similar to DetNet, it is
obvious to ask whether the IETF DetNet effort can be limited to
providing Layer-2 connections (VPNs) between islands of bridged TSN
networks. While this capability is certainly useful to some
applications, and must not be precluded by DetNet, tunneling alone is
not a sufficient goal for the DetNet WG. As shown in the
Deterministic Networking Use Cases draft [I-D.ietf-detnet-use-cases],
there are already deployments of Layer-2 TSN networks that are
encountering the well-known problems of over-large broadcast domains.
Routed solutions, and combinations routed/bridged solutions, are both
required.
4.12. Compatibility with Layer-2 4.10. Compatibility with Layer-2
Standards providing similar capabilities for bridged networks (only) Standards providing similar capabilities for bridged networks (only)
have been and are being generated in the IEEE 802 LAN/MAN Standards have been and are being generated in the IEEE 802 LAN/MAN Standards
Committee. The present architecture describes an abstract model that Committee. The present architecture describes an abstract model that
can be applicable both at Layer-2 and Layer-3, and over links not can be applicable both at Layer-2 and Layer-3, and over links not
defined by IEEE 802. It is the intention of the authors (and defined by IEEE 802.
hopefully, as this draft progresses, of the DetNet Working Group)
that IETF and IEEE 802 will coordinate their work, via the
participation of common individuals, liaisons, and other means, to
maximize the compatibility of their outputs.
DetNet enabled end systems and intermediate nodes can be DetNet enabled end systems and intermediate nodes can be
interconnected by sub-networks, i.e., Layer-2 technologies. These interconnected by sub-networks, i.e., Layer-2 technologies. These
sub-networks will provide DetNet compatible service for support of sub-networks will provide DetNet compatible service for support of
DetNet traffic. Examples of sub-networks include 802.1TSN and a DetNet traffic. Examples of sub-networks include MPLS TE, 802.1 TSN,
point-to-point OTN link. Of course, multi-layer DetNet systems may and a point-to-point OTN link. Of course, multi-layer DetNet systems
be possible too, where one DetNet appears as a sub-network, and may be possible too, where one DetNet appears as a sub-network, and
provides service to, a higher layer DetNet system. provides service to, a higher layer DetNet system.
5. Security Considerations 5. Security Considerations
Security in the context of Deterministic Networking has an added Security in the context of Deterministic Networking has an added
dimension; the time of delivery of a packet can be just as important dimension; the time of delivery of a packet can be just as important
as the contents of the packet, itself. A man-in-the-middle attack, as the contents of the packet, itself. A man-in-the-middle attack,
for example, can impose, and then systematically adjust, additional for example, can impose, and then systematically adjust, additional
delays into a link, and thus disrupt or subvert a real-time delays into a link, and thus disrupt or subvert a real-time
application without having to crack any encryption methods employed. application without having to crack any encryption methods employed.
See [RFC7384] for an exploration of this issue in a related context. See [RFC7384] for an exploration of this issue in a related context.
Furthermore, in a control system where millions of dollars of Furthermore, in a control system where millions of dollars of
equipment, or even human lives, can be lost if the DetNet QoS is not equipment, or even human lives, can be lost if the DetNet QoS is not
delivered, one must consider not only simple equipment failures, delivered, one must consider not only simple equipment failures,
where the box or wire instantly becomes perfectly silent, but bizarre where the box or wire instantly becomes perfectly silent, but complex
errors such as can be caused by software failures. Because there is errors such as can be caused by software failures. Because there is
essential no limit to the kinds of failures that can occur, essential no limit to the kinds of failures that can occur,
protecting against realistic equipment failures is indistinguishable, protecting against realistic equipment failures is indistinguishable,
in most cases, from protecting against malicious behavior, whether in most cases, from protecting against malicious behavior, whether
accidental or intentional. See also Section 3.3.2. accidental or intentional. See also Section 3.3.2.
Security must cover: Security must cover:
o the protection of the signaling protocol o the protection of the signaling protocol
skipping to change at page 35, line 11 skipping to change at page 35, line 49
path of a DetNet flow to identify DetNet flows may present an path of a DetNet flow to identify DetNet flows may present an
additional attack surface for privacy, should the DetNet paradigm be additional attack surface for privacy, should the DetNet paradigm be
found useful in broader environments. found useful in broader environments.
7. IANA Considerations 7. IANA Considerations
This document does not require an action from IANA. This document does not require an action from IANA.
8. Acknowledgements 8. Acknowledgements
The authors wish to thank Jouni Korhonen, Erik Nordmark, George The authors wish to thank Lou Berger, David Black, Stewart Bryant,
Swallow, Rudy Klecka, Anca Zamfir, David Black, Thomas Watteyne, Rodney Cummings, Ethan Grossman, Craig Gunther, Marcel Kiessling,
Shitanshu Shah, Craig Gunther, Rodney Cummings, Balazs Varga, Rudy Klecka, Jouni Korhonen, Erik Nordmark, Shitanshu Shah, Wilfried
Wilfried Steiner, Marcel Kiessling, Karl Weber, Janos Farkas, Ethan Steiner, George Swallow, Michael Johas Teener, Pat Thaler, Thomas
Grossman, Pat Thaler, Lou Berger, and especially Michael Johas Watteyne, Patrick Wetterwald, Karl Weber, Anca Zamfir, for their
Teener, for their various contribution with this work. various contribution with this work.
9. Access to IEEE 802.1 documents
To access password protected IEEE 802.1 drafts, see the IETF IEEE
802.1 information page at https://www.ietf.org/proceedings/52/slides/
bridge-0/tsld003.htm.
10. Informative References
[AVnu] http://www.avnu.org/, "The AVnu Alliance tests and 9. Informative References
certifies devices for interoperability, providing a simple
and reliable networking solution for AV network
implementation based on the Audio Video Bridging (AVB)
standards.".
[CCAMP] IETF, "Common Control and Measurement Plane", [CCAMP] IETF, "Common Control and Measurement Plane Working
Group",
<https://datatracker.ietf.org/doc/charter-ietf-ccamp/>. <https://datatracker.ietf.org/doc/charter-ietf-ccamp/>.
[HSR-PRP] IEC, "High availability seamless redundancy (HSR) is a
further development of the PRP approach, although HSR
functions primarily as a protocol for creating media
redundancy while PRP, as described in the previous
section, creates network redundancy. PRP and HSR are both
described in the IEC 62439 3 standard.",
<http://webstore.iec.ch/webstore/webstore.nsf/
artnum/046615!opendocument>.
[I-D.dt-detnet-dp-alt]
Korhonen, J., Farkas, J., Mirsky, G., Thubert, P.,
Zhuangyan, Z., and L. Berger, "DetNet Data Plane Protocol
and Solution Alternatives", draft-dt-detnet-dp-alt-04
(work in progress), September 2016.
[I-D.ietf-6tisch-architecture] [I-D.ietf-6tisch-architecture]
Thubert, P., "An Architecture for IPv6 over the TSCH mode Thubert, P., "An Architecture for IPv6 over the TSCH mode
of IEEE 802.15.4", draft-ietf-6tisch-architecture-13 (work of IEEE 802.15.4", draft-ietf-6tisch-architecture-14 (work
in progress), November 2017. in progress), April 2018.
[I-D.ietf-6tisch-tsch] [I-D.ietf-detnet-dp-sol-ip]
Watteyne, T., Palattella, M., and L. Grieco, "Using IETF, "DetNet IP Data Plane Encapsulation", July 2018,
IEEE802.15.4e TSCH in an IoT context: Overview, Problem <https://datatracker.ietf.org/doc/
Statement and Goals", draft-ietf-6tisch-tsch-06 (work in draft-ietf-detnet-dp-sol-ip/>.
progress), March 2015.
[I-D.ietf-detnet-dp-sol-mpls]
IETF, "DetNet MPLS Data Plane Encapsulation", July 2018,
<https://datatracker.ietf.org/doc/
draft-ietf-detnet-dp-sol-mpls/>.
[I-D.ietf-detnet-problem-statement] [I-D.ietf-detnet-problem-statement]
Finn, N. and P. Thubert, "Deterministic Networking Problem Finn, N. and P. Thubert, "Deterministic Networking Problem
Statement", draft-ietf-detnet-problem-statement-03 (work Statement", draft-ietf-detnet-problem-statement-05 (work
in progress), March 2018. in progress), June 2018.
[I-D.ietf-detnet-use-cases] [I-D.ietf-detnet-use-cases]
Grossman, E., "Deterministic Networking Use Cases", draft- Grossman, E., "Deterministic Networking Use Cases", draft-
ietf-detnet-use-cases-15 (work in progress), April 2018. ietf-detnet-use-cases-17 (work in progress), June 2018.
[I-D.ietf-roll-rpl-industrial-applicability]
Phinney, T., Thubert, P., and R. Assimiti, "RPL
applicability in industrial networks", draft-ietf-roll-
rpl-industrial-applicability-02 (work in progress),
October 2013.
[I-D.svshah-tsvwg-deterministic-forwarding]
Shah, S. and P. Thubert, "Deterministic Forwarding PHB",
draft-svshah-tsvwg-deterministic-forwarding-04 (work in
progress), August 2015.
[I-D.varga-detnet-service-model]
Varga, B. and J. Farkas, "DetNet Service Model", draft-
varga-detnet-service-model-02 (work in progress), May
2017.
[IEEE802.1AS-2011] [I-D.ietf-spring-segment-routing]
IEEE, "IEEE Std 802.1AS Timing and Synchronization for Filsfils, C., Previdi, S., Ginsberg, L., Decraene, B.,
Time-Sensitive Applications in Bridged Local Area Litkowski, S., and R. Shakir, "Segment Routing
Networks", 2011, Architecture", draft-ietf-spring-segment-routing-15 (work
<http://ieeexplore.ieee.org/document/5741898/>. in progress), January 2018.
[IEEE802.1BA-2011] [IEEE802.1BA]
IEEE, "IEEE Std 802.1BA Audio Video Bridging (AVB) IEEE Standards Association, "IEEE Std 802.1BA-2011 Audio
Systems", 2011, Video Bridging (AVB) Systems", 2011,
<http://ieeexplore.ieee.org/document/6032690/>. <https://ieeexplore.ieee.org/document/6032690/>.
[IEEE802.1CB] [IEEE802.1CB]
IEEE, "IEEE Std 802.1CB Frame Replication and Elimination IEEE Standards Association, "IEEE Std 802.1CB Frame
for Reliability", 2017, Replication and Elimination for Reliability", 2017,
<http://www.ieee802.org/1/files/private/cb-drafts/>. <http://www.ieee802.org/1/files/private/cb-drafts/>.
[IEEE802.1Q-2014] [IEEE802.1Q]
IEEE, "IEEE Std 802.1Q Bridges and Bridged Networks", IEEE Standards Association, "IEEE Std 802.1Q-2018 Bridges
2014, <http://ieeexplore.ieee.org/document/6991462/>. and Bridged Networks", 2018,
<https://standards.ieee.org/findstds/
standard/802.1Q-2018.html>.
[IEEE802.1Qbu] [IEEE802.1Qbu]
IEEE, "IEEEE Std 802.1Qbu Bridges and Bridged Networks - IEEE Standards Association, "IEEE Std 802.1Qbu-2016
Amendment 26: Frame Preemption", 2016, Bridges and Bridged Networks - Amendment 26: Frame
<http://ieeexplore.ieee.org/document/7553415/>. Preemption", 2016,
<https://ieeexplore.ieee.org/document/7553415/>.
[IEEE802.1Qbv] [IEEE802.1Qbv]
IEEE, "IEEEE Std 802.1Qbu Bridges and Bridged Networks - IEEE Standards Association, "IEEE Std 802.1Qbv-2015
Amendment 25: Enhancements for Scheduled Traffic", 2015, Bridges and Bridged Networks - Amendment 25: Enhancements
<http://ieeexplore.ieee.org/document/7572858/>. for Scheduled Traffic", 2015,
<https://ieeexplore.ieee.org/document/7572858/>.
[IEEE802.1Qca]
IEEE, "IEEE Std 802.1Qca Bridges and Bridged Networks -
Amendment 24: Path Control and Reservation", June 2015,
<http://ieeexplore.ieee.org/document/7565435/>.
[IEEE802.1Qcc]
IEEE, "Stream Reservation Protocol (SRP) Enhancements and
Performance Improvements (IEEE Draft P802.1Qcc)", 2017,
<http://www.ieee802.org/1/files/private/cc-drafts/>.
[IEEE802.1Qch] [IEEE802.1Qch]
IEEE, "Cyclic Queuing and Forwarding (IEEE Draft IEEE Standards Association, "IEEE Std 802.1Qbv-2015
P802.1Qch)", 2017, Bridges and Bridged Networks - Amendment 29: Cyclic
<http://www.ieee802.org/1/files/private/ch-drafts/>. Queuing and Forwarding", 2017,
<https://standards.ieee.org/findstds/
standard/802.1Qch-2017.html>.
[IEEE802.1TSNTG] [IEEE802.1TSNTG]
IEEE Standards Association, "IEEE 802.1 Time-Sensitive IEEE Standards Association, "IEEE 802.1 Time-Sensitive
Networks Task Group", 2013, Networking Task Group", 2013,
<http://www.IEEE802.org/1/pages/avbridges.html>. <http://www.ieee802.org/1/tsn>.
[IEEE802.3-2015] [IEEE802.3]
IEEE, "IEEE Std 802.3 Standard for Ethernet", 2015, IEEE Standards Association, "IEEE Std 802.3-2015 Standard
for Ethernet", 2015,
<http://ieeexplore.ieee.org/document/7428776/>. <http://ieeexplore.ieee.org/document/7428776/>.
[IEEE802.3br] [IEEE802.3br]
IEEE, "IEEE Std 802.3br Standard for Ethernet Amendment 5: IEEE Standards Association, "IEEE Std 802.3br-2016
Specification and Management Parameters for Interspersing Standard for Ethernet Amendment 5: Specification and
Express Traffic", 2016, Management Parameters for Interspersing Express Traffic",
<http://ieeexplore.ieee.org/document/7900321/>. 2016, <http://ieeexplore.ieee.org/document/7900321/>.
[ISA95] ANSI/ISA, "Enterprise-Control System Integration Part 1:
Models and Terminology", 2000,
<https://www.isa.org/isa95/>.
[ODVA] http://www.odva.org/, "The organization that supports
network technologies built on the Common Industrial
Protocol (CIP) including EtherNet/IP.".
[PCE] IETF, "Path Computation Element",
<https://datatracker.ietf.org/doc/charter-ietf-pce/>.
[Profinet]
http://us.profinet.com/technology/profinet/, "PROFINET is
a standard for industrial networking in automation.",
<http://us.profinet.com/technology/profinet/>.
[RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S.
Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1
Functional Specification", RFC 2205, DOI 10.17487/RFC2205, Functional Specification", RFC 2205, DOI 10.17487/RFC2205,
September 1997, <https://www.rfc-editor.org/info/rfc2205>. September 1997, <https://www.rfc-editor.org/info/rfc2205>.
[RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z.,
and W. Weiss, "An Architecture for Differentiated and W. Weiss, "An Architecture for Differentiated
Services", RFC 2475, DOI 10.17487/RFC2475, December 1998, Services", RFC 2475, DOI 10.17487/RFC2475, December 1998,
<https://www.rfc-editor.org/info/rfc2475>. <https://www.rfc-editor.org/info/rfc2475>.
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<https://www.rfc-editor.org/info/rfc3209>. <https://www.rfc-editor.org/info/rfc3209>.
[RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label
Switching (GMPLS) Signaling Resource ReserVation Protocol-
Traffic Engineering (RSVP-TE) Extensions", RFC 3473,
DOI 10.17487/RFC3473, January 2003,
<https://www.rfc-editor.org/info/rfc3473>.
[RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V.
Jacobson, "RTP: A Transport Protocol for Real-Time Jacobson, "RTP: A Transport Protocol for Real-Time
Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550, Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550,
July 2003, <https://www.rfc-editor.org/info/rfc3550>. July 2003, <https://www.rfc-editor.org/info/rfc3550>.
[RFC4203] Kompella, K., Ed. and Y. Rekhter, Ed., "OSPF Extensions in
Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 4203, DOI 10.17487/RFC4203, October 2005,
<https://www.rfc-editor.org/info/rfc4203>.
[RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
Element (PCE)-Based Architecture", RFC 4655, Element (PCE)-Based Architecture", RFC 4655,
DOI 10.17487/RFC4655, August 2006, DOI 10.17487/RFC4655, August 2006,
<https://www.rfc-editor.org/info/rfc4655>. <https://www.rfc-editor.org/info/rfc4655>.
[RFC5307] Kompella, K., Ed. and Y. Rekhter, Ed., "IS-IS Extensions
in Support of Generalized Multi-Protocol Label Switching
(GMPLS)", RFC 5307, DOI 10.17487/RFC5307, October 2008,
<https://www.rfc-editor.org/info/rfc5307>.
[RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in
Support of Inter-Autonomous System (AS) MPLS and GMPLS
Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316,
December 2008, <https://www.rfc-editor.org/info/rfc5316>.
[RFC5392] Chen, M., Zhang, R., and X. Duan, "OSPF Extensions in
Support of Inter-Autonomous System (AS) MPLS and GMPLS
Traffic Engineering", RFC 5392, DOI 10.17487/RFC5392,
January 2009, <https://www.rfc-editor.org/info/rfc5392>.
[RFC5673] Pister, K., Ed., Thubert, P., Ed., Dwars, S., and T.
Phinney, "Industrial Routing Requirements in Low-Power and
Lossy Networks", RFC 5673, DOI 10.17487/RFC5673, October
2009, <https://www.rfc-editor.org/info/rfc5673>.
[RFC5921] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau, [RFC5921] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau,
L., and L. Berger, "A Framework for MPLS in Transport L., and L. Berger, "A Framework for MPLS in Transport
Networks", RFC 5921, DOI 10.17487/RFC5921, July 2010, Networks", RFC 5921, DOI 10.17487/RFC5921, July 2010,
<https://www.rfc-editor.org/info/rfc5921>. <https://www.rfc-editor.org/info/rfc5921>.
[RFC6372] Sprecher, N., Ed. and A. Farrel, Ed., "MPLS Transport [RFC6372] Sprecher, N., Ed. and A. Farrel, Ed., "MPLS Transport
Profile (MPLS-TP) Survivability Framework", RFC 6372, Profile (MPLS-TP) Survivability Framework", RFC 6372,
DOI 10.17487/RFC6372, September 2011, DOI 10.17487/RFC6372, September 2011,
<https://www.rfc-editor.org/info/rfc6372>. <https://www.rfc-editor.org/info/rfc6372>.
skipping to change at page 40, line 11 skipping to change at page 39, line 5
[RFC7384] Mizrahi, T., "Security Requirements of Time Protocols in [RFC7384] Mizrahi, T., "Security Requirements of Time Protocols in
Packet Switched Networks", RFC 7384, DOI 10.17487/RFC7384, Packet Switched Networks", RFC 7384, DOI 10.17487/RFC7384,
October 2014, <https://www.rfc-editor.org/info/rfc7384>. October 2014, <https://www.rfc-editor.org/info/rfc7384>.
[RFC7426] Haleplidis, E., Ed., Pentikousis, K., Ed., Denazis, S., [RFC7426] Haleplidis, E., Ed., Pentikousis, K., Ed., Denazis, S.,
Hadi Salim, J., Meyer, D., and O. Koufopavlou, "Software- Hadi Salim, J., Meyer, D., and O. Koufopavlou, "Software-
Defined Networking (SDN): Layers and Architecture Defined Networking (SDN): Layers and Architecture
Terminology", RFC 7426, DOI 10.17487/RFC7426, January Terminology", RFC 7426, DOI 10.17487/RFC7426, January
2015, <https://www.rfc-editor.org/info/rfc7426>. 2015, <https://www.rfc-editor.org/info/rfc7426>.
[TEAS] IETF, "Traffic Engineering Architecture and Signaling", [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>.
[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>.
[TEAS] IETF, "Traffic Engineering Architecture and Signaling
Working Group",
<https://datatracker.ietf.org/doc/charter-ietf-teas/>. <https://datatracker.ietf.org/doc/charter-ietf-teas/>.
Authors' Addresses Authors' Addresses
Norman Finn Norman Finn
Huawei Huawei
3755 Avocado Blvd. 3755 Avocado Blvd.
PMB 436 PMB 436
La Mesa, California 91941 La Mesa, California 91941
US US
skipping to change at page 40, line 39 skipping to change at page 39, line 45
400, Avenue de Roumanille 400, Avenue de Roumanille
Batiment T3 Batiment T3
Biot - Sophia Antipolis 06410 Biot - Sophia Antipolis 06410
FRANCE FRANCE
Phone: +33 4 97 23 26 34 Phone: +33 4 97 23 26 34
Email: pthubert@cisco.com Email: pthubert@cisco.com
Balazs Varga Balazs Varga
Ericsson Ericsson
Konyves Kalman krt. 11/B Magyar tudosok korutja 11
Budapest 1097 Budapest 1117
Hungary Hungary
Email: balazs.a.varga@ericsson.com Email: balazs.a.varga@ericsson.com
Janos Farkas Janos Farkas
Ericsson Ericsson
Konyves Kalman krt. 11/B Magyar tudosok korutja 11
Budapest 1097 Budapest 1117
Hungary Hungary
Email: janos.farkas@ericsson.com Email: janos.farkas@ericsson.com
 End of changes. 182 change blocks. 
766 lines changed or deleted 722 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/