В данной статье я расскажу о неплохом сетевом эмуляторе WANem (The Wide Area Network emulator), так как у меня был опыт настройки и работы с ним. Один из проектов был связан с эмуляцией различных воздействий на мультимедийные потоки передаваемые в реальном режиме времени по протоколу RTMP.
Помню я потратил какое-то время чтобы выбрать именно его из возможного программного обеспечения, вообщем и не пожалел. C учетом того, что WANem является бесплатным и работает довольно неплохо я решил написать о своем опыте.
Также могу сказать следующее, в принципе, WANem работает и выполняет свои заявленные функции, но несколько раз в течении двух месяцев он у меня зависал и не отвечал на ping с других машин, приходилось исправлять ситуацию командой эмулятора «reset» — сброс сетевых настроек и перезапуск сервисов, ниже вы также сможете почитать о других командах эмулятора. Таким образом WANem предназначен для создания различных сетевых помех, например, таких как:
- Задержка (Delay).
- Джиттер (Jitter).
- Потери пакетов (Packet Loss).
- Полоса пропускания (Bandwidths).
Для того чтобы установить WANem вам необходимо скачать ISO образ диска. На самом деле это урезанный дистрибутив Linux Knoppix c установленным WANem. Далее записать данный образ на диск и вы получите LiveCD. Далее вы можете загрузить этот диск (LiveCD) на какой-нибудь виртуальной машине, например, VMWare или VirtualBox. Я загружался с созданного диска LiveCD на реальной машине и не использовал виртуальных машин.
Также если вы собираетесь использовать WANem для реальных экспериментов и хотите получить хороший результат я все же советую вам не использовать виртуальную машину. После загрузки с диска, вам будут доступны следующие команды:
- help — справка.
- about — версия и др.
- clear — очистка экрана.
- reset — сброс сетевых настроек и перезапуск сервисов.
- shutdown — выключение системы.
- restart — перезапуск системы.
- status — показывает текущий статуса системы (IP-адреса, маршруты, состояния сервисов).
- wanemreset — сброс созданных вами правил для WANem
- assign — задание IP-адреса вручную, в том случае если не используете DHCP.
- quit — выход из консоли WANem.
Для того чтобы получить доступ к WEB-интерфейсу управления WANem, заходим по следующему адресу http://адрес машины с WANem/WANem . Через WEB-интерфейс вам будут доступны три режима работы.
1. WANalyzer — в данном режиме вы просто вводите IP адрес компьютера, информацию о сетевом канале до которого вы хотите получить. Я много раз проводи тест с помощью WANalyzer до одной и той же машина. Очень часто мне выдавались результаты очень разные, хотя между тестами были очень маленькие промежутки времени. Пробовал найти что-то в Интернете, о том как работает данная утилита, но ничего точного не нашел. Вообщем результаты данного теста я не считаю совсем точными.
Пример того, что выводит WANalyzer:
2. Basic Mode — простой режим эмулирования сетевых характеристик. В данном режиме, возможно только ограничить пропускную способность и создать задержку обработки пакетов в миллисекундах.
Пункт меню Save/Restore можно использовать для сохранения текущих настроек, для дальнейшего повторного использования. Теперь немного расскажу о том как перенаправить трафик, например, от сервера к клиенту через WANem. В моем случае у меня были:
- Медиа сервер, Flash Media Streaming Server. IP — 10.33.17.243
- Компьютер с WANem. IP — 10.33.17.81
- Компьютер — клиент с Flash плеером. 10.33.17.242
В данной схеме Flash плеер подключался к серверу и проигрывал live видео поток (live streaming). Я, в свою очередь, создавал различные помехи с помощью эмулятора WANem, который находился между сервером и клиентом. Компьютер, на котором был установлен WANem имел только один сетевой интерфейс и получал IP адрес автоматически. Все три компьютера находились в одной локальной сети и имели адреса из одной подсети.
Исходя из представленной схемы, для того чтобы пакеты с клиентского компьютера до сервера проходили через сетевой эмулятор WANem, а не напрямую необходимо прописать маршрут в таблице маршрутизации клиентского компьютера. На Window машине, просто зайдите в консоль («в стандартных программах» запустите приложение «командная строка») и выполните команду:
Для того чтобы пакеты с сервера до клиентского компьютера проходили через сетевой эмулятор WANem, на сервере (в моем случае это был Windows Server), также выполните следующую команду:
Команды для добавления маршрутов в разных версиях Linux, также очень простые и их синтаксис можно легко найти в Интернет. Вот вроде все и настроили. Теперь осталось задать значение, например задержки в эмуляторе и выполнить команду «ping 10.33.17.243″ в клиентской командной строке. То есть пропинговать сервер. Вы уведите, что между сервером и клиентом появится задержка.
Также, когда я настраивал WANem, я пользовался информацией с различных ресурсов, ниже ссылки на некоторые из них, которые мне понравились. Также в ближайшее время, в этом блоге, я собираюсь дальше рассказывать о своем опыте в этой области.
Комментарии:
2 pings