idnits 2.17.00 (12 Aug 2021) /tmp/idnits53017/draft-pthubert-detnet-ipv6-hbh-01.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 : ---------------------------------------------------------------------------- ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 166: '...e representation MUST be large enough ...' RFC 2119 keyword, line 175: '...uilds the option MUST be fine enough t...' RFC 2119 keyword, line 248: '... path. In that case, the Projected-Route 'P' flag [RPL-PDAO] MUST be...' RFC 2119 keyword, line 250: '... MUST be set to 0 by the originator,...' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (8 June 2021) is 347 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 RFC: RFC 8877 == Outdated reference: A later version (-01) exists of draft-hinden-6man-hbh-processing-00 ** Downref: Normative reference to an Informational RFC: RFC 9030 (ref. '6TiSCH-ARCHI') == Outdated reference: A later version (-09) exists of draft-pthubert-raw-architecture-05 ** Downref: Normative reference to an Informational draft: draft-pthubert-raw-architecture (ref. 'RAW-ARCHI') == Outdated reference: A later version (-25) exists of draft-ietf-roll-dao-projection-16 Summary: 4 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 DetNet P. Thubert, Ed. 3 Internet-Draft Cisco Systems 4 Intended status: Standards Track 8 June 2021 5 Expires: 10 December 2021 7 IPv6 Hop-by-Hop Options for DetNet 8 draft-pthubert-detnet-ipv6-hbh-01 10 Abstract 12 RFC 8938, the Deterministic Networking Data Plane Framework relies on 13 the 6-tuple to identify an IPv6 flow. But the full DetNet operations 14 require also the capabilities to signal meta-information such as a 15 sequence within that flow, and to transport different types of 16 packets along the same path with the same treatment, e.g., 17 Operations, Administration, and Maintenance packets and/or multiple 18 flows with fate and resource sharing. This document introduces new 19 Hop-by-Hop header options that can signal that information to the 20 intermediate relays. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at https://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on 10 December 2021. 39 Copyright Notice 41 Copyright (c) 2021 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 46 license-info) in effect on the date of publication of this document. 47 Please review these documents carefully, as they describe your rights 48 and restrictions with respect to this document. Code Components 49 extracted from this document must include Simplified BSD License text 50 as described in Section 4.e of the Trust Legal Provisions and are 51 provided without warranty as described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 56 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 57 3. The DetNet Options . . . . . . . . . . . . . . . . . . . . . 4 58 3.1. Sequencing Option . . . . . . . . . . . . . . . . . . . . 4 59 3.2. RPL Packet Information . . . . . . . . . . . . . . . . . 6 60 3.3. DetNet Local Path Option . . . . . . . . . . . . . . . . 7 61 3.4. DetNet Global Path Option . . . . . . . . . . . . . . . . 7 62 4. Security Considerations . . . . . . . . . . . . . . . . . . . 8 63 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 64 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 65 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 66 7.1. Normative References . . . . . . . . . . . . . . . . . . 8 67 7.2. Informative References . . . . . . . . . . . . . . . . . 9 68 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 10 70 1. Introduction 72 Section 2 of the Deterministic Networking Problem Statement 73 [DetNet-PS] introduces the concept of Deterministic Networking 74 (DetNet) to the IETF. DetNet extends the reach of lower layer 75 technologies such as Time-Sensitive Networking (TSN) [IEEE 802.1 TSN] 76 and Timeslotted Channel Hopping (TSCH) [IEEE Std. 802.15.4] over IPv6 77 and MPLS [RFC8938]. 79 The "Deterministic Networking Architecture" [DetNet-ARCHI] details 80 the contribution of layer-3 protocols, and defines three planes: the 81 Application (User) Plane, the Controller Plane, and the Network 82 Plane. [DetNet-ARCHI] places an emphasis on the centralized model 83 whereby a controller instantiates per-flow state in the routers to 84 perform adequate forwading operations so as to provide end-to-end 85 reliability and bounded latency guarantees. 87 The "6TiSCH Architecture" [6TiSCH-ARCHI] leverages RPL, the "Routing 88 Protocol for Low Power and Lossy Networks" [RFC6550] and introduces 89 concept of a Track as a highly redundant RPL Destination Oriented 90 Directed Acyclic Graph (DODAG) rooted at the Track Ingress node, that 91 can be installed using so-called projected routes [RPL-PDAO]. In 92 that case, the TrackId is an index from a namespace associated to one 93 IPv6 address of the Track Ingress node, and the Track that an IPv6 94 packet follows is signaled by the combination of the source address 95 (of the Track Ingress node), and the TrackID placed in a RPL Option 96 [RFC6553] located in an IPv6 Hop-by-Hop (HbH) Options Header [IPv6] 97 in the IPv6 packet. 99 The "Reliable and Available Wireless (RAW) Architecture/Framework" 100 [RAW-ARCHI], extends the DetNet Network Plane to accomodate one or 101 multiple hops of homogeneous or heterogeneous wireless technologies, 102 e.g. a Wi-Fi6 Mesh or parallel radio access links combining Wi-Fi and 103 5G. The RAW Architecture reuses the concept of Track and introduces 104 a new dataplane component, the Path Selection Engine (PSE), to 105 dynamically select a subpath and maintain the required quality of 106 service within a Track in the face of the rapid evolution of the 107 medium properties. 109 With [IPv6], the behavior of a router upon an IPv6 packet with a HbH 110 Options Header has evolved, making the examination of the header by 111 routers along the path optional, as opposed to previously mandatory. 112 Additionally, the Option Type for any option in a HbH Options Header 113 encodes in the leftmost bits whether a router that inspects the 114 header should drop the packet or ignore the option when encountering 115 an unknown option. Combined, these capabilities enable a larger use 116 of the header beyond the boundaries of a limited domain, as 117 examplified by the change of behavior of the RPL data plane, that was 118 changed to allow a packet with a RPL option to escape the RPL domain 119 in the larger Internet [RFC9008]. 121 "IPv6 Hop-by-Hop Options Processing Procedures" [HbH-PROCESS] further 122 specifies the procedures for how IPv6 Hop-by-Hop options are 123 processed to make their processing even more practical and increase 124 their use in the Internet. In that context, it makes sense to 125 consider the Hop-by-Hop Options to transport the information that is 126 relevant to DetNet, making it independant of the transport and 127 placing it early in the header chain. 129 The "Deterministic Networking Data Plane Framework" [RFC8938] relies 130 on the 6-tuple to identify an IPv6 flow. But the full DetNet 131 *operations require also the capabilities to signal meta-information 132 such as a sequence within that flow, and to transport different types 133 of packets along the same path with the same treatment. For 134 instance, it is required that Operations, Administration, and 135 Maintenance (OAM) [RFC6291] packets and/or multiple flows share the 136 same fate and resource sharing over the same Track or the same 137 Traffic Engineered (TE) [RFC3272] DetNet path. 139 This document introduces new Hop-by-Hop options that can signal 140 DetNet path and sequencing information to the intermediate relays; 141 with this method, the DetNet infoirmation is available early in the 142 packet and in an abstract form that is independant of the transport 143 layer. 145 2. Terminology 147 Timestamp semantics and timestamp formats used in this document are 148 defined in "Guidelines for Defining Packet Timestamps" [RFC8877]. 150 The Deterministic Networking terms used in this document are defined 151 in the "Deterministic Networking Architecture" [DetNet-ARCHI]. 153 The terms Track and TrackID are defined in the "6TiSCH Architecture" 154 [6TiSCH-ARCHI]. 156 3. The DetNet Options 158 This document defines a number of IPv6 options to be placed in a HbH 159 Options Header; the format of these options follow the generic 160 definition in section 4.2 of [IPv6]. 162 3.1. Sequencing Option 164 A typical packet sequence can be expressed uniquely as a wrapping 165 counter, represented as an unsigned integer in the option. In that 166 case, the size of the representation MUST be large enough to cover 167 several times the upper bound on out-of-order packet delivery in 168 terms of number of packets. 170 This specification also allows to use a time stamp for the packet 171 sequencing following the recommendations in [RFC8877]. This can be 172 accomplished by utilizing the Precision Time Protocol (PTP) format 173 defined in IEEE Std. 1588 [IEEE Std. 1588] or Network Time Protocol 174 (NTP) [RFC5905] formats. In that case, the timestamp resolution at 175 the node that builds the option MUST be fine enough to ensure that 176 two consecutive packets are never stamped with the same value. 178 This specification also allows for an hybrid model with a coarse 179 grained packet sequence within a coarse grained time stamp. In that 180 case, both a time stamp option and a wrapping counter options are 181 found, and the counter is used to compare packets with the same time 182 stamp. 184 0 1 2 3 185 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 186 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 187 | Option Type | Opt Data Len | Seq. Type | Reserved | 188 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 189 | | 190 . . 191 . Sequencing Information (variable Size) . 192 . . 193 | | 194 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 196 Figure 1: Sequencing Option Format 198 Sequencing Option fields: 200 Option Type: 8-bit identifier of the type of option. Value TBD by 201 IANA. 203 Sequence Type: 8-bit identifier of the type of sequencing 204 information. Value to be confirmed by IANA. 206 +=======+============+===============+===========================+ 207 | Seq. | Sequencing | Commin Name | Sequencing | 208 | Type | Type | | Information Format | 209 | Value | | | | 210 +=======+============+===============+===========================+ 211 | 1 | Wrapping | Basic | 32-bit unsigned | 212 | | Counter | Sequence | integer | 213 | | | Counter | | 214 +-------+============+---------------+---------------------------+ 215 | 2 | Wrapping | Zero-avoiding | 32-bit unsigned | 216 | | Counter | Sequence | integer, wraps to 1 | 217 | | | Counter | | 218 +-------+============+---------------+---------------------------+ 219 | 3 | Wrapping | RPL Sequence | 8-bit RPL sequence, | 220 | | Counter | Counter | see section 7. of | 221 | | | | [RFC6550] | 222 +-------+============+---------------+---------------------------+ 223 | 11 | Time Stamp | Fractional | NTP 64-bit Timestamp | 224 | | | NTP | Format, see section | 225 | | | | 4.2.1. of [RFC8877] | 226 +-------+============+---------------+---------------------------+ 227 | 12 | Time Stamp | Short NTP | NTP 32-bit Timestamp | 228 | | | | Format, see section | 229 | | | | 4.2.2. of [RFC8877] | 230 +-------+============+---------------+---------------------------+ 231 | 13 | Time Stamp | PTP | PTP 80-bit Timestamp | 232 | | | | Format, see [IEEE | 233 | | | | Std. 1588] | 234 +-------+============+---------------+---------------------------+ 235 | 14 | Time Stamp | Short PTP | PTP 64-bit Truncated | 236 | | | | Timestamp Format, | 237 | | | | see section 4.3. of | 238 | | | | [RFC8877] | 239 +-------+============+---------------+---------------------------+ 241 Table 1: Sequence Type values (suggested) 243 3.2. RPL Packet Information 245 6TiSCH [6TiSCH-ARCHI] and RAW [RAW-ARCHI] signal a Track using a RPL 246 Option [RFC6553] with a RPLInstanceID used as TrackID. This 247 specification reuses the RPL option as a method to signal a DetNet 248 path. In that case, the Projected-Route 'P' flag [RPL-PDAO] MUST be 249 set to 1, and the O, R, F flags, as well as the Sender Rank field, 250 MUST be set to 0 by the originator, forwarded as-is, and ignored on 251 reception. 253 3.3. DetNet Local Path Option 255 This specification also allows for an hybrid model with a coarse 256 grained packet sequence within a coarse grained time stamp. In that 257 case, both a time stamp option and a wrapping counter options are 258 found, and the counter is used to compare packets with the same time 259 stamp. 261 0 1 2 3 262 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 263 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 264 | Option Type | Opt Data Len | Local Path ID | 265 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 267 Figure 2: DetNet Local Path Option Format 269 Sequencing Option fields: 271 Option Type: 8-bit identifier of the type of option. Value TBD by 272 IANA. 274 Opt Data Len: 8-bit length of the option data, set to 2. 276 Local Path ID: 16-bit identifier of the DetNet Path, taken from a 277 local namespace associated with the IPv6 source address of the 278 packet. 280 3.4. DetNet Global Path Option 282 This specification also allows for an hybrid model with a coarse 283 grained packet sequence within a coarse grained time stamp. In that 284 case, both a time stamp option and a wrapping counter options are 285 found, and the counter is used to compare packets with the same time 286 stamp. 288 0 1 2 3 289 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 290 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 291 | Option Type | Opt Data Len | Origin Autonomous System | 292 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 293 | Global Path ID | 294 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 296 Figure 3: DetNet Glocal Path Option Format 298 Sequencing Option fields: 300 Option Type: 8-bit identifier of the type of option. Value TBD by 301 IANA. 303 Opt Data Len: 8-bit length of the option data, set to 6. 305 Origin Autonomous System: 16-bit identifier of the Autonomous 306 Systems (AS) that originates the path. 308 Global Path ID: 32-bit identifier of the DetNet Path, taken from a 309 local namespace associated with the origin AS of the DetNet path. 310 The value of 0 signals a DetNet path that is constrained within 311 the local AS or the local administrative DetNet domain. 313 4. Security Considerations 315 5. IANA Considerations 317 This document has no IANA actions. 319 6. Acknowledgments 321 TBD 323 7. References 325 7.1. Normative References 327 [IPv6] Deering, S. and R. Hinden, "Internet Protocol, Version 6 328 (IPv6) Specification", STD 86, RFC 8200, 329 DOI 10.17487/RFC8200, July 2017, 330 . 332 [RFC8877] Mizrahi, T., Fabini, J., and A. Morton, "Guidelines for 333 Defining Packet Timestamps", RFC 8877, 334 DOI 10.17487/RFC8877, September 2020, 335 . 337 [HbH-PROCESS] 338 Hinden, R. M. and G. Fairhurst, "IPv6 Hop-by-Hop Options 339 Processing Procedures", Work in Progress, Internet-Draft, 340 draft-hinden-6man-hbh-processing-00, 3 December 2020, 341 . 344 [DetNet-ARCHI] 345 Finn, N., Thubert, P., Varga, B., and J. Farkas, 346 "Deterministic Networking Architecture", RFC 8655, 347 DOI 10.17487/RFC8655, October 2019, 348 . 350 [6TiSCH-ARCHI] 351 Thubert, P., Ed., "An Architecture for IPv6 over the Time- 352 Slotted Channel Hopping Mode of IEEE 802.15.4 (6TiSCH)", 353 RFC 9030, DOI 10.17487/RFC9030, May 2021, 354 . 356 [RAW-ARCHI] 357 Thubert, P., Papadopoulos, G. Z., and R. Buddenberg, 358 "Reliable and Available Wireless Architecture/Framework", 359 Work in Progress, Internet-Draft, draft-pthubert-raw- 360 architecture-05, 15 November 2020, 361 . 364 7.2. Informative References 366 [RPL-PDAO] Thubert, P., Jadhav, R. A., and M. Gillmore, "Root 367 initiated routing state in RPL", Work in Progress, 368 Internet-Draft, draft-ietf-roll-dao-projection-16, 15 369 January 2021, . 372 [RFC6291] Andersson, L., van Helvoort, H., Bonica, R., Romascanu, 373 D., and S. Mansfield, "Guidelines for the Use of the "OAM" 374 Acronym in the IETF", BCP 161, RFC 6291, 375 DOI 10.17487/RFC6291, June 2011, 376 . 378 [RFC5905] Mills, D., Martin, J., Ed., Burbank, J., and W. Kasch, 379 "Network Time Protocol Version 4: Protocol and Algorithms 380 Specification", RFC 5905, DOI 10.17487/RFC5905, June 2010, 381 . 383 [RFC6550] Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J., 384 Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur, 385 JP., and R. Alexander, "RPL: IPv6 Routing Protocol for 386 Low-Power and Lossy Networks", RFC 6550, 387 DOI 10.17487/RFC6550, March 2012, 388 . 390 [RFC6553] Hui, J. and JP. Vasseur, "The Routing Protocol for Low- 391 Power and Lossy Networks (RPL) Option for Carrying RPL 392 Information in Data-Plane Datagrams", RFC 6553, 393 DOI 10.17487/RFC6553, March 2012, 394 . 396 [DetNet-PS] 397 Finn, N. and P. Thubert, "Deterministic Networking Problem 398 Statement", RFC 8557, DOI 10.17487/RFC8557, May 2019, 399 . 401 [RFC9008] Robles, M.I., Richardson, M., and P. Thubert, "Using RPI 402 Option Type, Routing Header for Source Routes, and IPv6- 403 in-IPv6 Encapsulation in the RPL Data Plane", RFC 9008, 404 DOI 10.17487/RFC9008, April 2021, 405 . 407 [RFC3272] Awduche, D., Chiu, A., Elwalid, A., Widjaja, I., and X. 408 Xiao, "Overview and Principles of Internet Traffic 409 Engineering", RFC 3272, DOI 10.17487/RFC3272, May 2002, 410 . 412 [RFC8938] Varga, B., Ed., Farkas, J., Berger, L., Malis, A., and S. 413 Bryant, "Deterministic Networking (DetNet) Data Plane 414 Framework", RFC 8938, DOI 10.17487/RFC8938, November 2020, 415 . 417 [IEEE Std. 802.15.4] 418 IEEE standard for Information Technology, "IEEE Std. 419 802.15.4, Part. 15.4: Wireless Medium Access Control (MAC) 420 and Physical Layer (PHY) Specifications for Low-Rate 421 Wireless Personal Area Networks". 423 [IEEE 802.1 TSN] 424 IEEE 802.1, "Time-Sensitive Networking (TSN) Task Group", 425 . 427 [IEEE Std. 1588] 428 IEEE, "IEEE Standard for a Precision Clock Synchronization 429 Protocol for Networked Measurement and Control Systems", 430 IEEE Standard 1588, 431 . 433 Author's Address 435 Pascal Thubert (editor) 436 Cisco Systems, Inc 437 France 439 Phone: +33 497 23 26 34 440 Email: pthubert@cisco.com