В последнее время в сетях наблюдается тенденция увеличения трафика вообще и мультимедийного трафика в частности. Пропускная способность каналов тоже, конечно, увеличивается, но несколько медленнее. Поэтому пользователь может столкнуться с проблемами если при перекачке файла из Internet (да и хотя бы из локальной сети) он и не заметит задержек (упадет немного скорость, и ладно), то при разговоре с другом через локальную сеть эти задержки могут катастрофически сказаться на понимании им речи собеседника от больших задержек между вопросом и ответом до потери части слов (или их искажения). Неуправляемые примитивные коммутаторы (взамен концентраторов) несколько улучшают ситуацию, но при сильной загрузке физического канала и они не помогут. Но выход есть это приоритетное управление трафиком в зависимости от его типа.
Различные коммутаторы используют разные способы управления трафиком, мы же рассмотрим метод, реализованный в 16-типортовых коммутаторах от TRENDnet. И хотя они и неуправляемые, но некоторые функции более интеллектуальных моделей в них присутствуют.
Модель TRENDnet TE100-S16E plus имеет внешний блок питания и небольшие (относительно своих 16ти портов) размеры. Корпус устройства металлический, снизу расположены отверстия для вертикального крепления коммутатора. 16 экранированных RJ-45 портов находятся в задней части корпуса, а вся индикация располагается спереди. Порт аплинка логически совмещен с первым портом. В комплекте с коммутатором идет внешний блок питания, документация и резиновые ножки для установки устройства например на стол.
У второй модели TRENDnet TE100-S16 plus блок питания встроенный:
Этот коммутатор тоже собран в металлическом корпусе и предназначен для монтирования в стойку (что, впрочем, не исключает его установку на горизонтальные поверхности). Индикация и порты выведены на переднюю панель, аплинк-порт логически совмещен с восьмым портом устройства, все порты экранированные.
Разъем питания находится сзади и оснащен выключателем питания (что, согласитесь, удобно). В комплекте также идет документация, резиновые ножки и кронштейны с шурупами для крепления устройства в стойке. Модель обладает импульсным блоком питания, что положительно сказывается на поведении устройства при кратковременных провалах или скачках напряжения. Еще одно существенное отличие от предыдущей модели сзади коммутатора расположен интерфейс для подключения 100BASE-FX (оптики на 100Mbits) модуля. В этом случае порт модуля подменяет 16й порт коммутатора можно использовать либо то, либо другое, но никак не одновременно это один и тот же порт.
Идеологически, подход к индикации одинаков на обоих коммутаторах. Один индикатор питания и пара индикаторов на каждый порт, один из которых (10/100Mbit link/act) является двухцветным. Кроме того, на TE100-S16 plus еще есть один индикатор, индицирующий наличие подключения устройства к оптическому модулю.
индикатор | цвет | состояние | информация |
10/100M LINK/ACT | зеленый | горит | подключено устройство на скорости 100Mbit |
мерцает | передача данных через порт на скорости 100Mbit | ||
оранжевый | горит | подключено устройство на скорости 10Mbit | |
мерцает | передача данных через порт на скорости 10Mbit | ||
FDX/COL | зеленый | горит | полный дуплекс |
не горит | полудуплекс | ||
мерцает | наличие коллизии в полудуплексе | ||
PWR | зеленый | горит | устройство включено |
FX (только на TE100-16 plus) | зеленый | горит | 100Base-FX (100Mbit оптический) модуль подключен |
Таблица 1. Состояния индикаторов
А теперь самое интересное сзади на TE100-S16 plus (около интерфейса для подключения оптического модуля) и сбоку на TE100-S16E plus можно наблюдать вот такие панели переключателей:
QoS (Quality of Service), присутствующий в обоих коммутаторах, является механизмом приоритетов трафика. Коммутатор выделяет три уровня приоритетов для каждого ethernet-кадра, проходящего через коммутатор: нормальный, высокий и максимальный. Каждый уровень имеет свою независимую очередь пакетов на каждом порту. Пакеты с более высокими приоритетами будут доставлены быстрее, чем менее приоритетные. Алгоритм работы очередей довольно прост. Рассмотрим его для одного порта: если все три очереди не пусты (в них имеются кадры для отправки), то общая пропускная способность канала распределяется так 8% для очереди с низким приоритетом, 30% — с высоким, и оставшиеся 62% пропускной способности отдаются для пакетов с максимальным приоритетом. Если одна или более очередей освобождается, то меняется и схема распределения пропускной способности:
приоритет очереди, пустующей сейчас | Выделяемый процент пропускной способности канала | ||
Нормальный (Normal) | Высокий (High) | Максимальный (Very High) | |
Нормальный (Normal) | × | 33% | 66% |
Высокий (High) | 11% | X | 89% |
Максимальный (Very High) | 20% | 80% | X |
отсутствует | 8% | 30% | 62% |
Таблица 2. Распределение приоритетов очередей
Данные правила действительны для всех портов устройства и не зависят от дуплекса и скорости порта. Для предотвращения переполнения очередей предусмотрен механизм уничтожения кадров с нормальным приоритетом (для сохранения буферной памяти для более приоритетных пакетов). Это позволяет свести к минимуму потери высокоприоритетных кадров на портах с отключенной функцией управления потоком.
Механизм QoS, реализованный в обоих коммутаторах, позволяет использовать три способа управления трафиком:
- На основе 802.1Q VLAN Tag Header TCI bits (уровень 2 канальный ??? )
- На основе IP Header TOS bits (уровень 3 сетевой ??? )
- Привязка к портам
В первых двух случаях уровни приоритета назначаются в TCI/TOS битах кадра. “0” означает нормальный приоритет, “1” высокий, все остальные значения приравниваются к максимальному приоритету. Так же возможно жестко установить приоритет для восьми заданных портов (с 3го по 6й и с 11го по 14й) в этом случае все кадры, поступившие с этих портов обрабатываются исходя из назначенного на порт приоритета. Так как переключатели двухпозиционные (вкл/выкл), варьировать приоритет порта невозможно. Какой уровень приоритета (высокий или максимальный) устанавливается, также неясно. Также отсутствуют сведения о том, модифицируются ли заголовки TOS/TCI при прохождении через такой приоритетный порт. Скорее всего, нет, поэтому возможности использования функции привязки приоритетов к портам сильно ограничены ведь пакеты, пройдя через приоритетный порт одного коммутатора, на другом коммутаторе будут обработаны как нормальные (неприоритетные).
Все эти три способа могут комбинироваться. В этом случае кадр обрабатывается, исходя из максимального приоритета, заданного одним из вышеперечисленных способов. Исключение составляет привязка приоритета к портам в этом случае все пакеты, приходящие на такие порты, обрабатываются согласно приоритету порта.
На практике вышенаписанное означает, что наибольшей гибкостью обладают первые два способа мы можем задать (на компьютере, используя средства ОС) высокие приоритеты только для избранных протоколов/приложений (например, для telnet, ssh, sntp, pop3, www), а для таких протоколов, как ftp, smb (windows-шаринги файлов) оставить все как есть (нормальный приоритет — то есть, фактически, отсутствие каких-либо приоритетов). В результате мы получаем быстро работающие SSH, электронную почту и веб-броузинг в сети, сильно нагруженной постоянной перекачкой больших файлов с windows-шарингов и ftp.
Приоритезация трафика также позволяет эффективно использовать потоковое видео, “voice-over-ip” и другие мультимедиа приложения в сильно загруженных сетях.
Коммутатор TRENDnet TE100-S16 plus кроме QoS также поддерживает транкинг - агрегацию (объединение) до четырех физических портов в один логический линк с соответствующим увеличением пропускной способности (до 800Mbits в режиме полного дуплекса) между двумя соединяемыми устройствами. Возможно создание двух таких линков транки А и B, но только между разными коммутаторами. Эта функция позволяет сильно повысить пропускную способность канала между коммутаторами и соответственно уменьшить загрузку сети. Таким образом, можно каскадировать три и более коммутатора с использованием обоих транков (или всего двух коммутаторов но использовать только один транк) с результирующей пропускной способностью канала между ними до 800Mbits. Для транкинга можно использовать также два или три порта, настройки производятся дип-переключателями сзади устройства, согласно таблице (A0,1 и B0,1 переключатели на корпусе устройства):
A0 | A1 | Транк A |
0 | 0 | Отключен |
0 | 1 | Задействованы порты 1 и 9 (400Mbits) |
0 | 1 | Задействованы порты 1,2 и 9 (600Mbits) |
0 | 1 | Задействованы порты 1,2,9 и 10 (800Mbits) |
B0 | B1 | Транк B |
0 | 0 | Отключен |
0 | 1 | Задействованы порты 8 и 16 (400Mbits) |
0 | 1 | Задействованы порты 8,15 и 16 (600Mbits) |
0 | 1 | Задействованы порты 7,8,15 и 16 (800Mbits) |
Таблица 3. Конфигурации транкинга портов
Транкинг может использоваться с различными коммутаторами, поддерживающими его. Информация об используемом в данном случае методе выравнивания трафика между портами в режиме транкинга отсутствует.
Схемотехника устройств
Оба коммутатора собраны на контроллере TC6216M компании TAMARACK M.I. (TMI). Это неуправляемый 16ти портовый 10/100 Mbits ethernet switch контроллер, содержащий в себе некоторые функции управляемых коммутаторов, такие как приоритезация трафика и транкинг портов.
Контроллер содержит интегрированную буферную память типа SSRAM объемом 512 килобайт и память на 16K MAC адресов, заполняемую в режиме самообучения. Метод коммутации “Store and Forward”. Для доступа к внешней среде передачи используются RTL8204 трансиверы от Realtek. Возможно использование внешней EEPROM памяти для хранения конфигурации.
В контроллере реализована защита от чрезмерного количества широковещательных (broadcast) пакетов. При этом совместно используются два метода:
- ограничение на максимум использования буферной памяти под широковещательные пакеты
По умолчанию это восемь 256-байтовых ячеек для каждого порта, возможно задать большее количество через конфигурацию, сохраняемую в EEPROM. - ограничение на максимально возможную полосу пропускания, которую может занять широковещательный трафик.
Возможно задание максимальной полосы от 1.5 до 22% от полосы пропускания каждого порта, по умолчанию используется число 4%. При превышении широковещательные пакеты уничтожаются.
Технические характеристики обоих коммутаторов сведены в таблицу:
TE100-S16E plus | TE100-S16 plus | |
Количество портов | 16 | 16 |
Поддержка IEEE 802.3 (10Base-T Ethernet 10Mbits) и IEEE 802.3u (100Base-TX Fast Ethernet 100Mbits) | да | да |
Поддержка полу- и полнодуплексного режима работы в 10/100MBit | да | да |
Поддержка 100Base-FX (62.5/125 мкм мультимодовая оптика) | нет | да, с доп-ным модулем |
Тип коммутации | Store and Forward | Store and Forward |
Поддержка Full Duplex 802.3x Flow Control (управление потоком в режиме полного дуплекса) | да | да |
Поддержка Half Duplex Back Pressure Flow Control (управление потоком в режиме полудуплекса) | да | да |
Поддержка N-Way auto negotiation (автодетектирование скорости и дуплекса устройства, подключенного к порту) | да | да |
Размер буфера кадров | 512KB | 512KB |
Количество запоминаемых MAC | 16K | 16K |
Используемый микроконтроллер | TMI TC6216M + Realtek RTL8304 | TMI TC6216M + Realtek RTL8304 |
Наличие QoS | Да, 3 уровня | Да, 3 уровня |
Методы QoS | 802.1Q VLAN Tag, IP Header, Port based | 802.1Q VLAN Tag, IP Header, Port based |
Наличие транкинга портов | Нет | Да 2, до 4-х в каждом |
Тип питания | 3,3В, 3А | 100–220В, 50–60Гц |
Максимальное энергопотребление | 10 Вт | 20 Вт |
Тип блока питания | внешний | внутренний, импульсный |
Размеры (Ш/Д/В), мм | 184×124×44 | 440×140×44 |
Рабочие температуры, °C | 0–50 | 0–50 |
Рабочая влажность, % | 10–90 | 10–90 |
Табл 4. Технические характеристики коммутаторов
Также отмечу, что в модели со встроенным блоком питания в наличии имеется еще и вентилятор. Правда, не совсем понятно, почему он установлен со стороны, противоположной блоку питания. С другой стороны, если взглянуть на сам БП, то видно, что он как раз спроектирован без расчета на установку каких-либо вентиляторов и установка последнего могла бы привести к излишнему шуму при работе устройства.
Результаты тестирования.
Сводная таблица.
Методика тестирования, еще немного изменившаяся, описана тут. Считаются данные, идущие только в одну сторону (полудуплекс) через порт, если не указано обратного. Скорость считается в тысячах байт (1000 * 1байт). Данные передавались блоками по 64KB.
Таблица результатов коммутатора TE100-S16E plus:
тест | клиенты | режим первого, Mbits | дуплекс первого | скорость передачи первого, 1000*Byte/sec | направление передачи | режим второго, Mbits | дуплекс второго | скорость передачи второго, 1000*Byte/sec |
1 | 8 | 100 | Full | 11300 | <--> | 5200 | ||
2.1 | 2 | 100 | Full | 12150 | --> | 100 | Full | |
2.2 | 2 | 100 | Full | 10330 | <--> | 100 | Full | 10480 |
3.1 | 2 | 100 | Full | 1205 | <--> | 10 | Full | 1215 |
3.2 | 2 | 100 | Full | 600 | <--> | 10 | Half | 605 |
4.1 | 2 | 100 | Half | 1175 | <--> | 10 | Full | 1185 |
4.2 | 2 | 100 | Half | 605 | <--> | 10 | Half | 600 |
5.1 | 2 | 10 | Full | 1145 | <--> | 10 | Full | 1125 |
5.2 | 2 | 10 | Half | 580 | <--> | 10 | Half | 570 |
5.3 | 2 | 10 | Half | 600 | <--> | 10 | Full | 595 |
6.1 | 2 | 100 | Full | 6095 | <--> | 100 | Half | 5945 |
6.2 | 2 | 100 | Half | 5750 | <--> | 100 | Half | 5640 |
Таблица результатов коммутатора TE100-S16 plus:
тест | клиенты | режим первого, Mbits | дуплекс первого | скорость передачи первого, 1000*Byte/sec | направление передачи | режим второго, Mbits | дуплекс второго | скорость передачи второго, 1000*Byte/sec |
1 | 8 | 100 | Full | 10300 | <--> | 8100 | ||
2.1 | 2 | 100 | Full | 12135 | --> | 100 | Full | |
2.2 | 2 | 100 | Full | 10300 | <--> | 100 | Full | 10510 |
3.1 | 2 | 100 | Full | 1210 | <--> | 10 | Full | 1205 |
3.2 | 2 | 100 | Full | 605 | <--> | 10 | Half | 600 |
4.1 | 2 | 100 | Half | 1185 | <--> | 10 | Full | 1175 |
4.2 | 2 | 100 | Half | 600 | <--> | 10 | Half | 605 |
5.1 | 2 | 10 | Full | 1145 | <--> | 10 | Full | 1130 |
5.2 | 2 | 10 | Half | 580 | <--> | 10 | Half | 575 |
5.3 | 2 | 10 | Half | 595 | <--> | 10 | Full | 605 |
6.1 | 2 | 100 | Full | 6045 | <--> | 100 | Half | 5940 |
6.2 | 2 | 100 | Half | 5755 | <--> | 100 | Half | 5655 |
Ниже построены диаграммы сравнения коммутаторов с теоретически рассчитанным максимумом (за него принята единица) согласно вышеописанной методике. Понятно, что максимума достигнуть невозможно в принципе, поэтому результаты типа 0.9 можно считать идеальными.
Диаграммы работы коммутаторов (снятые с помощью MS Perfomance Monitor) вынесены на отдельные страницы:
Да, усовершенствование методики явно сказалось на результатах тестов - они практически идеальные. Ну и сами коммутаторы, разумеется, не подвели. Единственный не совсем понятный момент отличие результатов в 1 и 5 группах тестов. Устройства-то собраны на одинаковом контроллере по идее, и результаты должны быть схожи. С другой стороны, отличия не столь существенны, и результаты близки к теоретически рассчитанным максимальным.
Функциональность
Тут все в порядке. Сильно радует наличие дополнительных функций, таких как QoS и агрегация портов, что дает возможность более гибкого управления загрузкой сети. Двухцветные индикаторы состояния портов более удобны в восприятии.
Выводы
Коммутаторы отлично подойдут как для малых сетей, так и для сетей, где есть нужда в контроле и частичном управлении трафиком, а ставить более дорогое оборудование (с большей функциональностью, но и существенно возросшей ценой) не представляется возможным.
Выражаем благодарность VIA Technologies за предоставленные процессоры VIA C3 833Mhz