RFC 7772 BEST CURRENT PRACTICE IPV6 · POWER · OPERATIONS

RA Energy: Reducing Energy Consumption of Router Advertisements

How often a network should send IPv6 Router Advertisements so that battery-powered hosts are not woken up too often.

On rfc-editor.org ↗
PUBLISHED
February 2016
AUTHORS
A. Yourtchenko, L. Colitti
STREAM
IETF
MAX SOLICITED RA RATE
One every 3 seconds
COST OF ONE RA (EXAMPLE)
About 0.014 mAh
RA POWER BUDGET
No more than 0.1 mA (2% of idle)
RA RATE AT THAT BUDGET
About 7 per hour
BURST AFTER A CHANGE
Not more than one minute
DEFAULT ROUTER LIFETIME
5 to 10 times the RA period, roughly 45 to 90 minutes
DOI
10.17487/RFC7772

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Internet Engineering Task Force (IETF)                    A. Yourtchenko
Request for Comments: 7772                                         Cisco
BCP: 202                                                      L. Colitti
Category: Best Current Practice                                   Google
ISSN: 2070-1721                                            February 2016


          Reducing Energy Consumption of Router Advertisements

Abstract

   Frequent Router Advertisement messages can severely impact host power
   consumption.  This document recommends operational practices to avoid
   such impact.

Status of This Memo

   This memo documents an Internet Best Current Practice.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   BCPs is available in Section 2 of RFC 5741.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   http://www.rfc-editor.org/info/rfc7772.

Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Problem Scenarios . . . . . . . . . . . . . . . . . . . . . .   2
     2.1.  Solicited Multicast RAs on Large Networks . . . . . . . .   2
     2.2.  Frequent Periodic Router Advertisements . . . . . . . . .   3
   3.  Consequences  . . . . . . . . . . . . . . . . . . . . . . . .   3
   4.  Router Advertisement Frequency  . . . . . . . . . . . . . . .   3
   5.  Recommendations . . . . . . . . . . . . . . . . . . . . . . .   4
     5.1.  Network-Side Recommendations  . . . . . . . . . . . . . .   4
     5.2.  Device-Side Recommendations . . . . . . . . . . . . . . .   5
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   5
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   6
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .   6
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   6

1.  Introduction

   Routing information is communicated to IPv6 hosts by Router
   Advertisement (RA) messages [RFC4861].  If these messages are sent
   too frequently, they can severely impact power consumption on
   battery-powered hosts.

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

2.  Problem Scenarios

2.1.  Solicited Multicast RAs on Large Networks

   On links with a large number of battery-powered devices, sending
   solicited multicast Router Advertisements can severely impact host
   power consumption.  This is because every time a device joins the
   network, all devices on the network receive a multicast Router
   Advertisement.  In the worst case, if devices are continually joining
   and leaving the network, and the network is large enough, then all
   devices on the network will receive solicited Router Advertisements
   at the maximum rate specified by Section 6.2.6 of [RFC4861], which is
   one every 3 seconds.

2.2.  Frequent Periodic Router Advertisements

   Some networks send periodic multicast Router Advertisements very
   frequently (e.g., once every few seconds).  This may be due to a
   desire to minimize customer impact of network renumbering events,
   which in some large residential networks occur relatively frequently.
   In the presence of hosts that ignore RAs or even all IPv6 packets
   when in sleep mode, such networks may see a need to send RAs
   frequently in order to avoid leaving devices with non-functional IPv6
   configurations for extended periods of time.  Unfortunately, this has
   severe impact on battery life.

3.  Consequences

   Observed effects of frequently sending Router Advertisement messages
   to battery-powered devices include:

   o  Some hosts simply experience bad battery life on these networks
      and otherwise operate normally.  This is frustrating for users of
      these networks.

   o  Some hosts react by dropping all Router Advertisement messages
      when in power-saving mode on any network, e.g.,
      <https://code.google.com/p/android/issues/detail?id=32662>.  This
      causes devices to lose connectivity when in power-saving mode,
      potentially disrupting background network communications, because
      the device is no longer able to send packets or acknowledge
      received traffic.

   o  Some hosts react by dropping *all* IPv6 packets when in power-
      saving mode, <http://www.gossamer-threads.com/lists/nsp/
      ipv6/54641>.  This disrupts network communications.

   Compounding the problem, when dealing with devices that drop Router
   Advertisements when in power saving mode, some network administrators
   work around the problem by sending RAs even more frequently.  This
   causes devices to engage in even more aggressive filtering.

4.  Router Advertisement Frequency

   The appropriate frequency of periodic RAs depends on how constrained
   the network devices are.

   o  Laptop-class devices will likely experience no noticeable battery-
      life impact, even if RAs are sent every few seconds.

   o  Tablets, phones, and watches experience it more noticeably.  At
      the time of writing, current-generation devices might consume on
      the order of 5 mA when the main processor is asleep.  Upon
      receiving a packet, they might consume on the order of 200 mA for
      250 ms, as the packet causes the main processor to wake up,
      process the RA, attend to other pending tasks, and then go back to
      sleep.  Thus, on such devices, the cost of receiving one RA will
      be approximately 0.014 mAh.

      In order to limit the amount of power used to receive Router
      Advertisements to, say, 2% of idle power (i.e., to impact idle
      battery life by no more than 2%), the average power budget for
      receiving RAs must be no more than 0.1 mA, or approximately 7 RAs
      per hour.  Due to background multicast loss and the tendency of
      current devices to rate-limit multicast when asleep, many of these
      RAs might not reach the device.  Thus, the minimum lifetimes for
      RA configuration parameters such as default router lifetime might
      reasonably be 5-10 times the RA period, or roughly 45-90 minutes.

      An impact of 2% relative to measured idle current is negligible,
      since on this sort of device average power consumption is
      typically much higher than idle power consumption.

   o  Specialized devices in non-general-purpose networks such as sensor
      networks might have tighter requirements.  In these environments,
      even longer RA intervals might be appropriate.

5.  Recommendations

5.1.  Network-Side Recommendations

   1.  Router manufacturers SHOULD allow network administrators to
       configure the routers to respond to Router Solicitations with
       unicast Router Advertisements if:

       *  The Router Solicitation's source address is not the
          unspecified address, and:

       *  The solicitation contains a valid Source Link-Layer Address
          option.

   2.  Administrators of networks that serve large numbers (tens or
       hundreds) of battery-powered devices SHOULD enable this behavior.

   3.  Networks that serve battery-powered devices SHOULD NOT send
       multicast RAs too frequently (see Section 4) unless the
       information in the RA packet has substantially changed.  If there
       is a desire to ensure that hosts pick up configuration changes
       quickly, those networks MAY send frequent Router Advertisements
       for a limited period of time (e.g., not more than one minute)
       immediately after a configuration change.

   No protocol changes are required.  Responding to Router Solicitations
   with unicast Router Advertisements is already allowed by Section
   6.2.6 of [RFC4861], and Router Advertisement intervals are already
   configurable by the administrator to a wide range of values.

5.2.  Device-Side Recommendations

   1.  Maintaining IPv6 connectivity requires that hosts be able to
       receive periodic multicast RAs [RFC4861].  Therefore, hosts that
       process unicast packets sent while they are asleep MUST also
       process multicast RAs sent while they are asleep.  Battery-
       powered hosts MAY rate-limit identical RAs if they are sent too
       frequently.

   2.  Battery-powered devices that do not intend to maintain IPv6
       connectivity while asleep SHOULD either disconnect from the
       network, abandoning all IPv6 configuration on that network, or
       perform Detecting Network Attachment in IPv6 (DNAv6) procedures
       [RFC6059] when waking up.

6.  Security Considerations

   Misconfigured or malicious hosts sending rogue Router Advertisements
   [RFC6104] can also severely impact power consumption on battery-
   powered hosts if they send a significant number of such messages.
   Any IPv6 network where there is potential for misconfigured or
   malicious hosts should take appropriate countermeasures to mitigate
   the problem.

7.  References

7.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <http://www.rfc-editor.org/info/rfc2119>.

   [RFC4861]  Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
              "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
              DOI 10.17487/RFC4861, September 2007,
              <http://www.rfc-editor.org/info/rfc4861>.

   [RFC6059]  Krishnan, S. and G. Daley, "Simple Procedures for
              Detecting Network Attachment in IPv6", RFC 6059,
              DOI 10.17487/RFC6059, November 2010,
              <http://www.rfc-editor.org/info/rfc6059>.

7.2.  Informative References

   [RFC6104]  Chown, T. and S. Venaas, "Rogue IPv6 Router Advertisement
              Problem Statement", RFC 6104, DOI 10.17487/RFC6104,
              February 2011, <http://www.rfc-editor.org/info/rfc6104>.

Acknowledgements

   The authors wish to thank Steven Barth, Frank Bulk, David Farmer,
   Igor Gashinsky, Ray Hunter, Erik Kline, Erik Nordmark, Alexandru
   Petrescu, Libor Polcak, Mark Smith, Jinmei Tatuya, and James Woodyatt
   for feedback and helpful suggestions.

Authors' Addresses

   Andrew Yourtchenko
   Cisco
   7a de Kleetlaan
   Diegem, 1831
   Belgium

   Phone: +32 2 704 5494
   Email: ayourtch@cisco.com


   Lorenzo Colitti
   Google
   Roppongi 6-10-1
   Minato, Tokyo  106-6126
   Japan

   Email: lorenzo@google.com

ISO Plain Language

On this page
PROBLEMIPv6 routers announce their presence with Router Advertisement messages. If those arrive too often, battery-powered hosts have to wake up to process each one, which shortens battery life and can push hosts to ignore advertisements entirely.
MECHANISMNetworks answer a host's Router Solicitation with a unicast advertisement to that host instead of a multicast one to everyone, and they avoid frequent multicast advertisements unless the information changed. Hosts that sleep must still process multicast advertisements.
WHY IT MATTERSNo protocol change is needed, because unicast replies to solicitations and configurable advertisement intervals are already allowed by RFC 4861. RFC 7772 is a Best Current Practice and has not been obsoleted.

§1Introduction

Routing information reaches IPv6 hosts through Router Advertisement (RA) messages, defined in RFC 4861. If those messages are sent too frequently, they can severely affect the power consumption of battery-powered hosts.

The RFC makes no change to any protocol. It describes two situations that waste power, what those situations do to hosts, and then gives recommendations for networks and for devices, all of them using behaviour that is already allowed.

Routers use advertisements to tell IPv6 hosts about the network. A host that is asleep has to wake up for each one, which uses battery. This RFC changes nothing in the protocol. It says how often advertisements should be sent and how a network can answer a single host without waking up all the others.

§2Two Situations That Waste Power

The first situation is solicited multicast RAs on large networks. Every time a device joins the network, all devices on that network receive a multicast Router Advertisement. In the worst case, when devices keep joining and leaving and the network is large enough, every device receives solicited Router Advertisements at the maximum rate allowed by Section 6.2.6 of RFC 4861, which is one every 3 seconds.

The second situation is frequent periodic Router Advertisements. Some networks send periodic multicast advertisements very often, for example once every few seconds. This can come from a wish to limit the customer impact of network renumbering events, which occur relatively often in some large residential networks. Where hosts ignore RAs, or even ignore all IPv6 packets, while in sleep mode, such a network may feel it has to send RAs frequently so that devices are not left with a non-functional IPv6 configuration for a long time. That has a severe impact on battery life.

Two patterns cost power. First, when a device joins a large network, the router's multicast advertisement reaches every device, not just the one that joined. Second, some networks send advertisements every few seconds on their own. Hosts that sleep through them then lose their IPv6 settings, so the network keeps sending them, and the power cost climbs.

§3What Hosts Do When Advertisements Are Too Frequent

The RFC lists three observed effects of sending Router Advertisements frequently to battery-powered devices.

  • Some hosts simply have bad battery life on these networks and otherwise operate normally, which is frustrating for the people who use them.
  • Some hosts react by dropping all Router Advertisement messages when they are in power-saving mode, on any network. Those devices then lose connectivity while in power-saving mode, which can disrupt background network communication, because the device can no longer send packets or acknowledge received traffic.
  • Some hosts react by dropping all IPv6 packets when they are in power-saving mode, which disrupts network communication entirely.

The problem then compounds. Faced with devices that drop Router Advertisements in power-saving mode, some administrators work around it by sending advertisements even more often, which makes the devices filter more aggressively.

Hosts react badly to frequent advertisements. Some simply lose battery life. Some stop listening to advertisements while they sleep, and then they cannot send anything or acknowledge traffic. Some stop listening to all IPv6 traffic. Sending more advertisements makes it worse, because the hosts filter more.

The three effects observed on battery-powered hosts
  • Short battery lifeSome hosts work normally but their batteries drain faster.
  • All advertisements droppedSome hosts ignore every Router Advertisement in power-saving mode and lose connectivity.
  • All IPv6 droppedSome hosts ignore every IPv6 packet in power-saving mode, which stops network communication.

§4Choosing an Advertisement Frequency

The right frequency for periodic advertisements depends on how constrained the devices are.

Laptop-class devices will likely notice no impact on battery life, even if advertisements are sent every few seconds. Tablets, phones and watches notice it more. At the time of writing, current-generation devices might consume on the order of 5 mA while the main processor is asleep, and on receiving a packet they might consume on the order of 200 mA for 250 ms, because the packet wakes the processor, which processes the advertisement, attends to other pending tasks and goes back to sleep. On such a device, one advertisement costs approximately 0.014 mAh.

To keep the power used for receiving advertisements at, say, 2% of idle power, so that idle battery life is affected by no more than 2%, the average power budget for receiving advertisements must be no more than 0.1 mA, which is approximately 7 advertisements per hour. Because background multicast can be lost, and because current devices tend to rate-limit multicast while asleep, many of these advertisements may never reach the device. The minimum lifetime for advertisement configuration parameters such as the default router lifetime might reasonably be 5 to 10 times the advertisement period, or roughly 45 to 90 minutes.

An impact of 2% relative to measured idle current is negligible on this kind of device, because its average power consumption is typically much higher than its idle power consumption. Specialized devices in non-general-purpose networks, such as sensor networks, might have tighter requirements, and even longer advertisement intervals might be appropriate there.

Laptops barely notice. A phone or a watch notices, and the RFC works out a figure: with about 5 mA of idle current and about 200 mA for 250 ms when a packet arrives, one advertisement costs about 0.014 mAh. To spend no more than 2% of idle power, the network can send about 7 advertisements an hour, and the settings the host keeps, such as the default router lifetime, should last 5 to 10 times that, which is 45 to 90 minutes.

How the classes of device differ
Device classEffect of frequent advertisementsAdvice in the RFC
Laptop-class THIS RFCNo noticeable battery-life impactCan tolerate advertisements every few seconds
Tablets, phones, watches THIS RFCNoticeableAbout 7 per hour, with lifetimes of 45 to 90 minutes
Sensors and other specialized devices THIS RFCCan be tighter than general-purpose devicesEven longer intervals may be appropriate

§5.1Recommendations for Networks

Router manufacturers SHOULD let administrators configure the routers to answer a Router Solicitation with a unicast Router Advertisement when two conditions hold: the solicitation's source address is not the unspecified address, and the solicitation contains a valid Source Link-Layer Address option. Administrators of networks that serve large numbers of battery-powered devices, tens or hundreds of them, SHOULD enable that behaviour.

Networks that serve battery-powered devices SHOULD NOT send multicast advertisements too frequently, unless the information in the advertisement packet has substantially changed. A network that wants hosts to pick up a configuration change quickly MAY send frequent advertisements for a limited time, for example not more than one minute, immediately after the change.

No protocol changes are required. Answering a Router Solicitation with a unicast advertisement is already allowed by Section 6.2.6 of RFC 4861, and the intervals between advertisements are already configurable by the administrator over a wide range of values.

A router should be able to answer a solicitation from one host with a unicast advertisement that only that host receives. Networks with many battery-powered devices should turn that on, and should not send multicast advertisements often unless the settings in them have really changed. If the settings have changed, a short burst of advertisements, not more than a minute, is allowed.

Answering one host with a unicast advertisement (illustrative, not from the RFC)
HostRouter
  1. Router SolicitationSent with a real source address and a valid Source Link-Layer Address option.
  2. Unicast Router AdvertisementOnly the host that asked is woken up, instead of every device on the link.

§5.2Recommendations for Devices

Keeping IPv6 connectivity requires that hosts can receive periodic multicast advertisements. A host that processes unicast packets sent while it is asleep must therefore also process multicast advertisements sent while it is asleep. A battery-powered host MAY rate-limit identical advertisements that arrive too frequently.

A battery-powered device that does not intend to keep IPv6 connectivity while it is asleep should either disconnect from the network, abandoning all IPv6 configuration there, or run the Detecting Network Attachment in IPv6 (DNAv6) procedures of RFC 6059 when it wakes up.

A host that listens for unicast traffic while it sleeps has to listen for multicast advertisements too, or it loses its IPv6 settings. A host that does not want that should drop off the network while it sleeps and check for the network again when it wakes up.

§6Security Considerations

Misconfigured or malicious hosts that send rogue Router Advertisements, described in RFC 6104, can also severely affect the power consumption of battery-powered hosts if they send a significant number of such messages. Any IPv6 network where misconfigured or malicious hosts are possible should take appropriate countermeasures to reduce the problem.

A host that sends fake advertisements can drain the battery of other hosts in the same way. Networks where that is possible should have a way to stop it.

§8References