Генератор сетевого трафика и инструмент нагрузочного тестирования на базе DPDK для бенчмаркинга L4-балансировщиков, шлюзов и серверов.
esnet/iperf
iperf3 — консольная утилита для измерения максимальной пропускной способности IP-сетей по TCP, UDP и SCTP.
- Звёзды
- 8,865
- Форки
- 1,469
- Открытые issues
- 245
- Последний коммит
- 11 дней назад
Что это?
iperf3 активно измеряет максимальную пропускную способность между двумя узлами в IP-сети. На одной машине его запускают в режиме сервера, а на другой — клиента; по итогам каждого теста он показывает пропускную способность или битрейт, потери пакетов и другие параметры. В командной строке можно настроить время тестирования, протокол и параметры буферов.
iperf3 полностью переписан с нуля на основе оригинального iperf: кодовая база стала компактнее, а функциональность доступна в виде библиотеки для использования в других программах. Среди новых возможностей — режим zero-copy и опциональный вывод в формате JSON. Обратной совместимости с оригинальным iperf нет; отдельный проект iperf2 продолжает развиваться независимо.
Проектом в основном занимаются ESnet и Национальная лаборатория Лоуренса в Беркли; он входит в систему измерения сетевых характеристик perfSONAR. Разработка ведётся для Ubuntu Linux, FreeBSD и macOS; сборка выполняется стандартными командами configure и make.
Ключевые возможности
- 01Измеряет пропускную способность по TCP, UDP и SCTP между двумя узлами.
- 02Показывает битрейт, потери пакетов и другую статистику по каждому тесту.
- 03Позволяет настраивать время тестирования, протокол и параметры буферов.
- 04Поддерживает опциональный вывод в формате JSON для скриптов и обработки данных.
- 05Предоставляет режим отправки zero-copy с помощью sendfile и настройки привязки к CPU для расширенного тестирования.
- 06Предоставляет функциональность в виде библиотеки для встраивания в другие программы.
Сценарии использования
- Проверка пропускной способности канала или маршрута между двумя серверами.
- Диагностика проблем с пропускной способностью сети и сравнение результатов для разных конфигураций.
- Проведение тестов производительности сети в составе системы измерений perfSONAR.
- Автоматизация тестов пропускной способности в скриптах с помощью вывода в формате JSON.
Быстрый старт
- 1
Клонируйте исходный репозиторий
git clone https://github.com/esnet/iperf.git - 2
Соберите и установите из исходного кода
./configure; make; make install
Что важно знать
- Официально поддерживаются только Ubuntu Linux, FreeBSD и macOS; работа на других платформах не гарантируется.
- Лицензия в метаданных не указана (NOASSERTION), хотя в README описана лицензия в стиле BSD с уведомлениями правительства США.
Темы
Частые вопросы
- Что такое iperf?
- iperf3 — консольная утилита для измерения максимальной пропускной способности IP-сетей по TCP, UDP и SCTP. iperf3 активно измеряет максимальную пропускную способность между двумя узлами в IP-сети. На одной машине его запускают в режиме сервера, а на другой — клиента; по итогам каждого теста он показывает пропускную способность или битрейт, потери пакетов и другие параметры. В командной строке можно настроить время тестирования, протокол и параметры буферов.
- iperf можно использовать бесплатно? Какая у него лицензия?
- iperf распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- iperf всё ещё поддерживается?
- Активно поддерживается. Последний коммит в iperf — 27 окт. 2026 г..
- Для чего можно использовать iperf?
- Проверка пропускной способности канала или маршрута между двумя серверами. Диагностика проблем с пропускной способностью сети и сравнение результатов для разных конфигураций. Проведение тестов производительности сети в составе системы измерений perfSONAR. Автоматизация тестов пропускной способности в скриптах с помощью вывода в формате JSON.
- Как установить iperf?
- Клонируйте исходный репозиторий: git clone https://github.com/esnet/iperf.git Соберите и установите из исходного кода: ./configure; make; make install
- Где скачать iperf?
- Исходный код и инструкции по установке — на GitHub: https://github.com/esnet/iperf
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Самостоятельно размещаемый инструмент для проверки скорости сети и мониторинга серверов с веб-интерфейсом, написанный на Go и React.
Асинхронный событийный Java-фреймворк для создания удобных в сопровождении и высокопроизводительных серверов и клиентов сетевых протоколов.
Сканер сетей для командной строки на Go: поддерживает сканирование ARP, ICMP, TCP, UDP и SOCKS5, а также JSON-вывод для автоматизации.
Bash-скрипт для тестирования диска, сети и CPU/памяти Linux-сервера с помощью fio, iperf3 и Geekbench.
CLI для анализа сети на базе eBPF: захватывает трафик HTTP, Redis, MySQL, Kafka и DNS и показывает, на каком этапе в ядре возникает задержка.