Мини-коммутатор Gigabyte GS-SW005


Развитие сетевых технологий в последнее десятилетие привело к тому, что сетевые адаптеры ставят почти в каждый новый системный блок при сборке, а интернетом грезят все от мала до велика. Один раз ехал с работы — услышал разговор двух девушек друг с другом — "Поедем ко мне, в интернете посидим…" В общем, непонятно, как обходились наши дедушки и бабушки без компьютеров вообще и сетей в частности.

Это бурное развитие привело к существенному снижению цены на сетевое оборудование, увеличению скорости передачи данных и, естественно, появлению большого количества новых стандартов. Таким образом, коммутаторы стали быстро вытеснять концентраторы с рынка, привлекая к себе не очень высокой ценой и свойствами, отсутствующими у концентраторов. Для локальных сетей особую популярность преобрели неуправляемые коммутаторы. Они отличаются упрощенной элементной базой, наличием только базовых функций, небольшими размерами и, как следствие, низкой ценой. Такие устройства принято называть "мини-коммутаторами".

Большинство существующих локальных сетей построено на технологии Ethernet. Сети, построенные по этой технологии, работают в соответствии с принципами CSMA/CD (Carrier Sense Multiple Access/Collision Detection — множественный доступ с контролем несущей и обнаружением коллизий), что соответствует спецификации Ethernet IEEE 802.3. В сети Ethernet все рабочие станции могут принимать данные одновременно, но передавать данные на общую шину в определнный момент времени может только один из них. Таким образом, при увеличении числа компьютеров в сети ее пропускная способности снижается.

Концентраторы — устройства, реализующие технологию Ethernet. Все клиенты, подключенные к портам концентратора работают в полудуплексном режиме (могут только принимать или только передавать данные в текущий момент времени). Все кадры данных, полученные концентратором с любого порта, он ретранслирует на все остальные порты, таким образом, общая шина — основной недостаток Ethernet — сохраняется.

Сети, построенные с использованием только концентраторов, очень чувствительны к числу работающих клиентов. В таких сетях коэффициент загруженности не должен превышать 40%. Масштабируемость подобных сетей тоже сильно страдает (все из-за той же общей шины). Ко всему, присутствуют ограничения на максимальную удаленность клиентов друг от друга и ограничения максимального количества концентраторов между ними.

Выход — использовать коммутаторы. Они являются более продвинутыми устройствами, по сравнению с концентраторами. Их основное отличие — способность анализа адресов отправителя и получателя пакета данных и ретрансляция пакета только на тот порт, к которому подключен адресат. Таким образом, коммутаторы изменяют режим доступа к среде передачи, производят деление сети на несколько (соответственно количеству портов на устройстве) сегментов коллизий и предоставляют каждому узлу сети виртуальную выделенную пропускную полосу канала.

В процессе работы коммутатор способен "обучаться" — пассивно наблюдая за трафиком, проходящим через него, он строит адресную таблицу (таблицу MAC адресов), в соответствии с которой он будет передавать данные (кадры) не на все свои порты, а только на порт адресата.

Адрес получателя поступившего в порт коммутатора кадра ищется в адресной таблице. Если он там присутствует (и адресат находится не на этом же порту), коммутатор отсылает кадр на соответствующий порт получателя. Такой процесс называется передвижением (forwarding). Если получатель находится на том же порту, откуда кадр поступил, то такой кадр уничтожается. Это называется фильтрацией (filtering). Если адрес получателя кадра в адресной таблице отсутствует, то кадр рассылается во все порты. То есть, в последней ситуации коммутатор действует как концентратор.

Большинство современных коммутаторов могут работать как в режиме Ethernet 10Mbits (Мегабит в секунду), так и в Fast Ethernet 100Mbits. В режиме полу- и полного дуплекса. Обычно присутствует функция автоопределения скорости работы на порту.

В полудуплексном режиме используются обе витых пары (одна из них называется TX — используется для передачи, вторая — RX — для приема), но прием и передача данных не могут идти в одно и тоже время — либо только прием, либо только передача. В этом случае возможно возникновение коллизий, даже если рабочая станция напрямую подключена к концентратору. Это происходит тогда, когда коммутатор и рабочая станция одновременно захотят передать данные. Коллизия определяется по наличию сигнала в паре RX в момент попытки передачи в паре TX.

Регулирование потока данных в этом режиме коммутатор может осуществлять двумя методами — методом обратного давления (backpressure) и агрессивным поведенем порта коммутатора. Необходимость регулирования потока возникает в ситуации, когда необходимо разгрузить буфер порта, переполненный данными, а это сделать не получается, так как в порт поступают данные извне.

В первом случае при необходимости подавления активности порта, коммутатор генерирует jam-последовательности на него. На порту возникают коллизии, что приводит к прекращению трафика с него.

Во втором случае (он сейчас практически не используется) при доступе к среде передачи на этом порту, коммутатор не выдерживает паузы, предусмотренной стандартом. В результате коммутатор монопольно захватывает шину и передает свои данные рабочей станции (или другому устройству).

Полнодуплексный режим предусматривает одновременный прием и передачу данных по обеим витым парам. Если к порту коммутатора подключено конечное устройство (другой коммутатор или рабочая станция), то коллизии возникать не могут. Но ничто не мешает возникать перегрузкам (переполнению буфера порта), поэтому тут тоже предусмотрены механизмы регулирования трафика.

Для этого используется технология стандарта IEEE 802.3x — Advanced Flow Control. Коммутатор в потоке данных вставляет служебные кадры "Приостановить передачу", "Продолжить передачу". Сетевой адаптер, естественно, тоже должен поддерживать этот стандарт.

На производительность мини-коммутаторов, один из которых представлен ниже, влияют несколько основных параметров. Наиболее важные — скорость продвижения (forwarding), скорость фильтрации (filtering), пропускная способность коммутатора (throughput), время задержки при передаче кадра, тип коммутации, размер буферной памяти и размер адресной таблицы.

В документации на коммутаторы не всегда указываются даже эти параметры. Поэтому, при отсутствии таких данных в документации, будем считать, что при передаче кадров минимальной длины скорость продвижения совпадает с протокольной скоростью и составляет 148800 пакетов для 100Mbits и 14880 для 10Mbits. Для кадров большего размера, а обычно они и являются основной составляющей трафика, эти скорости будут ниже.

В мини-коммутаторах обычно реализуется только один тип коммутации. Как правило, это коммутация с промежуточной буферизацией. Весь кадр сначала принимается в буфер, а только потом анализируется его контрольная сумма (на наличие искажений кадра) и заголовок на предмет адреса получателя. После этого кадр отправляется на выходной порт. Этот способ не является самым быстрым, но ошибочные (искаженные) кадры коммутатор не пропускает.

Методика тестирования

Тестирование мини-коммуторов включает в себя как физическое тестирование в реальной сети, так и субъективные оценки функциональности и дизайна коммутатора.

Для первой части использовалась утилита IOMeter, разработанная компанией Intel. К сожалению, фирма не осуществляет поддержку этой программы, а просто выложила ее на свой сайт "как есть".

IOMeter позволяет генерировать трафик с заданными параметрами, а также собирать по нему статистику. Для трафика можно задавать множество параметров, но нас интересовала генерация трафика максимальной интенсивности, поэтому было выбрано:

  • тип передачи — 100% последовательная
  • вид передачи — 100% запись
  • размер блока данных — 64KB (это не размер пакета Ethernet, а блок данных, которым оперирует программа)
  • время задержки при передачи пакетов — минимально.

Для снятия скоростных показателей передачи данных использовалась системная утилита операционной системы "Perfomance Monitor".

Для тестирования строилась одноранговая локальная сеть Fast Ethernet из 5ти компьютеров. На каждом установлена ОС Windows XP Professional, сетевые адаптеры Intel Express 100. Из сетевых протоколов убирался устанавливаемый по умолчанию QoS — выравнивание нагрузки (он предназначен для выравнивания трафика и может быть причиной снижения скорости приема/передачи данных).

Настройки сетевых плат:

  • 802.1p QoS packet tagging (приоритетная обработка кадров) — запрещена.
  • Link Speed & Duplex (скорость передачи и наличие полного дуплекса) — менялась в зависимости от конкретного теста.
Остальное по умолчанию.

Перейдем к описанию тестов.

  • 1. Максимальная загрузка коммутатора.
    • Задействуются все 5 рабочих станций. (При пятипортовом коммутаторе).
    • Скорость передачи — 100Mbits, Full Duplex.
    • Устанавливаем режим передачи трафика "все со всеми" — каждая рабочая станция передает и принимает данные с остальных 4х станций.
    Таким образом мы имитируем общение всех компьютеров друг с другом, выясняем, выдерживает ли коммутатор подобную нагрузку, и смотрим скорость передачи данных на каждом из портов.
  • 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.
      Эмулируем подключение с одной стороны клиента с 10Mbits сетевым адаптером и 100Mbits адаптером или 100Mbits коммутатором с другой стороны.
    • 4.2 Односторонняя передача из 10Mbits сегмента Half Duplex в 100Mbits Full Duplex.
      Эмулируем подключениe 10Mbits концентратора с одной стороны и 100Mbits адаптера или 100Mbits концентратора с другой стороны.
      Передача данных из низкоскоростного порта в высокоскоростной обычно проблем не вызывает.
    • 4.3 Односторонняя передача из 100Mbits сегмента Full Duplex в 10Mbits Full Duplex.
    • 4.4 Односторонняя передача из 100Mbits сегмента Full Duplex в 10Mbits Half Duplex.
      Эти два теста являются относительно тяжелыми режимами для концентратора, так как ему приходится выравнивать (понижать) скорость передачи данных их 100Mbit-ного порта в 10Mbit-ный.
    • 4.5 Двусторонняя передача между 100Mbits сегментом Full Duplex и 10Mbits Full Duplex.
    • 4.6 Двусторонняя передача между 100Mbits сегментом Full Duplex и 10Mbits Half Duplex.
  • 5. Не будем забывать и о 100Mbits концентраторах, которые могут быть подключены к коммутатору.
      Передача данных между 100Mbits концентратором и клиентом.
    • 5.1 Односторонняя передача из 100Mbits Half Duplex в 100Mbits порт Full Duplex.
    • 5.2 Односторонняя передача из 100Mbits Full Duplex в 100Mbits порт Half Duplex.
    • 5.3 Двусторонняя передача между 100Mbits Full Duplex и 100Mbits портами Half Duplex.
    • Передача данных между 100Mbits концентратором и 10Mbits концентратором.

    • 5.4 Односторонняя передача из 100Mbits Half Duplex в 10Mbits порт Half Duplex.
    • 5.5 Односторонняя передача из 10Mbits Half Duplex в 100Mbits порт Half Duplex.
    • 5.6 Двусторонняя передача между 100Mbits Half Duplex и 10Mbits портами Half Duplex.
    • Передача данных между 100Mbits концентратором и 10Mbits клиентом.

    • 5.7 Односторонняя передача из 100Mbits Half Duplex в 10Mbits порт Full Duplex.
    • 5.8 Односторонняя передача из 10Mbits Full Duplex в 100Mbits порт Half Duplex.
    • 5.9 Двусторонняя передача между 10Mbits Full Duplex и 100Mbits портами Half Duplex.
  • 6. Передача данных между двумя 10Mbits портами. Конечно, обычно нет смысла подключать 10Mbits сетевые адаптеры к 100Mbits порту при сегодняшних ценах на Fast Ethernet платы, но тем не менее такое бывает. Ну а установка коммутаторов в центре звезды из концентраторов или просто объединения двух 10Mbits сегментов является обычной практикой. Поэтому рассмотрим и такую возможность.

      Эмуляция работы двух рабочих станций с 10Mbits сетевыми адаптерами или передачи данных между двумя 10ти мегабитными концентраторами.

    • 6.1 Односторонняя передача из 10Mbits Full Duplex в порт 10Mbits Full Duplex.
    • 6.2 Двусторонняя передача между 10Mbits Full Duplex и 10Mbits Full Duplex портами.
    • Моделируем подключение двух концентраторов к портам коммутатора.

    • 6.3 Односторонняя передача из 10Mbits Half Duplex в порт 10Mbits Half Duplex.
    • 6.4 Двусторонняя передача между портами 10Mbits Half Duplex и 10Mbits Half Duplex
    • Моделируем подключение концентраторов к одному из портов коммутатора и 10Mbits сетевого адаптера к другому.

    • 6.5 Односторонняя передача из порта 10Mbits Half Duplex в 10Mbits Full Duplex.
    • 6.6 Односторонняя передача из 10Mbits сегмента Full Duplex в порт 10Mbits Half Duplex.
    • 6.7 Двусторонняя передача между портами 10Mbits Half Duplex и 10Mbits Full Duplex.

Далее переходим к субъективным оценкам функциональности и дизайна.

Под функциональностью понимается в первую очередь "информативность" коммутатора. Так как для неуправляемых коммутаторов единственный способ передачи информации и статистики о своей работе — это светодиодные индикаторы, то оцениваем их количество и способность отразить максимум информации о порте — скорость работы, наличие полного дуплекса, обнаружение коллизии, индикация передачи данных, информацию об аварийном отключении порта. А также индикатор питания. В эту же категорию относим наличие порта "uplink".

К дизайну отнесем размеры коммутатора (относительно количества его портов), возможность его настенного крепления, ну и его внешний вид.

Естественно, это не окончательный вариант методики, она будет дополняться шлифоваться. Любые Ваши предложения высказывайте в форуме.

Тестирование

На основе вышеприведенной методики рассмотрим мини-коммутатор компании Gigabyte. — GS-SW005.

Видимо, это один из первых продуктов фирмы в этой области. Но это не объясняет, почему информация по нему отсутствует на англоязычном сайте компании. Правда, она есть на японском зеркале (судя по всему, там даны только основные характеристики коммутатора), но не все знают японский…

В комплект поставки входит сам коммутатор (корпус у него — полностью металлический), небольшая книжка-лента с документацией по нему, кабель-переходник для запитывания устройства через USB-порт. Судя по документации, должен был быть еще и адаптер питания, а USB переходник должен прилагаться в качестве бонуса, но в нашем случае адаптер отсутствовал. У этого переходника есть большой минус — его длина всего 22см не считая разъемов, что позволяет устанавливать устройство только сверху системного блока (для установки на полу/столе длины кабеля уже не хватает) или сбоку корпуса.

Также в комплекте была загадочная полоска с 4мя плоскими магнитами на клейкой бумажной основе. Оказалось, что они предназначены для крепления устройства на боковую стенку системного блока. Это предположение подтвердило внимательное изучение инструкции. Проверка показала, что держат они достаточно крепко.

Сам коммутатор очень маленький, умещается в ладони. Для сравнения — чуть выше, на главном снимке рядом с ним лежит монета достоинством в 2 рубля. Но тяжелый, относительно своих размеров, из-за металлического корпуса.

Спереди коммутатора расположен индикатор питания и 5 пар индикаторов, показывающих состояние портов, по два на порт соответственно. Индикаторы зеленые, одноцветные.

Горение верхнего означает, что к порту что-то подключено. Мерцание — передачу или прием данных. Горение нижнего — наличие полного дуплекса. Мигание — наличие коллизии при полудуплексном режиме работы. Индикация аварийного отключения порта отсутствует.


Сбоку расположен разъем питания для подключения сетевого адаптера или переходника для питания от USB. Вилка USB переходника держится неплотно и может вылететь при неосторожном движении из-за малой длины этого кабеля (например при перемещении коммутатора). К сожалению, на крышке отсутствуют отверстия для настенного крепления устройства, закрепление возможно только на металлический корпус компьютера прилагаемыми магнитами.

Сзади расположены 5 разъемов портов, один из которых является аплинком. В порты можно подключать как неэкранированную, так и экранированную витую пару.

Теперь посмотрим, что у него внутри:

Устройство собрано на микропроцессоре KS8995 фирмы KENDIN Communications. Он является основным узлом устройства и поддерживает 5 портов для витой пары либо оптики. В данном случае использовались порты для подключения витой пары.


Установленный режим работы микропроцессора — коммутатор с пятью независимыми портами. В качестве буферной памяти используется интегрированная SRAM, объем — 32Kx32. Пропускная способность его внутренней памяти (а соответственно и коммутатора) — 1.4Gbps.


Характеристики коммутатора:

  • Количество портов — 5
  • Поддержка IEEE 802.3 (10Base-T — Ethernet 10Mbits) и IEE 802.3u (100Base-TX — Fast Ethernet 100Mbits)
  • Поддержка полу- и полнодуплексного режима работы в обоих случаях
  • Автодетектирование скорости работы и режима дуплекса
  • Поддержка "Store and Forward" (коммутации с промежуточной буферизацией)
  • Поддержка Full Duplex 802.3x Flow Control
  • Поддержка Half Duplex Back Pressure Flow Control
  • Поддержка N-Way auto negotiation
  • Защита от BroadCast Storm
  • Количество запоминаемых MAC адресов — 1K
  • Тип питания — +6VDC/500mA, опционально — +5VDC с разъема PS/2
  • Размеры (Ш/Д/В) — 82мм × 66мм × 20мм
  • Рабочие температуры — 0–40°С
  • Рабочая влажность — 5–90%
  • Цена на момент написания материала — 35$
  • Цена за порт — 7$

Результаты тестирования.

Сводная таблица.

Считаются данные, идущие только в одну сторону (полудуплекс) через порт, если не указано обратного. Скорость считается в килобайтах (не килобитах!). Периодическое изменение скорости (в среднем около пяти минут между верхним и нижним значением) отражено верхним и нижним пределами через дефис (например 10--100). В этом случае обычно максимальному значению со стороны первого клиента соответствовало минимальное значение со стороны второго.

тест клиенты режим первого, Mbits дуплекс первого скорость передачи первого, KByte/sec направление передачи режим второго, Mbits дуплекс второго скорость передачи второго, KByte/sec
1 5 100 Full 10350 <-->      
2,1 2 100 Full 12300 --> 100 Full  
2,2 2 100 Full 12100 <--> 100 Full 12100
3 4+1 100 Full 12100 --> 4×100 Full  
4,1 2 10 Full 980 --> 100 Full  
4,2 2 10 Half 1190 --> 100 Full  
4,3 2 100 Full 320–400 --> 10 Full  
4,4 2 100 Full 1040 --> 10 Half  
4,5 2 100 Full 440–520 <--> 10 Full 180–250
4,6 2 100 Full 270 <--> 10 Half 920
5,1 2 100 Half 1800–2150 --> 100 Full  
5,2 2 100 Full 6050–6300 --> 100 Half  
5,3 2 100 Half 850–2600 <--> 100 Full 980–1620
5,4 2 100 Half 320–450 --> 10 Half  
5,5 2 10 Half 1160 --> 100 Half  
5,6 2 100 Half 70 <--> 10 Half 1150
5,7 2 100 Half 240–270 --> 10 Full  
5,8 2 10 Full 1170 --> 100 Half  
5,9 2 100 Half 110–200 <--> 10 Full 600–610
6,1 2 10 Full 50 --> 10 Full  
6,2 2 10 Half 50--150 <--> 10 Full 50–150
6,3 2 10 Half 1030 --> 10 Half  
6,4 2 10 Half 515 <--> 10 Half 515
6,5 2 10 Half 550–580 --> 10 Full  
6,6 2 10 Half 350 --> 10 Full  
6,7 2 10 Half 380 <--> 10 Full 140

Хорошо видно, что с коммутацией чисто 100Mbits полнодуплексных клиентов коммутатор отлично справляется. Но при появлении полудуплексного 100Mbits режима скорость передачи данных сильно падает, хотя еще остается на приемлемом уровне. Это при передаче данных в одну сторону.

При одновременной передаче данных между 100Mbits сегментами с разными параметрами дуплекса наблюдается непонятная для 100Mbit картина — передача в полнодуплексный сегмент колеблется от одного до полутора мегабайт, а в обратную сторону — от полутора до двух с половиной.

При коммутации сегментов с различными скоростями (10Mbits с одной и 100Mbits с другой стороны) высокая скорость наблюдается только во время передачи данных из низкоскоростного сегмента в высокоскоростной. В обратную сторону скорость падает просто катастрофически.

Но наиболее опечалила работа коммутатора в чисто 10bits среде при наличии полного дуплекса. Скорость работы была очень низкой. Особенно при коммутации двух полнодуплексных 10Mbits клиентов друг с другом — передача данных велась со скоростью 50–150Kb. Таким образом при подключении 10Mbit-ных рабочих станций к данному коммутатору лучше принудительно, если это возможно, отключить полный дуплекс на сетевом адаптере. В полудуплексном 10Mbits-ном режиме работа устройства нареканий не вызвала.

В отношении функциональности можно сказать следующее: индикаторы отражают всевозможные состояния порта, кроме его аварийного отключения (последнее является минусом). Индикаторы правда мелкие и расположены близко друг к другу, но это вытекает из физических размеров устройства.

Аплинк порт присутствует, но с некоторыми оговорками. Кнопки переключения uplink/normal нет. То есть, для использования этого порта для подключения рабочей станции нужен кроссовер кабель. Об этом сказано в документации и, скорее всего, это свойство данного устройства, опять же вытекающее из его минимальных размеров и низкой цены.

Выводы.

Коммутатор GS-SW005 компании Gigabyte нацелен на нижний сектор рынка — дешевые, но функциональные устройства (под функциональностью тут понимаются свойства коммутатора, как такового). Малые размеры и возможность питания от USB порта компьютера, а также низкое энергопотребление позволяют носить и использовать его даже с ноутбуком. Основная область применения — быстрое объединение в сеть нескольких компьютеров, оснащенных 100Mbits сетевыми адаптерами. В качестве устройства коммутации нескольких разнородных Ethernet сетей и рабочих станций коммутатор не подходит.

Плюсы:

  • низкая цена за порт
  • возможность получать питания от компьютера
  • миниатюрные размеры
  • высокоскоростная коммутация в 100Mbits режиме.

Минусы:

  • низкая скорость при коммутации разноскоростных сегментов.
  • низкая скорость при работе с 10Mbits портами в режиме полного дуплекса.

Выражаю особую благодарность руководителю тестовой лаборатории издательского дома "КомпьютерПресс" Сергею Пахомову за помощь и исчерпывающие консультации при подготовке материала.
А также благодарю Андрея Воробьева за предоставление фото- и компьютерного оборудования и моральную поддержку.
При написании статьи частично были использованы материалы с сайта издательского дома "КомпьютерПресс".

 




Дополнительно

iXBT BRAND 2016

«iXBT Brand 2016» — Выбор читателей в номинации «Процессоры (CPU)»:
Подробнее с условиями участия в розыгрыше можно ознакомиться здесь. Текущие результаты опроса доступны тут.

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.