diff options
author | Martin Klozik <martinx.klozik@intel.com> | 2015-10-02 02:18:09 +0100 |
---|---|---|
committer | Maryam Tahhan <maryam.tahhan@intel.com> | 2015-10-12 14:58:14 +0000 |
commit | 9b590e2282714e3b5aae26c3ac2d8c857b1ddb82 (patch) | |
tree | 3739c9f042949c02e3254be342f0076d6ed2f9f2 /core | |
parent | f8b7dd0a2611061fed7134474ae10ab85e80cf3d (diff) |
Enable PVP and PVVP deployments for Vanilla OVS
Support for PVP and PVVP scenerios using Vanilla OVS was added.
VMs are configured to forward traffic between virtual interfaces
by standard linux capabilities. Traffic generator script was updated
to accept MAC and IP address configuration to allow VM forwarding
configuration.
VSPERF-66, VSPERF-70
Change-Id: Ia70ab6be547b39928a1eae319faba779d4e29284
Signed-off-by: Martin Klozik <martinx.klozik@intel.com>
Signed-off-by: Dino Simeon Madarang <dino.simeonx.madarang@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
Reviewed-by: Brian Castelli <brian.castelli@spirent.com>
Reviewed-by: Gene Snider <eugene.snider@huawei.com>
Reviewed-by: Al Morton <acmorton@att.com>
Reviewed-by: Tv Rao <tv.rao@freescale.com>
Diffstat (limited to 'core')
-rw-r--r-- | core/traffic_controller_rfc2544.py | 10 | ||||
-rw-r--r-- | core/vnf_controller.py | 5 | ||||
-rw-r--r-- | core/vswitch_controller.py | 7 | ||||
-rw-r--r-- | core/vswitch_controller_p2p.py | 5 | ||||
-rw-r--r-- | core/vswitch_controller_pvp.py | 5 | ||||
-rw-r--r-- | core/vswitch_controller_pvvp.py | 5 |
6 files changed, 35 insertions, 2 deletions
diff --git a/core/traffic_controller_rfc2544.py b/core/traffic_controller_rfc2544.py index fa4a9c35..5659569f 100644 --- a/core/traffic_controller_rfc2544.py +++ b/core/traffic_controller_rfc2544.py @@ -49,7 +49,7 @@ class TrafficControllerRFC2544(ITrafficController, IResults): packet_sizes_cli = get_test_param('pkt_sizes') if packet_sizes_cli: self._packet_sizes = [int(x.strip()) - for x in packet_sizes_cli.split(',')] + for x in packet_sizes_cli.split(',')] else: self._packet_sizes = settings.getValue('TRAFFICGEN_PKT_SIZES') @@ -91,7 +91,13 @@ class TrafficControllerRFC2544(ITrafficController, IResults): str(self._traffic_gen_class)) for packet_size in self._packet_sizes: - traffic['l2'] = {'framesize': packet_size} + # Merge framesize with the default traffic definition + if 'l2' in traffic: + traffic['l2'] = dict(traffic['l2'], + **{'framesize': packet_size}) + else: + traffic['l2'] = {'framesize': packet_size} + if traffic['traffic_type'] == 'back2back': result = self._traffic_gen_class.send_rfc2544_back2back( traffic, trials=self._trials, diff --git a/core/vnf_controller.py b/core/vnf_controller.py index 3d3be040..3313e9e3 100644 --- a/core/vnf_controller.py +++ b/core/vnf_controller.py @@ -15,6 +15,7 @@ """ import logging +from vnfs.vnf.vnf import IVnf class VnfController(object): """VNF controller class @@ -33,6 +34,10 @@ class VnfController(object): :param vnf_class: The VNF class to be used. """ + # reset VNF ID counter for each testcase + IVnf.reset_vnf_counter() + + # setup controller with requested number of VNFs self._logger = logging.getLogger(__name__) self._vnf_class = vnf_class self._deployment_scenario = deployment_scenario.upper() diff --git a/core/vswitch_controller.py b/core/vswitch_controller.py index 619e1d8b..855de8b2 100644 --- a/core/vswitch_controller.py +++ b/core/vswitch_controller.py @@ -49,3 +49,10 @@ class IVswitchController(object): raise NotImplementedError( "The VswitchController does not implement the \"get_ports_info\" " "function.") + + def dump_vswitch_flows(self): + """ Dumps flows from vswitch + """ + raise NotImplementedError( + "The VswitchController does not implement the " + "\"dump_vswitch_flows\" function.") diff --git a/core/vswitch_controller_p2p.py b/core/vswitch_controller_p2p.py index c15f7ef8..35600e1b 100644 --- a/core/vswitch_controller_p2p.py +++ b/core/vswitch_controller_p2p.py @@ -114,3 +114,8 @@ class VswitchControllerP2P(IVswitchController): """ self._logger.debug('get_ports_info using ' + str(self._vswitch_class)) return self._vswitch.get_ports(settings.getValue('VSWITCH_BRIDGE_NAME')) + + def dump_vswitch_flows(self): + """See IVswitchController for description + """ + self._vswitch.dump_flows(settings.getValue('VSWITCH_BRIDGE_NAME')) diff --git a/core/vswitch_controller_pvp.py b/core/vswitch_controller_pvp.py index 80c0fdb2..b2337bd6 100644 --- a/core/vswitch_controller_pvp.py +++ b/core/vswitch_controller_pvp.py @@ -104,3 +104,8 @@ class VswitchControllerPVP(IVswitchController): """ self._logger.debug('get_ports_info using ' + str(self._vswitch_class)) return self._vswitch.get_ports(settings.getValue('VSWITCH_BRIDGE_NAME')) + + def dump_vswitch_flows(self): + """See IVswitchController for description + """ + self._vswitch.dump_flows(settings.getValue('VSWITCH_BRIDGE_NAME')) diff --git a/core/vswitch_controller_pvvp.py b/core/vswitch_controller_pvvp.py index b445f9bd..43cf8a35 100644 --- a/core/vswitch_controller_pvvp.py +++ b/core/vswitch_controller_pvvp.py @@ -112,3 +112,8 @@ class VswitchControllerPVVP(IVswitchController): """ self._logger.debug('get_ports_info using ' + str(self._vswitch_class)) return self._vswitch.get_ports(settings.getValue('VSWITCH_BRIDGE_NAME')) + + def dump_vswitch_flows(self): + """See IVswitchController for description + """ + self._vswitch.dump_flows(settings.getValue('VSWITCH_BRIDGE_NAME')) |