netperf

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 80.12 238.85

 

Больший интерес представляет значение Throughput -это10^6bits/sec, или 100 Мбит.