Merge "Bugfix: specify pod.yaml files used for TC055 as TC055 is running directly...
[yardstick.git] / docs / userguide / opnfv_yardstick_tc006.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, Intel Corporation and others.
5
6 *************************************
7 Yardstick Test Case Description TC006
8 *************************************
9
10 .. _DPDKpktgen: https://github.com/Pktgen/Pktgen-DPDK/
11 .. _rfc2544: https://www.ietf.org/rfc/rfc2544.txt
12
13 +-----------------------------------------------------------------------------+
14 |Network Performance                                                          |
15 |                                                                             |
16 +--------------+--------------------------------------------------------------+
17 |test case id  | OPNFV_YARDSTICK_TC006_Virtual Traffic Classifier Data Plane  |
18 |              | Throughput Benchmarking Test.                                |
19 |              |                                                              |
20 +--------------+--------------------------------------------------------------+
21 |metric        | Throughput                                                   |
22 |              |                                                              |
23 +--------------+--------------------------------------------------------------+
24 |test purpose  | To measure the throughput supported by the virtual Traffic   |
25 |              | Classifier according to the RFC2544 methodology for a        |
26 |              | user-defined set of vTC deployment configurations.           |
27 |              |                                                              |
28 +--------------+--------------------------------------------------------------+
29 |configuration | file: file: opnfv_yardstick_tc006.yaml                       |
30 |              |                                                              |
31 |              | packet_size: size of the packets to be used during the       |
32 |              |      throughput calculation.                                 |
33 |              |      Allowe values: [64, 128, 256, 512, 1024, 1280, 1518]    |
34 |              |                                                              |
35 |              | vnic_type: type of VNIC to be used.                          |
36 |              |      Allowed values are:                                     |
37 |              |           - normal: for default OvS port configuration       |
38 |              |           - direct: for SR-IOV port configuration            |
39 |              |      Default value: None                                     |
40 |              |                                                              |
41 |              | vtc_flavor: OpenStack flavor to be used for the vTC          |
42 |              |      Default available values are: m1.small, m1.medium,      |
43 |              |      and m1.large, but the user can create his/her own       |
44 |              |      flavor and give it as input                             |
45 |              |      Default value: None                                     |
46 |              |                                                              |
47 |              | vlan_sender: vlan tag of the network on which the vTC will   |
48 |              |      receive traffic (VLAN Network 1).                       |
49 |              |      Allowed values: range (1, 4096)                         |
50 |              |                                                              |
51 |              | vlan_receiver: vlan tag of the network on which the vTC      |
52 |              |      will send traffic back to the packet generator          |
53 |              |      (VLAN Network 2).                                       |
54 |              |      Allowed values: range (1, 4096)                         |
55 |              |                                                              |
56 |              | default_net_name: neutron name of the defaul network that    |
57 |              |      is used for access to the internet from the vTC         |
58 |              |      (vNIC 1).                                               |
59 |              |                                                              |
60 |              | default_subnet_name: subnet name for vNIC1                   |
61 |              |      (information available through Neutron).                |
62 |              |                                                              |
63 |              | vlan_net_1_name: Neutron Name for VLAN Network 1             |
64 |              |      (information available through Neutron).                |
65 |              |                                                              |
66 |              | vlan_subnet_1_name: Subnet Neutron name for VLAN Network 1   |
67 |              |      (information available through Neutron).                |
68 |              |                                                              |
69 |              | vlan_net_2_name: Neutron Name for VLAN Network 2             |
70 |              |      (information available through Neutron).                |
71 |              |                                                              |
72 |              | vlan_subnet_2_name: Subnet Neutron name for VLAN Network 2   |
73 |              |      (information available through Neutron).                |
74 |              |                                                              |
75 +--------------+--------------------------------------------------------------+
76 |test tool     | DPDK pktgen                                                  |
77 |              |                                                              |
78 |              | DPDK Pktgen is not part of a Linux distribution,             |
79 |              | hence it needs to be installed by the user.                  |
80 |              |                                                              |
81 +--------------+--------------------------------------------------------------+
82 |references    | DPDK Pktgen: DPDKpktgen_                                     |
83 |              |                                                              |
84 |              | ETSI-NFV-TST001                                              |
85 |              |                                                              |
86 |              | RFC 2544: rfc2544_                                           |
87 |              |                                                              |
88 +--------------+--------------------------------------------------------------+
89 |applicability | Test can be configured with different flavors, vNIC type     |
90 |              | and packet sizes. Default values exist as specified above.   |
91 |              | The vNIC type and flavor MUST be specified by the user.      |
92 |              |                                                              |
93 +--------------+--------------------------------------------------------------+
94 |pre-test      | The vTC has been successfully instantiated and configured.   |
95 |              | The user has correctly assigned the values to the deployment |
96 |              |  configuration parameters.                                   |
97 |              |                                                              |
98 |              | - Multicast traffic MUST be enabled on the network.          |
99 |              |      The Data network switches need to be configured in      |
100 |              |      order to manage multicast traffic.                      |
101 |              | - In the case of SR-IOV vNICs use, SR-IOV compatible NICs    |
102 |              |      must be used on the compute node.                       |
103 |              | - Yarsdtick needs to be installed on a host connected to the |
104 |              |      data network and the host must have 2 DPDK-compatible   |
105 |              |      NICs. Proper configuration of DPDK and DPDK pktgen is   |
106 |              |      required before to run the test case.                   |
107 |              |      (For further instructions please refer to the ApexLake  |
108 |              |      documentation).                                         |
109 |              |                                                              |
110 +--------------+--------------------------------------------------------------+
111 |test sequence | Description and expected results                             |
112 |              |                                                              |
113 +--------------+--------------------------------------------------------------+
114 |step  1       | The vTC is deployed, according to the user-defined           |
115 |              | configuration                                                |
116 |              |                                                              |
117 +--------------+--------------------------------------------------------------+
118 |step  2       | The vTC is correctly deployed and configured as necessary    |
119 |              | The initialization script has been correctly executed and    |
120 |              | vTC is ready to receive and process the traffic.             |
121 |              |                                                              |
122 +--------------+--------------------------------------------------------------+
123 |step  3       | Test case is executed with the selected parameters:          |
124 |              | - vTC flavor                                                 |
125 |              | - vNIC type                                                  |
126 |              | - packet size                                                |
127 |              | The traffic is sent to the vTC using the maximum available   |
128 |              | traffic rate for 60 seconds.                                 |
129 |              |                                                              |
130 +--------------+--------------------------------------------------------------+
131 |step 4        | The vTC instance forwards all the packets back to the packet |
132 |              | generator for 60 seconds, as specified by RFC 2544.          |
133 |              |                                                              |
134 |              | Steps 3 and 4 are executed different times, with different   |
135 |              | rates in order to find the maximum supported traffic rate    |
136 |              | according to the current definition of throughput in RFC     |
137 |              | 2544.                                                        |
138 |              |                                                              |
139 +--------------+--------------------------------------------------------------+
140 |test verdict  |  The result of the test is a number between 0 and 100 which  |
141 |              |  represents the throughput in terms of percentage of the     |
142 |              |  available pktgen NIC bandwidth.                             |
143 |              |                                                              |
144 +--------------+--------------------------------------------------------------+