Internet DRAFT - draft-barth-homenet-wifi-roaming
draft-barth-homenet-wifi-roaming
Homenet Working Group S. Barth
Internet-Draft Independent
Intended status: Experimental October 16, 2015
Expires: April 18, 2016
Home Network WiFi Roaming
draft-barth-homenet-wifi-roaming-00
Abstract
This document describes a mechanism to manage host routes and
statelessly proxy IPv6 Duplicate Address Detection messages between
multiple WiFi links to allow client roaming.
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 April 18, 2016.
Copyright Notice
Copyright (c) 2015 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.
Barth Expires April 18, 2016 [Page 1]
Internet-Draft Homenet WiFi Roaming October 2015
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Requirements Language . . . . . . . . . . . . . . . . . . 3
3. Stateless Duplicate Address Detection (DAD) Proxy . . . . . . 3
3.1. Receipt of DAD Messages and forwarding to routers . . . . 3
3.2. Distributing DAD Messages received from other routers . . 4
4. Maintaining Host Routes . . . . . . . . . . . . . . . . . . . 4
5. Roaming Interface Configuration . . . . . . . . . . . . . . . 5
6. Security Considerations . . . . . . . . . . . . . . . . . . . 5
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5
8.1. Normative references . . . . . . . . . . . . . . . . . . 5
8.2. Informative references . . . . . . . . . . . . . . . . . 6
Appendix A. Discussion Points [RFC Editor: please remove] . . . 6
Appendix B. Changelog [RFC Editor: please remove] . . . . . . . 6
Appendix C. Draft Source [RFC Editor: please remove] . . . . . . 6
Appendix D. Acknowledgements . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
In a multi router home network it can be desirable to have a WiFi
network accessible in different physical locations. Synchronization
of configuration parameters like ESSID and authentication allows
clients to seamlessly roam the network. However, a client switching
from one WiFi AP to another might suffer from service disruption if
each AP uses a different IP address prefix. To mitigate this issue,
all AP links could be bridged on layer 2, which would lead to
increased traffic on the home network backbone. This draft offers an
alternative solutions based on host routing and proxying of Duplicate
Address Detection for IPv6.
In order to minimize additional complexity on routers, this draft
either relies on existing state in the form the neighbor cache
entries used for host routing or introduces only lightweight,
stateless mechanism to distribute Duplicate Address Detection
messages.
However, an additional mechanism is needed to identify and share
information about which routers have roaming interfaces, to which
roaming interface set they belong, under which addresses these
routers are reachable and which specific roaming prefixes are
assigned. The specific mechanism is out of scope for this draft,
however a solution based on [I-D.ietf-homenet-hncp] is conceivable.
Barth Expires April 18, 2016 [Page 2]
Internet-Draft Homenet WiFi Roaming October 2015
2. Terminology
ESSID IEEE 802.11 Extended Service Set Identifier
host route an IPv6 route with a prefix length of 128 intended
to track a host on a roaming interface
roaming interface a network interface (typically IEEE 802.11) which
shares an address prefix with other similar
interfaces to allow seamless client roaming
roaming interface the set of roaming interfaces which share a
set particular address prefix
roaming prefix an IPv6 address prefix shared between all
interfaces in a roaming interface set
2.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in RFC
2119 [RFC2119].
3. Stateless Duplicate Address Detection (DAD) Proxy
Sharing a roaming prefix across multiple separate interfaces might
lead to address collisions between hosts on different interfaces of
the same set. Therefore, it needs to be ensured that DAD messages
are shared across interfaces. The typical DAD process involves the
querying host sending one or more Neighbor Solicitations using the
unspecified address as a source and any colliding host replying to
the all-nodes address as specified in [RFC4862] and [RFC4861]. Since
the source addresses of the DAD solicitations and the destination
addresses of the DAD advertisements are fixed, the whole process can
happen statelessly.
3.1. Receipt of DAD Messages and forwarding to routers
The following requirements apply for receiving DAD traffic from hosts
on roaming interfaces and forwarding them to other DAD proxy routers:
A router MUST listen for all Neighbor Solicitations with a target
addresses from an assigned roaming prefix having the unspecified
address as the source address. Similarly it MUST listen for all
Neighbor Advertisements with a target address from an assigned
roaming prefix and having the all-nodes multicast address as the
destination address.
Barth Expires April 18, 2016 [Page 3]
Internet-Draft Homenet WiFi Roaming October 2015
A router MUST forward all such messages via global unicast to all
other routers having roaming interfaces sharing the roaming
prefixes the target address of the respective message belongs to.
3.2. Distributing DAD Messages received from other routers
The following requirements apply for distributing DAD traffic,
forwarded by other routers, to clients on roaming interfaces:
A router MUST listen for Neighbor Solicitations and Advertisements
sent via global unicast from other routers having roaming
interfaces with the same roaming prefix.
Upon reception of such a Neighbor Solicitation, the router MUST
forward the message to all roaming interfaces having prefixes
matching the target address. It MUST use the unspecified address
as source and the respective solicited node multicast-address as
destination address.
Upon reception of such a Neighbor Advertisement, the router MUST
forward the message to all roaming interfaces having prefixes
matching the target address. It MUST use the all-nodes multicast-
address as destination address.
4. Maintaining Host Routes
Host routes are necessary in order to unambiguously forward packets
to potentially roaming WiFi clients. This draft ties the
announcement of host routes to the presence of Neighbor Cache
[RFC4861] entries for addresses of roaming prefixes. The following
requirements apply:
A router MUST announce a host route for an IPv6 address belonging
to a roaming prefix whenever there is a corresponding entry for it
in the roaming interface's neighbor cache with the states
REACHABLE, STALE, DELAY or PROBE.
A router MUST retract any host route for an IPv6 address
immediately when a neighbor lookup for it has finally failed on
the roaming interface OR when a physical disconnect of the
respective client (e.g., a WiFi disassociation) has been noticed.
A router SHOULD be able to manage and publish host routes for at
least two IPv6 addresses for every connected host and IPv6 roaming
prefix announced on a roaming interface.
The router SHOULD NOT flush neighbor cache entries in STALE state
and respective host routes. Instead it SHOULD try to promote
Barth Expires April 18, 2016 [Page 4]
Internet-Draft Homenet WiFi Roaming October 2015
STALE entries to REACHABLE and only upon failure remove the cache
entry and route. This ensures that the address is actually not
used anymore and the host does not happen to be merely temporarily
inactive and potentially waiting for incoming packets.
5. Roaming Interface Configuration
The following requirements are suggested for interfaces intended to
use the roaming features described in this draft:
Router Advertisements SHOULD only include Prefix Information
Options for one more IPv6 roaming prefixes. Such Prefix
Information Options MUST have the A-Bit set and the L-Bit cleared.
The IPv6 address fe80::1 SHOULD be used as fixed link-local
address exclusively by the router on roaming interfaces. This is
to ensure that the IPv6 default route for clients stays the same
across roaming interfaces. Furthermore the address SHOULD be
announced as recursive DNS server address should the router
provide such a service.
Router Advertisements SHOULD be sent as described in
[I-D.ietf-v6ops-reducing-ra-energy-consumption].
Stateful DHCPv6 MUST NOT be used to avoid the need to synchronize
lease information and relay DHCPv6 packets. Similarly Router
Advertisements MUST be sent with the M-Bit cleared.
NAT64 and DNS64 SHOULD be used if IPv4 connectivity is desired,
alternatively different and disjoint native IPv4 prefixes MAY be
used on each individual roaming interface.
6. Security Considerations
TBD
7. IANA Considerations
No action needed.
8. References
8.1. Normative references
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
Barth Expires April 18, 2016 [Page 5]
Internet-Draft Homenet WiFi Roaming October 2015
[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.
[I-D.ietf-v6ops-reducing-ra-energy-consumption]
Yourtchenko, A. and L. Colitti, "Reducing energy
consumption of Router Advertisements", draft-ietf-v6ops-
reducing-ra-energy-consumption-02 (work in progress),
October 2015.
8.2. Informative references
[I-D.ietf-homenet-hncp]
Stenberg, M., Barth, S., and P. Pfister, "Home Networking
Control Protocol", draft-ietf-homenet-hncp-09 (work in
progress), August 2015.
Appendix A. Discussion Points [RFC Editor: please remove]
o It is debatable which kind of transport could be used for the
proxied DAD messages. Plain ICMPv6 could be possibly but might be
dropped by certain hosts. Similarly UDP or DTLS encapsulation
could be used easily if a port was allocated or exchanged.
o Is additional reliability useful and if so what kind? Normally
hosts only send a single DAD solicitation, so the probability of a
total packet loss increases with each forwarding hop. Trivially
one could simply duplicate all proxied DAD messages or use TCP
framing or SCTP. However the announced Retrans Timer value in the
RA and retransmission parameters of the transport need to be
adjusted, so that any resend and matching replies happen before
the host considers the DAD process to have resulted in no
collisions.
Appendix B. Changelog [RFC Editor: please remove]
draft-barth-homenet-wifi-roaming-00:
o Initial version.
Appendix C. Draft Source [RFC Editor: please remove]
As usual, this draft is available at https://github.com/fingon/ietf-
drafts/ in source format (with nice Makefile too). Feel free to send
comments and/or pull requests if and when you have changes to it!
Barth Expires April 18, 2016 [Page 6]
Internet-Draft Homenet WiFi Roaming October 2015
Appendix D. Acknowledgements
Thanks to Markus Stenberg for comments and feedback on the draft.
Author's Address
Steven Barth
Independent
Halle 06114
Germany
Email: cyrus@openwrt.org
Barth Expires April 18, 2016 [Page 7]