summaryrefslogtreecommitdiffstats
path: root/nfvbench/traffic_server.py
diff options
context:
space:
mode:
Diffstat (limited to 'nfvbench/traffic_server.py')
-rw-r--r--nfvbench/traffic_server.py34
1 files changed, 33 insertions, 1 deletions
diff --git a/nfvbench/traffic_server.py b/nfvbench/traffic_server.py
index c3d4d14..df0a3be 100644
--- a/nfvbench/traffic_server.py
+++ b/nfvbench/traffic_server.py
@@ -63,7 +63,39 @@ class TRexTrafficServer(TrafficServer):
result = """# Config generated by NFVbench
- port_limit : 2
version : 2
- interfaces : [{ifs}]""".format(ifs=ifs)
+ zmq_pub_port : {zmq_pub_port}
+ zmq_rpc_port : {zmq_rpc_port}
+ prefix : {prefix}
+ limit_memory : {limit_memory}
+ interfaces : [{ifs}]""".format(zmq_pub_port=generator_config.zmq_pub_port,
+ zmq_rpc_port=generator_config.zmq_rpc_port,
+ prefix=generator_config.name,
+ limit_memory=generator_config.limit_memory,
+ ifs=ifs)
+ if hasattr(generator_config, 'platform'):
+ if generator_config.platform.master_thread_id \
+ and generator_config.platform.latency_thread_id:
+ platform = """
+ platform :
+ master_thread_id : {master_thread_id}
+ latency_thread_id : {latency_thread_id}
+ dual_if:""".format(master_thread_id=generator_config.platform.master_thread_id,
+ latency_thread_id=generator_config.platform.latency_thread_id)
+ result += platform
+
+ for core in generator_config.platform.dual_if:
+ threads = ""
+ try:
+ threads = ",".join([repr(thread) for thread in core.threads])
+ except TypeError:
+ LOG.warn("No threads defined for socket %s", core.socket)
+ core_result = """
+ - socket : {socket}
+ threads : [{threads}]""".format(socket=core.socket, threads=threads)
+ result += core_result
+ else:
+ LOG.info("Generator profile 'platform' sub-properties are set but not filled in \
+ config file. TRex will use default values.")
yaml.safe_load(result)
if os.path.exists(filename):