1 Introduction
1.1 Background
1.1.1 Management and orchestration for NFV
1.1.2 Smoke testing
1.2 Related work
2 Methods
2.1 Emulation-based smoke testing
2.2 Prototype
2.2.1 Multi-PoP emulation platform
openstack compute start
, into requests that are executed by the emulation platform, e.g., start a Docker-based VNF in one of the emulated PoPs. We opted to mimic the OpenStack APIs because OpenStack is currently the de-facto standard VIM and supported by most MANO systems. However, all these API endpoints are designed as small, pluggable components and can easily be replaced by endpoints that mimic the APIs of other VIM solutions.2.2.2 Standard-compliant MANO test suite
unittest
library, implements the abstract test logic according to the written interface specifications of ETSI SOL005. Those tests then call the bottom layer of our test suite which contains pluggable connection adapters, abstracting MANO-specific connection details that are not part of the interface specification, e.g., authentication mechanisms. Our prototype comes with an example MANO adapter that supports OSM rel. FOUR and uses OSM’s client libraries to access OSM’s northbound interface.ETSI | OSM | TS | Runtime | |
---|---|---|---|---|
Resource: VIMs | ||||
Create | • | • | 1.31 s ± 0.31 s | |
List | • | • | 2.58 s ± 0.54 s | |
Resource: Single VIM | ||||
Show | • | • | 1.26 s ± 0.37 s | |
Update | • | |||
Delete | • | • | 1.16 s ± 0.33 s | |
Resource: NSDs | ||||
Create | • | • | • | 0.52 s ± 0.07 s |
List | • | • | • | 0.55 s ± 0.04 s |
Resource: Single NSD | ||||
Show | • | • | • | 0.54 s ± 0.09 s |
Update | • | • | ||
Delete | • | • | • | 0.53 s ± 0.11 s |
Resource: VNFD | ||||
Create | • | • | • | 0.24 s ± 0.06 s |
List | • | • | • | 0.40 s ± 0.07 s |
Resource: Single VNFD | ||||
Show | • | • | • | 0.24 s ± 0.06 s |
Update | • | • | ||
Delete | • | • | • | 0.23 s ± 0.06 s |
Resource: NS | ||||
Create | • | • | • | 9.35 s ± 0.51 s |
List | • | • | • | 9.56 s ± 0.43 s |
Resource: Single NS | ||||
Show | • | • | • | 9.44 s ± 0.44 s |
Update | • | |||
Scale | • | • | ||
Create Alarm | • | |||
Export Metric | • | |||
Heal | • | |||
Terminate | • | • | • | 9.44 s ± 0.43 s |
Resource: VNF | ||||
List | • | • | 9.81 s ± 0.48 s | |
Resource: Single VNF | ||||
Show | • | • | 9.67 s ± 0.42 s |
2.2.3 CI pipeline integration
3 Results
3.1 Emulation platform scalability
ovs-vswitchd
), which runs always on a single CPU core, to become the bottleneck in large deployments as it has to manage one vSwitch instance per PoP.ubuntu:trusty
images and do not run any additional software, since we are only interested in the bare instantiation times. Figure 6 shows that the instantiation times scale proportionally with the number of VNFs and that the instantiation process takes longer in larger topologies and is also influenced by the number of links in a topology. Please note that most error bars are hidden behind the markers of the plots because of the small deviation observed between the experiments. It can be seen that with our platform, hundreds of VNFs can be quickly deployed on a single machine, enabling fast tests of large deployment scenarios.
3.2 Case study: OSM rel. THREE vs. OSM rel. FOUR
3.2.1 OSM in large multi-PoP environments
osm vim-create < vim-endpoint>
command. Figure 7 shows the total setup time breakdown to start the emulated infrastructure and to attach all emulated VIMs to OSM. The numbers behind the topologies indicate the number of nodes and links in the topology. The results show that the time required to attach the VIMs to OSM uses most of the test environment’s setup time, but the system can still be deployed and configured in between 200 and 330 s, even if the largest topology with more than 150 PoPs is used. The figure also shows the request times for all osm vim-create
requests. It indicates that the attachment procedure becomes slightly slower when larger topologies are used. Comparing the results between the two OSM releases, OSM rel. FOUR shows improved setup times and reduced request times to attach the VIMs. It can also be seen that the setup times of the emulation platform are smaller in the OSM rel. FOUR case. The reason of this is the significantly smaller resource footprint of OSM rel. FOUR which is executed on the same physical machine as the emulation platform.
3.2.2 OSM service instantiation and termination
osm ns-create
), network service termination (osm ns-delete
), and network service show (osm ns-show
) operations. To do so, we used a test network service consisting of two linked VNFs. We requested OSM to sequentially create 64 instances of this service, which corresponds to 128 deployed VNFs. Later, these services are terminated one after each other. In each instantiation request, the service was randomly placed on the available PoPs of the three used topologies (Fig. 8). The given instantiation and termination times represent the time until the requested containers (the VNFs of the service) are started or stopped, not only the raw API response times.
osm ns-show
requests are much faster than the other operations, since nothing in the actual service deployment is changed during a request.3.2.3 ETSI-compliant test suite
4 Discussion
osm vim-show < pop x>
command, the entire VIM list is fetched by the OSM client, instead of only fetching the information of the requested PoP. This increases request delays when OSM is used with many attached PoPs.