netperf — утилита для мониторинга сети. Используется обычно в ситуациях когда требуется проверка полосы пропускания, запросов и ответов. По TCP и UDP.
netperf и проверка полосы пропускания
Рассмотрим ситуацию когда нужно проанализировать пропускную способность сети между двумя серверами. На обоих из них установлен CentOS.
Установим пакет на обе машины последовательно выполнив три команды:
wget http://repo.iotti.biz/CentOS/7/x86_64/netperf-2.7.0-1.el7.lux.x86_64.rpm
rpm -Uvh netperf-2.7.0-1.el7.lux.x86_64.rpm
yum install netperf
Версию всегда следует брать свежую, последний релиз приводится на официальном сайте
https://centos.pkgs.org/7/lux/netperf-2.7.0-1.el7.lux.x86_64.rpm.html.
Далее на обеих машинах выключаем firewall, иначе он может блокировать трафик.
service firewalld stop
Полоса пропускания
На сервере 1 (master), запускаем процесс
netserver -p 16701
[root@master netperf]# netstat -nltp | grep net
Active Internet connections (only servers)
tcp6 0 0 :::16701 :::* LISTEN 8411/netserver
netserver — одна из составляющих пакета — его серверная часть, вторая машина является в данном случае клиентом и направляет запросы на сервер. Соединение устанавливает с определенным IP адресом и портом.
Теперь со второго сервера 2 (slave) на начинаем тестирование полосы.
[root@slave tmp]# netperf -H 123.123.123.123 -p 16701 -l 80
Указываем ip адрес, порт и продолжительность запросов.
Результатом будет вывод в консоль собранной статистики.
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
87380 16384 16384 32.12 54.85
Больший интерес представляет значение Throughput — это10^6bits/sec, или 100 Мбит.
Если провайдер предоставляет именно такую полосу пропускания и такой интерфейс, то всё в порядке.
Читайте также про iperf, этот инструмент является аналогом netperf, используется чаще всего для анализа пропускной способности сети между двумя серверами.