X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=nfvbench%2Ftraffic_gen%2Ftraffic_base.py;h=81537b32721000a0a43a1a124335286fa227a683;hb=5d582aada32e1c5f43601015660b7936013f5b30;hp=c2ac8d0bf279e0b0debe22905b6cb03aa2096707;hpb=34c00544f7f7dbfa49bbdcd83eca2936b60826c7;p=nfvbench.git diff --git a/nfvbench/traffic_gen/traffic_base.py b/nfvbench/traffic_gen/traffic_base.py index c2ac8d0..81537b3 100644 --- a/nfvbench/traffic_gen/traffic_base.py +++ b/nfvbench/traffic_gen/traffic_base.py @@ -23,19 +23,12 @@ class TrafficGeneratorException(Exception): class AbstractTrafficGenerator(object): - # src_mac (6) + dst_mac (6) + mac_type (2) + frame_check (4) = 18 - l2_header_size = 18 - - imix_l2_sizes = [64, 594, 1518] - imix_l3_sizes = [size - l2_header_size for size in imix_l2_sizes] - imix_ratios = [7, 4, 1] - imix_avg_l2_size = sum( - [1.0 * imix[0] * imix[1] for imix in zip(imix_l2_sizes, imix_ratios)]) / sum(imix_ratios) - - traffic_utils.imix_avg_l2_size = imix_avg_l2_size - def __init__(self, config): self.config = config + self.imix_l2_sizes = [64, 594, 1518] + self.imix_ratios = [7, 4, 1] + self.imix_avg_l2_size = 0 + self.adjust_imix_min_size(64) @abc.abstractmethod def get_version(self): @@ -96,3 +89,11 @@ class AbstractTrafficGenerator(object): def cleanup(self): # Must be implemented by sub classes return None + + def adjust_imix_min_size(self, min_size): + # assume the min size is always the first entry + self.imix_l2_sizes[0] = min_size + self.imix_avg_l2_size = sum( + [1.0 * imix[0] * imix[1] for imix in zip(self.imix_l2_sizes, self.imix_ratios)]) / sum( + self.imix_ratios) + traffic_utils.imix_avg_l2_size = self.imix_avg_l2_size