<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-moses-dmm-dhcp-ondemand-mobility-07"
     ipr="trust200902">
  <front>
    <title abbrev="DHCPv6 On-Demand Mobility Extension">DHCPv6 Extension for On Demand Mobility exposure</title>

     <author fullname="Danny Moses" initials="D." surname="Moses">
      <organization abbrev="Intel">Intel</organization>

      <address>
        <postal>
          <street></street>
          <city>Petah Tikva</city>
          <region></region>
          <code></code>

          <country>Israel</country>
        </postal>

        <email>danny.moses@intel.com</email>
	  </address>
    </author>

	
     <author fullname="Wu-chi Feng" initials="W." surname="Feng">
      <organization abbrev="Intel">Intel</organization>

      <address>
        <postal>
          <street></street>
          <city>Hillsboro</city>
          <region></region>
          <code></code>

          <country>USA</country>
        </postal>

        <email>wu-chix.feng@intel.com</email>
      </address>
    </author>
	
	
	<author fullname="Alper Yegin" initials="A." surname="Yegin">
      <address>
        <postal>
          <street></street>
          <city>Istanbul</city>
          <region></region>
          <code></code>

          <country>Turkey</country>
        </postal>

        <email>alper.yegin@yegin.org</email>
      </address>
    </author>

	
    <date />

    <workgroup>DMM Working Group</workgroup>

    <abstract>
      <t>Applications differ with respect to whether or not they need IP session continuity and/or IP 
	  address reachability. Networks providing the same type of service to any mobile host and 
	  any application running on the host yields inefficiencies. This document describes extensions 
	  to the DHCPv6 protocol to enable mobile hosts to indicate the required mobility service type 
	  associated with a requested IP prefix and to allow networks to indicate the type of mobility 
	  service associated with the allocated IP prefix in return. </t>
            
      
    </abstract>
  </front>

  
  
  <middle>
    <section anchor="introduction" title="Introduction">

        <t><xref target="I-D.ietf-dmm-ondemand-mobility"></xref> defines different types of mobility-associated 
		services provided by access networks to mobile hosts with regards to maintaining IPv6 
		prefix continuity after an event of the host moving between locations with different 
		points of attachments within the IP network topology. It further specifies means for 
		applications to convey to the IP stack in the mobile host, their requirements regarding 
		these services. </t> 
		
		<t>This document defines extensions to the DHCPv6 protocol 
		(<xref target="RFC3315"></xref>) and <xref target="RFC3633"></xref> in the form of a new 
		DHCP option that specifies the type of mobility services associated with an IPv6 prefix. 
		The IP stack in a mobile host uses the DHCP client to communicate the type of mobility 
		service it wishes to receive from the network. The DHCP server in the network uses this 
		option to convey the type of service that is guaranteed with the assigned IPv6 prefix 
		in return. </t>
        
     </section> <!-- Introduction -->

    <section anchor="notation" title="Notational Conventions">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in BCP 14 , <xref
      target="RFC2119"></xref> <xref target="RFC8174"></xref> when, they appear in all capitals,
	  as shown here.</t>

    </section> <!-- Notational Conventions -->



    <section anchor="IPv6-Continuity-Service" title="IPv6 Continuity Service Option">

        <t>The IPv6 Continuity Service option is used to specify the type of continuity service associated 
		with a source IPv6 prefix. The IPv6 Continuity Service option MUST be encapsulated in the 
		IAprefix-options field of the IA_PD prefix option. </t>
		
		<t>The format of the IPv6 Continuity Service option is:</t>
		
<figure>
<artwork><![CDATA[

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OPTION_IPv6_CONTINUITY_SERVICE|         option-length         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| service-type  |
+-+-+-+-+-+-+-+-+

]]></artwork>
</figure>
		<t>
		<list style="hanging" hangIndent="15">
			<t hangText="option-code">OPTION_IPv6_CONTINUITY_SERVICE (TBD)</t>
			<t hangText="option-len">1</t>
			<t hangText="service-type">one of the following values:</t>
			<t>
			<list style="hanging" hangIndent="15">
				<t hangText="Non-Persistent - ">a non-persistent IP prefix (1)</t>
				<t hangText="Session-Lasting - ">a session-lasting IP prefix (2)</t>
				<t hangText="Fixed - ">a fixed IP prefix (3)</t>
				<t hangText="Graceful-replacement - ">a graceful-replacement IP prefix (4)</t>
				<t hangText="Anytype - ">Anyone of the above (0)</t>
			</list>
			</t>
		</list>
		</t>
		
		<t>The definition of these service types is available in <xref target="I-D.ietf-dmm-ondemand-mobility">
		</xref>.</t>
		
		<t>All other values (5-255) are reserved for future use. If the 
		OPTION_IPv6_CONTINUITY_SERVICE option is received and its service-type is equal to one of the reserved 
		values, the option SHOULD be ignored.</t>
		
		<t>When a message is sent from a client to a server, the value of the IPv6 Continuity Service
		option indicates the type of continuity service required for the IPv6 prefix requested by the client.</t>
		
		<t>When a message is sent from a server to a client, the value of the IPv6 Continuity Service option
		indicates the type of continuity service committed by the network for the associated 
		IPv6 prefix. The value 'AnyType' SHOULD only appear in the message sent from the client to the server 
		to indicate that the client has no specific preference. However, it cannot appear in a message sent 
		from the server.</t>
			
		<t>Once an IPv6 prefix type is requested and provided, any subsequent messages involving 
		this prefix (lease renewal - for example) MUST include the IPv6 Continuity Service option 
		with the same service type that was assigned by the server during the initial allocation.</t>

		<t>If a server receives a request to assign an IPv6 prefix with a specified IPv6 Continuity 
		service, but cannot fulfill the request, it MUST reply with the NoPrefixAvail status.</t>
		
		<t>A server that does not support this option will ignore it and respond without taking into 
		account the desired session continuity service. The response will not include the Continuity 
		Service option encapsulated in the IAprefix-options field of the IA_PD prefix option.</t>

		<t>The missing Continuity Service option in the response serves as an indication to the 
		client that this feature is not supported by the server. It MAY use the allocated prefix  
		knowing it does not necessarily support the desired Continuity service, or perform any 
		other action.</t>
		
		<t>A server MUST NOT include the IPv6 Continuity Service option in the IAprefix-options field 
		of an IA_PD Prefix option, if not specifically requested previously by the client to which it 
		is sending a message.</t>
		
		<t>If a client receives an IA_PD Prefix option from a server with the IPv6 Continuity Service 
		option in the IAprefix-options field, without initially requesting a specific service using 
		this option, it MUST discard the received IPv6 prefix.</t>
		
		<t>If the mobile device (host or router) has no preference regarding the type of continuity 
		service it uses the 'AnyType' value as the specified type of continuity service. The Server 
		will allocate an IPv6 prefix with some continuity service and MUST specify the type in IPv6 
		Continuity Service option encapsulated in the IAprefix-options field of the IA_PD Prefix 
		option. The method for selecting the type of continuity service is outside the scope of this 
		specification. </t> 
			
		<section anchor="lifetime-correlation" 
			title="Correlation between Session Continuity Service and Lifetime Values">
		<t>The values to be used in the Preferred-lifetime and Valid-lifetime fields in the IA Prefix 
		Option are out of the scope of this specification and left to implementation. It is RECOMMENDED 
		to provide longer lifetime values for Fixed and Session-lasting prefixes compared to the lifetime 
		values of Non-persistent and Graceful-replacement prefixes because the network has guaranteed  
		their validity regardless of the link to which the host is attached.</t> 

		<t>For clients using Graceful-replacement services, the network MAY obsolete a Prefix and 
		allocate a new one from time to time especially in a mobility-related event. On such occasions, 
		the network SHOULD provide a graceful period (lifetime) in which the obsoleted prefix can 
		still be used and a new (longer) lifetime with the new prefix.</t>
 
		<t>It is NOT RECOMMENDED using 0xFFFFFFFFFF (infinity) values for the lifetime of Fixed 
		prefixes. Even though they are fixed, it is still safer to Rebind periodically. The lifetime 
		value can be relatively long to reduce message exchange overhead.</t>
		
		<t>Section 18.2 - Client Behavior of <xref target="I-D.ietf-dhc-rfc3315bis"></xref> specifies 
		that when a client detects that it may have moved to a new link, it uses Rebind if it has 
		delegated prefixes. It is worth clarifying that a client does not HAVE to Rebind the prefixes 
		if they are Fixed or Session-lasting prefixes.</t>

		</section> <!-- Correlation between Session Continuity Service and Lifetime Values -->
		
	</section> <!-- Continuity Service option -->
      
  
    

    <section anchor="security" title="Security Considerations">
    <t> There are no specific security considerations for this option.</t>
   
    </section> <!-- Security Considerations -->

    <section anchor="iana" title="IANA Considerations">
      <t>TBD</t>
    </section> <!-- IANA Considerations -->

    
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2119"?>
	  <?rfc include="reference.RFC.8174"?>
	  

      <!--
        <?rfc include='reference.RFC.6724'?>
        <?rfc include='reference.RFC.5014'?>
      -->

	<!-- Comment -->
      
      
    </references>

    <references title="Informative References">
        
     
	  <?rfc include='reference.RFC.3315'?>
	  <?rfc include='reference.RFC.3633'?>
	  <?rfc include='reference.RFC.7934'?>
	  <?rfc include='reference.I-D.ietf-dmm-ondemand-mobility'?>
	  <?rfc include='reference.I-D.ietf-dmm-distributed-mobility-anchoring'?>
	  <?rfc include='reference.I-D.ietf-dhc-rfc3315bis'?>      

      <!---->
    </references>
  </back>
</rfc>

