<?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">
<!ENTITY rfc2865 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2865.xml">
<!ENTITY __reference.RFC.2869__g60i1uxb SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2869.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes"?>
<?rfc compact="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes" ?>
<?rfc strict="yes" ?>
<?rfc linkmailto="yes" ?>
<rfc category="info" docName="draft-ietf-spring-ipv6-use-cases-11"
     ipr="trust200902" updates="">
  <front>
    <title abbrev="IPv6 Segment Routing Use Cases">IPv6 SPRING Use
    Cases</title>

    <author fullname="John Brzozowski" initials="J." surname="Brzozowski">
      <organization abbrev="">Comcast</organization>

      <address>
        <email>john_brzozowski@cable.comcast.com</email>
      </address>
    </author>

    <author fullname="John Leddy" initials="J." surname="Leddy">
      <organization abbrev="">Comcast</organization>

      <address>
        <email>John_Leddy@cable.comcast.com</email>
      </address>
    </author>

    <author fullname="Clarence Filsfils" initials="C." surname="Filsfils">
      <organization abbrev="">Cisco Systems</organization>

      <address>
        <postal>
          <street/>

          <city>Brussels</city>

          <country>BE</country>
        </postal>

        <phone/>

        <email>cfilsfil@cisco.com</email>
      </address>
    </author>

    <author fullname="Roberta Maglione" initials="R." role="editor"
            surname="Maglione">
      <organization abbrev="">Cisco Systems</organization>

      <address>
        <postal>
          <street>Via Torri Bianche 8</street>

          <city>Vimercate</city>

          <code>20871</code>

          <country>Italy</country>
        </postal>

        <phone/>

        <email>robmgl@cisco.com</email>
      </address>
    </author>

    <author fullname="Mark Townsley" initials="M." surname="Townsley">
      <organization abbrev="">Cisco Systems</organization>

      <address>
        <email>townsley@cisco.com</email>
      </address>
    </author>

    <date month="June" year="2017"/>

    <area>Internet</area>

    <workgroup>Spring</workgroup>

    <abstract>
      <t>The Source Packet Routing in Networking (SPRING) architecture
      describes how Segment Routing can be used to steer packets through an
      IPv6 or MPLS network using the source routing paradigm. This document
      illustrates some use cases for Segment Routing in an IPv6 only
      environment.</t>
    </abstract>
  </front>

  <middle>
    <section anchor="intro" title="Introduction">
      <t>Source Packet Routing in Networking (SPRING) architecture leverages
      the source routing paradigm. An ingress node steers a packet through a
      controlled set of instructions, called segments, by prepending the
      packet with SPRING header. The SPRING architecture is described in <xref
      target="I-D.ietf-spring-segment-routing"/>. This document illustrates
      some use cases for SPRING/Segment Routing in an IPv6 only
      environment.</t>
    </section>

    <section anchor="use-cases" title="IPv6 SPRING use cases">
      <t>The use cases described in the section do not constitute an
      exhaustive list of all the possible scenarios: this section only
      includes some of the most common envisioned deployment models for IPv6
      Segment Routing.</t>

      <t>In addition to the use cases described in this document, all the
      SPRING use cases <xref target="RFC7855"/> are also applicable to the
      SRv6 data plane.</t>

      <section anchor="Home" title="SPRING in the Home Network  ">
        <t>An IPv6-enabled home network provides ample globally routed IP
        addresses for all devices in the home. An IPv6 home network with
        multiple egress points and associated provider-assigned prefixes will,
        in turn, provide multiple IPv6 addresses to hosts. A homenet
        performing Source and Destination Routing (<xref
        target="I-D.ietf-rtgwg-enterprise-pa-multihoming"/>) will ensure that
        packets exit the home at the appropriate egress based on the
        associated delegated prefix for that link.</t>

        <t>A SPRING enabled home provides the ability to steer traffic into a
        specific path from end-hosts in the home, or from a customer edge
        router in the home. If the selection of the source routed path is
        enabled at the customer edge router, that router is responsible for
        classifying traffic and steering it into the correct path. If hosts in
        the home have explicit source selection rules, classification can be
        based on source address or associated network egress point, avoiding
        the need for DPI-based implicit classification techniques. If the
        traffic is steered into a specific path by the host itself, it is
        important to know which networks can interpret the SPRING header. This
        information can be provided as part of host configuration as a
        property of the configured IP address.</t>

        <t>The ability to steer traffic to an appropriate egress or utilize a
        specific type of media (e.g., low-power, WIFI, wired, femto-cell,
        bluetooth, MOCA, HomePlug, etc.) within the home itself are obvious
        cases which may be of interest to an application running within a home
        network.</t>

        <t>Steering to a specific egress point may be useful for a number of
        reasons, including:</t>

        <t><list style="symbols">
            <t>Regulatory</t>

            <t>Performance of a particular service associated with a
            particular link</t>

            <t>Cost imposed due to data-caps or per-byte charges</t>

            <t>Home vs. work traffic in homes with one or more teleworkers,
            etc.</t>

            <t>Specific services provided by one ISP vs. another</t>
          </list></t>

        <t>Information included in the SPRING header, whether imposed by the
        end-host itself, a customer edge router, or within the access network
        of the ISP, may be of use at the far ends of the data communication as
        well. For example, an application running on an end-host with
        application-support in a data center can utilize the SPRING header as
        a channel to include information that affects its treatment within the
        data center itself, allowing for application-level steering and
        load-balancing without relying upon implicit application
        classification techniques at the data-center edge. Further, as more
        and more application traffic is encrypted, the ability to extract (and
        include in the SPRING header) just enough information to enable the
        network and data center to load-balance and steer traffic
        appropriately becomes more and more important.</t>
      </section>

      <section anchor="Access" title="SPRING in the Access Network">
        <t>Access networks deliver a variety of types of traffic from the
        service provider's network to the home environment and from the home
        towards the service provider's network.</t>

        <t>For bandwidth management or related purposes, the service provider
        may want to associate certain types of traffic to specific physical or
        logical downstream capacity pipes.</t>

        <t>This mapping is not the same thing as classification and
        scheduling. In the Cable access network, each of these pipes are
        represented at the DOCSIS <xref target="DOCSIS"/> layer as different
        service flows, which are better identified as differing data links. As
        such, creating this separation allows an operator to differentiate
        between different types of content and perform a variety of differing
        functions on these pipes, such as byte capping, regulatory compliance
        functions, and billing.</t>

        <t>In a cable operator's environment, these downstream pipes could be
        a specific QAM (Quadrature Amplitude Modulation) <xref target="QAM"/>,
        a DOCSIS (Data Over Cable Service Interface Specification) <xref
        target="DOCSIS"/> service flow or a service group.</t>

        <t>Similarly, the operator may want to map traffic from the home sent
        towards the service provider's network to specific upstream capacity
        pipes. Information carried in a packet's SPRING header could provide
        the target pipe for this specific packet. The access device would not
        need to know specific details about the packet to perform this
        mapping; instead the access device would only need to know the
        interpretation of the SPRING header and how to map it to the target
        pipe.</t>
      </section>

      <section anchor="DC" title="SPRING in Data Center">
        <t>Some Data Center operators are transitioning their Data Center
        infrastructure from IPv4 to native IPv6 only, in order to cope with
        IPv4 address depletion and to achieve larger scale. In such
        environment, source routing, as enabled by Segment Routing IPv6, can
        be used to steer traffic across specific paths through the network.
        The specific path may also include a given function one or more nodes
        in the path are requested to perform.</t>

        <t>In addition one of the fundamental requirements for Data Center
        architecture is to provide scalable, isolated tenant networks. In such
        scenarios, Segment Routing can be used to identify specific nodes,
        tenants, and functions and to build a construct to steer the traffic
        across that specific path.</t>
      </section>

      <section anchor="CDN" title="SPRING in Content Delivery Networks">
        <t>The rise of online video applications and new, video-capable IP
        devices has led to an explosion of video traffic traversing network
        operator infrastructures. In the drive to reduce the capital and
        operational impact of the massive influx of online video traffic, as
        well as to extend traditional TV services to new devices and screens,
        network operators are increasingly turning to Content Delivery
        Networks (CDNs).</t>

        <t>Several studies showed the benefits of connecting caches in a
        hierarchical structure following the hierarchical nature of the
        Internet. In a cache hierarchy one cache establishes peering
        relationships with its neighbor caches. There are two types of
        relationship: parent and sibling. A parent cache is essentially one
        level up in a cache hierarchy. A sibling cache is on the same level.
        Multiple levels of hierarchy are commonly used in order to build
        efficient caches architecture.</t>

        <t>In an environment, where each single cache system can be uniquely
        identified by its own IPv6 address, a list containing a sequence of
        the caches in a hierarchy can be built. At each node (cache) in the
        list, the presence of the requested content is checked. If the
        requested content is found at the cache (cache hits scenario) the
        sequence ends, even if there are more nodes in the list; otherwise
        next element in the list (next node/cache) is examined.</t>
      </section>

      <section anchor="core" title="SPRING in Core networks  ">
        <t>While the overall amount of traffic offered to the network
        continues to grow and considering that multiple types of traffic with
        different characteristics and requirements are quickly converging over
        single network architecture, the network operators are starting to
        face new challenges.</t>

        <t>Some operators are currently building, or plan to build in the near
        future, an IPv6 only native infrastructure for their core network.
        These operators are also looking at the possibility to setup an
        explicit path based on the IPv6 source address for specific types of
        traffic in order to efficiently use their network infrastructure. In
        case of IPv6 some operators are currently assigning or plan to assign
        IPv6 prefix(es) to their IPv6 customers based on regions/geography,
        thus the subscriber's IPv6 prefix could be used to identify the region
        where the customer is located. In such environment the IPv6 source
        address could be used by the Edge nodes of the network to steer
        traffic and forward it through a specific path other than the optimal
        path.</t>

        <t>The need to setup a source-based path, going through some specific
        middle/intermediate points in the network may be related to different
        requirements: <list style="symbols">
            <t>The operator may want to be able to use some high bandwidth
            links for specific type of traffic (like video) avoiding the need
            for over-dimensioning all the links of the network;</t>

            <t>The operator may want to be able to setup a specific path for
            delay sensitive applications;</t>

            <t>The operator may have the need to be able to select one (or
            multiple) specific exit point(s) at peering points when different
            peering points are available;</t>

            <t>The operator may have the need to be able to setup a source
            based path for specific services in order to be able to reach some
            servers hosted in some facilities not always reachable through the
            optimal path;</t>

            <t>The operator may have the need to be able to provision
            guaranteed disjoint paths (so-called dual-plane network) for
            diversity purposes</t>
          </list></t>

        <t>All these scenarios would require a form of traffic engineering
        capabilities in an IPv6 only network environment.</t>
      </section>
    </section>

    <section title="Contributors">
      <t>Many people contributed to this document. The authors of this
      document would like to thank and recognize them and their contributions.
      These contributors provided invaluable concepts and content for this
      document's creation.</t>

      <t><figure>
          <artwork><![CDATA[   Ida Leung
   Rogers Communications
   8200 Dixie Road
   Brampton, ON  L6T 0C1
   CANADA

   Email: Ida.Leung@rci.rogers.com


   Stefano Previdi
   Cisco Systems
   Via Del Serafico, 200
   Rome  00142
   Italy

   Email: sprevidi@cisco.com
   
   Christian Martin
   Cisco Systems

   Email: martincj@cisco.com


]]></artwork>
        </figure></t>

      <t/>
    </section>

    <!-- term -->

    <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->

    <section anchor="contr" title="Acknowledgements">
      <t>The authors would like to thank Brian Field, Robert Raszuk, Wes
      George, &Eacute;ric Vyncke, Fred Baker, John G. Scudder, Adrian Farrel,
      Alvaro Retana, Bruno Decraene and Yakov Rekhter for their valuable
      comments and inputs to this document.</t>
    </section>

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

    <section anchor="IANA" title="Security Considerations">
      <t>This document presents use cases to be considered by the SPRING
      architecture and potential IPv6 extensions. As such, it does not
      introduce any security considerations. However, there are a number of
      security concerns with source routing at the IP layer <xref
      target="RFC5095"/>. It is expected that any solution that addresses
      these use cases to also address any security concerns.</t>
    </section>
  </middle>

  <back>
    <references title="Informative References">
      <?rfc include='reference.RFC.5095'?>

      <reference anchor="DOCSIS"
                 target="http://www.cablelabs.com/news/new-generation-of-docsis-technology/">
        <front>
          <title>DOCSIS Specifications Page</title>

          <author/>

          <date/>
        </front>
      </reference>

      <reference anchor="QAM"
                 target="ITU-T Recommendation J.83 Annex B (J.83b)">
        <front>
          <title>QAM specification</title>

          <author/>

          <date/>
        </front>
      </reference>

      <?rfc ?>

      <?rfc include='reference.I-D.ietf-spring-segment-routing'?>

      <?rfc include='reference.I-D.ietf-rtgwg-enterprise-pa-multihoming'?>

      <?rfc ?>

      <?rfc ?>

      <?rfc ?>

      <?rfc ?>

      <?rfc ?>
    </references>

    <references title="Normative References">
      <?rfc include='reference.RFC.7855'?>
    </references>
  </back>
</rfc>
