idnits 2.17.1 draft-ietf-dime-mip6-split-13.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 23. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 1475. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1486. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1493. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1499. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 27, 2008) is 5659 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 3775 (ref. '1') (Obsoleted by RFC 6275) ** Downref: Normative reference to an Informational draft: draft-ietf-mip6-rfc4285bis (ref. '3') ** Obsolete normative reference: RFC 3588 (ref. '5') (Obsoleted by RFC 6733) ** Obsolete normative reference: RFC 4306 (ref. '8') (Obsoleted by RFC 5996) ** Obsolete normative reference: RFC 4005 (ref. '9') (Obsoleted by RFC 7155) == Outdated reference: A later version (-12) exists of draft-ietf-dime-mip6-integrated-10 == Outdated reference: A later version (-15) exists of draft-ietf-dime-qos-attributes-07 == Outdated reference: A later version (-10) exists of draft-ietf-mext-nemo-v4traversal-05 == Outdated reference: A later version (-28) exists of draft-ietf-dime-app-design-guide-07 -- Obsolete informational reference (is this intentional?): RFC 5226 (ref. '21') (Obsoleted by RFC 8126) Summary: 6 errors (**), 0 flaws (~~), 5 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Diameter Maintenance and J. Korhonen 3 Extensions (DIME) TeliaSonera 4 Internet-Draft H. Tschofenig 5 Intended status: Standards Track Nokia Siemens Networks 6 Expires: April 30, 2009 J. Bournelle 7 Orange Labs 8 G. Giaretta 9 Qualcomm 10 M. Nakhjiri 11 Motorola 12 October 27, 2008 14 Diameter Mobile IPv6: Support for Home Agent to Diameter Server 15 Interaction 16 draft-ietf-dime-mip6-split-13.txt 18 Status of this Memo 20 By submitting this Internet-Draft, each author represents that any 21 applicable patent or other IPR claims of which he or she is aware 22 have been or will be disclosed, and any of which he or she becomes 23 aware will be disclosed, in accordance with Section 6 of BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF), its areas, and its working groups. Note that 27 other groups may also distribute working documents as Internet- 28 Drafts. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 The list of current Internet-Drafts can be accessed at 36 http://www.ietf.org/ietf/1id-abstracts.txt. 38 The list of Internet-Draft Shadow Directories can be accessed at 39 http://www.ietf.org/shadow.html. 41 This Internet-Draft will expire on April 30, 2009. 43 Copyright Notice 45 Copyright (C) The IETF Trust (2008). 47 Abstract 49 Mobile IPv6 deployments may want to bootstrap their operations 50 dynamically based on an interaction between the Home Agent and the 51 Diameter server of the Mobile Service Provider (MSP). This document 52 specifies the interaction between a Mobile IP Home Agent and that 53 Diameter server. 55 Several different mechanisms for authenticating a Mobile Node are 56 supported. The usage of the Internet Key Exchange v2 (IKEv2) 57 protocol allows different mechanisms, such as the Extensible 58 Authentication Protocol (EAP), certificates and pre-shared secrets to 59 be used. Furthermore, another method makes use of the Mobile IPv6 60 Authentication Protocol. In addition to authentication and 61 authorization, the configuration of Mobile IPv6 specific parameters 62 and accounting is specified in this document. 64 Table of Contents 66 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 67 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 7 68 3. Application Identifiers . . . . . . . . . . . . . . . . . . . 7 69 4. Protocol Description . . . . . . . . . . . . . . . . . . . . . 8 70 4.1. Support for Mobile IPv6 with IKEv2 and EAP . . . . . . . . 8 71 4.2. Support for the Mobile IPv6 Authentication Protocol . . . 11 72 4.3. Mobile IPv6 Session Management . . . . . . . . . . . . . . 12 73 4.3.1. Session-Termination-Request . . . . . . . . . . . . . 12 74 4.3.2. Session-Termination-Answer . . . . . . . . . . . . . . 12 75 4.3.3. Abort-Session-Request . . . . . . . . . . . . . . . . 12 76 4.3.4. Abort-Session-Answer . . . . . . . . . . . . . . . . . 13 77 4.4. Accounting for Mobile IPv6 services . . . . . . . . . . . 13 78 4.4.1. Accounting-Request . . . . . . . . . . . . . . . . . . 13 79 4.4.2. Accounting-Answer . . . . . . . . . . . . . . . . . . 14 80 5. Command Codes . . . . . . . . . . . . . . . . . . . . . . . . 14 81 5.1. Command Code for Mobile IPv6 with IKEv2 and EAP . . . . . 14 82 5.1.1. Diameter-EAP-Request . . . . . . . . . . . . . . . . . 14 83 5.1.2. Diameter-EAP-Answer . . . . . . . . . . . . . . . . . 15 84 5.2. Command Codes for Mobile IPv6 Authentication Protocol 85 Support . . . . . . . . . . . . . . . . . . . . . . . . . 16 86 5.2.1. MIP6-Request . . . . . . . . . . . . . . . . . . . . . 17 87 5.2.2. MIP6-Answer . . . . . . . . . . . . . . . . . . . . . 18 88 6. AVPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 89 6.1. User-Name AVP . . . . . . . . . . . . . . . . . . . . . . 21 90 6.2. Service-Selection AVP . . . . . . . . . . . . . . . . . . 21 91 6.3. MIP-MN-AAA-SPI AVP . . . . . . . . . . . . . . . . . . . . 22 92 6.4. MIP-MN-HA-SPI AVP . . . . . . . . . . . . . . . . . . . . 22 93 6.5. MIP-Mobile-Node-Address AVP . . . . . . . . . . . . . . . 22 94 6.6. MIP6-Agent-Info AVP . . . . . . . . . . . . . . . . . . . 22 95 6.7. MIP-Careof-Address AVP . . . . . . . . . . . . . . . . . . 23 96 6.8. MIP-Authenticator AVP . . . . . . . . . . . . . . . . . . 23 97 6.9. MIP-MAC-Mobility-Data AVP . . . . . . . . . . . . . . . . 23 98 6.10. MIP-Session-Key AVP . . . . . . . . . . . . . . . . . . . 23 99 6.11. MIP-MSA-Lifetime AVP . . . . . . . . . . . . . . . . . . . 23 100 6.12. MIP-MN-HA-MSA AVP . . . . . . . . . . . . . . . . . . . . 24 101 6.13. MIP-Algorithm-Type AVP . . . . . . . . . . . . . . . . . . 24 102 6.14. MIP-Replay-Mode AVP . . . . . . . . . . . . . . . . . . . 24 103 6.15. MIP6-Feature-Vector AVP . . . . . . . . . . . . . . . . . 24 104 6.16. MIP-Timestamp AVP . . . . . . . . . . . . . . . . . . . . 25 105 6.17. QoS-Capability AVP . . . . . . . . . . . . . . . . . . . . 25 106 6.18. QoS-Resources AVP . . . . . . . . . . . . . . . . . . . . 25 107 6.19. Chargeable-User-Identity AVP . . . . . . . . . . . . . . . 25 108 6.20. MIP6-Auth-Mode AVP . . . . . . . . . . . . . . . . . . . . 25 109 6.21. Coupled Accounting Model Accounting AVPs . . . . . . . . . 26 110 7. Result-Code AVP Values . . . . . . . . . . . . . . . . . . . . 26 111 7.1. Success . . . . . . . . . . . . . . . . . . . . . . . . . 27 112 7.2. Permanent Failures . . . . . . . . . . . . . . . . . . . . 27 113 8. AVP Occurrence Tables . . . . . . . . . . . . . . . . . . . . 27 114 8.1. DER, DEA, MIR and MIA AVP/Command-Code Table . . . . . . . 28 115 8.2. Coupled Accounting Model AVP Table . . . . . . . . . . . . 28 116 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 29 117 9.1. Command Codes . . . . . . . . . . . . . . . . . . . . . . 29 118 9.2. AVP Codes . . . . . . . . . . . . . . . . . . . . . . . . 29 119 9.3. Result-Code AVP Values . . . . . . . . . . . . . . . . . . 30 120 9.4. Application Identifier . . . . . . . . . . . . . . . . . . 30 121 9.5. Namespaces . . . . . . . . . . . . . . . . . . . . . . . . 30 122 10. Security Considerations . . . . . . . . . . . . . . . . . . . 31 123 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 31 124 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 32 125 12.1. Normative References . . . . . . . . . . . . . . . . . . . 32 126 12.2. Informative References . . . . . . . . . . . . . . . . . . 33 127 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 33 128 Intellectual Property and Copyright Statements . . . . . . . . . . 35 130 1. Introduction 132 Performing the Mobile IPv6 protocol [1], requires the Mobile Node 133 (MN) to own a Home Address (HoA) and to have an assigned Home Agent 134 (HA) to the MN. The MN needs to register with the HA in order to 135 enable its reachability and mobility, when away from its home link. 136 The registration process itself may require an establishment of IPsec 137 security associations (SA) and cryptographic material between the MN 138 and HA. Alternatively, the registration process may be secured using 139 a mobility message authentication option, which enables IPv6 mobility 140 in a MN without having to establish an IPsec SA with its HA. 141 Providing the collection of home address, HA address and keying 142 material is generally referred to as the Mobile IPv6 bootstrapping 143 problem [15]. The purpose of this specification is to provide 144 Diameter support for the interaction between the HA and the 145 Authentication, Authorization, and Accounting (AAA) server. This 146 specification satisfies the requirements defined in [16] for the 147 bootstrapping problem in the split scenario [2] and also specifies 148 Diameter support for the Authentication Protocol for Mobile IPv6 [3]. 149 The Diameter support defined in this specification also applies to 150 Dual Stack Mobile IPv6 [17]. 152 From a Mobility Service Provider (MSP) perspective, it is important 153 to verify that the MN is authenticated and authorized to utilize 154 Mobile IPv6 service, and is accounted for those. Only when the MN is 155 authenticated and authorized, the MSP allows the bootstrapping of 156 Mobile IPv6 parameters. Thus, prior to processing the Mobile IPv6 157 registrations, the HA, participates in the authentication of the MN 158 to verify the MN's identity. The HA also participates in the Mobile 159 IPv6 authorization process involving the Diameter infrastructure. 160 The HA, due to its role in traffic forwarding, may also perform 161 accounting for the Mobile IPv6 service provided to the MN. 163 This document enables the following functionality: 165 Authentication: Asserting or helping with assertion of the 166 correctness of the MN identity. As a Diameter client supporting 167 the new Diameter Mobile IPv6 application, the HA may need to 168 support more than one authentication type depending on the 169 environment. Although the authentication is performed by the AAA 170 server there is an impact for the HA as different set of command 171 codes are needed for the respective authentication procedures. 173 Authorization: The HA must verify that the user is authorized to the 174 Mobile IPv6 service using the assistance of the MSP Diameter 175 servers. This is accomplished through the use of new Diameter 176 applications specifically designed for performing Mobile IPv6 177 authorization decisions. This document defines required AAA 178 procedures and requires the HA to support them and to participate 179 in this authorization signaling. 181 Accounting: For accounting purposes and capacity planning, it is 182 required of the HA to provide accounting report to the Diameter 183 infrastructure and thus to support the related Diameter accounting 184 procedures. 186 Session Management: The management of the mobility services may 187 require the AAA to abort or the HA to terminate the Mobile IPv6 188 service before the binding expires. This document defines 189 procedures for the AAA based session management. 191 Figure 1 depicts the reference architecture for this document. 193 +--------+ 194 |Diameter| 195 |Server | 196 +--------+ 197 ^ 198 Back-End | Diameter Mobile IPv6 199 Protocol | HA<->AAA Server 200 Support | Interaction 201 | (this document) 202 v 203 +---------+ +---------------+ 204 | Mobile | Front-End Protocol |Home Agent / | 205 | Node |<-------------------->|Diameter Client| 206 +---------+ IKEv2 or RFC 4285 +---------------+ 208 Figure 1: Architecture Overview 210 Mobile IPv6 signaling between the MN and the HA can be protected 211 using two different mechanisms, namely using IPsec or Authentication 212 Protocol for Mobile IPv6 [3]. For these two approaches several 213 different authentication and key exchange solutions are available. 214 When IPsec is used to protect Mobile IPv6 signaling messages, IKEv2 215 is used [4]. IKEv2 supports EAP-based initiator authentication, 216 certificates and pre-shared secrets. Alternatively, Authentication 217 Protocol for Mobile IPv6 uses a mechanism that is very similar to the 218 one used for protecting Mobile IPv4 signaling messages. 220 The ability to use different credentials and methods to authenticate 221 the MN has an impact on the AAA interactions between the HA (acting 222 as a Diameter client) and the Diameter Server. This specification is 223 only limited to the following MN authentication methods: 225 o IKEv2 usage with EAP 226 o Mobile IPv6 Authentication Protocol 228 New authentication mechanisms may be added later by separate 229 specifications. 231 For accounting of Mobile IPv6 services provided to the MN, this 232 specification uses the Diameter Base Protocol accounting defined in 233 RFC 3588 [5]. 235 2. Terminology 237 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 238 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 239 document are to be interpreted as described in RFC 2119 [6]. 241 The Mobile IPv6 bootstrapping terminology is taken from [15]. 242 Additional terminology is defined below: 244 Authentication, Authorization, and Accounting (AAA): 246 AAA protocol based on Diameter [5] with required EAP support [7]. 248 Home AAA (AAAH): 250 An authentication, authorization and accounting server located in 251 user's home network i.e., in the home realm. 253 3. Application Identifiers 255 This specification defines two new Diameter applications and their 256 respective Application Identifiers: 258 Diameter Mobile IPv6 IKE (MIP6I) TBD by IANA 259 Diameter Mobile IPv6 Auth (MIP6A) TBD by IANA 261 The MIP6I Application Identifier is used when the MN is authenticated 262 and authorized using IKEv2. The MIP6A Application Identifier is used 263 when the MN is authenticated and authorized using Mobile IPv6 264 Authentication Protocol. 266 Mobile IPv6 related accounting generated by the HA uses either MIP6I 267 or MIP6A Application Identifier in the case of coupled accounting 268 model. Diameter Base Accounting Application Identifier (value of 3) 269 is used in the case of split accounting model. Refer Section 4.4 for 270 more information regarding the accounting models. 272 4. Protocol Description 274 4.1. Support for Mobile IPv6 with IKEv2 and EAP 276 The use of IKEv2 with EAP between the MN and the HA allows the AAA to 277 authenticate the MN. When EAP is used with IKEv2, the Diameter EAP 278 application logic and procedures, as defined in [7], are re-used. 279 EAP methods that do not establish a shared key SHOULD NOT be used, as 280 they are subject to a number of man-in-the-middle attacks as stated 281 in Section 2.16 and Section 5 of RFC 4306 [8]. AVPs specific to 282 Mobile IPv6 bootstrapping are added to the EAP application commands. 284 Figure 3 shows the message flow involved during the authentication 285 phase when EAP is used. 287 Mobile Home Diameter 288 Node Agent Server 289 | | | 290 | HDR, SAi1, KEi, Ni (1) | | 291 |-------------------------------->| | 292 | | | 293 | HDR, SAr1, KEr, Nr, [CERTREQ](2)| | 294 |<--------------------------------| | 295 | | | 296 | HDR, SK{IDi,[CERTREQ,] [IDr,] | | 297 | [CP(CFG_REQUEST),] | | 298 | SAi2, TSi, TSr} (3) | DER (EAP-Response) (4) + | 299 |-------------------------------->| MIP6 Bootstrapping AVPs | 300 | |------------------------->| 301 | | | 302 | | DEA (EAP-Request) (5) | 303 | HDR, SK{IDr, [CERT,] AUTH, EAP} |<-------------------------| 304 |<------------------------------- | | 305 | | | 306 | HDR, SK{EAP} | | 307 |-------------------------------->| DER (EAP-Response) | 308 | |------------------------->| 309 | | | 310 | | DEA (EAP-Request) | 311 | HDR, SK{EAP-Request} |<-------------------------| 312 |<--------------------------------| | 313 | | | 314 | HDR, SK{EAP-Response} | | 315 |-------------------------------->| DER (EAP-Response) | 316 | |------------------------->| 317 | ... | ... | 318 | | | 319 | | DEA (EAP-Success) + | 320 | | MIP6 Bootstrapping AVPs | 321 | HDR, SK{EAP-Success} |<-------------------------| 322 |<--------------------------------| | 323 | | | 324 | HDR, SK{AUTH} | | 325 |-------------------------------->| | 326 | | | 327 | HDR, SK{AUTH, [CP(CFG_REPLY,] | | 328 | SAr2, TSi, TSr} | | 329 |<--------------------------------| | 330 | | | 332 Figure 3: Mobile IPv6 bootstrapping using IKEv2 and EAP 334 The MN and the HA start the interaction with an IKE_SA_INIT exchange. 336 In this phase cryptographic algorithms are negotiated, nonces and 337 Diffie-Hellman parameters are exchanged. Message (3) starts the 338 IKE_AUTH phase. This second phase authenticates the previous 339 messages, exchanges identities and certificates and establishes the 340 first CHILD_SA. It is used to mutually authenticate the MN (acting 341 as an IKEv2 Initiator) and the HA (acting as an IKEv2 Responder). 342 The identity of the user/MN is provided in the IDi field. The MN 343 indicates its willingness to be authenticated via EAP by omitting the 344 AUTH field in message (3) (see Section 2.16 of [8]). 346 As part of the authentication process, the MN MAY request a Home- 347 Address, a Home Prefix or suggests one, see [4], using a CFG_REQUEST 348 payload in the message (3). 350 The HA extracts the IDi field from the message (3) and sends a 351 Diameter-EAP-Request (DER) message (4) towards the authenticating 352 Diameter server. The EAP-Payload AVP contains a EAP-Response/ 353 Identity with the identity extracted from the IDi field. 355 This message is routed to the MN's Diameter server/EAP server. The 356 Diameter server selects the EAP method and replies with the Diameter- 357 EAP-Answer (DEA) Message. Depending on the type of EAP method 358 chosen, a number of DER and DEA messages carry the method specific 359 exchanges between the MN and the Diameter server/EAP server. 361 At the end of the EAP authentication phase, the Diameter server 362 indicates the result of the authentication in the Result-Code AVP and 363 provides the corresponding EAP packet (EAP Success or EAP Failure). 364 The last IKEv2 message sent by the HA contains the Home Address or 365 the Home Prefix. In the latter case, a CREATE_CHILD_SA exchange is 366 necessary to setup IPsec SAs for Mobile IPv6 signaling. 368 In some deployment scenarios, the HA may also acts as a IKEv2 369 Responder for IPsec VPN access. A problem in this case is that the 370 IKEv2 responder may not know if IKEv2 is used for Mobile IPv6 service 371 or for IPsec VPN access service. A network operator needs to be 372 aware of this limitation. The MN may provide a hint of the intended 373 service, for example, by using different identities in the IKE_AUTH 374 message for the IPsec VPN service and Mobile IPv6 service. However, 375 the use of different identities during the IKEv2 negotiation is 376 deployment specific. Another possibility is to make the distinction 377 on the MN subscription basis. In this case the Diameter server can 378 inform the HA during the IKEv2 negotiation whether the MN is 379 provisioned with an IPsec VPN access service or Mobile IPv6 service. 381 Eventually, when the HA receives a Binding Update (BU), the HA 382 authenticates and authorizes the MN. It is RECOMMENDED that the HA 383 sends an accounting request message every time it receives a BU. 385 4.2. Support for the Mobile IPv6 Authentication Protocol 387 Figure 4 shows the message sequence between the MN, the HA and the 388 Diameter server during the registration when Mobile IPv6 389 Authentication Protocol is used. A BU and a Binding Acknowledgement 390 (BA) messages are used in the binding registration process. 392 Receiving a BU at the HA initiates a MIP6-Request to be sent to the 393 Diameter server. The Diameter server in turn responds with a MIP6- 394 Answer. The HA may assign a Home Address to the MN and provide it to 395 the Diameter server in the MIP-Mobile-Node-Address AVP. 397 According to [3] the MN uses the Mobile Node Identifier Option, 398 specifically the MN-NAI mobility option (as defined in [18]) to 399 identify itself. The HA MUST copy the MN-NAI mobility option value 400 to the User-Name AVP in the subsequent request messages. 402 The procedure described in this specification for the Mobile IPv6 403 Authentication Protocol is only needed for the initially received BU 404 for which the HA does not have an existing security association. 405 When the HA receives subsequent BUs, they are processed locally in 406 the HA. It is RECOMMENDED that the HA sends an accounting request 407 message every time it receives a Binding Update. However, the HA MAY 408 re-authorize the MN with the Diameter server at any time depending on 409 the deployment and the local policy. 411 In some architectures and network deployments the MN-HA security 412 associations may be established as a result of a successful network 413 access authentication. In such deployments, both MN and Diameter 414 server share the keying material required for computation and 415 validation of the MN-HA Authentication Option, and a Security 416 Parameter Index (SPI) for indexing an appropriate security 417 association. Upon receiving a BU with a MN-HA Authentication Option, 418 the HA retrieves the keying material required for the computation and 419 validation of the MN-HA Authentication Option from the Diameter 420 server. The Diameter request message sent by the HA must contain 421 enough information (such as SPI, MN-NAI, etc) so that the Diameter 422 server is able to locate the matching MN-HA security association and 423 return correct keying material back to the HA. 425 This specification assumes that in the case Mobile IPv6 426 Authentication Protocol is used, the MN-AAA option is included in the 427 BU. Other possible uses of Mobile IPv6 Authentication Protocol are 428 out of scope of this specification and would require a new 429 specification to describe the detailed behavior of the HA-AAAH 430 interface. However, the HA-AAAH interface has been designed in a way 431 that the Mobile IPv6 Authentication Protocol may also be used without 432 the MN-AAA option. 434 Mobile Home Diameter 435 Node Agent Server 436 | | | 437 | | MIP6-Request + MIP6 | 438 | Binding Update | Bootstrapping AVPs | 439 |------------------------------------>|-------------------->| 440 | (Mobile Node Identifier Option, | | 441 | Mobility Message Replay Protection | | 442 | Option, Authentication Option) | | 443 | | | 444 | | MIP6-Answer + MIP6 | 445 | Binding Acknowledgement | Bootstrapping AVPs | 446 |<------------------------------------|<--------------------| 447 | (Mobile Node Identifier Option | | 448 | Mobility Message Replay Protection | | 449 | Option, Authentication Option) | | 451 Figure 4: Mobile IPv6 Bootstrapping using the Mobile IPv6 452 Authentication Protocol 454 4.3. Mobile IPv6 Session Management 456 The Diameter server may maintain state or may be stateless. This is 457 indicated in the Auth-Session-State AVP (or its absence). The HA 458 MUST support the Authorization Session State Machine defined in [5]. 459 Moreover, the following four commands may be exchanged between the HA 460 and the Diameter server. 462 4.3.1. Session-Termination-Request 464 The Session-Termination-Request (STR) message [5] is sent by the HA 465 to inform the Diameter server that an authorized session is being 466 terminated. 468 4.3.2. Session-Termination-Answer 470 The Session-Termination-Answer (STA) message [5] is sent by the 471 Diameter server to acknowledge the notification that the session has 472 been terminated. 474 4.3.3. Abort-Session-Request 476 The Abort-Session-Request (ASR) message [5] is sent by the Diameter 477 server to terminate the session. This fulfills one of the 478 requirement described in [16]. 480 4.3.4. Abort-Session-Answer 482 The Abort-Session-Answer (ASA) message [5] is sent by the Home Agent 483 in response to an ASR message. 485 4.4. Accounting for Mobile IPv6 services 487 The HA MUST be able act as a Diameter client collecting accounting 488 records needed for service control and charging. The HA MUST support 489 the accounting procedures (specifically the command codes mentioned 490 below) and the Accounting Session State Machine as defined in [5]. 491 The command codes, exchanged between the HA and Diameter server for 492 accounting purposes, are provided in the following subsections. 494 The Diameter application design guideline [19] defines two separate 495 models for accounting: 497 Split accounting model: 499 According to this model, the accounting messages use the Diameter 500 Base Accounting Application Identifier (value of 3). Since 501 accounting is treated as an independent application, accounting 502 commands may be routed separately from the rest of application 503 messages and thus the accounting messages generally end up in a 504 central accounting server. Since Diameter Mobile IPv6 application 505 does not define its own unique accounting commands, this is the 506 preferred choice, since it permits use of centralized accounting 507 for several applications. 509 Coupled accounting model: 511 In this model, the accounting messages will use either the Mobile 512 IPv6 Split or the Mobile IPv6 Auth Application Identifiers. This 513 means that accounting messages will be routed like any other 514 Mobile IPv6 application messages. This requires the Diameter 515 server in charge of Mobile IPv6 application to handle the 516 accounting records (e.g., sends them to a proper accounting 517 server). 519 As mentioned above, the preferred choice is to use the split 520 accounting model and thus to choose Diameter Base Accounting 521 Application Identifier (value of 3) for accounting messages. 523 4.4.1. Accounting-Request 525 The Accounting-Request command [5] is sent by the HA to the Diameter 526 server to exchange accounting information regarding the MN with the 527 Diameter server. 529 4.4.2. Accounting-Answer 531 The Accounting-Answer command [5] is sent by the Diameter server to 532 the HA to acknowledge receiving an Accounting-Request. 534 5. Command Codes 536 5.1. Command Code for Mobile IPv6 with IKEv2 and EAP 538 For the use of Mobile IPv6 with IKEv2 and EAP this document reuses 539 the Diameter EAP application [7] commands: Diameter-EAP-Request (DER) 540 and Diameter-EAP-Answer (DEA). This specification extends the 541 existing DER and DEA command ABNFs with a number AVPs to support 542 Mobile IPv6 split scenario bootstrapping. Other than new additional 543 AVPs and the corresponding additions to the command ABNFs, the 544 Diameter EAP application command ABNFs remain unchanged. 546 Command-Name Abbrev. Code Reference Application 547 --------------------------------------------------------------------- 548 Diameter-EAP-Request DER 268 RFC 4072 Diameter Mobile IPv6 IKE 549 Diameter-EAP-Answer DEA 268 RFC 4072 Diameter Mobile IPv6 IKE 551 Figure 5: Command Codes 553 5.1.1. Diameter-EAP-Request 555 The Diameter-EAP-Request (DER) message, indicated by the Command-Code 556 field set to 268 and the 'R' bit set in the Command Flags field, is 557 sent by the HA to the Diameter server to initiate a Mobile IPv6 558 service authentication and authorization procedure. The 559 Application-ID field of the Diameter Header MUST be set to the 560 Diameter Mobile IPv6 IKE Application ID (value of TDB). 562 ::= < Diameter Header: 268, REQ, PXY > 563 < Session-Id > 564 { Auth-Application-Id } 565 { Origin-Host } 566 { Origin-Realm } 567 { Destination-Realm } 568 { Auth-Request-Type } 569 [ Destination-Host ] 570 [ NAS-Identifier ] 571 [ NAS-IP-Address ] 572 [ NAS-IPv6-Address ] 573 [ NAS-Port-Type ] 574 [ User-Name ] 575 ... 576 { EAP-Payload } 577 ... 578 [ MIP6-Feature-Vector ] 579 [ MIP6-Agent-Info ] 580 *2[ MIP-Mobile-Node-Address ] 581 [ Chargeable-User-Identity ] 582 [ Service-Selection ] 583 [ QoS-Capability ] 584 * [ QoS-Resources ] 585 ... 586 * [ AVP ] 588 Mobile IPv6 bootstrapping AVPs are only included in the first DER 589 message send by the HA. The subsequent DER messages required by the 590 EAP-method do not need to include any Mobile IPv6 bootstrapping AVPs. 591 The MN is both authenticated and authorized for the mobility service 592 during the EAP authentication. Thus the Auth-Request-Type AVP is set 593 to the value AUTHORIZE_AUTHENTICATE. 595 5.1.2. Diameter-EAP-Answer 597 The Diameter-EAP-Answer (DEA) message, indicated by the Command-Code 598 field set to 268 and 'R' bit cleared in the Command Flags field, is 599 sent in response to the Diameter-EAP-Request message (DER). The 600 Application-Id field in the Diameter message header MUST be set to 601 the Diameter Mobile IPv6 IKE Application-Id (value of TBD). If the 602 Mobile IPv6 authentication procedure was successful then the response 603 MAY include any set of bootstrapping AVPs. 605 ::= < Diameter Header: 268, PXY > 606 < Session-Id > 607 { Auth-Application-Id } 608 { Auth-Request-Type } 609 { Result-Code } 610 { Origin-Host } 611 { Origin-Realm } 612 [ User-Name ] 613 [ EAP-Payload ] 614 [ EAP-Reissued-Payload ] 615 [ EAP-Master-Session-Key ] 616 [ EAP-Key-Name ] 617 [ Multi-Round-Time 618 ... 619 *2[ MIP-Mobile-Node-Address ] 620 [ MIP6-Feature-Vector ] 621 [ MIP6-Agent-Info ] 622 * [ QoS-Resources ] 623 [ Chargeable-User-Identity ] 624 ... 625 * [ AVP ] 627 If the EAP-based authentication and the authorization for the 628 mobility service succeeds, then the Mobile IPv6 bootstrapping AVPs 629 are included in the last DEA message that also carries the EAP- 630 Success EAP payload. The other DEA messages required by the used 631 EAP-method do not include any Mobile IPv6 bootstrapping AVPs. 633 5.2. Command Codes for Mobile IPv6 Authentication Protocol Support 635 This section defines the commands that are used for support with the 636 Mobile IPv6 Authentication Protocol. 638 There are multiple ways of deploying and utilizing Mobile IPv6 639 Authentication Protocol, especially regarding the associated AAA 640 interactions. In order to support multiple deployment models this 641 specification defines the MIP6-Auth-Mode AVP that in the request 642 message tells the mode that the HA supports. This specification 643 defines a method that requires the use of the MN-AAA option with the 644 Mobile IPv6 Authentication Protocol. 646 Command-Name Abbrev. Code Reference Application 647 --------------------------------------------------------------------- 648 MIP6-Request MIR TBD 5.3.1 Diameter Mobile IPv6 Auth 649 MIP6-Answer MIA TBD 5.3.2 Diameter Mobile IPv6 Auth 651 Command Codes 653 5.2.1. MIP6-Request 655 The MIP6-Request (MIR), indicated by the Command-Code field set to 656 TBD and the 'R' bit set in the Command Flags field, is sent by the 657 HA, acting as a Diameter client, in order to request the 658 authentication and authorization of a MN. 660 Although the HA provides the Diameter server with a replay protection 661 related information, the HA is responsible for the replay protection. 663 The message format is shown below. 665 ::= < Diameter Header: XXX, REQ, PXY > 666 < Session-ID > 667 { Auth-Application-Id } 668 { User-Name } 669 { Destination-Realm } 670 { Origin-Host } 671 { Origin-Realm } 672 { Auth-Request-Type } 673 [ Destination-Host ] 674 [ Origin-State-Id ] 675 [ NAS-Identifier ] 676 [ NAS-IP-Address ] 677 [ NAS-IPv6-Address ] 678 [ NAS-Port-Type ] 679 [ Called-Station-Id ] 680 [ Calling-Station-Id ] 681 [ MIP6-Feature-Vector ] 682 { MIP6-Auth-Mode } 683 [ MIP-MN-AAA-SPI ] 684 [ MIP-MN-HA-SPI ] 685 1*2{ MIP-Mobile-Node-Address } 686 { MIP6-Agent-Info } 687 { MIP-Careof-Address } 688 [ MIP-Authenticator ] 689 [ MIP-MAC-Mobility-Data ] 690 [ MIP-Timestamp ] 691 [ QoS-Capability ] 692 * [ QoS-Resources ] 693 [ Chargeable-User-Identity ] 694 [ Service-Selection ] 695 [ Authorization-Lifetime ] 696 [ Auth-Session-State ] 697 * [ Proxy-Info ] 698 * [ Route-Record ] 699 * [ AVP ] 701 If the MN is both authenticated and authorized for the mobility 702 service, then he Auth-Request-Type AVP is set to the value 703 AUTHORIZE_AUTHENTICATE. This is the case when the MIP6-Auth-Mode is 704 set to the value MIP6_AUTH_MN_AAA. 706 5.2.2. MIP6-Answer 708 The MIP6-Answer (MIA) message, indicated by the Command-Code field 709 set to TBD and the 'R' bit cleared in the Command Flags field, is 710 sent by the Diameter server in response to the MIP6-Request message. 711 The User-Name MAY be included in the MIA if it is present in the MIR. 712 The Result-Code AVP MAY contain one of the values defined in 713 Section 7, in addition to the values defined in RFC 3588 [5]. 715 An MIA message with the Result-Code AVP set to DIAMETER_SUCCESS MUST 716 include the MIP-Mobile-Node-Address AVP. 718 The message format is shown below. 720 ::= < Diameter Header: XXX, PXY > 721 < Session-Id > 722 { Auth-Application-Id } 723 { Result-Code } 724 { Origin-Host } 725 { Origin-Realm } 726 { Auth-Request-Type } 727 [ User-Name ] 728 [ Authorization-Lifetime ] 729 [ Auth-Session-State ] 730 [ Error-Message ] 731 [ Error-Reporting-Host ] 732 [ Re-Auth-Request-Type ] 733 [ MIP6-Feature-Vector ] 734 [ MIP-Agent-Info ] 735 *2[ MIP-Mobile-Node-Address ] 736 [ MIP-MN-HA-MSA ] 737 * [ QoS-Resources ] 738 [ Chargeable-User-Identity ] 739 [ Origin-State-Id ] 740 * [ Proxy-Info ] 741 * [ Redirect-Host ] 742 [ Redirect-Host-Usage ] 743 [ Redirect-Max-Cache-Time ] 744 * [ Failed-AVP ] 745 * [ AVP ] 747 6. AVPs 749 To provide support for RFC 4285 [3] and for RFC 4877 [4] the AVPs in 750 the following subsections are needed. RFC 3588, RFC 4004 and RFC 751 4005 [9] defined AVPs are reused whenever possible without changing 752 the existing semantics of those AVPs. 754 +---------------------------+ 755 | AVP Flag rules | 756 +-----+-----+----+-----+----+ 757 AVP Defined | | |SHLD| MUST|MAY | 758 Attribute Name Code in Value Type |MUST | MAY | NOT| NOT|Encr| 759 +-----------------------------------------+-----+-----+----+-----+----+ 760 |MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y | 761 | Vector | | | | | | 762 +-----------------------------------------+-----+-----+----+-----+----+ 763 |MIP-Mobile- | M | P | | V | Y | 764 | Node-Address 334 RFC4004 Address | | | | | | 765 +-----------------------------------------+-----+-----+----+-----+----+ 766 |MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y | 767 +-----------------------------------------+-----+-----+----+-----+----+ 768 |User-Name 1 RFC3588 UTF8String | M | P | | V | Y | 769 +-----------------------------------------+-----+-----+----+-----+----+ 770 |Service- TBD 6.2 UTF8String | M | P | | V | Y | 771 | Selection | | | | | | 772 +-----------------------------------------+-----+-----+----+-----+----+ 773 |QoS-Capability TBD Note 2 Grouped | M | P | | V | Y | 774 +-----------------------------------------+-----+-----+----+-----+----+ 775 |QoS-Resources TBD Note 2 Grouped | M | P | | V | Y | 776 +-----------------------------------------+-----+-----+----+-----+----+ 777 |MIP-MN-HA-MSA TBD 6.12 Grouped | M | P | | V | Y | 778 +-----------------------------------------+-----+-----+----+-----+----+ 779 |Chargeable-User- OctetString| M | P | | V | Y | 780 | Identity 89 6.19 | | | | | | 781 +-----------------------------------------+-----+-----+----+-----+----+ 783 AVPs for Mobile IPv6 IKE Application 785 Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10]. 787 Note 2: The QoS-Capability and QoS-Resource AVPs are defined in 788 Sections 4.1 and 4.3 of [11]. 790 Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10]. 792 +---------------------------+ 793 | AVP Flag rules | 794 +-----+-----+----+-----+----+ 795 AVP Section | | |SHLD| MUST|MAY | 796 Attribute Name Code Defined Value Type |MUST | MAY | NOT| NOT|Encr| 797 +-----------------------------------------+-----+-----+----+-----+----+ 798 |MIP6-Feature- TBD Note 1 Unsigned64 | M | P | | V | Y | 799 | Vector | | | | | | 800 +-----------------------------------------+-----+-----+----+-----+----+ 801 |User-Name 1 RFC3588 UTF8String | M | P | | V | Y | 802 +-----------------------------------------+-----+-----+----+-----+----+ 803 |Service- TBD 6.2 UTF8String | M | P | | V | Y | 804 | Selection | | | | | | 805 +-----------------------------------------+-----+-----+----+-----+----+ 806 |MIP-MN-AAA-SPI 341 RFC4004 Unsigned32 | M | P | | V | Y | 807 +-----------------------------------------+-----+-----+----+-----+----+ 808 |MIP-MN-HA-SPI TBD 6.4 Unsigned32 | M | P | | V | Y | 809 +-----------------------------------------+-----+-----+----+-----+----+ 810 |MIP-Mobile- 333 RFC4004 Address | M | P | | V | Y | 811 | Node-Address | | | | | | 812 +-----------------------------------------+-----+-----+----+-----+----+ 813 |MIP6-Agent-Info TBD Note 3 Grouped | M | P | | V | Y | 814 +-----------------------------------------+-----+-----+----+-----+----+ 815 |MIP-Careof- TBD 6.7 Address | M | P | | V | Y | 816 | Address | | | | | | 817 +-----------------------------------------+-----+-----+----+-----+----+ 818 |MIP- TBD 6.8 OctetString| M | P | | V | Y | 819 | Authenticator | | | | | | 820 +-----------------------------------------+-----+-----+----+-----+----+ 821 |MIP-MAC- TBD 6.9 OctetString| M | P | | V | Y | 822 | Mobility-Data | | | | | | 823 +-----------------------------------------+-----+-----+----+-----+----+ 824 |MIP-Session-Key 343 6.10 OctetString| M | P | | V | Y | 825 +-----------------------------------------+-----+-----+----+-----+----+ 826 |MIP-MSA- 367 RFC4004 Unsigned32 | M | P | | V | Y | 827 | Lifetime | | | | | | 828 +-----------------------------------------+-----+-----+----+-----+----+ 829 |MIP-MN-HA-MSA TBD 6.12 Grouped | M | P | | V | Y | 830 +-----------------------------------------+-----+-----+----+-----+----+ 831 |MIP-Algorithm- 345 6.13 Enumerated | M | P | | V | Y | 832 | Type | | | | | | 833 +-----------------------------------------+-----+-----+----+-----+----+ 834 |MIP-Replay-Mode 346 6.14 Enumerated | M | P | | V | Y | 835 +-----------------------------------------+-----+-----+----+-----+----+ 836 |MIP-Timestamp TBD 6.16 Time | M | P | | V | Y | 837 +-----------------------------------------+-----+-----+----+-----+----+ 838 |QoS-Capability TBD Note 2 Grouped | M | P | | M | Y | 839 +-----------------------------------------+-----+-----+----+-----+----+ 840 |QoS-Resources TBD Note 2 Grouped | M | P | | V | Y | 841 +-----------------------------------------+-----+-----+----+-----+----+ 842 |Chargeable-User- OctetString| M | P | | V | Y | 843 | Identity 89 6.19 | | | | | | 844 +-----------------------------------------+-----+-----+----+-----+----+ 845 |MIP6-Auth-Mode TBD 6.20 Enumerated | M | P | | V | Y | 846 +-----------------------------------------+-----+-----+----+-----+----+ 847 |Rest of the AVPs RFC3588 | M | P | | V | Y | 848 |in the MIR & MIA RFC4005 | | | | | | 849 |excluding *[AVP] | | | | | | 850 +-----------------------------------------+-----+-----+----+-----+----+ 852 AVPs for the Mobile IPv6 Auth Application 854 Note 1: The MIP6-Feature-Vector is defined in Section 4.7.4 of [10]. 856 Note 2: The QoS-Capability and QoS-Resource AVPs are defined in 857 Sections 4.1 and 4.3 of [11]. 859 Note 3: The MIP6-Agent-Info is defined in Section 4.5.1 of [10]. 861 6.1. User-Name AVP 863 The User-Name AVP (AVP Code 1) is of type UTF8String and contains an 864 NAI extracted from the MN-NAI mobility option included in the 865 received BU message. Alternatively, the NAI can be extracted from 866 the IKEv2 IDi payload included in the IKE_AUTH message sent by the 867 IKE initiator. 869 6.2. Service-Selection AVP 871 The Service-Selection AVP (AVP Code TBD) is of type UTF8String and 872 contains the name of the service or the external network that the 873 mobility service should be associated with. In the scope of this 874 specification the value can extracted from the IKEv2 IDr payload, if 875 available in the IKE_AUTH message sent by the IKE initiator. 876 Alternatively, if the Mobile IPv6 Authentication Protocol is used, 877 then the Service-Selection AVP contains the string extracted from the 878 Service Selection Mobility Option [20], if available in the received 879 BU. Future specification may define additional ways to populate the 880 Service-Selection AVP with the required information. 882 This specification uses the Service-Selection AVP only in the 883 messages sent from the Diameter client to the Diameter Server. 884 However, the AVP is also available to be used in messages sent from 885 the Diameter server to the Diameter client. 887 6.3. MIP-MN-AAA-SPI AVP 889 The MIP-MN-AAA-SPI AVP (AVP Code 341) is of type Unsigned32 and 890 contains an SPI code extracted from the Mobility Message 891 Authentication Option included in the received BU message. The HA 892 includes this AVP in the MIR message when the MN-AAA Mobility Message 893 Authentication Option is available in the received BU (and the MIP6- 894 Auth-Mode AVP is set to value MIP6_AUTH_MN_AAA). 896 This AVP is re-used from [12]. 898 6.4. MIP-MN-HA-SPI AVP 900 The MIP-MN-HA-SPI AVP (AVP Code TBD) is of type Unsigned32 and 901 contains an SPI code which can be used with other parameters for 902 identifying the security association required for the validation of 903 the Mobile IPv6 MN-HA Authentication Option. 905 When included in the MIR message, the Diameter server needs to return 906 a valid MIP-MN-HA-MSA AVP in the corresponding MIA message. Either 907 the MIP-MN-HA-SPI AVP or the MIP-MN-AAA-SPI AVP MUST be present in 908 the MIR message, but not both. 910 6.5. MIP-Mobile-Node-Address AVP 912 The MIP-Mobile-Node-Address AVP (AVP Code 333) is of type Address and 913 contains the HA assigned IPv6 or IPv4 Home Address of the Mobile 914 Node. 916 If the MIP-Mobile-Node-Address AVP contains unspecified IPv6 address 917 (0::0) or all zeroes IPv4 address (0.0.0.0) in a request message, 918 then the HA expects the Diameter server to assign the Home Address in 919 a subsequent answer message. If the Diameter server assigns only an 920 IPv6 Home Network Prefix to the Mobile Node the lower 64 bits of the 921 MIP-Mobile-Node-Address AVP provided address MUST be set to zero. 923 This AVP is re-used from [12]. 925 6.6. MIP6-Agent-Info AVP 927 The MIP6-Agent-Info AVP is defined in Section 4.5.1 of [10] and 928 contains the IPv6 or the IPv4 address information of the HA. The HA 929 address in a request message is the same as in the received BU 930 message that triggered the authentication and authorization procedure 931 towards the Diameter server. 933 If the MIP6-Agent-Info AVP is present in an answer message and the 934 Result-Code AVP is set to DIAMETER_SUCCESS_RELOCATE_HA, then the 935 Diameter server is indicating to the HA that it MUST initiate a HA 936 switch procedure towards the MN (e.g., using the procedure defined in 937 [13]). If the Result-Code AVP is set to any other value, then the HA 938 SHOULD initiate the HA switch procedure towards the MN. The address 939 information of the assigned HA is defined in the MIP6-Agent-Info AVP. 941 6.7. MIP-Careof-Address AVP 943 The MIP-Careof-Address AVP (AVP Code TBD) is of type Address and 944 contains the IPv6 Care-of Address of the Mobile Node. The HA 945 extracts this IP address from the received BU message. 947 6.8. MIP-Authenticator AVP 949 The MIP-Authenticator AVP (AVP Code TBD) is of type OctetString and 950 contains the Authenticator Data from the received BU message. The HA 951 extracts this data from the MN-AAA Mobility Message Authentication 952 Option included in the received BU message. The HA includes this AVP 953 in the MIR message and sets the Diameter server is expected to return 954 the key material required for the calculation and validation of the 955 Mobile IPv6 MN-HA Authentication Option (and the MIP6-Auth-Mode AVP 956 is set to value MIP6_AUTH_MN_AAA). 958 6.9. MIP-MAC-Mobility-Data AVP 960 The MIP-MAC-Mobility-Data AVP (AVP Code TBD) is of type OctetString 961 and contains the calculated MAC_Mobility_Data, as defined in [3]. 962 The HA includes this AVP in the MIR message when the MN-AAA Mobility 963 Message Authentication Option is available in the received BU and the 964 Diameter server is expected to return the key material required for 965 the calculation and validation of the Mobile IPv6 MN-HA 966 Authentication Option (and the MIP6-Auth-Mode AVP is set to value 967 MIP6_AUTH_MN_AAA). 969 6.10. MIP-Session-Key AVP 971 The MIP-Session-Key AVP (AVP Code 343) is of type OctetString and 972 contains the MN-HA shared secret (i.e., the session key) for the 973 associated Mobile IPv6 MH-HA authentication option. When the 974 Diameter server computes the session key it is placed in this AVP. 976 This AVP is re-used from [12]. 978 6.11. MIP-MSA-Lifetime AVP 980 The MIP-MSA-Lifetime AVP (AVP Code 367) is of type Unsigned32 and 981 represents the period of time (in seconds) for which the session key 982 (see Section 6.10) is valid. The associated session key MUST NOT be 983 used if the lifetime has expired. 985 This AVP is re-used from [12]. 987 6.12. MIP-MN-HA-MSA AVP 989 The MIP-MN-HA-MSA AVP (AVP Code TBD) is of type Grouped and contains 990 the session related information for use with the Mobile IPv6 991 Authentication Protocol. 993 MIP-MN-HA-MSA ::= < AVP Header: TBD > 994 { MIP-Session-Key } 995 { MIP-MSA-Lifetime } 996 [ MIP-MN-HA-SPI ] 997 [ MIP-Algorithm-Type ] 998 [ MIP-Replay-Mode ] 999 * [ AVP ] 1001 The MIP-MN-HA-SPI sub-AVP within the MIP-MN-HA-MSA grouped AVP 1002 identifies the security association required for the validation of 1003 the Mobile IPv6 MN-HA Authentication Option. 1005 6.13. MIP-Algorithm-Type AVP 1007 The MIP-Algorithm-Type AVP (AVP Code 345) is of type Enumerated and 1008 contains Algorithm identifier for the associated Mobile IPv6 MN-HA 1009 Authentication Option. The Diameter server selects the algorithm 1010 type. Existing algorithm types are defined in RFC 4004 that also 1011 fulfill current RFC 4285 requirements. 1013 This AVP is re-used from [12]. 1015 6.14. MIP-Replay-Mode AVP 1017 The MIP-Replay-Mode AVP (AVP Code 346) is of type Enumerated and 1018 contains the replay mode the HA for authenticating the mobile node. 1019 The replay modes, defined in RFC 4004 [12], are supported. 1021 This AVP is re-used from [12]. 1023 6.15. MIP6-Feature-Vector AVP 1025 The MIP6-Feature-Vector AVP (AVP Code TBD) is of type Unsigned64 and 1026 defined in [10]. This document defines a new capability flag bit for 1027 signaling the support of Mobile IPv6 split scenario bootstrapping. 1029 MIP6_SPLIT (0x0000000100000000) 1031 When this flag is set by the NAS then it means that the Mobile 1032 IPv6 split scenario bootstrapping functionality is supported by 1033 the NAS. When this flag is set by the Diameter server then the 1034 Mobile IPv6 split scenario bootstrapping is supported by the 1035 Diameter server. 1037 6.16. MIP-Timestamp AVP 1039 The MIP-Timestamp AVP (AVP Code TBD) is of type Time and may contain 1040 the timestamp value from the Mobility message replay protection 1041 option, defined in [3]. The HA extracts this value from the received 1042 BU message, if available. The HA includes this AVP in the MIR 1043 message when the MN-AAA Mobility Message Authentication Option is 1044 available in the received BU and the Diameter server is expected to 1045 return the key material required for the calculation and validation 1046 of the Mobile IPv6 MN-HA Authentication Option (and the MIP6-Auth- 1047 Mode AVP is set to value MIP6_AUTH_MN_AAA). 1049 6.17. QoS-Capability AVP 1051 The QoS-Capability AVP is defined in [11] and contains a list of 1052 supported Quality of Service profiles. 1054 6.18. QoS-Resources AVP 1056 The QoS-Resources AVP is defined in [11] and provides QoS and packet 1057 filtering capabilities. 1059 6.19. Chargeable-User-Identity AVP 1061 The Chargeable-User-Identity AVP (AVP code 89) is of type OctetString 1062 and contains an unique temporary handle of the user. The Chargeable- 1063 User-Identity is defined in RFC 4372 [14]. 1065 6.20. MIP6-Auth-Mode AVP 1067 The MIP6-Auth-Mode (AVP Code TBD) is of type Enumerated and contains 1068 information of the used Mobile IPv6 Authentication Protocol mode. 1069 This specification defines only one value MIP6_AUTH_MN_AAA and the 1070 corresponding AAA interactions when MN-AAA security association is 1071 used to authenticate the Binding Update. When the MIP6-Auth_Mode AVP 1072 is set to the value of MIP6_AUTH_MN_AAA, the Auth-Request-Type AVP 1073 MUST be set to the value of AUTHORIZE_AUTHENTICATE. 1075 If the Diameter server does not support the Mobile IPv6 1076 Authentication Protocol use mode proposed by the HA, then the 1077 Diameter server MUST fail the authentication/authorization and set 1078 the Result-Code AVP to the value of DIAMETER_ERROR_AUTH_MODE. 1080 6.21. Coupled Accounting Model Accounting AVPs 1082 Diameter Mobile IPv6 application is used in the case of the coupled 1083 account model. Diameter Mobile IPv4 application [12] accounting AVPs 1084 are reused in this document. The following AVPs SHOULD be included 1085 in the accounting request message: 1087 o Accounting-Input-Octets: Number of octets in IP packets received 1088 from the mobile node. 1089 o Accounting-Output-Octets: Number of octets in IP packets sent by 1090 the mobile node 1091 o Accounting-Input-Packets: Number of IP packets received from the 1092 mobile node. 1093 o Accounting-Output-Packets: Number of IP packets sent by the mobile 1094 node. 1095 o Acct-Multi-Session-Id: Used to link together multiple related 1096 accounting sessions, where each session would have a unique 1097 Session-Id, but the same Acct-Multi-Session-Id AVP. 1098 o Acct-Session-Time: Indicates the length of the current session in 1099 seconds. 1100 o MIP6-Feature-Vector: The supported features for this mobility 1101 service session. 1102 o MIP-Mobile-Node-Address: The Home Address of the mobile node. 1103 o MIP-Agent-Info: The current home agent of the mobile node. 1104 o Chargeable-User-Identity: The unique temporary identity of the 1105 user. This AVP MUST be included if it is available in the home 1106 agent. 1107 o Service-Selection: Currently selected mobility service. 1108 o QoS-Resources: Assigned QoS resources for the mobile node. 1109 o QoS-Capability: The QoS capability related to the assigned QoS- 1110 Resources. 1111 o MIP-Careof-Address: The current Care-of Address of the mobile 1112 node. 1114 7. Result-Code AVP Values 1116 This section defines new Result-Code [5] values that MUST be 1117 supported by all Diameter implementations that conform to this 1118 specification. 1120 7.1. Success 1122 Errors that fall within the Success category are used to inform a 1123 peer that a request has been successfully completed. 1125 DIAMETER_SUCCESS_RELOCATE_HA (Status Code TBD) 1127 This result code is used by the Diameter server to inform the HA 1128 that the MN MUST be switched to another HA. 1130 7.2. Permanent Failures 1132 Errors that fall within the permanent failures category are used to 1133 inform the peer that the request failed and SHOULD NOT be attempted 1134 again. 1136 DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION (Status Code TBD) 1138 This error code is used by the Diameter server to inform the peer 1139 that the requested Mobile IPv6 session keys could not be delivered 1140 via a security association. 1141 DIAMETER_ERROR_MIP6_AUTH_MODE (Status Code TBD) 1143 This error code is used by the Diameter server to inform the peer 1144 that the requested Mobile IPv6 Authentication Protocol usage mode 1145 is not supported. 1147 8. AVP Occurrence Tables 1149 The following tables present the AVPs defined in this document and 1150 their occurrences in Diameter messages. Note that AVPs that can only 1151 be present within a Grouped AVP are not represented in this table. 1153 The table uses the following symbols: 1155 0: 1157 The AVP MUST NOT be present in the message. 1159 0+: 1161 Zero or more instances of the AVP MAY be present in the message. 1163 0-1: 1165 Zero or one instance of the AVP MAY be present in the message. 1167 1: 1169 One instance of the AVP MUST be present in the message. 1171 8.1. DER, DEA, MIR and MIA AVP/Command-Code Table 1173 +-----------------------+ 1174 | Command-Code | 1175 |-----+-----+-----+-----+ 1176 AVP Name | DER | DEA | MIR | MIA | 1177 -------------------------------|-----+-----+-----+-----+ 1178 MIP6-Feature-Vector | 0-1 | 0-1 | 0-1 | 0-1 | 1179 MIP-Mobile-Node-Address | 1-2 | 0-2 | 1-2 | 0-2 | 1180 MIP-MN-AAA-SPI | 0 | 0 | 0-1 | 0 | 1181 MIP-MN-HA-SPI | 0 | 0 | 0-1 | 0 | 1182 MIP6-Agent-Info | 1 | 0-1 | 1 | 0-1 | 1183 MIP-Careof-Address | 0 | 0 | 0-1 | 0 | 1184 MIP-Authenticator | 0 | 0 | 0-1 | 0 | 1185 MIP-MAC-Mobility-Data | 0 | 0 | 0-1 | 0 | 1186 MIP-MSA-Lifetime | 0 | 0 | 0 | 1 | 1187 MIP-MN-HA-MSA | 0 | 0 | 0 | 0-1 | 1188 MIP-Timestamp | 0 | 0 | 0-1 | 0-1 | 1189 User-Name | 0-1 | 0-1 | 1 | 0-1 | 1190 Service-Selection | 0-1 | 0 | 0-1 | 0 | 1191 QoS-Resources | *0 | *0 | *0 | *0 | 1192 QoS-Capability | 0-1 | 0 | 0-1 | 0 | 1193 Chargeable-User-Identity | 0-1 | 0-1 | 0-1 | 0-1 | 1194 MIP6-Auth-Mode | 0 | 0 | 1 | 0 | 1195 +-----+-----+-----+-----+ 1197 8.2. Coupled Accounting Model AVP Table 1199 The table in this section is used to represent which AVPs defined in 1200 this document are to be present in the Accounting messages, as 1201 defined in [5]. 1203 +-------------+ 1204 | Command-Code| 1205 |------+------+ 1206 Attribute Name | ACR | ACA | 1207 -------------------------------------|------+------+ 1208 Accounting-Input-Octets | 0-1 | 0-1 | 1209 Accounting-Input-Packets | 0-1 | 0-1 | 1210 Accounting-Output-Octets | 0-1 | 0-1 | 1211 Accounting-Output-Packets | 0-1 | 0-1 | 1212 Acct-Multi-Session-Id | 0-1 | 0-1 | 1213 Acct-Session-Time | 0-1 | 0-1 | 1214 MIP6-Feature-Vector | 0-1 | 0-1 | 1215 MIP6-Agent-Info | 0-1 | 0-1 | 1216 MIP-Mobile-Node-Address | 0-2 | 0-2 | 1217 Event-Timestamp | 0-1 | 0 | 1218 MIP-Careof-Address | 0-1 | 0 | 1219 Service-Selection | 0-1 | 0 | 1220 QoS-Capability | *0 | *0 | 1221 QoS-Resources | *0 | *0 | 1222 Chargeable-User-Identity | 0-1 | 0 | 1223 -------------------------------------|------+------+ 1225 9. IANA Considerations 1227 This section contains the namespaces that have either been created in 1228 this specification or had their values assigned to existing 1229 namespaces managed by IANA. 1231 9.1. Command Codes 1233 IANA is requested to allocate a command code values for the following 1234 new commands from the Command Code namespace defined in [5]. See 1235 Section 5 for the assignment of the namespace in this specification. 1237 Command Code | Value 1238 -----------------------------------+------ 1239 MIP6-Request (MIR) | TBD 1240 MIP6-Answer (MIA) | TBD 1242 9.2. AVP Codes 1244 This specification requires IANA to register the following new AVPs 1245 from the AVP Code namespace defined in [5]. 1247 o MIP-Careof-Address 1248 o MIP-Authenticator 1249 o MIP-MAC-Mobility-Data 1250 o MIP-Timestamp 1251 o MIP-MN-HA-SPI 1252 o MIP-MN-HA-MSA 1253 o Service-Selection 1254 o MIP6-Auth-Mode 1256 The AVPs are defined in Section 6. 1258 9.3. Result-Code AVP Values 1260 This specification requests IANA to allocate new values to the 1261 Result-Code AVP (AVP Code 268) namespace defined in [5]. See 1262 Section 7 for the assignment of the namespace in this specification. 1264 Result-Code | Value 1265 ----------------------------------------------+------ 1266 DIAMETER_SUCCESS_RELOCATE_HA | TBD 1267 DIAMETER_ERROR_END_TO_END_MIP6_KEY_ENCRYPTION | TBD 1268 DIAMETER_ERROR_MIP6_AUTH_MODE | TBD 1270 9.4. Application Identifier 1272 This specification requires IANA to allocate two new values "Diameter 1273 Mobile IPv6 IKE" and "Diameter Mobile IPv6 Auth" from the Application 1274 Identifier namespace defined in [5]. 1276 Application Identifier | Value 1277 -----------------------------------+------ 1278 Diameter Mobile IPv6 IKE (MIP6I) | TBD 1279 Diameter Mobile IPv6 Auth (MIP6A) | TBD 1281 9.5. Namespaces 1283 This specification defines new values to the "Mobility Capability" 1284 registry (see [10]) for use with the MIP6-Feature-Vector AVP: 1286 Token | Value | Description 1287 ---------------------------------+----------------------+------------ 1288 MIP6_SPLIT | 0x0000000100000000 | RFC TBD 1290 IANA is requested to create a new registry "MIP6 Authentication Mode" 1291 registry for use with the enumerated MIP6-Auth-Mode AVP. The 1292 registry will initially contain the following values: 1294 Token | Value | Description 1295 ---------------------------------------------+----------+------------ 1296 MIP6_AUTH_MN_AAA | 1 | RFC TBD 1298 Allocation of new values follow the example policies described in 1299 [21] new values for the MIP6-Auth-Mode AVP will be assigned based on 1300 the "Specification Required" policy. 1302 10. Security Considerations 1304 The security considerations for the Diameter interaction required to 1305 accomplish the split scenario are described in in [2]. Additionally, 1306 the security considerations of the Diameter Base protocol [5], 1307 Diameter EAP application [7] are applicable to this document. 1309 The Diameter messages may be transported between the HA and the 1310 Diameter server via one or more AAA brokers or Diameter agents. In 1311 this case the HA to the Diameter server AAA communication rely on the 1312 security properties of the intermediate AAA brokers and Diameter 1313 agents (such as proxies). 1315 11. Acknowledgements 1317 The authors would like to thank Jari Arkko, Tolga Asversen, Pasi 1318 Eronen, Santiago Zapata Hernandez, Anders Kristensen, Avi Lior, John 1319 Loughney, Ahmad Muhanna, Behcet Sarikaya, Basavaraj Patil, Vijay 1320 Devarapalli, Lionel Morand, Domagoj Premec, Semyon Mizikovsky and 1321 Yoshihiro Ohba for all the useful discussions. Ahmad Muhanna 1322 provided a detailed review of the document in August 2007. 1324 We would also like to thank our Area Director, Dan Romascanu, for his 1325 support. 1327 Hannes Tschofenig would like to thank the European Commission support 1328 in the co-funding of the ENABLE project, where this work is partly 1329 being developed. 1331 Julien Bournelle would like to thank GET/INT since he began this work 1332 while he was under their employ. 1334 Madjid Nakhjiri would like to thank Huawei USA as most of his 1335 contributions to this draft were possible while he was under their 1336 employ. 1338 12. References 1339 12.1. Normative References 1341 [1] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in 1342 IPv6", RFC 3775, June 2004. 1344 [2] Giaretta, G., Kempf, J., and V. Devarapalli, "Mobile IPv6 1345 Bootstrapping in Split Scenario", RFC 5026, October 2007. 1347 [3] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury, 1348 "Authentication Protocol for Mobile IPv6", 1349 draft-ietf-mip6-rfc4285bis-03 (work in progress), July 2008. 1351 [4] Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with 1352 IKEv2 and the Revised IPsec Architecture", RFC 4877, 1353 April 2007. 1355 [5] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. Arkko, 1356 "Diameter Base Protocol", RFC 3588, September 2003. 1358 [6] Bradner, S., "Key words for use in RFCs to Indicate Requirement 1359 Levels", BCP 14, RFC 2119, March 1997. 1361 [7] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible 1362 Authentication Protocol (EAP) Application", RFC 4072, 1363 August 2005. 1365 [8] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol", 1366 RFC 4306, December 2005. 1368 [9] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, "Diameter 1369 Network Access Server Application", RFC 4005, August 2005. 1371 [10] Korhonen, J., Bournelle, J., Tschofenig, H., Perkins, C., and 1372 K. Chowdhury, "Diameter Mobile IPv6: Support for Network Access 1373 Server to Diameter Server Interaction", 1374 draft-ietf-dime-mip6-integrated-10 (work in progress), 1375 September 2008. 1377 [11] Korhonen, J., Tschofenig, H., Arumaithurai, M., Jones, M., and 1378 A. Lior, "Quality of Service Attributes for Diameter", 1379 draft-ietf-dime-qos-attributes-07 (work in progress), 1380 June 2008. 1382 [12] Calhoun, P., Johansson, T., Perkins, C., Hiller, T., and P. 1383 McCann, "Diameter Mobile IPv4 Application", RFC 4004, 1384 August 2005. 1386 [13] Haley, B., Devarapalli, V., Deng, H., and J. Kempf, "Mobility 1387 Header Home Agent Switch Message", RFC 5142, January 2008. 1389 [14] Adrangi, F., Lior, A., Korhonen, J., and J. Loughney, 1390 "Chargeable User Identity", RFC 4372, January 2006. 1392 12.2. Informative References 1394 [15] Patel, A. and G. Giaretta, "Problem Statement for bootstrapping 1395 Mobile IPv6 (MIPv6)", RFC 4640, September 2006. 1397 [16] Giaretta, G., Guardini, I., Demaria, E., Bournelle, J., and R. 1398 Lopez, "AAA Goals for Mobile IPv6", 1399 draft-ietf-mext-aaa-ha-goals-01 (work in progress), May 2008. 1401 [17] Soliman, H., "Mobile IPv6 Support for Dual Stack Hosts and 1402 Routers", draft-ietf-mext-nemo-v4traversal-05 (work in 1403 progress), July 2008. 1405 [18] Patel, A., Leung, K., Khalil, M., Akhtar, H., and K. Chowdhury, 1406 "Mobile Node Identifier Option for Mobile IPv6 (MIPv6)", 1407 RFC 4283, November 2005. 1409 [19] Fajardo, V., Asveren, T., Tschofenig, H., McGregor, G., and J. 1410 Loughney, "Diameter Applications Design Guidelines", 1411 draft-ietf-dime-app-design-guide-07 (work in progress), 1412 July 2008. 1414 [20] Korhonen, J., Nilsson, U., and V. Devarapalli, "Service 1415 Selection for Mobile IPv6", RFC 5149, February 2008. 1417 [21] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA 1418 Considerations Section in RFCs", BCP 26, RFC 5226, May 2008. 1420 Authors' Addresses 1422 Jouni Korhonen 1423 TeliaSonera 1424 P.O.Box 970 1425 Sonera FIN-00051 1426 Finland 1428 Email: jouni.nospam@gmail.com 1429 Hannes Tschofenig 1430 Nokia Siemens Networks 1431 Linnoitustie 6 1432 Espoo 02600 1433 Finland 1435 Phone: +358 (50) 4871445 1436 Email: Hannes.Tschofenig@gmx.net 1437 URI: http://www.tschofenig.priv.at 1439 Julien Bournelle 1440 Orange Labs 1441 38-4O rue du general Leclerc 1442 Issy-Les-Moulineaux 92794 1443 France 1445 Email: julien.bournelle@orange-ftgroup.com 1447 Gerardo Giaretta 1448 Qualcomm 1449 5775 MoreHouse Dr 1450 San Diego, CA 92121 1451 USA 1453 Email: gerardo.giaretta@gmail.com 1455 Madjid Nakhjiri 1456 Motorola 1457 USA 1459 Email: madjid.nakhjiri@motorola.com 1461 Full Copyright Statement 1463 Copyright (C) The IETF Trust (2008). 1465 This document is subject to the rights, licenses and restrictions 1466 contained in BCP 78, and except as set forth therein, the authors 1467 retain all their rights. 1469 This document and the information contained herein are provided on an 1470 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1471 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1472 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1473 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1474 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1475 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1477 Intellectual Property 1479 The IETF takes no position regarding the validity or scope of any 1480 Intellectual Property Rights or other rights that might be claimed to 1481 pertain to the implementation or use of the technology described in 1482 this document or the extent to which any license under such rights 1483 might or might not be available; nor does it represent that it has 1484 made any independent effort to identify any such rights. Information 1485 on the procedures with respect to rights in RFC documents can be 1486 found in BCP 78 and BCP 79. 1488 Copies of IPR disclosures made to the IETF Secretariat and any 1489 assurances of licenses to be made available, or the result of an 1490 attempt made to obtain a general license or permission for the use of 1491 such proprietary rights by implementers or users of this 1492 specification can be obtained from the IETF on-line IPR repository at 1493 http://www.ietf.org/ipr. 1495 The IETF invites any interested party to bring to its attention any 1496 copyrights, patents or patent applications, or other proprietary 1497 rights that may cover technology that may be required to implement 1498 this standard. Please address the information to the IETF at 1499 ietf-ipr@ietf.org. 1501 Acknowledgment 1503 Funding for the RFC Editor function is provided by the IETF 1504 Administrative Support Activity (IASA).