Я пытаюсь выполнить тест пропускной способности, запустив iperf на моем устройстве,
Максимальная пропускная способность моей сети составляет 100 Мбит / с (тест с помощью интерфейса командной строки для проверки скорости - https://github.com/sivel/speedtest-cli )
И я запустил iperf UDP тест пропускной способности (например, этот $ (iperf3 -c $ server_ip -u -b 500M))
И затем я получаю результат (почти 500 Мбит / с в сообщении на стороне клиента)
Is результат верно?
Теперь я думаю, что все возможности заключаются в том, что iperf на стороне клиента просто вычисляет полосу пропускания отправителя (из-за UDP)
При использовании UDP вам действительно следует проверить вывод на стороне сервера . UDP не имеет контроля перегрузки, поэтому да, клиент просто создает поток с постоянной скоростью передачи данных. Однако iperf на стороне сервера будет отображать полученный битрейт, а также джиттер и потерю пакетов.
В чем причина использования UDP? В основном это полезно для специальных случаев, например для проверки джиттера с различными размерами пакетов. TCP гораздо более полезен с iperf для таких случаев (возможно, вам придется отрегулировать размер окна, если у вас большая задержка между клиентом и сервером).
Вот пример вывода в режиме UDP на стороне сервера:
[ 3] local 10.50.15.19 port 5001 connected with 10.50.200.226 port 53516
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0-10.0 sec 1.25 MBytes 1.05 Mbits/sec 1.326 ms 0/ 893 (0%)
[ 4] local 10.50.15.19 port 5001 connected with 10.50.200.226 port 57697
[ 4] 0.0-10.0 sec 1.25 MBytes 1.05 Mbits/sec 2.775 ms 1/ 892 (0.11%)
[ 4] 0.0-10.0 sec 2 datagrams received out-of-order
udp - это лучший протокол, поэтому iperf, вероятно, не проверяет, действительно ли поступили пакеты. Также -b устанавливает «пропускную способность для отправки в битах / сек или пакетах в секунду», которую вы устанавливаете на 500M. Итак, я думаю, вы просто тестируете, что ваш драйвер nic может отправлять со скоростью 500 Мбит / с.
Я бы не стал использовать udp или ограничивать пропускную способность, если вы хотите протестировать сетевой путь между узлами. т.е. просто iperf -c server_ip