7 CSIT VPP functional tests are executed in VM-based virtual topologies
8 created on demand using :abbr:`VIRL (Virtual Internet Routing Lab)`
9 simulation platform contributed by Cisco. VIRL runs on physical
10 baremetal servers hosted by LF FD.io project. Based on the packet path
11 thru SUT VMs, two distinct logical topology types are used for VPP DUT
14 #. vNIC-to-vNIC switching topologies.
15 #. Nested-VM service switching topologies.
17 vNIC-to-vNIC Switching
18 ~~~~~~~~~~~~~~~~~~~~~~
20 The simplest virtual topology for software data plane application like
21 VPP is vNIC-to-vNIC switching. Tested virtual topologies for 2-Node and
22 3-Node testbeds are shown in figures below.
30 \graphicspath{{../_tmp/src/vpp_functional_tests/}}
31 \includegraphics[width=0.90\textwidth]{virtual-2n-nic2nic}
32 \label{fig:virtual-2n-nic2nic}
37 .. figure:: ../vpp_functional_tests/virtual-2n-nic2nic.svg
38 :alt: virtual-2n-nic2nic
48 \graphicspath{{../_tmp/src/vpp_functional_tests/}}
49 \includegraphics[width=0.90\textwidth]{virtual-3n-nic2nic}
50 \label{fig:virtual-3n-nic2nic}
55 .. figure:: ../vpp_functional_tests/virtual-3n-nic2nic.svg
56 :alt: virtual-3n-nic2nic
59 SUT1 and SUT2 are two VMs (running Ubuntu or Centos, depending on the test
60 suite), TG is a Traffic Generator (running Ubuntu VM). SUTs run VPP
61 SW application in Linux user-mode as a Device Under Test (DUT) within
62 the VM. TG runs Scapy SW application as a packet Traffic Generator.
63 Network connectivity between SUTs and to TG is provided using virtual
64 NICs and VMs' virtio drivers.
66 Virtual testbeds are created on-demand whenever a verification job is
67 started (e.g. triggered by the gerrit patch submission) and destroyed
68 upon completion of all functional tests. Each node is a Virtual Machine
69 and each connection that is drawn on the diagram is available for use in
70 any test case. During the test execution, all nodes are reachable thru
71 the Management network connected to every node via dedicated virtual
72 NICs and virtual links (not shown above for clarity).
74 Nested-VM Service Switching
75 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
77 Nested-VM (Virtual Machine) service switching topology test cases
78 require VPP DUT to communicate with nested-VM(s) over vhost-user virtual
79 interfaces. Nested-VM(s) is(are) created on SUT1 and/or SUT2 for the
80 duration of these particular test cases only. Virtual test topology with
81 nested-VM(s) is shown in the figure below.
89 \graphicspath{{../_tmp/src/vpp_functional_tests/}}
90 \includegraphics[width=0.90\textwidth]{virtual-3n-vm-vhost}
91 \label{fig:virtual-3n-vm-vhost}
96 .. figure:: ../vpp_functional_tests/virtual-3n-vm-vhost.svg
97 :alt: virtual-3n-vm-vhost
100 Functional Tests Coverage
101 -------------------------
103 |csit-release| includes following VPP functionality tested in virtual VM
106 +-----------------------+----------------------------------------------+
107 | Functionality | Description |
108 +=======================+==============================================+
109 | LISP | Locator/ID Separation Protocol overlay |
110 | | tunnels and locator/id mapping control. |
111 +-----------------------+----------------------------------------------+
113 Functional Tests Naming
114 -----------------------
116 |csit-release| follows a common structured naming convention for all
117 performance and system functional tests, introduced in CSIT-17.01.
119 The naming should be intuitive for majority of the tests. Complete
120 description of CSIT test naming convention is provided on
121 :ref:`csit_test_naming`.