Extensible Authentication Protocol F. Adrangi
Working Group V. Lortz
Internet-Draft Intel Corporation
Expires: October 24, 2004 F. Bari
AT&T Wireless
P. Eronen
Nokia
M. Watson
Nortel
April 25, 2004
Mediating Network Discovery in the Extensible Authentication Protocol
(EAP)
draft-adrangi-eap-network-discovery-00
Status of this Memo
By submitting this Internet-Draft, I certify that any applicable
patent or other IPR claims of which I am aware have been disclosed,
and any of which I 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 October 24, 2004.
Copyright Notice
Copyright (C) The Internet Society (2004). All Rights Reserved.
Abstract
This document defines a mechanism to enable a wireless client to
discover roaming partners of an access network over EAP. The purpose
is to help a wireless client select the most appropriate roaming
Adrangi, et al. Expires October 24, 2004 [Page 1]
Internet-Draft EAP Network Discovery April 2004
partner as a next hop for routing of AAA packets. This solution is
especially useful in roaming scenarios where the access network does
not have a direct relationship with the wireless client's home
network - i.e., when AAA packets can not be directly routed from
access network to the home network.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Applicability . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Terminology . . . . . . . . . . . . . . . . . . . . . . . 5
2. Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Delivery Mechanism . . . . . . . . . . . . . . . . . . . . . . 6
4. Security Considerations . . . . . . . . . . . . . . . . . . . 8
5. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 8
6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
6.1 Normative References . . . . . . . . . . . . . . . . . . . . 9
6.2 Informative References . . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 9
Intellectual Property and Copyright Statements . . . . . . . . 16
Adrangi, et al. Expires October 24, 2004 [Page 2]
Internet-Draft EAP Network Discovery April 2004
1. Introduction
In wireless network access, the high level network topology is
comprised of access networks, mediating networks, and home networks
as depicted in Figure 1. RADIUS [2] protocol has been assumed for AAA
mediation between the access network and the home network although
Diameter [3] could also be used instead of RADIUS without introducing
significant architectural differences.
Access Network Mediating Network 1
+-------------------+ +-----------+ Home
| | | | Network A
| +------+ | |AAA server;| +---------------+
| +-----+ |Access| | | Other |=====|Home AAA server|
| |APs | |Router| | ||====|Components | | |
| |1..n | +------+ | || +------------ | ,And |
| +-----+ | || | Other |
| +------+ | || Mediating Network 2 | Components |
| +-----+ |local | | || +------------+ | |
| |Users| |AAA | | || |AAA Server; |====| |
| |1..n | |Server|============| Other | +---------------+
| +-----+ +------+ | || | Components |
| | || +------------+
+-------------------+ ||
|| Mediating Network 3
|| +------------+ Home
|| | | Network B
|| |AAA Server; | +---------------+
||====| Other |===|Home AAA Server|
|| | Components | | |
|| +------------+ | ,And |
|| | Other |
|| | Components |
||=====================| |
| |
+---------------+
Figure 1. Network Access Arrangement.
In roaming situations, EAP authentication exchanges [6] will be
carried out between the wireless client in the access network and an
AAA server in the home network directly when the two networks have a
direct roaming relationship. However when a wireless client roams to
an access network that it does not recognize and which does not have
a direct roaming relationship with its home network, the AAA packets
have to be routed through a mediating AAA network to the home
network. For inter operator settlement reasons, it is necessary to
select the best mediating network. For instance, in Figure 2, access
Adrangi, et al. Expires October 24, 2004 [Page 3]
Internet-Draft EAP Network Discovery April 2004
through the Mediating Network 1 may be cheaper for isp1 user, than if
Mediating Network 2 is used. However this decision can not be made by
the access network as it would be unaware of the roaming agreements
of mediating networks 1 and 2 with the isp1. For this reason, it is
desirable for the wireless client to know which mediating networks
are available through an access network, and influence the decision
of using the desired mediating network.
+---------+
| |---------> "isp1.com"
| Roaming |
+---------+ | Group 1 |
| |-------->| |---------> "isp2.com"
User "joe | Access | +---------+
@isp1.com"--->| Network |
| | +---------+
| |-------->| |---------> "isp1.com"
+---------+ | Roaming |
| Group 2 |
| |---------> "isp3.com"
+---------+
Figure 3: Ambiguous AAA routing
Influencing the mediating network selection problem can be divided
into three sub-problems as follows:
1. A general data model and syntax by which network information is
structured for unambiguous interpretation by the wireless client.
2. A delivery mechanism by which network information is conveyed to
a wireless client.
3. A general mechanism by which a wireless client's selection can be
conveyed to the access network.
Section 2.7 of [7] discusses the conditions upon which NAIs can be
used to affect AAA routing, i.e., problem 3 above. Problems 1 and 2
are discussed in this document.
1.1 Applicability
Although the proposed solution here is discussed in the context of
public 802.11 access network deployment, it is applicable to other
public wireless access networks where the wireless clients use the
EAP specification framework [6] for authentication, and they present
their identity to the network in NAI [7] format.
Adrangi, et al. Expires October 24, 2004 [Page 4]
Internet-Draft EAP Network Discovery April 2004
1.2 Terminology
Network Access Identifier (NAI)
An identifier that represents a wireless client or user
identity. The basic structure of a NAI is user@realm, where
the realm part of the NAI indicates the domain responsible
for interpretation and resolution of the user name. Please
See [7] for more details on NAI format.
Access Point (AP)
A station that provides access to the distribution services
via the wireless medium for associated Stations.
RADIUS server
This is a server which provides for authentication/
authorization via the protocol described in [2], and for
accounting as described in [5].
2. Data Model
Network Information needs to be structured in a general format and
syntax so that the EAP client software can interpret it and behave
accordingly. The syntax should have minimum overhead because the
proposed delivery mechanism (i.e., EAP-Identity Request) doesn't
support fragmentation and therefore size of the data is limited by
the link layer MTU.
Network Information is placed after the displayable string and NULL
in the EAP-Identity Request. It is structured as a set of
comma-separated attribute names and values according to the following
ABNF [1]:
identity-request-data = displayable-string [ %d0 network-info ]
displayable-string = *CHAR
network-info = item ["," item ]
item = attribute "=" value
attribute = 1*( ALPHA / "-" / "_" / DIGIT)
value = 1*( 0x01-2B / 0x2D-FF ) ; any non-null UTF-8 char except ","
Only one attribute is defined here, the NAIRealms attribute. The use
of this facility for other purposes is discouraged due to the limited
amount of space available in EAP packets.
The content of the attribute (i.e., the value part) MUST NOT contain
Adrangi, et al. Expires October 24, 2004 [Page 5]
Internet-Draft EAP Network Discovery April 2004
a comma (","). The format and semantics of the NAIRealms attribute
value are as follows:
value = Realm [ ";" Realm ]
Realm = *( domainlabel "." ) toplabel
domainlabel = alphanum *( alphanum / "-" )
toplabel = ALPHA *alphanum
An example "NAIRealms" attribute is shown below:
NAIRealms=ipass.com;mnc123.mcc334.3gppnetwork.org
3. Delivery Mechanism
There are three possible options of delivering Network Information to
a wireless client by using an EAP-Identity Request. These options
are:
Option 1
Use a subsequent EAP-Identity Request issued by the access network
RADIUS server.
Option 2
Use the initial EAP-Identity Request issued by the access network
RADIUS server.
Option 3
Use the Initial EAP-Identity Request issued by the access network
NAS.
In general, an option that requires changes only to a central AAA
server is much preferred than a one that impacts a distributed set of
APs. The reasons for this preference include ease of operation and
deployment, update costs, backwards compatibility and possible impact
on current standards. Option 1 is therefore preferred as it does not
require any changes to the AP. Option 2 is also equally desirable if
the AP supports the EAP-Start message.
If the home network RADIUS server uses an updated User-Name
attribute, for example, in RADIUS Access-Challenge and Access-Accept
packets, then this SHOULD be used in subsequent RADIUS message flows
between AP and Home RADIUS server.
Adrangi, et al. Expires October 24, 2004 [Page 6]
Internet-Draft EAP Network Discovery April 2004
In order for a wireless client software implementation to work with
all options transparently, the implementation MUST not require the
arrival of network information on a particular EAP-Identity Request
(i.e., the initial or a subsequent Request). Access network
operators therefore MAY choose to deploy any of the above delivery
mechanism options in their network without losing interoperability.
However, delivery mechanism options 1 and 2 are recommended as they
are backward-compatible with the currently-deployed APs.
The following describes the three options with pros and cons of each.
Option 1
Network information is delivered to a wireless client in a
subsequent EAP-Identity request after the initial
EAP-Identity Request/Response exchange.
Upon receipt of a RADIUS Access-Request packet containing the
initial EAP-Identity Response, the access network RADIUS
proxy/server MAY send an EAP-Identity Request containing
network information to the wireless client if it cannot route
the RADIUS packet to the next AAA hop based on the realm
portion (i.e., string after the @ sign) of the NAI in the
RADIUS User-Name attribute.
When a RADIUS Access-Request containing a subsequent
EAP-Identity Response is received, if the RADIUS proxy/server
still cannot route the RADIUS packet to the next AAA hop
based on the realm portion of the NAI, then it MAY route the
packet based on its local routing policy, or it MAY discard
the packet.
This option does not require any modifications to existing
APs, and it uses a dedicated EAP-Identity Request for
delivering network information and hence no contention
problem for using the space in the Type-Data field. However,
it introduces an extra EAP-Identity Request/Response pair and
requires software upgrade on access network RADIUS server for
administering and delivering network information in the
EAP-Identity Request.
Option 2
This is similar to Option 1, but the initial EAP-Identity
Request is issued by the access network RADIUS Server
instead. Once a wireless client associates with an access
network AP using native IEEE 802.11 procedures, the AP sends
an EAP-Start message within a RADIUS Access-Request as
Adrangi, et al. Expires October 24, 2004 [Page 7]
Internet-Draft EAP Network Discovery April 2004
defined in [4] to trigger an EAP conversation initiated by
the access network RADIUS server.
This option does not require any modifications to existing
APs. However, it may not be backwards compatible if
currently-deployed APs in access networks do not support
EAP-Start. Besides, it may introduce a contention problem if
the Type-Data field has already been used for other purposes.
It also requires software upgrade on access network RADIUS
server for administering and delivering network information
in the EAP-Identity Request.
Option 3
Network information is pushed to a wireless client in the
initial EAP-Identity Request issued by the AP.
This option requires modifications to APs, since most
currently-deployed APs do not include support for
administering and delivering network information in the
EAP-Identity Request. Furthermore, it may introduce a
contention problem if the Type-Data field has already been
used for other purposes.
4. Security Considerations
Network Information delivered inside an EAP-Identity Request is
considered as a hint in guiding the wireless client to select the
desired MN. It SHOULD be treated similarly to the SSID in beacon
broadcast: subject to modification and spoofing.
It should also be noted that at least with some EAP methods, there is
no way for the HSN RADIUS server to verify that the MN used was
actually the same one that the wireless client had requested.
5. Acknowledgement
The authors would specially like to thank Jari Arkko (of Ericsson)
for his help in scoping the problem, for reviewing the draft work in
progress and for suggesting improvements to it.
The authors would also like to acknowledge and thank Jari Arkko (of
Ericson), Bernard Aboba (of Microsoft), Adrian Buckley (of RIM),
Blair Bullock (of iPass) , Jose Puthenkulam (of Intel), Johanna Wild
(of Motorola), Joe Salowey (of Cisco), Marco Spini (of Telecom
Italia), and Mark Grayson (of Cisco)for their support, feedback and
guidance during the various stages of this work. This draft would not
Adrangi, et al. Expires October 24, 2004 [Page 8]
Internet-Draft EAP Network Discovery April 2004
have been possible without their valuable input.
6. References
6.1 Normative References
[1] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", RFC 2234, November 1997.
[2] Rigney, C., Willens, S., Rubens, A. and W. Simpson, "Remote
Authentication Dial In User Service (RADIUS)", RFC 2865, June
2000.
[3] Calhoun, P., Loughney, J., Guttman, E., Zorn, G. and J. Arkko,
"Diameter Base Protocol", RFC 3588, September 2003.
[4] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication Dial In
User Service) Support For Extensible Authentication Protocol
(EAP)", RFC 3579, September 2003.
[5] Rigney, C., "RADIUS Accounting", RFC 2866, June 2000.
[6] Blunk, L., "Extensible Authentication Protocol (EAP)",
draft-ietf-eap-rfc2284bis-09 (work in progress), February 2004.
[7] Aboba, B., "The Network Access Identifier",
draft-arkko-roamops-rfc2486bis-00 (work in progress), February
2004.
6.2 Informative References
Authors' Addresses
Farid Adrangi
Intel Corporation
EMail: farid.adrangi@intel.com
Victor Lortz
Intel Corporation
EMail: victor.lortz@intel.com
Adrangi, et al. Expires October 24, 2004 [Page 9]
Internet-Draft EAP Network Discovery April 2004
Farooq Bari
AT&T Wireless
EMail: Farooq.bari@attws.com
Pasi Eronen
Nokia
EMail: pasi.eronen@nokia.com
Mark Watson
Nortel
EMail: mwatson@nortel.com
Appendix - Protocol Message Flow
The railroad diagrams below illustrate conversations between a
wireless client, AP, Access Network (AN) RADIUS proxy/server,
Mediating Network (MN) RADIUS proxy/server, and Home Network (HN)
RADIUS server for the three options described above.
Option 1 - Use a subsequent EAP-Identity Request issued by the access
network RADIUS server
Wireless AP AN RADIUS MN RADIUS HN RADIUS
Client server server Server
| (1) | | | |
| EAP Id. Req. | | | |
|< ------------| | | |
| | | | |
| (2) | | | |
| EAP Id. Resp.| | | |
|------------ >| (3) | | |
| |Access Request | | |
| |(EAP Id. Resp.) | | |
| |-------------- >| | |
| | | | |
| | (4) | | |
| |Access Challenge| | |
| |(EAP Id. Req. + | | |
| | (Network Info) | | |
| (5) |< --------------| | |
| EAP Id. Req. | | | |
|(Network Info)| | | |
|< ------------| | | |
Adrangi, et al. Expires October 24, 2004 [Page 10]
Internet-Draft EAP Network Discovery April 2004
| | | | |
| (6) | | | |
|EAP Id. Resp. | | | |
| | | | |
|------------ >| (7) | | |
| |Access Request | | |
| |(EAP Id. Resp.) | | |
| |-------------- >| (8) | |
| | |Access Req.( | |
| | |EAP Id. Resp.)| |
| | |------------ >| |
| | | |Access Request |
| | | |(EAP Id. Resp.)|
| | | |------------- >|
| ... | ... |.. | ... |
| < EAP Authentication Methods > |
| ... | ... |... | ...
| | | | |
| EAP Success | | | |
|< ------------| | | |
The following describes each message flow in details.
1. The access network AP issues an EAP-Identity Request to a
wireless client
2. The wireless client replies with an EAP-Identity Response
containing a normal NAI (i.e., non-decorated), or perhaps a
Decorated NAI [7] based on the network information cached from
the most recent authentication session to the access network.
3. The AP creates a RADIUS Access-Request packet encapsulating the
EAP-Identity Response and sends it to the access network RADIUS
server.
4. The access network RADIUS proxy/server sends a RADIUS
Access-Challenge packet encapsulating an EAP-Identity Request
containing Network Information. Or, the step 8 is executed if
the access network proxy/server can route the packet based on the
realm portion of the NAI in the RADIUS User-Name attribute to the
next AAA hop.
5. The access network AP forwards the EAP-Identity Request
containing the network information to the wireless client.
6. The wireless client replies with an EAP-Identity Response
containing a Decorated NAI indicating the preferred MN. It should
be noted that the wireless client may also decide not to connect
Adrangi, et al. Expires October 24, 2004 [Page 11]
Internet-Draft EAP Network Discovery April 2004
to the access network in the absence of the desired Mediating
Network in the received network information in step (4).
7. The access network AP forwards the EAP-Identity Response to the
access network RADIUS server over RADIUS protocol.
8. The access network RADIUS proxy/server forwards the received
Access Request to the appropriate MN RADIUS server based on the
realm portion of the NAI in the RADIUS User-Name attribute.
9. The MN RADIUS proxy/server forwards the received Access-Request
packet based on the NAI in the RADIUS User-Name attribute to the
next AAA hop (i.e., HN RADIUS Server). The EAP Authentication
continues as described in [4].
Option 2 - Use the initial EAP-Identity Request issued by the access
network RADIUS server.
Wireless AP AN RADIUS MN RADIUS HN RADIUS
Client server server Server
| (1) | | | |
| Association | | | |
|------------ >| (2) | | |
| |Access Request | | |
| |(EAP-Start) | | |
| |-------------- >| | |
| | | | |
| | (3) | | |
| |Access Challenge| | |
| |(EAP Id. Req. + | | |
| | (Network Info) | | |
| (4) |< --------------| | |
| EAP Id. Req. | | | |
|(Network Info)| | | |
|< ------------| | | |
| | | | |
| (5a) | | | |
|EAP Id. Resp. | | | |
| | | | |
| (5b) | | | |
|EAP Id. Resp. | | | |
|------------ >| (6) | | |
| |Access Request | | |
| |(EAP Id. Resp.) | | |
| |-------------- >| (7) | |
| | |Access Req. ( | |
Adrangi, et al. Expires October 24, 2004 [Page 12]
Internet-Draft EAP Network Discovery April 2004
| | |EAP Id. Resp.)| |
| | |------------ >| |
| | | |Access Request |
| | | |(EAP Id. Resp.)|
| | | |------------- >|
| ... | ... |.. | ... |
| < EAP Authentication Methods > |
| ... | |... | ... |
| | | | |
| EAP Success | | | |
|< ------------| | | |
The following describes each message flow in details.
1. The wireless client associates with the AP.
2. An EAP-Start message encapsulated within a RADIUS Access-Request
sent to the access network RADIUS server.
3. The access network RADIUS server processes the received
Access-Request message and initiates an EAP conversation by
sending an EAP-Identity Request containing Network Information
encapsulated within a RADIUS Access-Challenge.
4. The AP extracts the EAP-Identity Request from the received
Access-Challenge and sends it to the wireless client.
5. The wireless client sends an EAP-Identity Response containing
its decorated NAI indicating the selected MN to the AP. OR,
6. The wireless client sends an EAP-Identity Response containing a
normal NAI (i.e., non-decorated) to the AP.
7. The AP sends a RADIUS Access-Request packet containing the
EAP-Identity Response to the access network RADIUS server as
described in [4]. Please note that NAI in the EAP-Identity
Response is copied to the RADIUS User-Name attribute in the
Access-Request packet as per [4].
8. The access network RADIUS proxy/server forwards the received
Access-Request packet to the next AAA hop based on the realm
portion of the NAI in the RADIUS User-Name attribute.
9. The MN RADIUS proxy/server forwards the received Access-Request
packet based on the NAI in the RADIUS User-Name attribute to
the next AAA hop (i.e., HSN RADIUS Server).
Adrangi, et al. Expires October 24, 2004 [Page 13]
Internet-Draft EAP Network Discovery April 2004
10. The EAP Authentication continues as described in [4].
[Option 3] Use the Initial EAP-Identity Request issued by the access
network AP
Wireless AP AN RADIUS MN RADIUS HN RADIUS
Client server server Server
| (1) | | | |
| EAP Id. Req. | | | |
|(Network Info) | | | |
|< -------------| | | |
| | | | |
| (2a) | | | |
| EAP Id. Resp. | | | |
|(Decorated NAI)| | | |
| *OR* | | | |
| (2b) | | | |
| EAP Id. Resp. | | | |
|(normal NAI) | | | |
|------------- >| (3) | | |
| |Access Request | | |
| |(EAP Id. Resp.)| | |
| |------------- >| (4) | |
| | |Access Request | |
| | |(EAP Id. Resp.)| |
| | |------------- >| |
| | | | |
| | | |Access Request |
| | | |(EAP Id. Resp.)|
| | | (5) |------------- >|
| ... | ... | ... | ... |
| < EAP Authentication Methods > |
| ... | | ... | ... |
| | | | |
| | | | |
| EAP Success | | | |
|< ------------ | | | |
| | | | |
The following describes each message flow in details.
1. The AP sends the initial EAP-Identity Request containing Network
Information to the wireless client.
2. The wireless client sends an EAP-Identity Response containing a
Decorated NAI indicating the selected MN to the AP. OR,
3. The wireless client sends an EAP-Identity Response containing a
Adrangi, et al. Expires October 24, 2004 [Page 14]
Internet-Draft EAP Network Discovery April 2004
normal NAI (i.e., non-decorated)to the AP.
4. The AP sends a RADIUS Access Request packet containing the
EAP-Identity Response to the access network RADIUS proxy/server
as described in [4]. Please note that NAI in the EAP-Identity
Response is copied to the RADIUS User-Name attribute in the
Access-Request packet as per [4].
5. The access network RADIUS proxy/server forwards the received
Access-Request packet to the next AAA hop based on the realm
portion of the NAI in the RADIUS User-Name attribute.
6. The MN RADIUS proxy/server forwards the received Access-Request
packet based on the NAI in the RADIUS User-Name attribute to the
next AAA hop (i.e., HSN RADIUS Server).
7. The EAP Authentication continues as described in [4].
Adrangi, et al. Expires October 24, 2004 [Page 15]
Internet-Draft EAP Network Discovery April 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 IETF's procedures with respect to rights in IETF 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.
Adrangi, et al. Expires October 24, 2004 [Page 16]