В последнее время в сетях наблюдается тенденция увеличения трафика вообще и мультимедийного трафика в частности. Пропускная способность каналов тоже, конечно, увеличивается, но несколько медленнее. Поэтому пользователь может столкнуться с проблемами — если при перекачке файла из 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
















