Addition of Prox NSB changes in yardstick 07/40507/27
authorabhijitsinha <abhijit.sinha@intel.com>
Mon, 28 Aug 2017 19:35:46 +0000 (20:35 +0100)
committerRoss Brattain <ross.b.brattain@intel.com>
Mon, 4 Sep 2017 21:49:45 +0000 (14:49 -0700)
commita1722f91ac250e2a021b7a1cc4e4f99f11ff41e0
tree75e9b060dca5e2e96734bc1e026b76fd3cc4296c
parentc19115bafe0141326b189f317a684bf4681c8bd0
Addition of Prox NSB changes in yardstick

JIRA: YARDSTICK-802

Addition of Prox L2Fwd, MPLS test cases for BM and Heat.

updates:
Most of tg_prox and prox_vnf were absorbed into the base classes.

delete most of ProxDpdkVnfSetupEnvHelper, it is handled by DpdkVnfSetupEnvHelper baseclass

use standard _build_pipeline_kwargs methods

don't use terminate() use baseclass version

add new method kill_vnf that runs pkill -x

replace resource_helper.execute() with vnf_execture for dumping stats

In order to share code between tg_prox and vnf_prox
refactor to have tg_prox hold and wrap a ProxApproxVnf instance and call
methods on that class.   Do this instead of multiple-inheritance.

Implement ProxApproxVnf.terminate() using prox socket command
based exit, (stop_all, quit, force_quit).

vnf_execute calls resource_helper.execute() which calls
socket methods on the sut object.

Since tg_prox wraps the VNF object, we can call
terminate on the VNF object and it should work correctly.

move prox config generation to parent process
    we need to get core number info from config file
    inside the TG processes, so we need to generate
    the config in the parent process so the data is
    copied to the child during the fork.

moved more config file methods to the setup_helper class.

we run force_quit after quit, so the socket should already be closed
this will trigger socket error, so add _ignore_errors option for
vnf_execute to ignore socket errors

Fixed the terminate issue. Added MPLS tests.
Added TG Stats in_packet/out_packet
Fixed compile (pep8) issues

Fixed MPLS TG port stats, in/out packets
Added Grafana dashboards for L2FWD and MPLS
Traffic profiles modified for tolerated loss and
precision as per DATS tests.

Added unit test case for Mpls
Single port test stats collection support.

Change-Id: Idd9493f597c668a3bb7d90e167e6a418546106e8
Signed-off-by: Abhijit Sinha <abhijit.sinha@intel.com>
Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
77 files changed:
dashboard/Prox_BM_L2FWD-2Port-1501492823086.json [new file with mode: 0644]
dashboard/Prox_BM_L2FWD-4Port-1501498495048.json [new file with mode: 0644]
dashboard/Prox_BM_L2FWD_Packet_Touch_Test-2Port-1500472590269.json [new file with mode: 0644]
dashboard/Prox_BM_L2FWD_Packet_Touch_Test-4Port-1500472599088.json [new file with mode: 0644]
dashboard/Prox_BM_MPLS_tag_untag_Test-2Port-1500049478510.json [new file with mode: 0644]
dashboard/Prox_BM_MPLS_tag_untag_Test-4Port-1500049362613.json [new file with mode: 0644]
dashboard/Prox_Heat_L2FWD-2Port-1501497403194.json [new file with mode: 0644]
dashboard/Prox_Heat_L2FWD-4Port-1501497978548.json [new file with mode: 0644]
dashboard/Prox_Heat_L2FWD_Packet_Touch_Test-2Port-1501090481325.json [new file with mode: 0644]
dashboard/Prox_Heat_L2FWD_Packet_Touch_Test-4Port-1501090461715.json [new file with mode: 0644]
dashboard/Prox_Heat_MPLS_tag_untag_Test-2Port-1501089144407.json [new file with mode: 0644]
dashboard/Prox_Heat_MPLS_tag_untag_Test-4Port-1501089128664.json [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_l2fwd-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_l2fwd-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_l2fwd-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_l2fwd-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-2.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-4.cfg [new file with mode: 0644]
samples/vnf_samples/nsut/prox/ovs-dpdk/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml
samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml
samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml
samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-2.yaml
samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-4.yaml
samples/vnf_samples/nsut/prox/tc_prox_baremetal_binsearch.yaml
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-4.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-4.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-4.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_baremetal_ramp.yaml
samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml
samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-2.yaml
samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-4.yaml
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-4.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-2.yaml [new file with mode: 0644]
samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-4.yaml [new file with mode: 0644]
samples/vnf_samples/traffic_profiles/prox_binsearch.yaml
samples/vnf_samples/traffic_profiles/prox_mpls_tag_untag.yaml [new file with mode: 0644]
tests/unit/network_services/traffic_profile/test_prox_binsearch.py
tests/unit/network_services/traffic_profile/test_prox_mpls.py [new file with mode: 0644]
tests/unit/network_services/vnf_generic/vnf/test_acl_vnf.py
tests/unit/network_services/vnf_generic/vnf/test_base.py
tests/unit/network_services/vnf_generic/vnf/test_cgnapt_vnf.py
tests/unit/network_services/vnf_generic/vnf/test_iniparser.py
tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py
tests/unit/network_services/vnf_generic/vnf/test_prox_vnf.py
tests/unit/network_services/vnf_generic/vnf/test_tg_prox.py
tests/unit/network_services/vnf_generic/vnf/test_vfw_vnf.py
tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py
yardstick/network_services/traffic_profile/prox_binsearch.py
yardstick/network_services/traffic_profile/prox_mpls_tag_untag.py [new file with mode: 0644]
yardstick/network_services/vnf_generic/vnf/iniparser.py
yardstick/network_services/vnf_generic/vnf/prox_helpers.py
yardstick/network_services/vnf_generic/vnf/prox_vnf.py
yardstick/network_services/vnf_generic/vnf/sample_vnf.py
yardstick/network_services/vnf_generic/vnf/tg_prox.py