idnits 2.17.00 (12 Aug 2021) /tmp/idnits50558/draft-thubert-roll-flow-label-00.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 (May 4, 2012) is 3669 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) ** Obsolete normative reference: RFC 2460 (Obsoleted by RFC 8200) == Outdated reference: draft-ietf-roll-terminology has been published as RFC 7102 Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 ROLL P. Thubert, Ed. 3 Internet-Draft Cisco 4 Intended status: Standards Track May 4, 2012 5 Expires: November 5, 2012 7 Use of the IPv6 Flow Label within an LLN 8 draft-thubert-roll-flow-label-00 10 Abstract 12 In a Low Power Lossy Network, the traditional tuple of source, 13 destination and ports might not be the proper indication to isolate a 14 meaningful flow. For instance, it can be a requirement for the 15 aggregation of related measurements from multiple sources to be 16 treated as a single flow following a same path in order to experience 17 similar jitter and latency. In that case, the Flow Label in packets 18 outgoing a RPL domain could and sometimes should be set by the root 19 of the RPL structure. It derives that the Flow Label could be reused 20 inside the RPL domain. This document present how the Flow Label can 21 be used inside a LLN as a replacement to the RPL option and provides 22 rules for the root to set and reset the Flow Label when forwarding 23 between the inside of RPL domain and the larger Internet, in both 24 direction. 26 Status of this Memo 28 This Internet-Draft is submitted in full conformance with the 29 provisions of BCP 78 and BCP 79. 31 Internet-Drafts are working documents of the Internet Engineering 32 Task Force (IETF). Note that other groups may also distribute 33 working documents as Internet-Drafts. The list of current Internet- 34 Drafts is at http://datatracker.ietf.org/drafts/current/. 36 Internet-Drafts are draft documents valid for a maximum of six months 37 and may be updated, replaced, or obsoleted by other documents at any 38 time. It is inappropriate to use Internet-Drafts as reference 39 material or to cite them other than as "work in progress." 41 This Internet-Draft will expire on November 5, 2012. 43 Copyright Notice 45 Copyright (c) 2012 IETF Trust and the persons identified as the 46 document authors. All rights reserved. 48 This document is subject to BCP 78 and the IETF Trust's Legal 49 Provisions Relating to IETF Documents 50 (http://trustee.ietf.org/license-info) in effect on the date of 51 publication of this document. Please review these documents 52 carefully, as they describe your rights and restrictions with respect 53 to this document. Code Components extracted from this document must 54 include Simplified BSD License text as described in Section 4.e of 55 the Trust Legal Provisions and are provided without warranty as 56 described in the Simplified BSD License. 58 Table of Contents 60 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 61 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4 62 3. Flow Label Format Within the RPL Domain . . . . . . . . . . . . 4 63 4. Root Operation . . . . . . . . . . . . . . . . . . . . . . . . 5 64 4.1. Incoming Packets . . . . . . . . . . . . . . . . . . . . . 5 65 4.2. Outgoing Packets . . . . . . . . . . . . . . . . . . . . . 5 66 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 67 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 68 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 6 69 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 70 8.1. Normative References . . . . . . . . . . . . . . . . . . . 6 71 8.2. Informative References . . . . . . . . . . . . . . . . . . 6 72 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 6 74 1. Introduction 76 In some Low Power and Lossy Network (LLN) applications such as 77 control systems [RFC5673], a packet loss is usually acceptable but 78 jitter and latency must be strictly controlled as they can play a 79 critical role in the interpretation of the measured information. 80 Sensory systems are often distributed, and the control information 81 can in fact be aggregated from multiple source. 83 If this aggregated control information is transported across the 84 Internet, it should be treated as a single flow for two reasons: 86 The bulk of the traffic consists of small chunks of data (in the 87 order few bytes to a few tens of bytes) at a time. In industrial 88 applications, a typical frequency is 4Hz but it can be a lot 89 slower than that for, say, environmental monitoring. The 90 granularity of that traffic is too small to make a lot of sense in 91 load balancing application. 93 The control system may be fooled into misbehaviors if the latency 94 and jitter of packets vary from a source to another source for a 95 related measurement. 97 This is a case where related packets from multiple sources should not 98 be load-balanced along their path in the Internet; this is 99 discouraged by tagging those packets with a same Flow Label in the 100 IPv6 [RFC2460] header. 102 The Routing Protocol for Low Power and Lossy Networks (RPL) [RFC6550] 103 specification defines a generic Distance Vector protocol that is 104 adapted to a variety of LLNs. RPL forms Destination Oriented 105 Directed Acyclic Graphs (DODAGs) which root often acts as the Border 106 Router to connect the RPL domain to the Internet. The root is 107 responsible to select the RPL Instance that is used to forward a 108 packet coming from the Internet into the RPL domain. 110 A classical RPL implementation will use the RPL Option for Carrying 111 RPL Information in Data-Plane Datagrams [RFC6553] to tag a packet 112 with the Instance ID and other information that RPL requires for its 113 operation within the RPL domain. Sadly, the Option must be placed in 114 a Hop-by-Hop option that must be inserted or removed as the packet 115 crosses the border of the RPL domain. This operation may involve an 116 extra encapsulation that is detrimental to the network operation, in 117 particular with regards to bandwidth and battery constraints. 119 All the packets that are leaving a DODAG of a RPL domain towards the 120 Internet will transit via a same root. The root is an ideal place to 121 set the IPv6 Flow Label to a same value across multiple sources of a 122 same flow when that operation is needed, ensuring complience with the 123 rules defined by the IPv6 Flow Label Specification [RFC6437] within 124 the Internet. At the same time, the root segragates the Internet and 125 the RPL domain, allowing to reuse the Flow Label within the RPL 126 domain. 128 This document specifies how the Flow Label can be reused within the 129 RPL domain as a replacement to the RPL option. The use of the Flow 130 Label within a RPL domain is an instance of the stateful scenarios 131 decribed in [RFC6437] where the states include the rank of a node and 132 the RPLInstanceID that identifies the routing topology. 134 2. Terminology 136 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 137 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 138 document are to be interpreted as described in [RFC2119]. 140 The Terminology used in this document is consistent with and 141 incorporates that described in `Terminology in Low power And Lossy 142 Networks' [I-D.ietf-roll-terminology] and [RFC6550]. 144 3. Flow Label Format Within the RPL Domain 146 [RFC6550] section 11.2 specifies the fields that are to be placed 147 into the packets for the purpose of Instance Identification, as well 148 as Loop Avoidance and Detection. Those fields include an 'O', and 149 'R' and an 'F' bits, the 8-bit RPLInstanceID, and the 16-bit 150 SenderRank. SenderRank is the result of the DAGRank operation on the 151 rank of the sender, where the DAGRank operation is defined in section 152 3.5.1 as: 154 DAGRank(rank) = floor(rank/MinHopRankIncrease) 156 If MinHopRankIncrease is set to a multiple of 256, it appears that 157 the most significant 8 bits of the SenderRank will be all zeroes and 158 could be ommitted. In that case, the Flow Label MAY be used as a 159 replacement to the [RFC6553] RPL option. To achive this, the 160 SenderRank is expressed with 8 least significant bits, and the 161 information carried within the Flow Label in a packet is constructed 162 follows: 164 0 1 2 165 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 166 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 167 | |O|R|F| SenderRank | RPLInstanceID | 168 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 170 Figure 1: The RPL Flow Label 172 The first (leftmost) bit of the Flow Label is reserved and should be 173 set to zero. 175 4. Root Operation 177 4.1. Incoming Packets 179 When routing a packet towards the RPL domain, the root applies a 180 policy to determine whether the Flow Label is to be used to carry the 181 RPL information. If so, the root MUST reset the Flow Label and then 182 it MUST set all the fields in the Flow Label as prescribed by 183 [RFC6553] using the format specified in Figure 1. In particular, the 184 root selects the Instance that will be used to forward the packet 185 within the RPL domain. 187 4.2. Outgoing Packets 189 When routing a packet outside the RPL domain, the root applies a 190 policy to determine whether the Flow Label was used to carry the RPL 191 information. If so, the root MUST reset the Flow Label. The root 192 SHOULD recompute a Flow Label following the rules prescribed by 193 [RFC6553]. In particular, the root MAY ignore the source address but 194 it SHOULD use the RPLInstanceID for the computation. 196 5. Security Considerations 198 The process of using the Flow Label as opposed to the RPL option does 199 not appear to create any opening for new threat compared to 200 [RFC6553]. 202 6. IANA Considerations 204 No IANA action is required for this specification. 206 7. Acknowledgments 208 8. References 210 8.1. Normative References 212 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 213 Requirement Levels", BCP 14, RFC 2119, March 1997. 215 [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 216 (IPv6) Specification", RFC 2460, December 1998. 218 [RFC6550] Winter, T., Thubert, P., Brandt, A., Hui, J., Kelsey, R., 219 Levis, P., Pister, K., Struik, R., Vasseur, JP., and R. 220 Alexander, "RPL: IPv6 Routing Protocol for Low-Power and 221 Lossy Networks", RFC 6550, March 2012. 223 [RFC6553] Hui, J. and JP. Vasseur, "The Routing Protocol for Low- 224 Power and Lossy Networks (RPL) Option for Carrying RPL 225 Information in Data-Plane Datagrams", RFC 6553, 226 March 2012. 228 8.2. Informative References 230 [I-D.ietf-roll-terminology] 231 Vasseur, J., "Terminology in Low power And Lossy 232 Networks", draft-ietf-roll-terminology-06 (work in 233 progress), September 2011. 235 [RFC5673] Pister, K., Thubert, P., Dwars, S., and T. Phinney, 236 "Industrial Routing Requirements in Low-Power and Lossy 237 Networks", RFC 5673, October 2009. 239 [RFC6437] Amante, S., Carpenter, B., Jiang, S., and J. Rajahalme, 240 "IPv6 Flow Label Specification", RFC 6437, November 2011. 242 Author's Address 244 Pascal Thubert (editor) 245 Cisco Systems 246 Village d'Entreprises Green Side 247 400, Avenue de Roumanille 248 Batiment T3 249 Biot - Sophia Antipolis 06410 250 FRANCE 252 Phone: +33 4 97 23 26 34 253 Email: pthubert@cisco.com