UDP iperf working
diff --git a/scripts/runiperf.sh b/scripts/runiperf.sh
index 9d40c98..ec903e3 100755
--- a/scripts/runiperf.sh
+++ b/scripts/runiperf.sh
@@ -2,30 +2,50 @@
import sys
import os
+# Usage: flowid src_dpid dst_dpid params
def usage():
- print "%s flowid src_dpid src_port dst_dpid dst_port duration samples" % sys.argv[0]
+ print "%s flowid src_dpid dst_dpid svr|client <proto>/<duration>/<interval>/<samples>" % sys.argv[0]
sys.exit()
def main():
flowid = sys.argv[1]
src_dpid = sys.argv[2]
- dst_dpid = sys.argv[4]
- duration=int(sys.argv[6])
- samples=int(sys.argv[7])
+ dst_dpid = sys.argv[3]
+ server = sys.argv[4].upper()[0]
+ params = sys.argv[5].split('/')
+ proto = params[0]
+ duration = params[1]
+ interval = params[2]
+ samples = params[3]
+
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)
- # /home/ubuntu/ONOS/web/scripts/iperf -t%s -i0.1 -yJ -o /tmp/iperf_%s.out -c 127.0.0.1 &
- cmd="ssh -o StrictHostKeyChecking=no 1.1.%d.1 '/home/ubuntu/ONOS/scripts/iperf -t %s -i0.1 -k %d -yJ -o /home/ubuntu/ONOS/web/log/iperf_%s.out -c 192.168.%d.%d 2>&1 &' &" % (src_hostid, duration, samples, flowid, dst_nwid, dst_hostid)
- killcmd='pkill -KILL -f \"iperf .* -o .*/iperf_%s.out\"' % (flowid)
- print killcmd
- print cmd
- os.popen(killcmd)
- os.popen(cmd)
+
+ if (proto == "tcp"):
+ cmd="ssh -o StrictHostKeyChecking=no 1.1.%d.1 '/home/ubuntu/ONOS/scripts/iperf -t%s -i%s -k%s -yJ -o /home/ubuntu/ONOS/web/log/iperf_%s.out -c 192.168.%d.%d 2>&1 &' &" % (src_hostid, duration, interval, samples, flowid, dst_nwid, dst_hostid)
+ killcmd='pkill -KILL -f \"iperf .* -o .*/iperf_%s.out\"' % (flowid)
+ print killcmd
+ print cmd
+ os.popen(killcmd)
+ os.popen(cmd)
+ else:
+ if (server == 'S'):
+ cmd="ssh -o StrictHostKeyChecking=no 1.1.%d.1 '/home/ubuntu/ONOS/scripts/iperf -us -i%s -k%s -yJ -o /home/ubuntu/ONOS/web/log/iperfsvr_%s.out 2>&1 &' &" % (dst_hostid, interval, samples, flowid)
+ killcmd='pkill -KILL -f \"iperf .* -o .*/iperfsvr_%s.out\"' % (flowid)
+ print killcmd
+ print cmd
+ else:
+ cmd="ssh -o StrictHostKeyChecking=no 1.1.%d.1 '/home/ubuntu/ONOS/scripts/iperf -u -t%s -i%s -k%s -yJ -o /home/ubuntu/ONOS/web/log/iperfclient_%s.out -c 192.168.%d.%d 2>&1 &' &" % (src_hostid, duration, interval, samples, flowid, dst_nwid, dst_hostid)
+ killcmd='pkill -KILL -f \"iperf .* -o .*/iperfclient_%s.out\"' % (flowid)
+ print killcmd
+ print cmd
+ os.popen(killcmd)
+ os.popen(cmd)
if __name__ == "__main__":
- if len(sys.argv) != 8:
+ if len(sys.argv) != 6:
print len(sys.argv)
usage()