sys.stdout.flush()
def setup(self):
- self.specs.set_run_spec(self.config_plugin.get_run_spec(self.specs.openstack))
+ self.specs.set_run_spec(self.config_plugin.get_run_spec(self.config, self.specs.openstack))
self.chain_runner = ChainRunner(self.config,
self.clients,
self.cred,
try:
self.update_config(opts)
self.setup()
-
+ new_frame_sizes = []
+ min_packet_size = "68" if self.config.vlan_tagging else "64"
+ for frame_size in self.config.frame_sizes:
+ try:
+ if int(frame_size) < int(min_packet_size):
+ new_frame_sizes.append(min_packet_size)
+ LOG.info("Adjusting frame size %s Bytes to minimum size %s Bytes due to "
+ + "traffic generator restriction", frame_size, min_packet_size)
+ else:
+ new_frame_sizes.append(frame_size)
+ except ValueError:
+ new_frame_sizes.append(frame_size)
+ self.config.frame_sizes = tuple(new_frame_sizes)
result = {
"date": datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'),
"nfvbench_version": __version__,
self.config.duration_sec = float(self.config.duration_sec)
self.config.interval_sec = float(self.config.interval_sec)
+ # Get traffic generator profile config
+ if not self.config.generator_profile:
+ self.config.generator_profile = self.config.traffic_generator.default_profile
+
+ generator_factory = TrafficGeneratorFactory(self.config)
+ self.config.generator_config = \
+ generator_factory.get_generator_config(self.config.generator_profile)
+
# Check length of mac_addrs_left/right for serivce_chain EXT with no_arp
if self.config.service_chain == ChainType.EXT and self.config.no_arp:
if not (self.config.generator_config.mac_addrs_left is None and
b=len(self.config.generator_config.mac_addrs_right),
c=self.config.service_chain_count))
- # Get traffic generator profile config
- if not self.config.generator_profile:
- self.config.generator_profile = self.config.traffic_generator.default_profile
-
- generator_factory = TrafficGeneratorFactory(self.config)
- self.config.generator_config = \
- generator_factory.get_generator_config(self.config.generator_profile)
-
if not any(self.config.generator_config.pcis):
raise Exception("PCI addresses configuration for selected traffic generator profile "
"({tg_profile}) are missing. Please specify them in configuration file."
opts, unknown_opts = parse_opts_from_cli()
log.set_level(debug=opts.debug)
- # setup the fluent logger as soon as possible right after the config plugin is called,
- # if there is any logging or result tag is set then initialize the fluent logger
- for fluentd in config.fluentd:
- if fluentd.logging_tag or fluentd.result_tag:
- fluent_logger = FluentLogHandler(config.fluentd)
- LOG.addHandler(fluent_logger)
- break
-
if opts.version:
print pbr.version.VersionInfo('nfvbench').version_string_with_vcs()
sys.exit(0)
LOG.info('Loading configuration string: %s', opts.config)
config = config_loads(opts.config, config, whitelist_keys)
+ # setup the fluent logger as soon as possible right after the config plugin is called,
+ # if there is any logging or result tag is set then initialize the fluent logger
+ for fluentd in config.fluentd:
+ if fluentd.logging_tag or fluentd.result_tag:
+ fluent_logger = FluentLogHandler(config.fluentd)
+ LOG.addHandler(fluent_logger)
+ break
+
# traffic profile override options
override_custom_traffic(config, opts.frame_sizes, opts.unidir)