Проверка скорости сети между ПК и NAS с помощью iperf3

Как проверить скорость домашней сети между ПК и NAS через iperf3

Чтобы проверить именно локальную сеть, запустите iperf3-сервер на NAS, подключитесь к нему с ПК по локальному IP-адресу и выполните отдельные тесты в прямом, обратном и многопоточном режимах. Такой замер не использует интернет и почти не зависит от скорости накопителей: данные создаются и принимаются в памяти. В результате можно понять, ограничивает передачу Ethernet-соединение, конкретное направление, один TCP-поток или производительность одного из устройств.

TCP в обе стороны1/2,5/10 Гбит/сПК и NASПоиск узкого места
Главное: Базовый цикл проверки: подтвердить скорость линка на обоих устройствах, запустить iperf3 -s на NAS, выполнить на ПК тесты с -t 30, -R и -P 4, затем сопоставить направления и загрузку CPU. Если iperf3 быстр, а копирование файлов медленно, искать причину нужно уже в дисках, SMB, шифровании или настройках NAS.

Что именно покажет тест

iperf3 измеряет пропускную способность сетевого пути между двумя узлами по модели клиент-сервер. В этой инструкции сервер работает на NAS, а клиент на ПК. Трафик проходит через те же сетевые адаптеры, кабели и коммутаторы, что и обычная передача файлов, но не включает файловую систему и SMB.

Проверка Что входит в результат Что не проверяется
iperf3 между ПК и NAS Адаптеры, кабели, порты коммутатора, TCP/IP, производительность CPU и драйверов Скорость интернета, SMB и накопители
Копирование большого файла Сеть, SMB, диски, кэш, антивирус и шифрование Нельзя отдельно оценить сеть
Интернет-тест Маршрут до внешнего сервера и канал провайдера Скорость участка ПК–NAS

Конкретный результат работы: три сопоставимых значения для ПК→NAS, NAS→ПК и нескольких параллельных потоков. По ним можно отделить ограничение локальной сети от производительности дисков и понять, на каком участке продолжать диагностику.

Номинал линка не равен полезной скорости приложения. Для ориентира 1 Гбит/с соответствует 125 МБ/с, 2,5 Гбит/с – 312,5 МБ/с, 10 Гбит/с – 1250 МБ/с до учета служебного трафика и ограничений оборудования. Восемь бит равны одному байту.

Подготовка ПК, NAS и сетевого пути

  • Подключите ПК и NAS кабелем к одному коммутатору или к портам одной локальной сети. Для чистого замера предпочтителен проводной Ethernet на обоих концах.
  • Приостановите резервное копирование, синхронизацию, медиасканирование и другие тяжелые задачи. Многопоточный тест способен занять весь канал и заметно загрузить CPU.
  • Посмотрите согласованную скорость интерфейса на ПК, NAS и управляемом коммутаторе. Все порты по пути должны поддерживать целевой режим.
  • Убедитесь, что выбраны адреса одной нужной подсети. NAS с несколькими портами, VLAN, VPN или виртуальными интерфейсами может иметь несколько IP-адресов.
  • Проверьте версию командой iperf3 —version. На обеих сторонах нужен iperf3: iperf2 с ним несовместим.

IP-адрес NAS надежнее всего смотреть в панели управления NAS в разделе сети. Выберите адрес физического интерфейса, подключенного к проверяемому коммутатору. Не используйте адрес контейнера, VPN, Tailscale, виртуальной машины или другого VLAN, если не собираетесь измерять именно этот маршрут.

Windows: ipconfig
Linux: ip addr
macOS: ifconfig

На ПК найдите активный Ethernet-интерфейс и его IPv4-адрес. Например, адреса 192.168.1.20 и 192.168.1.30 обычно относятся к одной сети при маске 255.255.255.0. Если сомневаетесь, откройте параметры подключения и сравните адрес, маску и шлюз, а маршрут до NAS проверьте командой tracert в Windows или traceroute в Linux и macOS.

Проводите нагрузочный тест только между своими или явно разрешенными устройствами. Не запускайте продолжительные испытания во время резервного копирования, записи видеонаблюдения или другой чувствительной нагрузки.

Установка iperf3 на ПК и NAS

Компьютер

В Linux установите пакет iperf3 штатным менеджером пакетов дистрибутива. В macOS можно использовать пакетный менеджер, если он уже установлен. Для Windows загрузите совместимую сборку iperf3 из доверенного источника, распакуйте ее в отдельную папку и запускайте iperf3.exe из Terminal или PowerShell. После установки выполните iperf3 —version.

# Debian и Ubuntu
sudo apt update && sudo apt install iperf3

# Fedora
sudo dnf install iperf3

# macOS с Homebrew
brew install iperf3

NAS

Способ зависит от производителя, модели и версии операционной системы. Сначала проверьте официальный каталог приложений NAS. Если готового пакета нет, безопасные варианты – поддерживаемый производителем контейнер или пакетный менеджер, предусмотренный для данной платформы. Не переносите команды QNAP на Synology, TrueNAS или другую систему.

На QNAP с актуальными поколениями QTS и QuTS hero iperf3 обычно устанавливается отдельно. Производитель описывает контейнер в Container Station либо Entware. После установки Entware используется команда opkg install iperf3. Для контейнерного теста сетевой режим host уменьшает влияние виртуальной сети, но доступность и название параметра зависят от выбранного образа и версии Container Station.

# Только для QNAP с уже установленным Entware
opkg update
opkg install iperf3
iperf3 --version
Если NAS не предоставляет поддерживаемого пакета, контейнера или терминального доступа, не изменяйте системные разделы и не устанавливайте случайные бинарные файлы. Временно поменяйте роли: запустите сервер на ПК, а клиент на NAS, если NAS умеет запускать клиент, либо обратитесь к документации производителя.

Базовый тест в обоих направлениях

  1. Запустите сервер на NASОткройте разрешенный терминал или консоль контейнера и выполните iperf3 -s. По умолчанию сервер ожидает подключение на TCP-порту 5201.
  2. Проверьте доступность NASНа ПК выполните ping с локальным IP-адресом NAS. Ответ на ping полезен, но не гарантирует доступность порта iperf3.
  3. Измерьте ПК→NASНа ПК выполните iperf3 -c 192.168.1.30 -t 30, подставив адрес NAS. Не используйте адрес из примера без проверки.
  4. Измерьте NAS→ПКВыполните ту же команду с параметром -R. Соединение по-прежнему инициирует ПК, но полезные данные передаются от NAS к ПК.
  5. Повторите измеренияЗапустите каждый режим не менее трех раз без параллельной нагрузки. Сравнивайте устойчивые результаты, а не лучший единичный пик.
  6. Остановите серверПосле завершения нажмите Ctrl+C в консоли NAS или остановите созданный контейнер.
# NAS: сервер
iperf3 -s

# ПК: передача ПК → NAS
iperf3 -c 192.168.1.30 -t 30

# ПК: передача NAS → ПК
iperf3 -c 192.168.1.30 -t 30 -R

Ориентируйтесь на итоговую строку receiver и единицы Gbits/sec или Mbits/sec. Во время разгона TCP первые интервалы могут отличаться, поэтому 30-секундный тест обычно информативнее короткого запуска. Если результат постепенно падает, одновременно наблюдайте загрузку CPU и температуру устройств.

Если штатный межсетевой экран блокирует соединение, создайте узкое разрешающее правило для TCP 5201 только из доверенной локальной подсети либо используйте разрешенный порт через параметр -p на обеих сторонах. Не отключайте межсетевой экран целиком и не публикуйте порт в интернет.

Один поток и многопоточная проверка

Один TCP-поток показывает производительность одиночного соединения. На 2,5 и особенно 10 Гбит/с он может упереться в одно ядро CPU, драйвер, сетевой стек или обработку прерываний раньше физического канала. Поэтому низкий результат одного потока еще не доказывает неисправность кабеля или коммутатора.

# Четыре потока ПК → NAS
iperf3 -c 192.168.1.30 -t 30 -P 4

# Четыре потока NAS → ПК
iperf3 -c 192.168.1.30 -t 30 -P 4 -R

# Сохранение результата в JSON
iperf3 -c 192.168.1.30 -t 30 -P 4 -J > test-p4.json
Сценарий Начальная последовательность Как трактовать
1 Гбит/с Сначала P1, затем P4 при необходимости Резкий прирост с P4 скорее указывает на ограничение одного потока или ядра; при нестабильности дополнительно проверьте ошибки интерфейса и кабель
2,5 Гбит/с P1, затем P2 и P4 Если сумма потоков заметно выше P1, проверяйте CPU, драйверы и версию iperf3
10 Гбит/с P1, P4, затем при необходимости P8 Повышайте число потоков только пока растет суммарная скорость и нет перегрузки CPU

Универсального правильного значения -P нет. Начинайте с одного потока, затем используйте 2, 4 и при необходимости 8. Прекратите увеличивать число, когда суммарная скорость перестала расти, CPU достиг полной загрузки или результат стал менее стабильным. В новых версиях iperf3 параллельные потоки лучше используют многоядерные процессоры, поэтому версия программы влияет на сравнение.

Для регулярных замеров сохраняйте дату, направление, число потоков, длительность, версии iperf3 и скорость линка. Параметр -J формирует JSON, удобный для последующего сравнения без ручного переписывания цифр.

Как найти узкое место по результатам

Наблюдение Вероятная область поиска Следующий безопасный шаг
Оба направления одинаково медленные Скорость линка, порт, кабель, общий CPU или маршрут Проверить согласованный режим всех портов и загрузку CPU
Только NAS→ПК медленное Передача NAS, прием ПК, драйвер или обработка прерываний Поменять роли сервера и клиента, повторить обычный тест и тест с -R, сопоставляя физическое направление передачи и загрузку CPU
P4 существенно быстрее P1 Ограничение одного TCP-потока или ядра Сравнить P1/P2/P4 и обновить поддерживаемые версии драйверов и iperf3
Результат периодически проваливается Фоновый трафик, перегрев, энергосбережение или перегрузка CPU Повторить тест без фоновых задач и наблюдать системные графики
Линк 1 Гбит/с вместо 2,5/10 Несовместимый порт, кабель, модуль или настройка интерфейса Проверить спецификации и индикацию каждого звена
iperf3 быстрый, SMB медленный Накопители, RAID, SMB, шифрование, антивирус или малые файлы Тестировать диски и файловую передачу отдельно

Диагностируйте по одному изменению за раз. Сначала запишите исходный результат, затем замените один кабель или порт, повторите тот же тест с той же длительностью и числом потоков. Одновременная замена кабеля, настроек MTU и драйвера не позволит понять причину.

Если возможно, временно подключите оба устройства к одному коммутатору короткими заведомо исправными кабелями. Улучшение результата укажет на промежуточный участок. Отсутствие улучшения переводит внимание на адаптеры, CPU, драйверы и сами устройства.

Не начинайте диагностику с jumbo frames. Несогласованный MTU способен создать новые проблемы, а обычный тест iperf3 работает и со стандартным MTU. Менять MTU имеет смысл только после стабильного базового результата и при поддержке одинакового значения всеми звеньями пути.

Ошибки запуска, ограничения и восстановление

Connection refused

Сервер не запущен, завершился, слушает другой порт или указан неверный IP. Проверьте окно iperf3 -s, адрес NAS и одинаковый параметр -p. После аварийного завершения просто запустите сервер снова.

Connection timed out

Пакеты не доходят до сервера или блокируются. Проверьте подсеть, VLAN, гостевую изоляцию и штатное правило межсетевого экрана. Не отключайте защиту целиком. Если настройка правил недоступна или непонятна, остановитесь и обратитесь к администратору сети.

Команда не найдена или версии несовместимы

Убедитесь, что запускается именно iperf3, а каталог с программой доступен терминалу. iperf2 и iperf3 не взаимодействуют. Команды следует сверять со справкой фактически установленной версии: iperf3 —help.

Контейнер показывает неожиданный результат

Контейнерная сеть добавляет виртуальный участок и может менять маршрут. Проверьте документацию конкретного образа и платформы. Для QNAP производитель допускает host network, однако параметры других NAS нельзя считать идентичными.

Когда нужен UDP

Для обычной оценки Ethernet и файловых передач начинайте с TCP. UDP-тест нужен для отдельного исследования потерь, джиттера или поведения при заданной нагрузке. Неверно выбранная скорость UDP сама создаст потери, поэтому такой тест без четкой задачи не помогает оценить NAS.

Остановите тест при зависании NAS, перегреве, потере доступа к панели управления, критической загрузке сервисов или нарушении работы видеонаблюдения. Не изменяйте системные файлы NAS и не обходите штатные ограничения ради установки iperf3.

Итоговый протокол измерения

  1. Записать модели адаптеров, порты, скорость линка и локальные IP-адреса ПК и NAS.
  2. Установить именно iperf3 и проверить его версию на обоих узлах.
  3. Остановить некритичные фоновые передачи.
  4. Запустить iperf3 -s на NAS.
  5. Трижды выполнить на ПК iperf3 -c IP_NAS -t 30.
  6. Трижды повторить команду с -R.
  7. Проверить -P 2 и -P 4; для 10 Гбит/с при необходимости добавить -P 8.
  8. Сопоставить результаты с загрузкой CPU и согласованной скоростью портов.
  9. Если iperf3 стабилен, а файлы копируются медленно, перейти к отдельной диагностике дисков и SMB.
  10. После проверки остановить сервер и удалить временное правило порта, если оно больше не нужно.

Исправная методика дает повторяемые значения без крупных провалов, ожидаемую разницу между одним и несколькими потоками и понятную картину по направлениям. Абсолютная цифра зависит от CPU, ОС, драйверов, версии iperf3, MTU и оборудования, поэтому сравнивать нужно одинаковые сценарии.

Если линк постоянно согласуется на меньшей скорости, результаты сильно различаются даже при прямом подключении либо диагностика требует изменения VLAN, коммутатора или кабельной инфраструктуры, дальнейшую проверку разумно передать специалисту по локальным сетям. Выбор между 2,5G и 10G отдельно разобран в материале 2.5G или 10G Ethernet для дома: что выбрать для NAS и Wi-Fi 7.

Источники и материалы

  1. iperf3 3.21 documentation
  2. esnet/iperf
  3. docs/ at master · esnet/iperf
  4. 10GbE Slow File Transfers? Test With Iperf3 First — | Fiber Optic Products For FTTH, PON Access And Data Center Connectivity
  5. iperf3 Tutorial: Test Network Speed on Linux & Windows | FDC Servers
  6. Releases · esnet/iperf · GitHub
  7. How to install iperf3 in my NAS?
  8. How do I install iPerf3 in QTS and QuTS hero? | QNAP (US)
  9. How to Test Your LAN Speed (Not the Internet): The Right Way — iPerf3 Blog
  10. 10 GbE Home Network? Here's How to Test It Properly — iPerf3 Blog