<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC4861 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4861.xml">
<!ENTITY RFC6059 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6059.xml">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> <!-- used by XSLT processors -->
<!-- OPTIONS, known as processing instructions (PIs) go here. -->
<!-- For a complete list and description of PIs,
     please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable PIs that most I-Ds might want to use. -->
<?rfc strict="yes" ?> <!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC): -->
<?rfc toc="yes"?> <!-- generate a ToC -->
<?rfc tocdepth="2"?> <!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references: -->
<?rfc symrefs="yes"?> <!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?> <!-- sort the reference entries alphabetically -->
<!-- control vertical white space: 
     (using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?> <!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?> <!-- keep one blank line between list items -->
<!-- end of popular PIs -->
<rfc category="bcp" docName="draft-ietf-v6ops-reducing-ra-energy-consumption-03" ipr="trust200902">
  <front>
    <title abbrev="Reducing RA energy consumption">Reducing energy consumption of Router Advertisements</title>
    <author fullname="Andrew Yourtchenko" initials="A" surname="Yourtchenko">
      <organization>Cisco</organization>
      <address>
        <postal>
      <street>7a de Kleetlaan</street>
      <city>Diegem</city>
      <region>1831</region>
<!-- <code/> -->
      <country>Belgium</country>
        </postal>
      <phone>+32 2 704 5494</phone>
<!-- <facsimile/> -->
      <email>ayourtch@cisco.com</email>
<!-- <uri/> -->
      </address>
    </author>
    <author fullname="Lorenzo Colitti" initials="L" surname="Colitti">
      <organization>Google</organization>
      <address>
        <postal>
          <street>Roppongi 6-10-1</street>
          <city>Minato</city>
          <region>Tokyo</region>
          <code>106-6126</code>
          <country>JP</country>
        </postal>
<!-- <phone/> -->
<!-- <facsimile/> -->
      <email>lorenzo@google.com</email>
<!-- <uri/> -->
      </address>
    </author>
    <date year="2015" />
    <area>General</area>
    <workgroup>IPv6 Operations</workgroup>
    <keyword>Neighbour Discovery</keyword>
    <keyword>IPv6</keyword>
    <abstract>
      <t>Frequent Router Advertisement messages can severely impact host power consumption. This document recommends operational practices to avoid such impact.
      </t>
    </abstract>
  </front>
  <middle>
    <section title="Introduction">
      <t>Routing information is communicated to IPv6 hosts by Router Advertisement (RA) messages <xref target="RFC4861"/>. If these messages are too frequent, they can severely impact power consumption on battery-powered hosts.</t>
      <t>
          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
          <xref target="RFC2119"/>.
      </t>
    </section>
    <section title="Problem scenarios">
      <section title="Solicited multicast RAs on large networks">
        <t>On links with a large number of battery-powered devices, sending solicited Router Advertisements multicast 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 <xref target="RFC4861"/>, which is one every 3 seconds.</t>
      </section>
      <section title="Frequent periodic Router Advertisements">
        <t>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.</t>
      </section>
    </section>

    <section title="Consequences">
      <t>Observed reactions to frequent Router Advertisement messages by battery-powered devices include:</t>
      <t><list style="symbols">
        <t>Some hosts simply experience bad battery life on these networks and otherwise operate normally. This is frustrating for users of these networks.</t>
        <t>Some hosts react by dropping all Router Advertisement messages when in power saving mode on any network, e.g., <eref target="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.</t>
        <t>Some hosts react by dropping *all* IPv6 packets when in power saving mode, <eref target="http://www.gossamer-threads.com/lists/nsp/ipv6/54641"/>. This disrupts network communications.</t>
        </list></t>
        <t>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.</t>
    </section>


    <section title="Router Advertisement frequency" anchor="sec_frequency">
      <t>The appropriate frequency of periodic RAs depends on how constrained the network devices are.
        <list style="symbols"><t>Laptop-class devices will likely experience no noticeable battery life impact even if RAs are sent every few seconds.</t>
          <t>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 250ms, as the packet causes the main processor to wake up, process the RA, attend to other pending tasks, and then go back to sleep again. Thus, on such devices the cost of receiving one RA will be approximately 0.014mAh.
<vspace /><vspace />

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.1mA, 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.
<vspace /><vspace />

          An idle time 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.</t>

          <t>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.</t>
        </list>
      </t>
    </section>

    <section title="Recommendations">
      <section title="Network-side recommendations">
        <t><list style="numbers">
          <t>Router manufacturers SHOULD allow network administrators to configure the routers to respond to Router Solicitations with unicast Router Advertisements if:
          <list style="symbols">
            <t>The Router Solicitation's source address is not the unspecified address, and:</t>
            <t>The solicitation contains a valid Source Link-Layer Address option.</t>
          </list></t>
          <t>Administrators of networks that serve large numbers (tens or hundreds) of battery-powered devices SHOULD enable this behaviour.</t>
          <t>Networks that serve battery-powered devices SHOULD NOT send multicast RAs too frequently (see section <xref target="sec_frequency"/>) 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.</t>
        </list></t>
        <t>No protocol changes are required. Responding to Router Solicitations with unicast Router Advertisements is already allowed by section 6.2.6 of <xref target="RFC4861"/>, and Router Advertisement intervals are already configurable by the administrator to a wide range of values.</t>

      </section>
      <section title="Device-side recommendations">
        <t><list style="numbers">
          <t>Maintaining IPv6 connectivity requires that hosts be able to receive periodic multicast RAs <xref target="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.</t>
          <t>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 DNAv6 procedures <xref target="RFC6059"/> when waking up.</t>
        </list></t>
      </section>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>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.
      </t>
    </section>
    <section anchor="IANA" title="IANA Considerations">
      <t>
None.
      </t>
    </section>
    <section anchor="Security" title="Security Considerations">
      <t>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.</t>
    </section>
  </middle>
  <back>
    <references title="Normative References">
      &RFC2119;
      &RFC4861;
      &RFC6059;
    </references>
  </back>
</rfc>
