diff options
author | Sridhar Rao <sridhar.rao@spirent.com> | 2021-10-01 02:44:43 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2021-10-01 02:44:43 +0000 |
commit | 467a22c1c2cbfc3c4a8448b7170d84dc26d658ec (patch) | |
tree | 590f6e7fb7fbbd2c6c0dd7e3fd7864234da3f17c /tools/pkt_gen/prox/templates/params-vineperf.lua.j2 | |
parent | 17e20bfa70d1a9ce5e6ee6687245e3e22f3633a8 (diff) | |
parent | 48f947e94e36e877aa6889e10cda0bbdcd573ef4 (diff) |
Merge "Integrating DPPD-Prox with Vineperf"
Diffstat (limited to 'tools/pkt_gen/prox/templates/params-vineperf.lua.j2')
-rw-r--r-- | tools/pkt_gen/prox/templates/params-vineperf.lua.j2 | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/tools/pkt_gen/prox/templates/params-vineperf.lua.j2 b/tools/pkt_gen/prox/templates/params-vineperf.lua.j2 new file mode 100644 index 00000000..b389a51a --- /dev/null +++ b/tools/pkt_gen/prox/templates/params-vineperf.lua.j2 @@ -0,0 +1,79 @@ +function convertIPToHex(ip) + local address_chunks = {} + if type(ip) ~= "string" then + print ("IP ADDRESS ERROR: ", ip) + return "IP ADDRESS ERROR" + end + + local chunks = {ip:match("^(%d+)%.(%d+)%.(%d+)%.(%d+)(\/%d+)$")} + if #chunks == 5 then + for i,v in ipairs(chunks) do + if i < 5 then + if tonumber(v) > 255 then + print ("IPV4 ADDRESS ERROR: ", ip) + return "IPV4 ADDRESS ERROR" + end + address_chunks[#address_chunks + 1] = string.format ("%02x", v) + end + end + result = table.concat(address_chunks, " ") + print ("Hex IPV4: ", result) + return result + end + + local chunks = {ip:match("^(%d+)%.(%d+)%.(%d+)%.(%d+)$")} + if #chunks == 4 then + for i,v in ipairs(chunks) do + if tonumber(v) > 255 then + print ("IPV4 ADDRESS ERROR: ", ip) + return "IPV4 ADDRESS ERROR" + end + address_chunks[#address_chunks + 1] = string.format ("%02x", v) + end + result = table.concat(address_chunks, " ") + print ("Hex IPV4: ", result) + return result + end + + delimiter = ":" + for match in (ip..delimiter):gmatch("(.-)"..delimiter) do + if match ~= "" then + number = tonumber(match, 16) + if number <= 65535 then + table.insert(address_chunks, string.format("%02x %02x",number/256,number % 256)) + end + else + table.insert(address_chunks, "") + end + end + for i, chunk in ipairs(address_chunks) do + if chunk =="" then + table.remove(address_chunks, i) + for j = 1,(8-#address_chunks) do + table.insert(address_chunks, i, "00 00") + end + break + end + end + result = table.concat(address_chunks, " ") + print ("Hex IPV6: ", result) + return result +end + +eal="--socket-mem=256,0 --file-prefix Generator -w {{data.pci1}} -w {{data.pci2}}" +name="Generator" +local_ip1={{data.local_ip1|tojson}} +local_hex_ip1=convertIPToHex(local_ip1) +local_ip2={{data.local_ip2|tojson}} +local_hex_ip2=convertIPToHex(local_ip2) +mcore={{data.mcore|tojson}} +dest_ip1={{data.local_ip2|tojson}} +dest_hex_ip1=convertIPToHex(dest_ip1) +dest_hex_mac2={{data.mac1|tojson}} +dest_ip2={{data.local_ip1|tojson}} +dest_hex_ip2=convertIPToHex(dest_ip2) +dest_hex_mac1={{data.mac2|tojson}} +gencores={{data.gencores|tojson}} +latcores={{data.latcores|tojson}} +bucket_size_exp={{data.latency_buckets|tojson}} +heartbeat="60" |