<?xml version="1.0" encoding="US-ASCII"?>
<!--  USED xml2rfc v2 -->

<!-- [rfced] FYI, we have used xml2rfc v2 (available from 
http://xml.resource.org) to convert this document to text. -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
    <!ENTITY RFC1035 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1035.xml'>
    <!ENTITY RFC2026 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2026.xml'>
    <!ENTITY RFC2104 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2104.xml'>
    <!ENTITY RFC2246 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2246.xml'>
    <!ENTITY RFC5213 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5213.xml'>
    <!ENTITY RFC4301 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4301.xml'>
    <!ENTITY RFC2451 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2451.xml'>
    <!ENTITY RFC2460 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2460.xml'>
    <!ENTITY RFC4861 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4861.xml'>
    <!ENTITY RFC4862 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4862.xml'>
    <!ENTITY RFC2463 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2463.xml'>
    <!ENTITY RFC2473 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2473.xml'>
    <!ENTITY RFC2710 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2710.xml'>
    <!ENTITY RFC2711 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2711.xml'>
    <!ENTITY RFC2874 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2874.xml'>
    <!ENTITY RFC4941 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4941.xml'>
    <!ENTITY RFC3152 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3152.xml'>
    <!ENTITY RFC6724 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6724.xml'>
    <!ENTITY RFC3513 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3513.xml'>

    <!ENTITY RFC3315 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3315.xml'>
    <!ENTITY RFC1034 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1034.xml'>
    <!ENTITY RFC2529 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2529.xml'>
    <!ENTITY RFC2205 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2205.xml'>
    <!ENTITY RFC3314 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3314.xml'>
    <!ENTITY RFC6459 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6459.xml'>

    <!ENTITY RFC6434 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6434.xml'>
    <!ENTITY RFC4213 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4213.xml'>
    <!ENTITY RFC5555 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5555.xml'>
    <!ENTITY RFC3633 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3633.xml'>
    <!ENTITY RFC6603 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6603.xml'>
    <!ENTITY RFC3736 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3736.xml'>
    <!ENTITY RFC4191 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4191.xml'>
    <!ENTITY RFC4193 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4193.xml'>
    <!ENTITY RFC6106 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6106.xml'>
    <!ENTITY RFC3316 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3316.xml'>
    <!ENTITY RFC5095 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5095.xml'>
    <!ENTITY RFC5722 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5722.xml'>
    <!ENTITY RFC6583 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6583.xml'>
    <!ENTITY RFC5072 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5072.xml'>
    <!ENTITY RFC1661 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1661.xml'>
    <!ENTITY RFC3550 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3550.xml'>
    <!ENTITY RFC3261 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3261.xml'>
    <!ENTITY RFC6980 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6980.xml'>
    <!ENTITY RFC5246 PUBLIC '' 
      'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5246.xml'>
]>

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc rfcedstyle="yes"?>
<?rfc compact="yes"?>  
<?rfc subcompact="no"?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>


<rfc number="7066" category="info"
     ipr="trust200902"
     submissionType="IETF" consensus="yes"
     obsoletes="3316">
 <front>
  <title abbrev="IPv6 for 3GPP Cellular Hosts">IPv6 for Third Generation
Partnership Project (3GPP) Cellular Hosts</title>

  <author role="editor" initials='J.' surname="Korhonen" fullname='Jouni Korhonen'>
   <organization abbrev="Broadcom">Broadcom</organization>
   <address>
    <postal>
     <street>Porkkalankatu 24</street>
     <code>FIN-00180 Helsinki</code>
     <country>Finland</country>
    </postal>
    <email>jouni.nospam@gmail.com</email>
   </address>
  </author>

  <author role="editor"  initials='J.' surname="Arkko" fullname='Jari Arkko'>
   <organization abbrev="Ericsson">Ericsson</organization>
   <address>
    <postal>
     <street/>
     <code>Jorvas  02420</code>
     <country>Finland</country>
    </postal>
    <email>jari.arkko@piuha.net</email>
   </address>
  </author>
  
  <author initials="T" surname="Savolainen" fullname="Teemu Savolainen">
   <organization>Nokia</organization>
   <address>
    <postal>
     <street>Hermiankatu 12 D</street>
     <code>FI-33720 Tampere</code>
     <country>Finland</country>
    </postal>
    <email>teemu.savolainen@nokia.com</email>
   </address>
  </author>

  <author initials="S.K." surname="Krishnan" fullname='Suresh Krishnan'>
    <organization>Ericsson</organization>
    <address>
      <postal>
        <street>8400 Decarie Blvd.</street>
        <city>Town of Mount Royal</city>
        <region>QC</region>
        <country>Canada</country>
      </postal>
      <phone>+1 514 345 7900 x42871</phone>
      <email>suresh.krishnan@ericsson.com</email>
    </address>
  </author>

  
  <date month="November" year="2013"/>
  <area>Internet</area>
  <workgroup>IPv6 Operations (V6OPS)</workgroup>

  <abstract>
   <t>As the deployment of third and fourth generation cellular
   networks progresses, a large number of cellular hosts are being
   connected to the Internet.  Standardization organizations have
   made the Internet Protocol version 6 (IPv6) mandatory in their
   specifications.  However, the concept of IPv6 covers many aspects
   and numerous specifications.  In addition, the characteristics of
   cellular links in terms of bandwidth, cost, and delay put special
   requirements on how IPv6 is used.  This document considers IPv6 for
   cellular hosts that attach to the General Packet Radio Service
   (GPRS), Universal Mobile Telecommunications System (UMTS), or
   Evolved Packet System (EPS) networks (hereafter collectively
   referred to as Third Generation Partnership Project (3GPP) networks).  This
   document also lists specific IPv6 functionalities that need to be
   implemented in addition to what is already prescribed in the IPv6 Node
   Requirements document (RFC 6434). It also discusses some issues related to
   the use of these components when operating in these networks.  This document
   obsoletes RFC 3316.
   </t>
  </abstract>
 </front>
 <middle>

 <section title="Introduction">
   <t>Technologies such as GPRS (General Packet Radio Service), UMTS
   (Universal Mobile Telecommunications System), Evolved Packet System
   (EPS), CDMA2000 (Code Division Multiple Access 2000), and eHRPD
   (Enhanced High Rate Packet Data) are making it possible for
   cellular hosts to have an always-on connection to the Internet.
   IPv6 <xref target="RFC2460"/> has become essential to such networks
   as the number of cellular hosts is increasing rapidly.
   Standardization organizations working with cellular technologies
   have recognized this and made IPv6 mandatory in their
   specifications.
   </t>
   
   <t>Support for IPv6 and the introduction of UMTS started with 3GPP
   Release-99 networks and hosts. For a detailed description of IPv6 in
   3GPP networks, including the Evolved Packet System, see <xref
   target="RFC6459"/>.
   </t>
   
  <section title="Scope of This Document">
   <t>For the purpose of this document, a cellular interface is considered
   to be the interface to a cellular access network based on the
   following standards: 3GPP GPRS and UMTS Release-99 and Release-4 to
   Release-11; EPS Release-8 to Release-11; and future UMTS or EPS
    releases.
   A cellular host is considered to be a host with such a cellular interface.
   </t>

   <t>This document complements the IPv6 Node Requirements <xref 
   target="RFC6434"/> in places where clarifications are needed with discussion
   on the use of these selected IPv6 specifications when operating over a cellular
   interface. Such a
   specification is necessary in order to enable the optimal use of IPv6 in a
   cellular network environment.  The description is made from the point of
view of a cellular host. Complementary access technologies may be supported by the 
   cellular host, but those are not discussed in detail. Important considerations
   are given in order to eliminate unnecessary user confusion over configuration
   options, ensure interoperability, and provide an easy reference for those
   who are implementing IPv6 in a cellular host.  It is necessary to ensure that
   cellular hosts are good citizens of the Internet.
   </t>
   <t>This document is informational in its nature, and it is not intended to
   replace, update, or contradict any IPv6 standards documents or the IPv6 Node
   Requirements <xref target="RFC6434"/>.
   </t>

   <t>This document is primarily targeted to the implementers of
   cellular hosts that will be used with the cellular networks listed
   in this document. This document provides guidance on which IPv6-related
   specifications are to be implemented in such cellular hosts.  Parts
   of this document may also apply to other cellular link types, but
   this document does not provide any detailed analysis on other link
   types. This document should not be used as a definitive list of
   IPv6 functionalities for cellular links other than those listed
   above.  Future changes in 3GPP networks that impact host
   implementations may result in updates to this document.
   </t>

   <t>There are different ways to implement cellular hosts:
   </t>

   <t><list style="symbols">
    <t>The host can be a "closed" device with optimized built-in applications, with no
    possibility to add or download applications that can have IP communications.  An
    example of such a host is a very simple form of a mobile phone.
    </t>
    <t>The host can be an open device, e.g., a "smart phone" where it is possible
           to download applications to expand the functionality of the device.
    </t>
    <t>The cellular radio modem part can be separated from the host IP
    stack with an interface. One example of such a host is a laptop computer
    that uses a USB cellular modem for cellular access.
    </t>
   </list></t>

   <t>If a cellular host has additional IP-capable interfaces
   (such as Ethernet, WLAN, Bluetooth, etc.), then there may be
   additional requirements for the device, beyond what is discussed in
   this document.  Additionally, this document does not make any
   recommendations on the functionality required on laptop computers
   having a cellular interface such as an embedded modem or a USB modem
   stick, other than
   recommending link-specific behavior on the cellular link.
   </t>
   <t>This document discusses IPv6 functionality as of the time when
   this document was written. Ongoing work on IPv6 may affect
   what is required of future hosts.
   </t>

   <t>Transition mechanisms used by cellular hosts are not in the
   scope of this document and are left for further study. The primary
   transition mechanism supported by 3GPP is dual-stack <xref
   target="RFC4213"/>. Dual-stack-capable bearer support has been added to GPRS
   starting from 3GPP Release-9 and to EPS starting from Release-8
   <xref target="RFC6459"/>, whereas the earlier 3GPP releases required multiple
   single IP version bearers to support dual-stack.
   </t>
  </section>

  <section title="Abbreviations">
   <t><list style="hanging" hangIndent="6">
    <t hangText="2G">Second Generation Mobile Telecommunications, such as
Global System for Mobile Communications (GSM) 
      and GPRS technologies.
    </t>
    <t hangText="3G">Third Generation Mobile Telecommunications, such as UMTS
     technology.
    </t>
    <t hangText="4G">Fourth Generation Mobile Telecommunications, such as LTE
     technology.
    </t>
    <t hangText="3GPP">Third Generation Partnership Project.  Throughout the 
    document, the term "3GPP networks"
    refers to architectures standardized by 3GPP, in Second, Third, and
    Fourth Generation releases: 99, 4, and 5, as well as future
    releases.
    </t>
    <t hangText="EPS">Evolved Packet System.</t>
    <t hangText="GGSN">Gateway GPRS Support Node (a default router for 3GPP
     IPv6 cellular hosts in GPRS).</t>
    <t hangText="GPRS">General Packet Radio Service.</t>
    <t hangText="LTE">Long Term Evolution.</t>
    <t hangText="MT">Mobile Terminal, for example, a mobile phone handset.</t>
    <t hangText="MTU">Maximum Transmission Unit.</t>
    <t hangText="PDN">Packet Data Network.</t>
    <t hangText="PDP">Packet Data Protocol.</t>
    <t hangText="PGW">Packet Data Network Gateway (the default router
    for 3GPP IPv6 cellular hosts in EPS).</t>
    <t hangText="SGW">Serving Gateway (the user plane equivalent of a Serving
     GPRS Support Node (SGSN) in 
     EPS (and the default router for 3GPP IPv6 cellular hosts when using 
     Proxy Mobile IPv6 (PMIPv6))).</t>
    <t hangText="TE">Terminal Equipment, for example, a laptop attached through 
     a 3GPP handset.</t>
    <t hangText="UMTS">Universal Mobile Telecommunications System.</t>
    <t hangText="WLAN">Wireless Local Area Network.</t>
   </list></t>
  </section>
  <section title="Cellular Host IPv6 Features">
   <t>This document lists IPv6 features for cellular hosts; these features
   are split into three groups and are discussed below.
   </t>
   <t><list style="hanging">
    <t hangText="Basic IP">
     <vspace blankLines="1"/>
          In this group, the basic IPv6 features essential for
          cellular hosts are listed and described.

    </t>
    <t hangText="IP Security">
     <vspace blankLines="1"/>
          In this group, the parts related to IP Security are described.

    </t>
    <t hangText="Mobility">
     <vspace blankLines="1"/>
          In this group, IP-layer mobility issues are described.
    </t>
   </list></t>
  </section>
 </section>
 <section title="Basic IP">
  <t>For most parts, refer to the IPv6 Node Requirements document <xref 
   target="RFC6434"/>.
  </t>

  <section title="Internet Protocol Version 6" anchor="ipv6">

   <t>The Internet Protocol version 6 (IPv6) is specified in <xref 
   target="RFC2460"/>.  This specification is a mandatory part of IPv6.
   A cellular host must conform to the generic IPv6 host requirements
   <xref target="RFC6434"/>, unless specifically pointed out
   otherwise in this document.
   </t>
  </section>

  <section title="Neighbor Discovery in 3GPP Networks" anchor="ndp">

   <t>A cellular host must support Neighbor Solicitation and Neighbor
   Advertisement messages <xref target="RFC4861"/>. Some further notes on
   how Neighbor Discovery is applied in the particular type of an interface
   can be useful.
   </t>

   <t>In 3GPP networks, some Neighbor Discovery messages
   can be unnecessary in certain cases.  GPRS, UMTS, and EPS links
   resemble a point-to-point link; hence, the cellular host's only
   neighbor on the cellular link is the default router that is already
   known through Router Discovery. The cellular host always solicits
   for routers when the cellular interface is brought up (as described in
   <xref target="RFC4861"/>, Section 6.3.7).
   </t>

   <t>There are no link-layer addresses on the 3GPP cellular link technology.
   Therefore, address
   resolution and next-hop determination are not needed. If the
   cellular host still attempts to do address resolution, e.g., for the
   default router, it must be understood that the GGSN/PGW may not
   even answer the address resolution Neighbor Solicitations. And even
   if it does, the Neighbor Advertisement is unlikely to contain the
   Target link-layer address option as there are no link-layer
   addresses on the 3GPP cellular link technology.
   </t>

   <t>The cellular host must support Neighbor Unreachability Detection
   (NUD) as specified in <xref target="RFC4861"/>. Note that the
   link-layer address considerations above also apply to NUD.  The
   NUD-triggered Neighbor Advertisement
   is also unlikely to contain the Target link-layer address option as
   there are no link-layer addresses. The cellular host should also be
   prepared for NUD initiated by a router (i.e., GGSN/PGW). However, it is
   unlikely a router-to-host NUD would ever take place on GPRS,
   UMTS, or EPS links. See <xref target="autoconf"/> for more discussion
   on the router-to-host NUD.
   </t>

   <t>In 3GPP networks, it is  desirable to reduce
   any additional periodic signaling. Therefore, the cellular host
   should include a mechanism in upper-layer protocols to provide
   reachability confirmations when two-way IP-layer reachability can
   be confirmed (see <xref target="RFC4861"/>, Section 7.3.1).  These
   confirmations would allow the suppression of NUD-related messages
   in most cases.
   </t>

   <t>Host TCP implementation should provide reachability confirmation in
   the manner explained in <xref target="RFC4861"/>, Section 7.3.1.
   </t>

   <t>The widespread use of UDP in 3GPP networks poses a problem for
   providing reachability confirmation.  As UDP itself is unable to
   provide such confirmation, applications running on top of UDP
   should provide the confirmation where possible.  In particular,
   when UDP is used for transporting DNS, the DNS response should be
   used as a basis for reachability confirmation. Similarly, when UDP
   is used to transport RTP <xref target="RFC3550"/>, the RTP Control Protocol (RTCP)
   <xref target="RFC3550"/> feedback should be used
   as a basis for the reachability confirmation.  If an RTCP packet is
   received with a reception report block indicating some packets have
   gone through, then packets are reaching the peer.  If they have
   reached the peer, they have also reached the neighbor.
   </t>

   <t>When UDP is used for transporting SIP <xref target="RFC3261"/>,
   responses to SIP requests
   should be used as the confirmation that packets sent to the peer are
   reaching it.  When the cellular host is acting as the server-side SIP
   node, no such confirmation is generally available.  However, a host
   may interpret the receipt of a SIP ACK request as confirmation that
   the previously sent response to a SIP INVITE request has reached the
   peer.
   </t>
  </section>

  <section title="Stateless Address Autoconfiguration">
   <t>IPv6 Stateless Address Autoconfiguration is defined in <xref 
    target="RFC4862"/>. This specification is a mandatory part of IPv6 and
    also the only mandatory method to configure an IPv6 address in a 3GPP
    cellular host.
   </t>

  <t>A cellular host in a 3GPP network must process a Router
     Advertisement as stated in <xref target="RFC4862"/>. The Router
     Advertisement contains a maximum of one prefix information option with
     lifetimes set to infinite (both valid and preferred lifetimes).
     The advertised prefix cannot ever be used for on-link
     determination (see <xref target="RFC6459"/>, Section 5.2), and the
     lifetime of the advertised prefix is tied to the PDP Context/PDN
     Connection lifetime. 
      Keeping the forward compatibility in mind, there is no reason for
     the 3GPP cellular host to have 3GPP-specific handling of the prefix
     information option(s) although 3GPP specifications state that the
     Router Advertisement may contain a maximum of one prefix information
     option and the lifetimes are set to infinite.
   </t>

   <t>Hosts in 3GPP networks can set DupAddrDetectTransmits equal to
     zero, as each assigned prefix is unique within its scope when
     advertised using 3GPP IPv6 Stateless Address Autoconfiguration.
     In addition, the default router (GGSN/PGW) will not configure any
     addresses on its interfaces based on prefixes advertised to IPv6
     cellular hosts on those interfaces.  Thus, the host is not required
     to perform Duplicate Address Detection on the cellular interface.
   </t>
   <t>Furthermore, the GGSN/PGW will provide the cellular host with an
     interface identifier that must be used for link-local address
     configuration.  The link-local address configured from this
     interface identifier is guaranteed not to collide with the
     link-local address that the GGSN/PGW uses.  Thus, the cellular host
     is not required to perform Duplicate Address Detection for the
     link-local address  on the cellular interface.
   </t>
   
   <t>See <xref target="autoconf"/> for more details on 3GPP IPv6 Stateless 
      Address Autoconfiguration.
   </t>
  </section>

  <section title="IP Version 6 over PPP">
   <t>A cellular host in a 3GPP network that supports PPP <xref target="RFC1661"/>
   on the interface between the MT and the TE must support the IPv6 Control
Protocol (IPV6CP)
   <xref target="RFC5072"/> interface identifier option.  This option is needed
   to be able to  connect other
   devices to the Internet using a PPP link between the cellular device
   (MT, e.g., a USB dongle) and other devices (TE, e.g., a laptop).
   The MT performs the PDP
   Context activation based on a request from the TE.  This results in
   an interface identifier being suggested by the MT to the TE, using
   the IPV6CP option.  To avoid any duplication in link-local addresses
   between the TE and the GGSN/PGW, the MT must always reject other
   suggested interface identifiers by the TE.  This results in the TE
   always using the interface identifier suggested by the GGSN/PGW for its
   link-local address.
   </t>

   <t>The rejection of interface identifiers suggested by the TE is only
   done for creation of link-local addresses, according to 3GPP
   specifications.  The use of privacy addresses <xref target="RFC4941"/> or
   similar technologies for unique local IPv6 unicast addresses 
   <xref target="RFC4193"/> and global addresses is not affected by the above
   procedure.
   </t>
  </section>
  <section title="Multicast Listener Discovery (MLD) for IPv6">
   <t>Within 3GPP networks, hosts connect to their default routers (GGSN/PGW)
   via point-to-point links.  Moreover, there are exactly two IP devices
   connected to the point-to-point link, and no attempt is made (at the
   link layer) to suppress the forwarding of multicast traffic.
   Consequently, sending MLD reports for link-local addresses in a 3GPP
   environment is not necessary, although sending them causes no
   harm or interoperability issues. Refer to Section 5.10 of <xref target="RFC6434"/>
   for MLD usage for multicast group knowledge that is not link-local.
   </t>

  </section>
  <section title="Privacy Extensions for Address Configuration in IPv6">
   <t>Privacy Extensions for Stateless Address Autoconfiguration <xref
   target="RFC4941"/> or other similar technologies may be supported
   by a cellular host. Privacy, in general, is important for the Internet.
   In 3GPP networks, the lifetime of an address assignment depends on
   many factors such as radio coverage, device status, and user preferences.
   As a result, the prefix the cellular host uses is also subject to
   frequent changes.
   </t>

   <t>Refer to <xref target="security"/> for a discussion of the benefits of 
   Privacy Extensions in a 3GPP network.
   </t>
  </section>
  <section title="Dynamic Host Configuration Protocol for IPv6 (DHCPv6)">
   <t>As of 3GPP Release-11, the Dynamic Host Configuration
   Protocol for IPv6 (DHCPv6) <xref target="RFC3315"/> is
   neither required nor supported for address autoconfiguration.
   IPv6 Stateless Address Autoconfiguration still remains the only mandatory
   address configuration method.  However, DHCPv6 may be useful for
   other configuration needs on a cellular host, e.g., Stateless DHCPv6
   <xref target="RFC3736"/> may be used to configure DNS and SIP
   server addresses, and DHCPv6 Prefix Delegation <xref
   target="RFC3633"/> may be used to delegate a prefix to the cellular
   host for use on its downstream non-cellular links.
   </t>
  </section>

  <section title="DHCPv6 Prefix Delegation">
   <t>Starting from Release-10, DHCPv6 Prefix Delegation was added as an
   optional feature to the 3GPP system architecture <xref target="RFC3633"/>.
   The Prefix Delegation model defined for Release-10 requires that the /64
   IPv6 prefix assigned to the cellular host on the 3GPP link must aggregate
   with the shorter delegated IPv6 prefix. The cellular host should implement
   the Prefix Exclude Option for DHCPv6 Prefix Delegation <xref 
   target="RFC6603"/> (see <xref target="RFC6459"/>, Section 5.3 for further
   discussion).
   </t>
  </section>

  <section title="Router Preferences and More-Specific Routes">
   <t>The cellular host should implement the Default Router
   Preferences and More-Specific Routes extension to 
   Router Advertisement messages <xref target="RFC4191"/>. These
   options may be useful for cellular hosts that also have additional
   interfaces on which IPv6 is used.
   </t>
  </section>

  <section title="Neighbor Discovery and Additional Host Configuration">
   <t>The DNS server configuration is learned from the 3GPP link-layer signaling.
   However, the cellular host should also implement the IPv6 Router Advertisement Options 
   for DNS Configuration <xref target="RFC6106"/>. DHCPv6 is still optional for
   cellular hosts, and learning the DNS server addresses from the link-layer signaling
   can be cumbersome when the MT and
   the TE are separated using techniques other than the PPP interface.
   </t>
   <t>The cellular host should also honor the MTU option in the Router
   Advertisement (see <xref target="RFC4861"/>, Section 4.6.4). The 3GPP
   system architecture uses extensive tunneling in its packet core
   network below the 3GPP link, and this may lead to packet
   fragmentation issues. Therefore, the GGSN/PGW may propose to the
   cellular host an MTU that takes the additional tunneling overhead into
   account.
   </t>
  </section>
   </section>

 <section title="IP Security" anchor="ipsec">
   <t>IPsec <xref target="RFC4301"/> is a fundamental, but not mandatory, part
    of IPv6. Refer to the IPv6 Node Requirements (Section 11 of <xref
target="RFC6434"/>)
    for the security requirements that also apply to cellular hosts.
   </t>


  <section title="Extension Header Considerations" anchor="exthdr">
   <t>Support for the Routing Header Type 0 (RH0) has been deprecated
   <xref target="RFC5095"/>. Therefore, the cellular host should by default
   follow the RH0 processing described in Section 3 of <xref target="RFC5095"/>.
   </t>

   <t>IPv6 packet fragmentation has known security concerns. The cellular
   host must follow the handling of overlapping fragments as described
   in <xref target="RFC5722"/>, and the cellular host must not fragment any
   Neighbor Discovery messages as described in
   <xref target="RFC6980"/>.
   </t>
  </section>
 </section>

 <section title="Mobility">
  <t>For the purposes of this document, IP mobility is not relevant. The
   movement of cellular hosts within 3GPP networks is handled by link-layer 
   mechanisms in the majority of cases. &nbsp;3GPP Release-8 introduced 
   Dual-Stack Mobile IPv6 (DSMIPv6) for client-based mobility <xref
   target="RFC5555"/>.
   Client-based IP mobility is optional in the 3GPP architecture.
  </t>
 </section>

 <section title="Acknowledgements">
  <t>The authors would like to thank the original authors for their
  groundwork for this document: Gerben Kuijpers, John Loughney,
  Hesham Soliman, and Juha Wiljakka.
  </t>
  <t>The original <xref target="RFC3316"/> document was based on the results of
     a team that included Peter Hedman and Pertti Suomela in addition to the
     authors.  Peter and Pertti have contributed both text and their IPv6
     experience to this document.
  </t>
  <t>The authors would like to thank Jim Bound, Brian Carpenter, Steve
   Deering, Bob Hinden, Keith Moore, Thomas Narten, Erik Nordmark,
   Michael Thomas, Margaret Wasserman, and others on the IPv6 WG mailing
   list for their comments and input.
  </t>
  <t>We would also like to thank David DeCamp, Karim El Malki, Markus
   Isomaki, Petter Johnsen, Janne Rinne, Jonne Soininen, Vlad Stirbu, and
   Shabnam Sultana for their comments and input in preparation of this
   document.
  </t>
  <t>For this revised version of <xref target="RFC3316"/> the authors would
    like to thank Dave Thaler, Ales Vizdal, Gang Chen, Ray Hunter, Charlie
    Kaufman, Owen DeLong, and Alexey Melnikov for their comments, reviews, and
    input.

  </t>
 </section>

 <section title="Security Considerations" anchor="security">
  <t>This document does not specify any new protocols or functionalities,
   and as such, it does not introduce any new security vulnerabilities.
   However, specific profiles of IPv6 functionality are proposed for
   different situations, and vulnerabilities may open or close depending
   on which functionality is included and what is not.  There are also
   aspects of the cellular environment that make certain types of
   vulnerabilities more severe.  The following issues are discussed:
  </t>
  <t><list style="symbols">
   <t>The suggested limitations (<xref target="exthdr"/>) in the processing of
    extension headers also limits exposure to Denial-of-Service (DoS) attacks
    through cellular hosts.
   </t>

   <t>IPv6 addressing privacy <xref target="RFC4941"/> or similar technology
     may be used in cellular hosts. However, it should be noted that in the
     3GPP model, the network would assign a new prefix, in most cases,
     to hosts in roaming situations; the network would also typically
     assign a new prefix when the cellular hosts activate a PDP Context
     or a PDN Connection. 3GPP devices must not use interface identifiers that
     are unique to the device, so the only difference in address between
     3GPP devices using Stateless Address Autoconfiguration is
     in the prefix. This means that 3GPP networks will already provide a
     limited form of addressing privacy, and no global tracking of a single
     host is possible through its address. On the other hand,
     since a GGSN/PGW's coverage area is expected to be very large when
     compared to currently deployed default routers (no handovers
     between GGSN/PGWs are possible), a cellular host can keep a prefix
     for a long time.  Hence, IPv6 addressing privacy can be used for
     additional privacy during the time the host is on and in the same
     area.  The privacy features can also be used to, e.g., make
     different transport sessions appear to come from different IP
     addresses.  However, it is not clear that these additional efforts
     confuse potential observers any further, as they could monitor only
     the network prefix part.
     </t>

   <t>The use and recommendations of various security services such as
     IPsec or Transport Layer Security (TLS) <xref target="RFC5246"/> in the connection of typical
         applications that also apply to cellular hosts are discussed in
         Section 11 of <xref target="RFC6434"/>.
   </t>

   <t>The airtime used by cellular hosts is expensive.  In some cases,
     users are billed according to the amount of data they transfer to
     and from their host.  It is crucial for both the network and the
     users that the airtime is used correctly and no extra charges are
     applied to users due to misbehaving third parties.  The cellular
     links also have a limited capacity, which means that they may not
     necessarily be able to accommodate more traffic than what the user
     selected, such as a multimedia call.  Additional traffic might
     interfere with the service level experienced by the user.  While
     Quality-of-Service mechanisms mitigate these problems to an extent,
     it is still apparent that DoS aspects may be highlighted in the
     cellular environment.  It is possible for existing DoS attacks that
     use, for instance, packet amplification, to be substantially more
     damaging in this environment.  How these attacks can be protected
     against is still an area for further study.  It is also often easy
     to fill the cellular link and queues on both sides with additional
     or large packets.
     </t>

   <t>Within some service provider networks, it is possible to buy a
     prepaid cellular subscription without presenting personal
     identification.  Attackers that wish to remain unidentified could
     leverage this.  Note that while the user hasn't been identified,
     the equipment still is; the operators can follow the identity of
     the device and block it from further use.  The operators must have
     procedures in place to take notice of third party complaints
     regarding the use of their customers' devices.  It may also be
     necessary for the operators to have attack detection tools that
     enable them to efficiently detect attacks launched from the
     cellular hosts.
     </t>

   <t>Cellular devices that have local network interfaces (such as WLAN
     or Bluetooth) may be used to launch attacks through them, unless
     the local interfaces are secured in an appropriate manner.
     Therefore, local network interfaces should have access control to
     prevent others from using the cellular host as an intermediary.
    </t>
    <t>The 3GPP link model mitigates most of the known IPv6 on-link  and
     neighbor cache targeted attacks (see <xref target="ndp"/> and
     <xref target="autoconf"/>).
    </t>
    <t>Advice for implementations in the face of Neighbor Discovery 
     DoS attacks may be useful in some environments
     <xref target="RFC6583"/>.
    </t>
    <t>Section 9 of <xref target="RFC6459"/> further discusses some recent
           concerns related to the security of cellular hosts.
    </t>
   </list></t>
  </section>
 </middle>
 <back>
 <references title="Normative References">
  &RFC4301;
  &RFC2460;
  &RFC4861;
  &RFC4862;
  &RFC4941;
  &RFC6434;
  &RFC4213;
  &RFC5095;
  &RFC5722;
  &RFC6980;
 </references>
 <references title="Informative References">
  &RFC3315;
  &RFC3316;
  &RFC3633;
  &RFC6603;
  &RFC3736;
  &RFC4191;
  &RFC4193;
  &RFC6106;
  &RFC6459;
  &RFC5555;
  &RFC6583;
  &RFC5072;
  &RFC1661;
  &RFC3550;
  &RFC3261;
  &RFC5246;

  <reference anchor='TS.23060'>
   <front>
    <title>General Packet Radio Service (GPRS); Service description; Stage 2</title>
    <author><organization>3GPP</organization></author>
    <date day='7' month='March' year='2013' />
   </front>
   <seriesInfo name='3GPP TS' value='23.060 11.5.0' />
   <format type='HTML' target='http://www.3gpp.org/ftp/Specs/html-info/23060.htm' />
  </reference>

  <reference anchor='TS.29061'> 
   <front> 
    <title>Interworking between the Public Land Mobile Network (PLMN) supporting
           packet based services and Packet Data Networks (PDN)</title> 
    <author><organization>3GPP</organization></author> 
    <date day='15' month='March' year='2013' /> 
   </front> 
   <seriesInfo name='3GPP TS' value='29.061 11.4.0' /> 
   <format type='HTML' target='http://www.3gpp.org/ftp/Specs/html-info/29061.htm' /> 
  </reference> 

  <reference anchor='TS.23401'>
   <front>
    <title>General Packet Radio Service (GPRS) enhancements for Evolved
           Universal Terrestrial Radio Access Network (E-UTRAN) access</title>
    <author><organization>3GPP</organization></author>
    <date day='7' month='March' year='2013' />
   </front>
   <seriesInfo name='3GPP TS' value='23.401 11.5.0' />
   <format type='HTML' target='http://www.3gpp.org/ftp/Specs/html-info/23401.htm' />
  </reference>
        
  <reference anchor='TS.23402'>
   <front>
    <title>Architectural enhancements for non-3GPP accesses</title>
    <author><organization>3GPP</organization></author>
    <date day='8' month='March' year='2013' />
   </front>
   <seriesInfo name='3GPP TS' value='23.402 11.6.0' />
   <format type='HTML' target='http://www.3gpp.org/ftp/Specs/html-info/23402.htm' />
  </reference>
        

 </references>

 <section title="Cellular Host IPv6 Addressing in the 3GPP Model" 
  anchor="autoconf">
   <t>This appendix aims to very briefly describe the 3GPP IPv6 addressing
   model for 2G (GPRS), 3G (UMTS), and 4G (EPS) cellular networks from Release-99
   onwards.  More information for 2G and 3G can be found in 3GPP Technical
   Specifications <xref target="TS.23060"/> and <xref target="TS.29061"/>. The
   equivalent documentation for 4G can be found in 3GPP Technical  
   Specifications <xref target="TS.23401"/>, <xref target="TS.23402"/>, and
   <xref target="TS.29061"/>.
   </t>

   <t>There are two possibilities to allocate the address for an IPv6
   node: stateless and stateful autoconfiguration.  The stateful
   address allocation mechanism needs a DHCP server to allocate the
   address for the IPv6 node.  On the other hand, the
   Stateless Address Autoconfiguration procedure does not need any external
   entity involved in the address autoconfiguration (apart from the
   GGSN/PGW). At the time of writing this document, the IPv6 Stateless
   Address Autoconfiguration mechanism is still the only mandatory and
   supported address configuration method for the cellular 3GPP link.
   </t>

   <t>In order to support the standard IPv6 Stateless Address
   Autoconfiguration mechanism as recommended by the IETF, the GGSN/PGW
   shall assign a single /64 IPv6 prefix that is unique within its scope
   to each primary PDP Context or PDN Connection that uses IPv6 Stateless
   Address Autoconfiguration.  This
   avoids the necessity to perform Duplicate Address Detection (DAD) at the
   network level for any address built by the mobile host.  The GGSN/PGW
   always provides an interface identifier to the mobile host.  The
   mobile host uses the interface identifier provided by the GGSN/PGW to
   generate its link-local address.  The GGSN/PGW provides the cellular host
   with the interface identifier, usually in a random manner.  It must
   ensure the uniqueness of such an identifier on the link (i.e., no
   collisions between its own link-local address and the cellular
   host's).
   </t>

   <t>In addition, the GGSN/PGW will not use any of the prefixes assigned to
   cellular hosts to generate any of its own addresses.  This use of the
   interface identifier, combined with the fact that each PDP Context or
   PDN Connection is
   allocated a unique prefix, will eliminate the need for DAD messages
   over the air interface and consequently reduces inefficient use of
   radio resources.  Furthermore, the allocation of a prefix to each PDP
   Context or PDN Connection will allow hosts to implement the Privacy
   Extensions in <xref target="RFC4941"/> without the need for further DAD
   messages.
   </t>
   <t>In practice, the GGSN/PGW only needs to route all traffic destined to the cellular
   host that falls under the prefix assigned to it. This implies the GGSN/PGW may
   implement a minimal Neighbor Discovery protocol subset since, due to the
   point-to-point link model and the absence of link-layer addressing, the 
   address resolution can be entirely statically configured per PDP Context or
   PDN Connection, and there is no need to defend any addresses other than the
   link-local addresses for very unlikely duplicates. This also has an
   additional effect on a router-to-host NUD. There is really no need for
   the NUD, since from the point of view of GGSN/PGW, GGSN/PGW does not need to
   care for a single address but just routes the whole prefix to the cellular
   host. However, the cellular host must be prepared for the unlikely event of
   receiving a NUD against its link-local address. It should be noted that the
   3GPP specifications at the time of writing this document are silent about
   what should happen if the router-to-host NUD fails.
   </t>
   <t>See Section 5 of <xref target="RFC6459"/> for further discussion on
   3GPP address allocation and the 3GPP link model.
   </t>
  </section>
  
  <section title="Changes from RFC 3316">

    <t><list style="symbols">

     <t>Clarified that <xref target="RFC4941"/> or similar technologies
        may be used for privacy purposes (as stated in <xref
        target="RFC6459"/>).</t>

     <t>Clarified that MLD for link-local addresses is not necessary, but doing
        it causes no harm (instead of saying it may not be needed in some cases).</t>

     <t>Clarified that a cellular host should not do any changes in its stack to
        meet the 3GPP link restriction on the Router Advertisement Prefix
Information Options (PIOs).</t>
     <t>Clarified that a cellular host should not do any changes in its stack to
        meet the infinite prefix lifetime requirement the 3GPP link has.</t>
     <t>Clarified that the prefix lifetime is tied to the PDP Context/PDN Connection
        lifetime.</t>

     <t>Clarified explicitly that a NUD from the gateway side to the User
Equipment's 
        link-local address is possible.</t>
     <t>Added references to 3GPP specifications.</t>

     <t>Provided additional clarification on NUD on 3GPP cellular links.</t>
     <t>Added an explicit note that the prefix on the link is /64.</t>
     <t>Clarified that DHCPv6 (<xref target="RFC3315"/>) is not used at all for
     address autoconfiguration.</t>

     <t>Removed all sections that can be directly found in <xref target="RFC6434"/>.</t>
     <t>Added clarifications to 3GPP link model and how Neighbor Discovery
     works on it.</t>
     <t>Added <xref target="RFC4191"/> recommendations.</t>
     <t>Added DHCPv6-based Prefix Delegation recommendations.</t>
     <t>Added <xref target="RFC6106"/> recommendations.</t>
     <t>Added reference to <xref target="RFC5555"/> regarding client-based
     mobility.</t>

     <t>Added text regarding Router Advertisement MTU option handling.</t>
     <t>Added Evolved Packet System text.</t>
     <t>Added clarification on the primary 3GPP IPv6 transition mechanism.</t>
     <t>Added reference to <xref target="RFC5095"/>, which deprecates the
     RH0.</t>

     <t>Added references to <xref target="RFC5722"/> and <xref
     target="RFC6980"/> regarding IPv6 fragmentation handling.</t>
     <t>Added reference to <xref target="RFC6583"/> for Neighbor Discovery
     denial-of-service attack considerations.</t>
     <t>Made the PPP IPV6CP <xref target="RFC5072"/> support text conditional.</t>
    
    </list></t>

  </section>

 </back>
</rfc>
