Методика тестирования миникоммутаторов, версия 1.3
Тестирование миникоммуторов включает в себя физическое тестирование в реальной сети, анализ полученных данных и субъективные оценки функциональности и дизайна коммутатора.
Для первой части использовалась утилита IOMeter, разработанная компанией Intel. Больше компания не развивала этот продукт. Но некоторое время назад на сайте SourceForge появилась новая версия программы. К сожалению она еще достаточно сырая часто зависала во время тестирования. Поэтому в тестах используется версия программы от Intel.
IOMeter, работая на транспортном уровне и используя протокол TCP, позволяет генерировать трафик с заданными параметрами, а также собирать по нему статистику. Для трафика можно задавать множество параметров, но нас интересовала генерация трафика максимальной интенсивности, поэтому было выбрано:
- тип передачи 100% последовательная
- вид передачи 100% запись
- размер блока данных 64KB (это не размер кадра ethernet, а блок данных, которым оперирует программа)
- время задержки при передаче пакетов минимально.
Для снятия скоростных показателей передачи данных использовалась системная утилита операционной системы "Perfomance Monitor".
Для тестирования строилась одноранговая локальная сеть Fast Ethernet из пяти компьютеров:
- Платформа Asus Terminator
- Процессор VIA C3 866MHz
- Память 128MB SDRAM
- Жесткий диск Maxtor 20GB
- Сетевой адаптер Intel Pro/100+
- ОС Windows2000 Pro +SP2
Для сетевых адаптеров дополнительно были установлены сетевые драйверы с сайта производителя.
Настройки сетевых адаптеров:
- Flow Control Settings (управление потоком) включено
- QoS packet tagging (приоритетная обработка кадров) запрещено.
- Link Speed & Duplex (скорость передачи и дуплекс) менялась в зависимости от конкретного теста.
Физическое тестирование
Из списка тестов были убраны большинство пунктов с одностороннем тестированием, так как по предыдущем тестам видно, что результаты двусторонних (с передачей трафика в обе стороны) тестов подобны результатам односторонних.
- 1. Максимальная загрузка коммутатора.
- Задействуются пять портов коммутатора.
- Скорость передачи 100Mbits, Full Duplex.
- Устанавливаем режим передачи трафика "все со всеми" каждый хост передает и принимает данные
с остальных хостов. Число хостов (сетевых адаптеров) равно числу портов коммутатора.
-
2. Передача данных между двумя портами при отсутствии трафика на остальных (идеальный случай).
- 2.1 Односторонняя передача из 100Mbits Full Duplex в 100Mbits порт Full Duplex.
- 2.2 Двусторонняя передача между 100Mbits Full Duplex и 100Mbits портами Full Duplex.
-
3. Чтение данных с одного порта во все остальные.
Эмулируем ситуацию "сервер и много клиентов". -
4. Передача данных между 10Mbits и 100Mbits сегментами.
Здесь мы выясняем качество коммутации между двумя сегментами с различными скоростями передачи и параметрами дуплекса.
- 4.1 Двусторонняя передача между 10Mbits Full Duplex в 100Mbits Full Duplex портами.
- 4.2 Двусторонняя передача между 10Mbits Half Duplex в 100Mbits Full Duplex портами.
-
5. Не будем забывать и о 100Mbits концентраторах, которые могут быть подключены к коммутатору.
-
Передача данных между 100Mbits концентратором и клиентом или коммутатором.
- 5.1 Двусторонняя передача между 100Mbits Full Duplex и 100Mbits портами Half Duplex.
- 5.2 Двусторонняя передача между 100Mbits Half Duplex и 10Mbits портами Half Duplex.
- 5.3 Двусторонняя передача между 10Mbits Full Duplex и 100Mbits портами Half Duplex.
Передача данных между 100Mbits концентратором и клиентом или 10Mbits концентратором.
Передача данных между 100Mbits концентратором и 10Mbits клиентом или коммутатором.
-
6. Передача данных между двумя 10Mbits портами.
Конечно, обычно нет смысла подключать 10Mbits сетевые адаптеры к 100Mbits порту при сегодняшних ценах на Fast Ethernet платы, но тем не менее такое бывает. Ну а установка коммутаторов в центре звезды из концентраторов или просто объединения двух 10Mbits сегментов является обычной практикой. Поэтому рассмотрим и такую возможность.- 6.1 Двусторонняя передача между 10Mbits Full Duplex и 10Mbits Full Duplex портами.
- 6.2 Двусторонняя передача между портами 10Mbits Half Duplex и 10Mbits Half Duplex.
- 6.3 Двусторонняя передача между портами 10Mbits Half Duplex и 10Mbits Full Duplex.
Эмуляция работы двух рабочих станций с 10Mbits сетевыми адаптерами или передачи данных между двумя 10ти мегабитными концентраторами.
Моделируем подключение двух концентраторов к портам коммутатора.
Моделируем подключение концентраторов к одному из портов коммутатора и 10Mbits сетевого адаптера к другому.
-
7. Передача данных между 100MBit портами в режиме полудуплекса.
Эмулируется работа коммутатора в режиме объединения нескольких 100MBit концентраторов.- 7.1 Двусторонняя передача между двумя 100Mbits Half Duplex портами.
- 7.2 Режим передачи данных «все со всеми» в полудуплексном 100MBit режиме.
В последнем случае задействуются пять хостов, аналогично пункту 1. Каждый хост передает и принимает данные с остальных. Проверяется способность коммутатора наилучшим образом работать в режиме коммутации высокоскоростных концентраторов (это один из популярных способов использования коммутаторов).
Анализ полученных данных
Для сравнения коммутаторов между собой будем использовать безразмерные интегральные показатели. Для начала результат каждого теста конвертируется в безразмерную величину по следующим правилам:
- Максимальную теоретическую скорость в текущем тесте, берем за единицу или 100%
- Максимальная скорость для тестов 100MBit, Full Duplex равна 100,000,000/8/1024 = 12,207KB
- Максимальная скорость для тестов 100MBit, Half Duplex (при двусторонней передаче данных) равна 100,000,000/8/1024/2 = 6,107KB
- Максимальная скорость для тестов с участием 10MBit, Full Duplex портов равна 10,000,000/8/1024 = 1,221KB
- Максимальная скорость для тестов с участием 10MBit, Half Duplex портов (при двусторонней передаче данных) равна 10,000,000/8/1024/2 = 610KB
- Скорость передачи данных текущего теста принимается за X% и рассчитывается исходя из пропорции.
Например безразмерный показатель для значения 800Kb, снятого при тестировании пункта 6.1 рассчитывается как
800/1221 = 0.66
Очевидно, что теоретически рассчитанный максимум не достижим практически. Величина порядка 0.9 уже говорит об очень хорошем результате в тесте.
Далее, если в группе присутствует более одного теста, то каждому назначается в соответствие свой весовой коэффициент (безразмерная положительная величина, меньшая единицы; сумма всех весовых коэффициентов для каждой группы тестов равна единице). На этот весовой коэффициент умножается безразмерная величина, полученная в первой стадии. Полученные результаты, принадлежащие одной группе тестов, суммируются. В результате получаем набор безразмерных интегральных показателей по группам тестов. По ним и строим диаграммы.
Теперь рассмотрим деление тестов на группы и их весовые коэффициенты:
| номер теста | весовой коэффициент | группа |
| 1. | 0.6 | Группа 1 (пункты 1-3) Работа в режиме 100MBit, Full Duplex |
| 2.1 | 0.1 | |
| 2.2 | 0.1 | |
| 3 | 0.2 | |
| 4.1 | 1 | Группа 2 Коммутация между 10 и 100MBit портами, Full Duplex |
| 4.2 | 1 | Группа 3 Коммутация между портами 10Mbit Half Duplex и 100MBit Full Duplex |
| 5.1 | 1 | Группа 4 Коммутация между портами 100Mbit Half Duplex и 100MBit Full Duplex |
| 5.2 | 1 | Группа 5 Коммутация между портами 100Mbit Half Duplex и 10MBit Full Duplex |
| 5.3 | 1 | Группа 6 Коммутация между портами 100Mbit Half Duplex и 10MBit Half Duplex |
| 6.1 | 0.34 | Группа 7 (пункты 6.1-6.3) Коммутация между 10Mbit портами с разными параметрами дуплекса |
| 6.2 | 0.33 | |
| 6.3 | 0.33 | |
| 7.1 | 0.3 | Группа 8 (пункты 7.1-7.2) Коммутация между 100Mbit Half Duplex портами |
| 7.2 | 0.7 |
Весовые коэффициенты выбирались эмпирическим путем. Статистики по использованию коммутаторов в различных режимах у меня нет.
Функциональность и дизайн
Под функциональностью понимается в первую очередь "информативность" коммутатора. Так как для неуправляемых коммутаторов единственный способ передачи информации и статистики о своей работе это светодиодные индикаторы, то оцениваем их количество и способность отразить максимум информации о порте скорость работы, наличие полного дуплекса, обнаружение коллизии, индикация передачи данных, информацию об аварийном отключении порта. А также индикатор питания. В эту же категорию относим наличие (или соответственно отсутствие) порта "uplink".
К дизайну отнесем размеры коммутатора (относительно количества его портов), возможность установки на горизонтальные поверхности и наличие крепежных отверстий для установки устройства на стену, удобство расположения (обзора) индикаторов, ну и его внешний вид.
Естественно, это не окончательный вариант методики, она будет дополняться шлифоваться. Любые Ваши предложения высказывайте в форуме.
Комментарии
Есть мнение, что выбранный размер кадра в 64KB не оптимальный и на результаты тестирования оказывают сильное влияние конкретная реализация протокола. Вполне возможно. В следующем тестировании будет проведено исследование на коммутаторе производства Intel, в дальнейшем используемого в качестве эталонного. После этого можно будет строить более объективные теории.
|
|

