Мне нужно изучить влияние увеличения числа одновременных пользователей на пропускную способность локальной сети. Размер данных составляет около 500 КБ, а пропускная способность — 4 Мбит/с. Вот мои вопросы:
Могу ли я сделать это на реальном испытательном стенде или мне следует запустить симуляцию?
Если реальный испытательный стенд работает, как я могу вручную определить пропускную способность сети в маршрутизаторе Linksys WRT45GL?
На реальном испытательном стенде я могу запустить код javascript для отправки асинхронного запроса на выборку данных на веб-сервер в той же сети (на разных машинах), но мой вопрос в том, как определить там ручную пропускную способность сети и убедиться, что она не изменится на протяжении всего исследования. Я могу изолировать сеть и отключить беспроводную сеть.
В случае моделирования, какой из них наиболее простой и надежный, чтобы помочь мне выполнить такую простую задачу?
Извините, если это слишком просто.
решение1
Похоже, вы хотите использовать iperf
. Это клиент-серверный программный пакет, который позволяет вам имитировать указанный объем пропускной способности.
«Правильный» способ запустить iperf — иметь клиента на одном конце и сервер на другом, но если вам просто нужно заполнить канал контролируемым объемом трафика, вы можете обойтись запуском клиента iperf с использованием UDP. Но это зависит от вашей ситуации.
Для клиента можно использовать такой синтаксис:
iperf -c 180.92.196.115 -u -p 5001 --time 360 -i 3 -b 2
В нем указано:
- Запустите iperf в режиме клиента.
- Используйте UDP вместо TCP
- Направить трафик на UDP-порт 5001
- Проведите тест в течение 360 секунд.
- Отчет о статистике пропускной способности каждые 3 секунды
- Сгенерируйте для теста постоянный трафик UDP объемом 2 Мбит.
Вам нужно убедиться, что две конечные точки iperf соответствуют потоку трафика, который вы пытаетесь протестировать. Например, если я пытаюсь перегрузить интернет-ссылку для тестирования настроек VoIP QoS через WAN, мне не поможет запуск iperf между двумя ПК в LAN. Этот трафик не будет проходить через WAN и, следовательно, не окажет никакого влияния.
Поэтому вам может потребоваться запустить программное обеспечение сервера iperf на реальном сервере, размещенном за пределами локальной сети.
Реальная сеть или симулятор?
Это на ваше усмотрение. Инструменты для проведения тестирования в любом случае будут одинаковыми, по моему мнению. Очевидно, если вы хотите запустить его в производственной сети, либо запланируйте его вне обычных рабочих часов, либо сделайте это каким-то образом, чтобы избежать влияния на пользователей.
Я предпочитаю проводить тесты на реальной сети, если могу, потому что так вы имеете дело с более "реальным" сценарием. Попытка смоделировать реальную сеть может быть сложной, и ваши результаты могут быть не такими точными, потому что вы забыли смоделировать одну из многих переменных сети.
Поэтому обычно проще и точнее использовать настоящий прибор.
Пример
Я регулярно использую его для проверки развертываний QoS для клиентов VoIP. Обычно я запускаю тест в их реальной сети, с включенным QoS и без него, чтобы проверить улучшение. Очевидно, что ваш тест отличается, но методология будет схожей.
Тестирование роста числа пользователей
Iperf будет имитировать только указанный вами объем пропускной способности — объем трафика, используемый «на пользователя», варьируется в зависимости от вашей ситуации, поэтому, очевидно, угадать его невозможно.
Я бы подошел к этой проблеме следующим образом:
- Настройте графики мониторинга интерфейса для локальной сети.
- Обратите внимание на количество одновременно работающих пользователей в течение дня и на то, какая пропускная способность (бит в секунду) используется на интерфейсе в это время.
- Или обратите внимание на среднюю пропускную способность, используемую в течение рабочего дня, и среднее количество одновременных пользователей каждый день. Затем используйте эти цифры, чтобы определить приблизительную величину «пропускной способности на пользователя».
Если вы можете вычислить базовую пропускную способность на пользователя, то вы можете запустить несколько тестов iperf для моделирования. Например, если вы считаете, что каждый пользователь потребляет в среднем 0,25 Мбит/с, то вы можете сказать, что для моделирования 10 пользователей вам нужно сгенерировать 2,5 Мбит/с трафика.
Надеюсь это поможет.