Network Working Group S. Matsushima Internet-Draft R. Wakikawa Intended status: Informational SoftBank Expires: September 23, 2016 March 22, 2016 Stateless user-plane architecture for virtualized EPC (vEPC) draft-matsushima-stateless-uplane-vepc-06 Abstract We envision a new mobile architecture for the future Evolved Packet Core (EPC). The new architecture is designed to support the virtualization scheme called NFV (Network Function Virtualization). In our architecture, the user plane of EPC is decoupled from the control-plane and uses routing information to forward packets of mobile nodes. Although the EPC control plane will run on hypervisor, our proposal does not modify the signaling of the EPC control plane. The benefits of our architecture are 1) scalability, 2) flexibility and 3) Manageability. How to run the EPC control plane on NFV is out of our focus in this document. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on September 23, 2016. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents Matsushima & Wakikawa Expires September 23, 2016 [Page 1] Internet-Draft Stateless U-plane for vEPC March 2016 carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. The Benefits of NFV . . . . . . . . . . . . . . . . . . . 3 2. Motivations and Requirements, - Why IETF? - . . . . . . . . . 4 2.1. Motivations . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. Requirements . . . . . . . . . . . . . . . . . . . . . . 5 3. Stateless user-plane architecture for virtualized EPC . . . 8 3.1. Architecture Overview . . . . . . . . . . . . . . . . . . 8 3.2. Protocol Overview . . . . . . . . . . . . . . . . . . . . 10 3.2.1. Hand-over . . . . . . . . . . . . . . . . . . . . . . 13 3.2.2. Detaching UE . . . . . . . . . . . . . . . . . . . . 14 3.3. Control-plane awareness of stateless user-plane . . . . . 14 3.4. Routing mechanism . . . . . . . . . . . . . . . . . . . . 15 3.5. IPv4 Support . . . . . . . . . . . . . . . . . . . . . . 18 3.6. Interface between Control-plane and BGP Speaker . . . . . 19 4. Operational Considerations . . . . . . . . . . . . . . . . . 20 4.1. Scalability and Reliability . . . . . . . . . . . . . . . 20 4.2. Backward Compatibility . . . . . . . . . . . . . . . . . 22 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22 6. Security Considerations . . . . . . . . . . . . . . . . . . . 22 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 22 7.1. Normative References . . . . . . . . . . . . . . . . . . 22 7.2. Informative References . . . . . . . . . . . . . . . . . 23 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 24 1. Introduction 3GPP introduces Evolved Packet Core (EPC) that is fully IP based mobile system for LTE and -advanced in their Release-8 specification and beyond. Operators are now deploying EPC for LTE services and encounter rapid LTE traffic growth. There are various activities to offload mobile traffic in 3GPP and IETF such as LIPA, SIPTO and DMM. The concept is similar that traffic of OTT (Over The Top) application is offloaded at entity that is closer to the mobile node (ex. eNodeB or closer anchor). Likewise, overload of signaling (control plane) is also increasing day by day. Network operators expect recent innovation and trends of NFV (Network Function Virtualization) to solve this overloaded control plane. NFV is discussed at the ETSI NFV ISG and is introduced in [NFV-WHITEPAPER]. Mobile operator's network is built Matsushima & Wakikawa Expires September 23, 2016 [Page 2] Internet-Draft Stateless U-plane for vEPC March 2016 with variety of proprietary hardware appliances today. If we can get rid of these physical appliances and could shift to a cloud-based service, we will have a lot of benefits explained in the next section. This document assumes that NFV will push networking functions currently run on dedicated hardware onto a cloud network. Expected network functions are Mobility Management Entity (MME), Serving Gateway (SGW) PDN Gateway(PGW), etc. With NFV, EPC can be operated onto servers/hyper-visors. We name it virtualized-EPC (vEPC) in this document. This document uses a lot of 3GPP specific terms. These terms can be found mostly at [RFC6459]. 1.1. The Benefits of NFV This section briefly explains the benefits of NFV. The detailed benefits can be found in [NFV-WHITEPAPER]. Although today's eco- system of EPC appliances might be affected, we believe there are various approaches to enhance current eco-system and migrate to new NFV approaches. For example, operators could pay monthly recurring charges for the NFV services and operations to vendors, instead of one-time purchase and a little maintenance cost. o [Flexible Network Operations]: The control functions of EPC are no longer in appliances deployed widely in operator's network and can be run at hypervisor (cloud). It is easier to add and/ or delete functions from the services, because no physical construction is needed. Network operations will be much simpler and easier because complications of today's network are pushed to NFV (i.e. hypervisor). o [Flexible Resource Managements]: The EPC functions can be run on hypervisor and are now less dependent on proprietary hardware. Adding additional resources is easier in hypervisor, while adding or replacing physical appliances require installation, construction, configuration, and even migration plan without service cutoff. A hypervisor can be also shared across various functions such as PGW, SGW and MME. NFV also brings multi-tenancy and allows a single platform for different services and users. The operator can optimize resources and costs to share a NFV platform for multiple customers (ex. MVNO customers) and services (ex. multiple APNs). o [Faster Speed of Time to Market]: When an operator wants a new function to its network and services, the operator needs to negotiate appliance vendors to implement the new functions or to find alternative equipment supporting the new function. It takes a longer time to convince the vendors, or to replace existing Matsushima & Wakikawa Expires September 23, 2016 [Page 3] Internet-Draft Stateless U-plane for vEPC March 2016 hardware. However, if functions can be implemented as a software, it is much faster to implement the functions on NFV. Even the operator may implement them and try the new functions by themselves. Field trial is also getting easier because of no physical installation or replacement. You may turn on a new function in NFV and observe how the new function behaves in your network. NFV can save preparation time and tuning time of the new function. o [Cost Optimization]: Last but not least, Cost is the most important motivation for operators to realize NFV. Operators can remove many of proprietary appliances from its network and replace them with industry standard servers, switches and routers. In addition, it is easy to scale up and down operator's services so that resources can be always tuned to the size of services. In addition, operational costs led by any physical hardware such as power supply, maintenance, installation, construction and replacement can be minimized or even removed. The network design can be simpler, because complicated functions could be handled by NFV. That simple operation may enable automatic configurations and prevent unnecessary trouble-shooting. As a result, CAPEX and OPEX can be always optimized and lowered. 2. Motivations and Requirements, - Why IETF? - 2.1. Motivations What is a role of IETF to realize vEPC in the future? IETF is not the right place to discuss, for instance, how to run MME on hypervisor. An important IETF activity must be to decouple the control- and user- planes of mobility protocols used in EPC.The motivation of decoupling the user and control plane is discussed in [I-D.wakikawa-req-mobile-cp-separation]. In doing so, NFV-enabled solutions can be easily designed and implemented with interoperability across multiple vendors and platforms. Otherwise, NFV solutions can be easily fragmented due to many proprietary solutions for the protocol separations. As stated in [NFV-WHITEPAPER], interoperability is highly important. In the past, IETF has developed tunnel based mechanisms for mobile nodes such as Mobile IPv6 [RFC6275][RFC5555], Proxy Mobile IPv6 [RFC5213][RFC5844] and NEMO [RFC3963]. Similarly, 3GPP has developed tunnel protocols called GPRS Tunneling Protocol (GTP). These tunnel- based protocols establish a data path for a mobile node between the mobile node and an anchor point (s). There is a case where an access router terminates a tunnel instead of a mobile node (ex. Proxy Mobile IP). In 3GPP, a tunnel is established between SGW and PGW per a mobile node by either Proxy Mobile IPv6 or GTP. The control and Matsushima & Wakikawa Expires September 23, 2016 [Page 4] Internet-Draft Stateless U-plane for vEPC March 2016 the user planes of these mobility protocols are tightly related and cannot be decoupled. The signaling like Binding Update and user's packets are routed along a same path in EPC. It might be necessary to extend these mobility protocols for the user- and control- planes separation. The protocol separation of Mobile IP is discussed in [I-D.yokota-dmm-scenario]. Alternatively, if vEPC was realized, we should have an opportunity to re-visit the basic architecture of mobility system. Instead of tunneling packets on today's EPC, why can't we just route packets to a mobile node? Since a role of the user plane is "routing", BGP and other routing protocols could be used to forward UE's traffic. This document introduces a BGP-based solution. Software Defined Networking (SDN) can be an alternative solution. Open Flow and other relevant protocols can setup the forward path dynamically according to UE's states available in the control plane. We have to remember that there is a good reason of adapting tunneling in Mobile IP based solutions, that is global mobility and signaling. A mobile node should be able to move anywhere on the Internet and be reachable from anyone on the Internet. There were routing based global mobility solutions like Boeing global mobility [Boeing-BGP] and WINMO [RFC6301]. In these proposals, BGP was used to propagate forwarding information of mobile nodes to the Internet. Whenever a mobile node changes its point of attachment, the route must be updated. Due to scalability and stability issues of the Internet, this solution was not recommended by IETF [Boeing-BGP]. However, as Boeing showed, it is doable to support global mobility by using BGP routing update. If scalability is not your concern, a routing based approach becomes a candidate of the mobility solution. While global mobility is important, the "reality" is that your cell phones (i.e. UE/mobile node) are moving just within an operator's network and fully controlled in your local EPC. If mobility is limited within an operator, we believe a routing based approach is feasible and practical for today's mobile system. Instead of dedicated proprietary equipment like SGW and PGW to manage a tunnel path for a mobile node, multiple industry standard routers and switches are configured in the user plane. These switches and routers receive mobile nodes' forwarding information from the control plane of vEPC by routing update. 2.2. Requirements Requirements of our stateless user plane for vEPC are followings. NFV Support Matsushima & Wakikawa Expires September 23, 2016 [Page 5] Internet-Draft Stateless U-plane for vEPC March 2016 The future EPC architecture must support NFV capability. The control plane of EPC operated on NFV framework is named "virtualized EPC (vEPC)" in this document. The control plane of vEPC should keep backward compatibility with the today's EPC's control plane. It means this document doesn't modify the control plane at all. It only assumes software-based MME, SGW, and PGW run on hypervisor. Separation of Control- and User- Planes Due to tight relationship of the control- and user- planes in today's EPC, resource increase is always provisioned to both planes at once. It prevents flexible resource arrangement and introduces high capital investment and over-provisioned resources to one of planes. If NFV is deployed, it is expected that computing resources can be independently allocated to the control planes of the vEPC in a flexible manner. Matsushima & Wakikawa Expires September 23, 2016 [Page 6] Internet-Draft Stateless U-plane for vEPC March 2016 _+---+_ _ _+---+_ _ _ EPC / | S | | P | / Control-plane / | G | | G | / /_ _| W |_ _ _| W |__/ +---+ +---+ | | | | | | | e | | | | | | U | | N | _| |_ _ _| |_ _ _ EPC | E | | B | / | | | | / User-plane +---+ +---+ / +---+ +---+ / /_ _ _Existing EPC_ _/ _+---+_ _ _+---+_ _ _ vEPC / | S | | P | / Control-plane / | G | | G | / /_ _| W |_ _ _| W |__/ | | | | +---+ +---+ +---+ +---+ | | | e | +----------+ | U | | N | _|IP Routing|_ _ _ Stateless | E | | B | / | Network | / User-plane +---+ +---+ / +----------+ / /_ _ _ _ _ _ _ _ _ / NFV enabled EPC architecture Figure 1 Figure 1 shows a possibility that the entities of EPC Control- plane are virtualized in generic cloud environment, however user packets won't go through those virtualized EPC nodes. Decoupling User-plane from the Control-plane entities will be made virtualized Control-plane nodes relax hyper- visor data- path capacity requirements. On the other hand, decoupled User-plane into IP routing network will be agnostic from sessions and bearers states, of which are generated and maintained in the Control-plane. In terms of IP routing, forwarding packets through the networks is based on the destination address of the packets evaluated with network reachable information in the routing table that accommodated in the routing nodes. To forward EPC User-plane packets correctly, those states must be indicated by network reachable information. Flat Design for Distributed Operation Matsushima & Wakikawa Expires September 23, 2016 [Page 7] Internet-Draft Stateless U-plane for vEPC March 2016 Today's 3GPP architecture introduces PDN gateway (PGW) as a gateway to external networks like the Internet. PGW manages all traffic from and to UEs and could be a bottleneck and single point of failure of network connectivity. In addition, due to recent rapid traffic increase, it is important to perform traffic engineering and to offload traffic to multiple locations (ex. SGW, PGW, eNodeB). For enhancements of traffic engineering capability, more flat design with multiple gateways is expected so that traffic can be distributed to all these gateways. There were proposals how to enable flat design to (Proxy) Mobile IP such as [I-D.wakikawa-mext-haha-interop2008] in IETF. Distributed Mobility Management (DMM) Working Group has also discussed how to extend Mobile IP-based solutions to support traffic distribution in an optimal way by removing centrally deployed anchors that is like a Home Agent. Stateless in User Plane Ultimate goal of vEPC is to remove all mobility specific states from the forwarding nodes in the user-plane of vEPC. If we succeed in this, industry standard routers and switches can be used to forward mobile nodes traffic in the user plane of vEPC. A mobile node's specific states are kept in both an IP header of the mobile node's packets and a routing entry of the mobile node. The detail is described in Section 3.2 3. Stateless user-plane architecture for virtualized EPC This section explains our solution that is the stateless user-plane architecture for vEPC. This solution is basically a combination of existing protocols defined in IETF. A minor extension might be needed but it should be easily addressed in IETF. We first introduce our architecture and then protocol overview. 3.1. Architecture Overview Figure 2 shows the user plane of the current EPC architecture. A tunnel is established between SGW and PGW by either Proxy Mobile IP or GTP. PGW is an anchor point of UE for incoming packets. All the packet destined to UE is routed first to PGW. The UE's packets are intercepted by PGW and tunneled to SGW. SGW then forwards the packet to UE via access points (i.e. eNodeB) over Radio Area Network (RAN). Matsushima & Wakikawa Expires September 23, 2016 [Page 8] Internet-Draft Stateless U-plane for vEPC March 2016 .--. _( `)_ _( `) +---+ +---+ ( EPC-NW ) +---+ [UE]~~~~|RAN|====|SGW|===================|PGW| -> the Internet +---+ +---+ `--(______)---' +---+ <--------Tunneling------> ~~~ Wireless Link === GTP Tunnel (PMIP tunnel) --- IP link User plane of the current EPC Figure 2 Figure 3 is our proposed user plane of vEPC. The control plane is not shown in this figure. [EPC-E anycast address] | .--. | _( `)_ | +---+ _( `) +---+ \ |EPC| ( IPv6 Core ) +---+ [UE]~~~~|RAN|====| -E|-( ` NW )-|RTR| --> the Internet +---+ +---+ ( ` ) ) +---+ (eNodeB) `--(_____)--' <--------Routing--------> User plane of vEPC Figure 3 We introduce two new entities such as EPC Edge Router (EPC-E) EPC-E is located at the same place of today's SGW and terminates GTP tunnel established with eNodeB (RAN). EPC-E supports the user plane functions of SGW and PGW. EPC-E is configured an anycast address to the network interface facing to eNodeB. The eNodeB establishes a GTP tunnel per UE with this anycast address. Thanks for anycast address, UE's traffic forwarded by eNodeB is always routed to the closest EPC-E of UE. EPC-E is a router and Matsushima & Wakikawa Expires September 23, 2016 [Page 9] Internet-Draft Stateless U-plane for vEPC March 2016 maintains routing information of every UE that is notified by the control plane. Detail of routing mechanism can be found in Section 3.4. Router (RTR) It is a regular IP router. The control plane of vEPC distributes routing information of every UE by a routing protocol like BGP. Therefore any additional protocols other than routing protocols are not needed for RTR. Multiple RTRs can be configured anywhere in the user plane of vEPC. RTRs announce UE's routing information to the external network (ex. The Internet). As you see in Figure 3, we omit a tunneling mechanism originally established between SGW and PGW for routing UE's packets in the user plane. By removing this tunnel, UE's packets are forwarded to and from the Internet according to routing tables on routers in the core network. Note that, although we remove the tunnel for UE's traffic in the user plane, the control-plane signaling stays same in the control plane. If Proxy Mobile IP is used for this tunnel, Proxy Binding Update and Acknowledgment are exchanged between PGW and SGW that are managed by NFV on servers/hyper-visor. Instead of a tunnel setup, states created by Proxy Mobile IP are distributed to all routing entities (EPC-E and RTR) by a routing protocol. From the user plane point of view, these states are just seen as routing entries. EPC-E and RTR are not involved in any signaling of the control plane. The control plane just injects routing information to EPC-E and RTR to setup routing paths to and from UEs. Although this architecture just uses IPv6 core network, it supports both IPv4 and IPv6 packets. The detailed operation of IPv4 support will be discussed in Section 3.5. 3.2. Protocol Overview This section gives an example of protocols used for vEPC. Figure 4 is the procedure of the PDN connection setup in vEPC. This figure is copied from the section 3 of [RFC6459]. All the steps from (1) to (13) are same as the original except for NFV-based MME, SGW, PGW, HSS, and AAA. The vEPC introduces two new steps, (14) and (15), to setup paths in the user-plane after finishing all the signaling on the control- plane. (16) and (17) are the steps to assign IP address to the mobile node. Matsushima & Wakikawa Expires September 23, 2016 [Page 10] Internet-Draft Stateless U-plane for vEPC March 2016 vEPC(MME/SGW UE eNodeB PGW/HSS/AAA) EPC-E RTR | | | | | |---------->|(1) | | | | |---------->|(1) MME | | |/---------------------\| | | | Authentication |(2) AAA | | |\---------------------/| | | | | |--+SGW/PGW | | | | | |(3)(4) |(4)SGW's TEID is configured | | |<-+ | and notified to MME | |<----------|(5) MME | | |/---------\| | | | | RB setup |(6) | | | |\---------/| | | | | |---------->|(7) MME | | |---------->|(8) | | | | |---------->|(9) MME |(9)eNodeB TEID is configured | | | | and sent to MME |= = = = = = = Uplink Data = = = = =>= = = = ==>|(10) | The uplink is not yet built here | | | | | | | | |--+SGW/MME | | | | | |(11,12) | | | | |<-+ | | |<= = = = = = Downlink Data = = = = <= = = = = =|(13) | The downlink is not yet built here | | | | | | | | |---------->|(14) Route Update | | | [Dst: UE-prefix, | | | NxtHop: S1-U addr and TEID of enodeB | | | | | | | | |---------->|(15)Route update | | | |[Dst: UE-prefix, | | | | NxtHop: EPC-E address] | | | | | |---------RS or DHCP Request------->|(16) | |<--------RA or DHCP Reply----------|(17) | Extended PDN Connection Setup Procedure (copied Figure 8 of RFC6459) Figure 4 In (14), vEPC advertises a routing information of UE to EPC-Es immediately right after the control-plane signaling completion. The routing information contain UE's prefix as destination, remote Matsushima & Wakikawa Expires September 23, 2016 [Page 11] Internet-Draft Stateless U-plane for vEPC March 2016 endpoint of GTP-U tunnel as next-hop which is S1-U addresses and TEIDs of serving eNodeB/EPC-E, and also QoS class applied to the UE. In this document, the advertising entity is a BGP speaker so that the BGP speaker is required to indicate those in BGP message. To achieve that, the BGP speaker and EPC-E should be capable of (1) BGP Tunnel Encaps Attribute [I-D.ietf-idr-tunnel-encaps] which specifies the form to encode GTP-U endpoints, and (2) Dissemination of Flow Specification Rule [RFC5575] with IPv6 amendment [I-D.ietf-idr-flow-spec-v6] to indicate applied QoS class. It is noted that the control-plane needs to expose user-plane information of UEs to BGP speaker. The means of how the control- plane and the BGP speaker deal with that is discussed in Section 3.6. The EPC-E has a peering with the BGP speaker directly. It is thus expected that there is no additional propagation delay of traversing multiple BGP speakers between EPC-E and vEPC. Adding that kind of surplus delay affects user-plane to be interrupted so that it should be avoided as much as possible for user experience. In step (15), the EPC-E advertises routes to upstream routers such as the RTR. For scalable routing operation, UE's prefixes should be aggregated into more shorter length prefixes. Due to that reason, the EPC-E generates routing information and advertised it to the RTR that includes aggregated prefix instead of UE's prefixes and EPC-E address as the next-hop. UE requests an IPv6 prefix for its address assignment in the step (16). In our architecture, an IPv6 prefix is still assigned by vEPC in the control plane, as PDN-GW does in the legacy EPC. However, EPC-E is responsible to deliver the IPv6 prefix to UE by DHCP or Stateless address autoconfiguration (SLAAC). We now explain how EPC-E can know the prefix assigned to UE from vEPC for address configuration steps (16 and 17). When (1) to (15) are completed, vEPC has already advertised the UE's prefix as route information to all the EPC-E. Therefore, when EPC-E receives a packet of either Router Solicitation or DHCPv6 request message, it just looks up the remote next-hop field of its routing information base (RIB) with the source IP address and the TEID of the received packet. A route entry matched for this search is the prefix delegated to the requesting UE. Therefore, EPC-E simply uses the prefix of the route entry as an assigned UE's prefix. In (17), EPC-E returns the found prefix to UE by either Router Advertisement or DHCPv6 reply message. UE now creates an address(es) from the received prefix. It is important to highlight that UE can Matsushima & Wakikawa Expires September 23, 2016 [Page 12] Internet-Draft Stateless U-plane for vEPC March 2016 obtain the same prefix information from any EPC-E all the time because the same UE's route information is available on all the EPC- E. It would be convenient to use automatic UE's prefix creation rule or algorithm for vEPC. There are various mechanisms to create UE's prefix. As an example, Stateless IPv6 Prefix Delegation [I-D.savolainen-stateless-pd] is introduced as an algorithm to create UE's prefix in vEPC below. It important to mention that our architecture of the stateless user plane does not rely on any particular prefix creation mechanisms like [I-D.savolainen-stateless-pd] and can be run with any of them. In the case of an UE's prefix length is equal, or shorter than /64, the generated prefix is consisted as shown in Figure 5. Each PDN is assumed to have single or several prefixes (named PDN prefix) used to generate UE's address. Followed by the PDN prefix, there is TEID field assigned for a UE's session on S1-U interface of vEPC. TEID is 32 bits identifier in GTP header to distinguish each bearer. The remaining bits are filled by subnet ID. | n bits | o bits (=< 32)|64-n-o bits| +---------------------------+---------------+-----------+ | PDN Prefix | TEID | subnet ID | +---------------------------+---------------+-----------+ <---------------------------64bits----------------------> Stateless-pd Prefix Figure 5 3.2.1. Hand-over When tunnel endpoint is updated by UE hand-over between eNodeBs, vEPC must refresh the route of UE with the updated tunnel endpoint as new remote next-hop. Figure 6 shows vEPC that advertising updated route in (8) when UE hand-over from source eNodeB to target eNodeB on simplified hand-over procedure. The updated route that points to target eNodeB's S1-U address and TEID as the next-hop should be immediately advertised to all the EPC-Es right after the procedures (1) to (7) completed. It is noted that RTR or any upstream routers of EPC-Es do not require routing update for each of UE hand-over event. EPC-E is required to just advertise once aggregate route during at least an UE route exist Matsushima & Wakikawa Expires September 23, 2016 [Page 13] Internet-Draft Stateless U-plane for vEPC March 2016 so that EPC-E does not advertise hand-over UE route in Figure 6. Operators require that their core network must be kept its routing stable. This architecture prevents routing fluctuation in the network that helps to fulfill that requirement consequently. Source Target UE eNodeB eNodeB vEPC EPC-E RTR | | | | | | | | | | | | | |---Handover Required---->|(1) | | | | |<--Handover---|(2) | | | | | Request | | | | | | | | | | | |--Handover--->|(3) | | | | | Acknoledge | | | | | | | | | |<---------|<----Handover Command----|(4) | | |--Handover Confirm-->|(5) | | | |= = = = = = = = = Uplink Data = = = = = = = = =>= = ==>|(6) | | | | | | | | |---Handover-->|(7) | | | | | Notify | | | | | | |-------->|(8) | | | | | Route Update | | | | |[Dst : UE-prefix, | | | | NxtHop: Target eNode's | | | | S1-U addr/TEID] | | | | | | |<== = = = = = = = Downlink Data = = = = = = =<== = = =|(9) | | | | | | Simplified Hand-over Procedure Figure 6 3.2.2. Detaching UE In the case of UE detachment, vEPC also advertises route update that includes detached UE prefix as withdrawn route to delete the route of the detached UE from EPC-Es. 3.3. Control-plane awareness of stateless user-plane Nodes in the control-plane in vEPC must be aware that the anycast address assigned to EPC-E is a S1-U address of vEPC. The vEPC must use the anycast address in signaling between vEPC and RAN. By doing Matsushima & Wakikawa Expires September 23, 2016 [Page 14] Internet-Draft Stateless U-plane for vEPC March 2016 this, packets from RAN are correctly forwarded to an appropriate EPC- E. Due to anycast nature, it means there is no hand-off procedure between SGWs because all eNodeB in the RAN send packets to the same anycast address. When an operator needs to increase virtualized instances to cope with just signaling overload, the operator should use the existing S1-U address (i.e. EPC-E anycast address) for the new instances. If the operator would increase the capacity of the user plane, it can add additional EPC-Es in the core network. The operator can group the new EPC-Es as a set and increase scalability and performance of the user plane. In this case, the operator uses a new anycast address to the new set of EPC-E. We will discuss operational consideration in detail in Section 4. 3.4. Routing mechanism Figure 7 shows a packet forwarding mechanism of our stateless user plane. As an example, there are four eNodeB (illustrated as eNB-x) , three EPC-Edge routers(shown as EPC-Ex) and two routers (RTRx) in Figure 7. UE is first connected to eNB-C and then moves to eNB-D. The UE at the new location is illustrated as UE'. Routing entry for UE is also illustrated at the right side in Figure 7. EPC-E has two interfaces facing either RAN or CORE networks. An anycast address (shown as X) is configured to the interface facing RAN of all EPC-E. EPC-E assigns an individual IPv6 address to another interface (illustrated "a" to "d" in the figure). It is important to mention that the anycast address X can be treated as the SGW's S1-U address. Since RTRs are a gateway to the Internet, they advertise routes of an operator's prefix to the Internet. After one of RTR receives a packet of UE from the Internet, it needs to routing it to UE in the user plane. RTR has a simple routing entry for PDN prefix whose next hop points to the EPC-E. One of RTR (let's say RTR2 in this case) looks up a routing table with UE's address and matched it with a routing entry of PDN prefix. Since multiple EPC-Es advertise a route for the same PDN prefix, RTR2 should forward the packet to one of EPC-E according to the routing entry. This routing is known as hot- potato routing. In this example, the RTR2 uses EPC-E2-b as a nexthop of PDN prefix. When the UE's packet is arrived at EPC-E2, EPC-E2 needs to forwards them to UE via eNodeB to which UE is connecting by using GTP tunnel. For this operation, EPC-E2 has a routing entry that destination is UE's prefix and that next hop points to GTP tunnel between eNB-C and the EPC-Es. In order to identify the GTP tunnel for UE, EPC-E needs Matsushima & Wakikawa Expires September 23, 2016 [Page 15] Internet-Draft Stateless U-plane for vEPC March 2016 S1-U address and Tunnel Endpoint ID (TEID) of eNB-C that is eNB-C-3 in Figure 7. The eNB-C TEID for UE is illustrated as TEID[eNB-C]. The SGW assigned TEID is utilized to generate the UE's prefix as we explained in Section 3.2. These TEID are assigned per UE. The TEID and S1-U address of eNodeB are retrieved from the next hop field of the routing entry of the mobile node. By using the GTP information, every EPC-E can now forward the UE's packets to right eNodeB. Routing outgoing packets from UE is much simpler. The packets from UE are always routed to the closest EPC-E to UE because of anycast routing. In Figure 7, when UE sends a packet to a destination, the packet is reached to eNB-C and tunneled to EPC-E's anycast address. The GTP-tunneled packet is routed to the closest EPC-E that is EPC-E2 in this case. The packet is decapsulated by EPC-E2 and then forwarded to one of RTR according to the routing table. Since the decapsulated packet is regular IPv6 packet, no extra control other than routing is necessary. When UE moves to a new location (UE'), it updates its location on the control plane. After signaling completion for location update, vEPC needs to update the UE's routing entry of all EPC-E so that vEPC advertises updated route with new location to all EPC-Es by a routing protocol. The routing entry should be updated with the new eNodeB's address that is eNB-D-4. During handover, there might be some traffic arriving to the older eNodeB (eNB-C). These packets can be re-routed to the new eNodeB (eNB-D) via X2-U interface in RAN. The UE's address isn't changed when UE changes its attachment. In our scenario, SGW run on hypervisor and is independent from network topology. Therefore, logically we don't have handover across different SGWs. UE can stay connected with the same SGW all the time and can keep using the same TEID after handover. Thus, UE's address is unchanged even after handover. Matsushima & Wakikawa Expires September 23, 2016 [Page 16] Internet-Draft Stateless U-plane for vEPC March 2016 +--------------------+ | Correspondent Node | +--------------------+ | .--. [Route on the Internet] _(. `) Destination: Operator's Prefix _( `)_ NextHop: RTR-1/2 ( Internet `) ( ` . ) ) `--(_______)---' / \ [Route at RTR] +----+ +----+ Destination: PDN Prefix |RTR1| |RTR2| NextHop: EPC-E2-b +----+ +----+ \ .--. / _( IP `. ( CORE NW ) ___( ` . ) )__ / `--(___.--' \ / | \ |a |b |c [Route at EPC-E] +---+--+ +---+--+ +---+--+ Destination: UE's Prefix *1 |EPC-E1| |EPC-E2| |EPC-E3| NextHop: GTP tunnel (eNB-C) *2 +---+--+ +---+--+ +---+--+ |X |X |X \ .--. / \_____( RAN `.____/ ( ACCESS ) ____( ` NW ) )_______ / `--(___.--' \ / | | \ |1 |2 |3 |4 +--+--+ +--+--+ +--+--+ +--+--+ |eNB-A| |eNB-B| |eNB-C| |eNB-D| +--+--+ +--+--+ +--+--+ +--+--+ : : : : UE --> UE' *1 TEID used at EPC-E for the UE is included in this UE's prefix. see Figure 4. *2 GTP tunnel state is stored in the next hop field. The state information is the combination of eNB-C S1 address that is eNB-C-3 and TEID(eNB-C) assigned for the UE. Routing Mechanism Overview Figure 7 Matsushima & Wakikawa Expires September 23, 2016 [Page 17] Internet-Draft Stateless U-plane for vEPC March 2016 3.5. IPv4 Support Recent IPv6 transition mechanisms enable IPv6-only network to forward IPv4 packet with encapsulation or translation techniques. By using one of mechanisms, we can use IPv6 for our stateless user-plane network for transporting both IPv4 and IPv6 packets. Figure 8 shows available solutions of IPv4 support for each bearer type to deal with that requirement. Bearer UE EPC-E Gateway type function function function -------------------------------------------- IPv4 - B4 AFTR IPv4 - CLAT PLAT IPv6 MAP-CE - MAP-BR IPv6 B4 - AFTR IPv6 CLAT - PLAT Solutions and functions for IPv4 support Figure 8 In the case of a UE only support IPv4 bearer, B4 function of DS-Lite [RFC6333] or CLAT function of 464XLAT [RFC6877] may be implemented in a EPC-E. Both functions are stateless therefore EPC-E isn't required to maintain any tunneling or translation state. Figure 9 shows how to support IPv4 on IPv6 core network in our vEPC. Instead of using RTR as a gateway to the Internet, DS-LITE AFTR or 464XLAT PLAT is installed as a gateway to the IPv4 Internet. Matsushima & Wakikawa Expires September 23, 2016 [Page 18] Internet-Draft Stateless U-plane for vEPC March 2016 .--. EPC-E _( `)_ Gateway +----+ _( `) +------+ | B4 | ( IPv6 Core ) | AFTR | [UE]==IPv4-only==| or |-( ` NW )-| or | --> Internet bearer |CLAT| ( ` ) ) | PLAT | (IPv4) +----+ `--(_____)--' +------+ <-----IPv4 over IPv6-----> or v4v6 translation IPv4 User plane of vEPC Figure 9 If UE supports IPv6 capable bearer, IPv6 transition function may be implemented in the UE such as MAP-CE [I-D.ietf-softwire-map], B4 or CLAT. That means an EPC-E receives IPv6 packets from UE in this case so that the EPC-E does not need to be involved in the part of IPv4 support functions. 3.6. Interface between Control-plane and BGP Speaker In Section 3.2 described, mobility control-plane and BGP speakers within a vEPC need an interface to export user-plane information from the control-plane to the BGP speakers. Perhaps many solutions would be developed proprietarily. However, adopting standardized interface will be much appropriate. Forwarding Policy Configuration Protocol (FPCP) [I-D.ietf-dmm-fpc-cpdp] has been standardized in IETF for that purpose. That provices client function to the mobility control-plane to export user-plane information, and agent function which enables the BGP speakers to receive the user-plane information when it is implemented into them. User-plane information contains UE's IP prefix, GTP-U tunnel endpoints of serving eNodeB/EPC-E and applied QoS class. When those information come into the BGP speaker, the agent renders it into BGP attributes which are UE's IP prefix, GTP-U tunnel endpoints and QoS class are indicated in NLRI, [I-D.ietf-idr-tunnel-encaps] and [RFC5575] with [I-D.ietf-idr-flow-spec-v6] respectively. The BGP speaker generates BGP UPDATE messages based on that and then advertises it to EPC-E routers. Figure 10 depicts FPCP enabled vEPC in which mobility control-plane and BGP speaker are interfaced through FPCP client and agent functions. Matsushima & Wakikawa Expires September 23, 2016 [Page 19] Internet-Draft Stateless U-plane for vEPC March 2016 +----------------------------------------------------+ | vEPC | | +----------------------------------+ | | | Mobility Control-Plane | | | | | | | | +-----+ +-----+ +-----+ +------+ | | | | | MME | | SGW | | PGW | | PCRF | | | | | +-----+-+-----+-+-----+-+------+ | | | | | Interface to BGP Speaker | | | | | | (Client Function) | | | | +-+--------------^---------------+-+ | | | | | | FPC Protocol | | | | | +-+--------------v----------------+-+ | | | | Agent Function | | | | | +-------------------------------+ | | | | | | | | BGP Speaker | | | +----------------^------------------+ | +-------------------------|--------------------------+ | | BGP Peering | w/ Tunnel encaps & Flow-spec | attributes | +--------------v----------------+ | EPC-E Routers | +-------------------------------+ FPCP enabled vEPC Figure 10 4. Operational Considerations 4.1. Scalability and Reliability Virtualization allows vEPC to be elastic for steep demand of requests to create and update for sessions. In our architecture, that makes routing update fluctuation from vEPC to EPC-E. This is the reason why we select BGP as a protocol between vEPC and EPC-E. BGP is scalable and stable routing protocol today. BGP is an incremental update protocol so that once BGP peer established, millions of routes can be easily updated in stable Matsushima & Wakikawa Expires September 23, 2016 [Page 20] Internet-Draft Stateless U-plane for vEPC March 2016 manners. Operators can appropriately design BGP peering between vEPC and ECP-E to secure convergence time within appropriate period. Granularity of the peering should be aware EPC-E capacity because it is assumed that EPC-E has upper limit of routing entries. BGP peering design should makes sure that total number of routes does not exceed EPC-E capacity. During the network planning, operators must understand EPC-E's capacity such as # of routes, bandwidth, etc. An example of estimation, if a EPC-E has 1Gbps throughput and each UE's bandwidth consumption is 10Kbps in average, the EPC-E should have 100K routes capacity. This is an operational approach to minimize the risk of routing update fluctuation. If it is hard to support all the UEs by a EPC-E in an operators network, another EPC-E can be introduced and configured as a set of EPC-Es. The UEs are distributed and handled by the EPC-Es within the set. We don't need to support millions of UEs by a single EPC-E. EPC-E set is also useful to have EPC-E redundancy for reliable operation. The nature of BGP makes easy to replicate UE routes to multiple EPC-Es within a EPC-E set. In that EPC-E set, when an EPC-E fall down to a failure, another EPC-E come out with same UE routes that the fall-down EPC had and immediately re-converge to core routing. That helps user-plane to minimize disruption during EPC-E failure recovery. These are another advantage of using routing mechanism in the user plane. We already explain how to handle multiple EPC-Es and EPC-E sets in our scheme in Section 3.3. The notion of multiple EPC-E sets is easily fitted into our today's' network. The operator's network is often separated into several regional network for geographical scalability. Therefore, the operator can assign different EPC-E set to different region for better scalability. In that network, when an UE hands over between two regions, the session of the UE might be disconnected if the serving EPC-E doesn't have reachability for those region access networks. For example, in the case of regional access networks have duplicated IPv4 private address space. To enable inter-region hand-over, it is recommended that all of the access network, such as RAN, are IPv6 networks and reachable each other. Matsushima & Wakikawa Expires September 23, 2016 [Page 21] Internet-Draft Stateless U-plane for vEPC March 2016 In addition, routers and EPC-E in the IPv6 core network are required to process just "route", they naturally aggregate those routing entries. It helps limiting the total number of routing entries in our core network. 4.2. Backward Compatibility vEPC should be able to fall back to the legacy EPC based packet forwarding to secure backward compatibility which is required to connect existing system, or to connect roaming partners through legacy S5/S8 interfaces. When fallback happened, all the packets are not routed on our stateless user plane, but forwarded to vEPC (i.e. SGW and PGW instances on hypervisor). vEPC must use a S1-U address that is different from anycast address assigned to EPC-Es. This address is assigned to SGW instances in vEPC and used to terminate tunnels in vEPC servers (i.e. hypervisor). 5. IANA Considerations This memo includes no request to IANA. 6. Security Considerations There are no security considerations specific to this document at this moment. 7. References 7.1. Normative References [I-D.ietf-idr-flow-spec-v6] McPherson, D., Raszuk, R., Pithawala, B., Andy, A., and S. Hares, "Dissemination of Flow Specification Rules for IPv6", draft-ietf-idr-flow-spec-v6-07 (work in progress), March 2016. [I-D.ietf-idr-tunnel-encaps] Rosen, E., Patel, K., and G. Velde, "The BGP Tunnel Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-01 (work in progress), December 2015. [RFC5575] Marques, P., Sheth, N., Raszuk, R., Greene, B., Mauch, J., and D. McPherson, "Dissemination of Flow Specification Rules", RFC 5575, DOI 10.17487/RFC5575, August 2009, . Matsushima & Wakikawa Expires September 23, 2016 [Page 22] Internet-Draft Stateless U-plane for vEPC March 2016 7.2. Informative References [Boeing-BGP] Andrew, , "Global IP Network Mobility using Border Gateway Protocol (BGP)", IAB Plenary IAB Plenary of IETF 62nd, March 2005. [I-D.ietf-dmm-fpc-cpdp] Liebsch, M., Matsushima, S., Gundavelli, S., and D. Moses, "Protocol for Forwarding Policy Configuration (FPC) in DMM", draft-ietf-dmm-fpc-cpdp-01 (work in progress), July 2015. [I-D.ietf-softwire-map] Troan, O., Dec, W., Li, X., Bao, C., Matsushima, S., Murakami, T., and T. Taylor, "Mapping of Address and Port with Encapsulation (MAP)", draft-ietf-softwire-map-13 (work in progress), March 2015. [I-D.savolainen-stateless-pd] Savolainen, T. and J. Korhonen, "Stateless IPv6 Prefix Delegation for IPv6 enabled networks", draft-savolainen- stateless-pd-01 (work in progress), February 2010. [I-D.wakikawa-mext-haha-interop2008] Wakikawa, R., Shima, K., and N. Shigechika, "The Global HAHA Operation at the Interop Tokyo 2008", draft-wakikawa- mext-haha-interop2008-00 (work in progress), July 2008. [I-D.wakikawa-req-mobile-cp-separation] Wakikawa, R., Matsushima, S., Patil, B., Chen, B., DJ, D., and H. Deng, "Requirements and use cases for separating control and user planes in mobile network architectures", draft-wakikawa-req-mobile-cp-separation-00 (work in progress), November 2013. [I-D.yokota-dmm-scenario] Yokota, H., Seite, P., Demaria, E., and Z. Cao, "Use case scenarios for Distributed Mobility Management", draft- yokota-dmm-scenario-00 (work in progress), October 2010. [NFV-WHITEPAPER] Network Operators, , "Network Functions Virtualization, An Introduction, Benefits, Enablers, Challenges and Call for Action", SDN and OpenFlow SDN and OpenFlow World Congress, October 2012. Matsushima & Wakikawa Expires September 23, 2016 [Page 23] Internet-Draft Stateless U-plane for vEPC March 2016 [RFC3963] Devarapalli, V., Wakikawa, R., Petrescu, A., and P. Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963, DOI 10.17487/RFC3963, January 2005, . [RFC5213] Gundavelli, S., Ed., Leung, K., Devarapalli, V., Chowdhury, K., and B. Patil, "Proxy Mobile IPv6", RFC 5213, DOI 10.17487/RFC5213, August 2008, . [RFC5555] Soliman, H., Ed., "Mobile IPv6 Support for Dual Stack Hosts and Routers", RFC 5555, DOI 10.17487/RFC5555, June 2009, . [RFC5844] Wakikawa, R. and S. Gundavelli, "IPv4 Support for Proxy Mobile IPv6", RFC 5844, DOI 10.17487/RFC5844, May 2010, . [RFC6275] Perkins, C., Ed., Johnson, D., and J. Arkko, "Mobility Support in IPv6", RFC 6275, DOI 10.17487/RFC6275, July 2011, . [RFC6301] Zhu, Z., Wakikawa, R., and L. Zhang, "A Survey of Mobility Support in the Internet", RFC 6301, DOI 10.17487/RFC6301, July 2011, . [RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual- Stack Lite Broadband Deployments Following IPv4 Exhaustion", RFC 6333, DOI 10.17487/RFC6333, August 2011, . [RFC6459] Korhonen, J., Ed., Soininen, J., Patil, B., Savolainen, T., Bajko, G., and K. Iisakkila, "IPv6 in 3rd Generation Partnership Project (3GPP) Evolved Packet System (EPS)", RFC 6459, DOI 10.17487/RFC6459, January 2012, . [RFC6877] Mawatari, M., Kawashima, M., and C. Byrne, "464XLAT: Combination of Stateful and Stateless Translation", RFC 6877, DOI 10.17487/RFC6877, April 2013, . Authors' Addresses Matsushima & Wakikawa Expires September 23, 2016 [Page 24] Internet-Draft Stateless U-plane for vEPC March 2016 Satoru Matsushima SoftBank 1-9-1,Higashi-Shimbashi,Minato-Ku Tokyo 105-7323 Japan Email: satoru.matsushima@g.softbank.co.jp Ryuji Wakikawa SoftBank 1-9-1,Higashi-Shimbashi,Minato-Ku Tokyo 105-7323 Japan Email: ryuji.wakikawa@gmail.com Matsushima & Wakikawa Expires September 23, 2016 [Page 25]