Reverting to 2 switch topo and adding traffic gen script

Change-Id: Ie6da61bb393290762f3a794f450ae798e9cff552
diff --git a/tools/test/tests/tofino-traffic-demo.lua b/tools/test/tests/tofino-traffic-demo.lua
new file mode 100644
index 0000000..c5a3ec1
--- /dev/null
+++ b/tools/test/tests/tofino-traffic-demo.lua
@@ -0,0 +1,106 @@
+package.path = package.path ..";?.lua;test/?.lua;app/?.lua;"
+
+-- Demo for Tofino/ONOS at Layer 123 
+
+pktgen.screen("off");
+pktgen.pause("Starting traffic generator...\n", 1000);
+
+-- 'set' commands for a number of per port values
+pktgen.set("all", "count",   0);
+pktgen.set("all", "rate",    100);
+pktgen.set("all", "size",    1518);
+pktgen.set("all", "burst",   64);
+pktgen.set("all", "sport",   1234);
+pktgen.set("all", "dport",   5678);
+pktgen.set("all", "prime",   1);
+pktgen.set("all", "seq_cnt", 1);
+
+pktgen.set_type("all", "ipv4");
+pktgen.set_proto("all", "udp");
+
+pktgen.set_ipaddr("0", "dst", "10.0.0.2");
+pktgen.set_ipaddr("0", "src", "10.0.0.1/8");
+pktgen.set_ipaddr("1", "dst", "10.0.0.1");
+pktgen.set_ipaddr("1", "src", "10.0.0.2/8");
+
+-- Wait for links to come up
+
+printf("\nInitializing links ");
+up = false
+for i=1,5 do
+  -- this does not seem to be reliably updated between runs
+  s = pktgen.linkState("all");
+  if s["n"] == 2 and s[0] ~= "<--Down-->" and s[1] ~= "<--Down-->" then
+    up = true
+    break
+  end
+  printf(".");
+  pktgen.delay(2000);
+end
+if up then
+  printf(" SUCCESS!\n");
+else
+  printf(" Continuing...\n");
+end
+pktgen.linkState("all");
+pktgen.delay(3000);
+
+
+-- Send gratuitous arps
+
+printf("Sending gratuitous ARPs for host discovery...", i);
+for i=1,10 do 
+  pktgen.send_arp("all", "g");
+  pktgen.delay(100);
+end
+pktgen.delay(2000);
+printf(" DONE\n");
+
+-- Initialize the traffic using range command
+pktgen.pause("Initializing traffic...\n", 2000);
+
+pktgen.page("range");
+pktgen.src_ip("0", "start", "10.1.0.1");
+pktgen.src_ip("0", "min",   "10.1.0.0");
+pktgen.src_ip("0", "max",   "10.1.255.255");
+pktgen.src_ip("0", "inc",   "0.0.1.0");
+
+pktgen.dst_ip("0", "start", "10.0.0.2");
+pktgen.dst_ip("0", "min",   "10.0.0.2");
+pktgen.dst_ip("0", "max",   "10.0.0.2");
+pktgen.dst_ip("0", "inc",   "0.0.0.0");
+
+pktgen.src_ip("1", "start", "10.2.0.1");
+pktgen.src_ip("1", "min",   "10.2.0.0");
+pktgen.src_ip("1", "max",   "10.2.255.255");
+pktgen.src_ip("1", "inc",   "0.0.1.0");
+
+pktgen.dst_ip("1", "start", "10.0.0.1");
+pktgen.dst_ip("1", "min",   "10.0.0.1");
+pktgen.dst_ip("1", "max",   "10.0.0.1");
+pktgen.dst_ip("1", "inc",   "0.0.0.0");
+
+pktgen.dst_port("all", "start", 1234);
+pktgen.dst_port("all", "inc", 4);
+pktgen.dst_port("all", "min", 1234);
+pktgen.dst_port("all", "max", 2345);
+
+pktgen.src_port("all", "start", 5678);
+pktgen.src_port("all", "inc", 5);
+pktgen.src_port("all", "min", 1234);
+pktgen.src_port("all", "max", 9999);
+
+pktgen.pkt_size("all", "start", 1518);
+pktgen.pkt_size("all", "min", 1518);
+pktgen.pkt_size("all", "max", 1518);
+pktgen.pkt_size("all", "inc", 0);
+
+pktgen.delay(2000);
+
+pktgen.page("0");
+pktgen.set_range("all", "on");
+pktgen.screen("on");
+
+-- Start traffic
+pktgen.pause("Starting traffic...\n", 1000);
+pktgen.start(0);