a4209ed7ae1a3fe53629cd28a8c597d686674e2c
[csit.git] / docs / report / vpp_functional_tests / test_environment.rst
1 Test Environment\r
2 ================\r
3 \r
4 CSIT functional tests are currently executed in FD.IO VIRL testbed. The physical\r
5 VIRL testbed infrastructure consists of three VIRL hosts:\r
6 \r
7 - All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @2.30GHz,\r
8   18c, 512GB RAM)\r
9 - tb4-virl1:\r
10 \r
11   - Status: Production\r
12   - OS: Ubuntu 16.04.2\r
13   - STD server version 0.10.32.16\r
14   - UWM server version 0.10.32.16\r
15 \r
16 - tb4-virl2:\r
17 \r
18   - Status: Production\r
19   - OS: Ubuntu 16.04.2\r
20   - STD server version 0.10.32.16\r
21   - UWM server version 0.10.32.16\r
22 \r
23 - tb4-virl3:\r
24 \r
25   - Status: Production\r
26   - OS: Ubuntu 14.04.3\r
27   - STD server version 0.10.24.7\r
28   - UWM server version 0.10.24.7\r
29 \r
30 Whenever a patch is submitted to gerrit for review, parallel VIRL simulations\r
31 are started to reduce the time of execution of all functional tests. The number\r
32 of parallel VIRL simulations is equal to number of test groups defined by\r
33 TEST_GROUPS variable in :file:`csit/bootstrap.sh` file. The VIRL host to run\r
34 VIRL simulation is selected based on least load algorithm per VIRL simulation.\r
35 \r
36 Every VIRL simulation uses the same three-node - Traffic Generator (TG node) and\r
37 two Systems Under Test (SUT1 and SUT2) - "double-ring" topology. The appropriate\r
38 pre-built VPP packages built by Jenkins for the patch under review are then\r
39 installed on the two SUTs, along with their :file:`/etc/vpp/startup.conf` file,\r
40 in all VIRL simulations.\r
41 \r
42 SUT Configuration - VIRL Guest VM\r
43 ---------------------------------\r
44 \r
45 Configurations of the SUT VMs is defined in `VIRL topologies directory`_\r
46 \r
47 - List of SUT VM interfaces:::\r
48 \r
49     <interface id="0" name="GigabitEthernet0/4/0"/>\r
50     <interface id="1" name="GigabitEthernet0/5/0"/>\r
51     <interface id="2" name="GigabitEthernet0/6/0"/>\r
52     <interface id="3" name="GigabitEthernet0/7/0"/>\r
53 \r
54 - Number of 2MB hugepages: 1024\r
55 \r
56 - Maximum number of memory map areas: 20000\r
57 \r
58 - Kernel Shared Memory Max: 2147483648 (vm.nr_hugepages * 2 * 1024 * 1024)\r
59 \r
60 SUT Configuration - VIRL Guest OS Linux\r
61 ---------------------------------------\r
62 \r
63 In CSIT terminology, the VM operating system for both SUTs that |vpp-release| has\r
64 been tested with, is the following:\r
65 \r
66 #. **Ubuntu VIRL image**\r
67 \r
68    This image implies Ubuntu 16.04.1 LTS, current as of yyyy-mm-dd (that is,\r
69    package versions are those that would have been installed by a\r
70    :command:`apt-get update`, :command:`apt-get upgrade` on that day), produced\r
71    by CSIT disk image build scripts.\r
72 \r
73    The exact list of installed packages and their versions (including the Linux\r
74    kernel package version) are included in `VIRL images lists`_.\r
75 \r
76    A replica of this VM image can be built by running the :command:`build.sh`\r
77    script in CSIT repository.\r
78 \r
79 #. **CentOS VIRL image**\r
80 \r
81    The Centos7.3 image is ready to be used but no tests running on it now.\r
82    Corresponding Jenkins jobs are under preparation.\r
83 \r
84    The exact list of installed packages and their versions (including the Linux\r
85    kernel package version) are included in `VIRL images lists`_.\r
86 \r
87    A replica of this VM image can be built by running the :command:`build.sh`\r
88    script in CSIT repository.\r
89 \r
90 #. **Nested VM image**\r
91 \r
92    In addition to the "main" VM image, tests which require VPP to communicate to\r
93    a VM over a vhost-user interface, utilize a "nested" VM image.\r
94 \r
95    This "nested" VM is dynamically created and destroyed as part of a test case,\r
96    and therefore the "nested" VM image is optimized to be small, lightweight and\r
97    have a short boot time. The "nested" VM image is not built around any\r
98    established Linux distribution, but is based on `BuildRoot\r
99    <https://buildroot.org/>`_, a tool for building embedded Linux systems. Just\r
100    as for the "main" image, scripts to produce an identical replica of the\r
101    "nested" image are included in CSIT GIT repository, and the image can be\r
102    rebuilt using the "build.sh" script at `VIRL nested`_.\r
103 \r
104 DUT Configuration - VPP\r
105 -----------------------\r
106 \r
107 Every System Under Test runs VPP SW application in Linux user-mode as a Device\r
108 Under Test (DUT) node.\r
109 \r
110 **DUT port configuration**\r
111 \r
112 Port configuration of DUTs is defined in topology file that is generated per\r
113 VIRL simulation based on the definition stored in `VIRL topologies directory`_.\r
114 \r
115 Example of DUT nodes configuration:::\r
116 \r
117     DUT1:\r
118         type: DUT\r
119         host: "10.30.51.157"\r
120         port: 22\r
121         username: cisco\r
122         honeycomb:\r
123           user: admin\r
124           passwd: admin\r
125           port: 8183\r
126           netconf_port: 2831\r
127         priv_key: |\r
128           -----BEGIN RSA PRIVATE KEY-----\r
129           MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
130           v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
131           vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
132           4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
133           1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
134           8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
135           0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
136           EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
137           0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
138           MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
139           p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
140           79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
141           OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
142           GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
143           bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
144           8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
145           f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
146           UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
147           +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
148           D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
149           sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
150           g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
151           qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
152           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
153           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
154           -----END RSA PRIVATE KEY-----\r
155 \r
156         interfaces:\r
157           port1:\r
158             mac_address: "fa:16:3e:9b:89:52"\r
159             pci_address: "0000:00:04.0"\r
160             link: link1\r
161           port2:\r
162             mac_address: "fa:16:3e:7a:33:60"\r
163             pci_address: "0000:00:05.0"\r
164             link: link4\r
165           port3:\r
166             mac_address: "fa:16:3e:29:b7:ae"\r
167             pci_address: "0000:00:06.0"\r
168             link: link3\r
169           port4:\r
170             mac_address: "fa:16:3e:76:8d:ff"\r
171             pci_address: "0000:00:07.0"\r
172             link: link6\r
173       DUT2:\r
174         type: DUT\r
175         host: "10.30.51.156"\r
176         port: 22\r
177         username: cisco\r
178         honeycomb:\r
179           user: admin\r
180           passwd: admin\r
181           port: 8183\r
182           netconf_port: 2831\r
183         priv_key: |\r
184           -----BEGIN RSA PRIVATE KEY-----\r
185           MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
186           v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
187           vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
188           4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
189           1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
190           8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
191           0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
192           EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
193           0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
194           MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
195           p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
196           79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
197           OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
198           GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
199           bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
200           8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
201           f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
202           UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
203           +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
204           D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
205           sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
206           g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
207           qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
208           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
209           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
210           -----END RSA PRIVATE KEY-----\r
211 \r
212         interfaces:\r
213           port1:\r
214             mac_address: "fa:16:3e:ad:6c:7d"\r
215             pci_address: "0000:00:04.0"\r
216             link: link2\r
217           port2:\r
218             mac_address: "fa:16:3e:94:a4:99"\r
219             pci_address: "0000:00:05.0"\r
220             link: link5\r
221           port3:\r
222             mac_address: "fa:16:3e:75:92:da"\r
223             pci_address: "0000:00:06.0"\r
224             link: link3\r
225           port4:\r
226             mac_address: "fa:16:3e:2c:b1:2a"\r
227             pci_address: "0000:00:07.0"\r
228             link: link6\r
229 \r
230 **VPP Version**\r
231 \r
232 |vpp-release|\r
233 \r
234 **VPP Installed Packages**\r
235 ::\r
236 \r
237     $ dpkg -l vpp\*\r
238     Desired=Unknown/Install/Remove/Purge/Hold\r
239     | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend\r
240     |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)\r
241     ||/ Name           Version       Architecture Description\r
242     +++-==============-=============-============-=============================================\r
243     ii  vpp            17.07-release amd64        Vector Packet Processing--executables\r
244     ii  vpp-dbg        17.07-release amd64        Vector Packet Processing--debug symbols\r
245     ii  vpp-dev        17.07-release amd64        Vector Packet Processing--development support\r
246     ii  vpp-dpdk-dev   17.07-release amd64        Vector Packet Processing--development support\r
247     ii  vpp-dpdk-dkms  17.07-release amd64        DPDK 2.1 igb_uio_driver\r
248     ii  vpp-lib        17.07-release amd64        Vector Packet Processing--runtime libraries\r
249     ii  vpp-plugins    17.07-release amd64        Vector Packet Processing--runtime plugins\r
250 \r
251 **VPP Startup Configuration**\r
252 \r
253 VPP startup configuration is common for all test cases.\r
254 \r
255 ::\r
256 \r
257     $ cat /etc/vpp/startup.conf\r
258     unix {\r
259       nodaemon\r
260       log /tmp/vpp.log\r
261       full-coredump\r
262     }\r
263 \r
264     api-trace {\r
265       on\r
266     }\r
267 \r
268     api-segment {\r
269       gid vpp\r
270     }\r
271 \r
272     cpu {\r
273         ## In the VPP there is one main thread and optionally the user can create worker(s)\r
274         ## The main thread and worker thread(s) can be pinned to CPU core(s) manually or automatically\r
275 \r
276         ## Manual pinning of thread(s) to CPU core(s)\r
277 \r
278         ## Set logical CPU core where main thread runs\r
279         # main-core 1\r
280 \r
281         ## Set logical CPU core(s) where worker threads are running\r
282         # corelist-workers 2-3,18-19\r
283 \r
284         ## Automatic pinning of thread(s) to CPU core(s)\r
285 \r
286         ## Sets number of CPU core(s) to be skipped (1 ... N-1)\r
287         ## Skipped CPU core(s) are not used for pinning main thread and working thread(s).\r
288         ## The main thread is automatically pinned to the first available CPU core and worker(s)\r
289         ## are pinned to next free CPU core(s) after core assigned to main thread\r
290         # skip-cores 4\r
291 \r
292         ## Specify a number of workers to be created\r
293         ## Workers are pinned to N consecutive CPU cores while skipping "skip-cores" CPU core(s)\r
294         ## and main thread's CPU core\r
295         # workers 2\r
296 \r
297         ## Set scheduling policy and priority of main and worker threads\r
298 \r
299         ## Scheduling policy options are: other (SCHED_OTHER), batch (SCHED_BATCH)\r
300         ## idle (SCHED_IDLE), fifo (SCHED_FIFO), rr (SCHED_RR)\r
301         # scheduler-policy fifo\r
302 \r
303         ## Scheduling priority is used only for "real-time policies (fifo and rr),\r
304         ## and has to be in the range of priorities supported for a particular policy\r
305         # scheduler-priority 50\r
306     }\r
307 \r
308     dpdk {\r
309         ## Change default settings for all intefaces\r
310         # dev default {\r
311             ## Number of receive queues, enables RSS\r
312             ## Default is 1\r
313             # num-rx-queues 3\r
314 \r
315             ## Number of transmit queues, Default is equal\r
316             ## to number of worker threads or 1 if no workers treads\r
317             # num-tx-queues 3\r
318 \r
319             ## Number of descriptors in transmit and receive rings\r
320             ## increasing or reducing number can impact performance\r
321             ## Default is 1024 for both rx and tx\r
322             # num-rx-desc 512\r
323             # num-tx-desc 512\r
324 \r
325             ## VLAN strip offload mode for interface\r
326             ## Default is off\r
327             # vlan-strip-offload on\r
328         # }\r
329 \r
330         ## Whitelist specific interface by specifying PCI address\r
331         # dev 0000:02:00.0\r
332 \r
333         ## Whitelist specific interface by specifying PCI address and in\r
334         ## addition specify custom parameters for this interface\r
335         # dev 0000:02:00.1 {\r
336         #       num-rx-queues 2\r
337         # }\r
338 \r
339         ## Change UIO driver used by VPP, Options are: uio_pci_generic, vfio-pci\r
340         ## and igb_uio (default)\r
341         # uio-driver uio_pci_generic\r
342 \r
343         ## Disable mutli-segment buffers, improves performance but\r
344         ## disables Jumbo MTU support\r
345         # no-multi-seg\r
346 \r
347         ## Increase number of buffers allocated, needed only in scenarios with\r
348         ## large number of interfaces and worker threads. Value is per CPU socket.\r
349         ## Default is 32768\r
350         # num-mbufs 128000\r
351 \r
352         ## Change hugepages allocation per-socket, needed only if there is need for\r
353         ## larger number of mbufs. Default is 256M on each detected CPU socket\r
354         # socket-mem 2048,2048\r
355     }\r
356 \r
357 TG Configuration\r
358 ----------------\r
359 \r
360 Traffic Generator node is VM running the same OS Linux as SUTs. Ports of this\r
361 VM are used as source (Tx) and destination (Rx) ports for the traffic.\r
362 \r
363 Traffic scripts of test cases are executed on this VM.\r
364 \r
365 **TG VM configuration**\r
366 \r
367 Configuration of the TG VMs is defined in `VIRL topologies directory`_.\r
368 \r
369    /csit/resources/tools/virl/topologies/double-ring-nested.xenial.virl\r
370 \r
371 - List of TG VM interfaces:::\r
372 \r
373     <interface id="0" name="eth1"/>\r
374     <interface id="1" name="eth2"/>\r
375     <interface id="2" name="eth3"/>\r
376     <interface id="3" name="eth4"/>\r
377     <interface id="4" name="eth5"/>\r
378     <interface id="5" name="eth6"/>\r
379 \r
380 **TG node port configuration**\r
381 \r
382 Port configuration of TG is defined in topology file that is generated per VIRL\r
383 simulation based on the definition stored in `VIRL topologies directory`_.\r
384 \r
385 Example of TG node configuration:::\r
386 \r
387     TG:\r
388         type: TG\r
389         host: "10.30.51.155"\r
390         port: 22\r
391         username: cisco\r
392         priv_key: |\r
393           -----BEGIN RSA PRIVATE KEY-----\r
394           MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
395           v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
396           vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
397           4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
398           1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
399           8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
400           0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
401           EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
402           0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
403           MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
404           p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
405           79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
406           OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
407           GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
408           bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
409           8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
410           f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
411           UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
412           +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
413           D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
414           sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
415           g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
416           qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
417           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
418           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
419           -----END RSA PRIVATE KEY-----\r
420 \r
421         interfaces:\r
422           port3:\r
423             mac_address: "fa:16:3e:b9:e1:27"\r
424             pci_address: "0000:00:06.0"\r
425             link: link1\r
426             driver: virtio-pci\r
427           port4:\r
428             mac_address: "fa:16:3e:e9:c8:68"\r
429             pci_address: "0000:00:07.0"\r
430             link: link4\r
431             driver: virtio-pci\r
432           port5:\r
433             mac_address: "fa:16:3e:e8:d3:47"\r
434             pci_address: "0000:00:08.0"\r
435             link: link2\r
436             driver: virtio-pci\r
437           port6:\r
438             mac_address: "fa:16:3e:cf:ca:58"\r
439             pci_address: "0000:00:09.0"\r
440             link: link5\r
441             driver: virtio-pci\r
442 \r
443 **Traffic generator**\r
444 \r
445 Functional tests utilize Scapy as a traffic generator. There was used Scapy\r
446 v2.3.1 for |vpp-release| tests.\r
447 \r