4 CSIT VPP functional tests are executed in FD.io VIRL testbeds. The
5 physical VIRL testbed infrastructure consists of three VIRL servers:
11 - VIRL STD server version: 0.10.32.16
12 - VIRL UWM server version: 0.10.32.16
18 - VIRL STD server version: 0.10.32.16
19 - VIRL UWM server version: 0.10.32.16
25 - VIRL STD server version: 0.10.32.19
26 - VIRL UWM server version: 0.10.32.19
28 - VIRL hosts: Cisco UCS C240-M4, each with 2x Intel Xeon E5-2699
29 v3 (2.30 GHz, 18c), 512GB RAM.
31 Whenever a patch is submitted to gerrit for review, parallel VIRL
32 simulations are started to reduce the time of execution of all
33 functional tests. The number of parallel VIRL simulations is equal to a
34 number of test groups defined by TEST_GROUPS variable in
35 :file:`csit/bootstrap.sh` file. VIRL host to run VIRL simulation is
36 selected based on least load algorithm per VIRL simulation.
38 Every VIRL simulation uses the same three-node logical ring topology -
39 Traffic Generator (TG node) and two Systems Under Test (SUT1 and SUT2).
40 The appropriate pre-built VPP packages built by Jenkins for the patch
41 under review are then installed on the two SUTs, along with their
42 :file:`/etc/vpp/startup.conf` file, in all VIRL simulations.
44 SUT Settings - VIRL Guest VM
45 ----------------------------
47 SUT VMs' settings are defined in `VIRL topologies directory`_
49 - List of SUT VM interfaces:
51 <interface id="0" name="GigabitEthernet0/4/0"/>
52 <interface id="1" name="GigabitEthernet0/5/0"/>
53 <interface id="2" name="GigabitEthernet0/6/0"/>
54 <interface id="3" name="GigabitEthernet0/7/0"/>
56 - Number of 2MB hugepages: 1024.
58 - Maximum number of memory map areas: 20000.
60 - Kernel Shared Memory Max: 2147483648 (vm.nr_hugepages * 2 * 1024 * 1024).
62 SUT Settings - VIRL Guest OS Linux
63 ----------------------------------
65 In CSIT terminology, the VM operating system for both SUTs that |vpp-release|
66 has been tested with, is the following:
70 This image implies Ubuntu 16.04.1 LTS, current as of yyyy-mm-dd (that is,
71 package versions are those that would have been installed by a
72 :command:`apt-get update`, :command:`apt-get upgrade` on that day), produced
73 by CSIT disk image build scripts.
75 The exact list of installed packages and their versions (including the Linux
76 kernel package version) are included in `VIRL ubuntu images lists`_.
78 A replica of this VM image can be built by running the :command:`build.sh`
79 script in CSIT repository.
83 This image implies Centos 7.4-1711, current as of yyyy-mm-dd (that is,
84 package versions are those that would have been installed by a
85 :command:`yum update`, :command:`yum upgrade` on that day), produced
86 by CSIT disk image build scripts.
88 The exact list of installed packages and their versions (including the Linux
89 kernel package version) are included in `VIRL centos images lists`_.
91 A replica of this VM image can be built by running the :command:`build.sh`
92 script in CSIT repository.
96 In addition to the "main" VM image, tests which require VPP to communicate to
97 a VM over a vhost-user interface, utilize a "nested" VM image.
99 This "nested" VM is dynamically created and destroyed as part of a test case,
100 and therefore the "nested" VM image is optimized to be small, lightweight and
101 have a short boot time. The "nested" VM image is not built around any
102 established Linux distribution, but is based on `BuildRoot
103 <https://buildroot.org/>`_, a tool for building embedded Linux systems. Just
104 as for the "main" image, scripts to produce an identical replica of the
105 "nested" image are included in CSIT GIT repository, and the image can be
106 rebuilt using the "build.sh" script at `VIRL nested`_.
111 Every System Under Test runs VPP SW application in Linux user-mode as a Device
112 Under Test (DUT) node.
114 DUT Port Configuration
115 ~~~~~~~~~~~~~~~~~~~~~~
117 Port configuration of DUTs is defined in topology file that is generated per
118 VIRL simulation based on the definition stored in `VIRL topologies directory`_.
120 Example of DUT nodes configuration:
136 -----BEGIN RSA PRIVATE KEY-----
137 MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb
138 v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd
139 vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2
140 4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc
141 1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs
142 8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7
143 0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN
144 EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN
145 0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU
146 MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD
147 p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW
148 79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG
149 OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD
150 GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef
151 bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg
152 8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu
153 f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u
154 UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/
155 +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT
156 D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/
157 sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn
158 g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY
159 qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8
160 EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD
161 BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN
162 -----END RSA PRIVATE KEY-----
166 mac_address: "fa:16:3e:9b:89:52"
167 pci_address: "0000:00:04.0"
170 mac_address: "fa:16:3e:7a:33:60"
171 pci_address: "0000:00:05.0"
174 mac_address: "fa:16:3e:29:b7:ae"
175 pci_address: "0000:00:06.0"
178 mac_address: "fa:16:3e:76:8d:ff"
179 pci_address: "0000:00:07.0"
193 -----BEGIN RSA PRIVATE KEY-----
194 MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb
195 v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd
196 vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2
197 4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc
198 1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs
199 8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7
200 0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN
201 EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN
202 0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU
203 MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD
204 p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW
205 79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG
206 OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD
207 GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef
208 bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg
209 8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu
210 f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u
211 UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/
212 +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT
213 D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/
214 sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn
215 g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY
216 qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8
217 EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD
218 BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN
219 -----END RSA PRIVATE KEY-----
223 mac_address: "fa:16:3e:ad:6c:7d"
224 pci_address: "0000:00:04.0"
227 mac_address: "fa:16:3e:94:a4:99"
228 pci_address: "0000:00:05.0"
231 mac_address: "fa:16:3e:75:92:da"
232 pci_address: "0000:00:06.0"
235 mac_address: "fa:16:3e:2c:b1:2a"
236 pci_address: "0000:00:07.0"
244 VPP Installed Packages - Ubuntu
245 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
249 Desired=Unknown/Install/Remove/Purge/Hold
250 | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
251 |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
252 ||/ Name Version Architecture Description
253 +++-==============-=================-============-=============================================
254 ii vpp 19.01.3-release amd64 Vector Packet Processing--executables
255 ii vpp-api-python 19.01.3-release amd64 VPP Python API bindings
256 ii vpp-dbg 19.01.3-release amd64 Vector Packet Processing--debug symbols
257 ii vpp-dev 19.01.3-release amd64 Vector Packet Processing--development support
258 ii vpp-lib 19.01.3-release amd64 Vector Packet Processing--runtime libraries
259 ii vpp-plugins 19.01.3-release amd64 Vector Packet Processing--runtime plugins
261 VPP Installed Packages - Centos
262 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
267 Name : vpp-selinux-policy
271 Install Date: Fri 19 Jul 2019 03:34:48 AM EDT
272 Group : System Environment/Base
276 Source RPM : vpp-19.01.3-release.src.rpm
277 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
278 Build Host : 4545ab742a18
279 Relocations : (not relocatable)
280 Summary : VPP Security-Enhanced Linux (SELinux) policy
282 This package contains a tailored VPP SELinux policy
287 Install Date: Fri 19 Jul 2019 03:34:51 AM EDT
288 Group : System Environment/Libraries
292 Source RPM : vpp-19.01.3-release.src.rpm
293 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
294 Build Host : 4545ab742a18
295 Relocations : (not relocatable)
296 Summary : Vector Packet Processing--runtime plugins
298 This package contains VPP plugins
299 Name : vpp-api-python
303 Install Date: Fri 19 Jul 2019 03:34:48 AM EDT
304 Group : Development/Libraries
308 Source RPM : vpp-19.01.3-release.src.rpm
309 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
310 Build Host : 4545ab742a18
311 Relocations : (not relocatable)
312 Summary : VPP api python bindings
314 This package contains the python bindings for the vpp api
319 Install Date: Fri 19 Jul 2019 03:34:48 AM EDT
324 Source RPM : vpp-19.01.3-release.src.rpm
325 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
326 Build Host : 4545ab742a18
327 Relocations : (not relocatable)
328 Summary : Vector Packet Processing
330 This package provides VPP executables: vpp, vpp_api_test, vpp_json_test
331 vpp - the vector packet engine
332 vpp_api_test - vector packet engine API test tool
333 vpp_json_test - vector packet engine JSON test tool
338 Install Date: Fri 19 Jul 2019 03:34:48 AM EDT
339 Group : System Environment/Libraries
343 Source RPM : vpp-19.01.3-release.src.rpm
344 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
345 Build Host : 4545ab742a18
346 Relocations : (not relocatable)
347 Summary : VPP libraries
349 This package contains the VPP shared libraries, including:
350 vppinfra - foundation library supporting vectors, hashes, bitmaps, pools, and string formatting.
352 vlib - vector processing library
353 vlib-api - binary API library
354 vnet - network stack library
359 Install Date: Fri 19 Jul 2019 03:34:52 AM EDT
360 Group : Development/Libraries
364 Source RPM : vpp-19.01.3-release.src.rpm
365 Build Date : Thu 18 Jul 2019 06:12:53 PM EDT
366 Build Host : 4545ab742a18
367 Relocations : (not relocatable)
368 Summary : VPP header files, static libraries
370 This package contains the header files for VPP.
371 Install this package if you want to write a
372 program for compilation and linking with vpp lib.
375 vnet - devices, classify, dhcp, ethernet flow, gre, ip, etc.
379 VPP Startup Configuration
380 ~~~~~~~~~~~~~~~~~~~~~~~~~
382 VPP startup configuration is common for all test cases except test cases related
385 **Common Configuration**
389 $ cat /etc/vpp/startup.conf
392 log /var/log/vpp/vpp.log
394 cli-listen /run/vpp/cli.sock
399 ## This stanza controls binary API tracing. Unless there is a very strong reason,
400 ## please leave this feature enabled.
402 ## Additional parameters:
404 ## To set the number of binary API trace records in the circular buffer, configure nitems
408 ## To save the api message table decode tables, configure a filename. Results in /tmp/<filename>
409 ## Very handy for understanding api message changes between versions, identifying missing
410 ## plugins, and so forth.
412 ## save-api-table <filename>
424 ## In the VPP there is one main thread and optionally the user can create worker(s)
425 ## The main thread and worker thread(s) can be pinned to CPU core(s) manually or automatically
427 ## Manual pinning of thread(s) to CPU core(s)
429 ## Set logical CPU core where main thread runs, if main core is not set
430 ## VPP will use core 1 if available
433 ## Set logical CPU core(s) where worker threads are running
434 # corelist-workers 2-3,18-19
436 ## Automatic pinning of thread(s) to CPU core(s)
438 ## Sets number of CPU core(s) to be skipped (1 ... N-1)
439 ## Skipped CPU core(s) are not used for pinning main thread and working thread(s).
440 ## The main thread is automatically pinned to the first available CPU core and worker(s)
441 ## are pinned to next free CPU core(s) after core assigned to main thread
444 ## Specify a number of workers to be created
445 ## Workers are pinned to N consecutive CPU cores while skipping "skip-cores" CPU core(s)
446 ## and main thread's CPU core
449 ## Set scheduling policy and priority of main and worker threads
451 ## Scheduling policy options are: other (SCHED_OTHER), batch (SCHED_BATCH)
452 ## idle (SCHED_IDLE), fifo (SCHED_FIFO), rr (SCHED_RR)
453 # scheduler-policy fifo
455 ## Scheduling priority is used only for "real-time policies (fifo and rr),
456 ## and has to be in the range of priorities supported for a particular policy
457 # scheduler-priority 50
461 ## Change default settings for all interfaces
463 ## Number of receive queues, enables RSS
467 ## Number of transmit queues, Default is equal
468 ## to number of worker threads or 1 if no workers treads
471 ## Number of descriptors in transmit and receive rings
472 ## increasing or reducing number can impact performance
473 ## Default is 1024 for both rx and tx
477 ## VLAN strip offload mode for interface
479 # vlan-strip-offload on
482 ## Whitelist specific interface by specifying PCI address
485 ## Blacklist specific device type by specifying PCI vendor:device
486 ## Whitelist entries take precedence
487 # blacklist 8086:10fb
489 ## Set interface name
494 ## Whitelist specific interface by specifying PCI address and in
495 ## addition specify custom parameters for this interface
500 ## Specify bonded interface and its slaves via PCI addresses
502 ## Bonded interface in XOR load balance mode (mode 2) with L3 and L4 headers
503 # vdev eth_bond0,mode=2,slave=0000:02:00.0,slave=0000:03:00.0,xmit_policy=l34
504 # vdev eth_bond1,mode=2,slave=0000:02:00.1,slave=0000:03:00.1,xmit_policy=l34
506 ## Bonded interface in Active-Back up mode (mode 1)
507 # vdev eth_bond0,mode=1,slave=0000:02:00.0,slave=0000:03:00.0
508 # vdev eth_bond1,mode=1,slave=0000:02:00.1,slave=0000:03:00.1
510 ## Change UIO driver used by VPP, Options are: igb_uio, vfio-pci,
511 ## uio_pci_generic or auto (default)
512 # uio-driver vfio-pci
514 ## Disable multi-segment buffers, improves performance but
515 ## disables Jumbo MTU support
518 ## Increase number of buffers allocated, needed only in scenarios with
519 ## large number of interfaces and worker threads. Value is per CPU socket.
523 ## Change hugepages allocation per-socket, needed only if there is need for
524 ## larger number of mbufs. Default is 256M on each detected CPU socket
525 # socket-mem 2048,2048
527 ## Disables UDP / TCP TX checksum offload. Typically needed for use
528 ## faster vector PMDs (together with no-multi-seg)
529 # no-tx-checksum-offload
534 ## Adjusting the plugin path depending on where the VPP plugins are
535 # path /ws/vpp/build-root/install-vpp-native/vpp/lib/vpp_plugins
537 ## Disable all plugins by default and then selectively enable specific plugins
538 # plugin default { disable }
539 # plugin dpdk_plugin.so { enable }
540 # plugin acl_plugin.so { enable }
542 ## Enable all plugins by default and then selectively disable specific plugins
543 # plugin dpdk_plugin.so { disable }
544 # plugin acl_plugin.so { disable }
547 **SW Crypto Device Configuration**
551 $ cat /etc/vpp/startup.conf
554 cli-listen /run/vpp/cli.sock
566 vdev cryptodev_aesni_gcm_pmd,socket_id=0
567 vdev cryptodev_aesni_mb_pmd,socket_id=0
573 Traffic Generator node is VM running the same OS Linux as SUTs. Ports of this
574 VM are used as source (Tx) and destination (Rx) ports for the traffic.
576 Traffic scripts of test cases are executed on this VM.
581 Configuration of the TG VMs is defined in `VIRL topologies directory`_.
583 /csit/resources/tools/virl/topologies/double-ring-nested.xenial.virl
585 - List of TG VM interfaces:::
587 <interface id="0" name="eth1"/>
588 <interface id="1" name="eth2"/>
589 <interface id="2" name="eth3"/>
590 <interface id="3" name="eth4"/>
591 <interface id="4" name="eth5"/>
592 <interface id="5" name="eth6"/>
594 TG Port Configuration
595 ~~~~~~~~~~~~~~~~~~~~~
597 Port configuration of TG is defined in topology file that is generated per VIRL
598 simulation based on the definition stored in `VIRL topologies directory`_.
600 Example of TG node configuration:::
609 -----BEGIN RSA PRIVATE KEY-----
610 MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb
611 v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd
612 vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2
613 4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc
614 1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs
615 8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7
616 0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN
617 EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN
618 0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU
619 MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD
620 p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW
621 79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG
622 OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD
623 GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef
624 bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg
625 8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu
626 f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u
627 UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/
628 +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT
629 D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/
630 sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn
631 g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY
632 qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8
633 EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD
634 BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN
635 -----END RSA PRIVATE KEY-----
639 mac_address: "fa:16:3e:b9:e1:27"
640 pci_address: "0000:00:06.0"
644 mac_address: "fa:16:3e:e9:c8:68"
645 pci_address: "0000:00:07.0"
649 mac_address: "fa:16:3e:e8:d3:47"
650 pci_address: "0000:00:08.0"
654 mac_address: "fa:16:3e:cf:ca:58"
655 pci_address: "0000:00:09.0"
662 Functional tests utilize Scapy as a traffic generator. Scapy v2.3.1 is
663 used for |vpp-release| tests.