V6OPS Working Group D. Binet
Internet-Draft M. Boucadair
Intended status: Informational France Telecom
Expires: March 21, 2015 A. Vizdal
Deutsche Telekom AG
G. Chen
China Mobile
N. Heatley
EE
R. Chandler
eircom | meteor
September 17, 2014

An Internet Protocol Version 6 (IPv6) Profile for 3GPP Mobile Devices
draft-ietf-v6ops-mobile-device-profile-12

Abstract

This document defines an IPv6 profile that a number of operators recommend in order to connect 3GPP mobile devices to an IPv6-only or dual-stack wireless network (including 3GPP cellular network and IEEE 802.11 network).

This document defines a different profile than the one for general connection to IPv6 cellular networks defined in the IPv6 for Third Generation Partnership Project (3GPP) Cellular Hosts document. In particular, this document identifies also features to deliver IPv4 connectivity service over an IPv6-only transport.

Both hosts and devices with capability to share their WAN (Wide Area Network) connectivity are in scope.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at http://datatracker.ietf.org/drafts/current/.

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."

This Internet-Draft will expire on March 21, 2015.

Copyright Notice

Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.


Table of Contents

1. Introduction

IPv6 deployment in 3GPP mobile networks is the only perennial solution to the exhaustion of IPv4 addresses in those networks. Several mobile operators have already deployed IPv6 [RFC2460] or are in the pre-deployment phase. One of the major hurdles encountered by mobile operators is the availability of non-broken IPv6 implementation in mobile devices.

[RFC7066] lists a set of features to be supported by cellular hosts to connect to 3GPP mobile networks. In the light of recent IPv6 production deployments, additional features to facilitate IPv6-only deployments while accessing IPv4-only service are to be considered.

This document defines a different profile than the one for general connection to IPv6 mobile networks defined in [RFC7066]; in particular:

This document defines an IPv6 profile for mobile devices listing specifications produced by various Standards Developing Organizations (in particular 3GPP and IETF). The objectives of this effort are:

  1. List in one single document a comprehensive list of IPv6 features for a mobile device, including both IPv6-only and dual-stack mobile deployment contexts. These features cover various network types such as GPRS (General Packet Radio Service), EPC (Evolved Packet Core) or IEEE 802.11 network.
  2. Help Operators with the detailed device requirement list preparation (to be exchanged with device suppliers). This is also a contribution to harmonize Operators’ requirements towards device vendors.
  3. Vendors to be aware of a set of features to allow for IPv6 connectivity and IPv4 service continuity (over an IPv6-only transport).

Pointers to some requirements listed in [RFC6434] are included in this profile. The justification for using a stronger language compared to what is specified in [RFC6434] is provided for some recommendations.

The recommendations do not include 3GPP release details. For more information on the 3GPP releases detail, the reader may refer to Section 6.2 of [RFC6459].

Some of the features listed in this profile document require to activate dedicated functions at the network side. It is out of scope of this document to list these network-side functions.

A detailed overview of IPv6 support in 3GPP architectures is provided in [RFC6459].

1.1. Terminology

This document makes use of the terms defined in [RFC6459]. In addition, the following terms are used:

PREFIX64 denotes an IPv6 prefix used to build IPv4-converted IPv6 addresses [RFC6052].

1.2. Scope

A 3GPP mobile network can be used to connect various user equipments such as a mobile telephone, a CPE (Customer Premises Equipment) or a machine-to-machine (M2M) device. Because of this diversity of terminals, it is necessary to define a set of IPv6 functionalities valid for any node directly connecting to a 3GPP mobile network. This document describes these functionalities.

This document is structured to provide the generic IPv6 recommendations which are valid for all nodes, whatever their function (e.g., host or CPE) or service (e.g., Session Initiation Protocol (SIP, [RFC3261])) capability. The document also contains sections covering specific functionalities for devices providing some LAN functions (e.g., mobile CPE or broadband dongles).

The recommendations listed below are valid for both 3GPP GPRS and 3GPP EPS (Evolved Packet System) access. For EPS, PDN-Connection term is used instead of PDP-Context.

This document identifies also some WLAN-related IPv6 recommendations. Other non-3GPP accesses [TS.23402] are out of scope of this document.

1.3. Language Considerations

The key words "must", "must not", "should", "should not", and "may" in this document are to be interpreted as described in RFC 2119 [RFC2119].

This document is not a standard, and conformance with it is not required in order to claim conformance with IETF standards for IPv6. The support of the full set of features may not be required in some deployment contexts. The authors believe that the support of a subset of the features included in this protocol may lead to degraded level of service in some deployment contexts.

This document uses these keywords only for precision.

2. Connectivity Recommendations

This section identifies the main connectivity recommendations to be followed by a cellular host to attach to a network using IPv6. Both dual-stack and IPv6-only deployment models are considered. IPv4 service continuity features are listed in this section because these are critical for Operators with an IPv6-only deployment model.

C_REC#1:
The cellular host must be compliant with Section 5.9.1 (IPv6 Addressing Architecture) and Section 5.8 (ICMPv6 support) of [RFC6434].
C_REC#2:
In order to allow each operator to select their own strategy regarding IPv6 introduction, the cellular host must support both IPv6 and IPv4v6 PDP-Contexts [TS.23060]. Both IPv6 and IPv4v6 PDP-Contexts must be supported. IPv4, IPv6 or IPv4v6 PDP-Context request acceptance depends on the cellular network configuration.
C_REC#3:
The cellular host must comply with the behavior defined in [TS.23060] [TS.23401] [TS.24008] for requesting a PDP-Context type. In particular, the cellular host must request by default an IPv6 PDP-Context if the cellular host is IPv6-only and requesting an IPv4v6 PDP-Context if the cellular host is dual-stack or when the cellular host is not aware of connectivity types requested by devices connected to it (e.g., cellular host with LAN capabilities as discussed in Section 4):

The text above focuses on the specification part which explains the behavior for requesting IPv6-related PDP-Context(s). Understanding this behavior is important to avoid having broken IPv6 implementations in cellular devices.

C_REC#4:
The cellular host must support the PCO (Protocol Configuration Options) [TS.24008] to retrieve the IPv6 address(es) of the Recursive DNS server(s).
C_REC#5:
The cellular host must support IPv6 aware Traffic Flow Templates (TFT) [TS.24008].
C_REC#6:
The cellular host must support the Neighbor Discovery Protocol ([RFC4861] and [RFC5942]).
C_REC#7:
The cellular host must comply with Section 5.6.1 of [RFC6434]. If the MTU used by cellular hosts is larger than 1280 bytes, they can rely on Path MTU discovery function to discover the real path MTU.
C_REC#8:
The cellular host must support IPv6 Stateless Address Autoconfiguration ([RFC4862]) apart from the exceptions noted in [TS.23060] (3G) and [TS.23401] (LTE):
C_REC#9:
The cellular host must comply with Section 7.3 of [RFC6434].
C_REC#10:
The cellular host must comply with Section 7.2.1 of [RFC6434].
C_REC#11:
If the cellular host receives the DNS information in several channels for the same interface, the following preference order must be followed:
C_REC#12:
The cellular host must be able to be configured to limit PDP type(s) for a given APN. The default mode is to allow all supported PDP types. Note, C_REC#3 discusses the default behavior for requesting PDP-Context type(s).
C_REC#13:
Because of potential operational deficiencies to be experienced in some roaming situations, the cellular host must be able to be configured with a home IP profile and a roaming IP profile. The aim of the roaming profile is to limit the PDP type(s) requested by the cellular host when out of the home network. Note, distinct PDP type(s) can be configured for home and roaming cases.
C_REC#14:
In order to ensure IPv4 service continuity in an IPv6-only deployment context, the cellular host should support a method to locally construct IPv4-embedded IPv6 addresses [RFC6052]. A method to learn PREFIX64 should be supported by the cellular host.
C_REC#15:
In order to ensure IPv4 service continuity in an IPv6-only deployment context, the cellular host should implement the Customer Side Translator (CLAT, [RFC6877]) function which is compliant with [RFC6052][RFC6145][RFC6146].

2.1. WLAN Connectivity Recommendations

It is increasingly common for cellular hosts have a WLAN interface in addition to their cellular interface. These hosts are likely to be connected to private or public hotspots. Below are listed some generic recommendations:

W_REC#1:
IPv6 must be supported on the WLAN interface. In particular, WLAN interface must behave properly when only an IPv6 connectivity is provided.
W_REC#2:
DHCPv6 client should be supported on WLAN interface.
W_REC#3:
WLAN interface should support Router Advertisement Options for DNS configuration (See Section 7.3 of [RFC6434]).
W_REC#4:
If the device receives the DNS information in several channels for the same interface, the following preference order must be followed:

3. Advanced Recommendations

This section identifies a set of advanced recommendations to meet regulatory constraints in some countries, fulfill requirements of critical services such as VoLTE, or enforce policies such as traffic offload.

A_REC#1:
The cellular host must be able to generate IPv6 addresses which preserve privacy.
A_REC#2:
The cellular host must support ROHC RTP Profile (0x0001) and ROHC UDP Profile (0x0002) for IPv6 ([RFC5795]). Other ROHC profiles may be supported.
A_REC#3:
The cellular host should support PCP [RFC6887].
A_REC#4:
In order for host-based validation of DNS Security Extensions (DNSSEC) to continue to function in an IPv6-only with NAT64 deployment context, the cellular host should embed a DNS64 function ([RFC6147]).
A_REC#5:
When the cellular host is dual-stack connected (i.e., configured with an IPv4 address and IPv6 prefix), it should support means to prefer native IPv6 connection over connection established through translation devices (e.g., NAT44 and NAT64).
A_REC#6:
The cellular host should support Happy Eyeballs procedure defined in [RFC6555].
A_REC#7:
The cellular host must comply with Section 5.3 of [RFC6434] and should support Router Advertisement extension for communicating default router preferences and more-specific routes as described in [RFC4191].

4. Recommendations for Cellular Devices with LAN Capabilities

This section focuses on cellular devices (e.g., CPE, smartphones, or dongles with tethering features) which provide IP connectivity to other devices connected to them. In such case, all connected devices are sharing the same 2G, 3G or LTE connection. In addition to the generic recommendations listed in Section 2, these cellular devices have to meet the recommendations listed below.

L_REC#1:
The cellular device must support Prefix Delegation capabilities [RFC3633] and must support Prefix Exclude Option for DHCPv6-based Prefix Delegation as defined in [RFC6603]. Particularly, it must behave as a Requesting Router.
L_REC#2:
The cellular CPE must be compliant with the requirements specified in [RFC6204].
L_REC#3:
For deployments requiring to share the same /64 prefix, the cellular device should support [RFC7278] to enable sharing a /64 prefix between the 3GPP interface towards the GGSN/PGW (WAN interface) and the LAN interfaces.
L_REC#4:
In order to ensure IPv4 service continuity in an IPv6-only deployment context, the cellular device should support the Customer Side Translator (CLAT) [RFC6877].
L_REC#5:
If a RA MTU is advertised from the 3GPP network, the cellular device should relay that upstream MTU information to the downstream attached LAN devices in RA.

5. APIs & Applications Recommendations

The use of address family dependent APIs (Application Programming Interfaces) or hard-coded IPv4 address literals may lead to broken applications when IPv6 connectivity is in use. This section identifies a set of recommendations aiming to minimize broken applications when the cellular device is attached to an IPv6 network.

APP_REC#1:
Name resolution libraries must support both IPv4 and IPv6.
APP_REC#2:
Applications provided by the mobile device vendor must be independent of the underlying IP address family.
APP_REC#3:
Applications provided by the mobile device vendor that use Uniform Resource Identifiers (URIs) must follow [RFC3986]. For example, SIP applications must follow the correction defined in [RFC5954].

6. Security Considerations

The security considerations identified in [RFC7066] and [RFC6459] are to be taken into account.

Security-related considerations that apply when the cellular device provides LAN features are specified in [RFC6092].

Address privacy considerations are discussed in [RFC4941] [RFC7217].

7. IANA Considerations

This document does not require any action from IANA.

8. Acknowledgements

Many thanks to C. Byrne, H. Soliman, H. Singh, L. Colliti, T. Lemon, B. Sarikaya, M. Mawatari, M. Abrahamsson, P. Vickers, V. Kuarsingh, E. Kline, S. Josefsson, A. Baryun, and J. Woodyatt for the discussion in the v6ops mailing list.

Special thanks to T. Savolainen, J. Korhonen, and J. Jaeggli for their detailed reviews and comments.

9. References

9.1. Normative References

[IR92] , , "IR.92.V4.0 – IMS Profile for Voice and SMS", March 2011.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) Specification", RFC 2460, December 1998.
[RFC3596] Thomson, S., Huitema, C., Ksinant, V. and M. Souissi, "DNS Extensions to Support IP Version 6", RFC 3596, October 2003.
[RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6", RFC 3633, December 2003.
[RFC3986] Berners-Lee, T., Fielding, R. and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005.
[RFC4861] Narten, T., Nordmark, E., Simpson, W. and H. Soliman, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, September 2007.
[RFC4862] Thomson, S., Narten, T. and T. Jinmei, "IPv6 Stateless Address Autoconfiguration", RFC 4862, September 2007.
[RFC5795] Sandlund, K., Pelletier, G. and L-E. Jonsson, "The RObust Header Compression (ROHC) Framework", RFC 5795, March 2010.
[RFC5942] Singh, H., Beebee, W. and E. Nordmark, "IPv6 Subnet Model: The Relationship between Links and Subnet Prefixes", RFC 5942, July 2010.
[RFC5954] Gurbani, V., Carpenter, B. and B. Tate, "Essential Correction for IPv6 ABNF and URI Comparison in RFC 3261", RFC 5954, August 2010.
[RFC6052] Bao, C., Huitema, C., Bagnulo, M., Boucadair, M. and X. Li, "IPv6 Addressing of IPv4/IPv6 Translators", RFC 6052, October 2010.
[RFC6603] Korhonen, J., Savolainen, T., Krishnan, S. and O. Troan, "Prefix Exclude Option for DHCPv6-based Prefix Delegation", RFC 6603, May 2012.
[RFC7066] Korhonen, J., Arkko, J., Savolainen, T. and S. Krishnan, "IPv6 for Third Generation Partnership Project (3GPP) Cellular Hosts", RFC 7066, November 2013.
[TS.23060] , , "General Packet Radio Service (GPRS); Service description; Stage 2", September 2011.
[TS.23401] , , "General Packet Radio Service (GPRS) enhancements for Evolved Universal Terrestrial Radio Access Network (E-UTRAN) access", September 2011.
[TS.24008] , , "Mobile radio interface Layer 3 specification; Core network protocols; Stage 3", June 2011.

9.2. Informative References

[Power] Haverinen, H., Siren, J. and P. Eronen, "Energy Consumption of Always-On Applications in WCDMA Networks", April 2007.
[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002.
[RFC3550] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, July 2003.
[RFC3736] Droms, R., "Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6", RFC 3736, April 2004.
[RFC3948] Huttunen, A., Swander, B., Volpe, V., DiBurro, L. and M. Stenberg, "UDP Encapsulation of IPsec ESP Packets", RFC 3948, January 2005.
[RFC4033] Arends, R., Austein, R., Larson, M., Massey, D. and S. Rose, "DNS Security Introduction and Requirements", RFC 4033, March 2005.
[RFC4034] Arends, R., Austein, R., Larson, M., Massey, D. and S. Rose, "Resource Records for the DNS Security Extensions", RFC 4034, March 2005.
[RFC4035] Arends, R., Austein, R., Larson, M., Massey, D. and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, March 2005.
[RFC4191] Draves, R. and D. Thaler, "Default Router Preferences and More-Specific Routes", RFC 4191, November 2005.
[RFC4941] Narten, T., Draves, R. and S. Krishnan, "Privacy Extensions for Stateless Address Autoconfiguration in IPv6", RFC 4941, September 2007.
[RFC6092] Woodyatt, J., "Recommended Simple Security Capabilities in Customer Premises Equipment (CPE) for Providing Residential IPv6 Internet Service", RFC 6092, January 2011.
[RFC6106] Jeong, J., Park, S., Beloeil, L. and S. Madanapalli, "IPv6 Router Advertisement Options for DNS Configuration", RFC 6106, November 2010.
[RFC6145] Li, X., Bao, C. and F. Baker, "IP/ICMP Translation Algorithm", RFC 6145, April 2011.
[RFC6146] Bagnulo, M., Matthews, P. and I. van Beijnum, "Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers", RFC 6146, April 2011.
[RFC6147] Bagnulo, M., Sullivan, A., Matthews, P. and I. van Beijnum, "DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers", RFC 6147, April 2011.
[RFC6204] Singh, H., Beebee, W., Donley, C., Stark, B. and O. Troan, "Basic Requirements for IPv6 Customer Edge Routers", RFC 6204, April 2011.
[RFC6434] Jankiewicz, E., Loughney, J. and T. Narten, "IPv6 Node Requirements", RFC 6434, December 2011.
[RFC6459] Korhonen, J., Soininen, J., Patil, B., Savolainen, T., Bajko, G. and K. Iisakkila, "IPv6 in 3rd Generation Partnership Project (3GPP) Evolved Packet System (EPS)", RFC 6459, January 2012.
[RFC6555] Wing, D. and A. Yourtchenko, "Happy Eyeballs: Success with Dual-Stack Hosts", RFC 6555, April 2012.
[RFC6724] Thaler, D., Draves, R., Matsumoto, A. and T. Chown, "Default Address Selection for Internet Protocol Version 6 (IPv6)", RFC 6724, September 2012.
[RFC6877] Mawatari, M., Kawashima, M. and C. Byrne, "464XLAT: Combination of Stateful and Stateless Translation", RFC 6877, April 2013.
[RFC6887] Wing, D., Cheshire, S., Boucadair, M., Penno, R. and P. Selkirk, "Port Control Protocol (PCP)", RFC 6887, April 2013.
[RFC7050] Savolainen, T., Korhonen, J. and D. Wing, "Discovery of the IPv6 Prefix Used for IPv6 Address Synthesis", RFC 7050, November 2013.
[RFC7051] Korhonen, J. and T. Savolainen, "Analysis of Solution Proposals for Hosts to Learn NAT64 Prefix", RFC 7051, November 2013.
[RFC7217] Gont, F., "A Method for Generating Semantically Opaque Interface Identifiers with IPv6 Stateless Address Autoconfiguration (SLAAC)", RFC 7217, April 2014.
[RFC7225] Boucadair, M., "Discovering NAT64 IPv6 Prefixes Using the Port Control Protocol (PCP)", RFC 7225, May 2014.
[RFC7278] Byrne, C., Drown, D. and A. Vizdal, "Extending an IPv6 /64 Prefix from a Third Generation Partnership Project (3GPP) Mobile Interface to a LAN Link", RFC 7278, June 2014.
[RFC7335] Byrne, C., "IPv4 Service Continuity Prefix", RFC 7335, August 2014.
[TS.23402] , , "Architecture enhancements for non-3GPP accesses", September 2011.

Authors' Addresses

David Binet France Telecom Rennes, France EMail: david.binet@orange.com
Mohamed Boucadair France Telecom Rennes, 35000 France EMail: mohamed.boucadair@orange.com
Ales Vizdal Deutsche Telekom AG EMail: ales.vizdal@t-mobile.cz
Gang Chen China Mobile EMail: phdgang@gmail.com
Nick Heatley EE The Point, 37 North Wharf Road, London, W2 1AG U.K EMail: nick.heatley@ee.co.uk
Ross Chandler eircom | meteor 1HSQ St. John’s Road Dublin 8, Ireland EMail: ross@eircom.net