diff options
author | Richard Elias <richardx.elias@intel.com> | 2018-04-23 12:14:52 +0100 |
---|---|---|
committer | Richard Elias <richardx.elias@intel.com> | 2018-04-25 13:09:19 +0100 |
commit | a6ffc4abbc94a3a10295c90a569e907c9044b759 (patch) | |
tree | 9a8e47ba7ba5baf2c6ed2ae2ef9cfe38bb4dd871 /conf | |
parent | be271aef854887fce72d821a8589dfd4ebbe8e1d (diff) |
ovsdpdk: Custom Statistics Tests
Functional testcases for the validation of Custom Statistics support
by OVS. The Custom Statistics feature allows Custom Statistics to be
accessed by VSPERF.
These statistics include for example rx_missed_errors, rx_errors,
tx_errors, rx_mbuf_allocation_errors, rx_crc_errors.
These testcases require DPDK v17.11, the latest Open vSwitch(v2.9.90)
and the IxNet traffic-generator.
JIRA: VSPERF-572
Change-Id: I30cbe6067d6bdd0fc2a262b86f306b66a77d085f
Signed-off-by: Richard Elias <richardx.elias@intel.com>
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Christian Trautman <ctrautma@redhat.com>
Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com>
Diffstat (limited to 'conf')
-rw-r--r-- | conf/integration/01b_dpdk_regression_tests.conf | 70 |
1 files changed, 69 insertions, 1 deletions
diff --git a/conf/integration/01b_dpdk_regression_tests.conf b/conf/integration/01b_dpdk_regression_tests.conf index 2e63d677..7e4fe74f 100644 --- a/conf/integration/01b_dpdk_regression_tests.conf +++ b/conf/integration/01b_dpdk_regression_tests.conf @@ -1,4 +1,4 @@ -# Copyright 2017 Intel Corporation. +# Copyright 2017-2018 Intel Corporation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -1686,4 +1686,72 @@ INTEGRATION_TESTS = INTEGRATION_TESTS + [ }, "TestSteps": _OVSDPDK_QOS_confirm_multiple_qos_setup }, + ############################################################ + # + # Custom statistics + # + ############################################################ + { + "Name": "ovsdpdk_custstat_check", + "Deployment": "clean", + "Description": "Test if custom statistics are supported.", + "vSwitch" : "OvsDpdkVhost", + "TestSteps": [ + # enable custom statistics + ['vswitch', 'add_switch', 'int_br0', [ + 'protocols=OpenFlow10,OpenFlow11,OpenFlow12,' + 'OpenFlow13,OpenFlow14,OpenFlow15']], + ['#port', 'vswitch', 'add_phy_port', 'int_br0'], + # check that custom statistics are available for given interface + ['tools', 'exec_shell', 'sudo $TOOLS["ovs-ofctl"] -O OpenFlow14 ' + 'dump-ports int_br0 #STEP[port][1]', + '|CUSTOM Statistics'], + ['tools', 'assert', 'len(#STEP[-1])'], + ['vswitch', 'del_port', 'int_br0', '#STEP[port][0]'], + ['vswitch', 'del_switch', 'int_br0'], + ] + }, + { + "Name": "ovsdpdk_custstat_rx_error", + "Deployment": "clean", + "Description": "Test bad ethernet CRC counter 'rx_crc_errors' exposed by custom statistics.", + "vSwitch" : "OvsDpdkVhost", + "Parameters" : { + "OVS_OFCTL_ARGS" : [], + "TRAFFICGEN" : "IxNet", + "TRAFFIC" : { + "traffic_type" : "rfc2544_continuous", + "frame_rate" : 10, + }, + "TRAFFICGEN_DURATION" : 10, + "TRAFFICGEN_IXNET_TCL_SCRIPT" : "ixnetrfc2544_bad_l2_crc.tcl", + }, + "TestSteps": [ + # enable custom statistics + ['vswitch', 'add_switch', 'int_br0', [ + 'protocols=OpenFlow10,OpenFlow11,OpenFlow12,' + 'OpenFlow13,OpenFlow14,OpenFlow15']], + ['#port1', 'vswitch', 'add_phy_port', 'int_br0'], + ['#port2', 'vswitch', 'add_phy_port', 'int_br0'], + ['vswitch', 'add_flow', 'int_br0', {'in_port': '1', 'actions': ['output:2']}], + ['vswitch', 'add_flow', 'int_br0', {'in_port': '2', 'actions': ['output:1']}], + ['#crc_old', 'tools', 'exec_shell', 'sudo $TOOLS["ovs-ofctl"] -O OpenFlow14 ' + 'dump-ports int_br0 #STEP[port1][1]', + '|rx_crc_errors=(\d+)'], + # frames will be dropped by NIC, so we have to suppress send_traffic validation + # to avoid test failure + ['!trafficgen', 'send_traffic', {}], + # check that custom statistics are available for given interface + ['#crc_new', 'tools', 'exec_shell', 'sudo $TOOLS["ovs-ofctl"] -O OpenFlow14 ' + 'dump-ports int_br0 #STEP[port1][1]', + '|rx_crc_errors=(\d+)'], + ['tools', 'assert', '#STEP[crc_new] > #STEP[crc_old]'], + # tear down the environment + ['vswitch', 'dump_flows', 'int_br0'], + ['vswitch', 'del_flow', 'int_br0', {}], + ['vswitch', 'del_port', 'int_br0', '#STEP[port1][0]'], + ['vswitch', 'del_port', 'int_br0', '#STEP[port2][0]'], + ['vswitch', 'del_switch', 'int_br0'], + ] + }, ] |