Я пытаюсь запустить стресс-тест пропускной способности с машины, имеющей несколько интерфейсов Ethernet, на другую машину с таким же количеством интерфейсов Ethernet. Например.
machine1.ethA.192.168.1.1 <-> 192.168.1.255.ethA.machine2
machine1.ethB.192.168.1.2 <-> 192.168.1.254.ethB.machine2
machine1.ethC.192.168.1.3 <-> 192.168.1.253.ethC.machine2
Изначально я надеялся запустить один сервер iperf3 на машине 2, а затем запустить три клиента iperf3 на машине 1 по следующей схеме:
Запустите сервер.
machine2 $ iperf3 --json --server --daemon --one-off
Запустить клиентов.
machine1 $ iperf3 --json --no-delay --client 192.168.1.255 --bind 192.168.1.1 --interval 0 --parallel 1 --time 30 > /tmp/client_a.log &
machine1 $ iperf3 --json --no-delay --client 192.168.1.254 --bind 192.168.1.2 --interval 0 --parallel 1 --time 30 > /tmp/client_b.log &
machine1 $ iperf3 --json --no-delay --client 192.168.1.253 --bind 192.168.1.3 --interval 0 --parallel 1 --time 30 > /tmp/client_c.log &
Вы можете уменьшить масштаб и запустить несколько экземпляров с помощью bind
ing.
# Start multiple instances of the server.
machine2 $ iperf3 --json --server --daemon --one-off --bind 192.168.1.255
machine2 $ iperf3 --json --server --daemon --one-off --bind 192.168.1.254
machine2 $ iperf3 --json --server --daemon --one-off --bind 192.168.1.253
# Start multiple instances of the client.
machine1 $ iperf3 --json --no-delay --client 192.168.1.255 --bind 192.168.1.1 --interval 0 --parallel 1 --time 30 &
machine1 $ iperf3 --json --no-delay --client 192.168.1.254 --bind 192.168.1.2 --interval 0 --parallel 1 --time 30 &
machine1 $ iperf3 --json --no-delay --client 192.168.1.253 --bind 192.168.1.3 --interval 0 --parallel 1 --time 30 &
Если вы не уменьшите масштаб, вы потерпите неудачу "error - the server is busy running a test. try again later"
.