X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=qaapi%2Fqa%2Ftests%2Fslice%2Fping.pl;fp=qaapi%2Fqa%2Ftests%2Fslice%2Fping.pl;h=bbc4b583b8e7731360a4c0b49c98237c9b05120e;hb=052bd3545a4bcef3016c14e8756039d56fd53d22;hp=0000000000000000000000000000000000000000;hpb=0e37028e4ef351e1fe9b3b8bd20335afcd9b733e;p=tests.git diff --git a/qaapi/qa/tests/slice/ping.pl b/qaapi/qa/tests/slice/ping.pl new file mode 100755 index 0000000..bbc4b58 --- /dev/null +++ b/qaapi/qa/tests/slice/ping.pl @@ -0,0 +1,40 @@ +#!/usr/bin/perl + +# Module: VNET+ +# Description: Generate ping packets and count the responses +# Author: sapanb@cs.princeton.edu + +use strict; +use threads; + +#please change to something local +my $guineapig='planetlab-1.cs.princeton.edu'; +my $numiter=1000; + +sub run { + system("ping -c $numiter -i 0.1 $guineapig"); + } + + +sub open_tcpdump { + my $filter="icmp and src $guineapig"; + my $cmdline="/usr/sbin/tcpdump -c $numiter $filter"; + + system($cmdline); +} + +sub alhandler { + print "[FAILED] tcpdump apparently did not intercept all SYN/ACK packets\n"; + exit(-1); +} + +print "Starting tcpdump...\n"; +my $tcpdthr=threads->create(\&open_tcpdump); +sleep 10; +print "Generating connections...\n"; +run; +$SIG{ALRM}=\&alhandler; +alarm(60); + +$tcpdthr->join; +print "[SUCCESS] Test completed OK.\n";