Internet DRAFT - draft-yourtchenko-colitti-nd-reduce-multicast

draft-yourtchenko-colitti-nd-reduce-multicast







Network Working Group                                     A. Yourtchenko
Internet-Draft                                                     cisco
Intended status: Informational                                L. Colitti
Expires: August 18, 2014                                          Google
                                                       February 14, 2014


             Reducing Multicast in IPv6 Neighbor Discovery
            draft-yourtchenko-colitti-nd-reduce-multicast-00

Abstract

   IPv6 Neighbor Discovery protocol makes wide use of multicast traffic,
   which makes it not energy efficient for the mobile WiFi hosts.  This
   document describes two classes of possible ways to reduce the
   multicast traffic within IPv6 ND.  First, within the boundaries of
   existing protocols.  Second - with what the authors deem to be "minor
   changes" to the existing protocols.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on August 18, 2014.

Copyright Notice

   Copyright (c) 2014 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



Yourtchenko & Colitti    Expires August 18, 2014                [Page 1]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Impact of Multicast Packets in 802.11 Networks  . . . . . . .   3
   3.  Quantifying the use of Multicast in Neighbor Discovery  . . .   4
   4.  Multicast-limiting measures with no changes in specifications   4
     4.1.  On-device robust multicast filtering  . . . . . . . . . .   5
     4.2.  Unicast Solicited Router Advertisements . . . . . . . . .   5
     4.3.  Infrastructure-based multicast filtering  . . . . . . . .   5
     4.4.  Proxy the Neighbor Discovery protocol on the access point   6
     4.5.  Maximized Interval for Periodic RAs . . . . . . . . . . .   6
     4.6.  Increasing the advertised Reachable value . . . . . . . .   7
     4.7.  Clearing the on-link bit in the advertized prefixes . . .   7
     4.8.  Explicit creation of state with DHCPv6 address assignment   8
     4.9.  Client link shutdown within the router lifetime expiry  .   8
   5.  Multicast-limiting measures with small changes in
       specifications  . . . . . . . . . . . . . . . . . . . . . . .   8
     5.1.  Remove the send-side limit on AdvDefaultLifetime of 9000
           Seconds . . . . . . . . . . . . . . . . . . . . . . . . .   8
     5.2.  Explicitly Client-Driven Router Advertisements  . . . . .   9
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   9
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  10
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   9.  Normative References  . . . . . . . . . . . . . . . . . . . .  10
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  10

1.  Introduction

   Wireless networks based on the IEEE 802.11 standard (WiFi) are
   ubiquitous in today's life.  The multicast/broadcast behavior in
   these networks has significantly lower performance than unicast in
   the majority of the cases.

   Also, in the current standard and implementations of the 802.11
   protocols from the link-layer media standpoint the multicast is the
   same as broadcast.

   The Neighbor Discovery protocol makes substantial use of multicast
   packets on the assumption that they provide the same or better
   efficiency compared to unicast packets.

   This misalignment results that the nodes on IPv6 networks with the
   default configuration perform significantly poorer both from the
   battery life standpoint and the bandwidth efficiency standpoint.




Yourtchenko & Colitti    Expires August 18, 2014                [Page 2]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   This document presents two groups of measures which reduce the
   shortcoming:

   o  The measures which are possible without any changes to the
      existing standards.

   o  The measures which require minimal changes to the standards.

   Add some text here.  You will need to use these references somewhere
   within the text: [RFC4862] [RFC4861] [RFC6620] [RFC3315]

2.  Impact of Multicast Packets in 802.11 Networks

   NOTE: much if not all of the subsequent text in this section might
   need to be transferred to vyncke-6man-mcast-not-efficient-01, which
   discusses why multicast is not an efficient media in the WiFi
   environments.

   1.  Multicast can impact power consumption on hosts if hosts receive
       multicast packets that are not addressed to them.

   2.  Excessive use of multicast can reduce the performance of wireless
       networks.

   3.  The extra packets are more expensive when they occur with the
       host not otherwise engaged in using the network.

   4.  Mobile nodes often have more than one processor and multiple
       power management states both for the central processing unit and
       for the WiFi portion (e.g. using only one antenna out of
       multiple).  Often, the battery impact of rejecting a packet in
       the radio firmware is substantially lower than the impact of
       passing the packet to the main processor and rejecting it there.

   In 802.11 networks, multicast frames towards clients have a greater
   battery impact than the unicast frames because they are transmitted
   to all hosts at once, with the AP setting the DTIM bit on the beacon
   packet to signal to the dozing hosts that the transmission is about
   to begin.

   Thus, if the host were not to wake up right there and then, it would
   miss the multicast frame.  Unicast packets are buffered on the AP and
   may have a more lenient delivery schedule, which would allow the
   devices to not have to wake up at every beacon interval (100ms).

   The tradeoff between the energy savings and the latency of the
   multicast delivery may be manipulated by changing the parameter
   called DTIM interval, which determines how often (every Nth beacon)



Yourtchenko & Colitti    Expires August 18, 2014                [Page 3]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   the AP can send the indication about the multicast traffic to the
   clients - with the default values being fairly low, usually in the
   range of one to three.

   Increasing these values increases the latency for the multicast
   packets, therefore changing the DTIM interval beyond the defaults is
   usually not recommended.

3.  Quantifying the use of Multicast in Neighbor Discovery

   Normal operation of Neighbor Discovery uses the following multicast
   packets.

   1.  Duplicate Address Detection.
       Expected impact: One packet per IPv6 address (a host may be
       configured to do 2 or more) every time a host joins the network

   2.  Router Solicitations.
       Expected impact: One packet every time a host joins the network.

   3.  Router Advertisements.
       Expected impact:

       *  One multicast RAs every [RA interval] seconds

       *  One solicited RA per host joining the network (if solicited
          RAs are sent using multicast)

   4.  Neighbor solicitations.  Expected impact: One every time a host
       talks to a new on-link destination talked to.  The response is
       cached and typically does not expire unless the ND cache is under
       pressure and subject to garbage collection.  Cache entries are
       refreshed (and possibly deleted) using unicast NUD packets, so
       cache refreshes do not cause multicast packets to be sent..

   With the exception of periodic RAs (and possibly solicited RAs), none
   of these packets are addressed to all nodes.  RS packets are
   addressed to all routers, and NS packets are addressed to solicited-
   node multicast groups.  Because solicited-node multicast groups
   contain the last 24 bits of the IPv6 address, in most networks, each
   solicited-node group will have at most one member.

4.  Multicast-limiting measures with no changes in specifications








Yourtchenko & Colitti    Expires August 18, 2014                [Page 4]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


4.1.  On-device robust multicast filtering

   The hosts may implement on-device multicast filtering, such that if
   devices receive multicast packets that are not addressed to them,
   they will not send the packets to the main CPU but instead remain in
   a lower sleep state.

   It is worth noting that this may require a less deep sleep state than
   the one required to monitor the TIM in the beacon frames.  Also,
   filtering the packets on the device does not address the inefficiency
   in spectrum utilisation caused by excessive multicast frames.

4.2.  Unicast Solicited Router Advertisements

   [RFC4861] in section 6.2.6 already allows to do so via a MAY verb (if
   the solicitation's source address is not the unspecified address).
   This is further weakened by the subsequent qualifier being "but the
   usual case is to multicast the response to the all-nodes group."  As
   a result of this, a lot of implementations do multicast the solicited
   RAs, significantly impacting the devices.

   To help address this, all router implementations SHOULD have a way to
   send solicited RAs unicast in the environments which wish to do so.

4.3.  Infrastructure-based multicast filtering

   Ensure that solicited-node multicasts only go to the specific nodes.
   This can be implemented either using multicast snooping or by
   converting multicast packets to unicast packets that are addressed to
   a subset of the hosts..

   The latter can be done in two ways:

   o  on the 802.11 level alone, preserving the destination within the
      inner Ethernet frame as multicast

   o  on the 802.11 and 802.3 levels, as clarified by the [RFC6085]

   Some networks track individual device IP addresses for security and
   tracking reasons, typically by snooping DAD packets or device traffic
   as described in [RFC6620]

   In these networks, the infrastructure is already aware of which IP
   addresses are mapped to which MAC addresses, and can use this
   information to selectively unicast neighbor solicitations to the
   nodes that will be interested in them.





Yourtchenko & Colitti    Expires August 18, 2014                [Page 5]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   Most wireless networks are infrastructure-based.  The 802.11 standard
   defines that all communications in such networks will happen via the
   access points.  Therefore, the infrastructure has a chance to
   intelligently filter any multicast packets that are coming from both
   local (served by the same access point) and remote (located behind
   the wired infrastructure) hosts or routers, before forwarding them
   onto the air to their ultimate destination.

4.4.  Proxy the Neighbor Discovery protocol on the access point

   802.11 standard defines also that all of packets sent from the client
   to the Access Point (either for the local over-the-air delivery or
   for forwarding on to the wired side) are acknowledged (even the
   multicast ones).

   With this in mind, in the scenarios like DAD, a proxy ND
   implementation has inherently a much better chance of working than
   the "regular" forwarding of the multicast DAD NS (and the return
   forwarding of the multicast DAD NA in case of DAD collision that was
   detected).

   Therefore, the environments which want to increase the robustness of
   the DAD, may wish to proxy the ND on behalf of the clients, therefore
   reducing the overall client-directed multicast traffic (which is
   unacknowledged) and increasing the robustness against the poor radio
   conditions.

4.5.  Maximized Interval for Periodic RAs

   Assuming the solicited RAs are sent unicast, increasing the interval
   of the periodic RAs is a natural way of further reducing the amount
   of multicast packets in the air.

   The bounding factor is AdvDefaultLifetime, which is limited by the
   [RFC4861], section 6.1 on the sending side to 9000 seconds.

   Thus, to find the "right" value one will have to balance the
   robustness in the face of higher packet loss on the segment with the
   energy consumption by the endpoints.  Some real-world mid-scale
   networks (on the order of 10000 hosts within a single /64)
   successfully used a value of one RA in 1800 seconds.

   However, it is impossible to specify the "best" value - everything
   will depend on the quality of the local WiFi installation and the
   radio conditions, with the constraint of 9000 seconds currently
   specified by the standard.





Yourtchenko & Colitti    Expires August 18, 2014                [Page 6]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


4.6.  Increasing the advertised Reachable value

   The NUD with the default settings and active traffic will enter the
   PROBE state as frequently as every ~30 seconds.  [RFC4861] section
   7.3.3 defines: "If no response is received after waiting RetransTimer
   milliseconds after sending the MAX_UNICAST_SOLICIT solicitations,
   retransmissions cease and the entry SHOULD be deleted.  Subsequent
   traffic to that neighbor will recreate the entry and perform address
   resolution again."

   Short-term connectivity issues at link layer may cause a trigger for
   the symptoms described in the [RFC7048], therefore triggering the
   nodes to send multicast neighbor solicitations.  However, most of the
   hosts do not implement at this time the changes suggested there.
   With the default short timeouts and a wireless environment which
   forwards multicasts without the filtering, these retransmissions may
   contribute to further possible failures of NUD in other hosts.  In
   the extreme high density and mobility environments (conferences,
   stadiums) this may result in avalanche effect and significantly
   increase the portion of multicast traffic.

   Furthermore, an 802.11 segment usually has a single gateway (possibly
   in a FHRP redundant configuration), therefore making NUD not very
   useful at all: if that gateway does not function, there is no
   alternative.

   For these kinds of environments it may be useful to significantly
   increase the REACHABLE_TIME from 30000 milliseconds to 600000 seconds
   and higher.  One possible concern here, however, may be the overflow
   of the ND table on the gateway, so, again, there is no "best" value
   suitable for all the networks.

4.7.  Clearing the on-link bit in the advertized prefixes

   The mobile nodes have generally fairly limited memory, so in the
   environments where there are thousands of nodes on a single /64, it
   might be burdensome for them to manage a large neghbor table.  Having
   a lot of hosts with large neighbor tables may mean also a lot of NUD
   maintenance activity, with the potential for the catastrophic failure
   of the NUD therefore increasing in the high-density environments.

   Clearing the on-link bit in the advertised prefixes causes the hosts
   to send all the traffic to each other via the default gateway - thus
   dramatically reducing the size of the neighbor table and the burden
   of its maintenance on the hosts.

   The remaining impact of the link-local addresses still present in the
   cache can then be mitigated by blocking the direct communications



Yourtchenko & Colitti    Expires August 18, 2014                [Page 7]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   between the hosts at L2, which is a standard feature in the wireless
   LAN equipment.  This operation effectively turns a wireless LAN
   segment into a collection of point-to-point links between the hosts
   and the access point, not dissimilar to the operation of private
   VLANs in the wired LAN case - making the subnet effectively NBMA.

4.8.  Explicit creation of state with DHCPv6 address assignment

   Turning the WLAN subnet into an NBMA has a consequence that the DAD
   may no longer work - which may create a problem with the global
   addresses.  Therefore, it may be necessary to transfer the control
   over the address assignment to a centralized entity.

   Also, the 802.11 protocols operate in the unlicensed bands, which
   means that the radio conditions may vary greatly.  The 802.11 LLC
   protocol itself does have a fairly robust L2 retransmission mechanism
   for the acknowledged packets (up to 64 retransmissions).  However,
   there still may be times when the radio conditions are so poor that
   this robustness is not enough.  If the network were to use the
   snooping to maintain the strict policies (e.g. restrict the source
   addresses of the traffic), merely snooping the ND may not work, and
   the data-driven recovery mechanisms might be unacceptable.

   In these cases one may consider using DHCPv6 as an address assignment
   mechanism, which would provide the explicit management of state by
   the client, and the retransmissions required to create the necessary
   state on the network side without requiring the node to send the
   data.

4.9.  Client link shutdown within the router lifetime expiry

   Some nodes after a longer period of time may decide to completely
   shut down the radio.  This will of course result in the best battery
   usage, but will incur a tradeoff that waking up the client from the
   network side will be impossible.  However, this mode of operation is
   the only one not using DHCPv6 which may allow complete avoidance of
   multicast RA packets: if the client never stays awake for longer than
   the router lifetime, it will not require the multicast RA processing.
   This optimization is here for completeness of the discussion - since
   it changes the connectivity of the client.

5.  Multicast-limiting measures with small changes in specifications

5.1.  Remove the send-side limit on AdvDefaultLifetime of 9000 Seconds

   [RFC4861], section 6.1 limits the AdvDefaultLifetime on the sending
   side to 9000 seconds, while explicitly requiring the receiving side




Yourtchenko & Colitti    Expires August 18, 2014                [Page 8]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   to process all the values up to 65535 (maximum allowed by 16-bit
   unsigned integer that the AdvDefaultLifetime is).

   This artificial limit means a hard limit on the maximum router
   lifetime that can be specified in the configuration.  (The authors
   tried two router implementations: Cisco IOS and radvd.  More
   information welcome).

   This artificial restriction prevents from using very long router
   advertisement intervals that would otherwise be possible - with the
   difference being more than 7x!

   Additionally, allowing the router lifetime of 65535 seconds, coupled
   with sufficiently long lifetimes for the prefix, would cover the vast
   majority of the lifetimes of the devices on the WiFi networks. 65535
   seconds is 18.2 hours, and the typical mobile devices might not even
   stay on the same network for such a long period of time.  This would
   allow to increase the robustness of the network in the face of bad
   radio conditions causing the high loss of the multicast RAs.

5.2.  Explicitly Client-Driven Router Advertisements

   We can logically extend the "client link shutdown" in the direction
   of smaller connectivity loss, and imagine that the client, instead of
   completely shutting the radio down, would flap its radio link
   somewhere close to router lifetime expiry, therefore, while acting
   fully within the standards it will be able to maintain the
   connectivity during all but very short period of time, without any
   use of periodic RAs.

   It may be interesting to explore a modification of the client
   behavior such that the "flap time" converges to zero, and eventually
   allowing the client to initiate a unicast Router Solicitation some
   time shortly before the router lifetime expires.  This will have the
   result of the client being able to maintain the connectivity without
   the need of processing any periodic RAs.  The advantage of doing so
   is that the RS-RA exchange will happen at the time convenient for the
   client sleep schedule - thus allowing to maximize the battery life.

6.  Acknowledgements

   Thanks to the following people for the very useful discussions.  In
   no particular order: Erik Nordmark, Pascal Thubert, Eric Levy-
   Abegnoli, Ole Troan, Eric Vyncke, Federico Lovison, Jerome Henry.







Yourtchenko & Colitti    Expires August 18, 2014                [Page 9]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


7.  IANA Considerations

   None.

8.  Security Considerations

   Not discussed in -00.

9.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC3315]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
              and M. Carney, "Dynamic Host Configuration Protocol for
              IPv6 (DHCPv6)", RFC 3315, July 2003.

   [RFC4861]  Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
              "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
              September 2007.

   [RFC4862]  Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
              Address Autoconfiguration", RFC 4862, September 2007.

   [RFC6085]  Gundavelli, S., Townsley, M., Troan, O., and W. Dec,
              "Address Mapping of IPv6 Multicast Packets on Ethernet",
              RFC 6085, January 2011.

   [RFC6620]  Nordmark, E., Bagnulo, M., and E. Levy-Abegnoli, "FCFS
              SAVI: First-Come, First-Served Source Address Validation
              Improvement for Locally Assigned IPv6 Addresses", RFC
              6620, May 2012.

   [RFC7048]  Nordmark, E. and I. Gashinsky, "Neighbor Unreachability
              Detection Is Too Impatient", RFC 7048, January 2014.

Authors' Addresses

   Andrew Yourtchenko
   cisco
   7a de Kleetlaan
   Diegem, 1831
   Belgium

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





Yourtchenko & Colitti    Expires August 18, 2014               [Page 10]

Internet-Draft        Reducing Multicast in IPv6 ND        February 2014


   Lorenzo Colitti
   Google

   Email: lorenzo@google.com















































Yourtchenko & Colitti    Expires August 18, 2014               [Page 11]