<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
     which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!-- One method to get references from the online citation libraries.
     There has to be one entity for each item to be referenced. 
     An alternate method (rfc include) is described in the references. -->
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC5693 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC2629 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2629.xml">
<!ENTITY RFC3552 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3552.xml">
<!ENTITY I-D.narten-iana-considerations-rfc2434bis SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.narten-iana-considerations-rfc2434bis.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs), 
     please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds might want to use.
     (Here they are set differently than their defaults in xml2rfc v1.32) -->
<?rfc strict="yes" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space 
     (using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>
<!-- keep one blank line between list items -->
<!-- end of list of popular I-D processing instructions -->
<rfc category="info" docName="draft-fu-sfc-transport-network-usecase-00" ipr="trust200902">
  <!-- category values: std, bcp, info, exp, and historic
     ipr values: full3667, noModification3667, noDerivatives3667
     you can add the attributes updates="NNNN" and obsoletes="NNNN" 
     they will automatically be output with "(if approved)" -->

  <!-- ***** FRONT MATTER ***** -->

  <front>
    <!-- The abbreviated title is used in the page header - it is only necessary if the 
         full title is longer than 39 characters -->

    <title abbrev="SFC usecase in transport network">Usecase of SFC for VCPE in the transport network</title>

    <!-- add 'role="editor"' below for the editors if appropriate -->

    <!-- Another author who claims to be an editor -->

    <author fullname="Qiao Fu" initials="Q.F" role="editor" surname="Fu">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>Xuanwumenxi Ave. No.32</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region/>

          <code/>

          <country>China</country>
        </postal>

        <phone/>

        <email>fuqiao1@outlook.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Hui Deng" initials="H.D" surname="Deng">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>Xuanwumenxi Ave. No.32</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region/>

          <code/>

          <country>China</country>
        </postal>

        <phone/>

        <email>denghui@chinamobile.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>    

    <author fullname="Weiqiang Cheng" initials="W.C" surname="Cheng">
      <organization>China Mobile</organization>

      <address>
        <postal>
          <street>Xuanwumenxi Ave. No.32</street>

          <!-- Reorder these if your country does things differently -->

          <city>Beijing</city>

          <region/>

          <code/>

          <country>China</country>
        </postal>

        <phone/>

        <email>Chengweiqiang@chinamobile.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>
    

    <date month="March" year="2015"/>

    <!-- If the month and year are both specified and are the current ones, xml2rfc will fill 
         in the current day for you. If only the current year is specified, xml2rfc will fill 
	 in the current day and month for you. If the year is not the current one, it is 
	 necessary to specify at least a month (xml2rfc assumes day="1" if not specified for the 
	 purpose of calculating the expiry date).  With drafts it is normally sufficient to 
	 specify just the year. -->

    <!-- Meta-data Declarations -->

    <area>APP</area>

    <workgroup>Internet Engineering Task Force</workgroup>

    <!-- WG name at the upperleft corner of the doc,
         IETF is fine for individual submissions.  
	 If this element is not present, the default is "Network Working Group",
         which is used by the RFC Editor as a nod to the history of the IETF. -->

    <!---->

    <abstract>
      <t>This document proposes a usecase of Service Function Chaining(SFC)
      	to realize Virtual Customer Premises Equipment (VCPE) in the transport 
      	network. In this document, the concept of VCPE is introduced into the 
      	transport network to provide value-added services for the enterprise 
      	customers. The SFC is used to realize the VCPE and chains different 
      	services according to the requirement of the customers. Such architecture
      	can provide value-added and self-defined services to the customers. In 
      	the meantime, SDN controller is utilized in the usecase to direct certain 
      	traffic flows to the VCPE. This usecase provides a practical mechanism to
      	offer value-added and self-defined services in the transport network 
      	without complicating the CPE devices or increase OPEX and CAPEX cost.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t> This document proposes a usecase of Service Function Chaining (SFC) 
      	to realize virtual CPE in the transport network. The traditional transport
      	network uses static allocation mechanism in general. In order to provide 
      	network connection between different locations for the enterprise customers, 
      	traditional transport network should allocate dedicated lines between each 
      	pair of the locations. Such architecture is not suitable when the enterprise 
      	customers require LAN access, and moreover, L3-L7 functions among different 
      	locations. In this draft, we will introduce Virtual Customer Premise 
      	Equipment (VCPE) into the transport network. By utilizing SFC, the VCPE can 
      	provide value-added services, such as virtual firewall (vFW), virtual NAT 
      	(vNAT), and etc., to the traditional transport network customers. In order 
      	to flexibly control the traffic flow, we also introduce SDN-controller 
      	(Software Define Network Controller) into the transport network. The 
      	SDN-controller is responsible for directing the traffic of certain 
      	enterprise customer, who has paid for the VCPE services, to the VCPE servers.</t>

      <t>The concept of VCPE is to shift most of the networking and service 
   			functionalities from the customer side to the network side.  In this way, 
   			the customer side's equipment, that is the CPE, can be simplified. The 
   			VCPE refers to one or a set of equipments at the network side to execute 
   			the networking and service functionalities used to be executed at the CPE. 
   			In such architecture, the CPE can be a simple L2 switch, which is only 
   			responsible for forwarding packets to a certain next hop. The VCPE can 
   			be realized by a SFC in the physical network or the virtual network, 
   			in which the traffic of each customer is directed to one or several 
   			Service Founctions (SF) specified by the customer.</t>
   			
   		<t>In this document, we will talk about the usecases of VCPE using SFC in 
   			the transport network for enterprise customers.</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"/>.</t>
    </section>


    <section title="Advantage of VCPE">
      	    	
      <t>The benefit of introduting VCPE into the transport network can be 
      	concluded as follows:</t>
      	
     	<t>1) It will avoid complicating the CPE devices when providing value-added
     		 L3-L7 services to the customers. Traditionally, CPEs at the enterprise
     		 customer side are simple L2 devices in the transport network. In order 
     		 to meet the requirements for value-added L3-L7 services from the customers,
     		 the CPEs should be redesigned to become L3 or even more complicated devices.
     		 Such devices will result in an increase of manufacture and maintenance cost,
     		 and will also request addtional efforts for frequent update to meet the 
     		 constantly increased requirements of the customers. Nevertheless, by 
     		 utilizing the VCPE achitecture, CPE can remain to be a simple L2 device, 
     		 which is only responsible for L2 forwarding. In this way, the manufacture 
     		 and maintenance cost of the complicated CPEs can be saved. In the meantime, 
     		 frequent update of these CPEs is not necessary, which will greatly decrease 
     		 both CAPEX and OPEX of the network operators.</t>
      		
     	<t>2) It will greatly speed up the service launching period. Since most of
     		the complicated functions are located at the VCPE in the network side, 
     		operators have more power over services. Benefitting from the recent NFV 
     		(Network Function Virtualization) and cloud technologies, VCPE can be 
     		accomplished using SFC in the virtual network, where different services 
     		can act as different VNFs (Virtual Network Functions). Operators only need
     		to add new VNFs on the VCPE side to launch new services to the customers.
     		In this way, Operators can provide a variety of services through the 
     		transport network. </t>
     	
     	<t>3) It will provide user-define-network experience. By introducing 
     		SFC concept into the VCPE, users can define his own service order and 
     		sequence. Therefore, enterprise customers can enjoy the self-defined 
     		services over the public transport network.</t>

    </section>

   
    <section title="Architecture">
      <t>Figure 1 shows the architecture of the SFC usecase for VCPE in the 
      	transport network. The solid lines indicate data traffic flows, while
      	the dash lines indicate control traffic flows. In this architecture, 
      	the CPEs are located at different branches of the enterprise customer,
      	and act as L2 forwarding switches. The VCPE is located at the core 
      	network.</t> 
      	
      <t>All of the CPEs and the switches can be controlled by the 
      	SDN-controller. When the enterprise customer selects a set of the 
      	value-added services, the SDN-controller will inform the CPE of the 
      	customer to direct the traffic flow to a certain switch connected to
      	the VCPE. And then this swich will forward the traffic to the VCPE for
      	further operations. After operations, the switch will forward the traffic
      	to the destination CPE. All these traffic flows are directed under the
      	control of the SDN controller.</t>
      	
      <t>In this architecture, the switch should be capable of bridging the L2
      	packets to the L3 packets. Such switch can be realized by updating some
      	existing L3 transport switch.</t>
      	
      <t>The VCPE is one or a set of devices following the SFC architecture, in 
      	which the Service Classification Function (SCF) is responsible for classifing
      	traffic from different customer/network/service. The SCF is controlled by 
      	the SDN-controller. When a packet arrives, the SCF will ask the controller
      	which Service Founction Path (SFP) this flow should follow, and put 
      	corresponding SFC encapsulation into the packet. The packet then goes 
      	into the service founction region, and will be directed to different 
      	Service Founctions (SF) based on the encapsulation. In the following 
      	architecture, the switch in front of the VCPE can also act as the SCF to
      	classify packet flows. Following the SFC architecture, VCPE can be realized
      	 by physical devices or virtual network functions as well.</t>     	
      	
      
      
       <figure anchor="fig.arch" title="Architecture for SFC usecase for VCPE in the transport network">
        <artwork align="center"><![CDATA[  

                    +-----------------------+
    ................+     SDN-Controller    +................
    :   :           +--+--------------------+           :   :
    :   :              :                                :   :
    :   :              :                                :   :
    :   :              :                                :   :
    :   :     +--------+--------------------------+     :   :
    :   :     | VCPE   :         +--------------+ |     :   :  
    :   :     |        :         |Service       | |     :   :
    :   :     | +------+-------+ |Function Path | |     :   :
    :   :     | |   Service    | | +---+   +---+| |     :   :
    :   : +---+ +Classification+-+ |sf1|...|sf2|+ +---+ :   :
    :   : |   | |   Function   | | +---+   +---+| |   | :   :   
    :   : |   | +--------------+ +--------------+ |   | :   :
    :   : |   +-----------------------------------+   | :   :
    : +-+-+--+                                     +--+-+-+ :
    : |Switch|                                     |Switch| :
    : +-+----+                                     +----+-+ : 
    :   |Transport                             Transport|   :
    :   | Network                               Network |   :
    :   |                                               |   :
 +--+---+---+                                       +---+---+--+
 | ++---++  |                                       |  ++---++ |  
 | | CPE |  |                                       |  | CPE | |
 | +-----+  |                                       |  +-----+ |
 |Enterprise|                                       |Enterprise|
 |  Branch  |                                       |  Branch  |
 +----------+                                       +----------+
]]></artwork>
      </figure>


    </section>

    <section title="Usecase in Current Transport Network">
      <t>Based on the above architecture, some value-added functions and services
      	can be launched for the enterprise users using the transport network. 
      	Examples may include VPN, FW, NAT and etc.. By utilizing the NFV 
      	technologies, these services can be one or a set of VNFs on the VCPE servers. 
      	Such architecture provides an agile mechanism for operators to launch 
      	value-added services for the transport network.</t> 
      	
      <t>Taking consideration that MPLS-TP is widely used in current transport 
      	network, some extention for SFC to support MPLS-TP should be considered.</t>
      	
      <t>In the MPLS-TP packet, the PW lable can be used to classify service type. 
      	Such information can be used for Service Founction Clasification. Extra
      	label can also be added into the PW lable to indicate user/network
      	specifics. Therefore, the SFC can do the service clasification mapping
      	based on the PW lable in the MPLS-TP packets. In the meantime, L2 packets 
      	should also be bridged to L3 packets before entering the Service Function 
      	Region, and should be re-encapsulated to the L2 packets after leaving the 
      	Service Function Region.</t>
      	
      <t>In such case, the Service Founction Classifier (SFC) should have the 
      	following capabilities:</t>
      	
      <t>1) Mapping PW lable to a certain Service Founction Path</t>
      
      <t>2) Recording mapping between IP address and PW/LSP lable, so as to 
      	re-encapsulate the L3 packets with a certain IP address.</t>
      	
      <t>3) Bridging L2 packets to L3 packets by taking off the MPLS-TP header.</t> 
      
      <t>Therefore, the following table should be maintained by the SFC, in which
      	SFP indicates Service Function Path.</t>
      
        <figure anchor="fig1.arch" title="Table in SFC">
        <artwork align="center"><![CDATA[  
 IP address | LSP label |PW label | SFP 
 -----------+-----------+---------+------
     IP1    |    LSP1   |    PW1  | SFP1
     IP2    |    LSP2   |    PW2  | SFP2 
     IP3    |    LSP3   |    PW3  | SFP3  
 
]]></artwork>
      </figure>    	
      	
      <t>This proposed approach can	reuse the existing MPLS-TP network, so that 
      	operators can use the same transport network platform to support both 
      	the traditional private line service and value added NFV services.</t> 
      	
      	     
    </section>
    
    <section title="Conclusion">
    	<t>In this document, a usecase of utilizing SFC in the transport network 
    		is proposed. Such usecase provides an agile mechanism for launching 
    		new value-added services in the transport network. In this document, 
    		the concept of VCPE is introduced into the transport network to provide
    		an easy way to deploy these value-added services. SFC is used in the VCPE
    		to chain different SFs for different flows according to the customers'
    		specification. In the meantime, traffic flows are directed with the help 
    		of the SDN-controller according to the customers' specification.</t>
    		
    	<t>The usecase proposed has the following advantages:</t>
    	
    	<t>1) It provides a practical way to launch value-added services, such as
    		NAT, VPN, FW, and etc., in the traditional transport network without 
    		complicating the existing CPE devices.</t>
    		
    	<t>2) Operators can use the solution in this usecase to provide traditional
    		private line service and value added NFV services using the same transport
    		network platform.</t>
    		
    	<t>2) It provides more capabilities to the customers to define his own network.</t>
    	
    	<t>3) The SDN architecture utilized in this usecase provides flexibility and 
    		intelligence to the traditional transport network.</t>
    		
    		</section>
    

    <!-- This PI places the pagebreak correctly (before the section title) in the text output. -->

    <?rfc needLines="8" ?>

    <!-- Possibly a 'Contributors' section ... -->
  </middle>

  <!--  *****BACK MATTER ***** -->

  <back>
    <!-- References split into informative and normative -->

    <!-- There are 2 ways to insert reference entries from the citation libraries:
     1. define an ENTITY at the top, and use "ampersand character"RFC2629; here (as shown)
     2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml"?> here
        (for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.xml")

     Both are cited textually in the same manner: by using xref elements.
     If you use the PI option, xml2rfc will, by default, try to find included files in the same
     directory as the including file. You can also define the XML_LIBRARY environment variable
     with a value containing a set of directories to search.  These can be either in the local
     filing system or remote ones accessed by http (http://domain/dir/... ).-->

    <references title="Informative References">
      <!-- Here we use entities that we defined at the beginning. -->

      <?rfc include='http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'?>

     

     

  

      <!-- A reference written by by an organization not a person. -->
    </references>

    <!-- -->
  </back>
</rfc>
