aboutsummaryrefslogtreecommitdiffstats
path: root/docs/userguide/opnfv_yardstick_tc021.rst
blob: c7adc870a9758ea7a909153da47e452ef0528058 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
.. This work is licensed under a Creative Commons Attribution 4.0 International
.. License.
.. http://creativecommons.org/licenses/by/4.0
.. (c) OPNFV, Intel Corporation and others.

*************************************
Yardstick Test Case Description TC021
*************************************

.. _DPDKpktgen: https://github.com/Pktgen/Pktgen-DPDK/
.. _rfc2544: https://www.ietf.org/rfc/rfc2544.txt

+-----------------------------------------------------------------------------+
|Network Performance                                                          |
|                                                                             |
+--------------+--------------------------------------------------------------+
|test case id  | OPNFV_YARDSTICK_TC0021_Virtual Traffic Classifier            |
|              | Instantiation Test in Presence of Noisy Neighbours           |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|metric        | Failure                                                      |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|test purpose  | To verify that a newly instantiated vTC is 'alive' and       |
|              | functional and its instantiation is correctly supported by   |
|              | the infrastructure in the presence of noisy neighbours.      |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|configuration | file: opnfv_yardstick_tc021.yaml                             |
|              |                                                              |
|              | vnic_type: type of VNIC to be used.                          |
|              |      Allowed values are:                                     |
|              |           - normal: for default OvS port configuration       |
|              |           - direct: for SR-IOV port configuration            |
|              |      Default value: None                                     |
|              |                                                              |
|              | vtc_flavor: OpenStack flavor to be used for the vTC          |
|              |      Default available values are: m1.small, m1.medium,      |
|              |      and m1.large, but the user can create his/her own       |
|              |      flavor and give it as input                             |
|              |      Default value: None                                     |
|              |                                                              |
|              | num_of_neighbours: Number of noisy neighbours (VMs) to be    |
|              |     instantiated during the experiment.                      |
|              |     Allowed values: range (1, 10)                            |
|              |                                                              |
|              | amount_of_ram: RAM to be used by each neighbor.              |
|              |     Allowed values: ['250M', '1G', '2G', '3G', '4G', '5G',   |
|              |                      '6G', '7G', '8G', '9G', '10G']          |
|              |     Deault value: 256M                                       |
|              |                                                              |
|              | number_of_cores: Number of noisy neighbours (VMs) to be      |
|              |     instantiated during the experiment.                      |
|              |     Allowed values: range (1, 10)                            |
|              |     Default value: 1                                         |
|              |                                                              |
|              | vlan_sender: vlan tag of the network on which the vTC will   |
|              |      receive traffic (VLAN Network 1).                       |
|              |      Allowed values: range (1, 4096)                         |
|              |                                                              |
|              | vlan_receiver: vlan tag of the network on which the vTC      |
|              |      will send traffic back to the packet generator          |
|              |      (VLAN Network 2).                                       |
|              |      Allowed values: range (1, 4096)                         |
|              |                                                              |
|              | default_net_name: neutron name of the defaul network that    |
|              |      is used for access to the internet from the vTC         |
|              |      (vNIC 1).                                               |
|              |                                                              |
|              | default_subnet_name: subnet name for vNIC1                   |
|              |      (information available through Neutron).                |
|              |                                                              |
|              | vlan_net_1_name: Neutron Name for VLAN Network 1             |
|              |      (information available through Neutron).                |
|              |                                                              |
|              | vlan_subnet_1_name: Subnet Neutron name for VLAN Network 1   |
|              |      (information available through Neutron).                |
|              |                                                              |
|              | vlan_net_2_name: Neutron Name for VLAN Network 2             |
|              |      (information available through Neutron).                |
|              |                                                              |
|              | vlan_subnet_2_name: Subnet Neutron name for VLAN Network 2   |
|              |      (information available through Neutron).                |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|test tool     | DPDK pktgen                                                  |
|              |                                                              |
|              | DPDK Pktgen is not part of a Linux distribution,             |
|              | hence it needs to be installed by the user.                  |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|references    | DPDK Pktgen: DPDK Pktgen: DPDKpktgen_                        |
|              |                                                              |
|              | ETSI-NFV-TST001                                              |
|              |                                                              |
|              | RFC 2544: rfc2544_                                           |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|applicability | Test can be configured with different flavors, vNIC type     |
|              | and packet sizes. Default values exist as specified above.   |
|              | The vNIC type and flavor MUST be specified by the user.      |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|pre-test      | The vTC has been successfully instantiated and configured.   |
|              | The user has correctly assigned the values to the deployment |
|              |  configuration parameters.                                   |
|              |                                                              |
|              | - Multicast traffic MUST be enabled on the network.          |
|              |      The Data network switches need to be configured in      |
|              |      order to manage multicast traffic.                      |
|              |      Installation and configuration of smcroute is required  |
|              |      before to run the test case.                            |
|              |      (For further instructions please refer to the ApexLake  |
|              |      documentation).                                         |
|              | - In the case of SR-IOV vNICs use, SR-IOV compatible NICs    |
|              |      must be used on the compute node.                       |
|              | - Yarsdtick needs to be installed on a host connected to the |
|              |      data network and the host must have 2 DPDK-compatible   |
|              |      NICs. Proper configuration of DPDK and DPDK pktgen is   |
|              |      required before to run the test case.                   |
|              |      (For further instructions please refer to the ApexLake  |
|              |      documentation).                                         |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|test sequence | Description and expected results                             |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|step 1        | The noisy neighbours are deployed as required by the user.   |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|step 2        | The vTC is deployed, according to the configuration provided |
|              | by the user.                                                 |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|step 3        | The vTC is correctly deployed and configured as necessary.   |
|              | The initialization script has been correctly executed and    |
|              | the vTC is ready to receive and process the traffic.         |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|step 4        | Test case is executed with the selected parameters:          |
|              | - vTC flavor                                                 |
|              | - vNIC type                                                  |
|              | A constant rate traffic is sent to the vTC for 10 seconds.   |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|step 5        | The vTC instance tags all the packets and sends them back to |
|              | the packet generator for 10 seconds.                         |
|              |                                                              |
|              | The framework checks if the packet generator receives back   |
|              | all the packets with the correct tag from the vTC.           |
|              |                                                              |
+--------------+--------------------------------------------------------------+
|test verdict  |  The vTC is deemed to be successfully instantiated if all    |
|              |  packets are sent back with the right tag as requested,      |
|              |  else it is deemed DoA (Dead on arrival)                     |
|              |                                                              |
+--------------+--------------------------------------------------------------+