Iperf. Что такое и как использовать.
Существует множество статей, как работать Iperf’ом, но ни одна статья не ответила мне на вопрос как его запустить из под windows 7\8\10 (а вот понадобилось), очень мало статей упонинает какую скорость он измеряет, что подразумевается под пропускной способностью канала. Итак, все по порядку.
Что такое iperf?
Iperf это клиент-серверная утилита котороя позволять производить замеры пропускной способности канала. Клиент-серваная утилита подразумевает под собой, что для проверки скорости между двумя ПК необходимо будет запустить iperf на одном ПК в режиме «сервер», а на другом ПК в режиме «клиент». Скорость измеряется от клиента к серверу, т.е. если вы на своем компьютере запустили iperf в режиме «клиент», то результатом будет «исходящая» скорость. Чтобы измерить входящую, небоходимо запустить iperf в режиме сервер, либо воспользоваться ключиком -d для измерения скорость входящей+исходящей. Важно отметить, что гененирует трафик только клиентская часть.
Iperf и unix
Iperf в unix-подобных система находится во всех репозиториях и, чтобы его установить, необходимо запусть стандартную инсталляционную команду для вашего дистрибутива, например для debian это:
#aptitude install iperf
Для работы с утилитой прото вызываем iperf, например запустить данную утилиту в режиме сервера на 3600 секунд(1 час)
# iperf -s -t 3600
Iperf и windows.
Iperf не входит в стандартный дистрибутив windows, поэтому его надо скачать, например тут
Далее, необходимо поместить этот файл для удобства на диск С:
Если вы 2 раза кликните на то, что скачали, утилита запуститься и сразу «вылетит». Пользоваться ей надо следующим образом
- Зайдите в командную строку Пуск->выполнить->cmd или если Windows 10 в поиске необходимо набрать Cmd, он сам автоматически найдет то, что нам нужно.
- В открывшейся командной строке, надо перейти в папку, куда вы поместили скаченный iperf, в нашем случае она будет лежать на диске C:/, выполнив команду: cd c:/
- Чтобы запустить iperf, например, в режиме клиента, необходимо выполнить команду: iperf -c <ip-адрес серверной части> -t 30 -i 10, где -t — время теста, -i — интервал обновления данных теста
Как видим, исходящая скорость исходящая скорость до сервера x.
Что умеет iperf?
Вообще, все написано в хелпе к данной утилите, но если кто-то любит читать на русском, то ключи ниже.
Общие:
-f, —format, [kmKM] формат отчёта: Kbits, Mbits, KBytes, MBytes
-i, —interval n, пауза секунд между периодическими отчётами
-l, —len n[KM], задёт длину на чтение/запись буфера (по умолчанию 8 KB)
-m, —print_mss, показать максимальный размер сегмента (MTU — TCP/IP в заголовке)
-o, —output <filename>, Запись отчёта в указанный файл
-p, —port n, задаёт порт к которому конектится или на котором вешать сервер (по умолчанию 5001)
-u, —udp, использовать UDP, а не TCP
-w, —window n[KM], TCP размер окна (размер буфера сокета)
-B, —bind <host>, привязки к хосту, интерфейсу или групповому адресу
-C, —compatibility, для использования с более старыми версиями не шлёт екстра сообщения
-M, —mss n, задать TCP максимальный размер сегмента (MTU — 40 байт)
-N, —nodelay, задать TCP без задержки, отключение алгоритма Нэгла
-v, —version, напечатать информацию о версии и выйти
-V, —IPv6Version, Использовать IPv6
-x, —reportexclude, [CDMSV] исключить C(соединение), D(данные), M(Multicast) S(настройки)
V(сервер) в отчетности
-y, —reportstyle C|c, если установлено в C или c Отчёт будет в результатах CSV (значения, разделенные запятыми)
Конкретные варианты SERVER
-s, —server, запустить в режиме сервера
-U, —single_udp, работать в однопоточном режиме UDP
-D, —daemon, запустить сервер как демон
Конкретные варианты CLIENT
-b, —bandwidth n[KM], установить пропускную способность в бит/сек (по умолчанию 1 Мбит/сек. ). Эта установка требует UDP (-u).
-c, —client <host>, запустить в режиме клиента, при подключении к <host>
-d, —dualtest, двунаправленный тест одновременно
-n, —num n[KM], количество байт для передачи (вместо -t)
-r, —tradeoff, У двунаправленный тест индивидуально
-t, —time n, время передачи в секундах (по умолчанию 10 секунд)
-F, —fileinput <name>, читать отсылаемый контент серверу из файла
-I, —stdin, самому писать что отдавать серверу
-L, —listenport n, порт клиента двунаправленный
-P, —parallel n, число параллельных потоков клиента для запуска
-T, —ttl n, время жизни, для multicast (по умолчанию 1)
-Z, —linux-congestion <algo>, алгоритм управления перегрузками TCP (Linux только)
iPerf3 — измерение пропускной способности сети
Утилита iPerf3 позволяет измерить максимальную пропускную способность между двумя узлами сети. Может использовать различные параметры тайминга, протоколов, потоков и т.
Умеет генерировать трафик различного типа для анализа пропускной способности сети. Поддерживается многопоточная работа через параметры у клиента. По умолчанию тест выполняется в направлении от клиента к серверу. Для обратного тестирования от сервера к клиенту необходимо использовать ключ -R.
Скачать можно здесь:
https://iperf.fr/iperf-download.php
C:\Distr\iperf-3.1.3-win64\iperf-3.1.3-win64>iperf3.exe /?
iperf3: parameter error - must either be a client (-c) or server (-s)
Usage: iperf [-s|-c host] [options]
iperf [-h|--help] [-v|--version]
Server or Client:
-p, --port # server port to listen on/connect to
-f, --format [kmgKMG] format to report: Kbits, Mbits, KBytes, MBytes
-i, --interval # seconds between periodic bandwidth reports
-F, --file name xmit/recv the specified file
-B, --bind <host> bind to a specific interface
-V, --verbose more detailed output
-J, --json output in JSON format
--logfile f send output to a log file
-d, --debug emit debugging output
-v, --version show version information and quit
-h, --help show this message and quit
Server specific:
-s, --server run in server mode
-D, --daemon run the server as a daemon
-I, --pidfile file write PID file
-1, --one-off handle one client connection then exit
Client specific:
-c, --client <host> run in client mode, connecting to <host>
-u, --udp use UDP rather than TCP
-b, --bandwidth #[KMG][/#] target bandwidth in bits/sec (0 for unlimited)
(default 1 Mbit/sec for UDP, unlimited for TCP)
(optional slash and packet count for burst mode)
-t, --time # time in seconds to transmit for (default 10 secs)
-n, --bytes #[KMG] number of bytes to transmit (instead of -t)
-k, --blockcount #[KMG] number of blocks (packets) to transmit (instead of -
t or -n)
-l, --len #[KMG] length of buffer to read or write
(default 128 KB for TCP, 8 KB for UDP)
--cport <port> bind to a specific client port (TCP and UDP, default
: ephemeral port)
-P, --parallel # number of parallel client streams to run
-R, --reverse run in reverse mode (server sends, client receives)
-w, --window #[KMG] set window size / socket buffer size
-M, --set-mss # set TCP/SCTP maximum segment size (MTU - 40 bytes)
-N, --no-delay set TCP/SCTP no delay, disabling Nagle's Algorithm
-4, --version4 only use IPv4
-6, --version6 only use IPv6
-S, --tos N set the IP 'type of service'
-Z, --zerocopy use a 'zero copy' method of sending data
-O, --omit N omit the first n seconds
-T, --title str prefix every output line with this string
--get-server-output get results from server
--udp-counters-64bit use 64-bit counters in UDP test packets
[KMG] indicates options that support a K/M/G suffix for kilo-, mega-, or giga-
iperf3 homepage at: http://software. es.net/iperf/
Report bugs to: https://github.com/esnet/iperf
Пример использования
На сервере запускаем:
iperf3.exe -s
На клиенте запускаем:
iperf3.exe -с 10.10.12.8 -P 5 -R
Где:
- 10.10.12.8 — IP адрес сервера,
- -P 5 — пять потоков,
- -R — обратная передача, от сервера клиенту.
Результат:
инструкция iperf — Русские Блоги
Прежде всего, убедитесь, что вы подключены к той же локальной сети.Тестовая обратная связь — это скорость сетевой передачи сервера.
Iperf — это инструмент для тестирования производительности сети. Iperf может проверить качество пропускной способности TCP и UDP. Iperf может измерять максимальную пропускную способность TCP с множеством параметров и характеристик UDP.
Iperf может сообщать о пропускной способности, джиттере задержки и потере пакетов. Используя эту функцию Iperf, ее можно использовать для проверки производительности некоторых сетевых устройств, таких как маршрутизаторы, межсетевые экраны и коммутаторы.
Iperf Два способа использования
Первый способ отладки:
Первый: установить Iperf
(1) Установите iperf sudo apt-get install iperf в Linux
(2) Для версии Iperf для Windows просто скопируйте распакованные файлы iperf.exe и cygwin1.dll в каталог% systemroot%.
Или вы можете напрямую cmd-cd — родительский каталог iperf.exe для выполнения связанных операций команды iperf
IperfОсновные функции следующие:
TCP
Измерьте пропускную способность сети
Сообщите размер и наблюдаемое значение значения MSS / MTU
Поддержка буферизации значения окна TCP через сокет
Когда доступен поток P или Win32, поддерживается многопоточность. Клиент и сервер поддерживают одновременное несколько подключений
UDP
Клиент может создать поток UDP с указанной пропускной способностью.
Измерение потери пакетов
Задержка измерения
Поддержка многоадресной рассылки
Когда доступны P-потоки, поддерживается многопоточность. Клиент и сервер поддерживают одновременное несколько подключений (Windows не поддерживается)
Другой
При необходимости в опциях можно использовать K (килограммы) и M (мега-). Например, 131072 байта можно заменить 128 КБ.
Вы можете указать общее время работы и даже установить общий объем передаваемых данных.
В отчете выберите наиболее подходящую единицу для данных.
Сервер поддерживает несколько подключений вместо ожидания однопоточного теста.
Повторно отображать пропускную способность сети, колебания и потерю пакетов через определенные промежутки времени.
Сервер может работать как фоновая программа.
Сервер может работать как служба Windows.
начать тестирование:
(1) Возьмите окна в качестве примера ниже в качестве сервера
Iperf -s представляет собой сервер, где: Interval представляет собой временной интервал. Передача представляет собой объем данных, переданных за интервал времени. Полоса пропускания — это скорость передачи во временном интервале. Последняя строка — статистика этого теста. Тест показывает, что средняя пропускная способность 92,6 Мбит / с.
Подключите инструмент последовательного порта в системе Linux и используйте коробку в качестве клиента для проверки пропускной способности сети сервера.
Запустите iperf на клиенте и введите команду iperf –c server-ip –p server-port –i 1 –t 10 –w 20K. Описание параметров следующее:
-c: режим клиента, за которым следует IP-адрес сервера
-p: за которым следует порт, контролируемый сервером
-i: установить временной интервал для отчета о пропускной способности в секундах.
-t: установить продолжительность теста в секундах.
-w: установить размер окна tcp, обычно вам не нужно его устанавливать, значение по умолчанию подходит
И наоборот, бокс также можно использовать в качестве нашего сервера для проверки пропускной способности сети.
Как клиент в Windows, проверьте пропускную способность сети сетевого порта коробки
Второй способ отладки:
Мы можем установить iperf.apk на коробку и себе на руки.В поле редактирования apk мы можем ввести первый метод как команду, соответствующую клиенту и серверу.
Примечание. Нет никакой разницы между командой ввода в поле редактирования iperf.apk в поле и командой, вводимой в инструменте последовательного порта, и оба могут достичь одинакового эффекта.
Этот метод намного проще, чем описанный выше.Единственный недостаток — использование окна для запуска точки доступа для подключения нашего мобильного телефона к той же локальной сети. Решение: его можно установить на нашу коробку,
SoftApSetting_signed.apk, apk может запускать точку доступа, и телефон может подключаться к точке доступа.
Воспользуемся ящиком как сервисом для проверки ширины генерации сети.
Используйте мобильный телефон в качестве клиента для возврата данных:
IperfВведение параметра
Параметры командной строки | описание |
Общие параметры клиента и сервера | |
-f, —format [bkmaBKMA] | Отформатируйте вывод полосы пропускания. 3, поэтому Iperf также вычисляет биты (биты) на основе этого. Если это вас беспокоит, используйте параметр -f b и рассчитайте его самостоятельно. |
-i, —interval # | Установите интервал времени между отчетами в секундах. Если установлено ненулевое значение, отчет об испытаниях будет выводиться через этот интервал времени. Значение по умолчанию — ноль. |
-l, —len #[KM] | Установите длину буфера чтения и записи.По умолчанию для режима TCP установлено значение 8 КБ, а для режима UDP — 1470 байт. |
-m, —print_mss | ВыводЗначение TCP MSS (поддерживается TCP_MAXSEG). Значение MSS обычно на 40 байт меньше, чем значение MTU. Обычно |
-p, —port # | Установите порт в соответствии с портом прослушивания на стороне сервера. По умолчаниюПорт 5001 совпадает с ttcp. |
-u, —udp | использованиеМетод UDP вместо метода TCP. См. Параметр -b. |
-w, —window #[KM] | Установите буфер сокета на указанный размер. дляВ режиме TCP этот параметр — размер окна TCP. Для режима UDP этот параметр представляет собой размер буфера, который принимает пакеты UDP, ограничивая максимальное количество пакетов, которые могут быть приняты. |
-B, —bind host | Один из нескольких адресов, привязанных к хосту. Для клиента этот параметр устанавливает интерфейс стека. На стороне сервера этот параметр устанавливает интерфейс стека. Этот параметр используется только для хостов с несколькими сетевыми интерфейсами. вВ режиме UDP Iperf этот параметр используется для привязки и присоединения к группе многоадресной рассылки. Используйте многоадресный адрес в диапазоне от 224.0.0.0 до 239.255.255.255. См. Параметр -T. |
-C, —compatibility | С более низкой версиейПри использовании Iperf вы можете использовать режим совместимости. Нет необходимости использовать режим совместимости на обоих концах, но настоятельно рекомендуется, чтобы оба конца использовали режим совместимости одновременно. В некоторых случаях использование определенных потоков данных может вызвать сбой сервера версии 1.7 или вызвать неожиданные попытки подключения. |
-M, —mss #[KM} | поПараметр TCP_MAXSEG пытается установить значение максимального информационного сегмента TCP. Размер значения MSS обычно равен заголовку TCP / IP минус 40 байтов. В Ethernet значение MSS составляет 1460 байт (MTU1500 байт). Многие операционные системы не поддерживают эту опцию. |
-N, —nodelay | НастроитьПараметр TCP без задержки, отключить алгоритм Нэгла. Обычно этот параметр отключен для интерактивных программ, таких как telnet. |
-V (from v1.6 or higher) | Свяжите одинIPv6-адрес. к |
Выделенные параметры на стороне сервера | |
-s, —server | IperfСерверный режим |
-D (v1.2Или выше) | UnixIperf работает как фоновый демон под платформой. На платформе Win32 Iperf будет работать как служба. |
-R(v1.2Или выше, только для Windows) | УдалитьСервис Iperf (если он запущен). |
-o(v1.2Или выше, только для Windows) | Перенаправить вывод в указанный файл |
-c, —client host | в случаеIperf работает в режиме сервера и указывает хост с параметром -c, тогда Iperf будет принимать соединения только от указанного хоста. Этот параметр не может работать в режиме UDP. |
-P, —parallel # | Количество подключений, поддерживаемых до выключения сервера. По умолчанию0, что означает всегда принимать соединения. |
Индивидуальные параметры для клиента | |
-b, —bandwidth #[KM] | UDPПропускная способность, используемая режимом, в бит / сек. Этот параметр связан с параметром -u. Значение по умолчанию — 1 Мбит / сек. |
-c, —client host | бегатьВ режиме клиента Iperf подключитесь к указанному серверу Iperf. |
-d, —dualtest | Запустите режим двойного тестирования. Это заставит сервер подключаться к клиенту в обратном порядке, используяПорт, указанный в параметре -L (или порт, используемый клиентом для подключения к серверу по умолчанию). Они выполняются сразу же во время работы. Если вам нужен интерактивный тест, попробуйте параметр -r. |
-n, —num #[KM] | Количество переданных буферов. Обычно,Iperf отправляет данные за 10 секунд. Параметр -n пересекает этот предел и отправляет данные указанной длины в соответствии с указанным числом раз, независимо от того, сколько времени занимает операция. Обратитесь к параметрам -l и -t. |
-r, —tradeoff | Возвратно-поступательный тестовый режим. Когда тест клиент-сервер завершен, сервер проходитПорт, указанный параметром -l (или порт, используемый клиентом для подключения к серверу по умолчанию), подключается к клиенту в обратном порядке. Когда клиентское соединение разрывается, немедленно запускается обратное соединение. Если вам нужно выполнить двустороннее тестирование одновременно, попробуйте параметр -d. |
-t, —time # | Установите общее время передачи.Iperf повторно отправляет пакеты данных указанной длины в течение указанного времени. По умолчанию — 10 секунд. Обратитесь к параметрам -l и -n. |
-L, —listenport # | Укажите порт, используемый при обратном подключении сервера к клиенту. По умолчанию используется порт от клиента к серверу. |
-P, —parallel # | Потоки. Укажите количество потоков, используемых между клиентом и сервером. По умолчанию1 поток. Этот параметр должен использоваться как клиентом, так и сервером. |
-S, —tos # | Тип услуги исходящего пакета данных. Многие роутеры игнорируютПоле TOS. Вы можете указать это значение, используя шестнадцатеричные числа, начинающиеся с «0x», или восьмеричные или десятичные числа, начинающиеся с «0». к |
-T, —ttl # | Многоадресные пакеты вне стекаЗначение TTL. По сути, это количество переходов для данных, проходящих через маршрутизатор. По умолчанию 1, ссылка локальная. |
-F (from v1.2 or higher) | Используйте определенный поток данных для измерения пропускной способности, например указанный файл. к |
-I (from v1.2 or higher) | противТо же, что -F, вводит данные из стандартных файлов ввода и вывода. |
Разное | |
-h, —help | Отобразите ссылку на командную строку и выйдите. |
-v, —version | Отобразите информацию о версии и информацию о компиляции и выйдите. |
Запись ревизии
Дата проверки | версия | Описание ревизии | Отредактировано |
2016-11-24 |
00001 | Выпущена первая промежуточная версия | Лю Жуйци |
Iperf, установка и примеры использования тестирования сети
Обновлено 07. 11.2019
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов России Pyatilistnik.org. В прошлый раз мы с вами разобрали применение очень полезной утилиты Robocopy, с помощью которой мы мигрировали данные файлового сервера. В сегодняшней статье я хочу вас познакомить с утилитой Iperf, я разберу ее установку, примеры ее использования в вашей инфраструктуре. Хочу отметить, что она должна быть частью вашего административного набора программ.
Содержание статьи:
- Что такое утилита Iperf
- Виды и версии Iperf
- Где скачать Iperf
- Как установить Iperf в Windows
- Как установить Iperf в CentOS
- Как установить Iperf в Debian или Ubuntu
- Примеры использования Iperf
Что такое Iperf
В жизни каждого системного администратора наступает такая ситуация, что у него есть проблемы со скоростью сети между серверами, как физическими, так и виртуальными. В такой ситуации необходимо произвести тестирования пропускной способности сетевого канала между участниками.
Iperf — это бесплатная сетевая утилита с открытым кодом, которая позволяет вам протестировать и определить пропускную способность сети между серверами на базе Windows и Linux. Так же Iperf-у можно дать и такое определение, это инструмент для активных измерений максимально достижимой полосы пропускания в IP-сетях. Он поддерживает настройку различных параметров, связанных с синхронизацией, буферами и протоколами (TCP, UDP, SCTP с IPv4 и IPv6). Для каждого теста он сообщает о пропускной способности, потерях и других параметрах.
Виды и версии Iperf
Сама утилита работает по умолчанию в режиме командной строки, но у нее так же есть надстройка на Java, для графического интерфейса. Так же есть две независимых ветки у данного инструмента по тестированию сети. Первая ветка, это Iperf2, вторая Iperf3.
Какова история iperf3 и в чем разница между iperf2 и iperf3?
iperf2 был заброшен в конце 2000-х годов на версии 2. 0.5, несмотря на некоторые известные ошибки и проблемы. Потратив некоторое время на решение проблем с iperf2, ESnet к 2010 году решила, что нужен новый, более простой инструмент, и приступила к разработке iperf3. Цель состояла в том, чтобы сделать инструмент как можно более простым, чтобы другие могли внести свой вклад в код. По этой причине было решено сделать инструмент однопоточным и не беспокоиться о обратной совместимости с iperf2.Многие запросы функций для iperf3 поступили из проекта perfSONAR ( http://www.perfsonar.net).
Затем в 2014 году Боб (Роберт) МакМахон из компании Broadcom возобновил разработку iperf2. Он исправил многие проблемы с iperf2 и добавил ряд новых функций, похожих на iperf3. iperf2.0.8, выпущенный в 2015 году, сделал iperf2 полезным инструментом. Текущее развитие iperf2 сосредоточено на использовании UDP для тестирования задержки, а также на широкой поддержке платформ.
На момент написания статьи (2019), iperf2 и iperf3 активно (хотя и независимо) разрабатываются. Я рекомендуем ознакомиться с обоими инструментами и использовать те функции, которые лучше всего соответствуют вашим потребностям.
Основные отличия Iperf2 и Iperf3
Каждый из этих инструментов имеет несколько разные функции и немного другую архитектуру, поэтому не стоит ожидать, что какой-то один инструмент будет иметь все необходимое. Лучше быть знакомым с несколькими инструментами и использовать правильный инструмент для вашего конкретного случая использования. Одно ключевое отличие заключается в том, является ли инструмент однопоточным или многопоточным. Если вы хотите протестировать производительность параллельного потока, вы должны использовать многопоточный инструмент, такой как iperf2, хотя в iperf3 так же можно сделать костыль.
Обратите внимание, что по умолчанию Iperf3 официально не поддерживается в Windows, но это не означает, что он там не будет работать, могут быть нюансы и глюки
Обратите внимание, что все три из этих инструментов находятся в активной разработке, и список уникальных функций для данного инструмента, вероятно, со временем изменится. Исходя из моего опыта, я рекомендуем следующее:
- Используйте iperf2 для параллельных потоков, двунаправленных тестов или тестов на базе MS Windows.
- Используйте nuttcp или iperf3 для высокоскоростного тестирования UDP
Где скачать Iperf
Загрузить утилиту можно из разных источников. Если мы говорим про Linux, Unix версии, то вы можете использовать ссылку с github:
https://github.com/esnet/iperf/releases
Если нужно скачать Iperf для Windows, то воспользуйтесь ссылкой с моего ресурса:
Загрузка Iperf3 Windows и с графическим интерфейсом или же с https://sourceforge.net/projects/iperf2/files/
Как установить Iperf в Windows
Чтобы установить Iperf2 или Iperf3 в операционной системе Windows, вам потребуется скачать свежую версию. На выходе у вас будет архивный файл. Далее вы распаковываете архив и получаете файл командной строки и cygwin1.dll
Скачать отдельно cygwin1.dll можно по ссылке https://sourceforge. net/projects/cygwin1-dll/files/
Далее вы открываете командную строку, желательно от имени администратора. После чего пишите команду:
cd и путь до exe файла iperf, напримерcd C:\Temp\iperf-2.0.14a-win
После чего вывод списка файлов командой dir
аналогично делаем и в случае с третьей версией утилиты.
Как установить Iperf в CentOS 7
Хочу отметить, что в CentOS 7 и CentOS 8, придется делать слегка иначе. Производить инсталляцию я буду в последней версии CentOS 7, которую поставил ранее.
Начнем с установки Iperf2, для этого выполните команду:
У вас должна выскочить ошибка
Failed to synchronize cache for repo ‘AppStream’, ignoring this repo.
Failed to synchronize cache for repo ‘BaseOS’, ignoring this repo.
Failed to synchronize cache for repo ‘extras’, ignoring this repo.
No match for argument: iperf
Error: Unable to find a match
Давайте посмотрим список репозиториев, делается это командой:
Как видим, список будет вот такой:
CentOS-7 — AppStream
CentOS-7 — Base
CentOS-7 — Extras
Напоминаю, что утилита Iperf является дополнительным пакетом, который не входит в основные репозитории, это прекрасно описано в Вики http://fedoraproject. org/wiki/EPEL. Дополнительные пакеты для Enterprise Linux (EPEL) — это одобренный сообществом репозиторий, который указан в вики CentOS в разделе «Доступные репозитории для Linux», в котором отмечается, что хотя репозитории сообщества не связаны с проектом CentOS, эти репозитории часто рекомендованы сообществом. Выполните команду:
Как видите в файле yum.repos.d прописаны подключенные репозитории, и тут не хватает репозитория epel-release.
Давайте установим epel-release, для этого выполните:
или командой
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y
Пробуем теперь посмотреть список репозиториев в файле yum.repos.d и видим, что epel появился.
Произведем установку Iperf
Все успешно выполнено. Конечно вам никто не запрещает подключить репозиторий от седьмой версии CentOS в восьмую, но они могут конфликтовать в будущем по зависимостям. Поэтому, если у вас CentOS 8, то я рекомендую сделать вот так.
Установка iperf на CentOS 8
Ранее, я так же установил CentOS 8 в тестовой среде. Хочу отметить, что если вы попытаетесь добавить репозиторий epel-release командой:
yum install epel-release или yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
То он успешно установится, но когда вы попытаетесь сделать поиск iperf по нему, то обнаружите, что восьмая ветка не содержит данной утилиты.
dnf repository-packages epel list | grep -i iperf
Как я и писал выше не желательно устанавливать epel 7 и 8 версии репозитория, я лично в такой ситуации просто выхожу подобным образом. Я открываю сайт https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/ и ищу нужный мне пакет, копирую на нужный мне прямую ссылку.
Далее я устанавливаю в CentOS 8 пакет wget, для этого выполняем:
Далее скачиваем пакет, ссылку на который мы заранее выяснили.
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/i/iperf-2. 0.13-1.el7.x86_64.rpm
Далее производим установку iperf2 в системе, через выполнение команды:
rpm -ivh iperf-2.0.13-1.el7.x86_64.rpm
Так же для CentOS 8 рекомендуется включить репозиторий PowerTools, поскольку пакеты EPEL могут зависеть от пакетов из него
dnf config-manager —set-enabled PowerTools
Установка iperf3 в CentOS 7 и 8
В CentOS 8 с установкой Iperf3 еще проще, так как это пакет является уже частью стандартных репозиториев, чтобы его поставить просто введите:
Если мы имеем дело с CentOS 7 и ниже, то нужно добавлять репозиторий epel-release
Открытие портов Iperf на CentOS
После того. как вы произвели инсталляцию пакета, вам необходимо открыть порты, которые будет слушать ваша служба при подключении к ней. Напоминаю, что порты по умолчанию у iperf и iperf3, это 5201. Для решения этой задачи мы выполним две команды:
firewall-cmd —permanent —add-port=5201/tcpfirewall-cmd —permanent —add-port=5201/udp
firewall-cmd —reload
Проверим слушает ли сервер входящие подключения по порту 5210, для этого выполните:
Продолжение следует.
Утилиты iperf и iptraf в RHEL/CentOS/Fedora
Для мониторинга сети и измерения полосы пропускания можно использовать утилиты iperf и iptraf.
iperf — это утилита для измерения пропускной способности сети. Она протестировать соединение по TCP или UDP.
yum install epel-release
yum install iperf
Установка iperfЕсли установлен файервол, то для iperf, то необходимо открыть порт 5001(iperf3 — 5201).
Сервер запускается командой
iperf -s
Запуск сервера iperfДалее необходимо установить клиент, а также запустить на клиентской части iperf, передав, в качастве параметра ip сервера.
iperf3 -c 192.168.32.81
Запуск клиента iperfПротестировать прохождение UDP трафика можно с помощью опции –u.
На сервере
iperf -s -u
На клиенте при запуске можно указать пропускную способность(опцией -b), по умолчанию значение 1Мбит
iperf -c 192. 168.32.80 -u -b 1000M
Тестирование udp с помощью iperfВ таблице выводимых данных указаны:
Интервал времени (в сек.), в течение которого происходила передача данных.
- Transfer — обьем данных, переданных за интервал времени.
- Bandwidth — средняя скорость передачи данных за интервал времени.
- Retr — повторно отправлено сегментов.
- Cwnd — обьем единовременно переданных данных.
Для тестирования прохождения sip трафика запустить (поочередно, в обе стороны)
На сервере
iperf -s -u
На клиенте(udp пакеты 64 байт, со скоростью 32Кбит/сек в течение 120 сек, -P – количество потоков , -R – двунаправленная передача)
iperf -u -c 192.168.32.80 -l64 -b32k -t120 –P 4 -R
Тестирование прохождения voip пакетовС помощью публичных iperf и iperf3 серверов можно протестировать интернет канал. Для тестирования пропускной способности, например, с помощью серверов iperf.saratov.ertelecom.ru, st.nn.ertelecom.ru и утилиты iperf запустить команды:
iperf -c iperf.saratov.ertelecom.ru
iperf -c st.nn.ertelecom.ru
Измерение пропускной способности – публичные iperf сервераВ случае занятости публичного сервера тестом – утилита выведет сообщение об ошибке.
Тестирование в 2 потока(-P), отображение каждую секунду (опция -i), формат(-f) в Мб, время 10сек:
iperf -c st2.nn.ertelecom.ru -P 2 -i 1 -f M -t 10
Тестирование пропускной способности — изменение формата выводаОтобразить загрузку канала в псевдографическом режиме можно с помощью nload.
Установить утилиту можно командой:
yum install nload
Параметры утилиты
-a — интервал в секундах, для расчета ср. значения, по умолчанию 300 сек;
-i — задает макс. уровень (кбит/сек) для отображения пропускной способности;
-m — отображение нескольких интерфейсов. Не отображаются графики;
-o – опция аналогична -i, но для исходящего трафика;
-t — интервал обновления в мс;
-u — режим: Bit/s, kBit/s, MBit/s… По умолчанию — kBit/s;
-U — режим для подсчета количества проходящего трафика. По умолчанию — MByte;
eth0 – указать интерфейс eth0.
Опции
Для сервера:
- -s — запуск в режиме серверав
- -U — запуск в одном многопоточном режиме UDP
- -D — запуск утилиты в режиме сервера как процесс
Для клиента:
- -c — запуск в режиме клиента
- -d — одновременно двунаправленный тест
- -n — количество байт для передачи
- -r — двунаправленный тест
- -t – указать время теста, сек.
- -F – задать входные данные из файла
- -P — количество параллельных потоков для запуска клиента
Общие:
- -f — [KmKM] формат для отчета: Кбит, Мбит, Кбайт, Мбайт
- -h — помощь
- -i – задать интервал в секундах между отчетами пропускной способности
- -l — [KM] задать длину буфера чтения/записи
- -m — показывать максимальный размер сегмента (MTU — TCP / IP заголовке)
- -o — вывод отчета в указанный файл
- -p — порт для прослушивания/подключения
- -u – использовать протокол UDP (TCP — по умолчанию)
- -w — задать размер окна (размер буфера сокета)
- -B — задать интерфейс или групповой адрес
- -M – установить максимальный размер сегмента (MTU — 40 байт)
- -v — версия утилиты
- -V — использование IPv6
- -y – использовать CSV формат (значения, разделенные запятыми)
- iptraf — утилита для мониторинга сетевой активности.
Запуск утилиты осуществляется командой
iptraf
Первоначально необходимо включить логирование.
Перейти Configure.
Перейти на соответствующий пункт (Logging) и нажать Enter для изменения режима логирования на противоположный.
iptraf включение логированияДля старта мониторинга переходим в IP traffic monitor и выбираем файл для записи логов.
Файл для записи логовIptraf можно запустить также в фоновом режиме, с указанием интерфейса (например eth0)
iptraf -s eth0 -B
Iptraf в фоновом режиме, с указанием интерфейса eth0Как измерить полосу пропускания канала сети (iperf) | pcnetwork
Открыл для себя очень удобную утилиту iperf ( http://dast.nlanr.net/Projects/Iperf/ ). Работает под всеми системами, бесплатная, с открытыми исходниками. Под Windows не требует установки. Пример установки на FreeBSD здесь.
Меряет довольно точно — по крайней мере, результаты правдоподобные, и совпадают друг с другом при нескольких измерениях. Программу нужно запускать на двух компьютерах, по обе стороны тестируемого канала (с одной стороны — в режиме сервера, с другой — в режиме клиента). Скорость (полоса канала) тестируется при этом только в одном направлении — от клиента к серверу, то есть клиент передает данные, а сервер принимает. Чтобы протестировать полосу канала в обратном направлении, сервер и клиент меняются местами на концах канала. iperf может генерить трафик «в никуда», например на несуществующий адрес. С помощью этого можно загрузить канал или сетевой интерфейс на необходимую величину — см. Пример 4. Хорошая инструкция от РТКом по использованию программы здесь. Для получения подсказки об использовании утилиты достаточно набрать iperf –help.
Пример 1 (тестирование по TCP-порту 5001, для другого порта нужно использовать ключ -p).
Запуск сервера (у которого IP 10.50.xx.yy):
>iperf -s
Запуск клиента:
>iperf -c 10.50.xx.yy
Пример 2 (тестирование по UDP-порту 4000):
Запуск сервера (у которого IP 10. 50.xx.yy):
>iperf -s -u -p4000
Запуск клиента:
>iperf -c 10.50.xx.yy -u -p 4000
При тестировании UDP лучше задавать полосу канала, величиной немного более ожидаемой, с помощью ключа -b. Если ключ -b не указать, то предполагается по умолчанию полоса 1 мбит/сек, и скорость при тестировании не будет превышать этой величины. В примере ожидается, что полоса канала должна быть 2 мегабита:
Запуск сервера (у которого IP 10.50.xx.yy):
>iperf -s -u -p4100
Запуск клиента:
>iperf -c 10.50.xx.yy -u -p 4100 -b 2100000
Пример 3.
Скрипт, который устанавливает iperf на удаленной машине как сервис, и запускает его — с помощью этого можно быстро протестировать канал (без проблем с копированием на удаленный компьютер, запуском его и проч.). Для того, чтобы скрипт отработал, пользователь UserName и пароль Pass должны принадлежать пользователю с правами админа.
‘Файл install_iperf.vbs — инсталляция утилиты iperf.exe
‘ и запуск её на удаленной машине.
Dim RemoteSystem
‘IP удаленной машины
RemoteSystem = «10.20.0.35»
‘1. Копируем iperf.exe на удаленный компьютер
Set FSO = CreateObject(«Scripting.FileSystemObject»)
‘ тут указывается путь до локальной копии iperf.exe
Set File = FSO.GetFile(«C:\Distrib\Tools\net\iperf\iperf.exe»)
File.Copy «\\» + RemoteSystem + «\ADMIN$\system32\»
‘2. Install iperf as service on remote machine
On Error Resume Next
Set objSWbemLocator = CreateObject(«WbemScripting.SWbemLocator»)
UserName = «domain_mame\admin» ‘имя пользователя
Pass = «admin_pass»
Set objServices = objSWbemLocator.ConnectServer(RemoteSystem, «root\CIMV2», UserName, Pass, Null, Null, 0)
If Err.Number <> 0 Then
WScript.Echo Err.Number & «: » & Err.Description
WScript.Quit
End If
Set objClass = objServices.Get(«Win32_Process»)
‘ информация на удаленном компьютере будет выводиться в лог, находящийся
‘ в системной папке ADMIN$\system32
Res = objClass. Create(«iperf -s -D -o iperflog.txt», Null, Null, PID)
If Res <> 0 Then
WScript.Echo «error code: » & Res
End If
‘3. Start iperf service on remote machine
Set objWMIService = GetObject(«winmgmts:» _
& «{impersonationLevel=impersonate}!\\» & RemoteSystem & «\root\cimv2»)
Set colListOfServices = objWMIService.ExecQuery _
(«SELECT IPerfService FROM Win32_Service WHERE State = ‘Stopped’ and StartMode = » _
& «‘Auto'»)
For Each objService in colListOfServices
objService.StartService()
Next
При желании можно добавить к скрипту другие вкусности — обработку командной строки, где указывается remote IP, порт для тестирования, протокол UDP или TCP и проч.
Пример 4 (загрузка канала пустым трафиком, с обратной стороны сервера iperf может и не быть):
>iperf -c 192.168.3.125 -u -b 100m -t 60
Здесь в качестве IP адреса (192.168.3.125) может быть даже отсутствующий (невидимый) в сети host, протокол указан UDP (-u), указана полоса загрузки 100 мегабит (-b 100m), время посылки пакетов 60 секунд (-t 60).
Пример 5. На скорость может иногда влиять размер окна TCP (TCP window size). Этот параметр можно задать опцией -w. Если не задавать, то по умолчанию размер окна принимается величиной 8 кБайт.
>iperf -s -p4100 -w1400
Здесь указан размер окна 1400 байт. Размер окна есть смысл указывать только на сервере, поскольку он является приемником данных. Можно также указывать величину окна в килобайтах, например -w9k, -w10k, -w40k.
Пример 6. Запуск в режиме демона (как служба, она в списке служб будет называться IPerf Service), протокол UDP, порт по умолчанию 5001:
>iperf -D -u -s
Остановка и удаление службы:
>iperf -R -s
Следующая информация по TCP window size взята из хорошей статьи «Оптимизация работы протокола ТСР в распределенных сетях».
В системе Windows NT размер приемного окна может увеличиваться на величину, кратную максимальному размеру сегмента (Maximum Segment Size, MSS). Значение MSS определяется во время установления соединения. По умолчанию приемное окно задает размер данных 8 Кбайт для Windows NT 4.0 и 16 Кбайт для Windows NT 5.0. Такой размер окна выставляется в реестре операционной системы (параметр ТсрWindowSize — столбец 2 табл. 1). Размер окна, устанавливаемый в сетях Ethernet, позволяет передать 8760 байт информации (8 Кбайт, размещенные в шести сегментах по 1460 байт) для операционной системы Windows NT 4.0 и 17520 байт (16 Кбайт, размещенные в 12 сегментах по 1460 байт) для Windows NT 5.0.
Таблица 1. Параметры реестра Windows NT, регулирующие работу протокола TCP
Параметр | ТсрWindowSize | Tcp1323Opts |
Ключ в реестре | Tcpip\Parameters, Tcpip\Parameters\Interface\ | Tcpip\Parameters |
Тип записи | REG_DWORD — Number of bytes (количество байтов) | REG_DWORD — Number (флаги) |
Возможные значения | 0 — 0x3FFFFFFF (десятичное — 1073741823) | 0, 1, 2, 3 |
Значение по умолчанию | 17 520 (для сети Ethernet) | 3 |
Для ОС Microsoft Windows NT 5. 0 размер окна рассчитывается следующим образом. Первый запрос на установление соединения, посылаемый удаленному абоненту, предлагает установить размер окна, определяющий 16 Кбайт (16 384 байт) данных. После формирования соединения размер приемного окна округляется до объема данных, кратных максимальному размеру сегмента MSS, который был оговорен в процессе установления соединения. Если размер приемного окна определяет объем данных, близкий к четырехкратному значению MSS, то окно выравнивается до значения 4MSS, которое сохранится до тех пор, пока не будет активизирован алгоритм масштабирования окна.
В операционной системе Windows NT 5.0 окно масштабируется автоматически, если параметр ТсрWindowSize реестра установлен в значение, превосходящее 64 Кбайт. Масштабирование окна можно запретить вручную параметром Tcp1323Opts (столбец 3 табл. 1).
Работать с окном, размер которого превышает 64 Кбайт, можно только в том случае, если абонент поддерживает эту опцию. Значение по умолчанию устанавливается как наименьшее из следующих величин: 0xFFFF; значение дополнительного параметра GlobalMaxTcpWindowSize в реестре ОС Windows NT; наибольшее из четырехкратного значения максимального размера данных TCP в сети и значения 16 384, выравненного до кратного размера данных протокола TCP. Значение по умолчанию для сети Ethernet составляет 17 520 байт (в реализации TCP для Windows NT 5.0). Оно может быть немного уменьшено, если соединение установлено с абонентом, который поддерживает алгоритмы SACK и временные метки (time stamp), так как они увеличивают размер заголовка протокола TCP сверх обычного 20-байтного размера, оставляя меньше места для данных.
Размер окна является одновременно и глобальным параметром, и параметром, устанавливаемым отдельно на каждом интерфейсе в зависимости от того, где расположен ключ реестра. Значение для определенного интерфейса перекрывает значение для всей системы.
Параметр Tcp1323Opts может принимать следующие значения: 0 — применение опций RFC 1323 запрещено, 1 — разрешено использовать только масштабирование окна; 2 — разрешено применять только временные метки; 3 — разрешено использовать обе опции.
На рисунке иллюстрируется пример тестирования канала связи между IP 10.81.23. 103 (на нем запущена сессия RDP и в ней командная строка для запуска ipef) и IP 10.50.0.246 UDP-трафиком на порте 4100 (-u -p4100) в течение 2 минут (-t 120):
На заднем плане видно окно RDP компьютера 10.81.23.103, в котором запущен taskmgr в режиме отрображения утилизации сети (слева вверху) и iperf в режиме сервера (справа вверху). Внизу запущены два такие же окна на локальной машине 10.50.0.246 (iperf работает в режиме клиента). Ожидаемая полоса пропускания канала должна быть 40 мегабит, поэтому в командной строке клиента (он посылает трафик на сервер) указана несколько бОльшая полоса — 41 мегабит (-b 41000000). На диаграмме taskmgr хорошо видно, что пакеты до сервера дошли не все — у taskmgr сервера загрузка сетевого интерфейса во время теста была несколько меньше, чем у клиента (в среднем 37% против 41%). Это хорошо согласуется с результатами выдачи iperf — скорость отправки 39.4 мегабита, скорость приема 35.1 мегабит, потеряно 11% пакетов. Итак, по результатам теста полоса пропускания в направлении от хоста 10. 50.0.246 к хосту 10.81.23.103 примерно соответствует заявленной полосе 40 мегабит.
[Ссылки]
1. FreeBSD: установка iperf.
2. Технология измерения пропускной способности канала на оборудовании Cisco.
Филиал ЗАО «Компания ТрансТелеКом» «Макрорегион Сахалин»
Как правильно протестировать емкость предоставленного порта?
Для того чтобы убедиться, в том, что емкость предоставленного порта не хуже оговоренного контрактного значения, клиент может провести тестирование. Для проведения тестов необходимо осуществить пропуск трафика через магистраль ТТК с максимально возможной скоростью. Следует понимать, что трафик пропущенный через сеть ТТК в ходе тестирования подлежит оплате.
- Методика тестирования требует соблюдения некоторых условий:
- для измерения необходимо наличие двух портов IP VPN: передающего и принимающего
- емкость второго порта должна быть не меньше емкости тестируемого порта
- необходимо на время тестов исключить весь трафик, кроме трафика от генераторов
- результаты измерения полосы, полученные от стандартных неспециализированных программных средств (ftp, http и пр. ) нельзя считать корректными, поскольку они используют стандартные настройки TCP/IP стека операционной системы, которые, в некоторых случаях не позволяют разгонять полосу пропускания выше определенного значения.
- в качестве программного средства для измерения полосы пропускания рекомендуется использовать свободно распространяемую утилиту Iperf (http://dast.nlanr.net/Projects/Iperf/)
- измерение максимально допустимой полосы следует проводить с использованием протокола TCP
Схема испытаний приведена на рисунке:
В LAN двух сайтов клиента подключаются два PC с установленной на них утилитой Iperf. Iperf работает в режиме клиент-сервер: одно приложение запускается в качестве серверного, а второе – как клиентское. Клиент открывает соединение с сервером и генерирует трафик на него с максимально-возможной скоростью. После окончания сессии рассчитывается значение пропускной способности, которое является усредненным за период теста.
Для получения подсказки об использовании утилиты достаточно набрать iperf –help, так же информацию по использованию можно получить с сайта http://dast. nlanr.net/Projects/Iperf/
[maxim@huan iperf]$ ./iperf —helpUsage: iperf [-s|-c host] [options]
iperf [-h|—help] [-v|—version]
Client/Server:
-f, —format [kmKM] format to report: Kbits, Mbits, KBytes, MBytes
-i, —interval # seconds between periodic bandwidth reports
-l, —len #[KM] length of buffer to read or write (default 8 KB)
-m, —print_mss print TCP maximum segment size (MTU — TCP/IP header)
-p, —port # server port to listen on/connect to
-u, —udp use UDP rather than TCP
-w, —window #[KM] TCP window size (socket buffer size)
-B, —bind bind to , an interface or multicast address
-C, —compatibility for use with older versions does not sent extra msgs
-M, —mss # set TCP maximum segment size (MTU — 40 bytes)
-N, —nodelay set TCP no delay, disabling Nagle’s Algorithm
-V, —IPv6Version Set the domain to IPv6
Server specific:
-s, —server run in server mode
-D, —daemon run the server as a daemon
Client specific:
-b, —bandwidth #[KM] for UDP, bandwidth to send at in bits/sec
(default 1 Mbit/sec, implies -u)
-c, —client run in client mode, connecting to <host>
-d, —dualtest Do a bidirectional test simultaneously
-n, —num #[KM] number of bytes to transmit (instead of -t)
-r, —tradeoff Do a bidirectional test individually
-t, —time # time in seconds to transmit for (default 10 secs)
-F, —fileinput <name> input the data to be transmitted from a file
-I, —stdin input the data to be transmitted from stdin
-L, —listenport # port to recieve bidirectional tests back on
-P, —parallel # number of parallel client threads to run
-T, —ttl # time-to-live, for multicast (default 1)
</name></host></host>Miscellaneous:
-h, —help print this message and quit
-v, —version print version information and quit
[KM] Indicates options that support a K or M suffix for kilo- or mega-
The TCP window size option can be set by the environment variable
TCP_WINDOW_SIZE. Most other options can be set by an environment variable
IPERF_<long option=»» name=»»>, such as IPERF_BANDWIDTH.
Report bugs to [email protected]
Измерения рекомендуется производить не менее чем на трехминутном интервале.
Ниже приведен пример использования утилиты. В качестве PC используются две Linux-машины Huan 172.16.12.1 (сервер) и Lizard 172.16.10.1 (клиент). На серверной стороне выполняется команда
iperf -s -p 1111
после этого на клиентской стороне выполняется команда
iperf -c 172.16.12.1 —format k -m -p 1111 -t 180
Отчет со стороны сервера:
[maxim@huan bin]$ ~/iperf/iperf -s -p 1111
————————————————————
Server listening on TCP port 1111
TCP window size: 85.3 KByte (default)
————————————————————
[ 6] local 172.16.12.1 port 1111 connected with 172.16.10.1 port 43410
[ ID] Interval Transfer Bandwidth
[ 6] 0.0-180.1 sec 79.6 MBytes 3.71 Mbits/sec
Отчет со стороны клиента:
[maxim@lizard bin]$ ~/iperf/iperf -c 172.16.12.1 —format k -m -p 1111 -t 180
————————————————————
Client connecting to 172.16.12.1, TCP port 1111
TCP window size: 16.0 KByte (default)
————————————————————
[ 5] local 172.16.10.1 port 43410 connected with 172.16.12.1 port 1111
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.2 sec 81488 KBytes 3705 Kbits/sec
[ 5] MSS size 1444 bytes (MTU 1500 bytes, ethernet)
в данном случае измерялся 4M канал, реально измерения показали емкость на 7% меньше. Допустимая погрешность измерения до 10-15% определяется ростом очередей на маршрутизаторе при утилизации физического канала свыше 80%. Измерения полосы на 4M физическом канале, скорость которого ограничена механизмом CAR до 2M показывают следующие результаты:
Отчет со стороны сервера:
[ 6] local 172.16.12.1 port 1111 connected with 172.16.10.1 port 43475
[ ID] Interval Transfer Bandwidth
[ 6] 0.0-10.1 sec 2.52 MBytes 2.09 Mbits/sec
Отчет со стороны клиента:
[maxim@lizard bin]$ ~/iperf/iperf -c 172.16.12.1 —format k -m -p 1111 -t 10
————————————————————
Client connecting to 172.16.12.1, TCP port 1111
TCP window size: 16.0 KByte (default)
————————————————————
[ 5] local 172.16.10.1 port 43475 connected with 172.16.12.1 port 1111
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-10.2 sec 2584 KBytes 2085 Kbits/sec
[ 5] MSS size 1444 bytes (MTU 1500 bytes, ethernet)
Как видим, предположения о погрешности при физическом ограничении канала оказались верными.
вернуться к списку
Устранение неполадок со скоростью клиента с помощью iPerf
- Последнее обновление
- Сохранить как PDF
- iPerf3
- Запуск тестов iPerf3
- Windows
- Клиент
- Сервер
- Linux
- Клиент
- Сервер
- Windows
- Размер окна TCP
- Parallel Streams
- Запуск тестов iPerf3
- Параллельный поток
- Windows
- Клиент
- Сервер
- Использование портов UDP для тестирования
- Установка целевой полосы пропускания для подключений
- Использование пакетного режима с целевой пропускной способностью
iPerf — это инструмент, который можно использовать для тестирования скорости и пропускной способности LAN и WLAN.Он работает, генерируя трафик с компьютера, выступающего в качестве клиента, который отправляется на IP-адрес компьютера, выступающего в качестве сервера. Затем пропускная способность измеряется с помощью тестов TCP, которые предназначены для отображения фактического представления получаемых вами сетевых скоростей. iPerf также можно использовать для определения качества связи или задержки тестирования, джиттера и потери дейтаграмм. В этой статье объясняется, как использовать iPerf и iPerf3 для проверки скорости LAN и WLAN.
Примечание: Для запуска этого теста вам потребуются два сетевых компьютера, которые имеют доступ друг к другу через вашу локальную локальную сеть.На каждом компьютере должна быть установлена копия программного обеспечения iPerf или iPerf3.
iPerf3
Запуск тестов iPerf3
После загрузки iPerf3:
1. Откройте командную строку и перейдите в папку, содержащую файл iperf3.exe.
Пример: если файл находится на вашем рабочем столе, вы должны использовать в командной строке следующее:
компакт-диск C: \ Users \ Администратор \ Рабочий стол \ iperf-3.1.3-win64
2. В командной строке на стороне сервера выполните эту команду.Это скажет ему прослушивать порт 5201 (порт по умолчанию) для данных клиента:
iperf3 -s
3. В командной строке на стороне клиента выполните эту команду:
iperf3 -c 10.0.0.105
Пока клиент и сервер подключены к одной сети, вы должны получить результат, аналогичный следующему на стороне сервера и клиента, соответственно:
Окна
Клиент
Сервер
Linux
Клиент
Сервер
Есть также несколько параметров, которые можно запустить на стороне клиента, чтобы изменить тип отправляемых данных.
Для измерения пропускной способности в обоих направлениях используйте опцию r.
- iperf3 -c 10.0.0.105 -R
Примечание: Строчная буква «r» НЕ будет работать и должна быть заглавной в iPerf3
Для одновременного измерения пропускной способности в обоих направлениях используйте опцию d.
Размер окна TCP
Отправка больших потоков данных по быстрым соединениям может привести к большой загрузке ЦП, особенно при тестировании каналов со скоростью 1 Гбит / с. Указание большего размера окна сокращает объем обработки, которая должна выполняться как на клиентском, так и на серверном компьютерах.Размер окна устанавливает количество данных, которые могут быть переданы до того, как они будут синхронизированы. Чтобы указать размер окна при использовании iperf3, используйте команду option w. Число по умолчанию указано в байтах, но вы также можете указать K и M для килобайт и мегабайт соответственно.
Клиент:
iperf3 -c 10.0.0.105 -w 2000
-w позволяет установить размер окна вручную. Это значение может быть от 2 до 65 535. В предыдущем примере размер окна установлен на 2000 байтов
Сервер:
iperf3 -s
В предыдущем примере размер окна установлен на 4000 килобайт
Параллельные потоки
iPerf3 также позволяет одновременно отправлять параллельные потоки.Это отправляет несколько потоков трафика через туннель для более полного тестирования ссылки.
Примечание: При использовании каналов 1 Гбит / с вы хотите использовать размер окна и параллельные потоки. Используйте больше параллельных потоков, если пытаетесь полностью заполнить высокоскоростной канал.
Клиент:
iperf3 -c 10.0.0.105 -P 2
Это iPerf запускает 2 параллельных потока
Сервер:
iperf3 -s
Сторона сервера не должна включать параметры параллельных потоков, поскольку она уже прослушивает какой-либо трафик.
Оригинальный iPerf
Запуск тестов iPerf
После загрузки iPerf:
1. Откройте командную строку и перейдите в папку, содержащую файл iperf.exe.
Пример: если файл находится на вашем рабочем столе, вы должны использовать в командной строке следующее:
компакт-диск C: \ Users \ Administrator \ Desktop \ iperf-2.0.5-2-win32
2. В командной строке на стороне сервера выполните эту команду. Это скажет ему прослушивать порт 5001 (порт по умолчанию) для данных клиента:
iperf -s
3.В командной строке на стороне клиента запустите эту команду:
iperf -c 10.0.0.105
Пока клиент и сервер подключены к одной сети, вы должны получить результат, аналогичный следующему на стороне сервера и клиента, соответственно:
Окна Клиент СерверЕсть также несколько параметров, которые можно запустить на стороне клиента, чтобы изменить тип отправляемых данных.
Для измерения пропускной способности в обоих направлениях используйте опцию r.
iperf -c 10.0.0.105 -r
Для одновременного измерения пропускной способности в обоих направлениях используйте опцию d.
iperf -c 10.0.0.105 -d
Размер окна TCP
Отправка больших потоков данных по быстрым соединениям может привести к большой загрузке ЦП, особенно при тестировании каналов со скоростью 1 Гбит / с. Указание большего размера окна сокращает объем обработки, которая должна выполняться как на клиентском, так и на серверном компьютерах.Размер окна устанавливает количество данных, которые могут быть переданы до того, как они будут синхронизированы. Чтобы указать размер окна при использовании iperf, используйте команду option w. Число по умолчанию указано в байтах, но вы также можете указать K и M для килобайт и мегабайт соответственно.
Клиент:
iperf -c 10.0.0.105 -w 2000
-w позволяет установить размер окна вручную. Это значение может быть от 2 до 65 535. В предыдущем примере размер окна установлен на 2000 байтов
Сервер:
iperf -s -w 4000K
В предыдущем примере размер окна установлен на 4000 килобайт
Параллельные потоки
iPerf также позволяет одновременно отправлять параллельные потоки.Это отправляет несколько потоков трафика через туннель для более полного тестирования ссылки.
Примечание: При использовании каналов 1 Гбит / с вы хотите использовать размер окна и параллельные потоки. Используйте больше параллельных потоков, если пытаетесь полностью заполнить высокоскоростной канал.
Клиент:
iperf -c 10.0.0.105 -P 2
Это iPerf запускает 2 параллельных потока
Сервер:
iperf -s
Сторона сервера не должна включать параметры параллельных потоков, поскольку она уже прослушивает какой-либо трафик.
Дополнительные флаги
Использование портов UDP для тестирования
И iPerf 3, и исходный iPerf позволяют использовать порты UDP для целей тестирования с флагом -u на стороне клиента соединения.
Клиент:
(iperf ИЛИ iperf3) -c 10.0.0.105 -u 5001
Это инициирует соединение от клиента к серверу по адресу 10.0.0.105, используя порт UDP 5001.
Сервер:
(iperf ИЛИ iperf3) -s
Никакой специальной настройки на стороне сервера не требуется.
Установка целевой полосы пропускания для подключений
И iPerf 3, и исходный iPerf поддерживают настройку целевой полосы пропускания для UDP- и TCP-соединений с флагом -b на стороне клиента. Целевая полоса пропускания по умолчанию для соединений UDP составляет 1 Мбит / с, а целевая полоса пропускания по умолчанию для соединений TCP не ограничена. В случае нескольких потоков с флагом -P цель устанавливается для каждого отдельного потока.
Клиент:
(iperf ИЛИ iperf3) -c 10.0,0.105 -u 6789 -b 5M
Это инициирует соединение от клиента к серверу на 10.0.0.105, используя порт UDP 6789 с целевой пропускной способностью 5 Мбит / с. Буква «K» может использоваться для обозначения Кбит / с, и только числовое значение будет интерпретироваться как бит / секунду.
Сервер:
(iperf ИЛИ iperf3) -s
Никакой специальной настройки на стороне сервера не требуется.
Использование пакетного режима с целевой полосой пропускания
В дополнение к функции целевой полосы пропускания, существует функция, называемая «Пакетный режим», которая может быть установлена с соединениями TCP или UDP, чтобы позволить серию пакетов отправляться последовательно от клиента без паузы.Это можно сделать, добавив косую черту и число после указателя полосы пропускания, где число после косой черты — это количество пакетов, которые должны быть быстро переданы, даже если оно временно превышает целевую полосу пропускания.
Клиент:
(iperf ИЛИ iperf3) -c 10.0.0.105 -p 3456 -b 8K / 5
Это инициирует соединение от клиента к серверу на 10.0.0.105, на TCP-порту 3456, с целевой пропускной способностью 8 Кбит / с и разрешает пакетную передачу 5 пакетов без паузы, даже если это означает, что пропускная способность временно превышает 8 Кбит / с.
Сервер:
(iperf ИЛИ iperf3) -s
Никакой специальной настройки на стороне сервера не требуется.
Как вы используете iPerf?
Ответ
Ответ
iPerf — это простой инструмент диагностики сети с открытым исходным кодом и командной строкой, который можно запустить в операционных системах Linux, BSD или Windows и установить на двух конечных точках. Одна конечная точка работает в «серверном» режиме, который прослушивает запросы.Другая конечная точка работает в «клиентском» режиме и отправляет данные. Когда инструмент активирован, он пытается полностью использовать ссылку, пока он сообщает результаты.
Как установить iPerf?
Чтобы установить iperf, выполните следующий процесс, который применим к вашей операционной системе:
- Windows Server
Загрузите последнюю версию iPerf с SourceForge и установите приложение на свой сервер. - Операционные системы CentOS / Red Hat Linux
Выполните следующую команду в командной строке:
yum install iperf - Операционные системы Debian / Ubuntu Linux
Выполните следующие команды в командной строке:
apt-get update
apt-get -y установить iperf
Как вы используете iPerf?
На стороне сервера выполните следующую команду:
iperf -s
На стороне клиента выполните следующую команду:
iperf -c [server_ip]
Следующая информация представляет собой пример команды и ее выходных данных. на стороне клиента:
iperf -c 10.10.10.5
———————————————- —————
Клиент, подключающийся к 10.10.10.5, TCP-порт 5001
Размер окна TCP: 16,0 КБ (по умолчанию)
————— ———————————————-
[3] local 0.0.0.0 порт 46956 соединен с портом 168.192.1.10 5001
[ID] Интервал пропускной способности передачи
[3] 0,0–10,0 с 10,0 МБ 1,00 Мбит / с
Каковы рекомендуемые результаты настройки iPerf, которые следует отправить в IBM Облачная поддержка?
Отправить IBM Cloud Support результаты следующих команд.Скопируйте и вставьте текст своих результатов в заявку и четко укажите, какое устройство связано с результатами.
- Двунаправленный поток трафика TCP 1 Gig
Сторона сервера:
iperf -s
Сторона клиента:
iperf -c xxxx -i 10 -t 100 –P 10 –b 100M -d - Двунаправленный поток трафика TCP 10 Gig
Сервер Сторона:
iperf -s
Сторона клиента:
Iperf -c xxxx -i 10 -t 100 –P 10 –b 1000M -d - Двунаправленный поток трафика 1 Gig UDP
Сторона сервера:
iperf -s -u
На стороне клиента:
Iperf -c x.xxx -i 10 -t 100 –P 10 –b 100M -u - Двунаправленный поток трафика UDP 10 Gig
Сторона сервера:
iperf -s -u
Сторона клиента:
Iperf -c xxxx -i 10 -t 100 — P 10 –b 1000M -u
Краткое руководство
Чтобы проверить связь в течение 20 секунд и просматривать результаты каждые 2 секунды, вы можете изменить команды на стороне клиента и на стороне сервера следующим образом:
- Клиентская сторона:
iperf -c 10.10.10.5 -p 8000 -t 20 -i 2
Пример результатов:
———————- —————————————
Клиент подключается к 10.10.10.5, порт TCP 8000
Размер окна TCP: 16,0 КБ (по умолчанию)
——————————— —————————-
[3] локальный порт 10.10.10.10 46956 соединен с портом 10.10.10.5 8000
[ID] Интервал Пропускная способность передачи
[3] 0,0–2,0 с 6,00 МБ 25,2 Мбит / с
[3] 2,0–4,0 с 7,12 МБ 29,9 МБит / с
[3] 4,0–6,0 с 7,00 МБ 29,4 Мбит / с
[3] 6,0– 8,0 с 7,12 МБ 29,9 Мбит / с
[3] 8,0-10.0 с 7,25 МБ 30,4 МБ / с
[3] 10,0–12,0 с 7,00 МБ 29,4 МБ / с
[3] 12,0–14,0 с 7,12 МБ 29,9 МБ / с
[3] 14,0–16,0 с 7,25 МБ 30,4 МБ / с
[3] 16,0–18,0 с 6,88 МБ 28,8 МБ / с
[3] 18,0–20,0 с 7,25 МБ 30,4 МБ / с
[3] 0,0–20,0 с 70,1 МБ 29,4 МБ / с - Сторона сервера:
iperf -s -p 8000 -i 2
Пример результатов:
———————————— ————————-
Сервер прослушивает TCP-порт 8000
Размер окна TCP: 8.00 КБайт (по умолчанию)
——————————————— —————-
[852] локальный порт 10.10.10.5 8000 соединен с портом 10.10.10.10 58316
[ID] Интервал пропускной способности передачи
[4] 0,0–2,0 с 6,05 МБ 25,4 Мбит / с
[4] 2,0–4,0 с 7,19 МБ 30,1 Мбит / с
[4] 4,0–6,0 с 6,94 МБ 29,1 Мбит / с
[4] 6,0–8,0 с 7,19 МБ 30,2 Мбит / с
[4] 8,0–10,0 с 7,19 МБ 30,1 Мбит / с
[4] 10,0–12,0 с 6.95 МБ 29,1 МБит / с
[4] 12,0–14,0 с 7,19 МБ 30,2 МБ / с
[4] 14,0–16,0 с 7,19 МБ 30,2 МБ / с
[4] 16,0–18,0 с 6,95 МБ 29,1 МБ / с
[ 4] 18,0–20,0 с 7,19 МБ 30,1 Мбит / с
[4] 0,0–20,0 с 70,1 МБ 29,4 МБ / с
Как изменить порт TCP (-p 8000)?
Вы можете внести изменения, используя следующую информацию:
- Клиентская сторона:
# iperf -i 2 -t 20 -c 10.10.10.5 -p 8000 -w 1024k
Пример результатов:
———————————— ————————-
Клиент, подключающийся к 10.10.10.5, TCP-порт 8000
Размер окна TCP: 1,00 МБ (ВНИМАНИЕ: запрошено 1,00 МБ)
————————————————- ————
[3] локальный порт 10.10.10.10 53903 подключен к порту 10.10.10.5 5001
[ID] Интервал пропускной способности передачи
[3] 0,0–2,0 с 25,9 МБ 109 Мбит / с
[3] 2.0–4,0 с 28,5 МБ 120 Мбит / с
[3] 4,0–6,0 с 28,4 МБ 119 МБ / с
[3] 6,0–8,0 с 28,9 МБ 121 Мбит / с
[3] 8,0–10,0 с 28,0 МБ 117 МБ / с
[3] 10,0–12,0 с 29,0 МБ 122 Мбит / с
[3] 12,0–14,0 с 28,0 МБ 117 МБит / с
[3] 14,0–16,0 с 29,0 МБ 122 Мбит / с
[3] 16,0- 18,0 сек 27,9 МБ 117 Мбит / сек
[3] 18,0-20,0 сек 29,0 МБ 122 Мбит / сек
[3] 0,0-20,0 сек 283 МБ 118 Мбит / сек - Сторона сервера:
#iperf -s -w 1024k -i 2 -p 8000
Пример результатов:
————————————— ———————-
Сервер прослушивает TCP-порт 8000
Размер окна TCP: 1.00 МБ
———————————————— ————-
[4] локальный порт 10.10.10.5 8000 соединен с портом 10.10.10.10 53903
[ID] Интервал пропускной способности передачи
[4] 0,0–2,0 с 25,9 МБ 109 Мбит / с
[4] 2,0–4,0 с 28,6 МБ 120 Мбит / с
[4] 4,0–6,0 с 28,3 МБ 119 МБ / с
[4] 6,0–8,0 с 28,9 МБ 121 Мбит / с
[4] 8,0–10,0 с 28,0 МБ 117 Мбит / с
[4] 10,0–12,0 с 29.0 МБ 121 Мбит / с
[4] 12,0–14,0 с 28,0 МБ 117 МБ / с
[4] 14,0–16,0 с 29,0 МБ 122 Мбит / с
[4] 16,0–18,0 с 28,0 МБ 117 Мбит / с
[ 4] 18,0–20,0 с 29,0 МБ 121 Мбит / с
[4] 0,0–20,0 с 283 МБ 118 МБ / с
Как увеличить окно TCP?
Вы можете увеличить окно TCP (-w 1024k), используя следующую информацию:
- Клиентская сторона:
iperf -i 2 -t 20 -c 10.10.10.5 -w 1024k - Сторона сервера:
iperf -s -w 1024k -i 2
Если увеличить окно TCP со значения по умолчанию до 1 МБ (1024k), вы можете увидеть увеличение пропускной способности на 400% по сравнению с исходный уровень. Однако, к сожалению, это значение размера окна ограничено конкретной операционной системой. Чтобы повысить эффективность, можно рассмотреть параллельные потоки. При одновременном использовании нескольких потоков вы можете использовать трубу, максимально приближенную к ее максимальному полезному объему.
Как использовать параллельные потоки (-P 7)?
Для моделирования нескольких процессов можно использовать следующую команду:
iperf -i 2 -t 20 -c -p 8000 10.10.10.5 -w 1024k -P 7
Примечание : Хотя следующие примеры показывают 7 параллельных потоков, для большей эффективности рекомендуется использовать 10 параллельных потоков.
- Сторона клиента:
iperf -i 2 -t 20 -c -p 10.10.10.5 -w 1024k -P 7Пример результатов:
——————- ——————————————
Клиент, подключающийся к 10.10.10.5, TCP порт 8000
Размер окна TCP: 1,00 МБ (ВНИМАНИЕ: запрошено 1,00 МБ)
——————————— —————————
[ID] Интервал пропускной способности передачи
[9] 0.0–2,0 с 24,9 МБайт 104 Мбит / с
[4] 0,0–2,0 с 24,9 МБ 104 МБит / с
[7] 0,0–2,0 с 25,6 МБ 107 МБит / с
[8] 0,0–2,0 с 24,9 МБ 104 МБит / с
[5] 0,0–2,0 с 25,8 МБ 108 Мбит / с
[3] 0,0–2,0 с 25,9 МБ 109 МБ / с
[6] 0,0–2,0 с 25,9 МБ 109 Мбит / с
[SUM] 0,0- 2,0 с 178 МБ 746 Мбит / сПримечание : Некоторые выходные данные для сервера и клиента опущены для краткости.
[7] 18,0-20,0 с 28,2 МБ 118 Мбит / с
[8] 18,0-20,0 с 28,8 МБ 121 Мбит / с
[5] 18,0-20,0 с 28,0 МБ 117 Мбит / с
[4] 18,0-20,0 с 28,0 МБ 117 Мбит / с
[3] 18,0-20,0 с 28,9 МБ 121 Мбит / с
[9] 18,0-20,0 с 28,8 МБ 121 Мбит / с
[6] 18,0-20,0 с 28,9 МБ 121 Мбит / с
[SUM] 18,0-20,0 с 200 МБ 837 Мбит / с
[SUM] 0,0-20,0 с 1,93 ГБ 826 Мбит / с - На стороне сервера:
iperf -s -w 1024k -i 2 -p 8000Результаты примера:
————————————————- ————
Сервер прослушивает TCP-порт 8000
Размер окна TCP: 1.00 МБ
———————————————— ————-
[4] локальный порт 10.10.10.10 8000 соединен с портом 10.10.10.5 53903
[ID] Интервал пропускной способности передачи
[5] 0,0–2,0 с 25,7 МБ 108 Мбит / с
[8] 0,0–2,0 с 24,9 МБ 104 Мбит / с
[4] 0,0–2,0 с 24,9 МБ 104 Мбит / с
[9] 0,0–2,0 с 24,9 МБ 104 Мбит / с
[10] 0,0–2,0 с 25,9 МБ 108 Мбит / с
[7] 0,0–2,0 с 25.9 Мбайт 109 Мбит / с
[6] 0,0–2,0 с 25,9 МБ 109 Мбит / с
[SUM] 0,0–2,0 с 178 МБ 747 Мбит / с[4] 18,0–20,0 с 28,8 МБ 121 Мбит / с
[5] 18,0-20,0 с 28,3 МБ 119 Мбит / с
[7] 18,0-20,0 с 28,8 МБ 121 Мбит / с
[10] 18,0-20,0 с 28,1 МБ 118 Мбит / с
[9] 18,0-20,0 с 28,0 Мбайт 118 Мбит / с
[8] 18,0–20,0 с 28,8 МБ 121 Мбит / с
[6] 18,0–20,0 с 29.0 МБ 121 Мбит / с
[SUM] 18,0-20,0 с 200 МБ 838 Мбит / с
[SUM] 0,0-20,1 с 1,93 ГБ 825 Мбит / с
Как видно из предыдущих тестов, мы смогли для увеличения пропускной способности с 29 Мбит / с с одним потоком и окном TCP по умолчанию до 824 Мбит / с с использованием более высокого окна и параллельных потоков. Для гигабитного канала эти результаты показывают максимальную пропускную способность, которую вы могли бы достичь до того, как канал переполнится и вызовет потерю пакетов. Используя эти процессы, вы можете проверить сеть и убедиться, что пропускная способность не является проблемой.Основываясь на этой информации, вы можете сосредоточиться на настройке TCP, чтобы получить максимальную отдачу от вашей сети.
Как правило, использование 90% — это реальный максимум, которого вы можете достичь. Использование более 90% приведет к перегрузке канала и потере пакетов.
Дополнительные советы по работе в сети:
- Вы можете протестировать UDP, если вас в первую очередь беспокоит пропускная способность вашей сети. TCP требует настройки, и, следовательно, определить, является ли хост способствующим фактором, в потоке TCP сложнее.Если потеря пакетов является проблемой, TCP значительно усугубит проблему. Следующие команды будут измерять пропускную способность вашей сети:
- Сторона сервера:
iperf -s -u - Сторона клиента:
iperf -i 2 -t 20 -c 10.10.10.5 -u
- Сторона сервера:
- Интервал отчета длина будет способствовать тому, насколько шумным будет отчет. Для средних значений установите более длительный период.
[{«Бизнес-подразделение»: {«код»: «BU053», «ярлык»: «Облачная платформа и платформа данных»}, «Продукт»: {«код»: «SSCL81», «ярлык»: «Сетевые инструменты»} , «Компонент»: «», «Платформа»: [{«код»: «PF025», «метка»: «Независимая платформа»}], «Версия»: «Все версии», «Редакция»: «», » Направление деятельности «: {» code «:» «,» label «:» «}}]
Как использовать iperf, полное руководство
Когда вы покупаете интернет-ссылку, вы хотите увидеть, получаете ли вы то, за что платите.Если вы хотите сделать это дома, вы можете использовать множество сервисов для проверки скорости. Популярные примеры — Speedtest от Ookla, Telstra или Verizon. Однако эти методы недостаточно надежны для предприятия. Кроме того, вы можете тестировать только скорость Интернета, но не скорость на внутренних / частных каналах. Вот почему на уровне предприятия мы используем iperf (на самом деле iperf3), мощный и бесплатный инструмент. В этом руководстве мы увидим, как использовать iperf для надежной проверки скорости любой ссылки.
Начало работы с iperf
Что такое iperf?
Iperf — это инструмент командной строки, который позволяет тестировать пропускную способность любым удобным для вас способом.В отличие от онлайн-тестов скорости, вы должны предоставить и сервер, и клиент. Другими словами, при проведении онлайн-теста скорости вы подключаетесь к серверу в Интернете, принадлежащему провайдеру теста (например, Ookla). Затем приложение измеряет производительность сети между вами и таким сервером. Вместо этого с iperf вы должны настроить свой собственный сервер iperf. Не волнуйтесь, вам не нужно специальное оборудование, вам нужно только запустить команду из командной строки. Фактически, у вас может быть и сервер, и клиент на одном компьютере.
Преимущество использования собственного сервера — предсказуемость. Вы знаете, где находится сервер, и можете повторить тест в будущем. Это не относится к онлайн-сервисам, где они выделяют вам сервер динамически. Это означает, что вы не сможете воспроизвести тот же тест в будущем, если проведете онлайн-тест скорости. Поскольку вы размещаете сервер в любое время, вы также можете разместить его во внутренней сети и, таким образом, протестировать внутренние ссылки.
Получение iperf
Версия iperf для соболя — iperf3.Это бесплатное программное обеспечение (лицензия BSD), которое вы можете скачать с iperf.fr. В спешке? Вот быстрая ссылка на страницу загрузки. Вы найдете iperf для любой нужной операционной системы и архитектуры. В этом руководстве мы используем iperf3 в Windows (64-разрядная версия), но руководство по использованию iperf одинаково для любой ОС.
Если вы работаете в Windows, как я, вы получите сжатый ZIP-файл. Распакуйте его и, если вы хотите что-то сделать быстрее, скопируйте его содержимое в C: \ Windows \ System32
.Таким образом, у вас всегда будет iperf3 в виде команды в командной строке. Если вы этого не сделаете, вам нужно будет перейти в папку, в которой находится iperf, прежде чем вы сможете дать команду.
Как использовать iperf
Когда у нас есть iperf, нам нужно научиться его использовать. Как мы упоминали выше, нам нужно запустить и сервер, и клиент. Сервер будет продолжать слушать, принимая клиентские соединения. Таким образом, это первое, что нам нужно сделать. Запустить сервер так же просто, как написать в командной строке iperf3 -s
( -s
означает сервер).В первый раз, когда вы сделаете это в Windows, он спросит у вас разрешение на доступ к сети. Конечно, отметьте разрешения и нажмите Разрешить доступ .
После того, как вы разрешите доступ, в подсказке появится простое сообщение о том, что сервер готов принимать соединения. По умолчанию iperf3 прослушивает порт 5201.
Сервер iperf готов принимать соединения.Теперь оставим сервер в покое. Этот сервер будет принимать все наши соединения.Однако мы сможем настроить тесты и даже пилотировать сервер из клиента iperf. Вот где настоящая сделка.
Простой тест скорости с iperf
Теперь, как использовать iperf3 для запуска простого теста скорости? Вы можете просто использовать команду iperf3 -c
, конечно, заменив « -t
, за которым следует количество секунд. Это сообщит iperf3, как долго запускать тест. Обычно достаточно одной-двух минут (чтобы показать, мы будем использовать 5 секунд). Поскольку наш сервер работает на том же ПК, целевым IP-адресом будет localhost по адресу 127.0.0.1
, но это только случай этой демонстрации.
Если мы хотим знать, как использовать iperf, нам нужно знать, как анализировать вывод. Стандартный вывод представляет собой таблицу с четырьмя столбцами.Кроме того, последние две строки таблицы (после пунктирной линии) представляют итоги.
- ID — это идентификатор операции iperf.
- Interval — временной интервал, к которому относится строка.
- Transfer — это объем данных, которыми обмениваются клиент и сервер. В конце концов, тест скорости заключается в передаче файлов и измерении того, сколько времени это заняло.
- Пропускная способность — это измеренная полоса пропускания
Почему у нас нет единой итоговой / итоговой строки? Потому что мы хотим видеть разные характеристики отправки и получения.Фактически, в крайнем правом углу итоговых строк вы увидите пропускную способность отправителя и получателя. В нашем случае отправителем является клиент, поэтому это означает скорость загрузки. Вместо этого получатель означает скорость загрузки. В случае асимметричной полосы пропускания эти два параметра могут не всегда совпадать.
Другие крутые варианты
Пока все хорошо. Фактически, вы знаете, как использовать iperf, просто используя приведенные выше команды. Однако вы можете использовать некоторые параметры, чтобы настроить измерение по своему вкусу. Если вы хотите узнать все параметры, используйте --help
.Здесь мы увидим самые полезные.
-
-P
создает N параллельных подключений, полезно для подталкивания ссылок к их пределу -
-R
работает в обратном режиме: сервер отправит, а клиент получит -
-b
указывает ограничение пропускной способности (например 10k, 5mb, 1gb). Тест не выйдет за пределы этого значения, даже если канал имеет большую пропускную способность. -
-J
генерирует вывод в формате JSON после завершения операции, что полезно, если вы хотите использовать iperf в сценариях.
Попробуйте поэкспериментировать, комбинируя все нужные вам варианты. Вы добьетесь профессионального тестирования пропускной способности корпоративного уровня.
Заключение (и TL; DR)
Iperf3 — это мощный инструмент для проведения настраиваемых и надежных тестов пропускной способности. Фактически, он идеально подходит для требований корпоративного уровня. Если вы хотите знать, как использовать iperf, вам понадобятся всего две основные команды. Сначала запустите сервер на устройстве с iperf3 -s
. Затем на другом устройстве запустите iperf3 -t 60 -c
.Это позволит измерить полосу пропускания между ними в течение 60 секунд, что достаточно для получения реального измерения.
Что вы думаете о iperf? Вы видите, что используете его вместо инструментов, доступных в Интернете? Поделитесь своим мнением в комментариях.
Тестирование пропускной способности сетис помощью iPerf
iPerf — это инструмент командной строки, используемый для диагностики проблем со скоростью сети путем измерения максимальной пропускной способности сети, которую может обработать сервер. Это особенно полезно при возникновении проблем со скоростью сети, поскольку вы можете использовать iPerf, чтобы определить, какой сервер не может достичь максимальной пропускной способности.
Перед началом работы
- Вам потребуется root-доступ к вашему Linode или учетная запись пользователя с привилегиями
sudo
. - Обновите вашу систему.
Установите iPerf
Пакет iperf
включен в большинство репозиториев дистрибутивов Linux.
Debian и Ubuntu
apt-get install iperf
CentOS
В репозиториях CentOS нет iPerf. Использовать Репозиторий EPEL, который представляет собой репозиторий, используемый для установки пакетов стороннего программного обеспечения в системах RedHat, таких как RHEL и CentOS:
yum install epel-release
ням обновление
ням установить iperf
Arch Linux
pacman -S iperf
openSUSE
zypper установить iperf
Gentoo
Emerge iperf
Если вы еще не запустили emaint --sync
, вам может потребоваться это сделать, прежде чем он позволит вам установить пакет iPerf.Кроме того, по умолчанию вам нужно будет заменить каждую команду iperf
на / usr / bin / iperf3
. Этот путь может отличаться в зависимости от вашей версии iPerf.
Как использовать iPerf
iPerf должен быть установлен на компьютерах на обоих концах соединения, которое вы тестируете. Если вы используете операционную систему на основе Unix или Linux на своем персональном компьютере, вы можете установить iPerf на свой локальный компьютер.
Однако, если вы тестируете пропускную способность своего Linode, лучше использовать другой сервер в качестве конечной точки, поскольку ваш местный интернет-провайдер может наложить сетевые ограничения, которые могут повлиять на результаты вашего теста.
TCP-клиенты и серверы
iPerf требует двух систем, потому что одна система должна действовать как сервер, а другая — как клиент. Клиент подключается к серверу, скорость которого вы проверяете.
На Linode, который вы планируете протестировать, запустите iPerf в режиме сервера:
iperf -s
Вы должны увидеть результат, подобный:
------------------------------------- ----------------------- Сервер прослушивает TCP-порт 5001 Размер окна TCP: 85.3 КБайт (по умолчанию) -------------------------------------------------- ----------
На втором Linode подключитесь к первому. Замените
198.51.100.5
IP-адресом первого Linode.iperf -c 198.51.100.5
---------------------------------------------- -------------- Клиент подключается к 198.51.100.5, TCP-порт 5001 Размер окна TCP: 45,0 КБайт (по умолчанию) -------------------------------------------------- ---------- [3] местный 198.51.100.6 порт 50616 подключен к 198.51.100.5 порт 5001 [ID] Интервальная пропускная способность передачи [3] 0,0-10,1 сек 1,27 ГБ 1,08 Гбит / сек
Вы также увидите соединение и результаты на своем сервере iPerf:
---------------- -------------------------------------------- Сервер прослушивает TCP-порт 5001 Размер окна TCP: 85,3 КБайт (по умолчанию) -------------------------------------------------- ---------- [4] местный 198.51.100.5 порт 5001 подключен к 198.51.100.6 порт 50616 [ID] Интервальная пропускная способность передачи [4] 0,0–10,1 с 1,27 ГБ 1,08 Гбит / с
Чтобы остановить процесс сервера iPerf, нажмите
CTRL + c
.
UDP-клиенты и серверы
Используя iPerf, вы также можете проверить максимальную пропускную способность, достигаемую через UDP-соединения.
Запустите сервер UDP iPerf:
iperf -s -u
---------------------------------------------- -------------- Сервер прослушивает UDP-порт 5001 Получение датаграмм размером 1470 байт Размер буфера UDP: 208 КБ (по умолчанию) -------------------------------------------------- ----------
Подключите клиент к серверу iPerf UDP.Замените
198.51.100.5
своим IP-адресом:iperf -c 198.51.100.5 -u
---------------------------------------------- -------------- Клиент подключается к 198.51.100.5, UDP-порт 5001 Отправка датаграмм размером 1470 байт Размер буфера UDP: 208 КБ (по умолчанию) -------------------------------------------------- ---------- [3] локальный порт 198.51.100.6 58070 соединен с 198.51.100.5 портом 5001 [ID] Интервальная пропускная способность передачи [3] 0,0-10,0 сек 1.25 МБ 1,05 Мбит / сек [3] Отправлено 893 дейтаграммы. [3] Отчет сервера: [3] 0,0–10,0 с 1,25 МБ 1,05 Мбит / с 0,084 мс 0/893 (0%)
1,05 Мбит / с — это значительно меньше, чем то, что наблюдалось в тестах TCP. Это также значительно меньше максимальной исходящей пропускной способности, обеспечиваемой Linode 1 ГБ. Это связано с тем, что iPerf по умолчанию ограничивает пропускную способность для клиентов UDP до 1 Мбит / с.
Вы можете изменить это с помощью флага
-b
, заменив число после максимальной пропускной способностью, с которой вы хотите протестировать.Если вы проверяете скорость сети, установите это число выше максимального предела пропускной способности, предоставленного Linode:iperf -c 198.51.100.5 -u -b 1000m
Это говорит клиенту, что мы хотим достичь максимальной скорости 1000 Мбит / с, если это возможно. Флаг
-b
работает только при использовании UDP-соединений, поскольку iPerf не устанавливает ограничение пропускной способности для TCP-клиентов.----------------------------------------------- ------------- Клиент подключается к 198.51.100.5, порт UDP 5001 Отправка датаграмм размером 1470 байт Размер буфера UDP: 208 КБ (по умолчанию) -------------------------------------------------- ---------- [3] локальный порт 198.51.100.5 52308 соединен с 198.51.100.5 портом 5001 [ID] Интервальная пропускная способность передачи [3] 0,0-10,0 сек 966 МБ 810 Мбит / сек [3] Отправлено 688897 датаграмм. [3] Отчет сервера: [3] 0,0-10,0 с 966 МБ 810 Мбит / с 0,001 мс 0/688896 (0%) [3] 0,0–10,0 с 1 датаграммы получены не в порядке
На этот раз результаты значительно выше.
Двунаправленные тесты
В некоторых случаях может потребоваться протестировать оба сервера на максимальную пропускную способность. Это легко сделать с помощью встроенной функции двунаправленного тестирования, предлагаемой iPerf.
, чтобы проверить оба соединения, выполните следующую команду от клиента:
iperf -c 198.51.100.5 -d
В результате iPerf запустит сервер и клиентское соединение на клиентском сервере (198.51.100.6). Как только это будет сделано, iPerf подключит сервер iPerf к клиентскому подключению, которое теперь действует как подключение к серверу и подключение к клиенту.
----------------------------------------------- -------------
Сервер прослушивает TCP-порт 5001
Размер окна TCP: 85,3 КБайт (по умолчанию)
-------------------------------------------------- ----------
-------------------------------------------------- ----------
Клиент подключается к 198.51.100.5, TCP-порт 5001
Размер окна TCP: 351 КБайт (по умолчанию)
-------------------------------------------------- ----------
[3] локальный порт 198.51.100.6 50618 соединен с 198.51.100.5 портом 5001
[5] местный 198.51.100.6 порт 5001 подключен к 198.51.100.5 порт 58650
[ID] Интервальная пропускная способность передачи
[5] 0,0-10,1 с 1,27 ГБ 1,08 Гбит / с
[3] 0,0-10,2 сек 1,28 ГБ 1,08 Гбит / сек
На сервере вы увидите:
----------------------- -------------------------------------
Клиент подключается к 198.51.100.6, TCP-порт 5001
Размер окна TCP: 153 КБайт (по умолчанию)
-------------------------------------------------- ----------
[6] местный 198.51.100.5 порт 58650 соединен с 198.51.100.6 портом 5001
[6] 0,0–10,1 с 1,27 ГБ 1,08 Гбит / с
[5] 0,0–10,2 с 1,28 ГБ 1,08 Гбит / с
Опции
Опция | Описание |
---|---|
-f | Измените формат, в котором выполняются тесты. Например, вы можете использовать -f k для получения результатов в Кбит / с вместо Мбит / с. Допустимые параметры: м, (Мбит, по умолчанию), k, (Кбит), K, (КБ) и M, (МБ). |
-V | Заставляет iPerf использовать IPv6, а не IPv4. |
-i | Изменяет интервал между периодическими проверками пропускной способности. Например, -i 60 будет создавать новый отчет о пропускной способности каждые 60 секунд. Значение по умолчанию — ноль, при котором выполняется один тест пропускной способности. |
-p | Изменяет порт. Если не указан, порт по умолчанию — 5001. Этот флаг необходимо использовать как на клиенте, так и на сервере. |
-B | Привязывает iPerf к определенному интерфейсу или адресу.При передаче через команду сервера будет установлен входящий интерфейс. При передаче через клиентскую команду будет установлен исходящий интерфейс. |
Использование iperf в системе Microsoft Windows
Использование iperf в системе Microsoft Windows Иперф — это бесплатный программный инструмент с открытым исходным кодом, который предоставляет возможность для измерения пропускной способности между двумя хостами, используя оба Протокол управления передачей (TCP) и Потоки данных протокола пользовательских дейтаграмм (UDP).Программное обеспечение можно запускать в либо сервер, либо клиентский режим. Чтобы определить пропускную способность сети, доступную между двумя систем, вы можете запустить iperf в режиме сервера на одной из систем и в клиентский режим с другой.Программное обеспечение доступно для множества операционных систем. Вы можете скачать двоичные файлы iPerf из iPerf — пропускная способность сети инструмент измерения для следующих операционных систем:
- Microsoft Windows
- Android
- iPhone / iPad
- Apple OS X
- Загрузить iPerf для Ubuntu / Debian / Mint
- Загрузить iPerf для Fedora / Red Hat / CentOS
- Скачать iPerf для openSUSE
- Загрузить iPerf для Arch Linux
- Скачать iPerf для FreeBSD
Вы также можете скачать C ++ источник код с этой страницы.В качестве альтернативы, если вы используете Linux дистрибутив, вы можете установить его, используя стандартный инструмент управления пакетами для конкретного дистрибутива Linux, который вы используют. Например, см. Установка iperf в CentOS для получения инструкций по установке программное обеспечение с ням.
Если вы устанавливаете программное обеспечение в двух контролируемых вами системах, вы можете протестировать
между этими системами. Это также
общедоступные серверы iPerf3
в различных частях мира, с которыми вы можете протестировать.Эти системы
работает в режиме сервера, поэтому вы используете режим клиента в своей локальной системе
при тестировании с ними. Вы указываете клиентский режим с -c
вариант. Вы можете увидеть доступные варианты программы, выполнив
команда iperf -h
из
командная строка в
каталог, в который вы установили программное обеспечение в системе Microsoft Windows.
C: \> iperf3 Использование: iperf [-s | -c host] [параметры] iperf [-h | --help] [-v | --version] Сервер или клиент: -p, --port # порт сервера для прослушивания / подключения -f, --format [kmgKMG] формат отчета: Кбит, Мбит, КБ, МБ -i, --interval # секунд между периодическими отчетами о пропускной способности -F, --file name xmit / recv указанный файл -B, --bindпривязать к определенному интерфейсу -V, --verbose более подробный вывод -J, --json вывод в формате JSON --logfile f отправить вывод в файл журнала -d, --debug выводить отладочную информацию -v, --version показать информацию о версии и выйти -h, --help показать это сообщение и выйти Зависит от сервера: -s, --server запустить в режиме сервера -D, --daemon запустить сервер как демон -I, --pidfile файл записать PID файл -1, --one-off обработать одно клиентское соединение, затем выйти В зависимости от клиента: -c, --client запускать в режиме клиента, подключаясь к -u, --udp использовать UDP, а не TCP -b, --bandwidth # [KMG] [/ #] целевая полоса пропускания в бит / сек (0 для неограниченного количества) (по умолчанию 1 Мбит / сек для UDP, без ограничений для TCP) (необязательная косая черта и количество пакетов для пакетного режима) -t, --time # время в секундах для передачи (по умолчанию 10 секунд) -n, --bytes # [KMG] количество байтов для передачи (вместо -t) -k, --blockcount # [KMG] количество блоков (пакетов) для передачи (вместо - разорванный) -l, --len # [KMG] длина буфера для чтения или записи (по умолчанию 128 КБ для TCP, 8 КБ для UDP) --cport привязать к конкретному клиентскому порту (TCP и UDP, по умолчанию : эфемерный порт) -P, --parallel # количество параллельных клиентских потоков для запуска -R, --reverse запустить в обратном режиме (сервер отправляет, клиент получает) -w, --window # [KMG] установить размер окна / размер буфера сокета -M, --set-mss # установить максимальный размер сегмента TCP / SCTP (MTU - 40 байт) -N, --no-delay установить TCP / SCTP без задержки, отключив алгоритм Нэгла -4, --version4 использовать только IPv4 -6, --version6 использовать только IPv6 -S, --tos N установить IP 'тип службы' -Z, --zerocopy использовать метод отправки данных с нулевым копированием -O, --omit N пропустить первые n секунд -T, --title str префикс каждой выходной строки с этой строкой --get-server-output получать результаты с сервера --udp-counters-64bit использовать 64-битные счетчики в тестовых пакетах UDP [KMG] указывает параметры, которые поддерживают суффикс K / M / G для кило-, мега- или гига- Домашняя страница iperf3 по адресу: http: // software.es.net/iperf/ Сообщайте об ошибках по адресу: https://github.com/esnet/iperf C: \ Program Files \ iperf>
Для системы Microsoft Windows вам нужно только
скачать zip файл
для Windows разархивируйте содержимое файла, а затем переместите два файла
в zip-файле: cygwin1.dll
и iperf3.exe
, если вы загрузили версию 3 версии
программное обеспечение, в любой каталог, в котором вы хотите сохранить программу. Примечание: вы
невозможно выполнить тестирование между хостом, работающим под версией 3, и одним, работающим под управлением версии 2; оба
системы должны использовать версию с тем же номером основной версии, например.грамм.,
версия 2.x или 3.x.
Сайт загрузки предлагает 32-битные и 64-битный версии программного обеспечения. Если у вас 32-разрядная версия Windows, вы следует использовать 32-битную версию, а если у вас 64-битная версия Windows, вы следует использовать 64-битную версию. Если вы не знаете, подходит ли ваша версия Microsoft Windows 32- или 64-разрядная, см. Определение вашей версии Windows — это 32-битная или 64-битная версия.
Для тестирования с общедоступным сервером iperf3, bouygues.testdebit.info, расположенный в
Франция, я мог бы ввести команду iperf3 -c bouygues.testdebit.info
с помощью программного обеспечения iperf3, установленного в системе Microsoft Windows.
Примечание: если вы видите сообщение об ошибке ниже, вам может потребоваться открыть команду
окно подсказки в режиме администратора, чтобы иметь возможность тестировать с iperf на
система Windows.
C: \ Program Files \ iperf> iperf3 -c bouygues.testdebit.info Подключение к хосту bouygues.testdebit.info, порт 5201 iperf3: error - невозможно создать новый поток: Permission denied C: \ Program Files \ iperf>
Чтобы открыть окно командной строки, в котором вы можете запустить команду с разрешения администратора, см. инструкции на Получение командной строки на Система Windows 8; шаги для других версий Windows аналогичны.
Если вы запустите программное обеспечение в режиме клиента, вы увидите результат, аналогичный следующее, которое взято из теста с общедоступным тестовым сервером bouygues.testdebit.info.
C: \ Program Files \ iperf> iperf3 -c bouygues.testdebit.info Подключение к хосту bouygues.testdebit.info, порт 5201 [4] локальный 192.168.0.6 порт 49894 подключен к 89.84.127.53 порт 5201 [ID] Интервальная пропускная способность передачи [4] 0,00-1.00 сек 512 Кбайт 4,19 Мбит / сек [4] 1,00–2,00 с 1,00 МБ 8,39 Мбит / с [4] 2,00–3,00 сек 896 КБайт 7,35 Мбит / сек [4] 3,00–4,00 с 1,00 МБ 8,39 Мбит / с [4] 4,00-5,00 сек 896 КБайт 7,34 Мбит / сек [4] 5,00–6,00 с 896 КБайт 7,33 Мбит / с [4] 6,00–7,00 с 1,00 МБ 8,39 Мбит / с [4] 7,00-8,00 сек 896 КБайт 7,34 Мбит / сек [4] 8,00–9,00 сек 896 Кбайт 7,34 Мбит / сек [4] 9.00-10.00 сек 1,00 МБ 8,40 Мбит / сек - - - - - - - - - - - - - - - - - - - - - - - - - [ID] Интервальная пропускная способность передачи [4] 0,00–10,00 с 8,88 МБ 7,44 Мбит / с отправитель [4] 0,00–10,00 с 8,87 МБ 7,44 Мбит / с приемник iperf Готово. C: \ Program Files \ iperf>
Для этого конкретного теста клиентская система могла достичь пропускной способности около 7-8 Мб, что было неплохо с учетом клиентской системы был ограничен 10 Mbs локальная сеть (Подключение по локальной сети.
Руководство IperfXP [PDF] | Совместное использование документов в сообществе
* В предварительном просмотре отображаются только некоторые случайные страницы руководств. Вы можете скачать полный контент через форму ниже.
Тестирование производительности и пропускной способности каналов передачи данных В некоторых случаях клиенты сообщают, что у них наблюдается более медленное, чем ожидалось, подключение к данным. Это может быть вызвано любым количеством факторов, включая увеличенный трафик во внутренней сети, проблемы с оборудованием или программным обеспечением на отдельном компьютере или сетевом сервере, передачу файлов большего размера, чем обычно, или проблемы с самой схемой.Многие веб-сайты предлагают услуги тестирования пропускной способности, но, поскольку они измеряют производительность только отдельного компьютера, они не считаются точными для целей измерения пропускной способности (также называемой сквозной передачей) для полного канала передачи данных. Они, безусловно, хороши для сравнения пропускной способности отдельных компьютеров в вашей сети, а также для сравнения производительности отдельного компьютера с производительностью цепи. На эти тесты скорости могут влиять другие факторы, такие как скорость процессора, объем памяти, интенсивный трафик в Интернете или локальной сети, а также дополнительные программы, запущенные на вашем индивидуальном компьютере во время теста.Примеры: http://www.bandwidthplace.com/speedtest/ http://reviews.cnet.com/Bandwidth_meter/7004-7254_7-0.html http://tech.msn.com/downloads/speedtest.armx Если вы Если вы столкнулись с медлительностью, вы можете позвонить в нашу круглосуточную службу поддержки клиентов по телефону 1.800.881.2638 или отправить электронное письмо по адресу [email protected] для получения помощи. В зависимости от обстоятельств представитель Citynet может попросить вас провести тестирование пропускной способности, чтобы выявить причины медленной загрузки или скачивания. Чтобы проверить фактическую пропускную способность канала передачи данных, Citynet и другие основные операторы связи зависят от IPERF.IPERF проверяет цепь данных с помощью процедуры, называемой «оверлэйстинг», в которой передается больше данных, чем максимальный размер вашей цепи. В течение времени, отведенного для теста IPERF (обычно 60 секунд), никакие другие данные не будут отправляться или приниматься на вашем канале. Это означает, что никто в вашем офисе не сможет отправлять или получать электронную почту или получать доступ к веб-страницам в течение 60 секунд тестирования. Для получения дополнительной информации о IPERF посетите веб-страницу IPERF. http://dast.nlanr.net/Projects/Iperf/ Тест Unix IPERF http: // www.citynet.net/performance/iperf-1.7.0-source.tar.gzИнструкции по тестированию IPERF для Windows 1. 2.
Щелкните здесь, чтобы получить IPERF для Windows http://www.citynet.net/performance/iperf- 1.7.0win32.exe При появлении запроса нажмите кнопку «Открыть».
3. 4.
Если вы видите окно со ссылкой на «неизвестного издателя», нажмите кнопку «Выполнить». Когда будет предложено разархивировать файлы, в поле «Распаковать в папку» введите C: \ Temp
5. 6.
Нажмите кнопку «Разархивировать». Когда файлы будут успешно распакованы, нажмите кнопку ОК.
7. 8. 9.
Нажмите кнопку «Закрыть». В меню «Пуск» компьютера выберите «Выполнить». Введите cmd в поле «Открыть» и нажмите кнопку «ОК».
10. Откроется окно DOS. в командной строке DOS введите: cd c: \
11.
В строке
в командной строке DOS введите: cd temp
12. Если вы тестируете T1, DS1 или ниже, в командной строке DOS введите: iperf -c perftest-clmcoh.citynet.net -t 60 -b 1,5M
или iperf -c perftest-pitbpa.citynet.net -t 60 -b 1.5M
и нажмите клавишу ENTER на клавиатуре. 13. Если вы тестируете цепь большего размера, чем T1 или DS1, свяжитесь с вашим представителем Citynet для получения правильной информации о тестировании. 14. По завершении теста отправьте результаты своему представителю Citynet по электронной почте. Он или она может попросить вас периодически повторять тест для мониторинга. а. Чтобы скопировать результаты теста (ов): i. Щелкните изображение C: \ в левом верхнем углу окна DOS / CMD. II. Щелкните по Edit в меню. iii.Щелкните Выбрать все iv. Щелкните изображение C: \ в левом верхнем углу окна DOS / CMD. v. Щелкните по Edit в меню. vi. Щелкните Копировать. iii. Вставьте информацию в новое электронное письмо, текстовый файл или документ Word.
Примеры результатов C: \> iperf -c perftest-pitbpa.citynet.net -t 60 -b 1,5M ПРЕДУПРЕЖДЕНИЕ: опция -b подразумевает тестирование udp —————— —————————————— Клиент подключается к perftest-pitbpa.citynet .net, порт UDP 5001 Отправка датаграмм размером 1470 байт Размер буфера UDP: 8.00 КБайт (по умолчанию) ——————————————— ————— [1912] локальный порт 10.1.17.6 1762 соединен с портом 69.43.32.27 5001 [ID] Интервал пропускной способности передачи [1912] 0,0–60,0 с 10,7 МБ 1,50 Мбит / с [ 1912] Отчет сервера: [1912] 0,0–59,8 с 8,12 МБ 1,14 Мбит / с 6,124 мс 1863/7655 (24%) [1912] Отправлено 7655 дейтаграмм
Интерпретация результатов выборки C: \> iperf -c perftest-pitbpa. citynet.net -t 60 -b 1.5M (это введенная вами командная строка) ПРЕДУПРЕЖДЕНИЕ: опция -b подразумевает тестирование udp (это информационное сообщение о тестовой опции UDP — User Datagram Protocol) —— ————————————————— — Клиент подключается к perftest-pitbpa.citynet.net, UDP-порт 5001 Отправка датаграмм размером 1470 байт (это информационное сообщение о местоположении вашего соединения, порте и объеме отправленных данных) Размер буфера UDP: 8,00 КБ (по умолчанию) (Пояснение к буферу) ——- ————————————————— — [1912] локальный порт 10.1.17.6 1762 соединен с портом 69.43.32.27 5001 (это информационное сообщение, определяющее источник и пункт назначения) [ID] Интервал пропускной способности передачи [1912] 0,0–60,0 с 10,7 МБ 1,50 Мбит / с ( Это означает, что в пределах 60-секундного интервала 10.Было отправлено 7 МБ данных или 1,50 Мбит в секунду.) [1912] Отчет сервера: [1912] 0,0-59,8 с 8,12 МБ 1,14 Мбит / с 6,124 мс 1863/7655 (24%) (Это означает, что в интервале 59,8 секунды , Было получено 8,12 МБ или 1,4 Мбит / с данных. 1863 дейтаграммы из 7655 отправленных дейтаграмм были потеряны или 24% от общего количества. [1912] Отправлено 7655 дейтаграмм (это общий объем отправленных данных).
Iperf3 — Домашний помощник
Интеграция датчика iperf3
позволяет измерять производительность полосы пропускания сети по сравнению с частным или общедоступным сервером Iperf3.
Включение этой интеграции автоматически создаст датчики Iperf3 для контролируемых условий (см. Ниже). По умолчанию запускается каждый час. Пользователь может изменить частоту обновления в конфигурации, указав scan_interval
для запуска теста Iperf3.
Установка
Эта интеграция требует, чтобы в вашей ОС была установлена команда iperf3
. Пожалуйста, обратитесь к официальной документации Iperf3 за инструкциями по установке.
Конфигурация
Чтобы добавить датчик iperf3
в вашу установку, добавьте следующее в вашу конфигурацию .yaml
файл:
Один раз в час, по часам (по умолчанию):
# Пример записи configuration.yaml
iperf3:
хосты:
- хост: iperf.he.net
Переменные конфигурации
список monitored_conditions (необязательно)Датчики для отображения во внешнем интерфейсе.
Скорость загрузки (Мбит / с).
Скорость выгрузки (Мбит / с).
Список серверов Iperf3 для выполнения теста.
scan_interval time (необязательно, по умолчанию: 60 минут) Минимальный интервал времени между обновлениями.Поддерживаемые форматы: scan_interval: 'HH: MM: SS'
, scan_interval: 'HH: MM'
и словарь периодов времени (см. Пример ниже).
true
или false
для включения или выключения ручного режима. В ручном режиме запланированные тесты отключены.
Переменные конфигурации (хост):
Переменные конфигурации
Имя сервера / IP-адрес, на котором запущен Iperf3 для тестирования.
целое число порта (необязательно, по умолчанию: 5201)Порт, на котором работает Iperf3.
целое число длительности (необязательно, по умолчанию: 10)Укажите продолжительность теста в секундах. По умолчанию 10, допустимый диапазон от 5 до 10.
Укажите количество одновременных потоков для подключения к серверу. По умолчанию 1, допустимый диапазон от 1 до 20.
строка протокола (необязательно, по умолчанию: tcp)Укажите протокол, который будет использоваться в тесте. По умолчанию — TCP, допустимые значения — TCP или UDP. Если ваш сервер Iperf3 расположен в Интернете, рассмотрите возможность использования TCP вместо UDP.Если протокол настроен на использование UDP, датчик может не обновляться из-за проблем с повторной передачей пакетов из-за его характера.
Пример словаря периодов времени
интервал_сканирования:
# Должен быть указан хотя бы один из них:
дней: 0
часов: 0
минут: 3
секунд: 30
миллисекунды: 0
Вы можете найти список публичных серверов Iperf3 здесь. Вы также можете запустить свой собственный сервер Iperf3 с помощью образа Docker mlabbe / iperf3 или просто обратиться к странице руководства вашей команды iperf3
.
Частоту автоматического запуска теста можно настроить, задав значение scan_interval
в секундах.
В некоторых ситуациях могут помочь параллельные потоки. Поскольку TCP пытается быть справедливым и консервативным, вы можете подумать об увеличении атрибута parallel
. Используйте это значение осторожно и обратитесь к странице руководства Iperf3 для получения дополнительной информации.
Вы можете использовать службу sensor.iperf3_update
, чтобы запустить ручной тест скорости для всех датчиков.У Iperf3 есть собственный сервисный вызов, который позволяет провести тест скорости на конкретном объекте.
Сервис
После загрузки интеграция iperf3
откроет службу ( iperf3.speedtest
), которую можно вызвать для запуска теста скорости по запросу. Это может быть полезно, если вы включили ручной режим.
| Атрибут служебных данных | Описание |
| хост
| Строка, указывающая на настроенный хост
из configuration.yaml
.В противном случае тесты будут запущены на всех настроенных хостах.
Пример служебных данных:
{"хост": "192.168.0.121"}
Помогите нам улучшить нашу документацию Предложите изменение этой страницы или оставьте / просмотрите отзыв об этой странице. .