Merge "Allow testcases to be configured over cli"
[yardstick.git] / docs / testing / user / userguide / nsb / tc_prox_context_bng_qos_port.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International
2 .. License.
3 .. http://creativecommons.org/licenses/by/4.0
4 .. (c) OPNFV, 2017 Intel Corporation.
5
6 *************************************************
7 Yardstick Test Case Description: NSB PROX BNG_QoS
8 *************************************************
9
10 +-----------------------------------------------------------------------------+
11 |NSB PROX test for NFVI characterization                                      |
12 |                                                                             |
13 +--------------+--------------------------------------------------------------+
14 |test case id  | tc_prox_{context}_bng_qos-{port_num}                         |
15 |              |                                                              |
16 |              | * context = baremetal or heat_context;                       |
17 |              | * port_num = 4;                                              |
18 |              |                                                              |
19 +--------------+--------------------------------------------------------------+
20 |metric        | * Network Throughput;                                        |
21 |              | * TG Packets Out;                                            |
22 |              | * TG Packets In;                                             |
23 |              | * VNF Packets Out;                                           |
24 |              | * VNF Packets In;                                            |
25 |              | * Dropped packets;                                           |
26 |              |                                                              |
27 +--------------+--------------------------------------------------------------+
28 |test purpose  | The BNG+QoS workload converts packets from QinQ to GRE       |
29 |              | tunnels, handles routing and adds/removes MPLS tags and      |
30 |              | performs a QoS.                                              |
31 |              | This use case simulates a realistic and complex application. |
32 |              | The number of users is 32K per port and the number of routes |
33 |              | is 8K.                                                       |
34 |              |                                                              |
35 |              | The BNG_QoS test cases are implemented to run in  baremetal  |
36 |              | and heat context an require 4 port topology to run the       |
37 |              | default configuration.                                       |
38 |              |                                                              |
39 +--------------+--------------------------------------------------------------+
40 |configuration | The BNG_QoS test cases are listed below:                     |
41 |              |                                                              |
42 |              | * tc_prox_baremetal_bng_qos-2.yaml                           |
43 |              | * tc_prox_baremetal_bng_qos-4.yaml                           |
44 |              | * tc_prox_heat_context_bng_qos-2.yaml                        |
45 |              | * tc_prox_heat_context_bng_qos-4.yaml                        |
46 |              |                                                              |
47 |              | Test duration is set as 300sec for each test.                |
48 |              | The minumum packet size for BNG_QoS test is 78 bytes. This   |
49 |              | is set in the bng_qos traffic profile and can be configured  |
50 |              | to use a higher packet size for the test.                    |
51 |              |                                                              |
52 +--------------+--------------------------------------------------------------+
53 |test tool     | PROX                                                         |
54 |              | PROX is a DPDK application that can simulate VNF workloads   |
55 |              | and can generate traffic and used for NFVI characterization  |
56 |              |                                                              |
57 +--------------+--------------------------------------------------------------+
58 |applicability | This PROX BNG_QoS test cases can be configured with          |
59 |              | different:                                                   |
60 |              |                                                              |
61 |              |  * packet sizes;                                             |
62 |              |  * test durations;                                           |
63 |              |  * tolerated loss;                                           |
64 |              |                                                              |
65 |              | Default values exist.                                        |
66 |              |                                                              |
67 +--------------+--------------------------------------------------------------+
68 |pre-test      | For Openstack test case image (yardstick-samplevnfs) needs   |
69 |conditions    | to be installed into Glance with Prox and Dpdk included in   |
70 |              | it. The test need multi-queue enabled in Glance image.       |
71 |              |                                                              |
72 |              | For Baremetal tests cases Prox and Dpdk must be installed in |
73 |              | the hosts where the test is executed. The pod.yaml file must |
74 |              | have the necessary system and NIC information                |
75 |              |                                                              |
76 +--------------+--------------------------------------------------------------+
77 |test sequence | description and expected result                              |
78 |              |                                                              |
79 +--------------+--------------------------------------------------------------+
80 |step 1        | For Baremetal test: The TG and VNF are started on the hosts  |
81 |              | based on the pod file.                                       |
82 |              |                                                              |
83 |              | For Heat test: Two host VMs are booted, as Traffic generator |
84 |              | and VNF(BNG_QoS workload) based on the test flavor.          |
85 |              |                                                              |
86 +--------------+--------------------------------------------------------------+
87 |step 2        | Yardstick is connected with the TG and VNF by using ssh.     |
88 |              | The test will resolve the topology and instantiate the VNF   |
89 |              | and TG and collect the KPI's/metrics.                        |
90 |              |                                                              |
91 +--------------+--------------------------------------------------------------+
92 |step 3        | The TG will send packets to the VNF. If the number of        |
93 |              | dropped packets is more than the tolerated loss the line     |
94 |              | rate or throughput is halved. This is done until the dropped |
95 |              | packets are within an acceptable tolerated loss.             |
96 |              |                                                              |
97 |              | The KPI is the number of packets per second for 78 bytes     |
98 |              | packet size with an accepted minimal packet loss for the     |
99 |              | default configuration.                                       |
100 |              |                                                              |
101 +--------------+--------------------------------------------------------------+
102 |step 4        | In Baremetal test: The test quits the application and unbind |
103 |              | the dpdk ports.                                              |
104 |              |                                                              |
105 |              | In Heat test: Two host VMs are deleted on test completion.   |
106 |              |                                                              |
107 +--------------+--------------------------------------------------------------+
108 |test verdict  | The test case will achieve a Throughput with an accepted     |
109 |              | minimal tolerated packet loss.                               |
110 +--------------+--------------------------------------------------------------+
111