NFV Service Dynamicity with a DevOps Approach: Demonstrating Zero-Touch Deployment & Operations Steven Van Rossem∗ , Xuejun Cai† , Ivano Cerrato‡ , Per Danielsson§ , Felici´an N´emeth¶ , Bertrand Pechenotk , Istv´an Pelle¶ , Fulvio Risso‡ , Sachin Sharma∗ , Pontus Sk¨oldstr¨omk and Wolfgang John† Contact email: [email protected]

Abstract—Next generation network services will be realized by NFV-based microservices to enable greater dynamics in deployment and operations. Here, we present a demonstrator that realizes this concept using the NFV platform built in the EU FP7 project UNIFY. Using the example of an Elastic Router service, we show automated deployment and configuration of service components as well as corresponding monitoring components facilitating automated scaling of the entire service. We also demonstrate automatic execution of troubleshooting and debugging actions. Operations of the service are inspired by DevOps principles, enabling quick detection of operational conditions and fast corrective actions. This demo conveys essential insights on how the life-cycle of an NFV-based network service may be realized in future NFV platforms.

I. I NTRODUCTION New network services demand higher levels of automation and optimized resource usage [1]. Our demo supports NFV service dynamicity by offering fully automated scaling and troubleshooting procedures. Flexible deployment and operations are enabled by the architecture of the UNIFY1 orchestration platform combined with an adaptive monitoring framework and a flexible yet performant Infrastructure Node. The demo scenario showcases a situation where the Data Plane resources of a single router are not enough to handle the increased traffic load that it is facing. We demonstrate the autonomous scaling of the routing service and later introduce a bug that the framework detects and debugs on its own. During the demo, we highlight different events through deployment, assurance, and troubleshooting phases, all supported by the modular approach of our proof of concept implementation. Implementation details and discussion on relevant lessonslearned can be found in a related IM’17 experience paper [2], while all technical background information regarding the UNIFY NFV platform are available in [3] and [4]. II. T HE D EMO S ETUP The demo setup (Fig. 1) was realized on three nodes running on separate servers: 1) The Global Orchestrator Node keeps track of the available infrastructure and accepts a high-level Service Graph (SG) which describes the service as a monolithic ∗ Ghent University – imec. † Ericsson Research, Cloud Technologies, Sweden. ‡ Politecnico di Torino, Dept. of Control and Computer Engineering. § SICS Swedish ICT AB. ¶ Budapest University of Technology and Economics. k Acreo Swedish ICT AB. 1 https://www.fp7-unify.eu/

Fig. 1. The demo setup is based on the UNIFY NFV platform including monitoring and troubleshooting tools, implementing a service-specific scaling mechanism of an Elastic Router. Numbers – 1 5 show the troubleshooting sequence.

router with four ports. A decomposed Network-FunctionForwarding-Graph (NF-FG) is derived from this SG, consisting of a set of service components to be deployed (right side of Fig. 1). This translation results in a Control Plane compoent—the Ctrl App on Fig. 1, implemented by a Ryu OpenFlow controller—and a single Data Plane component—the ovs, implemented by Open vSwitch. The NF-FG links these two components, deployable as Docker containers. It is then further mapped by the Orchestrator to the available infrastructure. 2) The Universal Node (UN) is a common hardware compute node that runs a local orchestrator software as well as a monitoring controller (MMP). It supports the deployment of different VNF types, specified in the NF-FG it receives. It is also capable of starting and configuring a set of monitoring components [5], as specified in a special NF-FG annotation (MEASURE) expressing monitoring intents for the service components. To sustain communication between the different components, a secure message bus (DoubleDecker) distributes control and monitoring information including scaling or troubleshooting triggers. 3) After deployment, the Troubleshooting Node which is also connected to the message bus, listens for notifications from the monitoring framework in the Infrastructure Node. Once an anomaly in the deployed service is detected, EPOXIDE, our specialized troubleshooting framework, automatically executes a user-defined troubleshooting process.

A

2.5

CPU load

B

C

D

E

F

Ctrl OVS1 OVS2 OVS3 OVS4 OVS5

3 2 1.5 1 0.5

Overload risk

100

aggr. sap1 sap2 sap3 sap4

80 60 40 20 0

0

1

2

3

4

5

6

7

8

9

10

time [min]

Fig. 2. The monitored service data which leads to automated scaling and troubleshooting triggers. Main events are indicated with labels A to F.

During the demo2 , the deployment and scaling of the Elastic Router can be followed on a web-GUI exposed by the Ctrl App and the UN. The monitored data is shown in real-time on a Grafana dashboard and the Troubleshooting Node offers live output and interactive input via an Emacs-based interface. III. T HE E LASTIC ROUTER L IFE - CYCLE E VENTS Fig. 2 depicts parts of the gathered monitoring data during the demonstration run of the Elastic Router service. To detect undesired conditions, the framework uses two metrics: the CPU load (gathered by cAdvisor), and the overload risks of the Data Plane components. The latter is a statistical estimation by RAMON, giving the risk of the byte-rate reaching an upper limit (e.g., the line-rate) [5]. In the following, we walk through the main life-cycle events of the service. These events are highlighted during the demo, and are tagged in Fig. 2. A—Deployment: The SG is passed to the Global Orchestrator which maps it to the UN’s available resources and sends it the initial NF-FG for further deployment. The UN starts the two service components—the Ctrl App and one ovs Docker container—and sets up the necessary network links as described in the NF-FG. Additionally, the information in the MEASURE annotation of the NF-FG triggers the startup and configuration of the monitoring components. These, in turn, start to gather metrics related to the resource usage of the deployed service—i.e. CPU load and bandwidth utilization. B—Traffic Flow Start: After the service is fully deployed, a traffic generator is started and traffic is sent to the four ports of the elastic router. Initially, one Data Plane component (ovs) is enough to forward the traffic between the four ports. C—Scale Out Start: The traffic generator gradually increases the packet rate on the four ports until a threshold for aggregated overload risk is reached. This is detected by the monitoring framework and a ‘scale out’ message is sent to the Ctrl App. This event triggers the Ctrl App to generate a new NF-FG, instructing the Orchestrator to deploy extra Data Plane components (ovs2–5 in Fig. 1) to handle the increased load. While scale-out is executed, monitoring is put on hold, as shown by the gap in the curves of Fig. 2 between C and D. 2A

screencast of the demo scenario is at: https://youtu.be/jSxyKBZkVes

During this interval, the scale out procedure can be monitored on the web-GUI of the Ctrl App. D—Scale Out End: The new, scaled NF-FG also includes a new MEASURE annotation. Thus, when scale-out is finished, the monitoring framework resumes gathering data on the freshly deployed Data Plane components, which start forwarding traffic between the ports as depicted on the data graph: four streams are now being generated, one for each ovs. E—Troubleshooting: Shortly before time E we introduce a bug to a flow table in one of the ovs instances, causing the balanced traffic load to get disturbed. Monitoring components (marked with 1 in Fig. 1) detect this anomaly at time E through the high variance between loads on the Data Planes. This initiates an automatic troubleshooting process by sending a trigger to the Troubleshooting Node (see ). 2 To debug this decomposed service, the EPOXIDE troubleshooting framework relies on special purpose debugging tools to locate the error. A Recursive Query Engine 3 is used to check the persistence of the error condition. It confirms the need for debugging, hence the AutoTPG 4 flow table verification tool is applied on each of the ovs instances. In order to properly setup and apply each tool, the troubleshooting framework automatically retrieves relevant information (e.g., IP and port numbers) from different components in the UNIFY architecture. Once the faulty entry in the misconfigured ovs instance is located, it is reported to the troubleshooting operator. 5 marks the only event when the operator has to interact with the troubleshooting framework to remedy the error condition. F—Bug Fix: The operator manually corrects the bug, consequently the traffic loads on the different ovs components converge again. To sum up, this demo showcases automated deployment of an NFV service with dynamic and autonomous service scaling combined with programmable, zero-touch monitoring and troubleshooting. Thus, the NFV platform successfully adopts the principles of a DevOps approach where real time service observability and swift debugging are key features. ACKNOWLEDGMENT This work is supported by UNIFY, a research project partially funded by the European Community under the 7th Framework Program (grant agreement no. 619609). The views expressed here are those of the authors only.

R EFERENCES [1] H. Hawilo, A. Shami, M. Mirahmadi, and R. Asal, “NFV: state of the art, challenges, and implementation in next generation mobile networks (vEPC),” IEEE Network, vol. 28, no. 6, pp. 18–26, Nov. 2014. [2] S. Van Rossem et al., “NFV Service Dynamicity with a DevOps Approach: Insights from a Use-case Realization,” in IFIP/IEEE International Symposium on Integrated Network Management, Experience Session. IEEE, 2017. [3] “Deliverable 3.5: Programmability framework prototype report,” UNIFY Project, Tech. Rep. D3.5, Jun. 2016. [Online]. Available: https: //www.fp7-unify.eu/files/fp7-unify-eu-docs/Results/Deliverables [4] G. Marchetto, R. Sisto, W. John et al., “Final Service Provider DevOps concept and evaluation,” ArXiv e-prints, vol. 1610.02387, 2016. [Online]. Available: http://arxiv.org/abs/1610.02387 [5] W. John, C. Meirosu, B. Pechenot et al., “Scalable Software Defined Monitoring for Service Provider DevOps,” in European Workshop on Software Defined Networks. IEEE, 2015, pp. 61–66.

NFV Service Dynamicity with a DevOps Approach - Fulvio Risso

Plane compoent—the Ctrl App on Fig. 1, implemented by a Ryu OpenFlow controller—and a single Data Plane component—the ovs, implemented by Open ...

208KB Sizes 4 Downloads 205 Views

Recommend Documents

NFV Service Dynamicity with a DevOps Approach - Fulvio Risso
I. INTRODUCTION. New network services demand higher levels of automation and optimized resource usage [1]. Our demo supports NFV service dynamicity by ...

NFV Service Dynamicity with a DevOps Approach
UNIFY to deploy a dynamic network service exemplified by an elastic router. ... 1. Compared with ETSI. MANO (left side of Fig. 1), the VNF Manager (VNFM) and.

Per-User NFV Services with Mobility Support - Fulvio Risso
Network Automation. TIM. Torino ... Particularly, in our proposal, a service platform dynamically ... the VPNPP service platform to authenticate users and to keep.

Per-User NFV Services with Mobility Support - Fulvio Risso
user services that are automatically reconfigured when the use mobile terminal (MT) moves from one network site to another. At the service bootstrap, the ...

User-specific Network Service Functions in an SDN ... - Fulvio Risso
Abstract—Network Functions Virtualization can enable each user (tenant) to define his desired set of network services, called (network) service graph. For instance, a User1 may want his traffic to traverse a firewall before reaching his terminal, w

End-to-End Service Orchestration across SDN and ... - Fulvio Risso
can actually host many applications (e.g., firewall, NAT) that ... the best domain(s) that have to be involved in the service .... Source code is available at [10].

End-to-End Service Orchestration across SDN and ... - Fulvio Risso
End-to-end service deployment of Network Functions Vir- ... 1. Service graph deployment in a multi-domain environment. the proper network parameters, thus ...

User-specific Network Service Functions in an SDN ... - Fulvio Risso
User-specific Network Service Functions in an SDN-enabled Network Node. Ivano Cerrato, Alex ... full network and service virtualization to enable rich and.

A Unifying Orchestration Operating Platform for 5G - Fulvio Risso
services, allocated and executed in network slices, will require orchestration ca- pabilities, a ... 5G-OP does not intend to develop one more control-orchestration.

Partial Offloading of OpenFlow Rules on a Traditional ... - Fulvio Risso
level view depicted in Figure 2. When a packet arrives at ..... CPU load. RAM (MB). CPU load. RAM (MB). 64. 3.61 / 4. 540. 0.21 / 4. 360. 128. 3.52 / 4. 532. 0.13 / ...

Capability-based Orchestration on Multi-domain Networks - Fulvio Risso
V. IMPLEMENTATION DETAILS. We implemented the capability-based orchestration logic in the open source FROG orchestrator2. Each domain orchestra-.

Capability-based Orchestration on Multi-domain Networks - Fulvio Risso
Internet. Fig. 1. Service chain deployed across a multi-domain operator network. domain controller (e.g., OpenStack in data centers, ONOS or. OpenDaylight in .... leaf iso/osi level { type uint8 { range “1 .. 7” } ... } leaf dmz { type Boolean; .

Filtering Network Traffic Based on Protocol ... - Fulvio Risso
Let's put the two together and create a new automaton that models our filter tcp in ip* in ipv6 in ethernet startproto ethernet ip ipv6 tcp http udp dns. Q0. Q3. Q1.

Risso&Risso-Epapterus chaquensis nsp.pdf
Sign in. Page. 1. /. 7. Loading… Page 1 of 7. Page 1 of 7. Page 2 of 7. Page 2 of 7. Page 3 of 7. Page 3 of 7. Risso&Risso-Epapterus chaquensis nsp.pdf. Risso&Risso-Epapterus chaquensis nsp.pdf. Open. Extract. Open with. Sign In. Main menu. Display