<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY % RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
]>
<?rfc rfcedstyle="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc compact="yes" ?>
<?rfc sortrefs="yes" ?>
<?rfc toc="yes" ?>
<?rfc tocompact="yes"?>
<rfc category="bcp"
     docName="draft-vinapamula-softwire-dslite-prefix-binding-02"
     ipr="trust200902">
  <front>
    <title abbrev="Prefix Binding for DS-Lite">Recommendation for Prefix
    Binding in the Softwire DS-Lite Context</title>

    <author fullname="Suresh Vinapamula" initials="S." surname="Vinapamula">
      <organization abbrev="Juniper Networks">Juniper Networks</organization>

      <address>
        <postal>
          <street>1194 North Mathilda Avenue</street>

          <city>Sunnyvale</city>

          <region>CA</region>

          <code>94089</code>

          <country>USA</country>
        </postal>

        <phone>+1 408 936 5441</phone>

        <email>sureshk@juniper.net</email>
      </address>
    </author>

    <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
      <organization>France Telecom</organization>

      <address>
        <postal>
          <street></street>

          <city>Rennes</city>

          <code>35000</code>

          <country>France</country>
        </postal>

        <email>mohamed.boucadair@orange.com</email>
      </address>
    </author>

    <date year="2014" />

    <area>Internet</area>

    <abstract>
      <t>This document discusses issues induced by the change of the Basic
      Bridging BroadBand (B4) IPv6 address and sketches a set of
      recommendations to solve those issues.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>IPv6 deployment models assumes IPv6 prefixes are delegated by Service
      Providers to the connected CPEs (Customer Premise Equipments) or hosts,
      which in their turn derive IPv6 addresses out of that prefix. In the
      case of DS-Lite <xref target="RFC6333"></xref>, the Basic Bridging
      BroadBand (B4) element derives an IPv6 address for the softwire setup
      purposes.</t>

      <t>A B4 element might obtain a new external IPv6 address, for a variety
      of reasons including a reboot of the CPE, power outage, DHCP lease
      expiry, or other action undertaken by the Service Provider. If this
      occurs, traffic forwarded to a B4's previous address might be delivered
      to another B4 that now acquired that address. This affects all mapping
      types, whether implicit (e.g., by sending a TCP SYN) or explicit (e.g.,
      using PCP <xref target="RFC6887"></xref>).</t>

      <t>The main goal of this document is to propose recommendations to
      soften the impact of such renumbering issues.</t>

      <t>Note that in some deployments, CPE renumbering may be required to
      accommodate some privacy-related requirements to avoid the same prefix
      be assigned to the same customer. It is out of scope of this document to
      discuss such contexts.</t>

      <t>This document complements <xref target="RFC6908"></xref>.</t>
    </section>

    <section title="Terminology">
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in <xref
      target="RFC2119"></xref>.</t>
    </section>

    <section anchor="problem" title="The Problem">
      <t>Since the network behind B4 can be overlapping across multiple CPEs,
      B4 address plays a key role in identifying associated resources assigned
      for each of the connections. These resources maintain state of
      Endpoint-Independent Mapping (EIM), Endpoint-Independent Filtering
      (EIF), Address Pooling Paired (APP) in the AFTR, and Port Control Protocol
      (PCP) mappings and flows.</t>

      <t>However, there can be change in B4 address for any reason, may be
      because of change in CPE device or may be because of security extensions
      enabled in generating the IPv6 address. When the address change, the
      associated mappings created in the AFTR are no more valid. This may
      result in creation of new set of mappings.</t>

      <t>Service Providers may want to limit the usage of these resources on
      per subscriber basis for fairness resources usage. To that aim , a
      subscriber is identified by the delegated IPv6 prefix and not the
      derived B4 address. These policies are used for dimensioning purposes
      and also to ensure that AFTR resources are not exhausted. However when
      there is a change in B4 address, this policy doesn't resolve stale
      mappings hanging around in the system, consuming not only system
      resources, but also reducing the available quota of resources per
      subscriber.</t>

      <t>Clearing those mappings can be envisaged, but that will cause a lot
      of churn in the AFTR and could be disruptive to existing
      connections.</t>

      <t>When services are hosted behind B4 element, and when there is a
      change in B4 address which if results in change in NAT address, these
      services have to advertise about their change, whenever there is a
      change of the B4 address. Means to discover the change of B4 address and
      NAT address is therefore required. Also, it doesn't address latency
      issues where a service has to advertise its newly assigned external IP
      address and port and the clients have to consume and re-initiate
      connections.</t>

      <t>PCP-specific failure scenarios are discussed in <xref
      target="I-D.boucadair-pcp-failure"></xref>.</t>
    </section>

    <section title="Recommendations">
      <t>In order to mitigate the issues discussed in <xref
      target="problem"></xref>, the following recommendations are made:<list
          style="numbers">
          <t>A policy SHOULD be enforced at the AFTR level to limit the number
          of active softwires per subscriber. The default value MUST be 1.
          This policy aims to prevent a misbehaving subscriber to mount
          several softwires to consume more resources on the AFTR side.</t>

          <t>Resource contexts created at the AFTR level SHOULD be based on
          the delegated IPv6 prefix and not based on the B4 address. Delegated
          prefix may be derived from the B4 address through a configured
          subscriber-mask. Administrators SHOULD configure per prefix limits
          of resource usage, instead of per tunnel limits. These resources
          include, number of flows, mappings including PCP, NAT pool
          resources, etc.<list style="numbers">
              <t>Subscriber-mask is an integer that indicates the length of
              significant bits to be applied on the source IPv6 address
              (internal side) to identify a subscriber. Subscriber-mask is an
              AFTR system-wide configuration parameter that is used to enforce
              generic per-subscriber policies. Applying these generic policies
              does not require to configure every subscriber prefix.
              Subscriber-mask must be configurable; the default value is
              56.</t>

              <t>For example, suppose an IPv6 prefix 2001::/56 is delegated to
              a CPE. Administrator should configure resource usage limits in
              AFTR based on the prefix 2001::/56 and not based on any B4
              address derived from the delegated prefix. AFTR will derive the
              prefix from B4 address through configured subscriber-mask set to
              56 by the administrator.</t>
            </list></t>

          <t>In the event a new IPv6 address is assigned to B4, the AFTR
          SHOULD migrate existing state to be bound to the new B4's IP
          address. This ensures the traffic destined to the previous B4
          address will be redirected to the newer B4 address. The destination
          address for tunneling return traffic SHOULD be the last seen as B4's
          address from the CPE. Doing so avoids stale mappings and minimizes
          the risk of service disruption.</t>

          <t>In the event of change of the CPE WAN's IPv6 prefix, unsolicited
          PCP ANNOUNCE messages are to be sent by the B4 element to internal
          hosts to update their mappings. This allows internal PCP clients to
          update their mappings with the new B4 IPv6 address and trigger
          updates to rendez-vous servers (e.g., dynamic DNS). </t>

          <t>When a new prefix is assigned to the CPE, stale mappings may
          exist in the AFTR. This will consume both implicit and explicit
          resources. In order to avoid such issues, stable IPv6 prefix
          assignment is RECOMMENDED.</t>

          <t>In case for any reason an IPv6 prefix has to be reassigned, it is
          RECOMMENDED to reassign an IPv6 prefix only when all the resources
          in use associated with that prefix are cleared from the AFTR. Doing
          so avoids to redirect traffic, destined to the previous prefix
          owner, to the new one.</t>
        </list></t>

      <t></t>
    </section>

    <section anchor="sec-security" title="Security Considerations">
      <t>Security considerations related to DS-Lite are discussed in <xref
      target="RFC6333"></xref>.</t>
    </section>

    <section anchor="sec-IANA" title="IANA Considerations">
      <t>This document does not require any action from IANA.</t>
    </section>

    <section anchor="sec-Ack" title="Acknowledgements">
      <t>G. Krishna and C. Jacquenet reviewed document and provided useful
      comments.</t>
    </section>
  </middle>

  <back>
    <references title="Normative references">
      <?rfc include="reference.RFC.2119"?>

      <?rfc include='reference.RFC.6887'?>

      <?rfc include='reference.RFC.6333'?>
    </references>

    <references title="Informative references">
      <?rfc include='reference.I-D.boucadair-pcp-failure'?>

      <?rfc include='reference.RFC.6908'?>
    </references>
  </back>
</rfc>
