[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits]
Versions: 00 01 02
Internet Engineering Task Force J. Palet
Internet-Draft M. Diaz
Expires: April 24, 2005 Consulintel
M. Mackay
Lancaster University
October 24, 2004
Evaluation of IPv6 Auto-Transition Algorithm
draft-palet-v6ops-auto-trans-02.txt
Status of this Memo
This document is an Internet-Draft and is subject to all provisions
of section 3 of RFC 3667. By submitting this Internet-Draft, each
author represents that any applicable patent or other IPR claims of
which he or she is aware have been or will be disclosed, and any of
which he or she become aware will be disclosed, in accordance with
RFC 3668.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on April 24, 2005.
Copyright Notice
Copyright (C) The Internet Society (2004).
Abstract
This memo evaluates a method called "auto-transition" to ensure that
any device can obtain IPv6 connectivity at any time and whatever
network is attached to, even if such network is connected to Internet
only with IPv4 or already offers IPv6 but with poor performance.
Palet, et al. Expires April 24, 2005 [Page 1]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
The algorithm looks for the best possible transition mechanism
according to performance criteria information available as well as
the scenario where the device is located.
By implementing such auto-transition algorithm in either or both end
nodes or middle boxes (CPEs), users could always obtain IPv6
connectivity with no human intervention.
The document doesn't actually provides a complete solution, just an
evaluation of the problem and the requirements towards a future
documented solution.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Auto-Transition Overview . . . . . . . . . . . . . . . . . . . 3
3. Auto-Transition Requirements . . . . . . . . . . . . . . . . . 4
3.1 Selection of the proper transition mechanism . . . . . . . 5
3.2 Change of transition mechanism . . . . . . . . . . . . . . 7
3.3 New transition/tunneling mechanisms . . . . . . . . . . . 8
3.3.1 Layer 2 tunnels . . . . . . . . . . . . . . . . . . . 9
3.3.2 Layer 3 tunnels . . . . . . . . . . . . . . . . . . . 9
3.3.3 Layer 4 tunnels . . . . . . . . . . . . . . . . . . . 10
3.4 Discovery of the IPv6 End Point . . . . . . . . . . . . . 11
4. Nomadicity Considerations . . . . . . . . . . . . . . . . . . 12
5. Network Managed Transition . . . . . . . . . . . . . . . . . . 14
5.1 Policy Based Networks . . . . . . . . . . . . . . . . . . 15
5.2 Transitioning Server . . . . . . . . . . . . . . . . . . . 15
5.3 Host operation . . . . . . . . . . . . . . . . . . . . . . 16
5.4 Server operation . . . . . . . . . . . . . . . . . . . . . 18
6. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 19
7. Security Considerations . . . . . . . . . . . . . . . . . . . 19
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 20
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 20
9.1 Normative References . . . . . . . . . . . . . . . . . . . . 20
9.2 Informative References . . . . . . . . . . . . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 22
Intellectual Property and Copyright Statements . . . . . . . . 23
Palet, et al. Expires April 24, 2005 [Page 2]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
1. Introduction
This document evaluates a method called "auto-transition" to ensure
that any device can obtain IPv6 connectivity at any time and whatever
network is attached to, even if such network is connected to Internet
only with IPv4 or already offers IPv6 but with poor performance.
The main goal is to facilitate the IPv6 deployment in a seamless way
for devices, users and applications. Lots of devices and
applications around us will benefit obtaining IPv6 connectivity
everywhere: home automation, wearable devices, cars, PDAs, mobile
phones, peer-to-peer applications, remote control applications, etc.
IPv6 is suitable to solve the network requirements that those
devices/applications will need: addressing space, end-to-end secure
peer-to-peer communication, autoconfiguration features and so on.
IPv6 provides autoconfiguration features, enabling devices to work
according to the plug-and-play philosophy, that is with no manual
intervention. However they only can be applied once the device has
obtained IPv6 connectivity. On the other hand, while native IPv6
connectivity is not available everywhere, there is not a good
"auto-transition" algorithm to ensure this connectivity.
While devices are located in a native IPv6 environment, no manual
intervention is required, so non technical users can take advantage
of IPv6. However until all or most of the networks are IPv6 native,
we need to ensure that the same devices and users can use a
transition mechanism that ensures the best possible IPv6
connectivity, without any or low technical knowledge. Is not
acceptable require to the users to make manual configurations in
order to get the IPv6 connectivity, but is also possible that in the
early IPv6 deployment stage, administrators of small and medium size
networks (typically SOHO, SME), will not have the knowledge neither
the service from their ISPs.
The algorithm will deal with all the tasks required to configure
automatically the best IPv6 connectivity at anytime, in any network
scenario, which include native IPv6 connectivity detection and
transition mechanism selection if required. It can be implemented
either in stand-alone devices (hosts, PDA, etc.) or middle boxes like
CPE routers.
2. Auto-Transition Overview
When the device is attached to the network, either or both stateless
[1] or stateful autoconfiguration [2] mechanism are automatically
performed by default. The auto-transition algorithm then must check
if native IPv6 connectivity is available. Otherwise, the algorithm
Palet, et al. Expires April 24, 2005 [Page 3]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
should try to obtain IPv6 connectivity by using the best transition
mechanism according to the network where the devices is attached.
Later, the conditions of the network can change, even the user/device
can change the location while moving. Consequently the attachment
point to the network can be different and the previous transition
mechanism no longer be so well-performing or available at all. The
auto-transition algorithm has to monitor periodically the network
parameters (i.e. IPv4 address, loss, delays, etc.) in order to
detect those changes and decide if another transition mechanism
different to the one currently being used is convenient and provides
better performance to activate it.
All this process should be ideally automatic in order to avoid the
user to make any manual configuration. At the most, users only
should introduce some parameters by means of a wizard during the
installation process of the application that implements the
auto-transition algorithm, but once it is up and running, all the
tasks should be made by the system and no manual intervention
required.
This approach should be available at least in two kinds of platforms.
o End devices: Devices that do not intend to provide IPv6
connectivity to others. They are typically devices that would get
IPv6 connectivity by means of Router Advertisement if they were
attached to a native IPv6 scenario. Examples are hosts, PDAs,
mobile phones, cameras, home automation devices, white goods,
consumer electronics, etc.
o CPE devices: Devices that are located between two different
networks or networks segments. Typically routers, IPv4 NAT boxes,
etc. They should provide native IPv6 connectivity to the whole
network(s) located behind them by announcing an IPv6 prefix. With
this approach these kind of devices will be plug-and-play, so
users only have to attach them to the network and they will deal
with all the tasks to get IPv6 connectivity. A few applications
include home networks, hotels, hot-spots and so on.
3. Auto-Transition Requirements
The best IPv6 connectivity, in principle, is obviously the native one
if available, since it should not add extra delays in the
communication neither introduce more complexity to the networks.
Consequently the auto-transition algorithm first must check if IPv6
native connectivity is available. However it strongly depends on the
ISP support and can be expected that in the early IPv6 deployment
Palet, et al. Expires April 24, 2005 [Page 4]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
stage, only a few ISPs will provide it.
If native connectivity is not available the auto-transition algorithm
must choose the right transition mechanism to be used to ensure the
IPv6 connectivity.
A number of transition mechanisms have been defined already: Teredo,
TB/TS, TSP, STEP, ISATAP, 6to4, tunnels, DSTM, etc. All of them work
when the host willing to get IPv6 connectivity has a public IPv4
address. Even some of them also work when the host is located behind
a NAT box that allows proto-41 forwarding [3]. However there are
other kinds of NAT boxes that prevent the existing transition
mechanisms to work, so there is a gap that could be filled with new
kind of solutions, possibly layer 2 or layer 4 tunnels.
The adequate selection of the proper transition mechanism is one of
the keys of the auto-transition concept.
The auto-transition goal is to facilitate an adequate transition to
IPv6. Towards that, it tries to automatically decide the most
optimal transition solution in every given scenario, which may be not
the perfect one. Actually implementing a perfect auto-transition
solution could be a very complicated, overloading and slow algorithm
(in addition to the delay in its specification and development); in
the case it happens, could bring us the paradigm that there is no
anymore an incentive for native IPv6 connectivity, which clearly is
in contradiction with the goals of this memo and in general the
(native) IPv6 deployment one.
3.1 Selection of the proper transition mechanism
A few scenarios with particular network requirements had been defined
already ([4], [5], [6], [7]). Not all the transition scenarios fit
in such network scenarios, as being evaluated at [8], which is trying
to make the best fit to each scenario.
The auto-transition algorithm may take into account not only the
results shown in [8], but also new conclusions, because it is also
possible a wider focus to select the best transition mechanism to be
used. What the end user always demands is the best performance on
the IPv6 connectivity, so it should be the main criteria to choose
the right transition mechanism.
Distance, delays, loss and bandwidth, are some of the related
parameters that could be used as metrics to be measured for knowing
the link performance. A device can present different values of such
metrics according to the transition mechanism that is being used even
when attached to the same network.
Palet, et al. Expires April 24, 2005 [Page 5]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
A combination of all the metrics could provide a fine evaluation of
the connection performance. However in order to make the mechanism
as simple as possible only delay and loss should be considered.
According to this philosophy the auto-transition algorithm could
operate by means of the following simple algorithm, where the
interactions are over the time:
loop
detect_scenario
if (native_IPv6_available and native_priority)
use_native_IPv6_connectivity
else
if (first_check or performance_check_allowed)
check_performance
use_best_mechanism
endif
endif
configure_connectivity
wait (link_check_timeout)
endloop
Figure 1: Simple Auto-transition algorithm
It is important to note what each task or parameter means:
o detect_scenario: This task deals with detecting the scenario where
the device willing to have IPv6 connectivity is located. It could
check if native IPv6 is available, if a public IPv4 address is
available, if a NAT is being used and (possibly) the type, if
there is a proxy or firewall, or if other protocols can be
operated.
o native_IPv6_available: Detects if native IPv6 is available.
o native_priority: Detects if native IPv6 has priority, for
instance, even in the case the performance is lower than the one
that could be obtained with alternative transition mechanism that
may be used (i.e. a native IPv6 network with is attached to a
non-native WAN link with IPv6 tunneled over IPv4 to and end-point
which offers a bad performance while there is a much better
TB/TS). This condition could be set by the OS, or even under user
or applications control.
o use_native_IPv6_connectivity: Configure the interface to use
native IPv6 connectivity, using stateless or stateful
autoconfiguration, upon their availability.
Palet, et al. Expires April 24, 2005 [Page 6]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
o first_check: Defines if this is the first time this check is being
done after an interface reset.
o performance_check_allowed: Defines if the performance of the
selected mechanism can be measured after selected, for instance,
to avoid traffic being generated in non-flat rate links (3GPP,
ISDN, ...).
o check_performance: According to the detected scenario, a number of
mechanisms could be used. This task checks the performance that
each of such transition mechanism provides, including native IPv6
if available, by measuring delays and losses. The mechanisms
subset will be defined by taking into account [8], but others
could be considered.
o use_best_mechanism: According to the measurement results, the best
mechanism is selected.
o configure_connectivity: Either native IPv6 connectivity or the
best available transition mechanism is configured.
o link_check_timeout: Once the IPv6 connectivity is obtained, the
auto-transition algorithm periodically monitors the link status.
The delay between consecutive checks is defined by this variable.
A possible list of mechanisms to be checked, ordered by preference
could be:
1. Native IPv6 Connectivity
2. TS with proto-41 ([3])
3. TS with UDP
4. ISATAP
5. STEP
6. 6to4
7. Teredo
3.2 Change of transition mechanism
Change of transition mechanism refers to the task to abandon the
transition mechanism that is actually being used and start to use
another one that presents better performance. This is not an easy
Palet, et al. Expires April 24, 2005 [Page 7]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
task at all, since it involves at least two important issues:
1. To maintain the current IPv6 address. This is very important in
some situations, since otherwise applications with communications
opened will not work. Specially important is the case when the
auto-transition algorithm is implemented in border devices that
provide native IPv6 connectivity to the whole network. Either
the prefix network (i.e. RA), or the IPv6 addresses (i.e.
DHCPv6) that they provide, should try to keep the IPv6 addressing
parameters. If the auto-transition algorithm has to include the
possibility of changing the transition mechanism used without
discarding the current connection state, it is necessary to
define a method that solves this issue. MIPv6 concepts/solutions
could be applied and possibly also those related to multihoming.
2. User authentication without human intervention. The philosophy
of the auto-transition algorithm is that all the processes are
done automatically, with no human intervention. So, for
instance, if the device running the auto-transition algorithm
needs to contact with a TB different to one being already used,
and it requires user authentication, the process should be
transparent to the user. It could be based on parameters (login
and password) configured through the wizard during the
installation process. AAA mechanisms should be used.
In order to simplify the solution (i.e. not relying on MIPv6,
multihoming or others), it could be decided to keep using the
initially selected transition mechanism, even when not providing the
optimal connectivity, but instead ensuring that the IPv6 address is
stable.
In some situations it will be possible, even interesting, to keep
active multiple transition mechanisms, for optimization or other
purposes, even using some of them only in one direction, etc. TBD.
3.3 New transition/tunneling mechanisms
A number of devices do not allow tunnel-based transition mechanisms
to work properly. They are either NAT boxes, proxies or firewalls.
Even building IPv6 tunnels over UDP is not always possible since some
middle boxes do not forward those packets.
When this happens it is required that the auto-transition algorithm
uses a method that cannot be rejected by the middle box. However, is
important to realize that this may happen actually as a consequence
of a policy or security measure from the network, specially in
situations like enterprise networks.
Palet, et al. Expires April 24, 2005 [Page 8]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
The following sub-sections consider several alternatives.
3.3.1 Layer 2 tunnels
By using layer 2 encapsulating methods (L2TP [9], PPTP [10], PPPoE
[11]), the middle boxes barriers can be easily overcome since this
kind of protocols are very used when building layer 2 VPN.
Consequently, one of the following protocol stacks might be used.
+--------+ +--------+
| IPv6 | | IPv6 |
+--------+ +--------+
| PPP | | PPP |
+--------+ +--------+ +--------+
| L2TP | | PPTP | | IPv6 |
+--------+ +--------+ +--------+
| UDP | | TCP | | PPP |
+--------+ +--------+ +--------+
| IPv4 | | IPv4 | | IPv4 |
+--------+ +--------+ +--------+
L2TP tunnel PPTP tunnel PPPoE tunnel
Figure 2: Layer 2 tunnels
This kind of solution does not seem to be efficient due to the
following drawbacks:
o It requires that the TS is configured as VPN L2 server.
o Overloaded stack. IPv6 connection will have low performance.
o Complicated deployment and management due to the control plane for
L2TP and PPTP.
o Authentication is a must with PPP. It means added complexity.
3.3.2 Layer 3 tunnels
VPN's built by mean of layer 3 tunnels can be a solution to allow
IPv6 connections cross NAT boxes with no proto-41 forwarding
capabilities as well as proxies and firewalls.
Palet, et al. Expires April 24, 2005 [Page 9]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
+--------+ +--------+
| IPv6 | | IPv6 |
+--------+ +--------+ +--------+
| IPv4 | | IPv4 | | IPv6 |
+--------+ +--------+ +--------+
| PPP | | IPsec | | IPv4 |
+--------+ +--------+ +--------+
| IPv4 | | IPv4 | | IPv4 |
+--------+ +--------+ +--------+
PPP-IPv4 IPsec IPv4-IPv4
Figure 3: Layer 3 tunnels
Compared to the Layer 2 tunnels, the layer 3 tunnels have the
following advantages:
o Less overloaded stacks.
o Tunnel management simpler.
o There are some implementations (VTun, cIPE, TINC).
However it also have important drawbacks:
o It requires that the TS is configured as VPN L2 server.
o Some NAT's could not support those.
3.3.3 Layer 4 tunnels
The last resort is to try to overcome the middle barriers by means of
the use of frequently used application protocols. There are two well
known possibilities that frequently will not create difficulties with
neither proxies nor firewalls: TLS/SSL, HTTP and SSH. Furthermore,
they neither have problems with NAT boxes. The protocol stack for
this solution is as follows:
Palet, et al. Expires April 24, 2005 [Page 10]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
+--------+ +--------+ +--------+
| IPv6 | | IPv6 | | IPv6 |
+--------+ +--------+ +--------+
| HTTPS | | HTTP | | SSH |
+--------+ +--------+ +--------+
| TCP | | TCP | | TCP |
+--------+ +--------+ +--------+
| IPv4 | | IPv4 | | IPv4 |
+--------+ +--------+ +--------+
TLS/SSL tunnel HTTP tunnel SSH tunnel
Figure 4: Layer 4 tunnels
The main advantage of this approach is the simplicity for the
configuration of the tunnel. Furthermore the tunnels can be secured
by means of either SSL (using HTTPS instead of HTTP) or SSH.
Of course, this solutions are sub-optimal and consequently
discouraged.
According to the different alternatives, it sounds reasonable that
the better solution could be Layer 4-based tunnels, since it is
simpler than the others and always will work, but the performance
will not be optimal. Instead Layer 3 and Layer 2-based tunnels
should be taken into account in implementations of the
auto-transition algorithm in order to guarantee the IPv6 connectivity
by covering all the possible alternatives.
The usage of those new mechanisms is discouraged, unless there is no
other choice. In any case, the standardization of those different
tunnel options is out of the scope of this document.
3.4 Discovery of the IPv6 End Point
Devices running the auto-transition algorithm need to know where to
find the IPv6 (tunnel) end point or tunnel server (TS) that provides
them the IPv6 connectivity. If native IPv6 connectivity is provided
by the ISP and is being used used, then this TS will be obviously the
link end point and no further discovery work is required. This is
slightly more complex when a transition mechanism is required to
obtain the IPv6 connectivity.
Having in mind that users want plug-and-play devices/services and
that most of them do not have any knowledge about how the transition
mechanism works or where the nearest Tunnel Broker/Tunnel Sever, 6to4
relay, etc., are located, it is required considering the
auto-discovery of the IPv6 TS, so the device can find it
Palet, et al. Expires April 24, 2005 [Page 11]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
automatically.
Different transition mechanisms have different ways to encapsulate
IPv6 packets, so servers implementing different transition mechanisms
can be considered like different types of IPv6 end points (which of
course, can perfectly sit in a single server). For example, the
Tunnel Broker/Tunnel Server uses mainly 6in4 tunnels; TSP can used
either 6in4 or IPv6 over UDP tunnels; Teredo uses IPv6 over UDP
tunnel, etc. Furthermore, each transition mechanism has its own
tunnel setup handshake, so it is not only important to know where the
nearest IPv6 TS is located but also what type of transition
mechanism/s is able to manage.
On the other hand, there are situations where people are crowded,
i.e. either conferences, airports, urban areas with high population
density, etc. In this scenario is very likely that most of the users
choose a particular IPv6 TS, usually because it is nearer or more
well known. It is possible that while there exist a few IPv6 TS
attending many connections, there can exist a lot of them that are
not being used. In this way, most of the users have poor performance
in their connections while users using TS without congestion will
have good performance. It would be desirable that there were some
kind of load balancing in order to uniformly distribute the IPv6
tunnel requests among all available IPv6 TS.
The different approaches to cope with this issue are analysed in
[12].
4. Nomadicity Considerations
When users move across networks, several situations are possible.
From the network point of view, users can or cannot maintain the IPv6
address assigned from their home TS. From the transition mechanism
point of view, the new one can or cannot require an authentication
process. So clearly some considerations are required regarding the
auto-transition algorithm behavior while user is moving.
1. Nodes that do not need to maintain the IPv6 address assigned from
their home TS. They are typically nomadic users who get
connectivity to "passive" Internet users (browsing, emailing,
etc.), but do not need to be "identified" from Internet
(nevertheless this situation is changing with next generation p2p
applications, VoIP, etc.). Looking for the best IPv6
connectivity can lead the auto-transition algorithm to define as
the best TS one of the following:
* TSs that do not require authentication process. They are TSs
that provide IPv6 connectivity and they do not make any
Palet, et al. Expires April 24, 2005 [Page 12]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
authentication process (TEREDO, 6to4, etc.). The
auto-transition approach does not offer any advantage in this
case, so the auto-transition algorithm will just contact to
the TS and the IPv6 connectivity will be obtained.
* TSs that require authentication process. They are TSs that
only provide IPv6 connectivity to authenticated users (users
that previously were somehow registered in the entity
providing the IPv6 TS service or some related entity).
Automatic AAA mechanism must be defined, in order to ensure
the no-human intervention requirement. The TS can or cannot
belong to the entity which the user was registered. If so,
authentication process is simpler. However, a global
authentication only will be possible if there are roaming
agreements between the entity that is selected to obtain IPv6
connectivity and the "home" entity which the user is
registered. These roaming agreements could be used for
billing purposes among others. If there are not such
agreements, automatic connectivity is not possible and the
auto-transition algorithm has two options:
+ To choose an alternative transition mechanism, even
although it does not offer the best performance.
+ To inform to the user that the best IPv6 connection is only
possible if a new manual registration/authentication
process is done.
* The behavior should be defined during the wizard installation
process of the auto-transition implementation.
2. Nodes that need to maintain the IPv6 address assigned from their
home TS. Users belonging to this group are typically users with
either server or peer-to-peer applications, devices that need to
be tracked (cars, suitcases, etc.), etc. MIPv6 should be applied
to this kind of nodes, but the following considerations must to
taken into account by the auto-transition algorithm:
* Mobility capability should be an option that should be
configured by means of the installation wizard. If chosen,
the first time that the auto-transition algorithm is run, it
must check if a Home Agent (HA) exists either in the current
IPv6 network or in the TS. In fact, this option should
condition the order of searching for the best transition
mechanism to get IPv6 connectivity. In this way, only
mechanisms compatible with the presence of HA should be taken
into account (mechanisms providing static IPv6 network prefix
like TB, TSP, ISATAP, etc.). The auto-transition algorithm
Palet, et al. Expires April 24, 2005 [Page 13]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
should record the mechanism used to get IPv6 connectivity.
Some transition mechanisms like ISATAP, allow the HA
deployment into the home network which the nomadic device is
initially attached. Others, like TB, could be deployed in
different networks from the one where the device is physically
attached, but the HA could be implemented into the TS that
provides the IPv6 connectivity. On the other hand, the
auto-transition algorithm should discard transition mechanisms
that build the IPv6 network prefix from the IPv4 address
(6to4, TEREDO, etc.). This is required because it is no
possible the deployment of the HA into the same IPv6 network,
so no mobility features would be possible. If no HA is
discovered the first time that the auto-transition algorithm
is run, then no MIPv6 support is possible, so the user should
be informed and the usual auto-transition algorithm must be
applied to get IPv6 connectivity.
* Once the node is away from home network, it needs to get IPv6
connectivity. The auto-transition algorithm should first
check if it possible to maintain the same IPv6 home address,
according to the mechanism used, before moving for getting the
home address. There are some kinds of transition mechanisms
that allow this operation like a TB with several TS
associated. In this scenario, the node first gets the IPv6
home address from a TS. After the node move to other
location, it could get IPv6 connectivity from a different TS
that is associated to the same TB. It is possible that either
the new TS has the same /64 network prefix that the old TS or
it can be configured by the TB to forward/send tunneled
packets coming/going from/to the nomadic node. In this way
the nomadic device could maintain the IPv6 home address. Even
if the new TS does not belong to the same TB but there are
roaming agreements between the involved entities, the
maintenance of the IPv6 address/prefix could be possible. How
to do this configuration is out of scope of this document.
* If the IPv6 home address can not be maintained, then once the
nomadic device has a new IPv6 address by means of any
transition mechanism, it must contact to the HA to communicate
the care of address following MIPv6.
Other considerations pointed out in [12] should be taken into
account.
5. Network Managed Transition
The algorithm described in this memo attempts to automatically and
autonomously provide the best possible IPv6 connectivity and follows
Palet, et al. Expires April 24, 2005 [Page 14]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
an approach based on the role of the user device Operating System.
However the algorithm and in general the transition, could be
improved and/or even more easily managed from the service provider
(SP) point of view, if the network provided services that could help
the auto-transition algorithm. Following this approach, we propose a
transitioning management architecture that in addition to providing
network management functionality to the providers' network can also
better support auto-transitioning hosts.
There are two basic alternatives for the network managed transition:
The use of Policy Based Networks (PBN) [13] or using a "transitioning
server".
[This section needs more text in order to explain how the
communication between PDP and PEPs will be done, interaction among
policies, how the different parameters like link, user identity and
so on can influence the transition mechanism chosen. Also other
options rather than just PBN, such as SNMP, can be further
described.] TBD.
5.1 Policy Based Networks
Policies stored on the network repository might include information
about the type of transition mechanisms implemented into the network
to which the user device is attached to, so the auto-transition
algorithm implemented into the user device would have more
information to choose a better one or directly those possible in that
network, or those suggested by the SP, or those enabled by the SP
policy.
In a more advanced behavior the auto-transition algorithm implemented
into the user device would inform to the Policy Decision Point (PDP),
about features such as type of connection, date/time, user privileges
and/or whatever other relevant information. Then, the PDP might
interact with other policies stored on the repository such as QoS
Policies, Security Policies and so on, in order to propose the more
adequate transition mechanism to be used by the device willing to get
IPv6 connectivity.
In accordance with [13], based on this approach the user device will
act as a Policy Enforcement Point (PEP) as well as implementing the
auto-transition algorithm.
5.2 Transitioning Server
Essentially, the architecture will provide a 'transitioning server'
which the host should automatically detect and register with to be
provided with the optimum IPv6 transitioning solution for its current
Palet, et al. Expires April 24, 2005 [Page 15]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
location within the network. This has a number of advantages both
from the administrators and auto-transitioning hosts point-of-view,
the primary one being that this will act as a single point of contact
for all auto-transitioning hosts within the network regardless of
their location and circumstances and so by default gives a degree of
control over this service to the administrator. A summary of the
advantages this provides are:
o Host
* Simplifies mechanism detection and configuration by explicitly
providing the host with mechanism location and configuration
information.
* Capable of supporting host roaming within the network (improves
hand-off procedure).
* Will act as a centralised authentication point for the
auto-transitioning host.
o Administrator
* Introduces administrative control to the auto-transitioning
procedure.
* Allows administrator to determine mechanism availability to
hosts.
* Provides admin with fine-grained control over host access
control.
* Can easily be extended to support performance provisioning to
user groups dependant upon privileges or service agreements.
This component also introduces a significant security consideration
to the process as adequate security precautions must be made to
protect the server from abuse. The server must be adequately
protected from both DoS-type attacks and exploitation/hacking.
The following sub-sections describe the auto-transition algorithm
modifications required for the host and server operation, in case the
network managed transition is being used.
5.3 Host operation
The host auto-transitioning algorithm will need minor modification in
order to make use of the transitioning management architecture. This
should reflect the fact that it represents an optimum solution when
Palet, et al. Expires April 24, 2005 [Page 16]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
compared to the host attempting to detect the transitioning
infrastructure individually but is less desirable than native IPv6
connectivity. Whether the network provides this type of transition
facilities or not, the auto-transition algorithm, when present, must
always attempt to provide the 'best' possible IPv6 connectivity. The
term 'best' is perhaps misleading as it actually represents the
optimum solution based on a number of criteria ranging from host or
auto-transitioning priorities, provider policies etc. We can
envisage the following alternatives:
o Both auto-transition algorithm and network managed transition are
present. The user device should be provided with the optimal
transition mechanism in this scenario.
o Only auto-transition algorithm present. Depending on the network,
the transition might not be "optimal", but the auto-transition
algorithm in the user device must be capable of providing some
level of "good enough" IPv6 connectivity.
o Only network managed transition present. The user device doesn't
support the auto-transition algorithm, but a set of managed
transition mechanisms in the network will be capable of offering
possibly a good alternative for IPv6 connectivity, again not
necessarily the optimal one.
o Neither mechanism is present. This is the case where a user
device has not been upgraded, but does include some transition
mechanisms. The provider is also not offering managed transition
and so if the operating system is not capable of offering an
automatic transition mechanism selection, the user device may
require manual user intervention or even not offer IPv6
connectivity at all.
The key aspect of this process will be in making the host capable of
detecting the presence of the PDP or transitioning server in the
network. In many ways, this is similar to the tunneling mechanism
auto-detection procedure described in [12] and so a similar approach
could be adopted here. Essentially it identifies a number of
approaches that could be used to automatically detect services
including DHCP, DNS names or shared unicast addresses and describes
the potential advantages and disadvantages of using each solution.
It concludes that due to the weaknesses of the other solutions, DNS
is the best solution here and recommends it for use in this case.
Due to the similarities of that problem and the one described here,
this solution could also be adopted for transitioning server
auto-detection, this would also serve to simplify the
auto-transitioning host algorithm if similar approaches are used.
This aspect is not described in more detail here but see the solution
Palet, et al. Expires April 24, 2005 [Page 17]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
document [14] for a more detailed explanation.
The modifications to the auto-transition algorithm to incorporate the
network managed transition architecture will be inserted in between
the native IPv6 availability and host auto-detection sections. This
is shown in the following algorithm:
loop
detect_scenario
if (native_IPv6_available and native_priority)
use_native_IPv6_connectivity
else
if (network_managed_transition available)
use_network_managed_transition
else
if (first_check or performance_check_allowed)
check_performance
use_best_mechanism
endif
endif
endif
configure_connectivity
wait (link_check_timeout)
endloop
Figure 2: Auto-Transition using Network Managed Transition
As you can see, the host will now check for native connectivity first
before attempting to find a network manager transition service and
only falling back on host detection if that too fails.
5.4 Server operation
One of the more interesting aspects of the introduction of the
network managed transition service will be the registration procedure
that hosts follow in order to make use of the service. This will
allow the service provider to keep track of the auto-transitioning
hosts within its network and to assign certain privileges or
priorities to the transitioning hosts, depending on administrative
policies. For example, hosts native to the network may receive a
better level of service (either through access to a better-performing
mechanisms or prioritised load-balancing) than 'foreign' hosts.
The introduction of the network managed transition service
essentially removes the transitioning mechanism selection procedure
from the hosts and unifies it within the server. This makes the
server responsible for determining which mechanisms to supply to the
Palet, et al. Expires April 24, 2005 [Page 18]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
hosts as they register and this could be done according to the
following algorithm:
loop
receive request from auto-transitioning host + authenticate
determine available mechanism(s)
if (more than one available)
rank mechanisms according to scoring algorithm
select 'best' mechanism
endif
reply to host
supply necessary configuration information to host
endloop
Figure 3: Determination of Auto-Transition using Network Managed
Transition
The interesting part of this procedure is the algorithm that is
applied to determine the most appropriate mechanism for the host in
the event that more than one solution is available. It is obviously
important that the administrator has control over this algorithm to
the extent that they will be able to determine who has access to
which services within their network. At a simple level, this could
be a 'default' list of mechanisms as described earlier in this draft
but has the potential to be expanded to take into account, for
example, the performance required by the host, host privileges and/or
administrative preferences.
Considering that most of the ISP will not necessarily deploy
transition mechanisms in the early stage, advanced IPv6 Internet
Exchanges could provide this kind of services [15] and in general
policy-based capabilities. The IX is not just a central peering
point which facilitates any new service deployment, but also a place
where lots useful information (routes, QoS, link conditions, etc.)
about several domains is available. With this philosophy, the
transition policies will be one more facility provided by this type
of IXs.
6. Conclusions
TBD.
7. Security Considerations
The auto-transition algorithm should secure at least the following
points:
Palet, et al. Expires April 24, 2005 [Page 19]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
1. Communication with TS for administrative purposes.
2. Communication with TS for authentication purposes.
3. Tunnel building is according to the chosen TS.
4. General tunnel security consideration pointed at [16].
8. Acknowledgements
This memo was written as a consequence of real experience using IPv6
when traveling, number of talks during IETF meetings and specially
the work with the unmanaged, ISP and enterprise v6ops design teams.
The authors would also like to acknowledge inputs from Brian
Carpenter, Alvaro Vives, Cesar Olvera, Jim Bound, Stig Venaas and the
European Commission support in the co-funding of the Euro6IX project,
where this work is being developed.
9. References
9.1 Normative References
9.2 Informative References
[1] Thomson, S. and T. Narten, "IPv6 Stateless Address
Autoconfiguration", RFC 2462, December 1998.
[2] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C. and M.
Carney, "Dynamic Host Configuration Protocol for IPv6
(DHCPv6)", RFC 3315, July 2003.
[3] Palet, J., "Forwarding Protocol 41 in NAT Boxes",
draft-palet-v6ops-proto41-nat-03 (work in progress), October
2003.
[4] Huitema, C., "Evaluation of Transition Mechanisms for Unmanaged
Networks", draft-ietf-v6ops-unmaneval-03 (work in progress),
June 2004.
[5] Lind, M., Ksinant, V., Park, S., Baudot, A. and P. Savola,
"Scenarios and Analysis for Introducing IPv6 into ISP
Networks", draft-ietf-v6ops-isp-scenarios-analysis-03 (work in
progress), June 2004.
[6] Wiljakka, J., "Analysis on IPv6 Transition in 3GPP Networks",
draft-ietf-v6ops-3gpp-analysis-10 (work in progress), May 2004.
Palet, et al. Expires April 24, 2005 [Page 20]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
[7] Bound, J., "IPv6 Enterprise Network Scenarios",
draft-ietf-v6ops-ent-scenarios-05 (work in progress), July
2004.
[8] Savola, P. and J. Soininen, "Evaluation of v6ops Tunneling
Scenarios and Mechanisms", draft-savola-v6ops-tunneling-01
(work in progress), April 2004.
[9] Townsley, W., Valencia, A., Rubens, A., Pall, G., Zorn, G. and
B. Palter, "Layer Two Tunneling Protocol "L2TP"", RFC 2661,
August 1999.
[10] Hamzeh, K., Pall, G., Verthein, W., Taarud, J., Little, W. and
G. Zorn, "Point-to-Point Tunneling Protocol", RFC 2637, July
1999.
[11] Mamakos, L., Lidl, K., Evarts, J., Carrel, D., Simone, D. and
R. Wheeler, "A Method for Transmitting PPP Over Ethernet
(PPPoE)", RFC 2516, February 1999.
[12] Palet, J. and M. Diaz, "Evaluation of v6ops Auto-discovery for
Tunneling Mechanisms", draft-palet-v6ops-tun-auto-disc-01 (work
in progress), June 2004.
[13] Yavatkar, R., Pendarakis, D. and R. Guerin, "A Framework for
Policy-based Admission Control", RFC 2753, January 2000.
[14] Palet, J., "IPv6 Tunnel End-point Automatic Discovery
Mechanism", draft-palet-v6ops-solution-tun-auto-disc-00 (work
in progress), September 2004.
[15] Morelli, M., "Advanced IPv6 Internet Exchange model",
draft-morelli-v6ops-ipv6-ix-00 (work in progress), July 2004.
[16] Nordmark, E. and R. Gilligan, "Basic Transition Mechanisms for
IPv6 Hosts and Routers", draft-ietf-v6ops-mech-v2-06 (work in
progress), September 2004.
Palet, et al. Expires April 24, 2005 [Page 21]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
Authors' Addresses
Jordi Palet Martinez
Consulintel
San Jose Artesano, 1
Alcobendas - Madrid
E-28108 - Spain
Phone: +34 91 151 81 99
Fax: +34 91 151 81 98
EMail: jordi.palet@consulintel.es
Miguel Angel Diaz Fernandez
Consulintel
San Jose Artesano, 1
Alcobendas - Madrid
E-28108 - Spain
Phone: +34 91 151 81 99
Fax: +34 91 151 81 98
EMail: miguelangel.diaz@consulintel.es
Michael Mackay
Lancaster University
Lancaster
United Kingdom
Phone:
Fax:
EMail: m.mackay@lancaster.ac.uk
Palet, et al. Expires April 24, 2005 [Page 22]
Internet-Draft Evaluation of IPv6 Auto-Transition October 2004
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The Internet Society (2004). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Palet, et al. Expires April 24, 2005 [Page 23]
Html markup produced by rfcmarkup 1.129b, available from
https://tools.ietf.org/tools/rfcmarkup/