idnits 2.17.1 draft-ietf-roll-mpl-parameter-configuration-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 : ---------------------------------------------------------------------------- ** 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 204: '... the option. It SHOULD be 16 (without...' RFC 2119 keyword, line 240: '... Clients MAY request MPL Parameter C...' RFC 2119 keyword, line 245: '... Clients MUST discard MPL Parameter ...' RFC 2119 keyword, line 252: '...Option, the node SHOULD join the MPL d...' RFC 2119 keyword, line 253: '...rder. Each node SHOULD configure its ...' (3 more instances...) Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (March 11, 2014) is 3699 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) == Unused Reference: 'I-D.ietf-dhc-option-guidelines' is defined on line 336, but no explicit reference was found in the text == Outdated reference: A later version (-12) exists of draft-ietf-roll-trickle-mcast-07 ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 4242 (Obsoleted by RFC 8415) Summary: 3 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 roll Y. Doi 3 Internet-Draft TOSHIBA Corporation 4 Intended status: Standards Track M. Gillmore 5 Expires: September 12, 2014 Itron, Inc 6 March 11, 2014 8 MPL Parameter Configuration Option for DHCPv6 9 draft-ietf-roll-mpl-parameter-configuration-00 11 Abstract 13 This draft defines a way to configure MPL parameter set via DHCPv6 14 option. MPL has a set of parameters to control its behavior, and the 15 parameter set is often configured as a network-wide parameter because 16 the parameter set should be identical for each MPL forwarder in an 17 MPL domain. Using the MPL Parameter Configuration Option defined in 18 this document, a network can be configured with a single set of MPL 19 parameter easily. 21 Status of this Memo 23 This Internet-Draft is submitted in full conformance with the 24 provisions of BCP 78 and BCP 79. 26 Internet-Drafts are working documents of the Internet Engineering 27 Task Force (IETF). Note that other groups may also distribute 28 working documents as Internet-Drafts. The list of current Internet- 29 Drafts is at http://datatracker.ietf.org/drafts/current/. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as "work in progress." 36 This Internet-Draft will expire on September 12, 2014. 38 Copyright Notice 40 Copyright (c) 2014 IETF Trust and the persons identified as the 41 document authors. All rights reserved. 43 This document is subject to BCP 78 and the IETF Trust's Legal 44 Provisions Relating to IETF Documents 45 (http://trustee.ietf.org/license-info) in effect on the date of 46 publication of this document. Please review these documents 47 carefully, as they describe your rights and restrictions with respect 48 to this document. Code Components extracted from this document must 49 include Simplified BSD License text as described in Section 4.e of 50 the Trust Legal Provisions and are provided without warranty as 51 described in the Simplified BSD License. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 56 2. MPL Parameter Configuration Option . . . . . . . . . . . . . . 3 57 2.1. Unsigned Short Floating Point . . . . . . . . . . . . . . . 4 58 2.2. MPL Parameter Configuration Option Format . . . . . . . . . 5 59 2.3. DHCPv6 Client Behavior . . . . . . . . . . . . . . . . . . 6 60 2.4. MPL Forwarder Behavior . . . . . . . . . . . . . . . . . . 6 61 2.5. DHCPv6 Server Behavior . . . . . . . . . . . . . . . . . . 7 62 2.6. DHCPv6 Relay Behavior . . . . . . . . . . . . . . . . . . . 7 63 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 64 4. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 65 5. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 66 5.1. Normative References . . . . . . . . . . . . . . . . . . . 8 67 5.2. Non-Normative References . . . . . . . . . . . . . . . . . 8 68 Appendix A. Update History . . . . . . . . . . . . . . . . . . . . 8 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 71 1. Introduction 73 Multicast Protocol for Low power and Lossy Networks (MPL) 74 [I-D.ietf-roll-trickle-mcast] defines a protocol to make a multicast 75 network among low power and lossy network i.e. wireless mesh 76 networks. MPL has a set of parameters to control its behavior and 77 tradeoff between end-to-end delay and network utilization. In most 78 environments, the default parameters are acceptable. However, in 79 some environments, the parameter set must be configured carefully in 80 order to meet the requirements of each environment. According to the 81 MPL draft section 5.4, each parameter in the set should be same for 82 all nodes within an MPL domain. And the MPL draft does not define a 83 method to configure the MPL parameter set. 85 Some managed wireless mesh networks may have a DHCP server to 86 configure network parameters. MPL parameter set shall be considered 87 as a part of network parameters (nodes in an MPL domain should use an 88 identical parameter set). This document is to define the way to 89 distribute parameter sets for MPL forwarders as a simple DHCPv6 90 [RFC3315] option. 92 2. MPL Parameter Configuration Option 94 Per MPL domain, there are following 10 parameters. An MPL domain is 95 defined by an MPL domain address. 97 o PROACTIVE_FORWARDING 99 o SEED_SET_ENTRY_LIFETIME 101 o DATA_MESSAGE_IMIN 103 o DATA_MESSAGE_IMAX 105 o DATA_MESSAGE_K 107 o DATA_MESSAGE_TIMER_EXPIRATIONS 109 o CONTROL_MESSAGE_IMIN 111 o CONTROL_MESSAGE_IMAX 113 o CONTROL_MESSAGE_K 115 o CONTROL_MESSAGE_TIMER_EXPIRATIONS 117 One network may have multiple MPL domains with different 118 configurations. To configure more than one MPL domain via DHCP, 119 there may be more than one MPL Parameter Configuration Option given 120 to DHCP clients from a DHCP server. 122 2.1. Unsigned Short Floating Point 124 MPL has many timer parameters. Expected range of the timers depends 125 on the network topology or MAC/PHY nature. To accommodate wide range 126 of timer values efficiently, the MPL Parameter Configuration Option 127 uses base-10 unsigned short floating point number with 3-bit exponent 128 and 13-bit significand defined as follows (exp. stands for exponent). 130 0 1 131 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 132 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 133 | exp.| significand | 134 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 136 The represented value is (significand) * 10^(exp.). The minimum 137 exponent is 0 (binary 000) and the maximum is 6 (binary 110). exp=7 138 (binary 111) is reserved for future use. The minimum significand is 139 0 (all 0) and the maximum is 8191 (all 1). 141 Unlike IEEE754 half precision floating point (binary16), there is no 142 sign bit (no negative value for a timer), exponent is not biased (no 143 fractional value for a timer), no implicit leading 1 in siginificand, 144 and base is 10. Therefore, there could be more than one 145 representation for a value. 147 Followings are examples of common timer values represented by unit of 148 millisecond. 150 One second (1,000 milliseconds): exp = 3, significand = 1, 0x6001. 152 One minute (60,000 milliseconds): exp = 4, significand = 6, 0x8006. 154 One hour (3,600,000 milliseconds): exp = 5, significand = 36, 155 0xa024. 157 One day (86,400,000 milliseconds): exp = 5, significand = 864, 158 0xa360 160 Maximum timer length represented by an unsigned short floating point 161 with millisecond precision is 8191 * 10^6 milliseconds (13 weeks 3 162 days 19 hours 16 minutes 40 seconds). 164 With exponent and significand, an unsigned short floating point 165 (usfp) can be encoded as follows. 167 usfp = (exponent << 13)|(0x1fff & significand); 169 2.2. MPL Parameter Configuration Option Format 171 To distribute a configuration of an MPL domain or a default value for 172 all MPL domains (wildcard) under the network managed by the DHCP 173 server, this document defines a DHCPv6 option format as follows. 174 Short floating point format is used to describe wide range of timer 175 values. 177 0 1 2 3 178 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 179 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 180 | OPTION_MPL_PARAMETERS | option_len | 181 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 182 |P| Z | C_K | Z2 | DM_K | SE_LIFETIME | 183 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 184 | DM_IMIN | DM_IMAX | 185 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 186 | DM_T_EXP | C_IMIN | 187 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 188 | C_IMAX | C_T_EXP | 189 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 191 (if option_len = 32 ) 192 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 193 | MPL Domain Address (128bits) | 194 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 195 | (cont'ed) | 196 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 197 | (cont'ed) | 198 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 199 | (cont'ed) | 200 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 202 OPTION_MPL_PARAMETERS: DHCPv6 option identifier (not yet assigned). 204 option_len: Length of the option. It SHOULD be 16 (without MPL 205 domain address) or 32 (with MPL domain address) 207 P (1 bit): A flag to indicate PROACTIVE_FORWARDING 209 Z (1 bit) Reserved. Should be 0. 211 C_K (5 bits): CONTROL_MESSAGE_K. 213 Z2 (3 bits) Reserved. Should be all 0. 215 DM_K (5 bits): DATA_MESSAGE_K. 217 SE_LIFETIME: SEED_SET_ENTRY_LIFETIME. The unit is millisecond and 218 the type is unsigned short floating point. 220 DM_IMIN: DATA_MESSAGE_IMIN. The unit is millisecond and the type is 221 unsigned short floating point. 223 DM_IMAX: DATA_MESSAGE_IMAX. The unit is millisecond and the type is 224 unsigned short floating point. 226 DM_T_EXP: DATA_MESSAGE_TIMER_EXPIRATIONS. The unit is millisecond 227 and the type is unsigned short floating point. 229 C_IMIN: CONTROL_MESSAGE_IMIN. The unit is millisecond and the type 230 is unsigned short floating point. 232 C_IMAX: CONTROL_MESSAGE_IMAX. The unit is millisecond and the type 233 is unsigned short floating point. 235 C_T_EXP: CONTROL_MESSAGE_TIMER_EXPIRATIONS. The unit is millisecond 236 and the type is unsigned short floating point. 238 2.3. DHCPv6 Client Behavior 240 Clients MAY request MPL Parameter Configuration Option, as described 241 in RFC3315 [RFC3315], sections 17.1.1, 18.1.1, 18.1.3, 18.1.4, 18.1.5 242 and 22.7. As a convenience to the reader, we mention here that the 243 client includes requested option codes in Option Request Option. 245 Clients MUST discard MPL Parameter Configuration Option if it is 246 invalid (i.e. it sets reserved bits or it has timers with reserved 247 exp=7 in Unsigned Short Floating Point). 249 2.4. MPL Forwarder Behavior 251 If a DHCPv6 client requests and receives MPL Parameter Configuration 252 Option, the node SHOULD join the MPL domain given by the option and 253 act as an MPL forwarder. Each node SHOULD configure its MPL 254 forwarder with the given parameter set for the MPL domain. 256 The priority of MPL Parameter Configuration applied for an MPL Domain 257 is as follows (high to low). 259 o Specific MPL Parameter Configuration to the MPL Domain (optlen=32) 261 o Wildcard MPL Parameter Configuration (optlen=16) 263 o Default configuration given in the MPL specification. 265 There SHALL be no more than one MPL Parameter Configuration Option 266 for a MPL domain or the wildcard. Thus, the order of DHCPv6 options 267 in the packet has no effect on precedence. 269 A node MAY leave from an MPL domain if the following two conditions 270 are satisfied. 1) The MPL domain is configured by a DHCPv6 option 271 from a DHCPv6 server previously. 2) The node has received an updated 272 MPL Parameter Configuration Option without a configuration for the 273 MPL domain. 275 MPL parameter may be updated occasionally. With stateful DHCPv6, 276 updates can be done when the renewal timer expires. Information 277 Refresh Time Option [RFC4242] shall be used to keep each forwarders 278 updated. 280 To reduce periodical update traffic a node may try to use very long 281 interval between updates. In the case, reconfigure shall be used to 282 keep forwarder parameter sets synchronized. For stateless DHCPv6, 283 [I-D.jiang-dhc-stateless-reconfiguration] may be used (if approved). 285 2.5. DHCPv6 Server Behavior 287 Sections 17.2.2 and 18.2 of RFC3315 [RFC3315] govern server operation 288 in regards to option assignment. As a convenience to the reader, we 289 mention here that the server will send MPL Parameter Configuration 290 Option only if configured with specific value for MPL Parameter 291 Configuration Option and the client requested it. 293 Servers MUST ignore incoming MPL Parameter Configuration Option. 295 2.6. DHCPv6 Relay Behavior 297 It's never appropriate for a relay agent to add options to a message 298 heading toward the client, and relay agents don't actually construct 299 Relay-Reply messages anyway. There are no additional requirements 300 for relays. 302 3. IANA Considerations 304 A DHCPv6 option code for MPL Parameter Configuration Option needs to 305 be assigned from IANA. 307 4. Security Considerations 309 A forged option may cause excessive layer-2 broadcasting. 310 Implementations should set reasonable bounds for each parameter. For 311 example, not too high K, not too low IMIN, etc. These may be 312 implementation dependent or may be derived from MAC/PHY 313 specifications. DHCP server or the network itself shall be trusted 314 by some means including network access control or DHCP 315 authentications. 317 5. References 319 5.1. Normative References 321 [I-D.ietf-roll-trickle-mcast] 322 Hui, J. and R. Kelsey, "Multicast Forwarding Using 323 Trickle", draft-ietf-roll-trickle-mcast-07 (work in 324 progress), Feburary 2014. 326 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 327 and M. Carney, "Dynamic Host Configuration Protocol for 328 IPv6 (DHCPv6)", RFC 3315, July 2003. 330 [RFC4242] Venaas, S., Chown, T., and B. Volz, "Information Refresh 331 Time Option for Dynamic Host Configuration Protocol for 332 IPv6 (DHCPv6)", RFC 4242, November 2005. 334 5.2. Non-Normative References 336 [I-D.ietf-dhc-option-guidelines] 337 Hankins, D., Mrugalski, T., Siodelski, M., Jiang, S., and 338 S. Krishnan, "Guidelines for Creating New DHCPv6 Options", 339 draft-ietf-dhc-option-guidelines-17 (work in progress), 340 January 2014. 342 [I-D.jiang-dhc-stateless-reconfiguration] 343 Jiang, S. and B. Liu, "Stateless Reconfiguration in 344 Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", 345 draft-jiang-dhc-stateless-reconfiguration-01 (work in 346 progress), February 2014. 348 Appendix A. Update History 350 Updates on draft-doi-roll-mpl-configuration-05 to 351 draft-ietf-roll-mpl-configuration-00: 353 o I-D renamed. 355 Authors' Addresses 357 Yusuke Doi 358 TOSHIBA Corporation 359 Komukai Toshiba Cho 1 360 Saiwai-Ku 361 Kawasaki, Kanagawa 2128582 362 JAPAN 364 Phone: +81-45-342-7230 365 Email: yusuke.doi@toshiba.co.jp 366 URI: 368 Matthew Gillmore 369 Itron, Inc 370 2111 N Molter Rd. 371 Liberty Lake, WA 99019 372 USA 374 Email: matthew.gillmore@itron.com