Что такое Флент?
Быстрые ссылки
- Что такое Флент?
- Установить Флент
- Ubuntu
- Debian
- арочный
- Gentoo
- Все остальные
- Основные настройки
- Запуск теста
- Тесты
- RRUL
- RTT
- TCP
- UDP Flood
- Заключительные мысли
Flent расшифровывается как FLExible Network Tester, и сама по себе она не так уж важна. Вместо этого Flent представляет собой обертку, которая объединяет несколько приложений для сетевого тестирования, особенно Netperf, в единый пакет, упрощающий выполнение тестов и включающий Matplotlib для автоматического создания графиков и визуализаций данных при запуске тестов.
Flent — это полный набор инструментов для тестирования вашей сети и диагностики всего, от простой неэффективности до серьезных проблем с подключением. Как еще один бонус, это бесплатно и с открытым исходным кодом.
Установить Флент
Flent доступен только для Mac и Linux. Это не значит, что вам нужно отказаться от Windows и конвертировать всю сеть в Linux. Вам просто нужно найти способ временно запустить его для ваших тестов.
Ubuntu
Начните с добавления Flent PPA.
$ sudo add-apt-repository ppa: tohojo / flent $ sudo apt update
Затем установите Flent.
$ sudo apt install flent
Debian
Flent доступен в официальных репозиториях Debian, начиная с Stretch. Просто установите его.
# apt install flent
арочный
Флент доступен в AUR. Перейдите на его страницу и возьмите то, что вам нужно.
Gentoo
Добавьте Flent к вашему /etc/portage/package.accept_keywords.
Сетевой анализатор / Flent ~ amd64
Тогда появись.
# emerge --ask flent
Все остальные
Flent — это пакет Python. Вы сможете установить его, используя менеджер пакетов Python pip, если он у вас установлен. Он доступен практически для каждого дистрибутива Linux и Homebrew для Mac.
# pip install flent
Основные настройки
Теперь, когда у вас установлен Flent, вы можете начать использовать его для выполнения некоторых базовых тестов. Flent имеет как командную строку, так и графическую версию. Поскольку вы, вероятно, не хотите запоминать команды Flent, это руководство будет работать с графическим интерфейсом.
Для правильной работы Flent вам необходим сервер для тестирования. На этом сервере должен быть запущен Netperf в режиме сервера. Лучше всего сначала настроить его, чтобы вы могли провести все тестирование вместе. Netperf доступен практически во всех репозиториях дистрибутива Linux, поэтому просто установите его вместе с менеджером пакетов.
$ sudo apt установить netperf
После того, как вы установили его на сервере, запустите Netperf в режиме сервера.
$ sudo netserver
Вы можете оставить сервер в покое на данный момент. Он продолжит работу Netperf в режиме сервера в фоновом режиме. Вы можете делать все остальное с вашего клиента под управлением Flent.
Запуск теста
Теперь вы можете запускать тесты на своем сервере из Flent. Откройте графический интерфейс Flent на панели запуска приложений или введите flent-gui в терминале. Окно, которое вы получите, довольно просто для начала. Нажмите «Файл» в верхнем левом углу и выберите «Запустить новый тест» в появившемся меню.
Новое окно позволит вам выбрать тест для запуска. Сначала используйте выпадающий список «Имя теста», чтобы выбрать тест. Для этого первого выберите «rrul». Введите IP-адрес компьютера, который вы настроили в качестве сервера, затем назовите свой тест. Имя поможет вам определить результаты, которые Флент сохраняет. Он использует сжатую форму JSON с расширением .gz. Когда все выглядит хорошо, нажмите кнопку «Выполнить тест» в левом нижнем углу окна.
Все тесты занимают немного времени, поэтому наберитесь терпения и постарайтесь ничего не делать в сети с этими двумя компьютерами, которые могут помешать соединению. Это испортит ваши данные.
После завершения теста вы сможете увидеть соответствующие данные, представленные в виде ряда графиков в главном окне Flent. Тест RRUL даст вам информацию о вашей общей загрузке, загрузке и пинге. Все диаграммы будут показывать вам ту же информацию, но они организуют ее по-разному, чтобы помочь вам заметить любые закономерности. В этом примере маршрутизатор мусора создавал большое количество задержек и приводил к довольно искаженным результатам.
Тесты
Флент предоставляет широкий спектр испытаний. Каждый из них может подчеркнуть вашу сеть по-своему. Вам не нужно запоминать их все, хотя. Большинство попадают в одну из четырех основных категорий. Эти категории проверяют вашу сеть различными способами.
RRUL
RRUL означает ответ в режиме реального времени под нагрузкой. Это именно то, что он стремится измерить. Тест RRUL пытается смоделировать реальную рабочую нагрузку сети и определить, как целевая машина реагирует на эту нагрузку. RRUL был разработан людьми из Bufferbloat.net для создания сетевых условий, в которых задействуется буферная загрузка, чтобы помочь диагностировать и исправить ее.
Bufferbloat является распространенной проблемой в сети. Это происходит, когда маршрутизатор буферизует слишком много данных при передаче большого объема данных или потоковой передачи. Этот дополнительный буфер является весом для маршрутизатора и замедляет передачу. Стресс теста RRUL предназначен для того, чтобы нагрузка на маршрутизатор была достаточно значительной для запуска буфера. Если ваша сеть испытывает буферную загрузку, номера загрузки и выгрузки начнут уменьшаться, и пинг будет увеличиваться при выполнении теста.
Попробуйте запустить торрент-тест RRUL. Он имитирует торрент-загрузку, которая, очевидно, является очень напряженным видом сетевой активности и все еще представляет собой сценарий реального мира.
Вышеуказанные результаты — это то, что вы не хотите видеть, множество задержек и пропущенных пакетов. Этот тест проводился между двумя беспроводными устройствами в многолюдной сети. Обратите внимание на изменение, когда сервер подключен.
Разница определенно заметна. Соединение не является идеальным, но оно становится намного более стабильным при подключении одного устройства. Как насчет обоих?
В этом тесте гораздо меньше вариаций. Это потому, что нет возможности для помех или недостаточной мощности сигнала. Имейте в виду, что это та же сеть, что и в случае с предыдущим тестом. Очевидно, что есть проблема с беспроводными подключениями. Наконец, попробуйте выполнить тестирование на удаленном сервере, предоставленном Bufferbloat.net.
Он не такой чистый, как локальная сеть, но все же не такой грязный, как беспроводные тесты. Это то, чего вы, вероятно, ожидаете от обычной загрузки через Интернет.
RTT
Тесты RTT или Round Trip Transfer на самом деле очень похожи на тесты RRUL. Они не полагаются на то, что цель находится под нагрузкой. Вместо этого они просто измеряют время, необходимое для запроса UDP, чтобы завершить схему и вернуться к клиенту. Они также включают пинг.
Для хорошего теста RTT попробуйте запустить RTT Fair. Вы уже попробовали RRUL для имитации более реалистичного и сложного условия; почему не более идеальные обстоятельства? Тест RTT Fair поможет вам понять, как выглядит круговая передача в более контролируемых условиях в вашей сети. Это значительно менее хаотично. Может ли это быть еще менее хаотичным, хотя? Это результаты с проводным сервером.
Это почти греховная волна. Конечно, это не идеально, но аккуратнее и значительно быстрее. С обоими подключенными машинами это становится еще лучше.
Это большая разница с 40 Мбит / с в первом тесте. Еще раз перенесите тест в сеть.
Это все еще лучше, чем этот беспорядок WiFi раньше. Опять же, эти результаты кажутся подходящими для такого теста, хотя цель может заключаться в большей стабильности.
TCP
Тесты TCP являются стандартными TCP. Они измеряют основные запросы TCP, как если бы вы посещали веб-сайт или проверяли свою электронную почту. Скорее всего, эти тесты не окажут почти такой же нагрузки на вашу сеть, но они могут дать вам более полное представление о том, как выглядит обычный трафик.
Попробуйте более напряженный тест TCP. Загрузка по протоколу TCP с 12 потоками является хорошим способом моделирования более интенсивной прямой загрузки. Существует большая вероятность того, что вы увидите серьезные задержки, если у вас нет отличной сети. Может быть, проводной сервер может улучшить ситуацию и здесь.
Это несколько более нормализовано, и там больше пропускной способности. Это хорошо. Еще больше улучшений, когда клиент подключен.
Это на самом деле приблизилось к твердому 1Gb / s. Это довольно удивительно, учитывая результаты WiFi. Наконец, посмотрите, как это работает с удаленным сервером.
Задержка больше, но скорости все еще очень респектабельные. О, и это было через VPN тоже. Очевидно, проблема исходит изнутри сети.
UDP Flood
UDP-тесты на самом деле являются тестами RTT, но они сразу же отправляют поток пакетов UDP на целевой компьютер. Они не отвечают и не адаптируются к потоку трафика, просто отправляют. Они могут быть полезны для проверки того, как целевая машина будет реагировать на ошибку или атаку.
Заключительные мысли
Если вы собираетесь тестировать свою сеть, лучше всего провести тестирование между различными точками вашей сети, чтобы помочь сузить проблемные области. Тестовая сеть из этого руководства явно имеет некоторые проблемы с WiFi. Скорее всего, ограниченная пропускная способность и помехи в игре. Также хорошо иметь четкое представление о типах проблем, которые вы ищете. Создайте свои тесты вокруг этого.
Возможно, вы заметили, что сеть, из которой получены результаты, не так уж велика. Это не. На самом деле, некоторые из результатов мусора, которые вы видели, именно то, что вам нужно искать в вашей собственной сети.