-
Notifications
You must be signed in to change notification settings - Fork 32
ICMP6Ping
This test module implements a simple IPv6 ping test and it provides a basic interface to the ping6 application. The test module translates provided options and their values into the corresponding ping6 shell command. It can be used to easily test IPv6 connectivity between two machines.
This test module accepts these options:
addr |
expects an IPv6 address or a hostname that can be translated to one. This is the target address of the ping6 command. This option is mandatory. |
iface |
specifies the interface from which the Icmp requests will be sent. Represents the parameter -I of the ping6 command. |
count |
expects an integer value of how mane Icmp requests should be sent. Represents the parameter -c of the ping6 command. |
interval |
specifies the interval between individual requests. Represents the parameter -i of the ping6 command. |
size |
specifies the number of data bytes to be sent. Represents the parameter -s of the ping6 command. |
limit_rate |
specifies the percentage of requests that need to receive a response in order for the test to be successful. Default value is 80%. |
To use this test modify the option values, of the following command, to suit your test environment and add it to your command sequence.
<run module="Icmp6Ping" host="testmachine1">
<options>
<option name="addr" value="{ip(testmachine2,testifc2)}"/>
<option name="count" value="40"/>
<option name="interval" value="0"/>
</options>
</run>
Given the options described in the previous section the test module will execute the constructed ping6 command on a specified slave machine. The result of the test is determined by the amount of responses received. The limit of how much is considered a success is specified by the option limit_rate, if the rate is higher that the limit the test was successful, otherwise it will fail.
By displaying the debug logs you will get the command and its output as well as the information about achieved transmit rate.
An example output of this command, with debug logs enabled, will look like this:
2013-09-18 14:59:09 (127.0.0.1) INFO: Executing command: [type(test), module(Icmp6Ping), machine(1), timeout(30)]
2013-09-18 14:59:09 (127.0.0.1) DEBUG: Setting timeout to "30"
2013-09-18 14:59:08 (192.168.122.12) DEBUG: Running command with pid "1538"
2013-09-18 14:59:08 (192.168.122.12) DEBUG: ping6 fd22:f4c5:2f9e:8765::2 -c 40 -i 0.2
2013-09-18 14:59:08 (192.168.122.12) DEBUG: Executing: "ping6 fd22:f4c5:2f9e:8765::2 -c 40 -i 0.2"
2013-09-18 14:59:18 (192.168.122.12) DEBUG:
Stdout:
----------------------------
PING fd22:f4c5:2f9e:8765::2(fd22:f4c5:2f9e:8765::2) 56 data bytes
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=6 ttl=64 time=975 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=7 ttl=64 time=0.460 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=8 ttl=64 time=0.638 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=9 ttl=64 time=0.721 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=10 ttl=64 time=0.401 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=11 ttl=64 time=0.567 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=12 ttl=64 time=0.576 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=13 ttl=64 time=0.617 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=14 ttl=64 time=0.690 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=15 ttl=64 time=0.523 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=16 ttl=64 time=0.519 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=17 ttl=64 time=0.693 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=18 ttl=64 time=0.742 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=19 ttl=64 time=0.685 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=20 ttl=64 time=0.531 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=21 ttl=64 time=0.725 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=22 ttl=64 time=0.641 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=23 ttl=64 time=0.529 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=24 ttl=64 time=0.529 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=25 ttl=64 time=0.483 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=26 ttl=64 time=0.550 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=27 ttl=64 time=0.584 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=28 ttl=64 time=0.763 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=29 ttl=64 time=0.490 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=30 ttl=64 time=0.522 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=31 ttl=64 time=0.727 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=32 ttl=64 time=0.568 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=33 ttl=64 time=0.716 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=34 ttl=64 time=0.650 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=35 ttl=64 time=0.465 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=36 ttl=64 time=0.570 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=37 ttl=64 time=0.623 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=38 ttl=64 time=0.682 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=39 ttl=64 time=0.687 ms
64 bytes from fd22:f4c5:2f9e:8765::2: icmp_seq=40 ttl=64 time=0.402 ms
--- fd22:f4c5:2f9e:8765::2 ping statistics ---
40 packets transmitted, 35 received, 12% packet loss, time 8661ms
rtt min/avg/max/mdev = 0.401/28.439/975.121/162.354 ms
----------------------------
2013-09-18 14:59:18 (192.168.122.12) DEBUG: Transmitted "40", received "35", rate "88%", limit_rate "80%"
2013-09-18 14:59:19 (192.168.122.12) DEBUG: rtt min "0.401", avg "28.439", max "975.121", mdev "162.354"
2013-09-18 14:59:20 (127.0.0.1) INFO: Result: PASS
2013-09-18 14:59:20 (127.0.0.1) INFO: Result data:
2013-09-18 14:59:20 (127.0.0.1) INFO: limit_rate: 80
2013-09-18 14:59:20 (127.0.0.1) INFO: rtt_min: 0.401
2013-09-18 14:59:20 (127.0.0.1) INFO: rate: 88
2013-09-18 14:59:20 (127.0.0.1) INFO: rtt_max: 975.121