UMTS (Universal Mobile Telecommunications System) is a more general term for the 3G, (third generation) telecommunications system based on the WCDMA high capacity radio interface. GSM is the most widespread 2G (second generation) telecommunications system based on TDMA (Time Division Multiple Access) radio. The goal of the GPRS system is to provide global layer 2 connectivity from a cellular mobile terminal (MT, sometimes also referred to as mobile station (MS) or user equipment (UE)) using 2G or 3G radio technology (e.g. GSM, American TDMA, UMTS, GERAN (GSM/EDGE Radio Access Network) to an external packet data network. GPRS can support various layer 3 protocols (e.g. IPv4; IPv6; PPP (Point-to-Point Protocol)).
The main nodes of a GPRS network are SGSN (Serving GPRS Support Node) and GGSN (Gateway GPRS Support Node). SGSNs are the nodes serving the MT. Each SGSN supports GPRS for GSM and/or UMTS. GGSNs are the node handling the interworking with PDNs (Packet Data Networks). Signaling and data are exchanged between SGSN and GGSN or SGSN and SGSN using the GTP (GPRS Tunneling Protocol) protocol. GTP protocol handles mobility, and creation, modification and deletion of GTP tunnels, as well as transfer of user data between GSNs. GTP allows multi-protocol packets to be tunneled between GSNs and between an SGSN and the UMTS Terrestrial Radio Access Network (UTRAN, not shown) through which a connection to the concerned MT is established. Other systems components need not be aware of the GTP. Typically, two IP addresses are used for a single tunnel, one for the GTP control message (i.e. signalling) and one for the GTP user packet (i.e. carrying user data).
At GPRS attach, the SGSN establishes a mobility management (MM) context containing information pertaining to e.g. mobility and security for the concerned MT. At PDP context activation, the SGSN establishes a PDP context, to be used for routing purposes, with the GGSN the subscriber will be using A GPRS attached mobile terminal (MT) can be assigned either a static or dynamic IP address (referred to also as PDP address). The static address is assigned by the Home Public Land Mobile Network (HPLMN) operator at the time of subscription. The dynamic IP address can be allocated by a GGSN (Gateway GPRS Support Node) of either the HPLMN or the visited PLMN (VPLMN) operator at PDP (Packet Date Protocol) context activation time. In addition to address allocation, the GGSN implements the forwarding of IP packets from a GTP (GPRS Tunneling Protocol) tunnel to a packet data network (PDN) and vice versa. There are two kinds of PLMN backbone networks, an Intra-PLMN backbone network and an Inter-PLMN backbone network. The Intra-PLMN backbone network is a private IP network intended for packet domain data and signaling within a PLMN only, while the Inter-PLMN backbone is used for roaming from one PLMN to another (via Border Gateways). Serving GPRS Support Nodes (SGSNs) and GGSNs use the Intra-PLMN backbone to exchange GPRS domain data and signalling.
During roaming, both the Intra-PLMN backbone of the home and visited networks are used in addition to the Inter-PLMN backbone. When a subscriber is roaming to another PLMN, i.e. a VPLMN, the user needs to first attach to the network. In GPRS attach, the MT informs the Serving SGSN of its intention to connect to the network by giving information about its identity, capability and location. The SGSN then checks the MT's identity and performs an authentication procedure in order to secure the transmission path. The attachment is completed after the SGSN has received roaming subscriber data from the Home Location Register (HLR) of the subscriber's HPLMN and finished a location update procedure. After the GPRS attach, the MT sends an ‘Activate PDP context’ request, in which the Access Point Name (APN) is a reference to the GGSN Access Point (AP) to be used in either the home or visited PLMN. The SGSN selects the GGSN based on a PDP context subscription record and sends the context data to a selected GGSN. The GGSN then routes the packets to the appropriate Packet Data Networks (PDN).
When a subscriber is roaming in the VPLMN, there are the following two possibilities for GGSN selection. Firstly, the home network GGSN can be used via the Inter-PLMN backbone and BGs. The home GGSN then routes the packets to their destination. Secondly, a visited domain GGSN can be used for routing the packets from the VPLMN to their destination directly through a packet data network (PDN), such as the public Internet.
It should be noted that there are two levels of IP addressing:                the user IP address corresponding to the packets carried over GTP protocol. The corresponding IP address is referred to as PDP address or user address; and        the network IP address corresponding to the packets carried below GTP protocol. The corresponding IP addresses are the node IP addresses used to exchange GTP packets between GSNs. These IP addresses might also be used for network operation such as charging or O&M.        
User and network addresses are independent of each other thanks to the GTP protocol, and could both be either IPv4 or IPv6.
The GPRS backbone nodes of the second (2G) and third (3G) generation may optionally use an IPv6 based addressing for network addresses. However, existing specifications allowing the use of IPv6 addresses, do not define how to maintain backward compatibility with IPv4 based nodes. An SGSN should know in advance that the GGSN selected supports IPv6 addresses before inserting an IPv6 address e.g. in a create PDP context request message.
Furthermore, another problem arises with the known procedures. If a MT moves from an IPv6 capable SGSN connected to an IPv6 capable GGSN to an IPv4 only SGSN, the communication will get lost as the new SGSN cannot use the IPv6 address transferred. Such a scenario is very realistic in particular when two operators with equipment from different manufacturers (or just different software release) have roaming agreements (e.g. national roaming). It should be noted that existing IPv4-to-IPv6 transition mechanisms do not apply here as they do not affect IP addresses carried in GTP.
In addition, a practical requirement is that the protocol changes have to be done so that nodes based on older version of specifications (and so not supporting enhancement proposed here), have to continue interworking with new nodes supporting the proposed enhancement proposed here.