4 VSPERF includes a set of integration tests defined in conf/integration.
5 These tests can be run by specifying --run-integration as a parameter to vsperf.
6 Current tests in conf/integration are Overlay tests.
9 Executing Tunnel encapsulation tests
10 ------------------------------------
12 VSPERF supports VXLAN, GRE and GENEVE tunneling protocols.
13 Testing of these protocols is limited to unidirectional traffic and
14 P2P (Physical to Physical scenarios).
16 The VXLAN OVS DPDK encapsulation tests requires IPs, MAC addresses,
17 bridge names and WHITELIST_NICS for DPDK.
19 Default values are already provided. To customize for your environment, override
20 the following variables in you user_settings.py file:
22 # Variables defined in conf/integration/02_vswitch.conf
23 # Tunnel endpoint for Overlay P2P deployment scenario
25 VTEP_IP1 = '192.168.0.1/24'
27 # Used as remote_ip in adding OVS tunnel port and
28 # to set ARP entry in OVS (e.g. tnl/arp/set br-ext 192.168.240.10 02:00:00:00:00:02
29 VTEP_IP2 = '192.168.240.10'
31 # Network to use when adding a route for inner frame data
32 VTEP_IP2_SUBNET = '192.168.240.0/24'
35 TUNNEL_INTEGRATION_BRIDGE = 'br0'
36 TUNNEL_EXTERNAL_BRIDGE = 'br-ext'
39 TUNNEL_EXTERNAL_BRIDGE_IP = '192.168.240.1/24'
44 # Variables defined conf/integration/03_traffic.conf
45 # For OP2P deployment scenario
46 TRAFFICGEN_PORT1_MAC = '02:00:00:00:00:01'
47 TRAFFICGEN_PORT2_MAC = '02:00:00:00:00:02'
48 TRAFFICGEN_PORT1_IP = '1.1.1.1'
49 TRAFFICGEN_PORT2_IP = '192.168.240.10'
52 To run VXLAN encapsulation tests:
54 .. code-block:: console
56 ./vsperf --conf-file user_settings.py --run-integration --test-param 'tunnel_type=vxlan' overlay_p2p_tput
58 To run GRE encapsulation tests:
60 .. code-block:: console
62 ./vsperf --conf-file user_settings.py --run-integration --test-param 'tunnel_type=gre' overlay_p2p_tput
64 To run GENEVE encapsulation tests:
66 .. code-block:: console
68 ./vsperf --conf-file user_settings.py --run-integration --test-param 'tunnel_type=geneve' overlay_p2p_tput
70 To run OVS NATIVE tunnel tests (VXLAN/GRE/GENEVE):
72 1. Install the OVS kernel modules
77 sudo -E make modules_install
79 2. Set the following variables:
81 .. code-block:: console
83 VSWITCH = 'OvsVanilla'
84 VSWITCH_VANILLA_PHY_PORT_NAMES = ['nic1name', 'nic2name']
85 # Specify vport_* kernel module to test.
86 VSWITCH_VANILLA_KERNEL_MODULES = ['vport_vxlan',
89 os.path.join(OVS_DIR_VANILLA, 'datapath/linux/openvswitch.ko')]
93 .. code-block:: console
95 ./vsperf --conf-file user_settings.py --run-integration --test-param 'tunnel_type=vxlan' overlay_p2p_tput
98 Executing VXLAN decapsulation tests
99 ------------------------------------
101 To run VXLAN decapsulation tests:
103 1. Set the variables used in "Executing Tunnel encapsulation tests"
105 2. Set IXNET_TCL_SCRIPT, VXLAN_FRAME_L2, VLXAN_FRAME_L3 and DUT_NIC1_MAC of your settings file to:
107 .. code-block:: console
109 IXNET_TCL_SCRIPT='ixnetrfc2544v2.tcl'
111 VXLAN_FRAME_L2 = {'srcmac':
117 VXLAN_FRAME_L3 = {'proto': 'udp',
120 'dstip': '192.168.240.1',
123 VXLAN_FRAME_L4 = {'srcport': 4789,
126 'inner_srcmac': '01:02:03:04:05:06',
127 'inner_dstmac': '06:05:04:03:02:01',
128 'inner_srcip': '192.168.0.10',
129 'inner_dstip': '192.168.240.9',
130 'inner_proto': 'udp',
131 'inner_srcport': 3000,
132 'inner_dstport': 3001,
135 # The receiving NIC of VXLAN traffic
136 DUT_NIC1_MAC = '<mac address>'
140 .. code-block:: console
142 ./vsperf --conf-file user_settings.py --run-integration overlay_p2p_decap_cont
144 Executing GRE decapsulation tests
145 ---------------------------------
147 To run GRE decapsulation tests:
149 1. Set the variables used in "Executing Tunnel encapsulation tests"
151 2. Set IXNET_TCL_SCRIPT, GRE_FRAME_L2, GRE_FRAME_L3 and DUT_NIC1_MAC of your settings file to:
153 .. code-block:: console
155 IXNET_TCL_SCRIPT='ixnetrfc2544v2.tcl'
157 GRE_FRAME_L2 = {'srcmac':
163 GRE_FRAME_L3 = {'proto': 'gre',
166 'dstip': '192.168.240.1',
169 GRE_FRAME_L4 = {'srcport': 0,
171 'inner_srcmac': '01:02:03:04:05:06',
172 'inner_dstmac': '06:05:04:03:02:01',
173 'inner_srcip': '192.168.0.10',
174 'inner_dstip': '192.168.240.9',
175 'inner_proto': 'udp',
176 'inner_srcport': 3000,
177 'inner_dstport': 3001,
180 # The receiving NIC of GRE traffic
181 DUT_NIC1_MAC = '<mac address>'
185 .. code-block:: console
187 ./vsperf --conf-file user_settings.py --test-param 'tunnel_type=gre' --run-integration overlay_p2p_decap_cont