Internet Draft J. Wiljakka (ed.) Document: draft-ietf-v6ops-3gpp-analysis-04.txt Nokia Expires: December 2003 June 2003 Analysis on IPv6 Transition in 3GPP Networks Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Abstract This document analyzes the transition to IPv6 in Third Generation Partnership Project (3GPP) General Packet Radio Service (GPRS) packet networks. The focus is on analyzing different transition scenarios, applicable transition mechanisms and finding solutions for those transition scenarios. In these scenarios, the User Equipment (UE) connects to other nodes, e.g. in the Internet, and IPv6/IPv4 transition mechanisms are needed. Wiljakka, Editor Expires: December 2003 [Page 1] Analysis on IPv6 Transition in 3GPP Networks June 2003 Table of Contents 1. Introduction.................................................. 2 1.1 Scope of this Document.................................... 3 1.2 Abbreviations............................................. 3 1.3 Terminology............................................... 4 2. Transition Mechanisms......................................... 4 2.1 Dual Stack................................................ 5 2.2 Tunneling................................................. 5 2.3 Protocol Translators...................................... 5 3. GPRS Transition Scenarios..................................... 5 3.1 Dual Stack UE Connecting to IPv4 and IPv6 Nodes........... 6 3.2 IPv6 UE Connecting to an IPv6 Node through an IPv4 Network 7 3.3 IPv4 UE Connecting to an IPv4 Node through an IPv6 Network ............................................................ 10 3.4 IPv6 UE Connecting to an IPv4 Node....................... 10 3.5 IPv4 UE Connecting to an IPv6 Node....................... 12 4. IMS Transition Scenarios..................................... 13 4.1 DNS Interworking in IMS.................................. 13 4.2 UE Connecting to a Node in an IPv4 Network through IMS... 13 4.3 Two IMS Islands Connected over IPv4 Network.............. 15 5. Security Considerations...................................... 16 6. Changes from draft-ietf-v6ops-3gpp-analysis-03.txt........... 16 7. Copyright.................................................... 16 8. References................................................... 17 8.1 Normative................................................ 17 8.2 Informative.............................................. 18 9. Authors and Acknowledgements................................. 19 10. Editor's Contact Information................................ 20 1. Introduction This document describes and analyzes the process of transition to IPv6 in Third Generation Partnership Project (3GPP) General Packet Radio Service (GPRS) packet networks. The authors can be found in Authors and Acknowledgements section. This document analyzes the transition scenarios in 3GPP packet data networks that might come up in the deployment phase of IPv6. The transition scenarios are documented in [3GPP-SCEN] and this document will further analyze them. The scenarios are divided into two categories: GPRS scenarios and IMS scenarios. GPRS scenarios are the following: - Dual Stack UE connecting to IPv4 and IPv6 nodes - IPv6 UE connecting to an IPv6 node through an IPv4 network - IPv4 UE connecting to an IPv4 node through an IPv6 network - IPv6 UE connecting to an IPv4 node - IPv4 UE connecting to an IPv6 node Wiljakka, Editor Expires: December 2003 [Page 2] Analysis on IPv6 Transition in 3GPP Networks June 2003 IMS scenarios are the following: - UE connecting to a node in an IPv4 network through IMS - Two IMS islands connected via IPv4 network The focus is on analyzing different transition scenarios, applicable transition mechanisms and finding solutions for those transition scenarios. In the scenarios, the User Equipment (UE) connects to nodes in other networks, e.g. in the Internet and IPv6/IPv4 transition mechanisms are needed. 1.1 Scope of this Document The scope of this informational document is to analyze and solve the possible transition scenarios in the 3GPP defined GPRS network where a UE connects to, or is contacted from the Internet, or another UE. The document covers scenarios with and without the use of the SIP based IP Multimedia Core Network Subsystem (IMS). This document is not focused on radio interface issues; both 3GPP Second (GSM) and Third Generation (UMTS) radio network architectures will be covered by these scenarios. The transition mechanisms specified by the IETF Ngtrans and v6ops Working Groups shall be used. This document shall not specify any new transition mechanisms, but if a need for a new mechanism is found, that will be reported to the v6ops Working Group. 1.2 Abbreviations 2G Second Generation Mobile Telecommunications, for example GSM and GPRS technologies. 3G Third Generation Mobile Telecommunications, for example UMTS technology. 3GPP Third Generation Partnership Project ALG Application Level Gateway APN Access Point Name. The APN is a logical name referring to a GGSN and an external network. CSCF Call Session Control Function (in 3GPP Release 5 IMS) GGSN Gateway GPRS Support Node (a default router for 3GPP User Equipment) GPRS General Packet Radio Service GSM Global System for Mobile Communications IMS IP Multimedia (Core Network) Subsystem, 3GPP Release 5 IPv6-only part of the network ISP Internet Service Provider NAT Network Address Translator NAPT-PT Network Address Port Translation - Protocol Translation NAT-PT Network Address Translation - Protocol Translation PDP Packet Data Protocol Wiljakka, Editor Expires: December 2003 [Page 3] Analysis on IPv6 Transition in 3GPP Networks June 2003 PPP Point-to-Point Protocol SIIT Stateless IP/ICMP Translation Algorithm SIP Session Initiation Protocol UE User Equipment, for example a UMTS mobile handset UMTS Universal Mobile Telecommunications System 1.3 Terminology Some terms used in 3GPP transition scenarios and analysis documents are briefly defined here. Dual Stack UE Dual Stack UE is a 3GPP mobile handset having dual stack implemented. It is capable of activating both IPv4 and IPv6 PDP contexts. Dual stack UE may be capable of tunneling. IPv6 UE IPv6 UE is an IPv6-only 3GPP mobile handset. It is only capable of activating IPv6 PDP contexts. IPv4 UE IPv4 UE is an IPv4-only 3GPP mobile handset. It is only capable of activating IPv4 PDP contexts. IPv4 node IPv4 node is here defined to be IPv4 capable node the UE is communicating with. The IPv4 node can be, for example, an application server or another UE. IPv6 node IPv6 node is here defined to be IPv6 capable node the UE is communicating with. The IPv6 node can be, for example, an application server or another UE. 2. Transition Mechanisms This chapter briefly introduces some transition mechanisms specified by the IETF. Applicability of different transition mechanisms to 3GPP networks is discussed in chapters 3 and 4. The IPv4/IPv6 transition methods can be divided to: - dual IPv4/IPv6 stack - tunneling - protocol translators Wiljakka, Editor Expires: December 2003 [Page 4] Analysis on IPv6 Transition in 3GPP Networks June 2003 2.1 Dual Stack The dual IPv4/IPv6 stack is specified in [RFC2893]. If we consider the 3GPP GPRS core network, dual stack implementation in the GGSN enables support for IPv4 and IPv6 PDP contexts. UEs with dual stack and public (global) IP addresses can often access both IPv4 and IPv6 services without additional translators in the network. 2.2 Tunneling Tunneling is a transition mechanism that requires dual IPv4/IPv6 stack functionality in the encapsulating and decapsulating nodes. Basic tunneling alternatives are IPv6-in-IPv4 and IPv4-in-IPv6. Tunneling can be static or dynamic. Static (configured) tunnels are fixed IPv6 links over IPv4, and they are specified in [RFC2893]. Dynamic (automatic) tunnels are virtual IPv6 links over IPv4 where the tunnel endpoints are not configured, i.e. the links are created dynamically. 2.3 Protocol Translators A translator can be defined as an intermediate component between a native IPv4 node and a native IPv6 node to enable direct communication between them without requiring any modifications to the end nodes. Header conversion is a translation mechanism. In header conversion, IPv6 packet headers are converted to IPv4 packet headers, or vice versa, and checksums are adjusted or recalculated if necessary. NAT-PT (Network Address Translator / Protocol Translator) [RFC2766] using SIIT [RFC2765] is an example of such a mechanism. Translators are typically needed when the two communicating nodes do not share the same IP version. Translation can actually happen at Layer 3 (using NAT-like techniques), Layer 4 (using a TCP/UDP proxy) or Layer 7 (using application relays). 3. GPRS Transition Scenarios This section discusses the scenarios that might occur when a GPRS UE contacts services or other nodes, e.g. a web server in the Internet. The following scenarios described by [3GPP-SCEN] are analyzed here. In all of the scenarios, the UE is part of a network where there is at least one router of the same IP version, i.e. GGSN, and it is connecting to a node in a different network. Wiljakka, Editor Expires: December 2003 [Page 5] Analysis on IPv6 Transition in 3GPP Networks June 2003 1) Dual Stack UE connecting to IPv4 and IPv6 nodes 2) IPv6 UE connecting to an IPv6 node through an IPv4 network 3) IPv4 UE connecting to an IPv4 node through an IPv6 network 4) IPv6 UE connecting to an IPv4 node 5) IPv4 UE connecting to an IPv6 node 3.1 Dual Stack UE Connecting to IPv4 and IPv6 Nodes In this scenario, the dual stack UE is capable of communicating with both IPv4 and IPv6 nodes. It is recommended to activate an IPv6 PDP context when communicating with an IPv6 peer node and an IPv4 PDP context when communicating with an IPv4 peer node. If the 3GPP network supports both IPv4 and IPv6 PDP contexts, the UE activates the appropriate PDP context depending on the type of application it has started or depending on the address of the peer host it needs to communicate with. If IPv6 PDP contexts are available and "IPv6 in IPv4" tunneling is needed, it is recommended to activate an IPv6 PDP context and perform tunneling in the network. This case is described in more detail in section 3.2. However, the UE may attach to a 3GPP network, in which the SGSN (Serving GPRS Support Node), the GGSN and the HLR (Home Location Register) support IPv4 PDP contexts by default, but may not support IPv6 PDP contexts. If the 3GPP network does not support IPv6 PDP contexts, and an application on the UE needs to communicate with an IPv6(-only) node, the UE may activate an IPv4 PDP context and encapsulate IPv6 packets in IPv4 packets using a tunneling mechanism. This might happen in very early phases of IPv6 deployment, or in IPv6 demonstrations and trials. The UE may be assigned a private or public IPv4 address when the IPv4 PDP context has been activated, although it is more likely that it will receive a private address (due to the lack of public IPv4 addresses). The use of private IPv4 addresses in the UE depends on the support of these addresses by the tunneling mechanism and the deployment scenario. In some cases, public IPv4 addresses are required (one example is 6to4 [RFC3056]), but if the tunnel endpoints are in the same private domain or the tunneling mechanism works through IPv4 NAT (Network Address Translator), private IPv4 addresses can be used (examples are [ISATAP] and [TEREDO]). In general, if tunneling from the host is needed, ISATAP and 6to4 are preferred and TEREDO is a mechanism of last resort when neither of these are applicable. One deployment scenario example is using laptop computer and a UMTS UE as a modem. IPv6 packets are encapsulated in IPv4 packets in the laptop computer and an IPv4 PDP context is activated. Although "IPv6 in IPv4" tunneling can be either automatic or configured (by the user), the first alternative is favored, because it is expected Wiljakka, Editor Expires: December 2003 [Page 6] Analysis on IPv6 Transition in 3GPP Networks June 2003 that most UE users just want to use an application in their UE; they might not even care, whether the network connection is IPv4 or IPv6. As a general guideline, IPv6 communication (native or tunneled from the UE) is preferred to IPv4 communication going through IPv4 NATs to the same dual stack peer node. In this scenario, the UE talks to the DNS resolver using the IP version that is available via the activated PDP context. When analyzing a dual stack UE behavior, an application running on a UE can identify whether the endpoint required is an IPv4 or IPv6 capable node by examining the address to discover what address family category it falls into. Alternatively, if a user supplies a name to be resolved, the DNS may contain records sufficient to identify which protocol should be used to initiate the connection with the endpoint. Since the UE is capable of native communication with both protocols, one of the main concerns of an operator is correct address space and routing management. The operator must maintain address spaces for both protocols. Public IPv4 addresses are often a scarce resource for the operator and typically it is not possible for a UE to have a globally unique IPv4 address continuously allocated for its use. Use of private IPv4 addresses means use of NATs when communicating with a peer node outside the operator's network. In large networks, NAT systems can become very complex, expensive and difficult to maintain. Keeping the Internet name space unfragmented is another important issue for both IPv4 and IPv6. It means that any record in the public Internet should be available unmodified to any nodes, IPv4 or IPv6, regardless of the transport being used. The recommended approach is the following: every recursive DNS server should be either IPv4-only or dual stack and every single DNS zone should be served by at least an IPv4 reachable DNS server. This recommendation rules out IPv6-only recursive DNS servers and DNS zones served by IPv6-only DNS servers, and this approach could be revisited if translation techniques between IPv4 and IPv6 were to be widely deployed [DNStrans]. 3.2 IPv6 UE Connecting to an IPv6 Node through an IPv4 Network The best solution for this scenario is obtained with tunneling, i.e. "IPv6 in IPv4" tunneling is a requirement. An IPv6 PDP context is activated between the UE and the GGSN. Tunneling is handled in the network, because IPv6 UE is not capable of tunneling (it does not have the dual stack functionality needed for tunneling). The encapsulating node can be the GGSN, the edge router between the border of the operator's IPv6 network and the public Internet, or any other dual stack node within the operator's IP network. The Wiljakka, Editor Expires: December 2003 [Page 7] Analysis on IPv6 Transition in 3GPP Networks June 2003 encapsulation (uplink) and decapsulation (downlink) can be handled by the same network element. Typically the tunneling handled by the network elements is transparent to the UEs and IP traffic looks like native IPv6 traffic to them. For the applications, tunneling enables end-to-end IPv6 connectivity. Note that this scenario is comparable to 6bone [6BONE] network operation. "IPv6 in IPv4" tunnels between IPv6 islands can be either static or dynamic. The selection of the type of tunneling mechanism is up to the operator / ISP deployment scenario and only generic recommendations can be given in this document. The following subsections are focused on the usage of different tunneling mechanisms when the peer node is in the operator's network or outside the operator's network. The authors note that where the actual 3GPP network ends and which parts of the network belong to the ISP(s) also depends on the deployment scenario. The authors are not commenting how many ISP functions the 3GPP operator should perform. However, many 3GPP operators are ISPs of some sort themselves. ISP transition scenarios are documented and analyzed in [ISP-scen], [ISP-analysis] and their future updates. 3.2.1 Tunneling inside the 3GPP Operator's Network Many GPRS operators already have IPv4 backbone networks deployed and they are gradually migrating them while introducing IPv6 islands. IPv6 backbones can be considered quite rare in the first phases of the transition. If the 3GPP operator already has IPv6 widely deployed in its network, this subsection is not so relevant. In initial, smaller scale IPv6 deployment, where a small number of IPv6 in IPv4 tunnels are required to connect the IPv6 islands over the 3GPP operator's IPv4 network, manually configured tunnels can be used. In a 3GPP network, one IPv6 island could contain the GGSN while another island contains the operator's IPv6 application servers. However, manually configured tunnels can be an administrative burden when the number of islands and therefore tunnels rises. In that case, upgrading parts of the backbone to dual stack may be the simplest choice. The administrative burden could also be mitigated by using automated management tools which are typically necessary to manage large networks anyway. Even a dynamic tunneling mechanism, such as "6to4" [RFC3056] or an IGP/EGP routing protocol based tunneling mechanism [BGP][IGP], could be used if other methods are not suitable. Routing protocol based mechanisms such as [BGP] consist of running BGP between the neighboring router tunnel endpoints and using multi-protocol BGP extensions to exchange reachability information of IPv6 prefixes. Wiljakka, Editor Expires: December 2003 [Page 8] Analysis on IPv6 Transition in 3GPP Networks June 2003 The routers use this information to create IPv6 in IPv4 tunnel interfaces and route IPv6 packets over the IPv4 network. It is possible to combine this with different types of tunnels. Connection redundancy should also be noted as an important requirement in 3GPP networks. Static tunnels on their own don't provide a routing recovery solution for all scenarios where an IPv6 route goes down. However, they may provide an adequate solution depending on the design of the network and in presence of other router redundancy mechanisms. On the other hand, IGP/EGP based mechanisms can provide redundancy. "6to4" nodes use special IPv6 addresses with a "6to4" prefix containing the IPv4 address of the corresponding "IPv6 in IPv4" tunnel endpoint ("6to4" router) which performs encapsulation / decapsulation. When connecting two nodes with "6to4" addresses, the corresponding "6to4" routers use the IPv4 addresses specified in the "6to4" prefixes to tunnel IPv6 packets through the IPv4 network. But if only one of them has a "6to4" address, a "6to4" relay must be present to perform the missing "6to4" router functionality for the native-IPv6 node. If we consider the "6to4" tunneling mechanism and the 3GPP addressing model (a unique /64 prefix allocated for each primary PDP context), a /48 "6to4" prefix would only be enough for approximately 65000 UEs. Thus, a few public IPv4 addresses would be needed depending on the size of the operator. 3.2.2 Tunneling outside the 3GPP Operator's Network This subsection includes the case when the peer node is outside the operator's network. In that case the "IPv6 in IPv4" tunnel starting point can be in the operator's network - encapsulating node can be e.g. the GGSN or the edge router. The case is pretty straightforward if the upstream ISP provides native IPv6 connectivity to the Internet. If there is no native IPv6 connectivity available in the 3GPP network, an "IPv6 in IPv4" tunnel should be configured from e.g. the GGSN to the dual stack border gateway in order to access the upstream ISP. If the ISP only provides IPv4 connectivity, then the IPv6 traffic initiated from the 3GPP network should be transported tunneled in IPv4 to the ISP. Defining the tunnel endpoint depends on the deployment scenario. The authors want to avoid duplicating work and note here that the ISP transition scenarios are analyzed in [ISP- scen] and [ISP-analysis]. Wiljakka, Editor Expires: December 2003 [Page 9] Analysis on IPv6 Transition in 3GPP Networks June 2003 Usage of manually configured "IPv6 in IPv4" tunneling is sensible if the number of the tunnels can be kept limited. It is assumed that a maximum of 10-15 configured "IPv6 in IPv4" tunnels from the 3GPP network towards the ISP / Internet should be sufficient. On the other hand, usage of dynamic tunneling, such as "6to4", can also be considered, but scalability problems arise when thinking about the great number of UEs in the 3GPP networks. The specific limitation when applying "6to4" in 3GPP networks should also be taken into account, as commented in 3.2.1. Other issues to keep in mind with respect to the "6to4" mechanism are that reverse DNS is not yet completely solved and there are some security considerations associated with the use of "6to4" relay routers (see [6to4SEC]). Moreover, in a later phase of the transition period, there will be a need for assigning new, native IPv6 addresses to all "6to4" nodes in order to enable native IPv6 connectivity. 3.3 IPv4 UE Connecting to an IPv4 Node through an IPv6 Network 3GPP networks are expected to support both IPv4 and IPv6 for a long time, on the UE-GGSN link and between the GGSN and external networks. For this scenario it is useful to split the end-to-end IPv4 UE to IPv4 node communication into UE-to-GGSN and GGSN-to- v4NODE. An IPv6-capable GGSN is expected to support both IPv6 and IPv4 UEs. Therefore an IPv4-only UE will be able to use an IPv4 link (PDP context) to connect to the GGSN without the need to communicate over an IPv6 network. Regarding the GGSN-to-v4NODE communication, typically the transport network between the GGSN and external networks will support only IPv4 in the early stages and migrate to dual stack, since these networks are already deployed. Therefore it is not envisaged that tunneling of IPv4 in IPv6 will be required from the GGSN to external IPv4 networks either. In the longer run, 3GPP operators may need to phase out IPv4 UEs and the IPv4 transport network. This would leave only IPv6 UEs. Therefore, overall, the transition scenario involving an IPv4 UE communicating with an IPv4 peer through an IPv6 network is not considered very likely in 3GPP networks. 3.4 IPv6 UE Connecting to an IPv4 Node IPv6 nodes can communicate with IPv4 hosts by making use of a translator (SIIT [RFC2765], NAT-PT [RFC2766]) within the local network. For some applications, application proxies can be appropriate (e.g. HTTP, email relays, etc.). Such applications will not be transparent to the UE. Hence, a flexible mechanism with minimal manual intervention should be used to configure these proxies on IPv6 UEs. Within the 3GPP architecture, application proxies can be placed on the GGSN external interface (Gi), or inside the service network. Wiljakka, Editor Expires: December 2003 [Page 10] Analysis on IPv6 Transition in 3GPP Networks June 2003 However, since it is difficult to anticipate all possible applications, there is a need for translators that can translate headers independent of the type of application being used. Due to the significant lack of IPv4 addresses in some domains, port multiplexing is likely to be a necessary feature for translators (i.e. NAPT-PT). When NA(P)T-PT is used, it needs to be placed on the GGSN external (Gi) interface, typically separate from the GGSN. NA(P)T-PT can be installed, for example, on the edge of the operator's network and the public Internet. NA(P)T-PT will intercept DNS requests and other applications that include IP addresses in their payloads, translate the IP header (and payload for some applications if necessary) and forward packets through its IPv4 interface. NA(P)T-PT introduces limitations that are expected to be magnified within the 3GPP architecture. Some of these limitations are listed below (notice that some of them are also relevant for IPv4 NAT). We note here that [v4v6trans] analyzes the issues when translating between IPv4 and IPv6. However, the NAT-PT issues should be clearly documented in an RFC in the v6ops Working Group and a decision should be made, whether revisiting the NAT-PT RFC is necessary / what kind of update is needed. 1. NA(P)T-PT is a single point of failure for all ongoing connections. 2. Additional forwarding delays due to further processing, when compared to normal IP forwarding. 3. Problems with source address selection due to the inclusion of a DNS ALG on the same node [NATPT-DNS]. 4. NA(P)T-PT does not work (without application level gateways) for applications that embed IP addresses in their payload. 5. NA(P)T-PT breaks DNSSEC. 6. NA(P)T-PT does not scale very well in large networks. 3GPP networks are expected to handle a very large number of subscribers on a single GGSN (default router). Each GGSN is expected to handle hundreds of thousands of connections. Furthermore, high reliability is expected for 3GPP networks. Consequently, a single point of failure on the GGSN external interface, would raise concerns on the overall network reliability. In addition, IPv6 users are expected to use delay-sensitive Wiljakka, Editor Expires: December 2003 [Page 11] Analysis on IPv6 Transition in 3GPP Networks June 2003 applications provided by IMS. Hence, there is a need to minimize forwarding delays within the IP backbone. Furthermore, due to the unprecedented number of connections handled by the default routers (GGSN) in 3GPP networks, a network design that forces traffic to go through a single node at the edge of the network (typical NA(P)T-PT configuration) is not likely to scale. Translation mechanisms should allow for multiple translators, for load sharing and redundancy purposes. To minimize the problems associated with NA(P)T-PT, the following actions can be recommended: 1. Separate the DNS ALG from the NA(P)T-PT node (in the "IPv6 to IPv4" case). 2. Ensure (if possible) that NA(P)T-PT does not become a single point of failure. 3. Allow for load sharing between different translators. That is, it should be possible for different connections to go through different translators. Note that load sharing alone does not prevent NA(P)T-PT from becoming a single point of failure. There are some ways to fix the problems with NA(P)T-PT, one suggestion is [NAT64]. When thinking the DNS issues, the IPv6 UE needs to find the IPv4 address in the DNS [DNStrans]. Note that DNSSEC is broken if NA(P)T-PT is used. 3.5 IPv4 UE Connecting to an IPv6 Node The legacy IPv4 nodes are mostly nodes that support the applications that are popular today in the IPv4 Internet: mostly e- mail, and web-browsing. These applications will, of course, be supported in the IPv6 Internet of the future. However, the legacy IPv4 UEs are not going to be updated to support the future applications. As these application are designed for IPv6, and to use the advantages of newer platforms, the legacy IPv4 nodes will not be able to profit from them. Thus, they will continue to support the legacy services. Taking the above into account, the traffic to and from the legacy IPv4 UE is restricted to a few applications. These applications already today mostly rely on proxies or local servers to communicate between private address space networks and the Internet. The same methods and technology can be used for IPv4 to IPv6 transition. Wiljakka, Editor Expires: December 2003 [Page 12] Analysis on IPv6 Transition in 3GPP Networks June 2003 An alternative solution could be a general network address translation mechanisms such as NAT46 [NAT64]. When thinking the DNS issues, the DNS zones containing AAAA records for the IPv6 nodes need to be served by at least one IPv4 accessible DNS server [DNStrans]. 4. IMS Transition Scenarios As the IMS is exclusively IPv6, the number of possible transition scenarios is reduced dramatically. In the following, the possible transition scenarios are listed. Those scenarios are analyzed in sections 4.2 and 4.3. 1) UE connecting to a node in an IPv4 network through IMS 2) Two IMS islands connected over IPv4 network 4.1 DNS Interworking in IMS The recommended approach (as documented in [DNStrans]) currently is that every recursive DNS server should be either IPv4-only or dual stack and every single DNS zone should be served by at least an IPv4 reachable DNS server. The recommendation rules out IPv6-only recursive DNS servers and DNS zones served by IPv6-only DNS servers. To perform DNS resolution in the IMS, the UE can be configured as a stub resolver pointing to a recursive DNS resolver. This communication can happen over IPv6. However, in the process to find the IPv6 address of a SIP server, the recursive DNS resolver may need to access data that is available only on some IPv4 DNS servers, see [DNStrans]. One way to achieve this is to make the DNS resolver be dual stack. As DNS traffic is not directly related to the IMS functionality, this is not in contradiction with the IPv6- only nature of the IMS. 4.2 UE Connecting to a Node in an IPv4 Network through IMS This scenario occurs when an IMS UE (IPv6) connects to a node in the IPv4 Internet through the IMS, or vice versa. This happens when the other node is a part of a different system than 3GPP, e.g. a fixed PC, with only IPv4 capabilities. There will probably be few legacy IPv4 nodes in the Internet that will communicate with the IMS UEs. It is assumed that the solution described here is used for limited cases, in which communications with a small number of legacy IPv4 SIP equipment are needed. As the IMS is exclusively IPv6 [3GPP 23.221], translators have to be used Wiljakka, Editor Expires: December 2003 [Page 13] Analysis on IPv6 Transition in 3GPP Networks June 2003 in the communication between the IPv6 IMS and legacy IPv4 hosts, i.e. making a dual stack based solution is not feasible. This section aims to give a brief overview on how that interworking can be handled. As control (or signaling) and user (or data) traffic are separated in SIP, and thus, the IMS, the translation of the IMS traffic has to be done on two levels - Session Initiation Protocol (SIP) [RFC3261], and Session Description Protocol (SDP) [RFC2327] [RFC3266] on the one hand (Mm-interface), and on the actual user data traffic level on the other (Mb-interface). SIP and SDP transition has to be made in an SIP/SDP Application Level Gateway. The ALG has to change the IP addresses transported in the SIP messages and the SDP payload of those messages to the appropriate version. In addition, there has to be interoperability for DNS queries; see section 4.1 for details. On the user data transport level, the translation is IPv4-IPv6 protocol translation, where the user data traffic transported is translated from IPv6 to IPv4, and vice versa. The legacy IPv4 host's address can be mapped to an IPv6 address for the IMS, and this address is then used within the IMS to route the traffic to the appropriate user traffic translator. This mapping can be done by the SIP/SDP ALG for the SIP traffic. The user traffic translator would do the similar mapping for the user traffic. However, in order to have an IPv4 address for the IMS UE, and to be able to route the user traffic within the legacy IPv4 network to the correct translator, there has to be an IPv4 address allocated for the duration of the session from the user traffic translator. The allocation of this address from the user traffic translator has to be done by the SIP/SDP ALG in order for the SIP/SDP ALG to know the correct IPv4 address. This can be achieved by using a protocol for the ALG to do the allocation. Wiljakka, Editor Expires: December 2003 [Page 14] Analysis on IPv6 Transition in 3GPP Networks June 2003 +-------------------------------+ +------------+ | +------+ | | +--------+ | | |S-CSCF|---| |SIP ALG | |\ | | +------+ | | +--------+ | \ -------- +-|+ | / | | | | | | | | | +------+ +------+ | | + | -| |- | |-|-|P-CSCF|--------|I-CSCF| | | | | | () | | | +------+ +------+ | |+----------+| / ------ | |-----------------------------------||Translator||/ +--+ | IPv6 | |+----------+| IPv4 UE | | |Interworking| | IP Multimedia CN Subsystem | |Unit | +-------------------------------+ +------------+ Figure 1: UE using IMS to contact a legacy phone Figure 1 shows a possible configuration scenario where the SIP ALG is separate to the CSCFs. The translator can either be set up in a single device with both SIP translation and media translation, or those functionalities can be divided to two different entities with an interface in between. We call the combined network element on the edge of the IPv6-only IMS an "Interworking Unit" in this document. One alternative is to use a suitable subset of NAT-PT [RFC2766] in this network element to take care of the media (user data) IPv4/IPv6 translation. The problems related to NAT-PT are documented in section 3.4. The authors notify that work is being done on analyzing 3GPP IPv4/IPv6 translators related to IMS scenario 1, and a personal draft is expected shortly. 4.3 Two IMS Islands Connected over IPv4 Network At the early stages of IMS deployment, there may be cases where two IMS islands are separated by an IPv4 network such as the legacy Internet. Here both the UEs and the IMS islands are IPv6-only. However, the IPv6 islands are not native IPv6 connected. In this scenario, the end-to-end SIP connections are based on IPv6. The only issue is to make connection between two IPv6-only IMS islands over IPv4 network. This scenario is closely related to GPRS scenario represented in section 3.2. and similar tunneling solutions are applicable also in this scenario. Wiljakka, Editor Expires: December 2003 [Page 15] Analysis on IPv6 Transition in 3GPP Networks June 2003 5. Security Considerations 1. NAT-PT DNS ALG problems are described in [NATPT-DNS] and [v4v6trans]. 2. The 3GPP specifications do not currently define the usage of DNS Security. They neither disallow the usage of DNSSEC, nor do they mandate it. 3. NAT-PT breaks DNSSEC. 6. Changes from draft-ietf-v6ops-3gpp-analysis-03.txt - Tunneling text in 2.2 shortened - Text changes in 3.1 - Text changes in 3.2 - Text changes in 4.2 - Editorial changes in some sections 7. Copyright The following copyright notice is copied from [RFC2026], Section 10.4. It describes the applicable copyright for this document. Copyright (C) The Internet Society June 13, 2003. All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF Wiljakka, Editor Expires: December 2003 [Page 16] Analysis on IPv6 Transition in 3GPP Networks June 2003 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 8. References 8.1 Normative [RFC2026] Bradner, S.: The Internet Standards Process -- Revision 3, RFC 2026, October 1996. [RFC2327] Handley, M., Jacobson, V.: SDP: Session Description Protocol, RFC 2327, April 1998. [RFC2663] Srisuresh, P., Holdrege, M.: IP Network Address Translator (NAT) Terminology and Considerations, RFC 2663, August 1999. [RFC2765] Nordmark, E.: Stateless IP/ICMP Translation Algorithm (SIIT), RFC 2765, February 2000. [RFC2766] Tsirtsis, G., Srisuresh, P.: Network Address Translation - Protocol Translation (NAT-PT), RFC 2766, February 2000. [RFC2893] Gilligan, R., Nordmark, E.: Transition Mechanisms for IPv6 Hosts and Routers, RFC 2893, August 2000. [RFC3056] Carpenter, B., Moore, K.: Connection of IPv6 Domains via IPv4 Clouds, RFC 3056, February 2001. [RFC3261] Rosenberg, J., et al.: SIP: Session Initiation Protocol, June 2002. [RFC3266] Olson, S., Camarillo, G., Roach, A. B.: Support for IPv6 in Session Description Protocol (SDP), June 2002. [3GPP-SCEN] Soininen, J. (editor): "Transition Scenarios for 3GPP Networks", March 2003, draft-ietf-v6ops-3gpp-cases-03.txt, work in progress. [3GPP-23.060] 3GPP TS 23.060 V5.4.0, "General Packet Radio Service (GPRS); Service description; Stage 2 (Release 5)", December 2002. [3GPP 23.221] 3GPP TS 23.221 V5.7.0, "Architectural requirements (Release 5)", December 2002. [3GPP-23.228] 3GPP TS 23.228 V5.7.0, "IP Multimedia Subsystem (IMS); Stage 2 (Release 5)", December 2002. Wiljakka, Editor Expires: December 2003 [Page 17] Analysis on IPv6 Transition in 3GPP Networks June 2003 [3GPP 24.228] 3GPP TS 24.228 V5.3.0, "Signalling flows for the IP multimedia call control based on SIP and SDP; Stage 3 (Release 5)", December 2002. [3GPP 24.229] 3GPP TS 24.229 V5.3.0, "IP Multimedia Call Control Protocol based on SIP and SDP; Stage 3 (Release 5)", December 2002. 8.2 Informative [RFC2283] Bates, T., Chandra, R., Katz, D., Rekhter, Y.: Multiprotocol Extensions for BGP-4, RFC 2283, February 1998. [RFC3314] Wasserman, M. (editor): "Recommendations for IPv6 in 3GPP Standards", September 2002. [6to4SEC] Savola, P.: "Security Considerations for 6to4", January 2003, draft-savola-v6ops-6to4-security-02.txt, work in progress. [BGP] De Clercq, J., Gastaud, G., Ooms, D., Prevost, S., Le Faucheur, F.: "Connecting IPv6 Islands across IPv4 Clouds with BGP", October 2002, draft-ooms-v6ops-bgp-tunnel-00.txt, work in progress, the draft has expired. [DNStrans] Durand, A. and Ihren, J.: "IPv6 DNS transition issues", February 2003, draft-ietf-dnsop-ipv6-dns-issues-02.txt, work in progress. [IGP] Cristallo, G., Gastaud, G., Ooms, D., Galand, D., Preguica, C., Baudot, A., Diribarne, G.: "Connecting IPv6 islands within an IPv4 AS", February 2002, draft-many-ngtrans-connect-ipv6-igp- 02.txt, work in progress, the draft has expired. [ISATAP] Templin, F., et al.: "Intra-Site Automatic Tunnel Addressing Protocol (ISATAP)", March 2003, draft-ietf-ngtrans- isatap-13.txt, work in progress. [ISP-scen] Mickles, C. (Editor): "Transition Scenarios for ISP Networks", March 2003, draft-mickles-v6ops-isp-cases-05.txt, work in progress. [ISP-analysis] Mickles, C. (Editor): "Transition Analysis for ISP Networks", February 2003, draft-mickles-v6ops-isp-analysis-00.txt, work in progress. [NAT64] Durand, A.: "NAT64 - NAT46", June 2002, draft-durand- ngtrans-nat64-nat46-00.txt, work in progress, the draft has expired. Wiljakka, Editor Expires: December 2003 [Page 18] Analysis on IPv6 Transition in 3GPP Networks June 2003 [NATPT-DNS] Durand, A.: "Issues with NAT-PT DNS ALG in RFC2766", January 2003, draft-durand-v6ops-natpt-dns-alg-issues-00.txt, work in progress. [TEREDO] Huitema, C.: "Teredo: Tunneling IPv6 over UDP through NATs", June 2003, draft-huitema-v6ops-teredo-00.txt, work in progress. [v4v6trans] van der Pol, R., Satapati, S., Sivakumar, S.: "Issues when translating between IPv4 and IPv6", January 2003, draft-vanderpol-v6ops-translation-issues-00.txt, work in progress. [6BONE] http://www.6bone.net 9. Authors and Acknowledgements This document is written by: Alain Durand, Sun Microsystems Karim El-Malki, Ericsson Radio Systems Niall Richard Murphy, Enigma Consulting Limited Hugh Shieh, AT&T Wireless Jonne Soininen, Nokia Hesham Soliman, Flarion Margaret Wasserman, Wind River Juha Wiljakka, Nokia The authors would like to thank Heikki Almay, Gabor Bajko, Ajay Jain, Ivan Laloux, Pekka Savola, Pedro Serna, Fred Templin, Anand Thakur and Rod Van Meter for their valuable input. Wiljakka, Editor Expires: December 2003 [Page 19] Analysis on IPv6 Transition in 3GPP Networks June 2003 10. Editor's Contact Information Comments or questions regarding this document should be sent to the v6ops mailing list or directly to the document editor: Juha Wiljakka Nokia Visiokatu 3 Phone: +358 7180 48372 FIN-33720 TAMPERE, Finland Email: juha.wiljakka@nokia.com Wiljakka, Editor Expires: December 2003 [Page 20]