Коммутатор Свитч
Команда дизайн-центра электроники Promwad возвращается на Хабр после зимних каникул с новыми статьями о разработке встроенного ПО и новых устройств для серийного производства. Сегодня мы поделимся своим опытом в теме сетевых технологий.
Среднестатистическая домашняя сеть, также как и сеть небольшого предприятия, — это уже давно не просто два–три компьютера, соединенные через первый попавшийся китайский коммутатор. Вместе с ростом объема контента (базы данных, потоковое аудио/видео и т.д.) и увеличением количества устройств (VoIP-устройства, серверы, NAS-ы, IP-камеры, а в домашних сетях — телевизоры и прочий «интернет вещей») растет и количество передаваемых данных через сетевую инфраструктуру. Потоки данных нужно разделять между собой, при этом не забывая о приоритезации трафика: например, VoIP-трафик желательно пускать с большим приоритетом, чем IPTV, а IPTV в свою очередь — чем торренты. Поэтому не удивительно, что со временем даже малые локальные сети усложняются, а емкости портов одиночных коммутаторов становится недостаточно…
Для увеличения емкости портов крупных узлов сети, а также для увеличения общей пропускной способности сети, чаще всего прибегают к построению т.н. стеков — объединению коммутаторов в иерархические структуры в зависимости от потоков передаваемых данных.
Самой «классической» архитектурой построения сетей является дерево, как показано на рисунке:
При этом трафик от узла A к узлу D проходит через цепочку вышестоящих коммутаторов, что накладывает дополнительные требования к производительности — пропускная способность каждого следующего (вышестоящего) узла дерева должна быть выше предыдущего.
Для того чтобы разгрузить основные узлы сети чаще всего вводят дополнительные связи между коммутаторами. Например, «ядро» сети часто организуют в виде кольца коммутаторов, как показано на схеме ниже:
Если при этом используется старый добрый Ethernet, то во избежание переполнения кольца широковещательным трафиком используют Spanning Tree Protocol, который переводит один из линков между коммутаторами кольца в неактивное состояние. Это позволяет обеспечить альтернативный путь прохождения трафика в случае обрыва центрального кольца в какой-либо из точек. Если же используется какой-либо из протоколов специально предназначенных для «колец», например FDDI или Token Ring, то кольцо не разрывается, а трафик передается по кольцу с наиболее равномерной загрузкой входящих в кольцо коммутаторов.