One document matched: draft-chen-mif-happy-eyeballs-extension-00.txt
Internet Engineering Task Force G. Chen
Internet-Draft China Mobile
Intended status: Informational March 7, 2011
Expires: September 8, 2011
Happy Eyeballs Extension for Multiple Interfaces
draft-chen-mif-happy-eyeballs-extension-00
Abstract
The memo has been proposed to extend happy eyeballs algorithm to fit
into multiple interfaces environment. Based on this extended
heuristic algorithm, a client with multiple interface could determine
the optimal flow path in which specific interface has been chosen.
Furthermore, an appropriate IP address family for each interface can
be also identified to guarantee user experiences during IPv6
transition period.
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 September 8, 2011.
Copyright Notice
Copyright (c) 2011 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
Chen Expires September 8, 2011 [Page 1]
Internet-Draft happy-eyeballs-extension March 2011
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Heuristic Happy Eyeballs Extension Algorithm . . . . . . . . . 3
2.1. The Framework for Extended Algorithm . . . . . . . . . . . 3
2.2. Algorithm for Interface Selection . . . . . . . . . . . . . 4
2.3. IPv4/IPv6 Selection Algorithm for Individual Interface . . 4
2.4. Example of Extended Algorithm . . . . . . . . . . . . . . . 4
3. Additional Considerations . . . . . . . . . . . . . . . . . . . 6
3.1. Usage Scope . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2. Flow Continuity . . . . . . . . . . . . . . . . . . . . . . 6
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
6. Normative References . . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 6
Chen Expires September 8, 2011 [Page 2]
Internet-Draft happy-eyeballs-extension March 2011
1. Introduction
In multiple interface context, the problems raised by hosts with
multiple interfaces have been discussed. The MIF problem
statement[MIF-PS] has described the various issues when using a MIF
node on which multiple interfaces are used and results in wrong
domain selection. Happy Eyeballs [HAPPY-EYEBALLS] has described how
a dual-stack client can determine the functioning path to a dual-
stack server. It's using heuristic algorithm help applications to
quickly determine if IPv6 or IPv4 is the most optimal to connect to a
server. That is a good practice to achieve intelligent path
selection. However, the assumption here is single-homed host. The
interaction with multiple interfaces is still waiting for further
study.
This memo has been proposed to extend happy eyeballs algorithm to fit
into multiple interfaces environment. That could achieve win-win
situation. Based on this extended heuristic algorithm, a client with
multiple interface could determine the optimal flow path in which
specific interface has been chosen. Furthermore, an appropriate IP
address family for each interface can be also identified to guarantee
user experiences during IPv6 transition period.
2. Heuristic Happy Eyeballs Extension Algorithm
The section details extended Happy Eyeballs algorithm, including new
defined data structure, functionalities and example flow.
2.1. The Framework for Extended Algorithm
The Figure 1 shows the proposed framework for extended algorithm.
+-------------------------------------------+
| Host with multiple interfaces |
| |
| |
| |
| P1,I1 P2,I2 P3,I3 ... Pn,In |
| +---+ +---+ +---+ ... +---+ |
| | | | | | | ... | | |
+-----+--------+--------+-------------+-----+
| | | ... |
3G Wifi WiMAX ... ...
Chen Expires September 8, 2011 [Page 3]
Internet-Draft happy-eyeballs-extension March 2011
Figure 1: Multiple Interface Mode for Extended Algorithm
Each interface will be configured with weighting coefficient, which
is composed of pair values. Apart from value P, which is following
current definition in [HAPPY-EYEBALLS], value I is defined to
indicate preference of interfaces selection. In general, value I is
responsible for interface selection; value P is a indication to
identify IPv4 or IPv6 family has been preferred.
2.2. Algorithm for Interface Selection
According to the definition, applications will take account of value
I to identify which interface has been chosen before sending out data
packages .
Each interface is configured with one value, I. I is served as an
indication to identify which interface is preferred for a specific
destination or hostname. A positive value indicates preference of
specific interface compared to others. The value is justified
according to TCP establishment duration. The detailed flow can be
found in 2.4. The rule here is that shorter is winner. When one
interface defeats others, the corresponding value I will be set to
positive value. Other interfaces will be set negative value orderly
according to caused time for TCP connection, like -1, -2, etc. A
value of 0 indicates equal weight for multiple interfaces. In this
case, the heuristic connection is not valid for interface selection.
After several interface values I have been configured, the traffic
flow targeted to specific destination address or hostname will follow
this guidance to choose proper interface. When connection problems
are occurred to preferred connection, the value I need to be
adjusted. The adjustment of value I will do polling-based scheme.
the value I corresponding to suboptimal interface will be configured
as positive. And previously optimal value I will be set to most-
negative.
2.3. IPv4/IPv6 Selection Algorithm for Individual Interface
for a specific interface, the choice of IP address family relies on
Happy Eyeballs algorithm, which defined in [HAPPY-EYEBALLS].
2.4. Example of Extended Algorithm
The Figure 2 shows example flow for algorithm implemetation,in which
a host with three interfaces is demonstrated. It's easy to apply
that to more interfaces situation.
Chen Expires September 8, 2011 [Page 4]
Internet-Draft happy-eyeballs-extension March 2011
DNS Server Client Server
| | |
1. |<--www.example.com DNS query ---1| |
2. |<--www.example.com DNS query ---2| |
3. |<--www.example.com DNS query ---3| |
4. |---DNS response, IP address---->1| |
5. |---DNS response, IP address---->2| |
6. |---DNS response, IP address---->3| |
7. | |1==TCP SYN, IP ====>|
8. | |2==TCP SYN, IP ====>|
9. | |3==TCP SYN, IP ====>|
10. | |1 <=TCP SYN+ACK, IP==|
11. | |2 <=TCP SYN+ACK, IP==|
12. | |3 <=TCP SYN+ACK, IP==|
13. | |1==TCP ACK, IP =====>|
14. | |2==TCP ACK, IP =====>|
15. | |3==TCP ACK, IP =====>|
16. | |2--TCP RST, IP------>|
17. | |3--TCP RST, IP------>|
Figure 2: Example of Algorithm Execution
Above example of algorithm execution emphasizes on the computation of
coefficient value I. The value P will be calculated as defined in
[HAPPY-EYEBALLS].
When client initiates application session, multiple interfaces will
do DNS query simultaneously. As a results, DNS server will return IP
address related to requested FQDN, as shown from step 1 to 6.
Afterwards, three interfaces are trying to establish TCP connection
with remote peer IP address synchronously as shown from step 7 to 15.
In this example, interface 1 competes with another two and firstly
finish TCP connection. So value I will be set to 1. And second one
is set to -1; thelast one is set to -2. The interface 2 and 3 will
then send RST to remote IP peer for release TCP sessions.
Through the whole process, interface 1 will be set to most-preferred
interface for a specific this particular destination or hostname. if
there is an accidental connection problem has occurred, the value I
with interface 1 will be set to -2. And the values I related to
interface 2 and 3 will increase sequentially to be set to 1 and -1.
Subsequent traffic will take interface 2 as preferred interface for
traffic delivery.
Chen Expires September 8, 2011 [Page 5]
Internet-Draft happy-eyeballs-extension March 2011
3. Additional Considerations
3.1. Usage Scope
Happy Eyeballs is trageting to HTTP context, but it is useful and
applicable to other time-sensitive applications.
3.2. Flow Continuity
Usually, interface changing is happened at beginning of new session.
So, there is no flow continuity issues for ongoing TCP sesson.
4. IANA Considerations
This memo includes no request to IANA.
5. Security Considerations
TBD
6. Normative References
[HAPPY-EYEBALLS]
Wing, D., "Happy Eyeballs: Trending Towards Success with
Dual-Stack Hosts", draft-ietf-v6ops-happy-eyeballs-00.txt
(work in progress), March 2011.
[MIF-PS] Blanchet, M., "Multiple Interfaces and Provisioning
Domains Problem Statement",
draft-ietf-mif-problem-statement-09.txt (work in
progress), October 2010.
Author's Address
Gang Chen
China Mobile
53A,Xibianmennei Ave.,
Xuanwu District,
Beijing 100053
China
Email: chengang@chinamobile.com
Chen Expires September 8, 2011 [Page 6]
| PAFTECH AB 2003-2026 | 2026-04-24 03:25:27 |