Lines Matching +full:loss +full:- +full:of +full:- +full:signal
2 # SPDX-License-Identifier: GPL-2.0
10 import signal
35 # of the TCP transport.
72 parser.add_argument("-d", "--logdir", action="store",
74 parser.add_argument('--timeout', help="timeout to terminate hung test",
76 parser.add_argument('-l', '--loss', help="Simulate tcp packet loss",
78 parser.add_argument('-c', '--corruption', help="Simulate tcp packet corruption",
80 parser.add_argument('-u', '--duplicate', help="Simulate tcp packet duplication",
84 packet_loss=str(args.loss)+'%'
108 ip(f"-n {net0} addr add {addrs[0][0]}/32 dev {veth0}")
109 ip(f"-n {net1} addr add {addrs[1][0]}/32 dev {veth1}")
112 ip(f"-n {net0} route add {addrs[1][0]}/32 dev {veth0}")
113 ip(f"-n {net1} route add {addrs[0][0]}/32 dev {veth1}")
117 ip(f"netns exec {net0} ping -c 1 {addrs[1][0]}")
126 ip(f"netns exec {net} /usr/sbin/tcpdump -Z {user} -i any -w {pcap}")
129 # simulate packet loss, duplication and corruption
132 corrupt {packet_corruption} loss {packet_loss} duplicate \
137 signal.alarm(args.timeout)
138 signal.signal(signal.SIGALRM, signal_handler)
178 f'packet {nr_send}'.encode('utf-8')).hexdigest().encode('utf-8')
180 # pseudo-random send/receive pattern
182 receiver = sockets[1 - (nr_send % 3) % 2]
187 hashlib.sha256()).update(f'<{send_data}>'.encode('utf-8'))
209 f'<{recv_data}>'.encode('utf-8'))
245 subprocess.check_call(['killall', '-q', 'tcpdump'])