idnits 2.17.1 draft-ietf-lwig-cellular-03.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 (October 27, 2014) is 3466 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 4627 (Obsoleted by RFC 7158, RFC 7159) == Outdated reference: A later version (-16) exists of draft-ietf-core-observe-14 == Outdated reference: A later version (-28) exists of draft-ietf-core-resource-directory-01 Summary: 1 error (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group J. Arkko 3 Internet-Draft A. Eriksson 4 Intended status: Informational A. Keranen 5 Expires: April 30, 2015 Ericsson 6 October 27, 2014 8 Building Power-Efficient CoAP Devices for Cellular Networks 9 draft-ietf-lwig-cellular-03 11 Abstract 13 This memo discusses the use of the Constrained Application Protocol 14 (CoAP) protocol in building sensors and other devices that employ 15 cellular networks as a communications medium. Building communicating 16 devices that employ these networks is obviously well known, but this 17 memo focuses specifically on techniques necessary to minimize power 18 consumption. 20 Status of This Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at http://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on April 30, 2015. 37 Copyright Notice 39 Copyright (c) 2014 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (http://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 2. Goals for Low-Power Operation . . . . . . . . . . . . . . . . 3 56 3. Link-Layer Assumptions . . . . . . . . . . . . . . . . . . . 5 57 4. Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 7 58 5. Discovery and Registration . . . . . . . . . . . . . . . . . 8 59 6. Data Formats . . . . . . . . . . . . . . . . . . . . . . . . 10 60 7. Real-Time Reachable Devices . . . . . . . . . . . . . . . . . 10 61 8. Sleepy Devices . . . . . . . . . . . . . . . . . . . . . . . 11 62 8.1. Implementation Considerations . . . . . . . . . . . . . . 12 63 9. Security Considerations . . . . . . . . . . . . . . . . . . . 13 64 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 65 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 13 66 11.1. Normative References . . . . . . . . . . . . . . . . . . 13 67 11.2. Informative References . . . . . . . . . . . . . . . . . 14 68 Appendix A. Acknowledgments . . . . . . . . . . . . . . . . . . 15 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 15 71 1. Introduction 73 This memo discusses the use of the Constrained Application Protocol 74 (CoAP) protocol [RFC7252] in building sensors and other devices that 75 employ cellular networks as a communications medium. Building 76 communicating devices that employ these networks is obviously well 77 known, but this memo focuses specifically on techniques necessary to 78 minimize power consumption. CoAP has many advantages, including 79 being simple to implement; a thousand lines for the entire software 80 above IP layer is plenty for a CoAP-based sensor, for instance. 81 However, while many of these advantages are obvious and easily 82 obtained, optimizing power consumption remains challenging and 83 requires careful design [I-D.arkko-core-sleepy-sensors]. 85 The memo targets primarily 3GPP cellular networks in their 2G, 3G, 86 and LTE variants and their future enhancements, including possible 87 power efficiency improvements at the radio and link layers. The 88 exact standards or details of the link layer or radios are not 89 relevant for our purposes, however. To be more precise, the material 90 in this memo is suitable for any large-scale, public network that 91 employs point-to-point communications model and radio technology. 93 Our focus is devices that need to be optimized for power usage, and 94 on devices that employ CoAP. As a general technology, CoAP is 95 similar to HTTP. It can be used in various ways and network entities 96 may take on different roles. This freedom allows the technology to 97 be used in efficient and less efficient ways. Some guidance is 98 needed to understand what communication models over CoAP are 99 recommended when low power usage is a critical goal. 101 The recommendations in this memo should be taken as complementary to 102 device hardware optimization, microelectronics improvements, and 103 further evolution of the underlying link and radio layers. Further 104 gains in power efficiency can certainly be gained on several fronts; 105 the approach that we take in this memo is to do what can be done at 106 the IP, transport, and application layers to provide the best 107 possible power efficiency. Application implementors generally have 108 to use the current generation microelectronics, currently available 109 radio networks and standards, and so on. This focus in our memo 110 should by no means be taken as an indication that further evolution 111 in these other areas is unnecessary. Such evolution is useful, is 112 ongoing, and is generally complementary to the techniques presented 113 in this memo. The evolution of underlying technologies may change 114 what techniques described here are useful for a particular 115 application, however. 117 The rest of this memo is structured as follows. Section 2 discusses 118 the need and goals for low-power devices. Section 3 outlines our 119 expectations for the low layer communications model. Section 4 120 describes the two scenarios that we address, and Section 5, 121 Section 6, Section 7 and Section 8 give guidelines for use of CoAP in 122 these scenarios. 124 2. Goals for Low-Power Operation 126 There are many situations where power usage optimization is 127 unnecessary. Optimization may not be necessary on devices that can 128 run on power feed over wired communications media, such as in Power- 129 over-Ethernet (PoE) solutions. These devices may require a 130 rudimentary level of power optimization techniques just to keep 131 overall energy costs and aggregate power feed sizes at a reasonable 132 level, but more extreme techniques necessary for battery powered 133 devices are not required. The situation is similar with devices that 134 can easily be connected to mains power. Other types of devices may 135 get an occasional charge of power from energy harvesting techniques. 136 For instance, some environmental sensors can run on solar cells. 137 Typically, these devices still have to regulate their power usage in 138 a strict manner, for instance to be able to use as small and 139 inexpensive solar cells as possible. 141 In battery operated devices the power usage is even more important. 142 For instance, one of the authors employs over a hundred different 143 sensor devices in his home network. A majority of these devices are 144 wired and run on PoE, but in most environments this would be 145 impractical because the necessary wires do not exist. The future is 146 in wireless solutions that can cover buildings and other environments 147 without assuming a pre-existing wired infrastructure. In addition, 148 in many cases it is impractical to provide a mains power source. 149 Often there are no power sockets easily available in the locations 150 that the devices need to be in, and even if there were, setting up 151 the wires and power adapters would be more complicated than 152 installing a standalone device without any wires. 154 Yet, with a large number of devices the battery lifetimes become 155 critical. Cost and practical limits dictate that devices can be 156 largely just bought and left on their own. For instance, with 157 hundred devices, even a ten-year battery lifetime results in a 158 monthly battery change for one device within the network. This may 159 be impractical in many environments. In addition, some devices may 160 be physically difficult to reach for a battery change. Or, a large 161 group of devices -- such as utility meters or environmental sensors 162 -- cannot be economically serviced too often, even if in theory the 163 batteries could be changed. 165 SENSOR COMMUNICATION INTERVAL 166 +----------------+------------------+-----------------+ 167 POWER SOURCE | Seconds | Minutes or Hours | Days and longer | 168 +------------+----------------+------------------+-----------------+ 169 | | | | | 170 | Battery | Low-power | Low-power or | Normally-off | 171 | | | Normally-off | | 172 +------------+----------------+------------------+-----------------+ 173 | | | | | 174 | Harvesting | Low-power | Low-power or | Normally-off | 175 | | | Normally-off | | 176 +------------+----------------+------------------+-----------------+ 177 | | | | | 178 | Mains | Always-on | Always-on | Always-on | 179 | | | | | 180 +------------+----------------+------------------+-----------------+ 182 Figure 1: Power usage strategies for different classes of 183 applications 185 Many of these situations lead to a requirement for minimizing power 186 usage and/or maximizing battery lifetimes. A summary of the 187 different situations for sensor-type devices, using the power usage 188 strategies described in [RFC7228], is shown in Figure 1. 189 Unfortunately, much of our current technology has been built with 190 different objectives in mind. Networked devices that are "always 191 on", gadgets that require humans to recharge them every couple of 192 days, and protocols that have been optimized to maximize throughput 193 rather than conserve resources. 195 Long battery lifetimes are required for many applications, however. 196 In some cases these lifetimes should be in the order of years or even 197 a decade or longer. Some communication devices already reach multi- 198 year lifetimes, and continuous improvement in low-power electronics 199 and advances in radio technology keep pushing these lifetimes longer. 200 However, it is perhaps fair to say that battery lifetimes are 201 generally too short at present time. 203 Power usage can not be evaluated solely based on lower layer 204 communications. The entire system, including upper layer protocols 205 and applications is responsible for the power consumption as a whole. 206 The lower communication layers have already adopted many techniques 207 that can be used to reduce power usage, such as scheduling device 208 wake-up times. Further reductions will likely need some co-operation 209 from the upper layers so that unnecessary communications, denial-of- 210 service attacks on power consumption, and other power drains are 211 eliminated. 213 Of course, application requirements ultimately determine what kinds 214 of communications are necessary. For instance, some applications 215 require more data to be sent than others. The purpose of the 216 guidelines in this memo is not to prefer one or the other 217 application, but to provide guidance on how to minimize the amount of 218 communications overhead that is not directly required by the 219 application. While such optimization is generally useful, it is 220 relatively speaking most noticeable in applications that transfer 221 only a small amount of data, or operate only infrequently. 223 3. Link-Layer Assumptions 225 We assume that the underlying communications network can be any 226 large-scale, public network that employs point-to-point 227 communications model and radio technology. 2G, 3G, and LTE networks 228 are examples of such networks, but not the only possible networks 229 with these characteristics. 231 In the following we look at some of these characteristics and their 232 implications. Note that in most cases these characteristics are not 233 properties of the specific networks but rather inherent in the 234 concept of public networks. 236 Public networks 238 Using a public network service implies that applications can be 239 deployed without having to build a network to go with them. For 240 economical reasons, only the largest users (such as utility 241 companies) could afford to build their own network, and even they 242 would not be able to provide a world-wide coverage. This means 243 that applications where coverage is important can be built. For 244 instance, most transport sector applications require national or 245 even world-wide coverage to work. 247 But there are other implications, as well. By definition, the 248 network is not tailored for this application and with some 249 exceptions, the traffic passes through the Internet. One 250 implication of this is that there are generally no application- 251 specific network configurations or discovery support. For 252 instance, the public network helps devices to get on the Internet, 253 set up default routers, configure DNS servers, and so on, but does 254 nothing for configuring possible higher-layer functions, such as 255 servers the device might need to contact to perform its 256 application functions. 258 Public networks often provide web proxies, and these can in some 259 cases make a significant improvement for delays and cost of 260 communication over the wireless link. For instance, collecting 261 content from a large number of servers used to render a web page 262 and resolving their DNS names in a proxy instead of the user's 263 device may cut down on the general chattiness of the 264 communications, therefore reducing overall delay in completing the 265 entire transaction. However, as of today such proxies are 266 provided only for HTTP communications, not for CoAP. 268 Similarly, given the lack of available IPv4 addresses, the chances 269 are that many devices are behind a network address translation 270 (NAT) device. This means that they are not easily reachable as 271 servers. Alternatively, the devices may be directly on the global 272 Internet (either on IPv4 or IPv6) and easily reachable as servers. 273 Unfortunately, this may mean that they also receive unwanted 274 traffic, which may have implications for both power consumption 275 and service costs. 277 Point-to-point link model 279 This is a common link model in cellular networks. One implication 280 of this model is that there will be no other nodes on the same 281 link, except maybe for the service provider's router. As a 282 result, multicast discovery can not be reasonably used for any 283 local discovery purposes. While the configuration of the service 284 provider's router for specific users is theoretically possible, in 285 practice this is difficult to achieve, at least for any small user 286 that can not afford a network-wide contract for a private APN 287 (Access Point Name). The public network access service has little 288 per-user tailoring. 290 Radio technology 292 The use of radio technology means that power is needed to operate 293 the radios. Transmission generally requires more power than 294 reception. However, radio protocols have generally been designed 295 so that a device checks periodically whether it has messages. In 296 a situation where messages arrive seldom or not at all, this 297 checking consumes energy. Research has shown that these periodic 298 checks (such as LTE paging message reception) are often a far 299 bigger contributor to energy consumption than message 300 transmission. 302 Note that for situations where there are several applications on 303 the same device wishing to communicate with the Internet in some 304 manner, bundling those applications together at the same time can 305 be very useful. Some guidance for these techniques in the 306 smartphone context can be found in [Android-Bundle]. 308 Naturally, each device has a freedom to decide when it sends 309 messages. In addition, we assume that there is some way for the 310 devices to control when or how often it wants to receive messages. 311 Specific methods for doing this depend on the specific network being 312 used and also tend to change as improvements in the design of these 313 networks are incorporated. The reception control methods generally 314 come in two variants, fine grained mechanisms that deal with how 315 often the device needs to wake-up for paging messages, and more crude 316 mechanisms where the device simply disconnects from the network for a 317 period of time. There are associated costs and benefits to each 318 method, but those are not relevant for this memo, as long as some 319 control method exists. 321 4. Scenarios 323 Not all applications or situations are equal. They may require 324 different solutions or communication models. This memo focuses on 325 two common scenarios at cellular networks: 327 Real-Time Reachable Devices 329 This scenario involves all communication that requires real-time 330 or near real-time communications with a device. That is, a 331 network entity must be able to reach the device with a small time 332 lag at any time, and no pre-agreed wake-up schedule can be 333 arranged. By "real-time" we mean any reasonable end-to-end 334 communications latency, be it measured in milliseconds or seconds. 335 However, unpredictable sleep states are not expected. 337 Examples of devices in this category include sensors that must be 338 measurable from a remote source at any instant in time, such as 339 process automation sensors and actuators that require immediate 340 action, such as light bulbs or door locks. 342 Sleepy Devices 344 This scenario involves freedom to choose when device communicates. 345 The device is often expected to be able to be in a sleep state for 346 much of its time. The device itself can choose when it 347 communicates, or it lets the network assist in this task. 349 Examples of devices in this category include sensors that track 350 slowly changing values, such as temperature sensors and actuators 351 that control a relatively slow process, such as heating systems. 353 Note that there may be hard real-time requirements, but they are 354 expressed in terms of how fast the device can communicate, not in 355 terms of how fast it can respond to a network stimuli. For 356 instance, a fire detector can be classified as a sleepy device as 357 long as it can internally quickly wake up on detecting fire and 358 initiate the necessary communications without delay. 360 5. Discovery and Registration 362 In both scenarios the device will be attached to a public network. 363 Without special arrangements, the device will also get a dynamically 364 assigned IP address or an IPv6 prefix. At least one but typically 365 several router hops separate the device from its communicating peers 366 such as application servers. As a result, the address or even the 367 existence of the device is typically not immediately obvious to the 368 other nodes participating in the application. As discussed earlier, 369 multicast discovery has limited value in public networks; network 370 nodes cannot practically discover individual devices in a large 371 public network. And the devices can not discover who they need to 372 talk, as the public network offers just basic Internet connectivity. 374 Our recommendation is to initiate a discovery and registration 375 process. This allows each device to inform its peers that it has 376 connected to the network and that it is reachable at a given IP 377 address. Registration also facilitates low-power operation since a 378 device can delegate part of the discovery signaling and reachability 379 requirements to another node. 381 The registration part is easy e.g., with a resource directory. The 382 device should perform the necessary registration with these devices, 383 for instance, as specified in [I-D.ietf-core-resource-directory]. In 384 order to do this registration, the device needs to know its CoRE Link 385 Format description, as specified in [RFC6690]. In essence, the 386 registration process involves performing a GET on .well-known/ 387 core/?rt=core-rd at the address of the resource directory, and then 388 doing a POST on the path of the discovered resource. 390 Other mechanisms enabling device discovery and delegation of 391 functionality to a non-sleepy node include 392 [I-D.vial-core-mirror-proxy] and [I-D.koster-core-coapmq]. 394 However, current CoAP specifications provide only limited support for 395 discovering the resource directory or other registration services. 396 Local multicast discovery only works in LAN-type networks, but not in 397 these public cellular networks. Our recommended alternate methods 398 for discovery are the following: 400 Manual Configuration 402 The DNS name of the resource directory is manually configured. 403 This approach is suitable in situations where the owner of the 404 devices has the resources and capabilities to do the 405 configuration. For instance, a utility company can typically 406 program its metering devices to point to the company servers. 408 Manufacturer Server 410 The DNS name of the directory or proxy is hardwired to the 411 software by the manufacturer, and the directory or proxy is 412 actually run by the manufacturer. This approach is suitable in 413 many consumer usage scenarios, where it would be unreasonable to 414 assume that the consumer runs any specific network services. The 415 manufacturer's web interface and the directory/proxy servers can 416 co-operate to provide the desired functionality to the end user. 417 For instance, the end user can register a device identity in the 418 manufacturer's web interface and ask specific actions to be taken 419 when the device does something. 421 Delegating Manufacturer Server 423 The DNS name of the directory or proxy is hardwired to the 424 software by the manufacturer, but this directory or proxy merely 425 redirects the request to a directory or proxy run by the whoever 426 bought the device. This approach is suitable in many enterprise 427 environments, as it allows the enterprise to be in charge of 428 actual data collection and device registries; only the initial 429 bootstrap goes through the manufacturer. In many cases there are 430 even legal requirements (such as EU privacy laws) that prevent 431 providing unnecessary information to third parties. 433 Common Global Resolution Infrastructure 435 The delegating manufacturer server model could be generalized into 436 a reverse-DNS -like discovery infrastructure that could answer the 437 question "this is device with identity ID, where is my home 438 registration server?". However, at present no such resolution 439 system exists. (Note: The EPCGlobal system for RFID resolution is 440 reminiscent of this approach.) 442 6. Data Formats 444 A variety of data formats exist for passing around data. These data 445 formats include XML, JavaScript Object Notation (JSON) [RFC4627], 446 Efficient XML Interchange (EXI) [W3C.REC-exi-20110310], and text 447 formats. Message lengths can have a significant effect on the amount 448 of energy required for the communications, and such it is highly 449 desirable to keep message lengths minimal. At the same time, extreme 450 optimization can affect flexibility and ease of programming. The 451 authors recommend [I-D.jennings-senml] as a compact, yet easily 452 processed and extendable textual format. 454 7. Real-Time Reachable Devices 456 These devices are often best modeled as CoAP servers. The device 457 will have limited control on when it receives messages, and it will 458 have to listen actively for messages, up to the limits of the 459 underlying link layer. If the device acts also in client role in 460 some phase of its operation, it can control how many transmissions it 461 makes on its own behalf. 463 The packet reception checks should be tailored according to the 464 requirements of the application. If sub-second response time is not 465 needed, a slightly more infrequent checking process may save some 466 power. 468 For sensor-type devices, the CoAP Observe extension 469 [I-D.ietf-core-observe] may be supported. This allows the sensor to 470 track changes to the sensed value, and make an immediate observation 471 response upon a change. This may reduce the amount of polling needed 472 to be done by the client. Unfortunately, it does not reduce the time 473 that the device needs to be listening for requests. Subscription 474 requests from other clients than the currently registered one may 475 come at any time, the current client may change its request, and the 476 device still needs to respond to normal queries as a server. As a 477 result, the sensor can not rely having to communicate only on its own 478 choice of observation interval. 480 In order to act as a server, the device needs to be placed in a 481 public IPv4 address, be reachable over IPv6, or hosted in a private 482 network. If the the device is hosted on a private network, then all 483 other nodes need to access this device also need to reside in the 484 same private network. There are multiple ways to provide private 485 networks over public cellular networks. One approach is to dedicate 486 a special APN for the private network. Corporate access via cellular 487 networks has often been arranged in this manner, for instance. 488 Another approach is to use Virtual Private Networking (VPN) 489 technology, for instance IPsec-based VPNs. 491 Power consumption from unwanted traffic is problematic in these 492 devices, unless placed in a private network or protected by a 493 operator-provided firewall service. Devices on an IPv6 network will 494 have some protection through the nature of the 2^64 address 495 allocation for a single terminal in a 3GPP cellular network; the 496 attackers will be unable to guess the full IP address of the device. 497 However, this protects only the device from processing a packet, but 498 since the network will still deliver the packet to any of the 499 addresses within the assigned 64-bit prefix, packet reception costs 500 are still incurred. 502 Note that the the VPN approach can not prevent unwanted traffic 503 received at the tunnel endpoint address, and may require keep-alive 504 traffic. Special APNs can solve this issue, but require explicit 505 arrangement with the service provider. 507 8. Sleepy Devices 509 These devices are best modeled as devices that can delegate queries 510 to some other node. For instance, as mirror proxy 511 [I-D.vial-core-mirror-proxy] or CoAP Publish-Subscribe 512 [I-D.koster-core-coapmq] clients. When the device initializes 513 itself, it makes a registration of itself in a proxy as described 514 above in Section 5 and then continues to send periodic updates of 515 sensor values. 517 As a result, the device acts only as a client, not a server, and can 518 shut down all communication channels while it is during its sleeping 519 period. The length of the sleeping period depends on power and 520 application requirements. Some environmental sensors might use a day 521 or a week as the period, while other devices may use a smaller values 522 ranging from minutes to hours. 524 Other approaches for delegation include CoAP-options described in 525 [I-D.castellani-core-alive] 526 [I-D.fossati-core-publish-monitor-options]. In this memo we use 527 mirror proxies as an example, because of their ability to work with 528 both HTTP and CoAP implementations; but the concepts are similar and 529 the IETF work is still in progress so the final protocol details are 530 yet to be decided. 532 The ability to shut down communications and act as only a client has 533 four impacts: 535 o Radio transmission and reception can be turned off during the 536 sleeping period, reducing power consumption significantly. 538 o However, some power and time is consumed by having to re-attach to 539 the network after the end of a sleep period. 541 o The window of opportunity for unwanted traffic to arrive is much 542 smaller, as the device is listening for traffic only part of the 543 time. Note that networks may cache packets for some time though. 544 On the other hand, stateful firewalls can effectively remove much 545 of unwanted traffic for client type devices. 547 o The device may exist behind a NAT or a firewall without being 548 impacted. Note that "Simple Security" basic IPv6 firewall 549 capability [RFC6092] blocks inbound UDP traffic by default, so 550 just moving to IPv6 is not direct solution to this problem. 552 For sleepy devices that represent actuators, it is also possible to 553 use the mirror proxy model. The device can make periodic polls to 554 the proxy to determine if a variable has changed. 556 8.1. Implementation Considerations 558 There are several challenges in implementing sleepy devices. They 559 need hardware that can be put to an appropriate sleep mode but yet 560 awakened when it is time to do something again. This is not always 561 easy in all hardware platforms. It is important to be able to shut 562 down as much of the hardware as possible, preferably down to 563 everything else except a clock circuit. The platform also needs to 564 support re-awakening at suitable time scales, as otherwise the device 565 needs to be powered up too frequently. 567 Most commercial cellular modem platforms do not allow applications to 568 suspend the state of the communications stack. Hence, after a power- 569 off period they need to re-establish communications, which takes some 570 amount of time and extra energy. 572 Implementations should have a coordinated understanding of the state 573 and sleeping schedule. For instance, it makes no sense to keep a CPU 574 powered up, waiting for a message when the lower layer has been told 575 that the next possible paging opportunity is some time away. 577 The cellular networks have a number of adjustable configuration 578 parameters, such as the maximum used paging interval. Proper setting 579 of these values has an impact on the power consumption of the device, 580 but with the current business practices, such settings are rarely 581 negotiated when the user's subscription is provisioned. 583 9. Security Considerations 585 There are no particular security aspects with what has been discussed 586 in this memo, except for the ability to delegate queries for a 587 resource to another node. Depending on how this is done, there are 588 obvious security issues which have largely NOT yet been addressed in 589 the relevant Internet Drafts [I-D.vial-core-mirror-proxy] 590 [I-D.castellani-core-alive] 591 [I-D.fossati-core-publish-monitor-options]. However, we point out 592 that in general, security issues in delegation can be solved either 593 through reliance on your local network support nodes (which may be 594 quite reasonable in many environments) or explicit end-to-end 595 security. Explicit end-to-end security through nodes that are awake 596 at different times means in practice end-to-end data object security. 597 We have implemented one such mechanism for sleepy nodes as described 598 in [I-D.aks-crypto-sensors]. 600 The security considerations relating to CoAP [RFC7252] and the 601 relevant link layers should apply. Note that cellular networks 602 universally employ per-device authentication, integrity protection, 603 and for most of the world, encryption of all their communications. 604 Additional protection of transport sessions is possible through 605 mechanisms described in [RFC7252] or data objects. 607 10. IANA Considerations 609 There are no IANA impacts in this memo. 611 11. References 613 11.1. Normative References 615 [RFC4627] Crockford, D., "The application/json Media Type for 616 JavaScript Object Notation (JSON)", RFC 4627, July 2006. 618 [RFC6690] Shelby, Z., "Constrained RESTful Environments (CoRE) Link 619 Format", RFC 6690, August 2012. 621 [RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained 622 Application Protocol (CoAP)", RFC 7252, June 2014. 624 [I-D.ietf-core-observe] 625 Hartke, K., "Observing Resources in CoAP", draft-ietf- 626 core-observe-14 (work in progress), June 2014. 628 [I-D.ietf-core-resource-directory] 629 Shelby, Z., Bormann, C., and S. Krco, "CoRE Resource 630 Directory", draft-ietf-core-resource-directory-01 (work in 631 progress), December 2013. 633 [W3C.REC-exi-20110310] 634 Kamiya, T. and J. Schneider, "Efficient XML Interchange 635 (EXI) Format 1.0", World Wide Web Consortium 636 Recommendation REC-exi-20110310 637 http://www.w3.org/TR/2011/REC-exi-20110310, March 2011. 639 [I-D.jennings-senml] 640 Jennings, C., Shelby, Z., and J. Arkko, "Media Types for 641 Sensor Markup Language (SENML)", draft-jennings-senml-10 642 (work in progress), October 2012. 644 [RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for 645 Constrained-Node Networks", RFC 7228, May 2014. 647 11.2. Informative References 649 [RFC6092] Woodyatt, J., "Recommended Simple Security Capabilities in 650 Customer Premises Equipment (CPE) for Providing 651 Residential IPv6 Internet Service", RFC 6092, January 652 2011. 654 [I-D.arkko-core-sleepy-sensors] 655 Arkko, J., Rissanen, H., Loreto, S., Turanyi, Z., and O. 656 Novo, "Implementing Tiny COAP Sensors", draft-arkko-core- 657 sleepy-sensors-01 (work in progress), July 2011. 659 [I-D.aks-crypto-sensors] 660 Sethi, M., Arkko, J., Keranen, A., and H. Rissanen, 661 "Practical Considerations and Implementation Experiences 662 in Securing Smart Object Networks", draft-aks-crypto- 663 sensors-02 (work in progress), March 2012. 665 [I-D.castellani-core-alive] 666 Castellani, A. and S. Loreto, "CoAP Alive Message", draft- 667 castellani-core-alive-00 (work in progress), March 2012. 669 [I-D.fossati-core-publish-monitor-options] 670 Fossati, T., Giacomin, P., and S. Loreto, "Publish and 671 Monitor Options for CoAP", draft-fossati-core-publish- 672 monitor-options-01 (work in progress), March 2012. 674 [I-D.vial-core-mirror-proxy] 675 Vial, M., "CoRE Mirror Server", draft-vial-core-mirror- 676 proxy-01 (work in progress), July 2012. 678 [I-D.koster-core-coapmq] 679 Koster, M., Keranen, A., and J. Jimenez, "Message Queueing 680 in the Constrained Application Protocol (CoAP)", draft- 681 koster-core-coapmq-00 (work in progress), July 2014. 683 [Android-Bundle] 684 "Optimizing Downloads for Efficient Network Access", 685 Android developer note 686 http://developer.android.com/training/efficient-downloads/ 687 efficient-network-access.html, February 2013. 689 Appendix A. Acknowledgments 691 The authors would like to thank Zach Shelby, Jan Holler, Salvatore 692 Loreto, Matthew Vial, Thomas Fossati, Mohit Sethi, Jan Melen, Joachim 693 Sachs, Heidi-Maria Rissanen, Sebastien Pierrel, Kumar Balachandran, 694 Muhammad Waqas Mir, Cullen Jennings, Markus Isomaki, Hannes 695 Tschofenig, and Anna Larmo for interesting discussions in this 696 problem space. 698 Authors' Addresses 700 Jari Arkko 701 Ericsson 702 Jorvas 02420 703 Finland 705 Email: jari.arkko@piuha.net 707 Anders Eriksson 708 Ericsson 709 Stockholm 164 83 710 Sweden 712 Email: anders.e.eriksson@ericsson.com 713 Ari Keranen 714 Ericsson 715 Jorvas 02420 716 Finland 718 Email: ari.keranen@ericsson.com