Введение
Недавно один из читателей пожаловался, что ему приходится постоянно перезагружать точку доступа, поскольку она “зависает”. Он также задал вполне резонный вопрос: если заплатил бы больше, то получил бы более стабильное решение?
Конечно, вопрос очень интересен, но на то время готового ответа у нас не было. Хотя тесты с одним клиентом и способны показать скоростные возможности оборудования, но максимально загрузить точку доступа они не позволяют.
К счастью, время и развитие технологий сегодня позволяют упростить стрессовое тестирование беспроводного оборудования при помощи эмулятора компании Communication Machinery Corporation. Вооружившись этим небольшим устройством, мы приступили к тестированию. Результаты нас сильно удивили.
Эмулятор CMC Emulation Engine
По сути, эмулятор является точкой доступа “наоборот”. Вместо того чтобы обеспечивать доступ беспроводных клиентов к сети, он генерирует несколько беспроводных клиентов, которые могут отправлять и получать данные от указанной точки доступа или маршрутизатора. При этом нагружать точку доступа можно не только запросами ping, но и тестовыми данными Ixia IxChariot.
Рис. 1. Эмулятор CMC Emulation Engine.
Но не нужно думать, что внутри эмулятора находится батарея радиомодулей. Все клиенты виртуальные и эмулируются одним радиомодулем mini-PCI. Каждый виртуальный клиент имеет собственные IP- и MAC-адреса, выполняет аутентификацию, подключение, передачу и приём данных.
Устройство CMC предусматривает несколько режимов эмуляции. Кстати, недавно произошло обновление линейки продуктов на более мощные модели “XT”. Также появился эмулятор, совместимый со стандартом WPA. Однако мы использовали модель предыдущего поколения эмулятора a/b/g, поскольку она позволяла выполнить все необходимые нам тесты: 802.11a, b, g, в том числе и с шифрованием WEP. Кроме того, CMC смогла предоставить нам эту модель на большее время, чем новые платформы.
Точки доступа
Несмотря на то, что беспроводные маршрутизаторы сегодня становятся всё популярнее, мы решили остановиться на точках доступа 802.11g – по крайней мере, для первого раза. Отчасти это можно обосновать и некоторой ленью с нашей стороны, поскольку работать с точками доступа легче – они не разделяют сеть на подсети. К тому же, ТД устроены проще беспроводных маршрутизаторов, следовательно, и работать должны надёжнее.
Что касается выбора между точками доступа стандартов 802.11g и 11b, мы подумали, что хотя точки доступа 11b более широко распространены сегодня, будущее всё же за устройствами 11g (или двухдиапазонными). И опять же, чтобы дать точкам доступа больше шансов на успех, мы выбрали устройства 11g, поскольку они имеют более мощные процессоры, которые легче справляются с большой нагрузкой.
В таблице приведены модели и характеристики точек доступа, участвовавших в тестировании. Мы планировали взять модели уровня предприятия и попросили Cisco прислать нам Aironet 1100, а NETGEAR – WG302. В Cisco попросили заполнить специальную форму запроса, после чего никакого ответа мы не получили. В NETGEAR сразу согласились прислать WG302, но мы её так и не дождались. Обращались мы и к D-Link с предложением протестировать их оборудование, но ответа тоже не получили.
Производитель | 3Com | Asus | Buffalo Technology | Gigabyte | Linksys | SMC |
Модель | 3CRWE725075A | WL300g | WLA-G54C | GN-A17GU | WAP54G V2 | SMC2552W-G |
Цена | $338 | $76 | $69 | $108 | $60 | $314 |
FCCID | HED WL463EXT | MSQ WL-300g | QDS-BRCM1005 | JCK-GN-WIAG | Q87-WAP54Gv2 | HED SMC2552WG |
Прошивка | 2.04.51 | 1.6.5.3 | 2.04 | 2.03, Thu, 15 Jan 2004 06 | 2.07 Apr 08 2004 | 2.0.22 |
Процессор | Motorola PowerPC 8241 | Broadcom BCM4702 | Broadcom BCM4702 | Renesas SH4,7751R | Broadcom BCM4712 | Motorola PowerPC 8241 |
Беспроводной контроллер | Atheros AR5212 + AR2112 | Broadcom AirForce | Broadcom AirForce (4306KFB) | Atheros AR5213 + AR2112 | Broadcom AirForce | Atheros AR5212 + AR2112 |
ОЗУ (в 16-битных словах) | 8 млн. | 8 млн. | 32 млн. | 8 млн. | 4 млн. | 8 млн. |
Флэш-память (в 16-битных словах) | 2 млн. | 2 млн. | 4 млн. | 1 млн. | 1 млн. | 2 млн. |
Максимальное количество клиентов | 1000 | 253 | Нет данных. Обычно 35 | 64 | 32 | 64 |
|
|
|
|
|
|
Из таблицы видно, что количество устройств, использующих чипсеты Broadcom и Atheros, оказалось одинаковым, но в тестировании не было ни одного продукта, основанного на чипсетах Agere Systems, Conexant PRISM, TI, Marvell, Inprocomm, Realtek, RaLink или на каком-то ещё. На самом деле это произошло не преднамеренно, просто так получилось. Также можно заметить, что в устройствах с беспроводным чипсетом Broadcom использованы процессоры производства этой же компании, хотя в точках доступа, выполненных на базе беспроводных чипсетов Atheros, используются процессоры либо Motorola PowerPC, либо Renasas.
Чтобы сравнить дизайны плат, мы решили добавить в статью их снимки.
Рис. 2. Плата ASUS WL300g.
Рис. 3. Плата Buffalo Tech WLA-G54C.
Рис. 4. Плата Gigabyte GN-A17GU.
Рис. 5. Плата SMC2552W-G и 3Com 3CRWE725075A.
Всё верно, продукты SMC и 3Com внутри одинаковы, отличие заключается лишь в корпусе.
Рис. 6. Плата Linksys WAP54G V2.
Также следует отметить, что мы протестировали современную версию Linksys WAP54G V2, показанную на Рис. 6, а не оригинальную модель, плата которой показана на Рис. 7. По фотографии видно, что V2 является значительно облегчённой версией, использующей менее дорогой чипсет Broadcom 4712 и наименьшее количество ОЗУ (4 млн. слов) из всех протестированных устройств.
Рис. 7. Плата Linksys WAP54G (устройство не тестировалось)
Настройка
Схема тестовой конфигурации показана на Рис. 8. Консоль Chariot и первая конечная точка были запущены на компьютере Athlon 64 3000+ под управлением WinXP Pro SP1, который был подключен через коммутатор к CMC Emulation Engine a/b/g.
EE эмулировал от одного до 64 беспроводных клиентов 802.11g, которые подключались к тестируемой точке доступа. Поскольку точка доступа, по сути, является мостом, второй компьютер на базе Pentium 4 2,4 ГГц под управлением WinXP Home SP1 был подключён к точке доступа через другой сегмент сети и использовался в качестве второй конечной точки Chariot, настроенной на приём трафика.
Рис. 8. Тестовая конфигурация.
Расстояние между точкой доступа и эмулятором составляло около двух метров, других устройств, работающих в диапазоне 2,4 ГГц, в зоне тестирования не было. Вы можете подумать, что последнее заявление беспочвенно, поскольку беспроводное сетевое оборудование сегодня используется очень широко. Однако тестирование проводилось в пригороде, где нет ни широкополосного доступа к Интернету, ни какого либо оборудования, работающего в диапазоне 2,4 ГГц!
Как мы упоминали ранее, интерфейс EE позволяет создавать трафик ping-запросов. Но мы отказались от этого из-за недостаточной гибкости. Мы решили воспользоваться интерфейсом командной строки EE и включить внешний режим, который позволяет виртуальным клиентам принимать трафик от стороннего генератора трафика – Ixia Chariot.
Мы настроили всех виртуальных клиентов на работу с Chariot, остальные настройки EE мы не изменяли. Отметим, что по умолчанию эмулятор поддерживает постоянные подключения клиентов, то есть после процесса аутентификации и ассоциации они не прекращают соединения, и при проведении тестирования виртуальные клиенты не проходили в цикле через аутентификацию, подключение и отключение. Emulation Engine имеет такую возможность, однако у нас не было ни времени, ни желания вникать в Perl, чтобы запрограммировать такой режим.
Мы решили настроить точку доступа и EE на использование шифрования WEP с ключом 128 бит. Настройки всех точек доступа были оставлены по умолчанию, при этом они работали в режиме “Auto” или “Mixed (11b/g)”.
Мы оставили настройки защиты 11b по умолчанию, хотя это ничего не решает, поскольку оборудования стандарта 11b по близости не было. Кстати, только точка доступа Buffalo Tech WLA-G54C поставляется с включённым по умолчанию режимом защиты, а у “близнецов” SMC/3Com подобной опции в настройках не было вообще.
Опции режимов увеличения пропускной способности мы оставили по умолчанию. Кстати, у продуктов SMC/3Com они тоже отсутствовали. Мы подключали всё оборудование через источники бесперебойного питания APC.
Пропускная способность одного клиента
Начали мы с тестирования одного виртуального клиента, проверяя скорость передачи данных для каждой точки доступа.
На Рис. 9 и 10 показаны значения средней пропускной способности, полученные в результате пятиминутного запуска скрипта на тестовой системе Chariot с размером файла 1 000 000 байт.
Рис. 9. Пропускная способность: один клиент -> точка доступа – 5 минут.
Рис. 10. Пропускная способность: точка доступа -> клиент – 5 минут.
Сначала мы оставили автоматический режим управления скоростью у эмулятора, однако производительность оказалась ниже ожидаемого уровня. После консультации с инженером CMC мы выставили принудительную скорость эмулятора в 54 Мбит/с. Это позволило существенно повысить скорость работы продуктов, выполненных на базе чипсета Broadcom, в то же время, понизив скорость передачи от клиентов к точкам доступа 3Com и SMC, выполненных на базе чипсета Atheros.
Просмотр статистики эмулятора прояснил ситуацию. Причиной низкой скорости были ошибки во время передачи данных виртуальным клиентом, количество которых у точек доступа 3Com или SMC увеличивалось в восемь раз (при принудительном выставлении 54 Мбит/с). Мы также заметили, что скорость закачки для точки доступа Gigabyte оставалась неизменной, независимо от автоматического или принудительного выставления скорости эмулятора. Как мы полагаем, причина здесь заключается в том, что Gigabyte использует тот же радиомодуль Atheros AR2112, что и точки доступа 3Com/SMC, но более современный MAC-процессор AR5213 (AR5212).
Поэтому результаты, представленные на Рис. 9, для точек доступа 3Com и SMC отражают значения скорости работы в автоматическом режиме, а для всех остальных продуктов – в режиме 54 Мбит/с. Все результаты, приведённые на Рис.10, получены в режиме 54 Мбит/с.
Пропускная способность 32 клиентов
После “обкатки” тестирования, мы приступили к тестированию нагрузки. Сначала мы попробовали провести тестирование при максимальной нагрузке, которую способен создать эмулятор, – 64 клиента, но встретили множество проблем, вызванных разными причинами. Поэтому мы решили вернуться к тестированию с 32 виртуальными соединениями, поскольку все производители заявили о поддержке своими продуктами, как минимум, 32 клиентов. Отметим, что Linksys заявила о поддержке точкой доступа WAP54G, максимум, 32 клиентов.
Кроме всего прочего, мы решили увеличить время тестирования с пяти минут до 4 часов. При этом мы получили возможность провести три-четыре тестовых запуска за день.
Рис. 11. Пропускная способность: клиент -> точка доступа – 4 часа.
На Рис. 11 показаны результаты четырёхчасового тестирования, близкие к тому, что мы получили выше, при использовании одного клиента. Снова отметим, что тестирование точек доступа 3Com/SMC проводилось в автоматическом режиме скорости передачи, для остальных продуктов скорость была установлена в 54 Мбит/с.
На графиках показаны значения, полученные в результате суммирования средних пропускных способностей всех 32 клиентов. Реальные скорости для каждого из клиентов были, конечно же, существенно ниже – в среднем, 1/32 от общей пропускной способности. Исходя из полученных результатов, средняя скорость работы каждого из клиентов, в лучшем случае, лишь немного превышает 0,5 Мбит/с, а в худшем- немного ниже 0,4 Мбит/с.
Единственной неожиданностью стало изменение пропускной способности точки доступа Linksys WAP54G, которая увеличилась с 12,3 Мбит/с при одном клиенте до 14,7 Мбит/с при 32! Объяснить это можно периодическими пиками и падениями пропускной способности WAP54G во время 5-минутного теста. При увеличении времени тестирования их влияние уменьшилось.
Передача данных на 32 клиента перегрузила несколько точек доступа
32 клиента смогли перегрузить и вывести несколько точек доступа из работы при проведении тестов в направлении от точки доступа к клиентам. Завершили тестирование только точки доступа Buffalo Tech WLA-G54C и Gigabyte GN-A17GU, которые показали результаты 21,5 и 20 Мбит/с, соответственно. На Рис. 12 показано время до первой ошибки клиента, при которой мы останавливали тестирование.
Рис. 12. Направление: точка доступа -> клиент. 32 клиента, время до первой ошибки.
Точное время до появления первой ошибки вряд ли существенно, однако оно косвенно отражает надёжность работы точки доступа, что было подтверждено несколькими тестовыми прогонами. На точках доступа 3Com/SMC мы не смогли даже запустить тест.
Смешанный режим, 32 клиента
Как мы видели выше, 32 клиента оказались некоторым точкам доступа не по силам. Однако сценарий максимальной загрузки всех клиентов является синтетическим. Чтобы эмулировать реалистичную работу сети, мы решили использовать несколько приложений, запускаемых через скрипты.
Для беспроводных клиентов мы использовали шесть различных скриптов Chariot: скачивание графики по HTTP (5), скачивание почты по POP3 (5), отправка почты по SMTP (5), закачивание данных по FTP (7), скачивание данных по FTP (5) и работа с потоковыми аудио/видео Realaudio (5). В скобках указано количество клиентов, использующих скрипт. Подробнее скрипты описаны ниже.
Задержки между запусками скриптов выбирались произвольным образом из промежутка от 1 до 1000 мс. Все скрипты, за исключением Realaudio, пытались передавать и принимать данные с максимальной скоростью. У Realaudio поток составлял порядка 300 кбит/с.
В результате тест позволял эмулировать по-прежнему сильную загрузку точки доступа, но при этом он был ближе к реальным условиям.
Рис. 13. Направление клиент -> точка доступа, 32 клиента, смешанный режим. Время до первой ошибки.
На Рис. 13 показано, что все точки доступа, за исключением Linksys WAP54G, справились с заданием – по крайней мере, смогли проработать хоть какое-то время. И снова завершить тестирование удалось только точкам доступа Buffalo Tech WLA-G54C и Gigabyte GN-A17GU, которые продержались все четыре часа.
Этот тест мы запускали и в обратном направлении – от точки доступа к клиентам, результаты показаны на Рис. 14. Однако, из-за нехватки времени, нам пришлось сократить продолжительность тестирования до 2,5 часов.
Рис. 14. Направление точка доступа -> клиент, 32 клиента, смешанный режим. Время до первой ошибки.
Как видим, все точки доступа смогли справиться с тестом, при этом Linksys WAP54G и ASUS WL300g даже улучшили результат.
Описание скриптов Chariot
Получение электронной почты по POP3 и отправка по SMTP
Скрипты эмулируют обычную передачу электронной почты. По умолчанию размер письма составляет 1000 байт плюс заголовок длиной 20 байт.
Скачивание и закачивание по FTP
Скрипты эмулируют отправку файла от конечной точки 2 к конечной точке 1 по протоколу FTP. Размер файла составляет 100 000 байт.
Скрипт разделяется на три части. Первая часть эмулирует подключение конечной точки 1 к конечной точке 2. Вторая часть эмулирует запрос конечной точки на передачу файла размером 100 000 байт. Последняя часть эмулирует отключение пользователя.
Передача картинок GIF по HTTP
Скрипт эмулирует передачу графических файлов по протоколу HTTP. Размер файла составляет 10 000 байт.
Аудио/видео поток RealAudio
Realmed эмулирует сервер RealNetworks, который позволяет передавать аудио/видео потоки по сети. Файл использует технологию сжатия Stream Smart (версия G2).
Заключение
В статье мы рассмотрели работу точек доступа стандарта 802.11g под высокой нагрузкой. Мы взяли модели как потребительского уровня, так и масштаба предприятия. Ещё раз заметим, что тестирование проводилось на территории без другого беспроводного оборудования, работающего в диапазоне 2,4 ГГц. В какой-то степени тесты проводились вслепую, поскольку производители не сообщили каких-либо сведений о максимальной нагрузке на точки доступа, кроме максимального количества подключённых клиентов.
Конечно, можно предположить, что нагрузки, задаваемые при нашем тестировании, многократно превышают нагрузки, которые будут испытывать точки доступа при повседневном использовании – особенно в тщательно спланированной беспроводной сети. Но мы считаем, что поведение продуктов при стрессовых условиях показывает надёжность и стабильность устройства.
Нам хотелось бы поблагодарить 3Com, ASUS, Buffalo Technology, Gigabyte, Linksys и SMC за то, что они согласились принять участие в тестировании. Также, мы благодарны компании CMC, которая предоставила возможность проведения этого тестирования, выслав нам эмулятор беспроводных клиентов.
Наиболее интересным нам показался результат, полученный при тестировании дорогих моделей корпоративного уровня – 3Com 3CRWE725075A и SMC2552W-G. Они попросту не справились с нагрузкой. Нам так и не удалось найти причину их низкой производительности. Выходит, что пока они проигрывают менее дорогим продуктам потребительского уровня.
Интересно, что успешно завершить тесты с 32 виртуальными клиентами удалось только двум точкам доступа: Buffalo Tech WLA-G54C на чипсете Broadcom и Gigabyte GN-A17GU на чипсете Atheros. WLA-G54C оказалась лучше, чем остальные решения на базе Broadcom. Мы полагаем, что такой результат точки доступа Gigabyte можно, отчасти, объяснить процессором Renasas и новым беспроводным чипом Atheros.
На самом деле, выбирать точку доступа следует, опираясь на множество факторов, и мы бы не стали рекомендовать устройство только на основании приведённых тестов. Однако тесты всё же дают какую-то характеристику точкам доступа.