INTERNET-DRAFT R. Fernando Intended Status: Standards track D. Rao Expires: April 28, 2015 Cisco L. Fang Microsoft M. Napierala AT&T N. So Vinci Systems A. Farrel Juniper Networks October 25, 2014 Virtual Topologies for Service Chaining in BGP/IP MPLS VPNs draft-rfernando-bess-service-chaining-00 Abstract This document presents techniques built upon BGP/IP MPLS VPN control plane mechanisms to construct virtual topologies for service chaining. These virtual service topologies interconnect network zones and constrain the flow of traffic between these zones via a sequence of service nodes so that service functions can be applied to the traffic. This document also describes approaches enabled by both the routing control plane and by network orchestration to realize these virtual service topologies. Status of this Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." The list of current Internet-Drafts can be accessed at Fernando, et. al. Expires April 28, 2015 [Page 1] INTERNET DRAFT Virtual Service Topology October 25, 2014 http://www.ietf.org/1id-abstracts.html The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html Fernando, et. al. Expires April 28, 2015 [Page 2] INTERNET DRAFT Virtual Service Topology October 25, 2014 Copyright and License Notice Copyright (c) 2014 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 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 . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Intra-Zone Routing and Traffic Forwarding. . . . . . . . . . . 5 3. Inter-Zone Routing and Traffic Forwarding. . . . . . . . . . . 7 3.1 Traffic Forwarding Operational Flow . . . . . . . . . . . . 8 4. Inter-Zone Model . . . . . . . . . . . . . . . . . . . . . . . 9 4.1 Constructing the Virtual Service Topology . . . . . . . . . 9 4.2 Per-VM Service Chains. . . . . . . . . . . . . . . . . . . . 12 5. Routing Considerations . . . . . . . . . . . . . . . . . . . . 12 5.1 Multiple Service Topologies . . . . . . . . . . . . . . . . 12 5.2 Multipath . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.3 Supporting Redundancy . . . . . . . . . . . . . . . . . . . 12 5.4 Route Aggregation . . . . . . . . . . . . . . . . . . . . . 13 6. Orchestration Driven Approach . . . . . . . . . . . . . . . . . 13 7. Security Considerations. . . . . . . . . . . . . . . . . . . . 13 8. Management Considerations. . . . . . . . . . . . . . . . . . . 13 9. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 13 10. Acknowledgements. . . . . . . . . . . . . . . . . . . . . . . 14 11. References. . . . . . . . . . . . . . . . . . . . . . . . . . 14 11.1 Normative References . . . . . . . . . . . . . . . . . . . 14 11.2 Informative References . . . . . . . . . . . . . . . . . . 14 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15 Fernando, et. al. Expires April 28, 2015 [Page 3] INTERNET DRAFT Virtual Service Topology October 25, 2014 1. Introduction Network topologies and routing design in enterprise, data center, and campus networks typically reflect the needs of the organization in terms of performance, scale, security, and availability. For scale and security reasons, these networks may be composed of multiple small domains or zones each serving one or more functions of the organization. A network zone is a logical grouping of physical assets that supports certain applications. Hosts can communicate freely within a zone. That is, a datagram traveling between two hosts in the same zone is not routed through any servers that examine the datagram payload and apply services (such as security or load balancing) to the traffic. But a datagram traveling between hosts in different zones may be subject to additional services to meet the needs of scaling, performance, and security for the applications or the networks themselves. Networks have achieved division into zones and the imposition of services through a combination of physical topology constraints and routing. For example, one can force datagrams to go through a firewall (FW) by putting the FW in the physical data path from a source to the destination, or by causing the routed path form source to destination to go via a FW that would not normally be on the path. Similarly, the datagrams may need to go through a security gateway for security services, or a Load Balancer (LB) for load balancing services. In virtualized data centers, appliances, applications, and network functions, including IP VPN provider edge (PE) and customer edge (CE) functions are all commonly virtualized. That is, they exist as software instances residing in servers or appliances instead of individual (dedicated) physical devices. Migrating a network with all its functions and infrastructure elements to realization in a virtualized data center requires network overlay mechanisms that provide the ability to create virtual network topologies that mimic physical networks, and that provide the ability to constrain the flow of routing and traffic over these virtual network topologies. A data center uses a virtual topology in which the servers are in the "virtual" data path, rather than in the physical data path. For example, a traffic flow might previously have had the source PE-1 and destination at an Autonomous System Border Router (ASBR), ASBR-1, and the flow might have needed to be serviced by FW-1 and LB-1. In this virtualized data center, the functions of all four nodes could be Fernando, et. al. Expires April 28, 2015 [Page 4] INTERNET DRAFT Virtual Service Topology October 25, 2014 provided by virtual nodes that could be placed at arbitrary locations across the data center. Thus the "virtual service chain" vPE-1, FW-1, vLB-1, vASBR-1, that is the sequence of virtual service nodes that packet must traverse, could be realized by a logical path between arbitrary physical locations in the data center. A data center will likely support multiple tenants. A tenant is a customer who uses the virtualized data center services. Each tenant might require different connectedness (i.e., a different virtual topology) between their zones and applications, and might need the ability to apply different network policies such that the services for inter-zone traffic are applied in a specific order according to the organization objectives of the tenant. Furthermore, a data center might need multiple virtual topologies per tenant to handle different types of application traffic. Additionally, a data center operator may choose to provide services for multiple tenants on the same virtualized end device, for example, a server. Such multi-tenant devices must utilize techniques such as routing isolation to retain separation between tenants' traffic. To address all of these requirements, the mechanisms devised for use in a data center need to be flexible enough to accommodate the custom needs of the tenants and their applications, and at the same time must be robust enough to satisfy the scale, performance, and high availability needs that are demanded by the operator of the virtual network infrastructure that has a very large number of tenants each with different application types, large networks, multiple services, and high-volume traffic. Toward this end, this document introduces the concept of virtual service topologies and extends IP MPLS VPN control plane mechanisms to constrain routing and traffic flow over virtual service topologies. The creation of these topologies and the setting up of the forwarding tables to steer traffic over them may be carried out either by extensions to IP MPLS VPN procedures and functionality at the PEs, or via a "software defined networking" (SDN) approach. This document specifies the use of both approaches, but uses the IP MPLS VPN option to illustrate the various steps involved. This draft is a re-submission of draft-rfernando-l3vpn-service- chaining-05.txt, to conform to the bess working group nomenclature. Fernando, et. al. Expires April 28, 2015 [Page 5] INTERNET DRAFT Virtual Service Topology October 25, 2014 1.1 Terminology This document uses the following acronyms and terms. Terms Meaning ----- -------------------------------------------------- AS Autonomous System ASBR Autonomous System Border Router CE Customer Edge FW Firewall I2RS Interface to the Routing System L3VPN Layer 3 VPN LB Load Balancer NLRI Network Layer Reachability Information [RFC4271] P Provider backbone router proxy-arp proxy-Address Resolution Protocol RR Route Reflector RT Route Target SDN Software Defined Network vCE virtual Customer Edge router [I-D.fang-l3vpn-virtual-ce] vFW virtual Firewall vLB virtual Load Balancer VM Virtual Machine vPC virtual Private Cloud vPE virtual Provider Edge router [I-D.fang-l3vpn-virtual-pe] VPN Virtual Private Network VRF VPN Routing and Forwarding table [RFC4364] vRR virtual Route Reflector This document also uses the following general terms: Service-PE: A BGP/IP MPLS VPN PE to which a service node in a virtual service topology is attached. The PE directs incoming traffic from other PEs or from attached hosts to the service node via an MPLS VPN label or IP lookup. The PE also forwards traffic from the service node to the next node in the chain. A Service-PE is a logical entity and a given PE may be attached to both a service node and an application host VM. Service node: A physical or virtual service appliance/application which inspects and/or redirects the flow of inter-zone traffic. Examples of service nodes include FWs, LBs, and deep packet inspectors. The service node acts as a CE in the VPN network. Fernando, et. al. Expires April 28, 2015 [Page 6] INTERNET DRAFT Virtual Service Topology October 25, 2014 Service chain: A sequence of service nodes that interconnect the zones containing the source and destination hosts or endpoints. The service chain is unidirectional and creates a one way traffic flow between source zone and destination zone. Virtual service topology: A virtual service topology consists of a sequence of service-PEs and their attached service nodes created in a specific order. A service topology is constructed via one or more routes that direct the traffic flow among the PEs that form the service chain. Service-topology-RT: A BGP route attribute that identifies the specific service topology. Tenant: A tenant is a higher-level management construct. In the control/ forwarding plane it is the collection of various virtual networks that get instantiated. A tenant may have more than one virtual network or VPN. Zone: A logical grouping of physical or virtual assets that supports certain applications or a subset thereof. VMs or hosts can communicate freely within a zone. 2. Intra-Zone Routing and Traffic Forwarding This section provides a brief overview of how the BGP/IP MPLS VPN [RFC4364] control plane can be used in a DC network to used to divide the network into a number of zones. The subsequent sections in the document build on this base model to create inter-zone service topologies by interconnecting these zones and forcing inter-zone traffic to travel through a sequence of servers where the sequence of servers depends on the tuple . The notion of a BGP/IP VPN when applied to the virtual data center works in the following manner. The VM that runs the applications in the server is treated as a CE attached to the VPN. A CE/VM belongs to a zone. The PE is the first hop router from the CE/VM and the PE-CE link is single hop from a layer-3 perspective. Any of the available physical, logical or tunneling technologies can be used to create this "direct" link between the CE/VM and its attached PE(s). If a PE attaches to one or more CEs of a certain zone, the PE must Fernando, et. al. Expires April 28, 2015 [Page 7] INTERNET DRAFT Virtual Service Topology October 25, 2014 have exactly one VRF for that zone, and the PE-CE links to those CEs must all be associated with that VRF. Intra-zone connectivity between CE/VMs that attach to different PEs is achieved by designating an RT per zone (zone-RT) that is both an import RT and an export RT of all PE VRFs that terminate the CE/VMs that belong to the zone. A VM may have multiple virtual interfaces that attach to different zones. It is further assumed that the CE/VMs are associated with network policies that are activated on an attached PE when a CE/VM is instantiated. These policies dictate how the network is set up for the CE/VM including the properties of the CE-PE link, the IP address of the CE/VM, the zones to which it belongs, QoS policies, etc. There are many ways to accomplish this step, but a description of such mechanisms is outside the scope of this document. When the CE/VM is activated, the attached PE starts to export the CEs IP address with the corresponding zone-RT. This allows unrestricted any-to-any communication between the newly active VM and the rest of the VMs in the zone. The classification of VMs into a zone is driven by the communication and security policy and is independent of the addressing scheme for the VMs. The VMs in a zone may be in the same or different IP subnets with user-defined mask-lengths. The PE advertises /32 routes to advertise reachability to locally attached VMs. If two VMs are in the same IP subnet, the PE may employ proxy-ARP to assist the VM to resolve ARP for other VMs in the IP subnet, and may use IP forwarding to carry traffic between the VMs. When a VM is attached to a remote PE, IP VPN forwarding is used to tunnel packets to the remote PE. 3. Inter-Zone Routing and Traffic Forwarding A simple form of inter-zone traffic forwarding can be achieved using extranets or hub-and-spoke L3VPN configurations [RFC7024]. However, the ability to enforce constrained traffic flows through a set of services is non-existent in extranets and is limited in hub-and-spoke setups. Note that the inter-zone services cannot always be assumed to reside and be in-lined on a PE. There is a need to virtualize the services themselves so that they can be implemented on commodity hardware and scaled out 'elastically' when traffic demands increase. This creates a situation where services for traffic between zones may be applied not only at the source-zone PE or the destination-zone PE. Mechanisms are required that make it easy to direct inter-zone traffic through the appropriate set of service nodes that might be remote or virtualized. Fernando, et. al. Expires April 28, 2015 [Page 8] INTERNET DRAFT Virtual Service Topology October 25, 2014 3.1 Traffic Forwarding Operational Flow Traffic from a source endpoint (a VM/CE or PE) in a source zone reaches an ingress zone-PE and is associated with a VRF in that zone as described above. The zone-PE will forward the traffic and direct it toward the first service-node. If the service-node is attached to the zone-PE, the zone-PE will forward the packets out of one of its access interfaces. If the service-node is attached to a different service-PE, the zone-PE will encapsulate the packets and send them toward the service-PE. The zone-PE and service PE may be connected via an intermediate network of devices and the encapsulation causes the packets to be tunneled across this intermediate network. The service-PE will receive these encapsulated packets from the source zone-PE, decapsulate them, and forward them to its attached service-node. The traffic that comes back to the service-PE from the service-node must now be forwarded to the next service-node in the chain. As above, the next service-node may be locally attached or at a remote service-PE. At the last service-PE in the chain, the traffic that comes back from a service-node must be forwarded to the destination in the target zone. Just as with the service-nodes, the destination may be attached to the service-PE or reachable via another PE. As can be seen from this description, a given packet flow needs to be forwarded differently at each PE depending on whether it is arriving from a node attached to the PE or from a remote PE, and depending on whether the traffic is to be routed toward a node attached to the PE or attached to a remote PE. The next-hop for a flow changes depending on the relative position within the service chain. Figure 1 illustrates a virtual service topology, where hosts in Zone 1 are interconnected with hosts in Zone 2 via two service nodes (Serv-A and Serv-B) attached to two service-PEs (S-PE-A and S-PE-B respectively). """""""""""""""""""""" """""""""""""""""""""" " +-------+ " +--------+ +--------+ " +-------+ " " +-----+ | vPE-1 | " | S-PE-A | | S-PE-B | " | vPE-2 | +-----+ " " |VM/CE|--| |---| |---| |---| |--|VM/CE| " " +-----+ |(VRF-1)| " |(VRF-A) | |(VRF-B) | " |(VRF-2)| +-----+ " " +-------+ " +--------+ +--------+ " +-------+ " " " | | " " " Zone 1 " +--------+ +--------+ " Zone 2 " """""""""""""""""""""" | Serv-A | | Serv-B | """""""""""""""""""""" +--------+ +--------+ Fernando, et. al. Expires April 28, 2015 [Page 9] INTERNET DRAFT Virtual Service Topology October 25, 2014 The different forwarding paths can be achieved at any PE as follows. o Each service node is associated with two VRFs at the service PE to which it is attached: an in-VRF for traffic toward the service node, and an out-VRF for traffic from the service node. o Traffic for the in-VRF arrives from the previous node in the service chain, and traffic for the out-VRF is destined toward the next node in the service chain, or toward the destination zone. o The in-VRF has one or more routes with a next-hop of a local access interface where the service node is attached. The out-VRF has routes with a next-hop of the next service node, which may be situated locally on the service-PE or at a remote PE. The installation of the forwarding entries to implement the flow described above may be achieved either via IP VPN mechanisms described in Sections 4 and 5, or using an SDN approach, as described in Section 6. It should be noted that the steps and constructs are logical, and may be implemented differently at each PE. Some options are specified in this document where pertinent. 4. Inter-Zone Model The inter-zone model to realize the forwarding operational flow described in the previous section can be categorized into the following steps. 4.1 Constructing the Virtual Service Topology The virtual service topology described in the previous section is constructed via one or more service-topology routes that direct the traffic flow among the PEs and service nodes forming the service chain. There should be a route to reach each service node. The service topology, and hence the service routes, are constructed on a per-VPN basis. This service topology setup is typically independent of the routes for the actual destinations or flows that map to the service topology. There can be multiple service topologies for a given VPN. 4.1.1 Reachability to the Service Nodes Each service node is identified by an IP address that is scoped within the VPN. Specifically, there is an IP address for each interface on the node that is part of a service chain. The service node is also associated with an in-VRF and out-VRF table at the Fernando, et. al. Expires April 28, 2015 [Page 10] INTERNET DRAFT Virtual Service Topology October 25, 2014 attached service PE. Reachability to the various service nodes in the service chain is achieved via regular BGP/IP VPN route advertisements. A service-PE will export a route to reach each service node interface attached to it. The service node interface may be a physical or logical interface. Each route will contain the Route-Target configured for the VPN, and a forwarding label that enables the service-PE to directly forward incoming traffic from the other PEs to the service node. The routes to reach the various service nodes are imported into and installed in each service out-VRF at a service-PE, as well as in the ingress zone VRF on an ingress zone PE. The in-VRF and out-VRF are conceptual entities and may be realized in different ways, as described further in this document. For instance, the forwarding label described above serves the purpose of the in-VRF in directing traffic from other PEs to an attached service node. Similarly, a per-interface policy-based-routing rule applied to an access interface serves to direct traffic coming in from attached service nodes. 4.1.2 Provisioning the Service Chain At each PE supporting a given VPN, the sequence of service nodes in a service chain can be specified as a VPN service route-policy. To create the service chain and give it a unique identity, each PE may be provisioned with a route-policy that contains the following tuple for every service chain that it belongs to: {Service-topology-name, Service-topology-RT, Service-node- Sequence} where Service-node-Sequence is simply an ordered list of the service node IP addresses that are in the chain. Every service chain has a single unique service-topology-RT that is provisioned on all participating PEs. Each participating PE will also be provisioned with the tables, interfaces and other VPN configuration for the various zone and service VRFs needed on the PE based on attached nodes. At an egress zone PE, the corresponding zone-VRF will have a route- policy that attaches the appropriate Service-topology-RTs to routes Fernando, et. al. Expires April 28, 2015 [Page 11] INTERNET DRAFT Virtual Service Topology October 25, 2014 exported from the VRF. The ingress zone and service VRFs will have the relevant Service-topology-RTs as import RTs. The service route-policy that lists the service chain tuple described above may be specified using various mechanisms. Using a YANG-defined data model is one suitable option. 4.1.3 Service-topology Next-Hop Resolution Routes representing hosts, VMs or other destinations associated with a zone are termed as zone prefixes. A zone prefix will have its regular zone-RTs attached when it is originated. This will be used by PEs that have VRFs for the same zone to import these prefixes to enable direct communication between end-points in the same zone. In addition to the intra-zone RTs, zone prefixes may also be tagged at the point of origination or an intermediate point, with the set of Service-topology-RTs corresponding to the service chains that have been set up towards this zone. Since they are tagged with the Service-topology-RT, zone prefixes can get imported into the VRFs of the PEs that form part of the service chain associated to that Service-topology-RT. These routes may be installed in the out-VRF at the service-PEs as well as in the ingress zone's VRF. However, the procedures described below introduce a change in the actions related to next-hop resolution and route installation in the service and ingress zone VRFs. These actions change the behavior of a PE compared to normal BGP VPN behavior, but does not mandate protocol changes to BGP. This modification to PE behavior allows the automatic and constrained flow of traffic via the service chain. The PE, based on the presence of a Service-topology-RT in the zone routes it receives, will perform the following actions: 1. It will ignore the next-hop and VPN label that were advertised in the NLRI. 2. Instead, it will select as next-hop the appropriate service node from the Service-node sequence provisioned for the Service- topology-RT. Specifically, in the out-VRF associated with each attached service node, it will select the next service node in the sequence. 3. It will further resolve this service next-hop IP address locally in the associated VRF, instead of in the global routing table. The VRF routing table contains routes to reach the service node's IP Fernando, et. al. Expires April 28, 2015 [Page 12] INTERNET DRAFT Virtual Service Topology October 25, 2014 address, installed as per Sec.4.1.1. The PE will use the next-hop (and label, if remote) associated with this IP address to encapsulate traffic toward the next service node. 4. If the importing service-PE is the last service-PE as per the service chain tuple, it will use the VPN next hop that was advertised with the zone prefix, for route resolution and installation. It will also use the VPN label that came with the prefix. In this way, the zone prefixes in the intermediate service-PE hops recurse over the nodes in the service chain forcing the traffic destined to them to flow through the virtual service topology. A significant benefit of this next-hop indirection is to avoid redundant advertisements of zone prefixes from the egress zones and service VRFs. Also, when the virtual service topology is changed (due to addition or removal of service nodes), there should be no change to the zone prefix's import/export RT configuration, and hence no re- advertisement of zone prefixes. 4.1.4 Zone Prefix Route Aggregation If the prefixes or addresses in a zone are aggregatable, instead of the individual zone host or prefix routes being imported and used at all hops along the chain, they may be aggregated at a specific hub PE and the aggregate zone prefix used along the service chain between zones. In such a case, the aggregate zone prefix will carry a service-topology-RT and get imported in the ingress zone and service VRFs. In the simplest case, a default route may be used to carry a service- topology-RT and get imported into the various service VRFs, thereby setting up forwarding along the service topology. In this case, however, the actual zone prefixes will be attached with a separate service-topology-RT that is used only on the ingress zone-PE and the last service-PE to import the zone prefixes into the respective VRFs. 4.1.5 Fine-grained traffic steering In addition to a destination address or prefix, the steering of traffic into a service chain may also be based on attributes of the packet flow, such as source address or protocol and port types. [FLOWSPEC] is one option that can be used to direct specific VPN traffic into a specific service topology. In this case, it is a flow-spec route that is advertised with the appropriate Service-topology-RT attached, so that the importing PEs Fernando, et. al. Expires April 28, 2015 [Page 13] INTERNET DRAFT Virtual Service Topology October 25, 2014 resolve it using the service chain tuple as described above and install the flow-spec route with the appropriate next-hop. Using the scheme described in section 4.1.4, the flow-spec route may be installed only in the ingress zone-PE VRF using a distinct Service-topology-RT. 4.1.5 Multiple service topologies There should be one service topology RT per virtual service topology. There can be multiple virtual service topologies and hence service topology RTs in a given VPN. Virtual service topologies are constructed unidirectionally. Traffic in opposite directions between the same pair of zones will be supported by two different service topologies and hence two service topology routes. These two service topologies might or might not be symmetrical, i.e. they might or might not traverse the same sequence. As noted above, a service node route is advertised with a label that directs incoming traffic to the attached service node. Alternatively, an aggregate label may be used for the service route and an IP route lookup done in an in-VRF at the service-PE to send traffic to the service node. Note that a new service node could be inserted into the service chain seamlessly by just configuring the service policy appropriately. 4.2 Per-VM Service Chains While the service-topology-RT allows an efficient inheritance of the service chain for all VMs or prefixes in a zone, there may be a need to create a distinct service chain for an individual VM or prefix. This may be done by provisioning a separate service-topology RT and service node sequence. The VM route carries the service-topology RT, and the destination and service PEs are provisioned with this RT as described above. 5. Routing Considerations 5.1 Multiple Service Topologies A service-PE can support multiple distinct service topologies for a VPN. 5.2 Service scaling One could use all tools available in BGP to constrain the propagation Fernando, et. al. Expires April 28, 2015 [Page 14] INTERNET DRAFT Virtual Service Topology October 25, 2014 and resolution of state created by the service topology [RFC4684]. Additional service nodes can be introduced to scale out a particular service. Each such service would be represented by a virtual IP address, and multiple service nodes associated with it. Multiple service-PEs may advertise a route to this address based on the presence of an attached service node instance, thereby creating multiple equal cost paths. This technique could be used to elastically scale out the service nodes with traffic demand. 5.3 Supporting Service Redundancy For stateful services an active-standby mechanism could be used at the service level. In this case, the inter-zone traffic should prefer the active service node over the standby service node. At a routing level, this is achieved by setting up two paths for the same service route: one path goes through the active service node and the other through the standby service node. The active service path can then be made to win over the standby service path by appropriately setting the BGP path attributes of the service topology route such that the active path succeeds in path selection. This forces all inter-zone traffic through the active service node. 6. Orchestration Driven Approach In an orchestration driven approach, there is no need for the zone or service PEs to determine the appropriate next-hops based on the specified service node sequence. All the necessary policy computations are carried out, and the forwarding tables for the various VRFs at the PEs determined, by a central orchestrator or controller. The orchestrator communicates with the various PEs (typically virtual PEs on the end-servers) to populate the forwarding tables. The protocol used to communicate between the controller/orchestration and the PE/vPE must be a standard, programmatic interface. There are several possible options to this programmatic interface, some being under discussion in the IETF's Interface to Routing Systems (I2RS) initiative, [I-D.ietf-i2rs-architecture], [I-D.ietf-i2rs-problem- statement]. One specific option is defined in [IPSE]. 7. Security Considerations To be added. 8. Management Considerations Fernando, et. al. Expires April 28, 2015 [Page 15] INTERNET DRAFT Virtual Service Topology October 25, 2014 To be added. 9. IANA Considerations This proposal does not have any IANA implications. Fernando, et. al. Expires April 28, 2015 [Page 16] INTERNET DRAFT Virtual Service Topology October 25, 2014 10. Acknowledgements The authors would like to thank the following individuals for their review and feedback on the proposal: Eric Rosen, Jim Guichard, Paul Quinn, Peter Bosch, David Ward, Ashok Ganesan and Thomas Morin. The option of configuring an ordered sequence of service nodes via policy is derived from a suggestion from Eric Rosen. 11. References 11.1 Normative References [RFC4364] Rosen, E. and Y. Rekhter, "BGP/MPLS IP Virtual Private Networks (VPNs)", RFC 4364, February 2006. 11.2 Informative References [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, January 2006. [RFC4684] Marques, P., Bonica, R., Fang, L., Martini, L., Raszuk, R., Patel, K., and J. Guichard, "Constrained Route Distribution for Border Gateway Protocol/MultiProtocol Label Switching (BGP/MPLS) Internet Protocol (IP) Virtual Private Networks (VPNs)", RFC 4684, November 2006. [RFC7024] Jeng, H., Uttaro, J., Jalil, L., Decraene, B., Rekhter, Y., and R. Aggarwal, "Virtual Hub-and-Spoke in BGP/MPLS VPNs", RFC 7024, October 2013. [I-D.fang-l3vpn-virtual-ce] L. Fang, et al.,"BGP/MPLS IP VPN Virtual CE", draft-fang-l3vpn-virtual-ce, work in progress. [I-D.fang-l3vpn-virtual-pe] L. Fang, et al., "BGP/MPLS IP VPN Virtual PE", draft-fang-l3vpn-virtual-pe, work in progress. [I-D.ietf-i2rs-architecture] Atlas, A., Halpern, J., Hares, S., Ward, D., and T Nadeau, "An Architecture for the Interface to the Routing System", draft-ietf-i2rs-architecture, work in progress. [I-D.ietf-i2rs-problem-statement] Atlas, A., Nadeau, T., and D. Ward, "Interface to the Routing System Problem Statement", draft-ietf-i2rs-problem-statement, work in progress. Fernando, et. al. Expires April 28, 2015 [Page 17] INTERNET DRAFT Virtual Service Topology October 25, 2014 [IPSE] Fernando, R., Boutros, S., Rao, D., "Interface to a Packet Switching Element", draft-rfernando-ipse-00, work in progress. Fernando, et. al. Expires April 28, 2015 [Page 18] INTERNET DRAFT Virtual Service Topology October 25, 2014 Authors' Addresses Dhananjaya Rao Cisco 170 W Tasman Dr San Jose, CA Email: dhrao@cisco.com Rex Fernando Cisco 170 W Tasman Dr San Jose, CA Email: rex@cisco.com Luyuan Fang Microsoft 5600 148th Ave NE Redmond, WA 98052 Email: lufang@microsoft.com Maria Napierala AT&T 200 Laurel Avenue Middletown, NJ 07748 Email: mnapierala@att.com Ning So Vinci Systems, Inc. Email: ningso@yahoo.com Adrian Farrel Juniper Networks Email: adrian@olddog.co.uk Fernando, et. al. Expires April 28, 2015 [Page 19]