draft-ietf-dime-mip6-split-10.txt   draft-ietf-dime-mip6-split-11.txt 
Diameter Maintenance and J. Korhonen Diameter Maintenance and J. Korhonen
Extensions (DIME) TeliaSonera Extensions (DIME) TeliaSonera
Internet-Draft H. Tschofenig Internet-Draft H. Tschofenig
Intended status: Standards Track Nokia Siemens Networks Intended status: Standards Track Nokia Siemens Networks
Expires: January 7, 2009 J. Bournelle Expires: March 20, 2009 J. Bournelle
Orange Labs Orange Labs
G. Giaretta G. Giaretta
Qualcomm Qualcomm
M. Nakhjiri M. Nakhjiri
Motorola Motorola
July 6, 2008 September 16, 2008
Diameter Mobile IPv6: Support for Home Agent to Diameter Server Diameter Mobile IPv6: Support for Home Agent to Diameter Server
Interaction Interaction
draft-ietf-dime-mip6-split-10.txt draft-ietf-dime-mip6-split-11.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware 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 becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 42 skipping to change at page 1, line 42
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on January 7, 2009. This Internet-Draft will expire on March 20, 2009.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
Abstract Abstract
Mobile IPv6 deployments may want to bootstrap their operations Mobile IPv6 deployments may want to bootstrap their operations
dynamically based on an interaction between the Home Agent and the dynamically based on an interaction between the Home Agent and the
Diameter server of the Mobile Service Provider (MSP). This document Diameter server of the Mobile Service Provider (MSP). This document
skipping to change at page 3, line 10 skipping to change at page 3, line 10
be used. Furthermore, another method makes use of the Mobile IPv6 be used. Furthermore, another method makes use of the Mobile IPv6
Authentication Protocol. In addition to authentication and Authentication Protocol. In addition to authentication and
authorization, the configuration of Mobile IPv6 specific parameters authorization, the configuration of Mobile IPv6 specific parameters
and accounting is specified in this document. and accounting is specified in this document.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 7 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 7
3. Application Identifiers . . . . . . . . . . . . . . . . . . . 7 3. Application Identifiers . . . . . . . . . . . . . . . . . . . 7
4. Protocol Description . . . . . . . . . . . . . . . . . . . . . 7 4. Protocol Description . . . . . . . . . . . . . . . . . . . . . 8
4.1. Support for Mobile IPv6 with IKEv2 and EAP . . . . . . . . 7 4.1. Support for Mobile IPv6 with IKEv2 and EAP . . . . . . . . 8
4.2. Support for Mobile IPv6 with IKEv2 and Certificates . . . 11 4.2. Support for the Mobile IPv6 Authentication Protocol . . . 11
4.3. Support for Mobile IPv6 with IKEv2 and Pre-Shared 4.3. Mobile IPv6 Session Management . . . . . . . . . . . . . . 12
Secrets . . . . . . . . . . . . . . . . . . . . . . . . . 11 4.3.1. Session-Termination-Request . . . . . . . . . . . . . 12
4.4. Support for the Mobile IPv6 Authentication Protocol . . . 11 4.3.2. Session-Termination-Answer . . . . . . . . . . . . . . 12
4.5. Mobile IPv6 Session Management . . . . . . . . . . . . . . 12 4.3.3. Abort-Session-Request . . . . . . . . . . . . . . . . 12
4.5.1. Session-Termination-Request . . . . . . . . . . . . . 12 4.3.4. Abort-Session-Answer . . . . . . . . . . . . . . . . . 13
4.5.2. Session-Termination-Answer . . . . . . . . . . . . . . 13 4.4. Accounting for Mobile IPv6 services . . . . . . . . . . . 13
4.5.3. Abort-Session-Request . . . . . . . . . . . . . . . . 13 4.4.1. Accounting-Request . . . . . . . . . . . . . . . . . . 13
4.5.4. Abort-Session-Answer . . . . . . . . . . . . . . . . . 13 4.4.2. Accounting-Answer . . . . . . . . . . . . . . . . . . 14
4.6. Accounting for Mobile IPv6 services . . . . . . . . . . . 13
4.6.1. Accounting-Request . . . . . . . . . . . . . . . . . . 14
4.6.2. Accounting-Answer . . . . . . . . . . . . . . . . . . 14
5. Command Codes . . . . . . . . . . . . . . . . . . . . . . . . 14 5. Command Codes . . . . . . . . . . . . . . . . . . . . . . . . 14
5.1. Command Code for Mobile IPv6 with IKEv2 and EAP . . . . . 14 5.1. Command Code for Mobile IPv6 with IKEv2 and EAP . . . . . 14
5.1.1. Diameter-EAP-Request . . . . . . . . . . . . . . . . . 14 5.1.1. Diameter-EAP-Request . . . . . . . . . . . . . . . . . 14
5.1.2. Diameter-EAP-Answer . . . . . . . . . . . . . . . . . 15 5.1.2. Diameter-EAP-Answer . . . . . . . . . . . . . . . . . 15
5.2. Command Code for Mobile IPv6 with IKEv2 and 5.2. Command Codes for Mobile IPv6 Authentication Protocol
Certificate- and PSK-based Authentication . . . . . . . . 16 Support . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.2.1. AA-Request . . . . . . . . . . . . . . . . . . . . . . 16 5.2.1. MIP6-Request . . . . . . . . . . . . . . . . . . . . . 17
5.2.2. AA-Answer . . . . . . . . . . . . . . . . . . . . . . 17 5.2.2. MIP6-Answer . . . . . . . . . . . . . . . . . . . . . 18
5.3. Command Codes for Mobile IPv6 Authentication Protocol 6. AVPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Support . . . . . . . . . . . . . . . . . . . . . . . . . 18 6.1. User-Name AVP . . . . . . . . . . . . . . . . . . . . . . 21
5.3.1. MIP6-Request . . . . . . . . . . . . . . . . . . . . . 18 6.2. Service-Selection AVP . . . . . . . . . . . . . . . . . . 21
5.3.2. MIP6-Answer . . . . . . . . . . . . . . . . . . . . . 19 6.3. MIP-MN-AAA-SPI AVP . . . . . . . . . . . . . . . . . . . . 21
6. AVPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 6.4. MIP-MN-HA-SPI AVP . . . . . . . . . . . . . . . . . . . . 22
6.1. User-Name AVP . . . . . . . . . . . . . . . . . . . . . . 23 6.5. MIP-Mobile-Node-Address AVP . . . . . . . . . . . . . . . 22
6.2. Service-Selection AVP . . . . . . . . . . . . . . . . . . 23 6.6. MIP6-Agent-Info AVP . . . . . . . . . . . . . . . . . . . 22
6.3. MIP-MN-AAA-SPI AVP . . . . . . . . . . . . . . . . . . . . 23 6.7. MIP-Careof-Address AVP . . . . . . . . . . . . . . . . . . 22
6.4. MIP-MN-HA-SPI AVP . . . . . . . . . . . . . . . . . . . . 23 6.8. MIP-Authenticator AVP . . . . . . . . . . . . . . . . . . 23
6.5. MIP-Mobile-Node-Address AVP . . . . . . . . . . . . . . . 24 6.9. MIP-MAC-Mobility-Data AVP . . . . . . . . . . . . . . . . 23
6.6. MIP6-Agent-Info AVP . . . . . . . . . . . . . . . . . . . 24 6.10. MIP-Session-Key AVP . . . . . . . . . . . . . . . . . . . 23
6.7. MIP-Careof-Address AVP . . . . . . . . . . . . . . . . . . 24 6.11. MIP-MSA-Lifetime AVP . . . . . . . . . . . . . . . . . . . 23
6.8. MIP-Authenticator AVP . . . . . . . . . . . . . . . . . . 24 6.12. MIP-MN-HA-MSA AVP . . . . . . . . . . . . . . . . . . . . 23
6.9. MIP-MAC-Mobility-Data AVP . . . . . . . . . . . . . . . . 25 6.13. MIP-Algorithm-Type AVP . . . . . . . . . . . . . . . . . . 24
6.10. MIP-Session-Key AVP . . . . . . . . . . . . . . . . . . . 25 6.14. MIP-Replay-Mode AVP . . . . . . . . . . . . . . . . . . . 24
6.11. MIP-MSA-Lifetime AVP . . . . . . . . . . . . . . . . . . . 25 6.15. MIP6-Feature-Vector AVP . . . . . . . . . . . . . . . . . 24
6.12. MIP-MN-HA-MSA AVP . . . . . . . . . . . . . . . . . . . . 25 6.16. MIP-Timestamp AVP . . . . . . . . . . . . . . . . . . . . 26
6.13. MIP-Algorithm-Type AVP . . . . . . . . . . . . . . . . . . 26 6.17. QoS-Capability AVP . . . . . . . . . . . . . . . . . . . . 26
6.14. MIP-Replay-Mode AVP . . . . . . . . . . . . . . . . . . . 26 6.18. QoS-Resources AVP . . . . . . . . . . . . . . . . . . . . 26
6.15. MIP6-Feature-Vector AVP . . . . . . . . . . . . . . . . . 26 6.19. Chargeable-User-Identity AVP . . . . . . . . . . . . . . . 26
6.16. MIP-Timestamp AVP . . . . . . . . . . . . . . . . . . . . 27 6.20. MIP6-Auth-Mode AVP . . . . . . . . . . . . . . . . . . . . 26
6.17. QoS-Capability AVP . . . . . . . . . . . . . . . . . . . . 28 6.21. Coupled Accounting Model Accounting AVPs . . . . . . . . . 27
6.18. QoS-Resources AVP . . . . . . . . . . . . . . . . . . . . 28 7. Result-Code AVP Values . . . . . . . . . . . . . . . . . . . . 27
6.19. Chargeable-User-Identity AVP . . . . . . . . . . . . . . . 28 7.1. Success . . . . . . . . . . . . . . . . . . . . . . . . . 27
6.20. Coupled Accounting Model Accounting AVPs . . . . . . . . . 28 7.2. Permanent Failures . . . . . . . . . . . . . . . . . . . . 28
7. Result-Code AVP Values . . . . . . . . . . . . . . . . . . . . 29 8. AVP Occurrence Tables . . . . . . . . . . . . . . . . . . . . 28
7.1. Success . . . . . . . . . . . . . . . . . . . . . . . . . 29 8.1. DER, DEA, MIR and MIA AVP/Command-Code Table . . . . . . . 29
7.2. Permanent Failures . . . . . . . . . . . . . . . . . . . . 29 8.2. Coupled Accounting Model AVP Table . . . . . . . . . . . . 29
8. AVP Occurrence Tables . . . . . . . . . . . . . . . . . . . . 30 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
8.1. AAR, AAA, DER, DEA, MIR and MIA AVP/Command-Code Table . . 30 9.1. Command Codes . . . . . . . . . . . . . . . . . . . . . . 30
8.2. Coupled Accounting Model AVP Table . . . . . . . . . . . . 31 9.2. AVP Codes . . . . . . . . . . . . . . . . . . . . . . . . 30
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 32 9.3. Result-Code AVP Values . . . . . . . . . . . . . . . . . . 31
9.1. Command Codes . . . . . . . . . . . . . . . . . . . . . . 32 9.4. Application Identifier . . . . . . . . . . . . . . . . . . 31
9.2. AVP Codes . . . . . . . . . . . . . . . . . . . . . . . . 32 9.5. Namespaces . . . . . . . . . . . . . . . . . . . . . . . . 31
9.3. Result-Code AVP Values . . . . . . . . . . . . . . . . . . 33 9.6. Mobile IPv6 Status Codes . . . . . . . . . . . . . . . . . 32
9.4. Application Identifier . . . . . . . . . . . . . . . . . . 33 10. Security Considerations . . . . . . . . . . . . . . . . . . . 32
9.5. Namespaces . . . . . . . . . . . . . . . . . . . . . . . . 33 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 32
9.6. Mobile IPv6 Status Codes . . . . . . . . . . . . . . . . . 34 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 33
10. Security Considerations . . . . . . . . . . . . . . . . . . . 34 12.1. Normative References . . . . . . . . . . . . . . . . . . . 33
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 34 12.2. Informative References . . . . . . . . . . . . . . . . . . 34
12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 35
12.1. Normative References . . . . . . . . . . . . . . . . . . . 35 Intellectual Property and Copyright Statements . . . . . . . . . . 37
12.2. Informative References . . . . . . . . . . . . . . . . . . 36
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 36
Intellectual Property and Copyright Statements . . . . . . . . . . 38
1. Introduction 1. Introduction
Performing the Mobile IPv6 protocol [1], requires the Mobile Node Performing the Mobile IPv6 protocol [1], requires the Mobile Node
(MN) to own a Home Address (HoA) and to have an assigned Home Agent (MN) to own a Home Address (HoA) and to have an assigned Home Agent
(HA) to the MN. The MN needs to register with the HA in order to (HA) to the MN. The MN needs to register with the HA in order to
enable its reachability and mobility, when away from its home link. enable its reachability and mobility, when away from its home link.
The registration process itself may require an establishment of IPSec The registration process itself may require an establishment of IPSec
security associations (SA) and cryptographic material between the MN security associations (SA) and cryptographic material between the MN
and HA. Alternatively, the registration process may be secured using and HA. Alternatively, the registration process may be secured using
a mobility message authentication option, which enables IPv6 mobility a mobility message authentication option, which enables IPv6 mobility
in a MN without having to establish an IPSec SA with its HA. in a MN without having to establish an IPSec SA with its HA.
Providing the collection of home address, HA address and keying Providing the collection of home address, HA address and keying
material is generally referred to as the Mobile IPv6 bootstrapping material is generally referred to as the Mobile IPv6 bootstrapping
problem [15]. The purpose of this specification is to provide problem [15]. The purpose of this specification is to provide
Diameter support for the interaction between the HA and the AAA Diameter support for the interaction between the HA and the
server. This specification satisfies the requirements defined in Authentication, Authorization, and Accounting (AAA) server. This
[16] for the bootstrapping problem in the split scenario [2] and also specification satisfies the requirements defined in [16] for the
specifies Diameter support for the Authentication Protocol for Mobile bootstrapping problem in the split scenario [2] and also specifies
IPv6 [3]. The Diameter support defined in this specification also Diameter support for the Authentication Protocol for Mobile IPv6 [3].
applies to Dual Stack Mobile IPv6 [17]. The Diameter support defined in this specification also applies to
Dual Stack Mobile IPv6 [17].
From a mobility service provider (MSP) perspective, it is important From a Mobility Service Provider (MSP) perspective, it is important
to verify that the MN is authenticated and authorized to utilize to verify that the MN is authenticated and authorized to utilize
Mobile IPv6 service, and is accounted for those. Only when the MN is Mobile IPv6 service, and is accounted for those. Only when the MN is
authenticated and authorized, the MSP allows the bootstrapping of authenticated and authorized, the MSP allows the bootstrapping of
Mobile IPv6 parameters. Thus, prior to processing the Mobile IPv6 Mobile IPv6 parameters. Thus, prior to processing the Mobile IPv6
registrations, the HA, participates in the authentication of the MN registrations, the HA, participates in the authentication of the MN
to verify the MN's identity. The HA also participates in the Mobile to verify the MN's identity. The HA also participates in the Mobile
IPv6 authorization process involving the Diameter infrastructure. IPv6 authorization process involving the Diameter infrastructure.
The HA, due to its role in traffic forwarding, may also perform The HA, due to its role in traffic forwarding, may also perform
accounting for the Mobile IPv6 service provided to the MN. accounting for the Mobile IPv6 service provided to the MN.
skipping to change at page 6, line 40 skipping to change at page 6, line 41
| Node |<-------------------->|Diameter Client| | Node |<-------------------->|Diameter Client|
+---------+ IKEv2 or RFC 4285 +---------------+ +---------+ IKEv2 or RFC 4285 +---------------+
Figure 1: Architecture Overview Figure 1: Architecture Overview
Mobile IPv6 signaling between the MN and the HA can be protected Mobile IPv6 signaling between the MN and the HA can be protected
using two different mechanisms, namely using IPSec or Authentication using two different mechanisms, namely using IPSec or Authentication
Protocol for Mobile IPv6 [3]. For these two approaches several Protocol for Mobile IPv6 [3]. For these two approaches several
different authentication and key exchange solutions are available. different authentication and key exchange solutions are available.
When IPSec is used to protect Mobile IPv6 signaling messages, IKEv2 When IPSec is used to protect Mobile IPv6 signaling messages, IKEv2
is used [4]. IKEv2 supports EAP-based authentication, certificates is used [4]. IKEv2 supports EAP-based initiator authentication,
and pre-shared secrets. Alternatively, Authentication Protocol for certificates and pre-shared secrets. Alternatively, Authentication
Mobile IPv6 uses a mechanism that is very similar to the one used for Protocol for Mobile IPv6 uses a mechanism that is very similar to the
protecting Mobile IPv4 signaling messages. one used for protecting Mobile IPv4 signaling messages.
The ability to use different credentials has an impact on the The ability to use different credentials and methods to authenticate
interaction between the HA (acting as a Diameter client) and the the MN has an impact on the AAA interactions between the HA (acting
Diameter Server. For that reason this document illustrates the usage as a Diameter client) and the Diameter Server. This specification is
of these authentication mechanisms with different subsections for: only limited to the following MN authentication methods:
o IKEv2 usage with EAP o IKEv2 usage with EAP
o IKEv2 usage with certificates and pre-shared secrets
o Mobile IPv6 Authentication Protocol o Mobile IPv6 Authentication Protocol
New authentication mechanisms may be added later by separate
specifications.
For accounting of Mobile IPv6 services provided to the MN, this For accounting of Mobile IPv6 services provided to the MN, this
specification uses the Diameter Base Protocol accounting defined in specification uses the Diameter Base Protocol accounting defined in
RFC 3588 [5]. RFC 3588 [5].
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [6]. document are to be interpreted as described in RFC 2119 [6].
The Mobile IPv6 bootstrapping terminology is taken from [15]. The Mobile IPv6 bootstrapping terminology is taken from [15].
Additional terminology is defined below:
Authentication, Authorization, and Accounting (AAA):
AAA protocol based on Diameter [5] with required EAP support [7].
Home AAA (AAAH):
An authentication, authorization and accounting server located in
user's home network i.e., in the home realm.
3. Application Identifiers 3. Application Identifiers
This specification defines two new Diameter applications and their This specification defines two new Diameter applications and their
respective Application Identifiers: respective Application Identifiers:
Diameter Mobile IPv6 IKE (MIP6I) TBD by IANA Diameter Mobile IPv6 IKE (MIP6I) TBD by IANA
Diameter Mobile IPv6 Auth (MIP6A) TBD by IANA Diameter Mobile IPv6 Auth (MIP6A) TBD by IANA
The MIP6I Application Identifier is used when the MN is authenticated The MIP6I Application Identifier is used when the MN is authenticated
and authorized using IKEv2. The MIP6A Application Identifier is used and authorized using IKEv2. The MIP6A Application Identifier is used
when the MN is authenticated and authorized using Mobile IPv6 when the MN is authenticated and authorized using Mobile IPv6
Authentication Protocol. Authentication Protocol.
Mobile IPv6 related accounting generated by the HA uses either MIP6I Mobile IPv6 related accounting generated by the HA uses either MIP6I
or MIP6A Application Identifier in the case of coupled accounting or MIP6A Application Identifier in the case of coupled accounting
model. Diameter Base Accounting Application Identifier (value of 3) model. Diameter Base Accounting Application Identifier (value of 3)
is used in the case of split accounting model. Refer Section 4.6 for is used in the case of split accounting model. Refer Section 4.4 for
more information regarding the accounting models. more information regarding the accounting models.
4. Protocol Description 4. Protocol Description
4.1. Support for Mobile IPv6 with IKEv2 and EAP 4.1. Support for Mobile IPv6 with IKEv2 and EAP
The use of IKEv2 with EAP between the MN and the HA allows the AAA to The use of IKEv2 with EAP between the MN and the HA allows the AAA to
authenticate the MN. When EAP is used with IKEv2, the Diameter EAP authenticate the MN. When EAP is used with IKEv2, the Diameter EAP
application logic and procedures, as defined in [7], are re-used. application logic and procedures, as defined in [7], are re-used.
EAP methods that do not establish a shared key SHOULD NOT be used, as EAP methods that do not establish a shared key SHOULD NOT be used, as
skipping to change at page 9, line 16 skipping to change at page 9, line 16
Node Agent Server Node Agent Server
| | | | | |
| HDR, SAi1, KEi, Ni (1) | | | HDR, SAi1, KEi, Ni (1) | |
|-------------------------------->| | |-------------------------------->| |
| | | | | |
| HDR, SAr1, KEr, Nr, [CERTREQ](2)| | | HDR, SAr1, KEr, Nr, [CERTREQ](2)| |
|<--------------------------------| | |<--------------------------------| |
| | | | | |
| HDR, SK{IDi,[CERTREQ,] [IDr,] | | | HDR, SK{IDi,[CERTREQ,] [IDr,] | |
| [CP(CFG_REQUEST),] | | | [CP(CFG_REQUEST),] | |
| SAi2, TSi, TSr} (3) | | | SAi2, TSi, TSr} (3) | DER (EAP-Response) (4) + |
|-------------------------------->| DER (EAP-Response) (4) | |-------------------------------->| MIP6 Bootstrapping AVPs |
| |------------------------->| | |------------------------->|
| | | | | |
| | DEA (EAP-Request) (5) | | | DEA (EAP-Request) (5) |
| HDR, SK{IDr, [CERT,] AUTH, EAP} |<-------------------------| | HDR, SK{IDr, [CERT,] AUTH, EAP} |<-------------------------|
|<------------------------------- | | |<------------------------------- | |
| | | | | |
| HDR, SK{EAP} | | | HDR, SK{EAP} | |
|-------------------------------->| DER (EAP-Response) | |-------------------------------->| DER (EAP-Response) |
| |------------------------->| | |------------------------->|
| | | | | |
| | DEA (EAP-Request) | | | DEA (EAP-Request) |
| HDR, SK{EAP-Request} |<-------------------------| | HDR, SK{EAP-Request} |<-------------------------|
|<--------------------------------| | |<--------------------------------| |
| | | | | |
| HDR, SK{EAP-Response} | | | HDR, SK{EAP-Response} | |
|-------------------------------->| DER (EAP-Response) | |-------------------------------->| DER (EAP-Response) |
| |------------------------->| | |------------------------->|
| ... | ... | | ... | ... |
| | | | | |
| | DEA (EAP-Success) | | | DEA (EAP-Success) + |
| |<-------------------------| | | MIP6 Bootstrapping AVPs |
| HDR, SK{EAP-Success} | | | HDR, SK{EAP-Success} |<-------------------------|
|<--------------------------------| | |<--------------------------------| |
| | | | | |
| HDR, SK{AUTH} | | | HDR, SK{AUTH} | |
|-------------------------------->| | |-------------------------------->| |
| | | | | |
| HDR, SK{AUTH, [CP(CFG_REPLY,] | | | HDR, SK{AUTH, [CP(CFG_REPLY,] | |
| SAr2, TSi, TSr} | | | SAr2, TSi, TSr} | |
|<--------------------------------| | |<--------------------------------| |
| | | | | |
skipping to change at page 11, line 5 skipping to change at page 11, line 5
the use of different identities during the IKEv2 negotiation is the use of different identities during the IKEv2 negotiation is
deployment specific. Another possibility is to make the distinction deployment specific. Another possibility is to make the distinction
on the MN subscription basis. In this case the Diameter server can on the MN subscription basis. In this case the Diameter server can
inform the HA during the IKEv2 negotiation whether the MN is inform the HA during the IKEv2 negotiation whether the MN is
provisioned with an IPSec VPN access service or Mobile IPv6 service. provisioned with an IPSec VPN access service or Mobile IPv6 service.
Eventually, when the HA receives a Binding Update (BU), the HA Eventually, when the HA receives a Binding Update (BU), the HA
authenticates and authorizes the MN. It is RECOMMENDED that the HA authenticates and authorizes the MN. It is RECOMMENDED that the HA
sends an accounting request message every time it receives a BU. sends an accounting request message every time it receives a BU.
4.2. Support for Mobile IPv6 with IKEv2 and Certificates 4.2. Support for the Mobile IPv6 Authentication Protocol
When IKEv2 is used with certificate-based authentication, the
Diameter NASREQ application logic and procedures, as defined in [9],
are re-used to authorize the MN for the Mobile IPv6 service. The IDi
payload extracted from the IKE_AUTH message MUST correspond to the
identity in the MN's certificate. This identity is then used by the
HA to populate the User-Name AVP in the succeeding AA-Request
message. Further PKI-related procedures such as certificate
revocation checking are out of scope of this document.
4.3. Support for Mobile IPv6 with IKEv2 and Pre-Shared Secrets
When IKEv2 is used with PSK-based initiator authentication, the
Diameter NASREQ application [9] is re-used to authorize the MN for
the Mobile IPv6 service. The IDi payload extracted from the IKE_AUTH
message has to contain an identity that is meaningful for the
Diameter infrastructure, such as a Network Access Identifier (NAI),
and is then used by the HA to populate the User-Name AVP in the
succeeding AA-Request message.
4.4. Support for the Mobile IPv6 Authentication Protocol
Figure 4 shows the message sequence between the MN, the HA and the Figure 4 shows the message sequence between the MN, the HA and the
Diameter server during the registration when Mobile IPv6 Diameter server during the registration when Mobile IPv6
Authentication Protocol is used. A BU and a Binding Acknowledgement Authentication Protocol is used. A BU and a Binding Acknowledgement
(BA) messages are used in the binding registration process. (BA) messages are used in the binding registration process.
Receiving a BU at the HA initiates a MIP6-Request to be sent to the Receiving a BU at the HA initiates a MIP6-Request to be sent to the
Diameter server. The Diameter server in turn responds with a MIP6- Diameter server. The Diameter server in turn responds with a MIP6-
Answer. The HA may assign a Home Address to the MN and provide it to Answer. The HA may assign a Home Address to the MN and provide it to
the Diameter server in the MIP-Mobile-Node-Address AVP. the Diameter server in the MIP-Mobile-Node-Address AVP.
According to [3] the MN uses the Mobile Node Identifier Option, According to [3] the MN uses the Mobile Node Identifier Option,
specifically the MN-NAI mobility option (as defined in [18]) to specifically the MN-NAI mobility option (as defined in [18]) to
identify itself. The HA MUST copy the MN-NAI mobility option value identify itself. The HA MUST copy the MN-NAI mobility option value
to the User-Name AVP in the subsequent request messages. to the User-Name AVP in the subsequent request messages.
The procedure described in this specification for the Mobile IPv6 The procedure described in this specification for the Mobile IPv6
Authentication Protocol is only needed for the initial BU received by Authentication Protocol is only needed for the initially received BU
the HA. When the HA receives subsequent BUs, they are processed for which the HA does not have an existing security association.
locally in the HA. It is RECOMMENDED that the HA sends an accounting When the HA receives subsequent BUs, they are processed locally in
request message every time it receives a Binding Update. However, the HA. It is RECOMMENDED that the HA sends an accounting request
the HA MAY re-authorize the MN with the Diameter server at any time message every time it receives a Binding Update. However, the HA MAY
depending on the deployment and the local policy. re-authorize the MN with the Diameter server at any time depending on
the deployment and the local policy.
In some architectures and network deployments the MN-HA security In some architectures and network deployments the MN-HA security
associations may be established as a result of a successful network associations may be established as a result of a successful network
access authentication. In such deployments, both MN and Diameter access authentication. In such deployments, both MN and Diameter
server share the keying material required for computation and server share the keying material required for computation and
validation of the MN-HA Authentication Option, and a Security validation of the MN-HA Authentication Option, and a Security
Parameter Index (SPI) for indexing an appropriate security Parameter Index (SPI) for indexing an appropriate security
association. Upon receiving a BU with a MN-HA Authentication Option, association. Upon receiving a BU with a MN-HA Authentication Option,
the HA retrieves the keying material required for the computation and the HA retrieves the keying material required for the computation and
validation of the MN-HA Authentication Option from the Diameter validation of the MN-HA Authentication Option from the Diameter
server. The Diameter request message sent by the HA must contain server. The Diameter request message sent by the HA must contain
enough information (such as SPI, MN-NAI, etc) so that the Diameter enough information (such as SPI, MN-NAI, etc) so that the Diameter
server is able to locate the matching MN-HA security association and server is able to locate the matching MN-HA security association and
return correct keying material back to the HA. return correct keying material back to the HA.
This specification assumes that in the case Mobile IPv6
Authentication Protocol is used, the MN-AAA option is included in the
BU. Other possible uses of Mobile IPv6 Authentication Protocol are
out of scope of this specification and would require a new
specification to describe the detailed behavior of the HA-AAAH
interface. However, the HA-AAAH interface has been designed in a way
that the Mobile IPv6 Authentication Protocol may also be used without
the MN-AAA option.
Mobile Home Diameter Mobile Home Diameter
Node Agent Server Node Agent Server
| | | | | |
| | | | | MIP6-Request + MIP6 |
| Binding Update |MIP6-Request | | Binding Update | Bootstrapping AVPs |
|------------------------------------>|-------------------->| |------------------------------------>|-------------------->|
| (Mobile Node Identifier Option, | | | (Mobile Node Identifier Option, | |
| Mobility Message Replay Protection | | | Mobility Message Replay Protection | |
| Option, Authentication Option) | | | Option, Authentication Option) | |
| | | | | |
| | | | | MIP6-Answer + MIP6 |
| Binding Acknowledgement |MIP6-Answer | | Binding Acknowledgement | Bootstrapping AVPs |
|<------------------------------------|<--------------------| |<------------------------------------|<--------------------|
| (Mobile Node Identifier Option | | | (Mobile Node Identifier Option | |
| Mobility Message Replay Protection | | | Mobility Message Replay Protection | |
| Option, Authentication Option) | | | Option, Authentication Option) | |
Figure 4: Mobile IPv6 Bootstrapping using the Mobile IPv6 Figure 4: Mobile IPv6 Bootstrapping using the Mobile IPv6
Authentication Protocol Authentication Protocol
4.5. Mobile IPv6 Session Management 4.3. Mobile IPv6 Session Management
The Diameter server may maintain state or may be stateless. This is The Diameter server may maintain state or may be stateless. This is
indicated in the Auth-Session-State AVP (or its absence). The HA indicated in the Auth-Session-State AVP (or its absence). The HA
MUST support the Authorization Session State Machine defined in [5]. MUST support the Authorization Session State Machine defined in [5].
Moreover, the following four commands may be exchanged between the HA Moreover, the following four commands may be exchanged between the HA
and the Diameter server. and the Diameter server.
4.5.1. Session-Termination-Request 4.3.1. Session-Termination-Request
The Session-Termination-Request (STR) message [5] is sent by the HA The Session-Termination-Request (STR) message [5] is sent by the HA
to inform the Diameter server that an authorized session is being to inform the Diameter server that an authorized session is being
terminated. terminated.
4.5.2. Session-Termination-Answer 4.3.2. Session-Termination-Answer
The Session-Termination-Answer (STA) message [5] is sent by the The Session-Termination-Answer (STA) message [5] is sent by the
Diameter server to acknowledge the notification that the session has Diameter server to acknowledge the notification that the session has
been terminated. been terminated.
4.5.3. Abort-Session-Request 4.3.3. Abort-Session-Request
The Abort-Session-Request (ASR) message [5] is sent by the Diameter The Abort-Session-Request (ASR) message [5] is sent by the Diameter
server to terminate the session. This fulfills one of the server to terminate the session. This fulfills one of the
requirement described in [16]. requirement described in [16].
4.5.4. Abort-Session-Answer 4.3.4. Abort-Session-Answer
The Abort-Session-Answer (ASA) message [5] is sent by the Home Agent The Abort-Session-Answer (ASA) message [5] is sent by the Home Agent
in response to an ASR message. in response to an ASR message.
4.6. Accounting for Mobile IPv6 services 4.4. Accounting for Mobile IPv6 services
The HA MUST be able act as a Diameter client collecting accounting The HA MUST be able act as a Diameter client collecting accounting
records needed for service control and charging. The HA MUST support records needed for service control and charging. The HA MUST support
the accounting procedures (specifically the command codes mentioned the accounting procedures (specifically the command codes mentioned
below) and the Accounting Session State Machine as defined in [5]. below) and the Accounting Session State Machine as defined in [5].
The command codes, exchanged between the HA and Diameter server for The command codes, exchanged between the HA and Diameter server for
accounting purposes, are provided in the following subsections. accounting purposes, are provided in the following subsections.
The Diameter application design guideline [19] defines two separate The Diameter application design guideline [19] defines two separate
models for accounting: models for accounting:
skipping to change at page 14, line 11 skipping to change at page 13, line 48
means that accounting messages will be routed like any other means that accounting messages will be routed like any other
Mobile IPv6 application messages. This requires the Diameter Mobile IPv6 application messages. This requires the Diameter
server in charge of Mobile IPv6 application to handle the server in charge of Mobile IPv6 application to handle the
accounting records (e.g., sends them to a proper accounting accounting records (e.g., sends them to a proper accounting
server). server).
As mentioned above, the preferred choice is to use the split As mentioned above, the preferred choice is to use the split
accounting model and thus to choose Diameter Base Accounting accounting model and thus to choose Diameter Base Accounting
Application Identifier (value of 3) for accounting messages. Application Identifier (value of 3) for accounting messages.
4.6.1. Accounting-Request 4.4.1. Accounting-Request
The Accounting-Request command [5] is sent by the HA to the Diameter The Accounting-Request command [5] is sent by the HA to the Diameter
server to exchange accounting information regarding the MN with the server to exchange accounting information regarding the MN with the
Diameter server. Diameter server.
4.6.2. Accounting-Answer 4.4.2. Accounting-Answer
The Accounting-Answer command [5] is sent by the Diameter server to The Accounting-Answer command [5] is sent by the Diameter server to
the HA to acknowledge receiving an Accounting-Request. the HA to acknowledge receiving an Accounting-Request.
5. Command Codes 5. Command Codes
5.1. Command Code for Mobile IPv6 with IKEv2 and EAP 5.1. Command Code for Mobile IPv6 with IKEv2 and EAP
For the use of Mobile IPv6 with IKEv2 and EAP this document reuses For the use of Mobile IPv6 with IKEv2 and EAP this document reuses
the Diameter EAP application [7] commands: Diameter-EAP-Request (DER) the Diameter EAP application [7] commands: Diameter-EAP-Request (DER)
skipping to change at page 15, line 22 skipping to change at page 15, line 22
[ Destination-Host ] [ Destination-Host ]
[ NAS-Identifier ] [ NAS-Identifier ]
[ NAS-IP-Address ] [ NAS-IP-Address ]
[ NAS-IPv6-Address ] [ NAS-IPv6-Address ]
[ NAS-Port-Type ] [ NAS-Port-Type ]
[ User-Name ] [ User-Name ]
... ...
{ EAP-Payload } { EAP-Payload }
... ...
[ MIP6-Feature-Vector ] [ MIP6-Feature-Vector ]
*2[ MIP6-Agent-Info ] [ MIP6-Agent-Info ]
*2[ MIP-Mobile-Node-Address ] *2[ MIP-Mobile-Node-Address ]
[ Chargeable-User-Identity ] [ Chargeable-User-Identity ]
[ Service-Selection ] [ Service-Selection ]
[ QoS-Capability ] [ QoS-Capability ]
* [ QoS-Resources ] * [ QoS-Resources ]
... ...
* [ AVP ] * [ AVP ]
Mobile IPv6 bootstrapping AVPs are only included in the first DER
message send by the HA. The subsequent DER messages required by the
EAP-method do not need to include any Mobile IPv6 bootstrapping AVPs.
The MN is both authenticated and authorized for the mobility service
during the EAP authentication. Thus the Auth-Request-Type AVP is set
to the value AUTHORIZE_AUTHENTICATE.
5.1.2. Diameter-EAP-Answer 5.1.2. Diameter-EAP-Answer
The Diameter-EAP-Answer (DEA) message, indicated by the Command-Code The Diameter-EAP-Answer (DEA) message, indicated by the Command-Code
field set to 268 and 'R' bit cleared in the Command Flags field, is field set to 268 and 'R' bit cleared in the Command Flags field, is
sent in response to the Diameter-EAP-Request message (DER). The sent in response to the Diameter-EAP-Request message (DER). The
Application-Id field in the Diameter message header MUST be set to Application-Id field in the Diameter message header MUST be set to
the Diameter Mobile IPv6 IKE Application-Id (value of TBD). If the the Diameter Mobile IPv6 IKE Application-Id (value of TBD). If the
Mobile IPv6 authentication procedure was successful then the response Mobile IPv6 authentication procedure was successful then the response
MAY include any set of bootstrapping AVPs. MAY include any set of bootstrapping AVPs.
skipping to change at page 16, line 21 skipping to change at page 16, line 21
{ Origin-Realm } { Origin-Realm }
[ User-Name ] [ User-Name ]
[ EAP-Payload ] [ EAP-Payload ]
[ EAP-Reissued-Payload ] [ EAP-Reissued-Payload ]
[ EAP-Master-Session-Key ] [ EAP-Master-Session-Key ]
[ EAP-Key-Name ] [ EAP-Key-Name ]
[ Multi-Round-Time [ Multi-Round-Time
... ...
*2[ MIP-Mobile-Node-Address ] *2[ MIP-Mobile-Node-Address ]
[ MIP6-Feature-Vector ] [ MIP6-Feature-Vector ]
*2[ MIP6-Agent-Info ] [ MIP6-Agent-Info ]
* [ QoS-Resources ]
[ Chargeable-User-Identity ]
...
* [ AVP ]
5.2. Command Code for Mobile IPv6 with IKEv2 and Certificate- and PSK-
based Authentication
For the use of Mobile IPv6 with IKEv2, and certificate- and PSK-based
authentication this document reuses the Diameter NASREQ application
[9] commands: AA-Request (AAR) and AA-Answer (AAA). This
specification extends the existing AAR and AAA command ABNFs with a
number AVPs to support Mobile IPv6 split scenario bootstrapping.
Other than new additional AVPs and the corresponding additions to the
command ABNFs, the Diameter NASREQ application command ABNFs remain
unchanged.
Command-Name Abbrev. Code Reference Application
---------------------------------------------------------------------
AA-Request AAR 265 RFC 4005 Diameter Mobile IPv6 IKE
AA-Answer AAA 265 RFC 4005 Diameter Mobile IPv6 IKE
Figure 8: Command Codes
5.2.1. AA-Request
The AA-Request (AAR) message, indicated by the Command-Code field set
to 265 and the 'R' bit set in the Command Flags field, is sent by the
HA to the Diameter server to initiate a Mobile IPv6 service
authentication and authorization procedure. The Application-ID field
of the Diameter Header MUST be set to the Diameter Mobile IPv6 IKE
Application ID (value of TBD).
<AA-Request> ::= < Diameter Header: 265, REQ, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Origin-Host }
{ Origin-Realm }
{ Destination-Realm }
{ Auth-Request-Type }
[ Destination-Host ]
[ NAS-Identifier ]
[ NAS-IP-Address ]
[ NAS-IPv6-Address ]
[ NAS-Port-Type ]
[ User-Name ]
...
[ MIP6-Feature-Vector ]
*2[ MIP5-Agent-Info ]
*2[ MIP-Mobile-Node-Address ]
[ Chargeable-User-Identity ]
[ Service-Selection ]
[ QoS-Capability ]
* [ QoS-Resources ]
...
* [ AVP ]
5.2.2. AA-Answer
The AA-Answer (AAA) message, indicated by the Command-Code field set
to 265 and 'R' bit cleared in the Command Flags field, is sent in
response to the AA-Request message (AAR). If the Mobile IPv6
authentication procedure was successful then the response MAY include
any set of bootstrapping AVPs. The Application-Id field in the
Diameter header MUST be set to the Diameter Mobile IPv6 IKE
Application-Id (value of TBD).
<AA-Answer> ::= < Diameter Header: 265, PXY >
< Session-Id >
{ Auth-Application-Id }
{ Auth-Request-Type }
{ Result-Code }
{ Origin-Host }
{ Origin-Realm }
[ User-Name ]
[ Authorization-Lifetime ]
...
*2[ MIP-Mobile-Node-Address ]
*2[ MIP6-Agent-Info ]
[ MIP6-Feature-Vector ]
[ MIP-MN-HA-MSA ]
* [ QoS-Resources ] * [ QoS-Resources ]
[ Chargeable-User-Identity ] [ Chargeable-User-Identity ]
... ...
* [ AVP ] * [ AVP ]
When IKEv2 is used with PSK-based initiator authentication, the pre- If the EAP-based authentication and the authorization for the
shared secret is carried inside the MIP-MN-HA-MSA AVP. The pre- mobility service succeeds, then the Mobile IPv6 bootstrapping AVPs
shared secret SHOULD NOT be user's long term secret and it is are included in the last DEA message that also carries the EAP-
RECOMMENDED that a short-term keying material specifically created Success EAP payload. The other DEA messages required by the used
for this purpose is used instead. EAP-method do not include any Mobile IPv6 bootstrapping AVPs.
5.3. Command Codes for Mobile IPv6 Authentication Protocol Support 5.2. Command Codes for Mobile IPv6 Authentication Protocol Support
This section defines the commands that are used for support with the This section defines the commands that are used for support with the
Mobile IPv6 Authentication Protocol. Mobile IPv6 Authentication Protocol.
There are multiple ways of deploying and utilizing Mobile IPv6
Authentication Protocol, especially regarding the associated AAA
interactions. In order to support multiple deployment models this
specification defines the MIP6-Auth-Mode AVP that in the request
message tells the mode that the HA supports. This specification
defines a method that requires the use of the MN-AAA option with the
Mobile IPv6 Authentication Protocol.
Command-Name Abbrev. Code Reference Application Command-Name Abbrev. Code Reference Application
--------------------------------------------------------------------- ---------------------------------------------------------------------
MIP6-Request MIR TBD 5.3.1 Diameter Mobile IPv6 Auth MIP6-Request MIR TBD 5.3.1 Diameter Mobile IPv6 Auth
MIP6-Answer MIA TBD 5.3.2 Diameter Mobile IPv6 Auth MIP6-Answer MIA TBD 5.3.2 Diameter Mobile IPv6 Auth
Command Codes Command Codes
5.3.1. MIP6-Request 5.2.1. MIP6-Request
The MIP6-Request (MIR), indicated by the Command-Code field set to The MIP6-Request (MIR), indicated by the Command-Code field set to
TBD and the 'R' bit set in the Command Flags field, is sent by the TBD and the 'R' bit set in the Command Flags field, is sent by the
HA, acting as a Diameter client, in order to request the HA, acting as a Diameter client, in order to request the
authentication and authorization of a MN. authentication and authorization of a MN.
Although the HA provides the Diameter server with a replay protection Although the HA provides the Diameter server with a replay protection
related information, the HA is responsible for the replay protection. related information, the HA is responsible for the replay protection.
The message format is shown below. The message format is shown below.
<MIP6-Request> ::= < Diameter Header: XXX, REQ, PXY > <MIP6-Request> ::= < Diameter Header: XXX, REQ, PXY >
< Session-ID > < Session-ID >
{ Auth-Application-Id } { Auth-Application-Id }
{ User-Name } { User-Name }
{ Destination-Realm } { Destination-Realm }
{ Origin-Host } { Origin-Host }
{ Origin-Realm } { Origin-Realm }
{ Auth-Request-Type }
[ Destination-Host ] [ Destination-Host ]
[ Origin-State-Id ] [ Origin-State-Id ]
[ NAS-Identifier ] [ NAS-Identifier ]
[ NAS-IP-Address ] [ NAS-IP-Address ]
[ NAS-IPv6-Address ] [ NAS-IPv6-Address ]
[ NAS-Port-Type ] [ NAS-Port-Type ]
[ Called-Station-Id ] [ Called-Station-Id ]
[ Calling-Station-Id ] [ Calling-Station-Id ]
[ MIP6-Feature-Vector ] [ MIP6-Feature-Vector ]
{ MIP6-Auth-Mode }
[ MIP-MN-AAA-SPI ] [ MIP-MN-AAA-SPI ]
[ MIP-MN-HA-SPI ] [ MIP-MN-HA-SPI ]
{ MIP-Mobile-Node-Address } 1*2{ MIP-Mobile-Node-Address }
{ MIP6-Agent-Info } { MIP6-Agent-Info }
[ MIP-Careof-Address ] { MIP-Careof-Address }
[ MIP-Authenticator ] [ MIP-Authenticator ]
[ MIP-MAC-Mobility-Data ] [ MIP-MAC-Mobility-Data ]
[ MIP-Timestamp ] [ MIP-Timestamp ]
[ QoS-Capability ] [ QoS-Capability ]
* [ QoS-Resources ] * [ QoS-Resources ]
[ Chargeable-User-Identity ] [ Chargeable-User-Identity ]
[ Service-Selection ] [ Service-Selection ]
[ Authorization-Lifetime ] [ Authorization-Lifetime ]
[ Auth-Session-State ] [ Auth-Session-State ]
* [ Proxy-Info ] * [ Proxy-Info ]
* [ Route-Record ] * [ Route-Record ]
* [ AVP ] * [ AVP ]
If the MN is both authenticated and authorized for the mobility
service, then he Auth-Request-Type AVP is set to the value
AUTHORIZE_AUTHENTICATE. This is the case when the MIP6-Auth-Mode is
set to the value MIP6_AUTH_MN_AAA.
5.3.2. MIP6-Answer 5.2.2. MIP6-Answer
The MIP6-Answer (MIA) message, indicated by the Command-Code field The MIP6-Answer (MIA) message, indicated by the Command-Code field
set to TBD and the 'R' bit cleared in the Command Flags field, is set to TBD and the 'R' bit cleared in the Command Flags field, is
sent by the Diameter server in response to the MIP6-Request message. sent by the Diameter server in response to the MIP6-Request message.
The User-Name MAY be included in the MIA if it is present in the MIR. The User-Name MAY be included in the MIA if it is present in the MIR.
The Result-Code AVP MAY contain one of the values defined in The Result-Code AVP MAY contain one of the values defined in
Section 7, in addition to the values defined in RFC 3588 [5]. Section 7, in addition to the values defined in RFC 3588 [5].
An MIA message with the Result-Code AVP set to DIAMETER_SUCCESS MUST An MIA message with the Result-Code AVP set to DIAMETER_SUCCESS MUST
include the MIP-Mobile-Node-Address AVP. include the MIP-Mobile-Node-Address AVP.
The message format is shown below. The message format is shown below.
<MIP6-Answer> ::= < Diameter Header: XXX, PXY > <MIP6-Answer> ::= < Diameter Header: XXX, PXY >
< Session-Id > < Session-Id >
{ Auth-Application-Id } { Auth-Application-Id }
{ Result-Code } { Result-Code }
{ Origin-Host } { Origin-Host }
{ Origin-Realm } { Origin-Realm }
[ Acct-Multi-Session-Id ] { Auth-Request-Type }
[ User-Name ] [ User-Name ]
[ Authorization-Lifetime ] [ Authorization-Lifetime ]
[ Auth-Session-State ] [ Auth-Session-State ]
[ Error-Message ] [ Error-Message ]
[ Error-Reporting-Host ] [ Error-Reporting-Host ]
[ Re-Auth-Request-Type ] [ Re-Auth-Request-Type ]
[ MIP6-Feature-Vector ] [ MIP6-Feature-Vector ]
[ MIP-Agent-Info ] [ MIP-Agent-Info ]
[ MIP-Mobile-Node-Address ] *2[ MIP-Mobile-Node-Address ]
[ MIP-MN-HA-MSA ] [ MIP-MN-HA-MSA ]
* [ QoS-Resources ] * [ QoS-Resources ]
[ Chargeable-User-Identity ] [ Chargeable-User-Identity ]
[ Origin-State-Id ] [ Origin-State-Id ]
* [ Proxy-Info ] * [ Proxy-Info ]
* [ Redirect-Host ] * [ Redirect-Host ]
[ Redirect-Host-Usage ] [ Redirect-Host-Usage ]
[ Redirect-Max-Cache-Time ] [ Redirect-Max-Cache-Time ]
* [ Failed-AVP ] * [ Failed-AVP ]
* [ AVP ] * [ AVP ]
6. AVPs 6. AVPs
To provide support for RFC 4285 [3] and for RFC 4877 [4] the AVPs in To provide support for RFC 4285 [3] and for RFC 4877 [4] the AVPs in
the following subsections are needed. RFC 3588, RFC 4004 and RFC the following subsections are needed. RFC 3588, RFC 4004 and RFC
4005 defined AVPs are reused whenever possible without changing the 4005 [9] defined AVPs are reused whenever possible without changing
existing semantics of those AVPs. the existing semantics of those AVPs.
+--------------------------+ +---------------------------+
| AVP Flag rules | | AVP Flag rules |
+----+-----+----+-----+----+ +-----+-----+----+-----+----+
AVP Defined | | |SHLD| MUST|MAY | AVP Defined | | |SHLD| MUST|MAY |
Attribute Name Code in Value Type |MUST| MAY | NOT| NOT|Encr| Attribute Name Code in Value Type |MUST| MAY | NOT| NOT|Encr|
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y | |MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y |
| Vector | | | | | | | Vector | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Mobile- | M | P | | V | Y | |MIP-Mobile- | M | P | | V | Y |
| Node-Address 334 RFC4004 Address | | | | | | | Node-Address 334 RFC4004 Address | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y | |MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|User-Name 1 RFC3588 UTF8String | M | P | | V | Y | |User-Name 1 RFC3588 UTF8String | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|Service- TBD 6.2 UTF8String | M | P | | V | Y | |Service- TBD 6.2 UTF8String | M | P | | V | Y |
| Selection | | | | | | | Selection | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|QoS-Capability TBD Note 2 Grouped | M | P | | V | Y | |QoS-Capability TBD Note 2 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|QoS-Resources TBD Note 2 Grouped | M | P | | V | Y | |QoS-Resources TBD Note 2 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MN-HA-MSA TBD 6.12. Grouped | M | P | | V | Y | |MIP-MN-HA-MSA TBD 6.12 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|Chargeable-User- OctetString| | M,P | | V | Y | |Chargeable-User- OctetString| M | P | | V | Y |
| Identity 89 6.19 | | | | | | | Identity 89 6.19 | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
AVPs for Mobile IPv6 IKE Application AVPs for Mobile IPv6 IKE Application
Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10]. Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10].
Note 2: The QoS-Capability and QoS-Resource AVPs are defined in Note 2: The QoS-Capability and QoS-Resource AVPs are defined in
Sections 4.1 and 4.3 of [11]. Sections 4.1 and 4.3 of [11].
Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10]. Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10].
+--------------------------+ +---------------------------+
| AVP Flag rules | | AVP Flag rules |
+----+-----+----+-----+----+ +-----+-----+----+-----+----+
AVP Section | | |SHLD| MUST|MAY | AVP Section | | |SHLD| MUST|MAY |
Attribute Name Code Defined Value Type |MUST| MAY | NOT| NOT|Encr| Attribute Name Code Defined Value Type |MUST| MAY | NOT| NOT|Encr|
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y | |MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y |
| Vector | | | | | | | Vector | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|User-Name 1 RFC3588 UTF8String | M | P | | V | Y | |User-Name 1 RFC3588 UTF8String | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|Service- TBD 6.2 UTF8String | M | P | | V | Y | |Service- TBD 6.2 UTF8String | M | P | | V | Y |
| Selection | | | | | | | Selection | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MN-AAA-SPI 341 RFC4004 Unsigned32 | | M,P | | V | Y | |MIP-MN-AAA-SPI 341 RFC4004 Unsigned32 | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MN-HA-SPI TBD 6.4 Unsigned32 | M | P | | V | Y | |MIP-MN-HA-SPI TBD 6.4 Unsigned32 | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Mobile- 333 RFC4004 Address | M | P | | V | Y | |MIP-Mobile- 333 RFC4004 Address | M | P | | V | Y |
| Node-Address | | | | | | | Node-Address | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y | |MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Careof- TBD 6.7 Address | M | P | | V | Y | |MIP-Careof- TBD 6.7 Address | M | P | | V | Y |
| Address | | | | | | | Address | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP- TBD 6.8 OctetString| | M,P | | V | Y | |MIP- TBD 6.8 OctetString| M | P | | V | Y |
| Authenticator | | | | | | | Authenticator | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MAC- TBD 6.9 OctetString| | M,P | | V | Y | |MIP-MAC- TBD 6.9 OctetString| M | P | | V | Y |
| Mobility-Data | | | | | | | Mobility-Data | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Session-Key 343 6.10 OctetString| M | P | | V | Y | |MIP-Session-Key 343 6.10 OctetString| M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MSA- 367 RFC4004 Unsigned32 | M | P | | V | Y | |MIP-MSA- 367 RFC4004 Unsigned32 | M | P | | V | Y |
| Lifetime | | | | | | | Lifetime | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-MN-HA-MSA TBD 6.12 Grouped | M | P | | V | Y | |MIP-MN-HA-MSA TBD 6.12 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Algorithm- 345 6.13 Enumerated | M | P | | V | Y | |MIP-Algorithm- 345 6.13 Enumerated | M | P | | V | Y |
| Type | | | | | | | Type | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Replay-Mode 346 6.14 Enumerated | M | P | | V | Y | |MIP-Replay-Mode 346 6.14 Enumerated | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP-Timestamp TBD 6.16 Time | | M,P | | V | Y | |MIP-Timestamp TBD 6.16 Time | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|QoS-Capability TBD Note 2 Grouped | | M,P | | M | Y | |QoS-Capability TBD Note 2 Grouped | M | P | | M | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|QoS-Resources TBD Note 2 Grouped | | M,P | | V | Y | |QoS-Resources TBD Note 2 Grouped | M | P | | V | Y |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|Chargeable-User- OctetString| | M,P | | V | Y | |Chargeable-User- OctetString| M | P | | V | Y |
| Identity 89 6.19 | | | | | | | Identity 89 6.19 | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
|MIP6-Auth-Mode TBD 6.20 Enumerated | M | P | | V | Y |
+-----------------------------------------+-----+-----+----+-----+----+
|Rest of the AVPs RFC3588 | M | P | | V | Y | |Rest of the AVPs RFC3588 | M | P | | V | Y |
|in the MIR & MIA RFC4005 | | | | | | |in the MIR & MIA RFC4005 | | | | | |
|excluding *[AVP] | | | | | | |excluding *[AVP] | | | | | |
+-----------------------------------------+----+-----+----+-----+----+ +-----------------------------------------+-----+-----+----+-----+----+
AVPs for the Mobile IPv6 Auth Application AVPs for the Mobile IPv6 Auth Application
Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10]. Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10].
Note 2: The QoS-Capability and QoS-Resource AVPs are defined in Note 2: The QoS-Capability and QoS-Resource AVPs are defined in
Sections 4.1 and 4.3 of [11]. Sections 4.1 and 4.3 of [11].
Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10]. Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10].
6.1. User-Name AVP 6.1. User-Name AVP
skipping to change at page 23, line 36 skipping to change at page 21, line 47
Mobile IPv6 Authentication Protocol is used, then the Service- Mobile IPv6 Authentication Protocol is used, then the Service-
Selection AVP contains the string extracted from the Service Selection AVP contains the string extracted from the Service
Selection Mobility Option [20], if available in the received BU. Selection Mobility Option [20], if available in the received BU.
6.3. MIP-MN-AAA-SPI AVP 6.3. MIP-MN-AAA-SPI AVP
The MIP-MN-AAA-SPI AVP (AVP Code 341) is of type Unsigned32 and The MIP-MN-AAA-SPI AVP (AVP Code 341) is of type Unsigned32 and
contains an SPI code extracted from the Mobility Message contains an SPI code extracted from the Mobility Message
Authentication Option included in the received BU message. The HA Authentication Option included in the received BU message. The HA
includes this AVP in the MIR message when the MN-AAA Mobility Message includes this AVP in the MIR message when the MN-AAA Mobility Message
Authentication Option is available in the received BU. The HA sets Authentication Option is available in the received BU (and the MIP6-
the 'M'-bit for this AVP when the Diameter server is expected to Auth-Mode AVP is set to value MIP6_AUTH_MN_AAA).
return the key material required for the calculation and validation
of the Mobile IPv6 MN-HA Authentication Option.
This AVP is re-used from [12]. This AVP is re-used from [12].
6.4. MIP-MN-HA-SPI AVP 6.4. MIP-MN-HA-SPI AVP
The MIP-MN-HA-SPI AVP (AVP Code TBD) is of type Unsigned32 and The MIP-MN-HA-SPI AVP (AVP Code TBD) is of type Unsigned32 and
contains an SPI code which can be used with other parameters for contains an SPI code which can be used with other parameters for
identifying the security association required for the validation of identifying the security association required for the validation of
the Mobile IPv6 MN-HA Authentication Option. the Mobile IPv6 MN-HA Authentication Option.
skipping to change at page 24, line 50 skipping to change at page 23, line 11
The MIP-Careof-Address AVP (AVP Code TBD) is of type Address and The MIP-Careof-Address AVP (AVP Code TBD) is of type Address and
contains the IPv6 Care-of Address of the Mobile Node. The HA contains the IPv6 Care-of Address of the Mobile Node. The HA
extracts this IP address from the received BU message. extracts this IP address from the received BU message.
6.8. MIP-Authenticator AVP 6.8. MIP-Authenticator AVP
The MIP-Authenticator AVP (AVP Code TBD) is of type OctetString and The MIP-Authenticator AVP (AVP Code TBD) is of type OctetString and
contains the Authenticator Data from the received BU message. The HA contains the Authenticator Data from the received BU message. The HA
extracts this data from the MN-AAA Mobility Message Authentication extracts this data from the MN-AAA Mobility Message Authentication
Option included in the received BU message. The HA includes this AVP Option included in the received BU message. The HA includes this AVP
in the MIR message and sets the 'M'-bit when the Diameter server is in the MIR message and sets the Diameter server is expected to return
expected to return the key material required for the calculation and the key material required for the calculation and validation of the
validation of the Mobile IPv6 MN-HA Authentication Option. Mobile IPv6 MN-HA Authentication Option (and the MIP6-Auth-Mode AVP
is set to value MIP6_AUTH_MN_AAA).
6.9. MIP-MAC-Mobility-Data AVP 6.9. MIP-MAC-Mobility-Data AVP
The MIP-MAC-Mobility-Data AVP (AVP Code TBD) is of type OctetString The MIP-MAC-Mobility-Data AVP (AVP Code TBD) is of type OctetString
and contains the calculated MAC_Mobility_Data, as defined in [3]. and contains the calculated MAC_Mobility_Data, as defined in [3].
The HA includes this AVP in the MIR message when the MN-AAA Mobility The HA includes this AVP in the MIR message when the MN-AAA Mobility
Message Authentication Option is available in the received BU. The Message Authentication Option is available in the received BU and the
HA sets the 'M'-bit for this AVP when the Diameter server is expected Diameter server is expected to return the key material required for
to return the key material required for the calculation and the calculation and validation of the Mobile IPv6 MN-HA
validation of the Mobile IPv6 MN-HA Authentication Option. Authentication Option (and the MIP6-Auth-Mode AVP is set to value
MIP6_AUTH_MN_AAA).
6.10. MIP-Session-Key AVP 6.10. MIP-Session-Key AVP
The MIP-Session-Key AVP (AVP Code 343) is of type OctetString and The MIP-Session-Key AVP (AVP Code 343) is of type OctetString and
contains the MN-HA shared secret (i.e., the session key) for the contains the MN-HA shared secret (i.e., the session key) for the
associated Mobile IPv6 MH-HA authentication option. When the associated Mobile IPv6 MH-HA authentication option. When the
Diameter server computes the session key it is placed in this AVP. Diameter server computes the session key it is placed in this AVP.
The MIP-Session-Key AVP may also be used to convey a pre-shared
secret when IKEv2 is used with PSK-based initiator authentication.
This AVP is re-used from [12]. This AVP is re-used from [12].
6.11. MIP-MSA-Lifetime AVP 6.11. MIP-MSA-Lifetime AVP
The MIP-MSA-Lifetime AVP (AVP Code 367) is of type Unsigned32 and The MIP-MSA-Lifetime AVP (AVP Code 367) is of type Unsigned32 and
represents the period of time (in seconds) for which the session key represents the period of time (in seconds) for which the session key
(see Section 6.10) is valid. The associated session key MUST NOT be (see Section 6.10) is valid. The associated session key MUST NOT be
used if the lifetime has expired. used if the lifetime has expired.
This AVP is re-used from [12]. This AVP is re-used from [12].
skipping to change at page 28, line 5 skipping to change at page 26, line 17
will fail all possible subsequent attempts to use MCoA because of will fail all possible subsequent attempts to use MCoA because of
subscription or operator policy. subscription or operator policy.
6.16. MIP-Timestamp AVP 6.16. MIP-Timestamp AVP
The MIP-Timestamp AVP (AVP Code TBD) is of type Time and may contain The MIP-Timestamp AVP (AVP Code TBD) is of type Time and may contain
the timestamp value from the Mobility message replay protection the timestamp value from the Mobility message replay protection
option, defined in [3]. The HA extracts this value from the received option, defined in [3]. The HA extracts this value from the received
BU message, if available. The HA includes this AVP in the MIR BU message, if available. The HA includes this AVP in the MIR
message when the MN-AAA Mobility Message Authentication Option is message when the MN-AAA Mobility Message Authentication Option is
available in the received BU. The HA sets the 'M'-bit for this AVP available in the received BU and the Diameter server is expected to
when the Diameter server is expected to return the key material return the key material required for the calculation and validation
required for the calculation and validation of the Mobile IPv6 MN-HA of the Mobile IPv6 MN-HA Authentication Option (and the MIP6-Auth-
Authentication Option. Mode AVP is set to value MIP6_AUTH_MN_AAA).
6.17. QoS-Capability AVP 6.17. QoS-Capability AVP
The QoS-Capability AVP is defined in [11] and contains a list of The QoS-Capability AVP is defined in [11] and contains a list of
supported Quality of Service profiles. The HA sets the 'M'-bit for supported Quality of Service profiles.
this AVP in the request message if it requires the Diameter server to
understand and support QoS treatment for MNs. In all other occasions
the HA MUST NOT set the 'M'-bit.
6.18. QoS-Resources AVP 6.18. QoS-Resources AVP
The QoS-Resources AVP is defined in [11] and provides QoS and packet The QoS-Resources AVP is defined in [11] and provides QoS and packet
filtering capabilities. The HA sets the 'M'-bit for this AVP in the filtering capabilities.
request message if it requires the Diameter server to understand and
support QoS treatment for MNs. The Diameter server sets the 'M'-bit
for this AVP only if the corresponding request message had the
'M'-bit set for the QoS-Resources AVP. In all other occasions the HA
or the Diameter MUST NOT set the 'M'-bit.
6.19. Chargeable-User-Identity AVP 6.19. Chargeable-User-Identity AVP
The Chargeable-User-Identity AVP (AVP code 89) is of type OctetString The Chargeable-User-Identity AVP (AVP code 89) is of type OctetString
and contains an unique temporary handle of the user. The Chargeable- and contains an unique temporary handle of the user. The Chargeable-
User-Identity is defined in RFC 4372 [14]. User-Identity is defined in RFC 4372 [14].
The HA sets the 'M'-bit for the Chargeable-User-Id AVP if the 6.20. MIP6-Auth-Mode AVP
Diameter server is required to understand this AVP and the HA expects
the Diameter server to return a meaningful identity back to the HA.
The Diameter server sets the 'M'-bit for the returned Chargeable-
User-Id AVP only if the corresponding request message had the 'M'-bit
set for the Chargeable-User-Id AVP. In all other occasions the HA or
the Diameter MUST NOT set the 'M'-bit.
6.20. Coupled Accounting Model Accounting AVPs The MIP6-Auth-Mode (AVP Code TBD) is of type Enumerated and contains
information of the used Mobile IPv6 Authentication Protocol mode.
This specification defines only one value MIP6_AUTH_MN_AAA and the
corresponding AAA interactions when MN-AAA security association is
used to authenticate the Binding Update. When the MIP6-Auth_Mode AVP
is set to the value of MIP6_AUTH_MN_AAA, the Auth-Request-Type AVP
MUST be set to the value of AUTHORIZE_AUTHENTICATE.
If the Diameter server does not support the Mobile IPv6
Authentication Protocol use mode proposed by the HA, then the
Diameter server MUST fail the authentication/authorization and set
the Result-Code AVP to the value of DIAMETER_ERROR_AUTH_MODE.
6.21. Coupled Accounting Model Accounting AVPs
Diameter Mobile IPv6 application is used in the case of the coupled Diameter Mobile IPv6 application is used in the case of the coupled
account model. Diameter Mobile IPv4 application [12] accounting AVPs account model. Diameter Mobile IPv4 application [12] accounting AVPs
are reused in this document. The following AVPs SHOULD be included are reused in this document. The following AVPs SHOULD be included
in the accounting request message: in the accounting request message:
o Accounting-Input-Octets: Number of octets in IP packets received o Accounting-Input-Octets: Number of octets in IP packets received
from the mobile node. from the mobile node.
o Accounting-Output-Octets: Number of octets in IP packets sent by o Accounting-Output-Octets: Number of octets in IP packets sent by
the mobile node the mobile node
skipping to change at page 30, line 8 skipping to change at page 28, line 18
that the MN MUST be switched to another HA. that the MN MUST be switched to another HA.
7.2. Permanent Failures 7.2. Permanent Failures
Errors that fall within the permanent failures category are used to Errors that fall within the permanent failures category are used to
inform the peer that the request failed and SHOULD NOT be attempted inform the peer that the request failed and SHOULD NOT be attempted
again. again.
DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION (Status Code TBD) DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION (Status Code TBD)
This error is used by the Diameter server to inform the peer that This error code is used by the Diameter server to inform the peer
the requested Mobile IPv6 session keys could not be delivered via that the requested Mobile IPv6 session keys could not be delivered
a security association. via a security association.
DIAMETER_ERROR_MIP6_AUTH_MODE (Status Code TBD)
This error code is used by the Diameter server to inform the peer
that the requested Mobile IPv6 Authentication Protocol usage mode
is not supported.
8. AVP Occurrence Tables 8. AVP Occurrence Tables
The following tables present the AVPs defined in this document and The following tables present the AVPs defined in this document and
their occurrences in Diameter messages. Note that AVPs that can only their occurrences in Diameter messages. Note that AVPs that can only
be present within a Grouped AVP are not represented in this table. be present within a Grouped AVP are not represented in this table.
The table uses the following symbols: The table uses the following symbols:
0: 0:
skipping to change at page 30, line 36 skipping to change at page 29, line 5
Zero or more instances of the AVP MAY be present in the message. Zero or more instances of the AVP MAY be present in the message.
0-1: 0-1:
Zero or one instance of the AVP MAY be present in the message. Zero or one instance of the AVP MAY be present in the message.
1: 1:
One instance of the AVP MUST be present in the message. One instance of the AVP MUST be present in the message.
8.1. AAR, AAA, DER, DEA, MIR and MIA AVP/Command-Code Table 8.1. DER, DEA, MIR and MIA AVP/Command-Code Table
+-----------------------------------+
+-----------------------+
| Command-Code | | Command-Code |
|-----+-----+-----+-----+-----+-----+ |-----+-----+-----+-----+
AVP Name | AAR | AAA | DER | DEA | MIR | MIA | AVP Name | DER | DEA | MIR | MIA |
-------------------------------|-----+-----|-----+-----+-----+-----+ -------------------------------|-----+-----+-----+-----+
MIP6-Feature-Vector | 0-1 | 0-1 | 0-1 | 0-1 | 0-1 | 0-1 | MIP6-Feature-Vector | 0-1 | 0-1 | 0-1 | 0-1 |
MIP-Mobile-Node-Address | 1-2 | 0-2 | 1-2 | 0-2 | 1 | 0-1 | MIP-Mobile-Node-Address | 1-2 | 0-2 | 1-2 | 0-2 |
MIP-MN-AAA-SPI | 0 | 0 | 0 | 0 | 0-1 | 0 | MIP-MN-AAA-SPI | 0 | 0 | 0-1 | 0 |
MIP-MN-HA-SPI | 0 | 0 | 0 | 0 | 0-1 | 0 | MIP-MN-HA-SPI | 0 | 0 | 0-1 | 0 |
MIP6-Agent-Info | 1-2 | 0-2 | 1-2 | 0-2 | 1 | 0-1 | MIP6-Agent-Info | 1 | 0-1 | 1 | 0-1 |
MIP-Careof-Address | 0 | 0 | 0 | 0 | 0-1 | 0 | MIP-Careof-Address | 0 | 0 | 0-1 | 0 |
MIP-Authenticator | 0 | 0 | 0 | 0 | 0-1 | 0 | MIP-Authenticator | 0 | 0 | 0-1 | 0 |
MIP-MAC-Mobility-Data | 0 | 0 | 0 | 0 | 0-1 | 0 | MIP-MAC-Mobility-Data | 0 | 0 | 0-1 | 0 |
MIP-MSA-Lifetime | 0 | 0 | 0 | 0 | 0 | 1 | MIP-MSA-Lifetime | 0 | 0 | 0 | 1 |
MIP-MN-HA-MSA | 0 | 0-1 | 0 | 0 | 0 | 0-1 | MIP-MN-HA-MSA | 0 | 0 | 0 | 0-1 |
MIP-Timestamp | 0 | 0 | 0 | 0 | 0-1 | 0-1 | MIP-Timestamp | 0 | 0 | 0-1 | 0-1 |
User-Name | 0-1 | 0-1 | 0-1 | 0-1 | 1 | 0-1 | User-Name | 0-1 | 0-1 | 1 | 0-1 |
Service-Selection | 0-1 | 0 | 0-1 | 0 | 0-1 | 0 | Service-Selection | 0-1 | 0 | 0-1 | 0 |
QoS-Resources | *0 | *0 | *0 | *0 | *0 | *0 | QoS-Resources | *0 | *0 | *0 | *0 |
QoS-Capability | 0-1 | 0 | 0-1 | 0 | 0-1 | 0 | QoS-Capability | 0-1 | 0 | 0-1 | 0 |
Chargeable-User-Identity | 0-1 | 0-1 | 0-1 | 0-1 | 0-1 | 0-1 | Chargeable-User-Identity | 0-1 | 0-1 | 0-1 | 0-1 |
+-----+-----+-----+-----+-----+-----+ MIP6-Auth-Mode | 0 | 0 | 1 | 0 |
+-----+-----+-----+-----+
8.2. Coupled Accounting Model AVP Table 8.2. Coupled Accounting Model AVP Table
The table in this section is used to represent which AVPs defined in The table in this section is used to represent which AVPs defined in
this document are to be present in the Accounting messages, as this document are to be present in the Accounting messages, as
defined in [5]. defined in [5].
+-------------+ +-------------+
| Command-Code| | Command-Code|
|------+------+ |------+------+
Attribute Name | ACR | ACA | Attribute Name | ACR | ACA |
-------------------------------------|------+------+ -------------------------------------|------+------+
Accounting-Input-Octets | 0-1 | 0-1 | Accounting-Input-Octets | 0-1 | 0-1 |
Accounting-Input-Packets | 0-1 | 0-1 | Accounting-Input-Packets | 0-1 | 0-1 |
Accounting-Output-Octets | 0-1 | 0-1 | Accounting-Output-Octets | 0-1 | 0-1 |
Accounting-Output-Packets | 0-1 | 0-1 | Accounting-Output-Packets | 0-1 | 0-1 |
Acct-Multi-Session-Id | 0-1 | 0-1 | Acct-Multi-Session-Id | 0-1 | 0-1 |
Acct-Session-Time | 0-1 | 0-1 | Acct-Session-Time | 0-1 | 0-1 |
MIP6-Feature-Vector | 0-1 | 0-1 | MIP6-Feature-Vector | 0-1 | 0-1 |
MIP6-Agent-Info | 0-1 | 0-1 | MIP6-Agent-Info | 0-1 | 0-1 |
MIP-Mobile-Node-Address | 0-1 | 0-1 | MIP-Mobile-Node-Address | 0-2 | 0-2 |
Event-Timestamp | 0-1 | 0 | Event-Timestamp | 0-1 | 0 |
MIP-Careof-Address | 0-1 | 0 | MIP-Careof-Address | 0-1 | 0 |
Service-Selection | 0-1 | 0 | Service-Selection | 0-1 | 0 |
QoS-Capability | *0 | *0 | QoS-Capability | *0 | *0 |
QoS-Resources | *0 | *0 | QoS-Resources | *0 | *0 |
Chargeable-User-Identity | 0-1 | 0 | Chargeable-User-Identity | 0-1 | 0 |
-------------------------------------|------+------+ -------------------------------------|------+------+
9. IANA Considerations 9. IANA Considerations
skipping to change at page 33, line 12 skipping to change at page 31, line 12
This specification requires IANA to register the following new AVPs This specification requires IANA to register the following new AVPs
from the AVP Code namespace defined in [5]. from the AVP Code namespace defined in [5].
o MIP-Careof-Address o MIP-Careof-Address
o MIP-Authenticator o MIP-Authenticator
o MIP-MAC-Mobility-Data o MIP-MAC-Mobility-Data
o MIP-Timestamp o MIP-Timestamp
o MIP-MN-HA-SPI o MIP-MN-HA-SPI
o MIP-MN-HA-MSA o MIP-MN-HA-MSA
o Service-Selection o Service-Selection
o MIP6-Auth-Mode
The AVPs are defined in Section 6. The AVPs are defined in Section 6.
9.3. Result-Code AVP Values 9.3. Result-Code AVP Values
This specification requests IANA to allocate new values to the This specification requests IANA to allocate new values to the
Result-Code AVP (AVP Code 268) namespace defined in [5]. See Result-Code AVP (AVP Code 268) namespace defined in [5]. See
Section 7 for the assignment of the namespace in this specification. Section 7 for the assignment of the namespace in this specification.
Result-Code | Value Result-Code | Value
----------------------------------------------+------ ----------------------------------------------+------
DIAMETER_SUCCESS_RELOCATE_HA | TBD DIAMETER_SUCCESS_RELOCATE_HA | TBD
DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION | TBD DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION | TBD
DIAMETER_ERROR_MIP6_AUTH_MODE | TBD
9.4. Application Identifier 9.4. Application Identifier
This specification requires IANA to allocate two new values "Diameter This specification requires IANA to allocate two new values "Diameter
Mobile IPv6 IKE" and "Diameter Mobile IPv6 Auth" from the Application Mobile IPv6 IKE" and "Diameter Mobile IPv6 Auth" from the Application
Identifier namespace defined in [5]. Identifier namespace defined in [5].
Application Identifier | Value Application Identifier | Value
-----------------------------------+------ -----------------------------------+------
Diameter Mobile IPv6 IKE (MIP6I) | TBD Diameter Mobile IPv6 IKE (MIP6I) | TBD
Diameter Mobile IPv6 Auth (MIP6A) | TBD Diameter Mobile IPv6 Auth (MIP6A) | TBD
9.5. Namespaces 9.5. Namespaces
This specification defines a new value to the Mobility Capability This specification defines new values to the "Mobility Capability"
registry (see [10]) for use with the MIP6-Feature-Vector AVP: registry (see [10]) for use with the MIP6-Feature-Vector AVP:
Token | Value | Description Token | Value | Description
---------------------------------+----------------------+------------ ---------------------------------+----------------------+------------
MIP6_SPLIT | 0x0000000100000000 | RFC TBD MIP6_SPLIT | 0x0000000100000000 | RFC TBD
RO_SUPPORTED | 0x0000000200000000 | RFC TBD RO_SUPPORTED | 0x0000000200000000 | RFC TBD
USER_TRAFFIC_ENCRYPTION | 0x0000000400000000 | RFC TBD USER_TRAFFIC_ENCRYPTION | 0x0000000400000000 | RFC TBD
VPN_GW_MODE | 0x0000000800000000 | RFC TBD VPN_GW_MODE | 0x0000000800000000 | RFC TBD
MCOA_SUPPORTED | 0x0000001000000000 | RFC TBD MCOA_SUPPORTED | 0x0000001000000000 | RFC TBD
IANA is requested to create a new registry "MIP6 Authentication Mode"
registry for use with the enumerated MIP6-Auth-Mode AVP. The
registry will initially contain the following values:
Token | Value | Description
---------------------------------------------+----------+------------
MIP6_AUTH_MN_AAA | 1 | RFC TBD
Allocation of new values follow the example policies described in
[22] new values for the MIP6-Auth-Mode AVP will be assigned based on
the "Specification Required" policy.
9.6. Mobile IPv6 Status Codes 9.6. Mobile IPv6 Status Codes
This specification defines new Mobile IPv6 [1] Status Code values. This specification defines new Mobile IPv6 [1] Status Code values.
The Status Code must be allocated from the range 0-127: The Status Code must be allocated from the range 0-127:
Status Code | Value | Description Status Code | Value | Description
----------------------------------------+---------------+------------ ----------------------------------------+---------------+------------
ACCEPTED_BUT_NO_ROUTE_OPTIMIZATION | is set to TBD | RFC TBD ACCEPTED_BUT_NO_ROUTE_OPTIMIZATION | is set to TBD | RFC TBD
ACCEPTED_BUT_NO_TRAFFIC_ENCRYPTION | is set to TBD | RFC TBD ACCEPTED_BUT_NO_TRAFFIC_ENCRYPTION | is set to TBD | RFC TBD
ACCEPTED_BUT_NO_MCOA | is set to TBD | RFC TBD ACCEPTED_BUT_NO_MCOA | is set to TBD | RFC TBD
10. Security Considerations 10. Security Considerations
The security considerations for the Diameter interaction required to The security considerations for the Diameter interaction required to
accomplish the split scenario are described in in [2]. Additionally, accomplish the split scenario are described in in [2]. Additionally,
the security considerations of the Diameter Base protocol [5], the security considerations of the Diameter Base protocol [5],
Diameter EAP application [7] are applicable to this document. This Diameter EAP application [7] are applicable to this document.
document does not introduce new security vulnerabilities.
The Diameter messages may be transported between the HA and the
Diameter server via one or more AAA brokers or Diameter agents. In
this case the HA to the Diameter server AAA communication rely on the
security properties of the intermediate AAA brokers and Diameter
agents (such as proxies).
11. Acknowledgements 11. Acknowledgements
The authors would like to thank Jari Arkko, Tolga Asversen, Pasi The authors would like to thank Jari Arkko, Tolga Asversen, Pasi
Eronen, Santiago Zapata Hernandez, Anders Kristensen, Avi Lior, John Eronen, Santiago Zapata Hernandez, Anders Kristensen, Avi Lior, John
Loughney, Ahmad Muhanna, Behcet Sarikaya, Basavaraj Patil, Vijay Loughney, Ahmad Muhanna, Behcet Sarikaya, Basavaraj Patil, Vijay
Devarapalli, Lionel Morand, Domagoj Premec, Semyon Mizikovsky and Devarapalli, Lionel Morand, Domagoj Premec, Semyon Mizikovsky and
Yoshihiro Ohba for all the useful discussions. Ahmad Muhanna Yoshihiro Ohba for all the useful discussions. Ahmad Muhanna
provided a detailed review of the document in August 2007. provided a detailed review of the document in August 2007.
skipping to change at page 35, line 15 skipping to change at page 33, line 29
12.1. Normative References 12.1. Normative References
[1] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in [1] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in
IPv6", RFC 3775, June 2004. IPv6", RFC 3775, June 2004.
[2] Giaretta, G., Kempf, J., and V. Devarapalli, "Mobile IPv6 [2] Giaretta, G., Kempf, J., and V. Devarapalli, "Mobile IPv6
Bootstrapping in Split Scenario", RFC 5026, October 2007. Bootstrapping in Split Scenario", RFC 5026, October 2007.
[3] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury, [3] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury,
"Authentication Protocol for Mobile IPv6", "Authentication Protocol for Mobile IPv6",
draft-ietf-mip6-rfc4285bis-02 (work in progress), draft-ietf-mip6-rfc4285bis-03 (work in progress), July 2008.
December 2007.
[4] Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with [4] Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with
IKEv2 and the Revised IPsec Architecture", RFC 4877, IKEv2 and the Revised IPsec Architecture", RFC 4877,
April 2007. April 2007.
[5] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. Arkko, [5] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. Arkko,
"Diameter Base Protocol", RFC 3588, September 2003. "Diameter Base Protocol", RFC 3588, September 2003.
[6] Bradner, S., "Key words for use in RFCs to Indicate Requirement [6] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
skipping to change at page 35, line 41 skipping to change at page 34, line 8
[8] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol", [8] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol",
RFC 4306, December 2005. RFC 4306, December 2005.
[9] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, "Diameter [9] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, "Diameter
Network Access Server Application", RFC 4005, August 2005. Network Access Server Application", RFC 4005, August 2005.
[10] Korhonen, J., Bournelle, J., Tschofenig, H., Perkins, C., and [10] Korhonen, J., Bournelle, J., Tschofenig, H., Perkins, C., and
K. Chowdhury, "Diameter Mobile IPv6: Support for Network Access K. Chowdhury, "Diameter Mobile IPv6: Support for Network Access
Server to Diameter Server Interaction", Server to Diameter Server Interaction",
draft-ietf-dime-mip6-integrated-09 (work in progress), draft-ietf-dime-mip6-integrated-10 (work in progress),
May 2008. September 2008.
[11] Korhonen, J., Tschofenig, H., Arumaithurai, M., Jones, M., and [11] Korhonen, J., Tschofenig, H., Arumaithurai, M., Jones, M., and
A. Lior, "Quality of Service Attributes for Diameter", A. Lior, "Quality of Service Attributes for Diameter",
draft-ietf-dime-qos-attributes-07 (work in progress), draft-ietf-dime-qos-attributes-07 (work in progress),
June 2008. June 2008.
[12] Calhoun, P., Johansson, T., Perkins, C., Hiller, T., and P. [12] Calhoun, P., Johansson, T., Perkins, C., Hiller, T., and P.
McCann, "Diameter Mobile IPv4 Application", RFC 4004, McCann, "Diameter Mobile IPv4 Application", RFC 4004,
August 2005. August 2005.
skipping to change at page 36, line 21 skipping to change at page 34, line 36
12.2. Informative References 12.2. Informative References
[15] Patel, A. and G. Giaretta, "Problem Statement for bootstrapping [15] Patel, A. and G. Giaretta, "Problem Statement for bootstrapping
Mobile IPv6 (MIPv6)", RFC 4640, September 2006. Mobile IPv6 (MIPv6)", RFC 4640, September 2006.
[16] Giaretta, G., Guardini, I., Demaria, E., Bournelle, J., and R. [16] Giaretta, G., Guardini, I., Demaria, E., Bournelle, J., and R.
Lopez, "AAA Goals for Mobile IPv6", Lopez, "AAA Goals for Mobile IPv6",
draft-ietf-mext-aaa-ha-goals-01 (work in progress), May 2008. draft-ietf-mext-aaa-ha-goals-01 (work in progress), May 2008.
[17] Soliman, H., "Mobile IPv6 Support for Dual Stack Hosts and [17] Soliman, H., "Mobile IPv6 Support for Dual Stack Hosts and
Routers", draft-ietf-mext-nemo-v4traversal-04 (work in Routers", draft-ietf-mext-nemo-v4traversal-05 (work in
progress), June 2008. progress), July 2008.
[18] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury, [18] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury,
"Mobile Node Identifier Option for Mobile IPv6 (MIPv6)", "Mobile Node Identifier Option for Mobile IPv6 (MIPv6)",
RFC 4283, November 2005. RFC 4283, November 2005.
[19] Fajardo, V., Asveren, T., Tschofenig, H., McGregor, G., and J. [19] Fajardo, V., Asveren, T., Tschofenig, H., McGregor, G., and J.
Loughney, "Diameter Applications Design Guidelines", Loughney, "Diameter Applications Design Guidelines",
draft-ietf-dime-app-design-guide-06 (work in progress), draft-ietf-dime-app-design-guide-07 (work in progress),
January 2008. July 2008.
[20] Korhonen, J., Nilsson, U., and V. Devarapalli, "Service [20] Korhonen, J., Nilsson, U., and V. Devarapalli, "Service
Selection for Mobile IPv6", RFC 5149, February 2008. Selection for Mobile IPv6", RFC 5149, February 2008.
[21] Wakikawa, R., Devarapalli, V., Ernst, T., and K. Nagami, [21] Wakikawa, R., Devarapalli, V., Ernst, T., and K. Nagami,
"Multiple Care-of Addresses Registration", "Multiple Care-of Addresses Registration",
draft-ietf-monami6-multiplecoa-08 (work in progress), May 2008. draft-ietf-monami6-multiplecoa-09 (work in progress),
August 2008.
[22] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", BCP 26, RFC 5226, May 2008.
Authors' Addresses Authors' Addresses
Jouni Korhonen Jouni Korhonen
TeliaSonera TeliaSonera
P.O.Box 970 P.O.Box 970
Sonera FIN-00051 Sonera FIN-00051
Finland Finland
Email: jouni.korhonen@teliasonera.com Email: jouni.korhonen@teliasonera.com
 End of changes. 98 change blocks. 
344 lines changed or deleted 307 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/