diff --git a/web/pingallm.py b/web/pingallm.py
new file mode 100755
index 0000000..e377a55
--- /dev/null
+++ b/web/pingallm.py
@@ -0,0 +1,61 @@
+#! /usr/bin/env python
+import sys
+import time
+import os
+
+hosts=['onosdevz1', 'onosdevz2', 'onosdevz3', 'onosdevz4', 'onosdevz5', 'onosdevz6', 'onosdevz7', 'onosdevz8']
+filename = sys.argv[1]
+
+ping_cnt=3
+wait=ping_cnt
+
+os.popen("rm -f /tmp/ping*")
+
+f = open(filename, 'r')
+nr_ping = 0
+for line in f:
+  if line[0] != "#":
+    fid=int(line.strip().split()[0])
+    src_dpid=line.strip().split()[2]
+    dst_dpid=line.strip().split()[4]
+    src_nwid=int(src_dpid.split(':')[-2], 16)
+    dst_nwid=int(dst_dpid.split(':')[-2], 16)
+    src_hostid=int(src_dpid.split(':')[-1], 16)
+    dst_hostid=int(dst_dpid.split(':')[-1], 16)
+    cmd="echo \"192.168.%d.%d -> 192.168.%d.%d\" > /tmp/ping.%d" % (src_nwid, src_hostid, dst_nwid, dst_hostid,fid)
+    os.popen(cmd)
+    cmd="ssh %s \'${HOME}/ONOS/test-network/mininet/mrun host%d \'ping -c %d -W 1 192.168.%d.%d\'\' >> /tmp/ping.%d 2>&1 &" % (hosts[src_nwid-1], src_hostid, ping_cnt, dst_nwid, dst_hostid,fid)
+#    print cmd
+    result = os.popen(cmd).read()
+    time.sleep(0.2)
+    nr_ping = nr_ping + 1
+
+print "waiting for ping(s) to finish (%d sec)" % (wait)
+time.sleep(wait)
+cmd="cat /tmp/ping.* | grep loss |wc -l"
+wait_cnt=0
+while 1:
+  nr_done = int(os.popen(cmd).read())
+  if nr_done == nr_ping or wait_cnt > 10:
+    break
+  print "%d ping finished" % nr_done
+  time.sleep(1)
+  wait_cnt += 1
+
+cmd='cat /tmp/ping.* | grep " 0% packet loss" |wc -l'
+nr_success = int(os.popen(cmd).read())
+
+if nr_success != nr_ping:
+  print "fail: %d ping(s) failed (finished %d total %d)" % (nr_done - nr_success, nr_done, nr_ping)
+else:
+  print "success: all %d ping(s) got through" % (nr_success)
+
+for i in range(nr_ping):
+  cmd="cat /tmp/ping.%d | grep loss | awk '{print $6}'" % (i+1)
+  cmd2="cat /tmp/ping.%d | head -n 1" % (i+1)
+  result = os.popen(cmd).read().strip()
+  result2 = os.popen(cmd2).read().strip()
+  if result != "0%":
+    print "flow # %d fail (%s)" % (i+1, result2)
+
+f.close()
