Работа→ Скорость интернет соединения IPerf
Фев 5, 2011
Для тех, кто работает в технической поддержке любого интернет-провайдера, самой на мой взгляд щепетильной темой, является скорость интернета, а точнее её не соответствие заявленным скоростям тарифного плана. И порой очень трудно доказать клиенту, что скорость нормальная, особенно когда какой-то левый сайт выдает ложную информацию, например из-за его перегрузки.
Поэтому лучшим способом тестирования реальной скорости передачи данных является использование консольной утилиты iperf. Для того, чтобы протестировать скорость необходимо запустить на одном из удаленных компьютеров, например на сервере провайдер, копию утилиты. Идеальным вариантом было бы иметь специально выделенный сервер для тестирования скорости. Вторую копию программы нужно запустить на компьютере клиента с параметром командной строки -с . После этого программа в течении 10 секунд будет генерировать трафик, полностью забивая канал. Результатом выполнения должен быть похож на это:
[ ID ] Interval Transfer Bandwidth [4779] 0.0-10.1 sec 9.73 MBytes 8.12 Mbits/sec
В данном случае, значение поля bandwidth показывает скорость интернет соединения.
Как можно было заметить, весь процесс для неподготовленного клиента занял бы достаточно большое время. Поэтому было решено скомпилировать свою версию утилиты iperf, благо исходников в интернете полно. После многих проб и ошибок выяснилось, что не все версии подходят для компиляции программы под win32. Для компиляции под windows подходит версия 1.7.0 (для 2010 года), которая успешно скомпилировалась в MS Visual C++ с минимальными модификациями (отключил IPv6 и Multicast).
Какие изменения были произведены:
- Программа после выполнения не закрывается
- Происходит автоматическое подключение к серверу при запуске
- Скорость выделяется ярким цветом
- Результат выполнения записывается в файл
Результат модификаций можно скачать по нижеприведенной ссылке.
Скачать iperf.zip (измененный, для Dom.ru)