idnits 2.17.1 draft-ietf-detnet-architecture-09.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 754 has weird spacing: '...e stack v ...' -- The document date (October 22, 2018) is 2013 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'Network' is mentioned on line 896, but not defined == Outdated reference: A later version (-30) exists of draft-ietf-6tisch-architecture-15 == Outdated reference: A later version (-02) exists of draft-ietf-detnet-dp-sol-ip-01 == Outdated reference: A later version (-02) exists of draft-ietf-detnet-dp-sol-mpls-01 == Outdated reference: A later version (-09) exists of draft-ietf-detnet-problem-statement-07 == Outdated reference: A later version (-16) exists of draft-ietf-detnet-security-03 == Outdated reference: A later version (-20) exists of draft-ietf-detnet-use-cases-19 Summary: 0 errors (**), 0 flaws (~~), 9 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 DetNet N. Finn 3 Internet-Draft Huawei 4 Intended status: Standards Track P. Thubert 5 Expires: April 25, 2019 Cisco 6 B. Varga 7 J. Farkas 8 Ericsson 9 October 22, 2018 11 Deterministic Networking Architecture 12 draft-ietf-detnet-architecture-09 14 Abstract 16 This document provides the overall architecture for Deterministic 17 Networking (DetNet), which provides a capability to carry specified 18 unicast or multicast data flows for real-time applications with 19 extremely low data loss rates and bounded latency within a network 20 domain. Techniques used include: 1) reserving data plane resources 21 for individual (or aggregated) DetNet flows in some or all of the 22 intermediate nodes along the path of the flow; 2) providing explicit 23 routes for DetNet flows that do not immediately change with the 24 network topology; and 3) distributing data from DetNet flow packets 25 over time and/or space to ensure delivery of each packet's data in 26 spite of the loss of a path. DetNet operates at the IP layer and 27 delivers service over sub-network technologies such as MPLS and IEEE 28 802.1 Time-Sensitive Networking (TSN). 30 Status of This Memo 32 This Internet-Draft is submitted in full conformance with the 33 provisions of BCP 78 and BCP 79. 35 Internet-Drafts are working documents of the Internet Engineering 36 Task Force (IETF). Note that other groups may also distribute 37 working documents as Internet-Drafts. The list of current Internet- 38 Drafts is at https://datatracker.ietf.org/drafts/current/. 40 Internet-Drafts are draft documents valid for a maximum of six months 41 and may be updated, replaced, or obsoleted by other documents at any 42 time. It is inappropriate to use Internet-Drafts as reference 43 material or to cite them other than as "work in progress." 45 This Internet-Draft will expire on April 25, 2019. 47 Copyright Notice 49 Copyright (c) 2018 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (https://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with respect 57 to this document. Code Components extracted from this document must 58 include Simplified BSD License text as described in Section 4.e of 59 the Trust Legal Provisions and are provided without warranty as 60 described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 65 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 66 2.1. Terms used in this document . . . . . . . . . . . . . . . 4 67 2.2. IEEE 802.1 TSN to DetNet dictionary . . . . . . . . . . . 7 68 3. Providing the DetNet Quality of Service . . . . . . . . . . . 7 69 3.1. Primary goals defining the DetNet QoS . . . . . . . . . . 7 70 3.2. Mechanisms to achieve DetNet QoS . . . . . . . . . . . . 10 71 3.2.1. Congestion protection . . . . . . . . . . . . . . . . 10 72 3.2.1.1. Eliminate congestion loss . . . . . . . . . . . . 10 73 3.2.1.2. Jitter Reduction . . . . . . . . . . . . . . . . 10 74 3.2.2. Service Protection . . . . . . . . . . . . . . . . . 11 75 3.2.2.1. In-Order Delivery . . . . . . . . . . . . . . . . 11 76 3.2.2.2. Packet Replication and Elimination . . . . . . . 12 77 3.2.2.3. Packet encoding for service protection . . . . . 14 78 3.2.3. Explicit routes . . . . . . . . . . . . . . . . . . . 14 79 3.3. Secondary goals for DetNet . . . . . . . . . . . . . . . 15 80 3.3.1. Coexistence with normal traffic . . . . . . . . . . . 15 81 3.3.2. Fault Mitigation . . . . . . . . . . . . . . . . . . 15 82 4. DetNet Architecture . . . . . . . . . . . . . . . . . . . . . 16 83 4.1. DetNet stack model . . . . . . . . . . . . . . . . . . . 16 84 4.1.1. Representative Protocol Stack Model . . . . . . . . . 16 85 4.1.2. DetNet Data Plane Overview . . . . . . . . . . . . . 19 86 4.1.3. Network reference model . . . . . . . . . . . . . . . 21 87 4.2. DetNet systems . . . . . . . . . . . . . . . . . . . . . 22 88 4.2.1. End system . . . . . . . . . . . . . . . . . . . . . 22 89 4.2.2. DetNet edge, relay, and transit nodes . . . . . . . . 23 90 4.3. DetNet flows . . . . . . . . . . . . . . . . . . . . . . 24 91 4.3.1. DetNet flow types . . . . . . . . . . . . . . . . . . 24 92 4.3.2. Source transmission behavior . . . . . . . . . . . . 24 93 4.3.3. Incomplete Networks . . . . . . . . . . . . . . . . . 26 94 4.4. Traffic Engineering for DetNet . . . . . . . . . . . . . 26 95 4.4.1. The Application Plane . . . . . . . . . . . . . . . . 26 96 4.4.2. The Controller Plane . . . . . . . . . . . . . . . . 27 97 4.4.3. The Network Plane . . . . . . . . . . . . . . . . . . 27 98 4.5. Queuing, Shaping, Scheduling, and Preemption . . . . . . 28 99 4.6. Service instance . . . . . . . . . . . . . . . . . . . . 29 100 4.7. Flow identification at technology borders . . . . . . . . 31 101 4.7.1. Exporting flow identification . . . . . . . . . . . . 31 102 4.7.2. Flow attribute mapping between layers . . . . . . . . 32 103 4.7.3. Flow-ID mapping examples . . . . . . . . . . . . . . 33 104 4.8. Advertising resources, capabilities and adjacencies . . . 35 105 4.9. Scaling to larger networks . . . . . . . . . . . . . . . 36 106 4.10. Compatibility with Layer-2 . . . . . . . . . . . . . . . 36 107 5. Security Considerations . . . . . . . . . . . . . . . . . . . 36 108 6. Privacy Considerations . . . . . . . . . . . . . . . . . . . 37 109 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37 110 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 37 111 9. Informative References . . . . . . . . . . . . . . . . . . . 38 112 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 41 114 1. Introduction 116 This document provides the overall architecture for Deterministic 117 Networking (DetNet), which provides a capability for the delivery of 118 data flows with extremely low packet loss rates and bounded end-to- 119 end delivery latency. DetNet is for networks that are under a single 120 administrative control or within a closed group of administrative 121 control; these include campus-wide networks and private WANs. DetNet 122 is not for large groups of domains such as the Internet. 124 DetNet operates at the IP layer and delivers service over sub-network 125 technologies such as MPLS and IEEE 802.1 Time-Sensitive Networking 126 (TSN). DetNet accomplishes these goals by dedicating network 127 resources such as link bandwidth and buffer space to DetNet flows 128 and/or classes of DetNet flows, and by replicating packets along 129 multiple paths. Unused reserved resources are available to non- 130 DetNet packets as long as all guarantees are fulfilled. 132 The Deterministic Networking Problem Statement 133 [I-D.ietf-detnet-problem-statement] introduces Deterministic 134 Networking, and Deterministic Networking Use Cases 135 [I-D.ietf-detnet-use-cases] summarizes the need for it. See 136 [I-D.ietf-detnet-dp-sol-mpls] and [I-D.ietf-detnet-dp-sol-ip] for 137 specific techniques that can be used to identify DetNet flows and 138 assign them to specific paths through a network. 140 A goal of DetNet is a converged network in all respects. That is, 141 the presence of DetNet flows does not preclude non-DetNet flows, and 142 the benefits offered DetNet flows should not, except in extreme 143 cases, prevent existing Quality of Service (QoS) mechanisms from 144 operating in a normal fashion, subject to the bandwidth required for 145 the DetNet flows. A single source-destination pair can trade both 146 DetNet and non-DetNet flows. End systems and applications need not 147 instantiate special interfaces for DetNet flows. Networks are not 148 restricted to certain topologies; connectivity is not restricted. 149 Any application that generates a data flow that can be usefully 150 characterized as having a maximum bandwidth should be able to take 151 advantage of DetNet, as long as the necessary resources can be 152 reserved. Reservations can be made by the application itself, via 153 network management, by an application's controller, or by other 154 means, e.g., a dynamic control plane (e.g., [RFC2205]). Network 155 nodes supporting DetNet flows have to implement some of the DetNet 156 capabilities (not necessarily all) in order to treat DetNet flows 157 such that their QoS requirements are met. 159 Many applications that are intended to be served by Deterministic 160 Networking require the ability to synchronize the clocks in end 161 systems to a sub-microsecond accuracy. Some of the queue control 162 techniques defined in Section 4.5 also require time synchronization 163 among network nodes. The means used to achieve time synchronization 164 are not addressed in this document. DetNet can accommodate various 165 time synchronization techniques and profiles that are defined 166 elsewhere to address the needs of different market segments. 168 2. Terminology 170 2.1. Terms used in this document 172 The following terms are used in the context of DetNet in this 173 document: 175 allocation 176 Resources are dedicated to support a DetNet flow. Depending 177 on an implementation, the resource may be reused by non- 178 DetNet flows when it is not used by the DetNet flow. 180 App-flow 181 The native format of a DetNet flow. 183 DetNet compound flow and DetNet member flow 184 A DetNet compound flow is a DetNet flow that has been 185 separated into multiple duplicate DetNet member flows for 186 service protection at the DetNet service sub-layer. Member 187 flows are merged back into a single DetNet compound flow such 188 that there are no duplicate packets. "Compound" and "member" 189 are strictly relative to each other, not absolutes; a DetNet 190 compound flow comprising multiple DetNet member flows can, in 191 turn, be a member of a higher-order compound. 193 DetNet destination 194 An end system capable of terminating a DetNet flow. 196 DetNet domain 197 The portion of a network that is DetNet aware. It includes 198 end systems and DetNet nodes. 200 DetNet edge node 201 An instance of a DetNet relay node that acts as a source and/ 202 or destination at the DetNet service sub-layer. For example, 203 it can include a DetNet service sub-layer proxy function for 204 DetNet service protection (e.g., the addition or removal of 205 packet sequencing information) for one or more end systems, 206 or starts or terminates congestion protection at the DetNet 207 transport sub-layer, or aggregates DetNet services into new 208 DetNet flows. It is analogous to a Label Edge Router (LER) 209 or a Provider Edge (PE) router. 211 DetNet flow 212 A DetNet flow is a sequence of packets from one source to one 213 or more destinations, which conform uniquely to a flow 214 identifier, and to which the DetNet service is to be 215 provided. 217 DetNet intermediate node 218 A DetNet relay node or DetNet transit node. 220 DetNet node 221 A DetNet edge node, a DetNet relay node, or a DetNet transit 222 node. 224 DetNet relay node 225 A DetNet node including a service sub-layer function that 226 interconnects different DetNet transport sub-layer paths to 227 provide service protection. A DetNet relay node participates 228 in the DetNet service sub-layer. It typically incorporates 229 DetNet transport sub-layer functions as well, in which case 230 it is collocated with a transit node. 232 DetNet service sub-layer 233 The DetNet sub-layer at which A DetNet service, e.g., service 234 protection is provided. 236 DetNet service proxy 237 Maps between App-flows and DetNet flows. 239 DetNet source 240 An end system capable of originating a DetNet flow. 242 DetNet system 243 A DetNet aware end system, transit node, or relay node. 244 "DetNet" may be omitted in some text. 246 DetNet transit node 247 A DetNet node operating at the DetNet transport sub-layer, 248 that utilizes link layer and/or network layer switching 249 across multiple links and/or sub-networks to provide paths 250 for DetNet service sub-layer functions. Typically provides 251 congestion protection over those paths. An MPLS LSR is an 252 example of a DetNet transit node. 254 DetNet transport sub-layer 255 The DetNet layer that optionally provides congestion 256 protection for DetNet flows over paths provided by the 257 underlying network. 259 DetNet-UNI 260 User-to-Network Interface with DetNet specific 261 functionalities. It is a packet-based reference point and 262 may provide multiple functions like encapsulation, status, 263 synchronization, etc. 265 end system 266 Commonly called a "host" in IETF documents, and an "end 267 station" is IEEE 802 documents. End systems of interest to 268 this document are either sources or destinations of DetNet 269 flows. And end system may or may not be DetNet transport 270 sub-layer aware or DetNet service sub-layer aware. 272 link 273 A connection between two DetNet nodes. It may be composed of 274 a physical link or a sub-network technology that can provide 275 appropriate traffic delivery for DetNet flows. 277 PEF A Packet Elimination Function (PEF) eliminates duplicate 278 copies of packets to prevent excess packets flooding the 279 network or duplicate packets being sent out of the DetNet 280 domain. PEF can be implemented by a DetNet edge node, a 281 DetNet relay node, or an end system. 283 PRF A Packet Replication Function (PRF) replicates DetNet flow 284 packets and forwards them to one or more next hops in the 285 DetNet domain. The number of packet copies sent to the next 286 hops is a DetNet flow specific parameter at the point of 287 replication. PRF can be implemented by a DetNet edge node, a 288 DetNet relay node, or an end system. 290 PREOF Collective name for Packet Replication, Elimination, and 291 Ordering Functions. 293 POF A Packet Ordering Function (POF) re-orders packets within a 294 DetNet flow that are received out of order. This function 295 can be implemented by a DetNet edge node, a DetNet relay 296 node, or an end system. 298 reservation 299 The set of resources allocated between a source and one or 300 more destinations through DetNet nodes and subnets associated 301 with a DetNet flow, to provide the provisioned DetNet 302 service. 304 2.2. IEEE 802.1 TSN to DetNet dictionary 306 This section also serves as a dictionary for translating from the 307 terms used by the Time-Sensitive Networking (TSN) Task Group 308 [IEEE802.1TSNTG] of the IEEE 802.1 WG to those of the DetNet WG. 310 Listener 311 The IEEE 802.1 term for a destination of a DetNet flow. 313 relay system 314 The IEEE 802.1 term for a DetNet intermediate node. 316 Stream 317 The IEEE 802.1 term for a DetNet flow. 319 Talker 320 The IEEE 802.1 term for the source of a DetNet flow. 322 3. Providing the DetNet Quality of Service 324 3.1. Primary goals defining the DetNet QoS 326 The DetNet Quality of Service can be expressed in terms of: 328 o Minimum and maximum end-to-end latency from source to destination; 329 timely delivery, and bounded jitter (packet delay variation) 330 derived from these constraints. 332 o Packet loss ratio, under various assumptions as to the operational 333 states of the nodes and links. 335 o An upper bound on out-of-order packet delivery. It is worth 336 noting that some DetNet applications are unable to tolerate any 337 out-of-order delivery. 339 It is a distinction of DetNet that it is concerned solely with worst- 340 case values for the end-to-end latency, jitter, and misordering. 341 Average, mean, or typical values are of little interest, because they 342 do not affect the ability of a real-time system to perform its tasks. 343 In general, a trivial priority-based queuing scheme will give better 344 average latency to a data flow than DetNet; however, it may not be a 345 suitable option for DetNet because of its worst-case latency. 347 Three techniques are used by DetNet to provide these qualities of 348 service: 350 o Congestion protection (Section 3.2.1). 352 o Service protection (Section 3.2.2). 354 o Explicit routes (Section 3.2.3). 356 Congestion protection operates by allocating resources along the path 357 of a DetNet flow, e.g., buffer space or link bandwidth. Congestion 358 protection greatly reduces, or even eliminates entirely, packet loss 359 due to output packet congestion within the network, but it can only 360 be supplied to a DetNet flow that is limited at the source to a 361 maximum packet size and transmission rate. Note that congestion 362 protection provided via congestion detection and notification is 363 explicitly excluded from consideration in DetNet, as it serves a 364 different set of applications. 366 Congestion protection addresses two of the DetNet QoS requirements: 367 latency and packet loss. Given that DetNet nodes have a finite 368 amount of buffer space, congestion protection necessarily results in 369 a maximum end-to-end latency. It also addresses the largest 370 contribution to packet loss, which is buffer congestion. 372 After congestion, the most important contributions to packet loss are 373 typically from random media errors and equipment failures. Service 374 protection is the name for the mechanisms used by DetNet to address 375 these losses. The mechanisms employed are constrained by the 376 requirement to meet the users' latency requirements. Packet 377 replication and elimination (Section 3.2.2) and packet encoding 378 (Section 3.2.2.3) are described in this document to provide service 379 protection; others may be found. For instance, packet encoding can 380 be used to provide service protection against random media errors, 381 packet replication and elimination can be used to provide service 382 protection against equipment failures. This mechanism distributes 383 the contents of DetNet flows over multiple paths in time and/or 384 space, so that the loss of some of the paths does need not cause the 385 loss of any packets. 387 The paths are typically (but not necessarily) explicit routes, so 388 that they do not normally suffer temporary interruptions caused by 389 the convergence of routing or bridging protocols. 391 These three techniques can be applied independently, giving eight 392 possible combinations, including none (no DetNet), although some 393 combinations are of wider utility than others. This separation keeps 394 the protocol stack coherent and maximizes interoperability with 395 existing and developing standards in this (IETF) and other Standards 396 Development Organizations. Some examples of typical expected 397 combinations: 399 o Explicit routes plus service protection are exactly the techniques 400 employed by seamless redundancy mechanisms applied on a ring 401 topology as described, e.g., in [IEC62439-3-2016]. In this 402 example, explicit routes are achieved by limiting the physical 403 topology of the network to a ring. Sequentialization, 404 replication, and duplicate elimination are facilitated by packet 405 tags added at the front or the end of Ethernet frames. [RFC8227] 406 provides another example in the context of MPLS. 408 o Congestion protection alone is offered by IEEE 802.1 Audio Video 409 bridging [IEEE802.1BA]. As long as the network suffers no 410 failures, zero congestion loss can be achieved through the use of 411 a reservation protocol (e.g., Multiple Stream Registration 412 Protocol [IEEE802.1Q-2018]), shapers in every bridge, and proper 413 dimensioning. 415 o Using all three together gives maximum protection. 417 There are, of course, simpler methods available (and employed, today) 418 to achieve levels of latency and packet loss that are satisfactory 419 for many applications. Prioritization and over-provisioning is one 420 such technique. However, these methods generally work best in the 421 absence of any significant amount of non-critical traffic in the 422 network (if, indeed, such traffic is supported at all), or work only 423 if the critical traffic constitutes only a small portion of the 424 network's theoretical capacity, or work only if all systems are 425 functioning properly, or in the absence of actions by end systems 426 that disrupt the network's operations. 428 There are any number of methods in use, defined, or in progress for 429 accomplishing each of the above techniques. It is expected that this 430 DetNet Architecture will assist various vendors, users, and/or 431 "vertical" Standards Development Organizations (dedicated to a single 432 industry) to make selections among the available means of 433 implementing DetNet networks. 435 3.2. Mechanisms to achieve DetNet QoS 437 3.2.1. Congestion protection 439 3.2.1.1. Eliminate congestion loss 441 The primary means by which DetNet achieves its QoS assurances is to 442 reduce, or even completely eliminate, congestion within a DetNet node 443 as a cause of packet loss. This can be achieved only by the 444 provision of sufficient buffer storage at each node through the 445 network to ensure that no packets are dropped due to a lack of buffer 446 storage. Note that a DetNet flow cannot be throttled, i.e., its 447 transmission rate cannot be reduced via explicit congestion 448 notification. 450 Ensuring adequate buffering requires, in turn, that the source, and 451 every DetNet node along the path to the destination (or nearly every 452 node, see Section 4.3.3) be careful to regulate its output to not 453 exceed the data rate for any DetNet flow, except for brief periods 454 when making up for interfering traffic. Any packet sent ahead of its 455 time potentially adds to the number of buffers required by the next 456 hop DetNet node and may thus exceed the resources allocated for a 457 particular DetNet flow. 459 The low-level mechanisms described in Section 4.5 provide the 460 necessary regulation of transmissions by an end system or DetNet node 461 to provide congestion protection. The allocation of the bandwidth 462 and buffers for a DetNet flow requires provisioning. A DetNet node 463 may have other resources requiring allocation and/or scheduling, that 464 might otherwise be over-subscribed and trigger the rejection of a 465 reservation. 467 3.2.1.2. Jitter Reduction 469 A core objective of DetNet is to enable the convergence of sensitive 470 non-IP networks onto a common network infrastructure. This requires 471 the accurate emulation of currently deployed mission-specific 472 networks, which for example rely on point-to-point analog (e.g., 473 4-20mA modulation) and serial-digital cables (or buses) for highly 474 reliable, synchronized and jitter-free communications. While the 475 latency of analog transmissions is basically the speed of light, 476 legacy serial links are usually slow (in the order of Kbps) compared 477 to, say, GigE, and some latency is usually acceptable. What is not 478 acceptable is the introduction of excessive jitter, which may, for 479 instance, affect the stability of control systems. 481 Applications that are designed to operate on serial links usually do 482 not provide services to recover the jitter, because jitter simply 483 does not exist there. DetNet flows are generally expected to be 484 delivered in-order and the precise time of reception influences the 485 processes. In order to converge such existing applications, there is 486 a desire to emulate all properties of the serial cable, such as clock 487 transportation, perfect flow isolation and fixed latency. While 488 minimal jitter (in the form of specifying minimum, as well as 489 maximum, end-to-end latency) is supported by DetNet, there are 490 practical limitations on packet-based networks in this regard. In 491 general, users are encouraged to use, instead of, "do this when you 492 get the packet," a combination of: 494 o Sub-microsecond time synchronization among all source and 495 destination end systems, and 497 o Time-of-execution fields in the application packets. 499 Jitter reduction is provided by the mechanisms described in 500 Section 4.5 that also provide congestion protection. 502 3.2.2. Service Protection 504 Service protection aims to mitigate or eliminate packet loss due to 505 equipment failures, random media and/or memory faults. These types 506 of packet loss can be greatly reduced by spreading the data over 507 multiple disjoint forwarding paths. Various service protection 508 methods are described in [RFC6372], e.g., 1+1 linear protection. 509 This section describes the functional details of an additional method 510 in Section 3.2.2.2, which can be implemented as described in 511 Section 3.2.2.3 or as specified in [I-D.ietf-detnet-dp-sol-mpls] in 512 order to provide 1+n hitless protection. The appropriate service 513 protection mechanism depends on the scenario and the requirements. 515 3.2.2.1. In-Order Delivery 517 Out-of-order packet delivery can be a side effect of service 518 protection. Packets delivered out-of-order impact the amount of 519 buffering needed at the destination to properly process the received 520 data. Such packets also influence the jitter of a flow. The DetNet 521 service includes maximum allowed misordering as a constraint. Zero 522 misordering would be a valid service constraint to reflect that the 523 end system(s) of the flow cannot tolerate any out-of-order delivery. 524 DetNet Packet Ordering Functionality (POF) (Section 3.2.2.2) can be 525 used to provide in-order delivery. 527 3.2.2.2. Packet Replication and Elimination 529 This section describes a service protection method that sends copies 530 of the same packets over multiple paths. 532 The DetNet service sub-layer includes the packet replication (PRF), 533 the packet elimination (PEF), and the packet ordering functionality 534 (POF) for use in DetNet edge, relay node, and end system packet 535 processing. Either of these functions can be enabled in a DetNet 536 edge node, relay node or end system. The collective name for all 537 three functions is PREOF. The packet replication and elimination 538 service protection method altogether involves four capabilities: 540 o Providing sequencing information to the packets of a DetNet 541 compound flow. This may be done by adding a sequence number or 542 time stamp as part of DetNet, or may be inherent in the packet, 543 e.g., in a Layer-4 transport protocol, or associated to other 544 physical properties such as the precise time (and radio channel) 545 of reception of the packet. This is typically done once, at or 546 near the source. 548 o The Packet Replication Function (PRF) replicates these packets 549 into multiple DetNet member flows and typically sends them along 550 multiple different paths to the destination(s), e.g., over the 551 explicit routes of Section 3.2.3. The location within a DetNet 552 node, and the mechanism used for the PRF is implementation 553 specific. 555 o The Packet Elimination Function (PEF) eliminates duplicate packets 556 of a DetNet flow based on the sequencing information and a history 557 of received packets. The output of the PEF is always a single 558 packet. This may be done at any DetNet node along the path to 559 save network resources further downstream, in particular if 560 multiple Replication points exist. But the most common case is to 561 perform this operation at the very edge of the DetNet network, 562 preferably in or near the receiver. The location within a DetNet 563 node, and mechanism used for the PEF is implementation specific. 565 o The Packet Ordering Function (POF) uses the sequencing information 566 to re-order a DetNet flow's packets that are received out of 567 order. 569 The order in which a DetNet node applies PEF, POF, and PRF to a 570 DetNet flow is implementation specific. 572 Some service protection mechanisms rely on switching from one flow to 573 another when a failure of a flow is detected. Contrarily, packet 574 replication and elimination combines the DetNet member flows sent 575 along multiple different paths, and performs a packet-by-packet 576 selection of which to discard, e.g., based on sequencing information. 578 In the simplest case, this amounts to replicating each packet in a 579 source that has two interfaces, and conveying them through the 580 network, along separate (SRLG disjoint) paths, to the similarly dual- 581 homed destinations, that discard the extras. This ensures that one 582 path (with zero congestion loss) remains, even if some DetNet 583 intermediate node fails. The sequencing information can also be used 584 for loss detection and for re-ordering. 586 DetNet relay nodes in the network can provide replication and 587 elimination facilities at various points in the network, so that 588 multiple failures can be accommodated. 590 This is shown in Figure 1, where the two relay nodes each replicate 591 (R) the DetNet flow on input, sending the DetNet member flows to both 592 the other relay node and to the end system, and eliminate duplicates 593 (E) on the output interface to the right-hand end system. Any one 594 link in the network can fail, and the DetNet compound flow can still 595 get through. Furthermore, two links can fail, as long as they are in 596 different segments of the network. 598 > > > > > > > > > relay > > > > > > > > 599 > /------------+ R node E +------------\ > 600 > / v + ^ \ > 601 end R + v | ^ + E end 602 system + v | ^ + system 603 > \ v + ^ / > 604 > \------------+ R relay E +-----------/ > 605 > > > > > > > > > node > > > > > > > > 607 Figure 1: Packet replication and elimination 609 Packet replication and elimination does not react to and correct 610 failures; it is entirely passive. Thus, intermittent failures, 611 mistakenly created packet filters, or misrouted data is handled just 612 the same as the equipment failures that are handled by typical 613 routing and bridging protocols. 615 If packet replication and elimination is used over paths providing 616 congestion protection (Section 3.2.1), and member flows that take 617 different-length paths through the network are combined, a merge 618 point may require extra buffering to equalize the delays over the 619 different paths. This equalization ensures that the resultant 620 compound flow will not exceed its contracted bandwidth even after one 621 or the other of the paths is restored after a failure. The extra 622 buffering can be also used to provide in-order delivery. 624 3.2.2.3. Packet encoding for service protection 626 There are methods for using multiple paths to provide service 627 protection that involve encoding the information in a packet 628 belonging to a DetNet flow into multiple transmission units, 629 combining information from multiple packets into any given 630 transmission unit. Such techniques, also known as "network coding", 631 can be used as a DetNet service protection technique. 633 3.2.3. Explicit routes 635 In networks controlled by typical dynamic control protocols such as 636 IS-IS or OSPF, a network topology event in one part of the network 637 can impact, at least briefly, the delivery of data in parts of the 638 network remote from the failure or recovery event. Even the use of 639 redundant paths through a network, e.g., as defined by [RFC6372] do 640 not eliminate the chances of packet loss. Furthermore, out-of-order 641 packet delivery can be a side effect of route changes. 643 Many real-time networks rely on physical rings of two-port devices, 644 with a relatively simple ring control protocol. This supports 645 redundant paths for service protection with a minimum of wiring. As 646 an additional benefit, ring topologies can often utilize different 647 topology management protocols than those used for a mesh network, 648 with a consequent reduction in the response time to topology changes. 649 Of course, this comes at some cost in terms of increased hop count, 650 and thus latency, for the typical path. 652 In order to get the advantages of low hop count and still ensure 653 against even very brief losses of connectivity, DetNet employs 654 explicit routes, where the path taken by a given DetNet flow does not 655 change, at least immediately, and likely not at all, in response to 656 network topology events. Service protection (Section 3.2.2 or 657 Section 3.2.2.3) over explicit routes provides a high likelihood of 658 continuous connectivity. Explicit routes can be established in 659 various ways, e.g., with RSVP-TE [RFC3209], with Segment Routing (SR) 660 [RFC8402], via a Software Defined Networking approach [RFC7426], with 661 IS-IS [RFC7813], etc. Explicit routes are typically used in MPLS TE 662 LSPs. 664 Out-of-order packet delivery can be a side effect of distributing a 665 single flow over multiple paths especially when there is a change 666 from one path to another when combining the flow. This is 667 irrespective of the distribution method used, and also applies to 668 service protection over explicit routes. As described in 669 Section 3.2.2.1, out-of-order packets influence the jitter of a flow 670 and impact the amount of buffering needed to process the data; 671 therefore, DetNet service includes maximum allowed misordering as a 672 constraint. The use of explicit routes helps to provide in-order 673 delivery because there is no immediate route change with the network 674 topology, but the changes are plannable as they are between the 675 different explicit routes. 677 3.3. Secondary goals for DetNet 679 Many applications require DetNet to provide additional services, 680 including coexistence with other QoS mechanisms Section 3.3.1 and 681 protection against misbehaving transmitters Section 3.3.2. 683 3.3.1. Coexistence with normal traffic 685 A DetNet network supports the dedication of a high proportion of the 686 network bandwidth to DetNet flows. But, no matter how much is 687 dedicated for DetNet flows, it is a goal of DetNet to coexist with 688 existing Class of Service schemes (e.g., DiffServ). It is also 689 important that non-DetNet traffic not disrupt the DetNet flow, of 690 course (see Section 3.3.2 and Section 5). For these reasons: 692 o Bandwidth (transmission opportunities) not utilized by a DetNet 693 flow is available to non-DetNet packets (though not to other 694 DetNet flows). 696 o DetNet flows can be shaped or scheduled, in order to ensure that 697 the highest-priority non-DetNet packet is also ensured a worst- 698 case latency. 700 o When transmission opportunities for DetNet flows are scheduled in 701 detail, then the algorithm constructing the schedule should leave 702 sufficient opportunities for non-DetNet packets to satisfy the 703 needs of the users of the network. Detailed scheduling can also 704 permit the time-shared use of buffer resources by different DetNet 705 flows. 707 Traffic policing functions (e.g., [RFC2475]) are used to avoid the 708 starvation of non-DetNet traffic. Thus, the net effect of the 709 presence of DetNet flows in a network on the non-DetNet flows is 710 primarily a reduction in the available bandwidth. 712 3.3.2. Fault Mitigation 714 Robust real-time systems require to reduce the number of possible 715 failures. Filters and policers should be used in a DetNet network to 716 detect if DetNet packets are received on the wrong interface, or at 717 the wrong time, or in too great a volume. Furthermore, filters and 718 policers can take actions to discard the offending packets or flows, 719 or trigger shutting down the offending flow or the offending 720 interface. 722 It is also essential that filters and service remarking be employed 723 at the network edge to prevent non-DetNet packets from being mistaken 724 for DetNet packets, and thus impinging on the resources allocated to 725 DetNet packets. 727 There exist techniques, at present and/or in various stages of 728 standardization, that can perform these fault mitigation tasks that 729 deliver a high probability that misbehaving systems will have zero 730 impact on well-behaved DetNet flows, except of course, for the 731 receiving interface(s) immediately downstream of the misbehaving 732 device. Examples of such techniques include traffic policing 733 functions (e.g., [RFC2475]) and separating flows into per-flow rate- 734 limited queues. 736 4. DetNet Architecture 738 4.1. DetNet stack model 740 DetNet functionality (Section 3) is implemented in two adjacent sub- 741 layers in the protocol stack: the DetNet service sub-layer and the 742 DetNet transport sub-layer. The DetNet service sub-layer provides 743 DetNet service, e.g., service protection, to higher layers in the 744 protocol stack and applications. The DetNet transport sub-layer 745 supports DetNet service in the underlying network, e.g., by providing 746 explicit routes and congestion protection to DetNet flows. 748 4.1.1. Representative Protocol Stack Model 750 Figure 2 illustrates a conceptual DetNet data plane layering model. 751 One may compare it to that in [IEEE802.1CB], Annex C. 753 | packets going | ^ packets coming ^ 754 v down the stack v | up the stack | 755 +----------------------+ +-----------------------+ 756 | Source | | Destination | 757 +----------------------+ +-----------------------+ 758 | Service sub-layer: | | Service sub-layer: | 759 | Packet sequencing | | Duplicate elimination | 760 | Flow replication | | Flow merging | 761 | Packet encoding | | Packet decoding | 762 +----------------------+ +-----------------------+ 763 | Transport sub-layer: | | Transport sub-layer: | 764 | Congestion prot. | | Congestion prot. | 765 | Explicit routes | | Explicit routes | 766 +----------------------+ +-----------------------+ 767 | Lower layers | | Lower layers | 768 +----------------------+ +-----------------------+ 769 v ^ 770 \_________________________/ 772 Figure 2: DetNet data plane protocol stack 774 Not all sub-layers are required for any given application, or even 775 for any given network. The functionality shown in Figure 2 is: 777 Application 778 Shown as "source" and "destination" in the diagram. 780 Packet sequencing 781 As part of DetNet service protection, supplies the sequence 782 number for packet replication and elimination 783 (Section 3.2.2). Peers with Duplicate elimination. This 784 sub-layer is not needed if a Layer-4 transport protocol is 785 expected to perform any packet sequencing and duplicate 786 elimination required by the DetNet flow replication. 788 Duplicate elimination 789 As part of the DetNet service sub-layer, based on the 790 sequenced number supplied by its peer, packet sequencing, 791 Duplicate elimination discards any duplicate packets 792 generated by DetNet flow replication. It can operate on 793 member flows, compound flows, or both. The replication may 794 also be inferred from other information such as the precise 795 time of reception in a scheduled network. The duplicate 796 elimination sub-layer may also perform resequencing of 797 packets to restore packet order in a flow that was disrupted 798 by the loss of packets on one or another of the multiple 799 paths taken. 801 Flow replication 802 As part of DetNet service protection, packets that belong to 803 a DetNet compound flow are replicated into two or more DetNet 804 member flows. This function is separate from packet 805 sequencing. Flow replication can be an explicit replication 806 and remarking of packets, or can be performed by, for 807 example, techniques similar to ordinary multicast 808 replication, albeit with resource allocation implications. 809 Peers with DetNet flow merging. 811 Flow merging 812 As part of DetNet service protection, merges DetNet member 813 flows together for packets coming up the stack belonging to a 814 specific DetNet compound flow. Peers with DetNet flow 815 replication. DetNet flow merging, together with packet 816 sequencing, duplicate elimination, and DetNet flow 817 replication perform packet replication and elimination 818 (Section 3.2.2). 820 Packet encoding 821 As part of DetNet service protection, as an alternative to 822 packet sequencing and flow replication, packet encoding 823 combines the information in multiple DetNet packets, perhaps 824 from different DetNet compound flows, and transmits that 825 information in packets on different DetNet member Flows. 826 Peers with Packet decoding. 828 Packet decoding 829 As part of DetNet service protection, as an alternative to 830 flow merging and duplicate elimination, packet decoding takes 831 packets from different DetNet member flows, and computes from 832 those packets the original DetNet packets from the compound 833 flows input to packet encoding. Peers with Packet encoding. 835 Congestion protection 836 The DetNet transport sub-layer provides congestion 837 protection. See Section 4.5. The actual queuing and shaping 838 mechanisms are typically provided by underlying subnet, these 839 can be closely associated with the means of providing paths 840 for DetNet flows, the path and the congestion protection are 841 conflated in this figure. 843 Explicit routes 844 The DetNet transport sub-layer provides mechanisms to ensure 845 that fixed paths are provided for DetNet flows. These 846 explicit paths avoid the impact of network convergence. 848 Operations, Administration, and Maintenance (OAM) leverages in-band 849 and out-of-band signaling that validates whether the service is 850 effectively obtained within QoS constraints. OAM is not shown in 851 Figure 2; it may reside in any number of the layers. OAM can involve 852 specific tagging added in the packets for tracing implementation or 853 network configuration errors; traceability enables to find whether a 854 packet is a replica, which DetNet relay node performed the 855 replication, and which segment was intended for the replica. Active 856 and hybrid OAM methods require additional bandwidth to perform fault 857 management and performance monitoring of the DetNet domain. OAM may, 858 for instance, generate special test probes or add OAM information 859 into the data packet. 861 The packet sequencing and replication elimination functions at the 862 source and destination ends of a DetNet compound flow may be 863 performed either in the end system or in a DetNet relay node. 865 4.1.2. DetNet Data Plane Overview 867 A "Deterministic Network" will be composed of DetNet enabled end 868 systems, DetNet edge nodes, DetNet relay nodes and collectively 869 deliver DetNet services. DetNet relay and edge nodes are 870 interconnected via DetNet transit nodes (e.g., LSRs) which support 871 DetNet, but are not DetNet service aware. All DetNet nodes are 872 connected to sub-networks, where a point-to-point link is also 873 considered as a simple sub-network. These sub-networks will provide 874 DetNet compatible service for support of DetNet traffic. Examples of 875 sub-networks include MPLS TE, IEEE 802.1 TSN and OTN. Of course, 876 multi-layer DetNet systems may also be possible, where one DetNet 877 appears as a sub-network, and provides service to, a higher layer 878 DetNet system. A simple DetNet concept network is shown in Figure 3. 879 Note that in this and following figures "Transport" and "Trp" refer 880 to the DetNet transport sub-layer, "Service" and "Svc" refer to the 881 DetNet service sub-layer, which are described in detail in 882 Section 4.1. 884 TSN Edge Transit Relay DetNet 885 End System Node Node Node End System 887 +---------+ +.........+ +---------+ 888 | Appl. |<--:Svc Proxy:-- End to End Service ---------->| Appl. | 889 +---------+ +---------+ +---------+ +---------+ 890 | TSN | |TSN| |Svc|<-- DetNet flow ---: Service :-->| Service | 891 +---------+ +---+ +---+ +---------+ +---------+ +---------+ 892 |Transport| |Trp| |Trp| |Transport| |Trp| |Trp| |Transport| 893 +-------.-+ +-.-+ +-.-+ +--.----.-+ +-.-+ +-.-+ +---.-----+ 894 : Link : / ,-----. \ : Link : / ,-----. \ 895 +.......+ +-[ Sub ]-+ +........+ +-[ Sub ]-+ 896 [Network] [Network] 897 `-----' `-----' 899 Figure 3: A Simple DetNet Enabled Network 901 Distinguishing the function of two DetNet data plane sub-layers, the 902 DetNet service sub-layer and the DetNet transport sub-layer, helps to 903 explore and evaluate various combinations of the data plane solutions 904 available, some are illustrated in Figure 4. This separation of 905 DetNet sub-layers, while helpful, should not be considered as formal 906 requirement. For example, some technologies may violate these strict 907 sub-layers and still be able to deliver a DetNet service. 909 . 910 . 911 +----------------------------+ 912 | DetNet Service sub-layer | PW, UDP, GRE 913 +----------------------------+ 914 | DetNet Transport sub-layer | IPv6, IPv4, MPLS TE LSPs, MPLS SR 915 +----------------------------+ 916 . 917 . 919 Figure 4: DetNet adaptation to data plane 921 In some networking scenarios, the end system initially provides a 922 DetNet flow encapsulation, which contains all information needed by 923 DetNet nodes (e.g., Real-time Transport Protocol (RTP) [RFC3550] 924 based DetNet flow carried over a native UDP/IP network or 925 PseudoWire). In other scenarios, the encapsulation formats might 926 differ significantly. 928 There are many valid options to create a data plane solution for 929 DetNet traffic by selecting a technology approach for the DetNet 930 service sub-layer and also selecting a technology approach for the 931 DetNet transport sub-layer. There are a high number of valid 932 combinations. 934 One of the most fundamental differences between different potential 935 data plane options is the basic headers used by DetNet nodes. For 936 example, the basic service can be delivered based on an MPLS label or 937 an IP header. This decision impacts the basic forwarding logic for 938 the DetNet service sub-layer. Note that in both cases, IP addresses 939 are used to address DetNet nodes. The selected DetNet transport sub- 940 layer technology also needs to be mapped to the sub-net technology 941 used to interconnect DetNet nodes. For example, DetNet flows will 942 need to be mapped to TSN Streams. 944 4.1.3. Network reference model 946 Figure 5 shows another view of the DetNet service related reference 947 points and main components. 949 DetNet DetNet 950 end system end system 951 _ _ 952 / \ +----DetNet-UNI (U) / \ 953 /App\ | /App\ 954 /-----\ | /-----\ 955 | NIC | v ________ | NIC | 956 +--+--+ _____ / \ DetNet-UNI (U) --+ +--+--+ 957 | / \__/ \ | | 958 | / +----+ +----+ \_____ | | 959 | / | | | | \_______ | | 960 +------U PE +----+ P +----+ \ _ v | 961 | | | | | | | ___/ \ | 962 | +--+-+ +----+ | +----+ | / \_ | 963 \ | | | | | / \ | 964 \ | +----+ +--+-+ +--+PE |------ U-----+ 965 \ | | | | | | | | | \_ _/ 966 \ +---+ P +----+ P +--+ +----+ | \____/ 967 \___ | | | | / 968 \ +----+__ +----+ DetNet-1 DetNet-2 969 | \_____/ \___________/ | 970 | | 971 | | End-to-End service | | | | 972 <-------------------------------------------------------------> 973 | | DetNet service | | | | 974 | <------------------------------------------------> | 975 | | | | | | 977 Figure 5: DetNet Service Reference Model (multi-domain) 979 DetNet-UNIs ("U" in Figure 5) are assumed in this document to be 980 packet-based reference points and provide connectivity over the 981 packet network. A DetNet-UNI may provide multiple functions, e.g., 982 it may add networking technology specific encapsulation to the DetNet 983 flows if necessary; it may provide status of the availability of the 984 resources associated with a reservation; it may provide a 985 synchronization service for the end system; it may carry enough 986 signaling to place the reservation in a network without a controller, 987 or if the controller only deals with the network but not the end 988 systems. Internal reference points of end systems (between the 989 application and the NIC) are more challenging from control 990 perspective and they may have extra requirements (e.g., in-order 991 delivery is expected in end system internal reference points, whereas 992 it is considered optional over the DetNet-UNI). 994 4.2. DetNet systems 996 4.2.1. End system 998 The native data flow between the source/destination end systems is 999 referred to as application-flow (App-flow). The traffic 1000 characteristics of an App-flow can be CBR (constant bit rate) or VBR 1001 (variable bit rate) and can have L1 or L2 or L3 encapsulation (e.g., 1002 TDM (time-division multiplexing), Ethernet, IP). These 1003 characteristics are considered as input for resource reservation and 1004 might be simplified to ensure determinism during transport (e.g., 1005 making reservations for the peak rate of VBR traffic, etc.). 1007 An end system may or may not be DetNet transport sub-layer aware or 1008 DetNet service sub-layer aware. That is, an end system may or may 1009 not contain DetNet specific functionality. End systems with DetNet 1010 functionalities may have the same or different transport sub-layer as 1011 the connected DetNet domain. Categorization of end systems are shown 1012 in Figure 6. 1014 End system 1015 | 1016 | 1017 | DetNet aware ? 1018 / \ 1019 +------< >------+ 1020 NO | \ / | YES 1021 | v | 1022 DetNet unaware | 1023 End system | 1024 | Service/Transport 1025 | sub-layer 1026 / \ aware ? 1027 +--------< >-------------+ 1028 t-aware | \ / | s-aware 1029 | v | 1030 | | both | 1031 | | | 1032 DetNet t-aware | DetNet s-aware 1033 End system | End system 1034 v 1035 DetNet st-aware 1036 End system 1038 Figure 6: Categorization of end systems 1040 Note some known use case examples for end systems: 1042 o DetNet unaware: The classic case requiring service proxies. 1044 o DetNet t-aware: A DetNet transport sub-layer aware system. It 1045 knows about some TSN functions (e.g., reservation), but not about 1046 service protection. 1048 o DetNet s-aware: A DetNet service sub-layer aware system. It 1049 supplies sequence numbers, but doesn't know about zero congestion 1050 loss. 1052 o DetNet st-aware: A full functioning DetNet end system, it has 1053 DetNet functionalities and usually the same forwarding paradigm as 1054 the connected DetNet domain. It can be treated as an integral 1055 part of the DetNet domain. 1057 4.2.2. DetNet edge, relay, and transit nodes 1059 As shown in Figure 3, DetNet edge nodes providing proxy service and 1060 DetNet relay nodes providing the DetNet service sub-layer are DetNet- 1061 aware, and DetNet transit nodes need only be aware of the DetNet 1062 transport sub-layer. 1064 In general, if a DetNet flow passes through one or more DetNet- 1065 unaware network nodes between two DetNet nodes providing the DetNet 1066 transport sub-layer for that flow, there is a potential for 1067 disruption or failure of the DetNet QoS. A network administrator 1068 needs to ensure that the DetNet-unaware network nodes are configured 1069 to minimize the chances of packet loss and delay, and provision 1070 enough extra buffer space in the DetNet transit node following the 1071 DetNet-unaware network nodes to absorb the induced latency 1072 variations. 1074 4.3. DetNet flows 1076 4.3.1. DetNet flow types 1078 A DetNet flow can have different formats while it is transported 1079 between the peer end systems. Therefore, the following possible 1080 types / formats of a DetNet flow are distinguished in this document: 1082 o App-flow: native format of the data carried over a DetNet flow. 1083 It does not contain any DetNet related attributes. 1085 o DetNet-t-flow: specific format of a DetNet flow. Only requires 1086 the congestion / latency features provided by the DetNet transport 1087 sub-layer. 1089 o DetNet-s-flow: specific format of a DetNet flow. Only requires 1090 the service protection feature ensured by the DetNet service sub- 1091 layer. 1093 o DetNet-st-flow: specific format of a DetNet flow. It requires 1094 both DetNet service sub-layer and DetNet transport sub-layer 1095 functions during forwarding. 1097 4.3.2. Source transmission behavior 1099 For the purposes of congestion protection, DetNet flows can be 1100 synchronous or asynchronous. In synchronous DetNet flows, at least 1101 the DetNet nodes (and possibly the end systems) are closely time 1102 synchronized, typically to better than 1 microsecond. By 1103 transmitting packets from different DetNet flows or classes of DetNet 1104 flows at different times, using repeating schedules synchronized 1105 among the DetNet nodes, resources such as buffers and link bandwidth 1106 can be shared over the time domain among different DetNet flows. 1107 There is a tradeoff among techniques for synchronous DetNet flows 1108 between the burden of fine-grained scheduling and the benefit of 1109 reducing the required resources, especially buffer space. 1111 In contrast, asynchronous DetNet flows are not coordinated with a 1112 fine-grained schedule, so relay and end systems must assume worst- 1113 case interference among DetNet flows contending for buffer resources. 1114 Asynchronous DetNet flows are characterized by: 1116 o A maximum packet size; 1118 o An observation interval; and 1120 o A maximum number of transmissions during that observation 1121 interval. 1123 These parameters, together with knowledge of the protocol stack used 1124 (and thus the size of the various headers added to a packet), limit 1125 the number of bit times per observation interval that the DetNet flow 1126 can occupy the physical medium. 1128 The source is required not to exceed these limits in order to obtain 1129 DetNet service. If the source transmits less data than this limit 1130 allows, the unused resource such as link bandwidth can be made 1131 available by the DetNet system to non-DetNet packets as long as all 1132 guarantees are fulfilled. However, making those resources available 1133 to DetNet packets in other DetNet flows would serve no purpose. 1134 Those other DetNet flows have their own dedicated resources, on the 1135 assumption that all DetNet flows can use all of their resources over 1136 a long period of time. 1138 There is no provision in DetNet for throttling DetNet flows, i.e., 1139 the transmission rate cannot be reduced via explicit congestion 1140 notification. The assumption is that a DetNet flow, to be useful, 1141 must be delivered in its entirety. That is, while any useful 1142 application is written to expect a certain number of lost packets, 1143 the real-time applications of interest to DetNet demand that the loss 1144 of data due to the network is a rare event. 1146 Although DetNet strives to minimize the changes required of an 1147 application to allow it to shift from a special-purpose digital 1148 network to an Internet Protocol network, one fundamental shift in the 1149 behavior of network applications is impossible to avoid: the 1150 reservation of resources before the application starts. In the first 1151 place, a network cannot deliver finite latency and practically zero 1152 packet loss to an arbitrarily high offered load. Secondly, achieving 1153 practically zero packet loss for unthrottled (though bandwidth 1154 limited) DetNet flows means that DetNet nodes have to dedicate buffer 1155 resources to specific DetNet flows or to classes of DetNet flows. 1157 The requirements of each reservation have to be translated into the 1158 parameters that control each DetNet system's queuing, shaping, and 1159 scheduling functions and delivered to the DetNet nodes and end 1160 systems. 1162 4.3.3. Incomplete Networks 1164 The presence in the network of intermediate nodes or subnets that are 1165 not fully capable of offering DetNet services complicates the ability 1166 of the intermediate nodes and/or controller to allocate resources, as 1167 extra buffering must be allocated at points downstream from the non- 1168 DetNet intermediate node for a DetNet flow. This extra buffering may 1169 increase latency and/or jitter. 1171 4.4. Traffic Engineering for DetNet 1173 Traffic Engineering Architecture and Signaling (TEAS) [TEAS] defines 1174 traffic-engineering architectures for generic applicability across 1175 packet and non-packet networks. From a TEAS perspective, Traffic 1176 Engineering (TE) refers to techniques that enable operators to 1177 control how specific traffic flows are treated within their networks. 1179 Because if its very nature of establishing explicit optimized paths, 1180 Deterministic Networking can be seen as a new, specialized branch of 1181 Traffic Engineering, and inherits its architecture with a separation 1182 into planes. 1184 The Deterministic Networking architecture is thus composed of three 1185 planes, a (User) Application Plane, a Controller Plane, and a Network 1186 Plane, which echoes that of Figure 1 of Software-Defined Networking 1187 (SDN): Layers and Architecture Terminology [RFC7426].: 1189 4.4.1. The Application Plane 1191 Per [RFC7426], the Application Plane includes both applications and 1192 services. In particular, the Application Plane incorporates the User 1193 Agent, a specialized application that interacts with the end user / 1194 operator and performs requests for Deterministic Networking services 1195 via an abstract Flow Management Entity, (FME) which may or may not be 1196 collocated with (one of) the end systems. 1198 At the Application Plane, a management interface enables the 1199 negotiation of flows between end systems. An abstraction of the flow 1200 called a Traffic Specification (TSpec) provides the representation. 1201 This abstraction is used to place a reservation over the (Northbound) 1202 Service Interface and within the Application plane. It is associated 1203 with an abstraction of location, such as IP addresses and DNS names, 1204 to identify the end systems and possibly specify DetNet nodes. 1206 4.4.2. The Controller Plane 1208 The Controller Plane corresponds to the aggregation of the Control 1209 and Management Planes in [RFC7426], though Common Control and 1210 Measurement Plane (CCAMP) [CCAMP] makes an additional distinction 1211 between management and measurement. When the logical separation of 1212 the Control, Measurement and other Management entities is not 1213 relevant, the term Controller Plane is used for simplicity to 1214 represent them all, and the term Controller Plane Function (CPF) 1215 refers to any device operating in that plane, whether is it a Path 1216 Computation Element (PCE) [RFC4655], or a Network Management entity 1217 (NME), or a distributed control plane. The CPF is a core element of 1218 a controller, in charge of computing Deterministic paths to be 1219 applied in the Network Plane. 1221 A (Northbound) Service Interface enables applications in the 1222 Application Plane to communicate with the entities in the Controller 1223 Plane as illustrated in Figure 7. 1225 One or more CPF(s) collaborate to implement the requests from the FME 1226 as Per-Flow Per-Hop Behaviors installed in the DetNet nodes for each 1227 individual flow. The CPFs place each flow along a deterministic 1228 sequence of DetNet nodes so as to respect per-flow constraints such 1229 as security and latency, and optimize the overall result for metrics 1230 such as an abstract aggregated cost. The deterministic sequence can 1231 typically be more complex than a direct sequence and include 1232 redundancy path, with one or more packet replication and elimination 1233 points. Scaling to larger networks is discussed in Section 4.9. 1235 4.4.3. The Network Plane 1237 The Network Plane represents the network devices and protocols as a 1238 whole, regardless of the Layer at which the network devices operate. 1239 It includes Forwarding Plane (data plane), Application, and 1240 Operational Plane (e.g., OAM) aspects. 1242 The network Plane comprises the Network Interface Cards (NIC) in the 1243 end systems, which are typically IP hosts, and DetNet nodes, which 1244 are typically IP routers and MPLS switches. Network-to-Network 1245 Interfaces such as used for Traffic Engineering path reservation in 1246 [RFC5921], as well as User-to-Network Interfaces (UNI) such as 1247 provided by the Local Management Interface (LMI) between network and 1248 end systems, are both part of the Network Plane, both in the control 1249 plane and the data plane. 1251 A Southbound (Network) Interface enables the entities in the 1252 Controller Plane to communicate with devices in the Network Plane as 1253 illustrated in Figure 7. This interface leverages and extends TEAS 1254 to describe the physical topology and resources in the Network Plane. 1256 End End 1257 System System 1259 -+-+-+-+-+-+-+ Northbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 1261 CPF CPF CPF CPF 1263 -+-+-+-+-+-+-+ Southbound -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- 1265 DetNet DetNet DetNet DetNet 1266 Node Node Node Node 1267 NIC NIC 1268 DetNet DetNet DetNet DetNet 1269 Node Node Node Node 1271 Figure 7: Northbound and Southbound interfaces 1273 The DetNet nodes (and possibly the end systems NIC) expose their 1274 capabilities and physical resources to the controller (the CPF), and 1275 update the CPFs with their dynamic perception of the topology, across 1276 the Southbound Interface. In return, the CPFs set the per-flow paths 1277 up, providing a Flow Characterization that is more tightly coupled to 1278 the DetNet node Operation than a TSpec. 1280 At the Network plane, DetNet nodes may exchange information regarding 1281 the state of the paths, between adjacent DetNet nodes and possibly 1282 with the end systems, and forward packets within constraints 1283 associated to each flow, or, when unable to do so, perform a last 1284 resort operation such as drop or declassify. 1286 This document focuses on the Southbound interface and the operation 1287 of the Network Plane. 1289 4.5. Queuing, Shaping, Scheduling, and Preemption 1291 DetNet achieves congestion protection and bounded delivery latency by 1292 reserving bandwidth and buffer resources at each DetNet node along 1293 the path of the DetNet flow. The reservation itself is not 1294 sufficient, however. Implementors and users of a number of 1295 proprietary and standard real-time networks have found that standards 1296 for specific data plane techniques are required to enable these 1297 assurances to be made in a multi-vendor network. The fundamental 1298 reason is that latency variation in one DetNet system results in the 1299 need for extra buffer space in the next-hop DetNet system(s), which 1300 in turn, increases the worst-case per-hop latency. 1302 Standard queuing and transmission selection algorithms allow traffic 1303 engineering Section 4.4 to compute the latency contribution of each 1304 DetNet node to the end-to-end latency, to compute the amount of 1305 buffer space required in each DetNet node for each incremental DetNet 1306 flow, and most importantly, to translate from a flow specification to 1307 a set of values for the managed objects that control each relay or 1308 end system. For example, the IEEE 802.1 WG has specified (and is 1309 specifying) a set of queuing, shaping, and scheduling algorithms that 1310 enable each DetNet node, and/or a central controller, to compute 1311 these values. These algorithms include: 1313 o A credit-based shaper [IEEE802.1Qav] (superseded by 1314 [IEEE802.1Q-2018]). 1316 o Time-gated queues governed by a rotating time schedule based on 1317 synchronized time [IEEE802.1Qbv] (superseded by 1318 [IEEE802.1Q-2018]). 1320 o Synchronized double (or triple) buffers driven by synchronized 1321 time ticks. [IEEE802.1Qch] (superseded by [IEEE802.1Q-2018]). 1323 o Pre-emption of an Ethernet packet in transmission by a packet with 1324 a more stringent latency requirement, followed by the resumption 1325 of the preempted packet [IEEE802.1Qbu] (superseded by 1326 [IEEE802.1Q-2018]), [IEEE802.3br] (superseded by 1327 [IEEE802.3-2018]). 1329 While these techniques are currently embedded in Ethernet 1330 [IEEE802.3-2018] and bridging standards, we can note that they are 1331 all, except perhaps for packet preemption, equally applicable to 1332 other media than Ethernet, and to routers as well as bridges. Other 1333 media may have its own methods, see, e.g., 1334 [I-D.ietf-6tisch-architecture], [RFC7554]. DetNet may include such 1335 definitions in the future, or may define how these techniques can be 1336 used by DetNet nodes. 1338 4.6. Service instance 1340 A Service instance represents all the functions required on a DetNet 1341 node to allow the end-to-end service between the UNIs. 1343 The DetNet network general reference model is shown in Figure 8 for a 1344 DetNet service scenario (i.e., between two DetNet-UNIs). In this 1345 figure, end systems ("A" and "B") are connected directly to the edge 1346 nodes of an IP/MPLS network ("PE1" and "PE2"). End systems 1347 participating in DetNet communication may require connectivity before 1348 setting up an App-flow that requires the DetNet service. Such a 1349 connectivity related service instance and the one dedicated for 1350 DetNet service share the same access. Packets belonging to a DetNet 1351 flow are selected by a filter configured on the access ("F1" and 1352 "F2"). As a result, data flow specific access ("access-A + F1" and 1353 "access-B + F2") are terminated in the flow specific service instance 1354 ("SI-1" and "SI-2"). A tunnel is used to provide connectivity 1355 between the service instances. 1357 The tunnel is exclusively used for the packets of the DetNet flow 1358 between "SI-1" and "SI-2". The service instances are configured to 1359 implement DetNet functions and a flow specific DetNet forwarding. 1360 The service instance and the tunnel may or may not be shared by 1361 multiple DetNet flows. Sharing the service instance by multiple 1362 DetNet flows requires properly populated forwarding tables of the 1363 service instance. 1365 access-A access-B 1366 <-----> <-------- tunnel ----------> <-----> 1368 +---------+ ___ _ +---------+ 1369 End system | +----+ | / \/ \_ | +----+ | End system 1370 "A" -------F1+ | | / \ | | +F2----- "B" 1371 | | +========+ IP/MPLS +=======+ | | 1372 | |SI-1| | \__ Net._/ | |SI-2| | 1373 | +----+ | \____/ | +----+ | 1374 |PE1 | | PE2| 1375 +---------+ +---------+ 1377 Figure 8: DetNet network general reference model 1379 The tunnel between the service instances may have some special 1380 characteristics. For example, in case of a DetNet L3 service, there 1381 are differences in the usage of the PW for DetNet traffic compared to 1382 the network model described in [RFC6658]. In the DetNet scenario, 1383 the PW is likely to be used exclusively by the DetNet flow, whereas 1384 [RFC6658] states: "The packet PW appears as a single point-to-point 1385 link to the client layer. Network-layer adjacency formation and 1386 maintenance between the client equipment will follow the normal 1387 practice needed to support the required relationship in the client 1388 layer ... This packet PseudoWire is used to transport all of the 1389 required Layer-2 and Layer-3 protocols between LSR1 and LSR2". 1390 Further details are network technology specific and can be found in 1391 [I-D.ietf-detnet-dp-sol-mpls] and [I-D.ietf-detnet-dp-sol-ip]. 1393 4.7. Flow identification at technology borders 1395 4.7.1. Exporting flow identification 1397 A DetNet node may need to map specific flows to lower layer flows (or 1398 Streams) in order to provide specific queuing and shaping services 1399 for specific flows. For example: 1401 o A non-IP, strictly L2 source end system X may be sending multiple 1402 flows to the same L2 destination end system Y. Those flows may 1403 include DetNet flows with different QoS requirements, and may 1404 include non-DetNet flows. 1406 o A router may be sending any number of flows to another router. 1407 Again, those flows may include DetNet flows with different QoS 1408 requirements, and may include non-DetNet flows. 1410 o Two routers may be separated by bridges. For these bridges to 1411 perform any required per-flow queuing and shaping, they must be 1412 able to identify the individual flows. 1414 o A Label Edge Router (LER) may have a Label Switched Path (LSP) set 1415 up for handling traffic destined for a particular IP address 1416 carrying only non-DetNet flows. If a DetNet flow to that same 1417 address is requested, a separate LSP may be needed, in order that 1418 all of the Label Switch Routers (LSRs) along the path to the 1419 destination give that flow special queuing and shaping. 1421 The need for a lower-layer node to be aware of individual higher- 1422 layer flows is not unique to DetNet. But, given the endless 1423 complexity of layering and relayering over tunnels that is available 1424 to network designers, DetNet needs to provide a model for flow 1425 identification that is better than packet inspection. That is not to 1426 say that packet inspection to Layer-4 or Layer-5 addresses will not 1427 be used, or the capability standardized; but, there are alternatives. 1429 A DetNet relay node can connect DetNet flows on different paths using 1430 different flow identification methods. For example: 1432 o A single unicast DetNet flow passing from router A through a 1433 bridged network to router B may be assigned a TSN Stream 1434 identifier that is unique within that bridged network. The 1435 bridges can then identify the flow without accessing higher-layer 1436 headers. Of course, the receiving router must recognize and 1437 accept that TSN Stream. 1439 o A DetNet flow passing from LSR A to LSR B may be assigned a 1440 different label than that used for other flows to the same IP 1441 destination. 1443 In any of the above cases, it is possible that an existing DetNet 1444 flow can be an aggregate carrying multiple other DetNet flows. (Not 1445 to be confused with DetNet compound vs. member flows.) Of course, 1446 this requires that the aggregate DetNet flow be provisioned properly 1447 to carry the aggregated flows. 1449 Thus, rather than packet inspection, there is the option to export 1450 higher-layer information to the lower layer. The requirement to 1451 support one or the other method for flow identification (or both) is 1452 a complexity that is part of DetNet control models. 1454 4.7.2. Flow attribute mapping between layers 1456 Transport of DetNet flows over multiple technology domains may 1457 require that lower layers are aware of specific flows of higher 1458 layers. Such an "exporting of flow identification" is needed each 1459 time when the forwarding paradigm is changed on the forwarding path 1460 (e.g., two LSRs are interconnected by a L2 bridged domain, etc.). 1461 The three representative forwarding methods considered for 1462 deterministic networking are: 1464 o IP routing 1466 o MPLS label switching 1468 o Ethernet bridging 1470 A packet with corresponding Flow-IDs is illustrated in Figure 9, 1471 which also indicates where each Flow-ID can be added or removed. 1473 add/remove add/remove 1474 Eth Flow-ID IP Flow-ID 1475 | | 1476 v v 1477 +-----------------------------------------------------------+ 1478 | | | | | 1479 | Eth | MPLS | IP | Application data | 1480 | | | | | 1481 +-----------------------------------------------------------+ 1482 ^ 1483 | 1484 add/remove 1485 MPLS Flow-ID 1487 Figure 9: Packet with multiple Flow-IDs 1489 The additional (domain specific) Flow-ID can be 1491 o created by a domain specific function or 1493 o derived from the Flow-ID added to the App-flow. 1495 The Flow-ID must be unique inside a given domain. Note that the 1496 Flow-ID added to the App-flow is still present in the packet, but 1497 transport nodes may lack the function to recognize it; that's why the 1498 additional Flow-ID is added. 1500 4.7.3. Flow-ID mapping examples 1502 IP nodes and MPLS nodes are assumed to be configured to push such an 1503 additional (domain specific) Flow-ID when sending traffic to an 1504 Ethernet switch (as shown in the examples below). 1506 Figure 10 shows a scenario where an IP end system ("IP-A") is 1507 connected via two Ethernet switches ("ETH-n") to an IP router ("IP- 1508 1"). 1510 IP domain 1511 <----------------------------------------------- 1513 +======+ +======+ 1514 |L3-ID | |L3-ID | 1515 +======+ /\ +-----+ +======+ 1516 / \ Forward as | | 1517 /IP-A\ per ETH-ID |IP-1 | Recognize 1518 Push ------> +-+----+ | +---+-+ <----- ETH-ID 1519 ETH-ID | +----+-----+ | 1520 | v v | 1521 | +-----+ +-----+ | 1522 +------+ | | +---------+ 1523 +......+ |ETH-1+----+ETH-2| +======+ 1524 .L3-ID . +-----+ +-----+ |L3-ID | 1525 +======+ +......+ +======+ 1526 |ETH-ID| .L3-ID . |ETH-ID| 1527 +======+ +======+ +------+ 1528 |ETH-ID| 1529 +======+ 1531 Ethernet domain 1532 <----------------> 1534 Figure 10: IP nodes interconnected by an Ethernet domain 1536 End system "IP-A" uses the original App-flow specific ID ("L3-ID"), 1537 but as it is connected to an Ethernet domain it has to push an 1538 Ethernet-domain specific flow-ID ("ETH-ID") before sending the packet 1539 to "ETH-1" node. Ethernet switch "ETH-1" can recognize the data flow 1540 based on the "ETH-ID" and it does forwarding toward "ETH-2". "ETH-2" 1541 switches the packet toward the IP router. "IP-1" must be configured 1542 to receive the Ethernet Flow-ID specific multicast flow, but (as it 1543 is an L3 node) it decodes the data flow ID based on the "L3-ID" 1544 fields of the received packet. 1546 Figure 11 shows a scenario where MPLS domain nodes ("PE-n" and "P-m") 1547 are connected via two Ethernet switches ("ETH-n"). 1549 MPLS domain 1550 <-----------------------------------------------> 1552 +=======+ +=======+ 1553 |MPLS-ID| |MPLS-ID| 1554 +=======+ +-----+ +-----+ +=======+ +-----+ 1555 | | Forward as | | | | 1556 |PE-1 | per ETH-ID | P-2 +-----------+ PE-2| 1557 Push -----> +-+---+ | +---+-+ +-----+ 1558 ETH-ID | +-----+----+ | \ Recognize 1559 | v v | +-- ETH-ID 1560 | +-----+ +-----+ | 1561 +---+ | | +----+ 1562 +.......+ |ETH-1+----+ETH-2| +=======+ 1563 .MPLS-ID. +-----+ +-----+ |MPLS-ID| 1564 +=======+ +=======+ 1565 |ETH-ID | +.......+ |ETH-ID | 1566 +=======+ .MPLS-ID. +-------+ 1567 +=======+ 1568 |ETH-ID | 1569 +=======+ 1570 Ethernet domain 1571 <----------------> 1573 Figure 11: MPLS nodes interconnected by an Ethernet domain 1575 "PE-1" uses the MPLS specific ID ("MPLS-ID"), but as it is connected 1576 to an Ethernet domain it has to push an Ethernet-domain specific 1577 flow-ID ("ETH-ID") before sending the packet to "ETH-1". Ethernet 1578 switch "ETH-1" can recognize the data flow based on the "ETH-ID" and 1579 it does forwarding toward "ETH-2". "ETH-2" switches the packet 1580 toward the MPLS node ("P-2"). "P-2" must be configured to receive 1581 the Ethernet Flow-ID specific multicast flow, but (as it is an MPLS 1582 node) it decodes the data flow ID based on the "MPLS-ID" fields of 1583 the received packet. 1585 One can appreciate from the above example that, when the means used 1586 for DetNet flow identification is altered or exported, the means for 1587 encoding the sequence number information must similarly be altered or 1588 exported. 1590 4.8. Advertising resources, capabilities and adjacencies 1592 Provisioning of DetNet requires knowledge about: 1594 o Details of the DetNet system's capabilities that are required in 1595 order to accurately allocate that DetNet system's resources, as 1596 well as other DetNet systems' resources. This includes, for 1597 example, which specific queuing and shaping algorithms are 1598 implemented (Section 4.5), the number of buffers dedicated for 1599 DetNet allocation, and the worst-case forwarding delay and 1600 misordering. 1602 o The dynamic state of a DetNet node's DetNet resources. 1604 o The identity of the DetNet system's neighbors, and the 1605 characteristics of the link(s) between the DetNet systems, 1606 including the latency of the links (in nanoseconds). 1608 4.9. Scaling to larger networks 1610 Reservations for individual DetNet flows require considerable state 1611 information in each DetNet node, especially when adequate fault 1612 mitigation (Section 3.3.2) is required. The DetNet data plane, in 1613 order to support larger numbers of DetNet flows, must support the 1614 aggregation of DetNet flows. Such aggregated flows can be viewed by 1615 the DetNet nodes' data plane largely as individual DetNet flows. 1616 Without such aggregation, the per-relay system may limit the scale of 1617 DetNet networks. Example techniques that may be used include MPLS 1618 hierarchy and IP DiffServ Code Points (DSCPs). 1620 4.10. Compatibility with Layer-2 1622 Standards providing similar capabilities for bridged networks (only) 1623 have been and are being generated in the IEEE 802 LAN/MAN Standards 1624 Committee. The present architecture describes an abstract model that 1625 can be applicable both at Layer-2 and Layer-3, and over links not 1626 defined by IEEE 802. 1628 DetNet enabled end systems and DetNet nodes can be interconnected by 1629 sub-networks, i.e., Layer-2 technologies. These sub-networks will 1630 provide DetNet compatible service for support of DetNet traffic. 1631 Examples of sub-networks include MPLS TE, 802.1 TSN, and a point-to- 1632 point OTN link. Of course, multi-layer DetNet systems may be 1633 possible too, where one DetNet appears as a sub-network, and provides 1634 service to, a higher layer DetNet system. 1636 5. Security Considerations 1638 Security in the context of Deterministic Networking has an added 1639 dimension; the time of delivery of a packet can be just as important 1640 as the contents of the packet, itself. A man-in-the-middle attack, 1641 for example, can impose, and then systematically adjust, additional 1642 delays into a link, and thus disrupt or subvert a real-time 1643 application without having to crack any encryption methods employed. 1644 See [RFC7384] for an exploration of this issue in a related context. 1646 Furthermore, in a control system where millions of dollars of 1647 equipment, or even human lives, can be lost if the DetNet QoS is not 1648 delivered, one must consider not only simple equipment failures, 1649 where the box or wire instantly becomes perfectly silent, but complex 1650 errors such as can be caused by software failures. Because there is 1651 essential no limit to the kinds of failures that can occur, 1652 protecting against realistic equipment failures is indistinguishable, 1653 in most cases, from protecting against malicious behavior, whether 1654 accidental or intentional. See also Section 3.3.2. 1656 Security must cover: 1658 o the protection of the signaling protocol 1660 o the authentication and authorization of the controlling systems 1662 o the identification and shaping of the DetNet flows 1664 Security considerations for DetNet are described in detail in 1665 [I-D.ietf-detnet-security]. 1667 6. Privacy Considerations 1669 DetNet is provides a Quality of Service (QoS), and as such, does not 1670 directly raise any new privacy considerations. 1672 However, the requirement for every (or almost every) node along the 1673 path of a DetNet flow to identify DetNet flows may present an 1674 additional attack surface for privacy, should the DetNet paradigm be 1675 found useful in broader environments. 1677 7. IANA Considerations 1679 This document does not require an action from IANA. 1681 8. Acknowledgements 1683 The authors wish to thank Lou Berger, David Black, Stewart Bryant, 1684 Rodney Cummings, Ethan Grossman, Craig Gunther, Marcel Kiessling, 1685 Rudy Klecka, Jouni Korhonen, Erik Nordmark, Shitanshu Shah, Wilfried 1686 Steiner, George Swallow, Michael Johas Teener, Pat Thaler, Thomas 1687 Watteyne, Patrick Wetterwald, Karl Weber, Anca Zamfir, for their 1688 various contribution with this work. 1690 9. Informative References 1692 [CCAMP] IETF, "Common Control and Measurement Plane Working 1693 Group", 1694 . 1696 [I-D.ietf-6tisch-architecture] 1697 Thubert, P., "An Architecture for IPv6 over the TSCH mode 1698 of IEEE 802.15.4", draft-ietf-6tisch-architecture-15 (work 1699 in progress), October 2018. 1701 [I-D.ietf-detnet-dp-sol-ip] 1702 Korhonen, J. and B. Varga, "DetNet IP Data Plane 1703 Encapsulation", draft-ietf-detnet-dp-sol-ip-01 (work in 1704 progress), October 2018. 1706 [I-D.ietf-detnet-dp-sol-mpls] 1707 Korhonen, J. and B. Varga, "DetNet MPLS Data Plane 1708 Encapsulation", draft-ietf-detnet-dp-sol-mpls-01 (work in 1709 progress), October 2018. 1711 [I-D.ietf-detnet-problem-statement] 1712 Finn, N. and P. Thubert, "Deterministic Networking Problem 1713 Statement", draft-ietf-detnet-problem-statement-07 (work 1714 in progress), October 2018. 1716 [I-D.ietf-detnet-security] 1717 Mizrahi, T., Grossman, E., Hacker, A., Das, S., Dowdell, 1718 J., Austad, H., Stanton, K., and N. Finn, "Deterministic 1719 Networking (DetNet) Security Considerations", draft-ietf- 1720 detnet-security-03 (work in progress), October 2018. 1722 [I-D.ietf-detnet-use-cases] 1723 Grossman, E., "Deterministic Networking Use Cases", draft- 1724 ietf-detnet-use-cases-19 (work in progress), October 2018. 1726 [IEC62439-3-2016] 1727 International Electrotechnical Commission (IEC) TC 65/SC 1728 65C - Industrial networks, "IEC 62439-3:2016 Industrial 1729 communication networks - High availability automation 1730 networks - Part 3: Parallel Redundancy Protocol (PRP) and 1731 High-availability Seamless Redundancy (HSR)", 2016, 1732 . 1734 [IEEE802.1BA] 1735 IEEE Standards Association, "IEEE Std 802.1BA-2011 Audio 1736 Video Bridging (AVB) Systems", 2011, 1737 . 1739 [IEEE802.1CB] 1740 IEEE Standards Association, "IEEE Std 802.1CB-2017 Frame 1741 Replication and Elimination for Reliability", 2017, 1742 . 1744 [IEEE802.1Q-2018] 1745 IEEE Standards Association, "IEEE Std 802.1Q-2018 Bridges 1746 and Bridged Networks", 2018, 1747 . 1749 [IEEE802.1Qav] 1750 IEEE Standards Association, "IEEE Std 802.1Qav-2009 1751 Bridges and Bridged Networks - Amendment 12: Forwarding 1752 and Queuing Enhancements for Time-Sensitive Streams", 1753 2009, . 1755 [IEEE802.1Qbu] 1756 IEEE Standards Association, "IEEE Std 802.1Qbu-2016 1757 Bridges and Bridged Networks - Amendment 26: Frame 1758 Preemption", 2016, 1759 . 1761 [IEEE802.1Qbv] 1762 IEEE Standards Association, "IEEE Std 802.1Qbv-2015 1763 Bridges and Bridged Networks - Amendment 25: Enhancements 1764 for Scheduled Traffic", 2015, 1765 . 1767 [IEEE802.1Qch] 1768 IEEE Standards Association, "IEEE Std 802.1Qch-2017 1769 Bridges and Bridged Networks - Amendment 29: Cyclic 1770 Queuing and Forwarding", 2017, 1771 . 1773 [IEEE802.1TSNTG] 1774 IEEE Standards Association, "IEEE 802.1 Time-Sensitive 1775 Networking Task Group", 2013, 1776 . 1778 [IEEE802.3-2018] 1779 IEEE Standards Association, "IEEE Std 802.3-2018 Standard 1780 for Ethernet", 2018, 1781 . 1783 [IEEE802.3br] 1784 IEEE Standards Association, "IEEE Std 802.3br-2016 1785 Standard for Ethernet Amendment 5: Specification and 1786 Management Parameters for Interspersing Express Traffic", 1787 2016, . 1789 [RFC2205] Braden, R., Ed., Zhang, L., Berson, S., Herzog, S., and S. 1790 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 1791 Functional Specification", RFC 2205, DOI 10.17487/RFC2205, 1792 September 1997, . 1794 [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., 1795 and W. Weiss, "An Architecture for Differentiated 1796 Services", RFC 2475, DOI 10.17487/RFC2475, December 1998, 1797 . 1799 [RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V., 1800 and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP 1801 Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001, 1802 . 1804 [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. 1805 Jacobson, "RTP: A Transport Protocol for Real-Time 1806 Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550, 1807 July 2003, . 1809 [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation 1810 Element (PCE)-Based Architecture", RFC 4655, 1811 DOI 10.17487/RFC4655, August 2006, 1812 . 1814 [RFC5921] Bocci, M., Ed., Bryant, S., Ed., Frost, D., Ed., Levrau, 1815 L., and L. Berger, "A Framework for MPLS in Transport 1816 Networks", RFC 5921, DOI 10.17487/RFC5921, July 2010, 1817 . 1819 [RFC6372] Sprecher, N., Ed. and A. Farrel, Ed., "MPLS Transport 1820 Profile (MPLS-TP) Survivability Framework", RFC 6372, 1821 DOI 10.17487/RFC6372, September 2011, 1822 . 1824 [RFC6658] Bryant, S., Ed., Martini, L., Swallow, G., and A. Malis, 1825 "Packet Pseudowire Encapsulation over an MPLS PSN", 1826 RFC 6658, DOI 10.17487/RFC6658, July 2012, 1827 . 1829 [RFC7384] Mizrahi, T., "Security Requirements of Time Protocols in 1830 Packet Switched Networks", RFC 7384, DOI 10.17487/RFC7384, 1831 October 2014, . 1833 [RFC7426] Haleplidis, E., Ed., Pentikousis, K., Ed., Denazis, S., 1834 Hadi Salim, J., Meyer, D., and O. Koufopavlou, "Software- 1835 Defined Networking (SDN): Layers and Architecture 1836 Terminology", RFC 7426, DOI 10.17487/RFC7426, January 1837 2015, . 1839 [RFC7554] Watteyne, T., Ed., Palattella, M., and L. Grieco, "Using 1840 IEEE 802.15.4e Time-Slotted Channel Hopping (TSCH) in the 1841 Internet of Things (IoT): Problem Statement", RFC 7554, 1842 DOI 10.17487/RFC7554, May 2015, 1843 . 1845 [RFC7813] Farkas, J., Ed., Bragg, N., Unbehagen, P., Parsons, G., 1846 Ashwood-Smith, P., and C. Bowers, "IS-IS Path Control and 1847 Reservation", RFC 7813, DOI 10.17487/RFC7813, June 2016, 1848 . 1850 [RFC8227] Cheng, W., Wang, L., Li, H., van Helvoort, H., and J. 1851 Dong, "MPLS-TP Shared-Ring Protection (MSRP) Mechanism for 1852 Ring Topology", RFC 8227, DOI 10.17487/RFC8227, August 1853 2017, . 1855 [RFC8402] Filsfils, C., Ed., Previdi, S., Ed., Ginsberg, L., 1856 Decraene, B., Litkowski, S., and R. Shakir, "Segment 1857 Routing Architecture", RFC 8402, DOI 10.17487/RFC8402, 1858 July 2018, . 1860 [TEAS] IETF, "Traffic Engineering Architecture and Signaling 1861 Working Group", 1862 . 1864 Authors' Addresses 1866 Norman Finn 1867 Huawei 1868 3101 Rio Way 1869 Spring Valley, California 91977 1870 US 1872 Phone: +1 925 980 6430 1873 Email: norman.finn@mail01.huawei.com 1874 Pascal Thubert 1875 Cisco Systems 1876 Village d'Entreprises Green Side 1877 400, Avenue de Roumanille 1878 Batiment T3 1879 Biot - Sophia Antipolis 06410 1880 FRANCE 1882 Phone: +33 4 97 23 26 34 1883 Email: pthubert@cisco.com 1885 Balazs Varga 1886 Ericsson 1887 Magyar tudosok korutja 11 1888 Budapest 1117 1889 Hungary 1891 Email: balazs.a.varga@ericsson.com 1893 Janos Farkas 1894 Ericsson 1895 Magyar tudosok korutja 11 1896 Budapest 1117 1897 Hungary 1899 Email: janos.farkas@ericsson.com