Сетевые коммутаторы разделяются на простые сетевые коммутаторы и составные сетевые коммутаторы. Простые коммутаторы имеют малую задержку, но могут быть использованы только для построения систем с малым числом узлов. Составные коммутаторы строятся путем объединения простых коммутаторов.
Простые коммутаторы.
Простые коммутаторы делятся на коммутаторы с временным разделением и коммутаторы с пространственным разделением.
Коммутаторы с временным разделением представляют собой шины. Так как шина является разделяемым ресурсом, процессорные узлы вынуждены конкурировать за доступ к этому ресурсу. Для разрешения конфликтов в узлах используются различные алгоритмы арбитража. Имеется несколько стандартов на шинные структуры, например, стандарты PCI, VME, Fastbus и др.
Шина является достаточно дешевым и надежным коммутатором. Однако при коммутации большого количества коротких сообщений накладные расходы на арбитраж становятся значительными, что существенно ограничивает пропускную ее способность.
Коммутаторы с пространственным разделением (координатный коммутатор). Коммутатор с пространственным разделением представляет собой совокупность мультиплексоров, число которых равно количеству выходов коммутатора (см. рис. 1).
Коммутаторы с пространственным разделением имеют минимальное время задержки на коммутацию, но высокую сложность, а потому и недостаточно высокую надежность.
Одним из самых важных свойств коммутаторов с пространственным разделением является то, что он представляет собой неблокирующую коммуникационную сеть. Т.е. ни один из входов не может получить отказа от соединения из-за занятости какого-либо мультиплексора (конечно, при условии, что свободен требуемый выход). Еще одним важным достоинством такого коммутатора является отсутствие необходимости планирования схемы соединений.
Рис. 1.  Структура простого пространственного 3*3 коммутатора. МП – мультиплексор.
Свое второе название (координатные коммутаторы) простые коммутаторы с пространственным разделением получили по той причине, что схему коммутации с помощью этого коммутатора можно представить в виде, представленном на рис. 2.
Рис. 2.  Другой вид координатного коммутатора, представленного на рис. 1.
Составные коммутаторы.
Основная идея создания составных коммутаторов состоит в объединении простых коммутаторов каналами типа «точка - точка». Составной коммутатор требует меньше оборудования, чем простой коммутатор с таким же количеством входов – выходов. Однако составной коммутатор при этом имеет большую задержку на коммутацию, которая растет пропорционально количеству уровней коммутации (см. ниже).
Чаще всего составные коммутаторы строятся на основе 2*2 простых коммутаторов с пространственным разделением - см. Рис.3.
Рис. 3.  Упрощенная схема 2*2 простого коммутатора с пространственным разделением.
Функционированием блока коммутации управляет блок управления с помощью бинарной переменной : если =0 - выполняется прямое соединение входов и выходов (Вход 1 – с Выходом 1, а Вход 2 – с Выходом 2); если =1 - выполняется перекрестное соединение входов и выходов (Вход 1 – с Выходом 2, а Вход 2 – с Выходом 1). Блок управления также производит арбитраж запросов входов, если они требуют соединения с одним выходом.
Управление производится на основе бинарных управляющих сигналов . К примеру, означает запрос Входа 1 на коммутацию; при означает, что требуется соединение Входа 1 с Выходом 1. В случае конфликта (когда и , и ), выполняется запрос , а источнику второго входного сигнала передается сигнал занятости =1. Заметим, что управляющие сигналы могут быть выработаны в самом блоке управления, если данные, поступающие на вход коммутатора, предварить требуемым номером выхода (в составных коммутаторах именно так и делается).
Коммутатор Клоза. В качестве примера составного коммутатора рассмотрим коммутатор Клоза. Коммутатор состоит из трех уровней коммутации – входного, промежуточного и выходного. Коммутатор Клоза имеет одинаковое количество входов и выходов и состоит из входных простых коммутаторов, из таких же выходных коммутаторов и из промежуточных простых коммутаторов.
Рис. 4.  Пример коммутатора Клоза (управляющие сигналы не показаны).m=3, l=4. K – простой коммутатор.
Соединения простых коммутаторов в коммутаторе Клоза выполняется по следующему правилу (см. рис. 4):
Общее количество простых коммутаторов в коммутаторе Клоза равно
Коммутатор Клоза представляет собой блокирующую коммуникационную сеть. Вход здесь может получить отказа от соединения из-за занятости какого-либо простого коммутатора.
Омега коммутатор. Пример 3-х уровневого омега-коммутатора, имеющего =8 входов и столько же выходов, приведен на рис. 5. Коммутатор содержит 12 простых 2*2 коммутаторов. В общем случае входов и выходов требуется уровней коммутации с простых 2*2 коммутаторов на каждом уровне. Таким образом, омега-коммутатор требует простых коммутаторов, где - количество простых коммутаторов в аналогичном координатном коммутаторе.
Рис. 5.  Пример омега-коммутатора.
Схема соединений простых коммутаторов в омега-коммутаторе называется идеальным тасованием.
Данные, поступающие на входы омега-коммутатора, предваряются требуемым двоичным номером выхода. Правило коммутации: если соответствующий разряд номера выхода содержит «0», то коммутатор соединяет вход с верхним выходом, а если «1» - с нижним выходом. Поясним логику переключений простых коммутаторов в омега-коммутаторе на следующем примере.
Пример 1
Положим, что входу 011 необходимо соединение с выходом 110. Тогда коммутатор анализирует первый (старший) разряд номера выхода. Он равен «1», поэтому коммутатор соединяет вход 011 со своим нижним выходом, т.е. с коммутатором . Аналогично, на основе анализа второго разряда требуемого номера входа коммутатор соединяет свой вход со своим нижним выходом, т.е. с коммутатором . Наконец, на основе анализа третьего (младшего) разряда коммутатор соединяет свой вход со своим верхним выходом
Омега-коммутатор также представляет собой блокирующую коммуникационную сеть.