From 4481df385ac03ece015ccb429201f96189dc5ae2 Mon Sep 17 00:00:00 2001 From: Martin Klozik Date: Wed, 14 Dec 2016 14:02:43 +0000 Subject: traffic: Configurable traffic details Traffic generated by traffic generator is based on default values and their modifications specific to particular testing scenario. Traffic default values were defined inside VSPERF code and it was not possible to change them. This patch introduces new TRAFFIC dictionary inside 03_traffic.conf. Thus user can modify any of TRAFFIC values either in configuration file or by CLI or by 'Parameters' section of testcase definition. Following CLI options were obsoleted by this patch: 'bidirectional', 'traffic_type', 'iload', 'multistream', 'stream_type' and 'pre-installed_flows' Following CLI option was renamed to be consistent with other options: 'tunnel_type' => 'TUNNEL_TYPE' Following sections of testcase definition were obsoleted: "Traffic Type", "biDirectional", "MultiStream", "Stream Type", "Pre-installed Flows", "Flow Type" and "iLoad" New TRAFFIC dictionary should be used instead of old CLI options and old testcase definition sections. Testcase definitons, yardstick sample testcases and documentation were updated to reflect configuration changes. JIRA: VSPERF-433 Change-Id: I03a388c766491d5688e715f6d7b51e8e0377ec27 Signed-off-by: Martin Klozik Reviewed-by: Al Morton Reviewed-by: Christian Trautman Reviewed-by: Bill Michalowski Reviewed-by: Antonio Fischetti Reviewed-by: --- tools/pkt_gen/moongen/moongen.py | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) (limited to 'tools/pkt_gen/moongen') diff --git a/tools/pkt_gen/moongen/moongen.py b/tools/pkt_gen/moongen/moongen.py index 7fd67661..9d604db2 100644 --- a/tools/pkt_gen/moongen/moongen.py +++ b/tools/pkt_gen/moongen/moongen.py @@ -28,19 +28,17 @@ import subprocess # VSPerf imports from conf import settings +from conf import merge_spec from core.results.results_constants import ResultsConstants -from tools.pkt_gen.trafficgen.trafficgenhelper import ( - TRAFFIC_DEFAULTS, - merge_spec) from tools.pkt_gen.trafficgen.trafficgen import ITrafficGenerator class Moongen(ITrafficGenerator): """Moongen Traffic generator wrapper.""" - _traffic_defaults = TRAFFIC_DEFAULTS.copy() _logger = logging.getLogger(__name__) def __init__(self): """Moongen class constructor.""" + super().__init__() self._logger.info("In moongen __init__ method") self._params = {} self._moongen_host_ip_addr = ( @@ -57,18 +55,6 @@ class Moongen(ITrafficGenerator): 'MOONGEN: Invalid line speed in configuration ' + \ 'file (today 10Gbps supported)') - @property - def traffic_defaults(self): - """Default traffic values. - - These can be expected to be constant across traffic generators, - so no setter is provided. Changes to the structure or contents - will likely break traffic generator implementations or tests - respectively. - """ - self._logger.info("In Moongen traffic_defaults method") - return self._traffic_defaults - def create_moongen_cfg_file(self, traffic, duration=60, acceptable_loss_pct=1, one_shot=0): """Create the Moongen configuration file from VSPERF's traffic profile -- cgit 1.2.3-korg