From: Yichen Wang Date: Fri, 21 Jun 2019 00:06:28 +0000 (-0700) Subject: [NFVBENCH-137] NFVbench generates wrong L4 checksums for VxLAN traffic X-Git-Tag: 3.4.1 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=31da7f513c4aa5fccc2d63df1cf6a200c3bcada9;p=nfvbench.git [NFVBENCH-137] NFVbench generates wrong L4 checksums for VxLAN traffic Change-Id: Id0197f1f2ae0022a6e94755ab0b9fbfc434d5b8b Signed-off-by: Yichen Wang --- diff --git a/nfvbench/traffic_gen/trex_gen.py b/nfvbench/traffic_gen/trex_gen.py index eb6066c..989940a 100644 --- a/nfvbench/traffic_gen/trex_gen.py +++ b/nfvbench/traffic_gen/trex_gen.py @@ -349,11 +349,14 @@ class TRex(AbstractTrafficGenerator): src_fv, STLVmWrFlowVar(fv_name="ip_src", pkt_offset="IP:{}.src".format(encap_level)), dst_fv, - STLVmWrFlowVar(fv_name="ip_dst", pkt_offset="IP:{}.dst".format(encap_level)), - STLVmFixChecksumHw(l3_offset="IP:{}".format(encap_level), - l4_offset="UDP:{}".format(encap_level), - l4_type=CTRexVmInsFixHwCs.L4_TYPE_UDP) + STLVmWrFlowVar(fv_name="ip_dst", pkt_offset="IP:{}.dst".format(encap_level)) ]) + + for encap in range(int(encap_level), -1, -1): + # Fixing the checksums for all encap levels + vm_param.append(STLVmFixChecksumHw(l3_offset="IP:{}".format(encap), + l4_offset="UDP:{}".format(encap), + l4_type=CTRexVmInsFixHwCs.L4_TYPE_UDP)) pad = max(0, frame_size - len(pkt_base)) * 'x' return STLPktBuilder(pkt=pkt_base / pad, vm=STLScVmRaw(vm_param))