idnits 2.17.1 draft-geng-detnet-info-distribution-04.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 -- The document date (July 8, 2019) is 1747 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) ** Downref: Normative reference to an Informational draft: draft-finn-detnet-bounded-latency (ref. 'I-D.finn-detnet-bounded-latency') ** Obsolete normative reference: RFC 7810 (Obsoleted by RFC 8570) -- Obsolete informational reference (is this intentional?): RFC 5316 (Obsoleted by RFC 9346) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Interdomain Routing Working Group X. Geng 3 Internet-Draft M. Chen 4 Intended status: Standards Track Huawei 5 Expires: January 9, 2020 Z. Li 6 F. Qin 7 China Mobile 8 L. Qiang 9 July 8, 2019 11 IGP-TE Extensions for DetNet Information Distribution 12 draft-geng-detnet-info-distribution-04 14 Abstract 16 This document extends the IGP-TE, including OSPF-TE and ISIS-TE, to 17 support DetNet by specifying new information that can be placed in 18 Link State Protocol Data Units (LSP). This information describes 19 additional details regarding the state of the network that are useful 20 for DetNet computations. 22 Requirements Language 24 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 25 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 26 document are to be interpreted as described in RFC 2119 [RFC2119]. 28 Status of This Memo 30 This Internet-Draft is submitted in full conformance with the 31 provisions of BCP 78 and BCP 79. 33 Internet-Drafts are working documents of the Internet Engineering 34 Task Force (IETF). Note that other groups may also distribute 35 working documents as Internet-Drafts. The list of current Internet- 36 Drafts is at https://datatracker.ietf.org/drafts/current/. 38 Internet-Drafts are draft documents valid for a maximum of six months 39 and may be updated, replaced, or obsoleted by other documents at any 40 time. It is inappropriate to use Internet-Drafts as reference 41 material or to cite them other than as "work in progress." 43 This Internet-Draft will expire on January 9, 2020. 45 Copyright Notice 47 Copyright (c) 2019 IETF Trust and the persons identified as the 48 document authors. All rights reserved. 50 This document is subject to BCP 78 and the IETF Trust's Legal 51 Provisions Relating to IETF Documents 52 (https://trustee.ietf.org/license-info) in effect on the date of 53 publication of this document. Please review these documents 54 carefully, as they describe your rights and restrictions with respect 55 to this document. Code Components extracted from this document must 56 include Simplified BSD License text as described in Section 4.e of 57 the Trust Legal Provisions and are provided without warranty as 58 described in the Simplified BSD License. 60 Table of Contents 62 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 63 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 64 3. DetNet Extensions to OSPF TE . . . . . . . . . . . . . . . . 4 65 3.1. DetNet Node Attributes Advertisement . . . . . . . . . . 4 66 3.1.1. Packet Processing Delay Sub-TLV . . . . . . . . . . . 4 67 3.1.2. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 5 68 3.2. DetNet Link Attributtes Advertisement . . . . . . . . . . 6 69 3.2.1. Max DetNet Reservable Bandwidth Sub-TLV . . . . . . . 7 70 3.2.2. DetNet Available Bandwidth Sub-TLV . . . . . . . . . 7 71 3.2.3. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 8 72 3.2.4. Queuing Algorithm Capability Sub-TLV . . . . . . . . 9 73 3.2.5. DetNet Queue Sub-TLV . . . . . . . . . . . . . . . . 10 74 4. DetNet Extensions to ISIS TE . . . . . . . . . . . . . . . . 12 75 4.1. DetNet Node Attributes Advertisement . . . . . . . . . . 12 76 4.1.1. DetNet Processing Delay Sub-TLV . . . . . . . . . . . 12 77 4.1.2. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 13 78 4.2. DetNet Link Attributes Advertisement . . . . . . . . . . 14 79 4.2.1. Max DetNet Reservable Bandwidth Sub-TLV . . . . . . . 14 80 4.2.2. DetNet Available Bandwidth Sub-TLV . . . . . . . . . 15 81 4.2.3. PREOF Capability Sub-TLV . . . . . . . . . . . . . . 16 82 4.2.4. Queuing Algorithm Capability Sub-TLV . . . . . . . . 17 83 4.2.5. DetNet Queue Sub-TLV . . . . . . . . . . . . . . . . 17 84 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 85 5.1. Sub-TLVs for OSPF Node Attribute TLV . . . . . . . . . . 19 86 5.2. Sub-TLVs for OSPF Link TLV . . . . . . . . . . . . . . . 19 87 5.3. Sub-TLVs for ISIS Router Capability TLV . . . . . . . . . 20 88 5.4. Sub-TLVs for IS-IS TLVs 22, 23, 141, 222, and 223 . . . 20 89 6. Security Considerations . . . . . . . . . . . . . . . . . . . 20 90 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 20 91 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 20 92 8.1. Normative References . . . . . . . . . . . . . . . . . . 20 93 8.2. Informative References . . . . . . . . . . . . . . . . . 21 94 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 96 1. Introduction 98 There are many use cases from diverse industries which have the need 99 in common for deterministic service, for example: audio video 100 production, industrial process control and mobile access networks. 101 The requirements can be summarized as: 103 Deterministic minimum and maximum end-to-end latency from source 104 to destination 106 Extremely low packet loss rate 108 Deterministic Networking (DetNet) can satisfy the requirements by the 109 following techniques: 111 o Congestion Protection by reserving data plane resources for DetNet 112 flows in intermediate nodes along the path 114 o Explicit Route that do not rapidly change with the network 115 topology 117 o Seamless Redundant which can distribute DetNet flow packets over 118 multi paths to ensure delivery of each packet spite of the loss of 119 a path 121 To make the above techniques work, it's necessary to know the 122 capabilities (e.g., DetNet capable or not, which congestion 123 protection algorithms are supported, etc.), resources (e.g, dedicated 124 bandwidth for DetNet, buffers, etc.), performance (e.g., 125 device/queue/link delay etc.) and other relevant information of each 126 DetNet capable node. Then, a DetNet path computation element (e.g., 127 PCE or ingress of a DetNet flow) can use these information to compute 128 a path that satisfies the requirement of a specific DetNet flow. 129 Specifically, according to the requirements stated in DetNet 130 architecture, the information should include: 132 o Bandwidth related attributes (e.g., bandwidth reserved for 133 DetNet); 135 o Buffer/queue management related attributes (e.g., queue management 136 algorithm, etc.); 138 o PREOF (Packet Replication, Ordering and Elimination Function) 139 capabilities and parameters (e.g., maximum out-of-order packets, 140 etc.); 142 o Delay related attributes (e.g., node processing delay, queuing 143 delay, link delay, etc.); 145 This document defines extensions to OSPF and ISIS to distribute the 146 above DetNet information at node and/or link granularity. 148 Some of information (e.g., Link delay/loss ) can be distributed and 149 collected through Traffic Engineering (TE) metric extensions 150 [RFC7471] and [RFC7810], which are not covered by this document. 152 2. Terminology 154 All the DetNet related terminologies used in this document conform to 155 the DetNet architecture [I-D.ietf-detnet-architecture]. 157 3. DetNet Extensions to OSPF TE 159 This document defines an extension to OSPF used to advertise DetNet 160 information. 162 3.1. DetNet Node Attributes Advertisement 164 New OSPF DetNet sub-TLVs for Node Attribute TLV[RFC5786] are defined 165 to distribute the DetNet information of a node. These sub-TLVs 166 include: 168 ______________________________________________________________ 169 | Type | Length | Value | 170 |------------------------------------------------------------| 171 | TBD1 | 8 | DetNet Processing Delay | 172 | TBD4 | 4 | PREOF Capability | 173 |________|_______________|___________________________________| 175 3.1.1. Packet Processing Delay Sub-TLV 177 In the scope of DetNet, packet processing delay, which begins after 178 the packet goes into the input port and ends before the packet 179 arrives the output buffer, can expected in a known range, and the 180 value of the delay bound is specified in this sub-TLV, including: 182 o Maximum DetNet packet processing delay 184 o Minimum DetNet packet processing delay 186 o Maximum DetNet packet processing delay variation 188 The format of this sub-TLV is shown in the following diagram: 190 0 1 2 3 191 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 192 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 193 | Type(TBD1) | Length(8) | 194 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 195 | RESERVED | Minimum DetNet Processing Delay | 196 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 197 | RESERVED | Maximum DetNet Processing Delay | 198 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 199 | RESERVED | Maximum DetNet Processing Delay Variation | 200 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 202 The Type field is 2 octets in length, and the value is TBD1. 204 The Length field is 2 octets in length and its value is 8. 206 The RESERVED field is reserved for future use. It MUST be set to 0 207 when sent and MUST be ignored when received. 209 The Minimum DetNet Processing Delay field is 3 octets, and presents 210 the minimum delay for a DetNet flow in the device, excluding the 211 queuing delay in output port. The units are microsecond. 213 The Maximum DetNet Processing Delay field is 3 octets, and presents 214 the maximum delay for a DetNet flow in the device, excluding the 215 queuing delay in output port. The units are microsecond. 217 The Maximum DetNet Processing Delay Variation field is 3 octets in 218 length, and presents the maximum delay variation for a DetNet flow in 219 the device, excluding the queuing delay in output port. The units 220 are microsecond. 222 3.1.2. PREOF Capability Sub-TLV 224 PREOF (Packet Replication/Elimination/Ordering Function) is for 225 DetNet service protection, which includes: 227 o In-order delivery function: defined in Section 3.2.2.1 of 228 [I-D.ietf-detnet-architecture] 230 o Packet replication function: defined in Section 3.2.2.2 of 231 [I-D.ietf-detnet-architecture] 233 o Packet elimination function: defined in Section 3.2.2.3 of 234 [I-D.ietf-detnet-architecture] 236 This sub-TLV specifies a set of PREOF capabilities and relevant 237 parameters at node granularity. PREOF can also be advertised as Link 238 attribute (section 3.2.3), when not all of the ports in the node 239 support PREOF. 241 The format of this sub-TLV is shown in the following diagram: 243 0 1 2 3 244 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 245 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 246 | Type(TBD4) | Length(4) | 247 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 248 | Flags | Maximum out-of-order Packet Number | 249 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 251 The Type field is 2 octets in length, and the value is TBD4. 253 The Length field is 2 octets in length and its value is 4. 255 The Flags field is 1 octet in length, and it is designed as follows: 257 0 1 2 3 4 5 6 7 8 258 +-+-+-+-+-+-+-+-+ 259 |R|E|O| | 260 +-+-+-+-+-+-+-+-+ 262 where: 264 o R-flag: replication-capability flag, which indicates whether a 265 node has the packet replication capability. 267 o E-flag: elimination-capability flag, which indicates whether a 268 node has the packet elimination capability 270 o O-flag: in-order-capability, which indicates whether a LTP has the 271 in-order delivery capability 273 Maximum out-of-order Packet Number field is 3 octet in length, and 274 presents the maximum number of out-of-order packets that this link 275 can support, it depends on the reserved buffer size for packet 276 reordering. This value is valid only when the O-flag is set. 278 Editor' note: Maximum Replicated Copies number may be added in the 279 future version. 281 3.2. DetNet Link Attributtes Advertisement 283 New OSPF DetNet sub-TLVs for Link TLV are defined to distribute 284 DetNet information of a link. These sub-TLVs include: 286 ______________________________________________________________ 287 | Type | Length | Value | 288 |------------------------------------------------------------| 289 | TBD2 | 4 | Max DetNet Reservable Bandwidth | 290 | TBD3 | 4 | DetNet Available Bandwidth | 291 | TBD4 | 4 | PREOF Capability | 292 | TBD5 | 4 | Queuing Algorithm Capabilities | 293 | TBD6 | 10 | Queue Parameters | 294 |________|_______________|___________________________________| 296 3.2.1. Max DetNet Reservable Bandwidth Sub-TLV 298 This sub-TLV specifies the maximum amount of bandwidth that is 299 reserved for DetNet on this link. Note that this value SHOULD be 300 smaller than the value of Maximum Reservable Bandwidth sub-TLV 301 [RFC3630]. The value normally depends on the queuing management 302 algorithm and is user-configurable. In some particular queuing 303 management algorithm (e.g. Credit Based shaper in AVB), this value 304 will affect the calculation of maximum queuing delay of the DetNet 305 flow. The units are bytes per second. 307 The format of this sub-TLV is shown in the following diagram: 309 0 1 2 3 310 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 311 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 312 | Type(TBD2) | Length(4) | 313 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 314 | RESERVED | Maximum DetNet Reservable Bandwidth | 315 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 317 The Type field is 2 octets in length, and the value is TBD2. 319 The Length field is 2 octets in length and its value is 4. 321 The RESERVED field is reserved for future use. It MUST be set to 0 322 when sent and MUST be ignored when received. 324 This Maximum DetNet Reservable Bandwidth field is 3 octets in length, 325 and presents the maximum bandwidth that may be reserved for DetNet. 326 The units are bytes per second. 328 3.2.2. DetNet Available Bandwidth Sub-TLV 330 This sub-TLV specifies the available bandwidth that can be reserved 331 for DetNet flow on this link for now. Considering that there is no 332 generally accepted DetNet traffic classification, this value contains 333 all the available DetNet Bandwidth from different DetNet traffic 334 classes (if there is any), which differs from the Unreserved 335 Bandwidth defined in [RFC3630]. 337 The format of this sub-TLV is shown in the following diagram: 339 0 1 2 3 340 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 341 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 342 | Type(TBD3) | Length(4) | 343 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 344 | RESERVED | Available DetNet Bandwidth | 345 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 347 The Type field is 2 octets in length, and the value is TBD3. 349 The Length field is 2 octets in length and its value is 4. 351 The RESERVED field is reserved for future use. It MUST be set to 0 352 when sent and MUST be ignored when received. 354 This Available DetNet Bandwidth field is 3 octets in length, and 355 presents the available bandwidth for DetNet in this link. The units 356 are bytes per second. 358 3.2.3. PREOF Capability Sub-TLV 360 PREOF (Packet Replication/Elimination/Ordering Function) is for 361 DetNet service protection, which includes : 363 o In-order delivery function: defined in Section 3.2.2.1 of 364 [I-D.ietf-detnet-architecture] 366 o Packet replication function: defined in Section 3.2.2.2 of 367 [I-D.ietf-detnet-architecture] 369 o Packet elimination function: defined in Section 3.2.2.3 of 370 [I-D.ietf-detnet-architecture] 372 This sub-TLV specifies a set of PREOF capabilities and relevant 373 parameters at link granularity. PREOF can also be advertised as node 374 attribute (section 3.1.2), when all of the ports in the node support 375 PREOF. 377 The format of this sub-TLV is shown in the following diagram: 379 0 1 2 3 380 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 381 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 382 | Type(TBD4) | Length(4) | 383 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 384 | Flags | Maximum out-of-order Packet Number | 385 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 387 The Type field is 2 octets in length, and the value is TBD4. 389 The Length field is 2 octets in length and its value is 4. 391 The Flags field is 1 octet in length, and it is designed as follows: 393 0 1 2 3 4 5 6 7 8 394 +-+-+-+-+-+-+-+-+ 395 |R|E|O| | 396 +-+-+-+-+-+-+-+-+ 398 where: 400 o R-flag: replication-capability flag, which indicates whether a 401 link has the packet replication capability. 403 o E-flag: elimination-capability flag, which indicates whether a 404 link has the packet elimination capability 406 o O-flag: in-order-capability, which indicates whether a LTP has the 407 in-order delivery capability 409 Maximum out-of-order Packet Number field is 3 octet in length, and 410 presents the maximum number of out-of-order packets that this link 411 can support, it depends on the reserved buffer size for packet 412 reordering. This value is valid only when the O-flag is set. 414 3.2.4. Queuing Algorithm Capability Sub-TLV 416 This sub-TLV specifies queuing management algorithms capabilities to 417 gaurante bounded queuing latency [I-D.finn-detnet-bounded-latency]. 419 The format of this sub-TLV is shown in the following diagram: 421 0 1 2 3 422 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 423 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 424 | Type(TBD5) | Length(4) | 425 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 426 | Flags | RESERVED | 427 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 429 The Type field is 2 octets in length, and the value is TBD5. 431 The Length field is 2 octets in length and its value is 4. 433 The RESERVED field is reserved for future use. It MUST be set to 0 434 when sent and MUST be ignored when received. 436 The Flags field is 1 octet in length, and it is designed as follows: 438 0 1 2 3 4 5 6 7 8 439 +-+-+-+-+-+-+-+-+ 440 |C|T|H|A| | 441 +-+-+-+-+-+-+-+-+ 443 where: 445 o C-flag: CBS flag, which indicates whether a link can support Time 446 Aware Shaping [IIEEE802.1Qbv]. 448 o T-flag: TAS flag, which indicuate whether a link can support 449 Credit Based Shaper [IEEE802.1Q-2014] 451 o H-flag: CQF flag, which indicuate whether a link can support 452 Cyclic Queuing and Forwarding [IEEE802.1Qch] 454 o A-flag: ATS flag, which indicuate whether a link can support 455 Asynchronous Traffic Shaping [IEEE802.1Qcr] 457 3.2.5. DetNet Queue Sub-TLV 459 In the context of DetNet, the delay of queuing is bounded, and the 460 bound depends on what queuing management method is used and how many 461 buffers are allocated. This sub-TLV specifies the DetNet queue 462 parameters. 464 The format of this sub-TLV is shown in the following diagram: 466 0 1 2 3 467 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 468 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 469 | Type(TBD6) | Length(10) | 470 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 471 | Queue Identifier | Queue Buffer Size | 472 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 473 | Flags | Maximum Queuing Delay | 474 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 475 | RESERVED | Minimum Queuing Delay | 476 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 477 | RESERVED | Maximum Queuing Delay Variation | 478 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 480 The Type field is 2 octets in length, and the value is TBD6. 482 The Length field is 2 octets in length and its value is 10. 484 The Queue Identifier field is 3 octets in length, and specifies the 485 identifier of a queue. It could be an internal identifier that is 486 only used within a node. Or it could be used by a centralized 487 controller to specify in which specific queue a flow/packet is 488 required to enter. 490 The Queue Buffer Size field is 3 octets in length, and specifies the 491 size of a queue with unit of bytes. 493 The Flags field is 1 octet in length, and it is designed as follows: 495 0 1 2 3 4 5 6 7 8 496 +-+-+-+-+-+-+-+-+ 497 |C|T|H|A| | 498 +-+-+-+-+-+-+-+-+ 500 where: 502 o C-flag: CBS flag, which indicates whether a link can support Time 503 Aware Shaping [IIEEE802.1Qbv]. 505 o T-flag: TAS flag, which indicuate whether a link can support 506 Credit Based Shaper [IEEE802.1Q-2014] 508 o H-flag: CQF flag, which indicuate whether a link can support 509 Cyclic Queuing and Forwarding [IEEE802.1Qch] 511 o A-flag: ATS flag, which indicuate whether a link can support 512 Asynchronous Traffic Shaping [IEEE802.1Qcr] 514 The RESERVED field is reserved for future use. It MUST be set to 0 515 when sent and MUST be ignored when received. 517 Minimum Queuing Delay is 3 octets in length, and carries minimum 518 queuing delay value (in microseconds) encoded as an integer value. 519 Implementations may also add this to the value of Min Delay 520 Unidirectional Link Delay Sub-TLV [RFC7471] in order to advertise the 521 minimum delay of this link. Min Queuing Delay can be the same with 522 the Max Queuing Delay. 524 Maximum Queuing Delay is 3 octets in length, and carries the maximum 525 queuing delay value (in microseconds) encoded as an integer value. 526 Implementations may also add this to the value of Max Delay 527 Unidirectional Link Delay Sub-TLV [RFC7471]to order to advertise the 528 maximum delay of this link. 530 Maximum Queuing Delay variation is 3 octets in length, and carries 531 the maximum queuing delay variation value (in microseconds) encoded 532 as an integer value. 534 The RESERVED field is reserved for future use. It MUST be set to 0 535 when sent and MUST be ignored when received. 537 4. DetNet Extensions to ISIS TE 539 This document defines an extension to IS-IS used to advertise DetNet 540 information. 542 4.1. DetNet Node Attributes Advertisement 544 The DetNet node sub-TLVs are defined within the body of the IS-IS 545 Router Capability TLV [RFC7981] to carry DetNet information. 547 4.1.1. DetNet Processing Delay Sub-TLV 549 This sub-TLV specifies the DetNet packet porcessing parameters. The 550 reader can know more about this sub-TLV referring to section 3.1. 552 The format of this sub-TLV is shown in the following diagram: 554 0 1 2 3 555 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 556 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 557 | Type(TBD7) | Length(8) | 558 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 559 | RESERVED | Minimum DetNet Processing Delay | 560 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 561 | RESERVED | Maximum DetNet Processing Delay | 562 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 563 | RESERVED | Maximum DetNet Processing Delay Variation | 564 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 566 The Type field is 1 octets in length, and the value is TBD7. 568 The Length field is 1 octets in length and its value is 8. 570 The RESERVED field is reserved for future use. It MUST be set to 0 571 when sent and MUST be ignored when received. 573 The Minimum DetNet Processing Delay is 3 octets in length and 574 presents the minimum delay for a DetNet flow in the device, excluding 575 the queuing delay in output port. The units are microsecond. 577 The Maximum DetNet Processing Delay is 3 octets in length and 578 presents the maximum delay for a DetNet flow in the device, excluding 579 the queuing delay in output port. The units are microsecond. 581 The Maximum DetNet Processing Delay Variation is 3 octets in length 582 and presents the maximum delay variation for a DetNet flow in the 583 device, excluding the queuing delay in output port. The units are 584 microsecond. 586 4.1.2. PREOF Capability Sub-TLV 588 This sub-TLV specifies a set of PREOF capabilities and relevant 589 parameters in sub-TLV. The reader can know more about this sub-TLV 590 referring to section 3.4. 592 The format of this sub-TLV is shown in the following diagram: 594 0 1 2 3 595 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 596 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 597 | Type(TBD10) | Length(4) | 598 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 599 | Flags | Maximum out-of-order Packet Number | 600 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 602 The Type field is 1 octets in length, and the value is TBD10. 604 The Length field is 1 octets in length and its value is 4. 606 The Flags field is 1 octet in length, and it is designed as follows: 608 0 1 2 3 4 5 6 7 8 609 +-+-+-+-+-+-+-+-+ 610 |R|E|O| | 611 +-+-+-+-+-+-+-+-+ 613 where: 615 o R-flag: replication-capability flag, which indicates whether a 616 node has the packet replication capability. 618 o E-flag: elimination-capability flag, which indicates whether a 619 node has the packet elimination capability 621 o O-flag: in-order-capability, which indicates whether a LTP has the 622 in-order delivery capability 624 Maximum out-of-order Packet Number field is 3 octets in length and 625 presents the maximum number of out-of-order packets that this link 626 can support, it depends on the reserved buffer size for packet 627 reordering. This value is valid only when the O-flag is set. 629 Editor' note: Maximum Replicated Copies number may be added in the 630 future version. 632 4.2. DetNet Link Attributes Advertisement 634 This document defines new IS-IS TE sub-TLVs that can be announced in 635 the TLVs 22, 23, 141, 222, and 223 in order to distribute DetNet 636 information. The sub-TLV extensions below build on the ones provided 637 in [RFC5305], [RFC5316]and [RFC7310] 639 4.2.1. Max DetNet Reservable Bandwidth Sub-TLV 641 This sub-TLV specifies the maximum amount of bandwidth that is 642 reserved for DetNet on this link. Note that this value SHOULD be 643 smaller than the value of Maximum Reservable Link Bandwidth 644 [RFC5305]. The reader can know more about this sub-TLV referring to 645 section 3.2. 647 The format of this sub-TLV is shown in the following diagram: 649 0 1 2 3 650 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 651 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 652 | Type(TBD8) | Length(4) | 653 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 654 | RESERVED | Maximum DetNet Reservable Bandwidth | 655 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 657 The Type field is 1 octets in length, and the value is TBD8. 659 The Length field is 1 octets in length and its value is 4. 661 The RESERVED field is reserved for future use. It MUST be set to 0 662 when sent and MUST be ignored when received. 664 This Maximum DetNet Reservable Bandwidth field is 3 octets in length 665 and presents the maximum bandwidth that may be reserved for DetNet. 666 The units are bytes per second. 668 4.2.2. DetNet Available Bandwidth Sub-TLV 670 This sub-TLV specifies the available bandwidth that can be reserved 671 for DetNet flow on this link for now. It is different from the 672 Unreserved Bandwidth sub-TLV defined in [RFC5305] referring to 673 section 3.3. 675 The format of this sub-TLV is shown in the following diagram: 677 0 1 2 3 678 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 679 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 680 | Type(TBD9) | Length(4) | 681 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 682 | RESERVED | Available DetNet Bandwidth | 683 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 685 The Type field is 1 octets in length, and the value is TBD9. 687 The Length field is 1 octets in length and its value is 4. 689 The RESERVED field is reserved for future use. It MUST be set to 0 690 when sent and MUST be ignored when received. 692 This Available DetNet Bandwidth field is 3 octets in length and 693 presents the available bandwidth for DetNet in this link. The units 694 are bytes per second. 696 4.2.3. PREOF Capability Sub-TLV 698 This sub-TLV specifies a set of PREOF capabilities and relevant 699 parameters in sub-TLV. The reader can know more about this sub-TLV 700 referring to section 3.4. 702 The format of this sub-TLV is shown in the following diagram: 704 0 1 2 3 705 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 706 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 707 | Type(TBD10) | Length(4) | 708 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 709 | Flags | Maximum out-of-order Packet Number | 710 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 712 The Type field is 1 octets in length, and the value is TBD10. 714 The Length field is 1 octets in length and its value is 4. 716 The Flags field is 1 octet in length, and it is designed as follows: 718 0 1 2 3 4 5 6 7 8 719 +-+-+-+-+-+-+-+-+ 720 |R|E|O| | 721 +-+-+-+-+-+-+-+-+ 723 where: 725 o R-flag: replication-capability flag, which indicates whether a 726 link has the packet replication capability. 728 o E-flag: elimination-capability flag, which indicates whether a 729 link has the packet elimination capability 731 o O-flag: in-order-capability, which indicates whether a LTP has the 732 in-order delivery capability 734 Maximum out-of-order Packet Number field is 3 octets in length and 735 presents the maximum number of out-of-order packets that this link 736 can support, it depends on the reserved buffer size for packet 737 reordering. This value is valid only when the O-flag is set. 739 Editor' note: Maximum Replicated Copies number may be added in the 740 future version. 742 4.2.4. Queuing Algorithm Capability Sub-TLV 744 This sub-TLV specifies queuing management algorithms capabilities to 745 gaurante bounded queuing latency [I-D.finn-detnet-bounded-latency]. 747 The format of this sub-TLV is shown in the following diagram: 749 0 1 2 3 750 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 751 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 752 | Type(TBD11) | Length(4) | 753 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 754 | Flags | RESERVED | 755 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 757 The Type field is 1 octets in length, and the value is TBD11. 759 The Length field is 1 octets in length and its value is 4. 761 The Flags field is 1 octet in length, and it is designed as follows: 763 0 1 2 3 4 5 6 7 8 764 +-+-+-+-+-+-+-+-+ 765 |C|T|H|A| | 766 +-+-+-+-+-+-+-+-+ 768 where: 770 o C-flag: CBS flag, which indicates whether a link can support Time 771 Aware Shaping [IIEEE802.1Qbv]. 773 o T-flag: TAS flag, which indicuate whether a link can support 774 Credit Based Shaper [IEEE802.1Q-2014] 776 o H-flag: CQF flag, which indicuate whether a link can support 777 Cyclic Queuing and Forwarding [IEEE802.1Qch] 779 o A-flag: ATS flag, which indicuate whether a link can support 780 Asynchronous Traffic Shaping [IEEE802.1Qcr] 782 4.2.5. DetNet Queue Sub-TLV 784 In the context of DetNet, the delay of queuing is bounded, and the 785 bound depends on what queuing management method is used and how many 786 buffers are allocated. This sub-TLV specifies the DetNet queue 787 parameters. 789 The format of this sub-TLV is shown in the following diagram: 791 0 1 2 3 792 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 793 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 794 | Type(TBD12) | Length(10) | 795 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 796 | Queue Identifier | Queue Buffer Size | 797 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 798 | Flags | Maximum Queuing Delay | 799 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 800 | RESERVED | Minimum Queuing Delay | 801 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 802 | RESERVED | Maximum Queuing Delay Variation | 803 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 805 The Type field is 1 octets in length, and the value is TBD12. 807 The Length field is 1 octets in length and its value is 10. 809 The Queue Identifier field specifies the identifier of a queue. It 810 could be an internal identifier that is only used within a node. Or 811 it could be used by a centralized controller to specify in which 812 specific queue a flow/packet is required to enter. 814 The Queue Buffer Size field specifies the size of a queue with unit 815 of bytes. 817 The Flags field is 1 octet in length, and it is designed as follows: 819 0 1 2 3 4 5 6 7 8 820 +-+-+-+-+-+-+-+-+ 821 |C|T|H|A| | 822 +-+-+-+-+-+-+-+-+ 824 where: 826 o C-flag: CBS flag, which indicates whether a link can support Time 827 Aware Shaping [IIEEE802.1Qbv]. 829 o T-flag: TAS flag, which indicuate whether a link can support 830 Credit Based Shaper [IEEE802.1Q-2014] 832 o H-flag: CQF flag, which indicuate whether a link can support 833 Cyclic Queuing and Forwarding [IEEE802.1Qch] 835 o A-flag: ATS flag, which indicuate whether a link can support 836 Asynchronous Traffic Shaping [IEEE802.1Qcr] 838 The RESERVED field is reserved for future use. It MUST be set to 0 839 when sent and MUST be ignored when received. 841 Minimum Queuing Delay is 3 octets in length and presents minimum 842 queuing delay value (in microseconds) encoded as an integer value. 843 Implementations may also add this to the value of Min Delay 844 Unidirectional Link Delay Sub-TLV [RFC7471] in order to advertise the 845 minimum delay of this link. Min Queuing Delay can be the same with 846 the Max Queuing Delay. 848 Maximum Queuing Delay is 3 octets in length and presents the maximum 849 queuing delay value (in microseconds) encoded as an integer value. 850 Implementations may also add this to the value of Max Delay 851 Unidirectional Link Delay Sub-TLV [RFC7471]to order to advertise the 852 maximum delay of this link. 854 Maximum Queuing Delay variation is 3 octets in length and presents 855 the maximum queuing delay variation value (in microseconds) encoded 856 as an integer value. 858 5. IANA Considerations 860 5.1. Sub-TLVs for OSPF Node Attribute TLV 862 IANA is requested to register the OSPF sub-TLVs defined in this 863 document in the sub-TLVs for Node Attribute TLV registry. 865 Type Description 866 ---- ------------------------------ 867 TBD1 Packet Processing Delay 868 TBD2 PREOF Capability 870 5.2. Sub-TLVs for OSPF Link TLV 872 IANA is requested to register the OSPF sub-TLVs defined in this 873 document in the sub-TLVs for Link TLV registry. 875 Type Description 876 ---- ------------------------------ 877 TBD3 Maximum DetNet Reservable Bandwidth 878 TBD4 DetNet Available Bandwidth 879 TBD5 PREOF Capability 880 TBD6 Queuing Algorithm Capabilities 881 TBD7 Queue Parameters 883 5.3. Sub-TLVs for ISIS Router Capability TLV 885 IANA is requested to register the ISIS sub-TLVs defined in this 886 document in the sub-TLVs for Router Capability TLV registry. 888 Type Description 889 ---- ------------------------------ 890 TBD8 Packet Processing Delay 891 TBD9 PREOF Capability 893 5.4. Sub-TLVs for IS-IS TLVs 22, 23, 141, 222, and 223 895 IANA is requested to register the ISIS sub-TLVs defined in this 896 document in the Sub-TLVs for TLVs 22, 23, 141, 222, and 223 registry. 898 Type Description 899 ---- ------------------------------ 900 TBD10 Maximum DetNet Reservable Bandwidth 901 TBD11 DetNet Available Bandwidth 902 TBD12 PREOF Capability 903 TBD13 Queuing Algorithm Capabilities 904 TBD14 Queue Parameters 906 6. Security Considerations 908 This document does not introduce security issues beyond those 909 discussed in [RFC7471] and [RFC7810]. 911 7. Acknowledgements 913 8. References 915 8.1. Normative References 917 [I-D.finn-detnet-bounded-latency] 918 Finn, N., Boudec, J., Mohammadpour, E., Zhang, J., Varga, 919 B., and J. Farkas, "DetNet Bounded Latency", draft-finn- 920 detnet-bounded-latency-04 (work in progress), June 2019. 922 [I-D.ietf-detnet-architecture] 923 Finn, N., Thubert, P., Varga, B., and J. Farkas, 924 "Deterministic Networking Architecture", draft-ietf- 925 detnet-architecture-13 (work in progress), May 2019. 927 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 928 Requirement Levels", BCP 14, RFC 2119, 929 DOI 10.17487/RFC2119, March 1997, 930 . 932 [RFC5786] Aggarwal, R. and K. Kompella, "Advertising a Router's 933 Local Addresses in OSPF Traffic Engineering (TE) 934 Extensions", RFC 5786, DOI 10.17487/RFC5786, March 2010, 935 . 937 [RFC7471] Giacalone, S., Ward, D., Drake, J., Atlas, A., and S. 938 Previdi, "OSPF Traffic Engineering (TE) Metric 939 Extensions", RFC 7471, DOI 10.17487/RFC7471, March 2015, 940 . 942 [RFC7810] Previdi, S., Ed., Giacalone, S., Ward, D., Drake, J., and 943 Q. Wu, "IS-IS Traffic Engineering (TE) Metric Extensions", 944 RFC 7810, DOI 10.17487/RFC7810, May 2016, 945 . 947 [RFC7981] Ginsberg, L., Previdi, S., and M. Chen, "IS-IS Extensions 948 for Advertising Router Information", RFC 7981, 949 DOI 10.17487/RFC7981, October 2016, 950 . 952 8.2. Informative References 954 [IEEE802.1Q-2014] 955 "MAC Bridges and VLANs (IEEE 802.1Q-2014)", 2014. 957 [IEEE802.1Qch] 958 IEEE, "Cyclic Queuing and Forwarding", 2016. 960 [IEEE802.1Qcr] 961 IEEE, "Asynchronous Traffic Shaping", 2016. 963 [IIEEE802.1Qbv] 964 IEEE, "Enhancements for Scheduled Traffic", 2016. 966 [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering 967 (TE) Extensions to OSPF Version 2", RFC 3630, 968 DOI 10.17487/RFC3630, September 2003, 969 . 971 [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic 972 Engineering", RFC 5305, DOI 10.17487/RFC5305, October 973 2008, . 975 [RFC5316] Chen, M., Zhang, R., and X. Duan, "ISIS Extensions in 976 Support of Inter-Autonomous System (AS) MPLS and GMPLS 977 Traffic Engineering", RFC 5316, DOI 10.17487/RFC5316, 978 December 2008, . 980 [RFC7310] Lindsay, J. and H. Foerster, "RTP Payload Format for 981 Standard apt-X and Enhanced apt-X Codecs", RFC 7310, 982 DOI 10.17487/RFC7310, July 2014, 983 . 985 Authors' Addresses 987 Xuesong Geng 988 Huawei 990 Email: gengxuesong@huawei.com 992 Mach(Guoyi) Chen 993 Huawei 995 Email: mach.chen@huawei.com 997 Zhenqiang Li 998 China Mobile 1000 Email: lizhenqiang@chinamobile.com 1002 Fengwei Qin 1003 China Mobile 1005 Email: qinfengwei@chinamobile.com 1007 Li Qiang