[dts] [PATCH V2]framework/pktgen_base: fix rfc2544 return value missing zero
yufengmx
yufengx.mo at intel.com
Mon Aug 26 03:18:53 CEST 2019
loss rate
fix rfc2544 return value missing zero loss rate.
Signed-off-by: yufengmx <yufengx.mo at intel.com>
---
framework/pktgen_base.py | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/framework/pktgen_base.py b/framework/pktgen_base.py
index e9d3fcb..06ad738 100644
--- a/framework/pktgen_base.py
+++ b/framework/pktgen_base.py
@@ -256,20 +256,20 @@ class PacketGenerator(object):
def measure_rfc2544(self, stream_ids=[], options={}):
""" check loss rate with rate percent dropping """
loss_rate_table = []
- rate_percent = float(100)
+ rate_percent = options.get('rate') or float(100)
permit_loss_rate = options.get('pdr') or 0
self.logger.info("allow loss rate: %f " % permit_loss_rate)
rate_step = options.get('drop_step') or 1
result = self._measure_loss(stream_ids, options)
status = self._check_loss_rate(result, permit_loss_rate)
- loss_rate_table.append(
- [options.get('rate') or rate_percent, result])
+ loss_rate_table.append([rate_percent, result])
# if first time loss rate is ok, ignore left flow
if status:
# return data is the same with dts/etgen format
# In fact, multiple link peer have multiple loss rate value,
# here only pick one
- return result.values()[0]
+ tx_num, rx_num = result.values()[0][1:]
+ return rate_percent, tx_num, rx_num
_options = deepcopy(options)
while not status and rate_percent > 0:
rate_percent = rate_percent - rate_step
@@ -288,7 +288,10 @@ class PacketGenerator(object):
# use last result as return data to keep the same with dts/etgen format
# In fact, multiple link peer have multiple loss rate value,
# here only pick one
- return loss_rate_table[-1][1].values()[0]
+ last_result = loss_rate_table[-1]
+ rate_percent = last_result[0]
+ tx_num, rx_num = last_result[1].values()[0][1:]
+ return rate_percent, tx_num, rx_num
def measure_rfc2544_with_pps(self, stream_ids=[], options={}):
"""
--
1.9.3
More information about the dts
mailing list