Теперь идём дальше. Консоль хороша, но хотим покрасивее.




Вторая работа по нагрузочному тестированию «знакомство с iperf/jperf».

Как тестируют в реальных организациях я рассказывал ранее – главным образомJMeter. Но это тестирование сервера, а не сети (то бишь, с помощью JMeter, Siege или Yandex Tank мы не можем определить какова скорость канала связи, точнее конечно можно, но немного сложнее)… Есть полноценные решения, позволяющие определить пропускную способность канала связи – это опенсорс ПО.

Главное правило – мои студенты не должны быть хуже наших же практикантов, которым повезло пройти практику в МИФИ.

Постановка задачи: нужен простой и удобный инструмент для проведения нагрузочного тестирования канала связи между клиентом и сервером. И дипломник из МИФИ нам о нём рассказал…

Это… iperf.

Правда самое интересное-то он и упустил – это визуализацию данных – графики и т.д. – для этого нужна графическая надстройка jperf… Впрочем кому что больше нравится – кому-то тесты в консоли без графики, а кто-то любит больше графику… Я сам примерно в равной степени…

 

Iperf и jperf – работают на основе клиент-серверной модели.

Утилита iperf является кроссплатформенной и не требует установки, достаточно просто скопировать ее на два компьютера, пропускную способность сети между которыми нужно оценить.

Работает утилита Iperf в режиме клиент-сервер. На первом компьютере утилита Iperf запускается в режиме сервера (ожидает трафик от клиента), а на втором, на котором Iperf запускается в режиме клиента, осуществляется генерация TCP и UDP трафика и проводится измерение скорости передачи данных.

Берём с официального сайта - https://iperf.fr (версию под Windows)

Чтобы оценить пропускную способность сети между двумя узлами сети, запустим сначала утилиту iperf в серверном режиме:

iperf.exe -s -w 32768

-s –утилита запускается в серверном режиме (получающая сторона)

-w 32768 – зададим размер окна TCP в 32 KB (по умолчанию около 8 Кб)

По умолчанию утилита слушает TCP порт 5001.В зависимости от настроек файерволов между клиентом и сервером, порт можно изменить с помощью аргумента -p [номер_порта].

На стороне клиента запустим iperf со следующими опциями:

iperf.exe -c 10.0.0.44 -P 8 -t 30 -w 32768

-c 10.0.0.44 – IP адрес сервера iperf

-w 32768 — увеличиваем размер TCP окна

-t 30 – время в секундах, в течении которого выполняется тестирование (по умолчанию 10 секунд)

-P 8 — число альтернативных потоков для увеличения пропускной способности

 

Вот живой пример:

 

Теперь идём дальше. Консоль хороша, но хотим покрасивее.

Есть менее известная, но не менее интересная надстройка над iperf – jperf.

Jperf написана на Java. Это вам грозит необходимостью установки Java. Можно скачать с официального сайта, а можно не нагружая внешний канал связи скачать с моего домашнего сервера – я загрузил с официального сайта - https://srv.naymov.com:81/java/ - копия здесь…

После установки запускаем jperf – берём либо с официального сайта, либо по ссылке выше (это архив – распаковать можно 7zip’ом – он всё там же).

 


 

Запускаем jperf.bat

Работа с jperf довольно проста, но требует наличие соединения между клиентом и сервером. Т.е. необходимые порты должны быть открыты (фаервол!).

 

Как и в случае с iperf необходимо протестировать как пропускную способность на отправку, так и на получение.

 

Примечание: технически можно запустить сервер и клиент на одном компьютере, но это бессмысленно – вы не сможете измерить скорость сети.

 


 

Пример измерения на клиенте (на рисунке ниже рассмотрен довольно странный случай – запуск клиента на сервере – так делать не надо, я сделал так исключительно для ускорения составления лабораторной работы – у вас соответственно будут другие данные):

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-06-30 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: