aboutsummaryrefslogtreecommitdiffstats
path: root/tools/pkt_gen/prox/templates/params-vineperf.lua.j2
diff options
context:
space:
mode:
authorSridhar K. N. Rao <sridhar.rao@spirent.com>2021-08-04 17:10:27 +0530
committerAl Morton <acm@research.att.com>2021-09-29 21:33:46 +0000
commit48f947e94e36e877aa6889e10cda0bbdcd573ef4 (patch)
tree29b044162e9d7534f0b42746b26aa42955332917 /tools/pkt_gen/prox/templates/params-vineperf.lua.j2
parent220aed1de03317d1ad6f3ebbec9f6b93e44522c7 (diff)
Integrating DPPD-Prox with Vineperf
This patch adds Integration of DPPD-Prox with Vineperf Added: 1. Results analysis - bug-fix 2. Restrict to baremetal for this patch. 3. Fix Pylint errors. 4. Copy Rapid private key too. 5. Remove SSH key. Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com> Change-Id: I3ea7e6261e3fab06ef829f22153fe247372fc34b
Diffstat (limited to 'tools/pkt_gen/prox/templates/params-vineperf.lua.j2')
-rw-r--r--tools/pkt_gen/prox/templates/params-vineperf.lua.j279
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"