
- •1. Назначение алгоритма покрывающего дерева.
- •2. Этапы построения покрывающего дерева.
- •3. Принципы работы агрегированных портов (транков) в коммутаторах.
- •4. Алгоритмы выбора порта при передаче данных через транк.
- •5. Назначение виртуальных локальных сетей (vlan).
- •6. Принцип работы коммутатора с поддержкой vlan.
- •7. Vlan, основанные на группировке портов («нетэгированные»).
- •8. «Тэгированные» vlan по стандарту 802.1q.
- •9. Возможности «тэгированных» vlan.
3. Принципы работы агрегированных портов (транков) в коммутаторах.
Агрегирование каналов (объединение портов в транк) используется для объединения нескольких портов вместе для образования высокоскоростного канала передачи данных. Включенные в транк порты называются ч ленами транковой группы. Один из портов в группе выступает в качестве "связующего". Поскольку все члены группы в транке должны быть настроены для работы в одинаковом режиме, все изменения настроек, произведенные по отношению к "связующему" порту, относятся ко всем членам транковой группы. Таким образом, для настройки портов в группе необходимо только настроить " связующий" порт.
Например коммутатор DES-3226S поддерживает транковые группы, которые могут включать в себя от 2 до 8 портов каждый. Исключение составляет транк портов Gigabit, состоящий из 2 (дополнительных) портов Gigabit Ethernet. Это могут быть 2 порта 1000BASE-SX, -LX, -TX или GBIC дополнительного модуля, установленного на передней панели коммутатора.
Статическое агрегирование каналов против динамического LACP Программное обеспечение DES-3226S Версии 4 поддерживает функцию объединения в транк портов, совместимых с технологией LACP. Протокол управления агрегированием каналов IEEE 802.1ad Link Aggregation Control Protocol (LACP) используется для установления динамического агрегированного канала между коммутатором и другим сетевым устройством. При статической организации транка (по умолчанию для портов задан режим статического агрегирования) соединяемые коммутаторы должны быть настроены вручную и не допускают динамических изменений внутри транковой группы портов. Для динамической организации транка (объединяются LACP-совместимые порты) коммутатор должен поддерживать протокол LACP для установления агрегированного канала. Динамический агрегированный канал может быть установлен, если одна группа портов настроена как "активная" группа, в то время как другая настроена в качестве "пассивной" группы.
Агрегирование каналов Данные, передаваемые конкретному узлу (по адресу назначения), всегда будут передаваться через один и тот же порт в транковой группе портов. Это позволяет пакетам одного потока данных прибывать в том порядке, в котором они были отправлены. Агрегированный канал может быть создан для соединения с любым другим коммутатором, поддерживающим механизм передачи данных одного сеанса связи между двумя узлами по единственному каналу в составе транка. Коммутаторы, использующие технику балансировки нагрузки, при которой пакеты одного сеанса связи между двумя узлами передаются по разным каналам в составе транка, не могут соединяться по агрегированному каналу с DES-3226S.
Все коммутаторы D-LINK серий кроме DES-10xx или DGS-10xx и DES-1200М поддерживают транкинг портов.
4. Алгоритмы выбора порта при передаче данных через транк.
Остается открытым вопрос: какой из портов коммутатора нужно использовать для продвижения кадра через транк? Можно предложить несколько вариантов ответа. Учитывая, что одной из целей агрегирования линий связи является повышение суммарной производительности участка сети между двумя коммутаторами (или коммутатором и сервером), следует распределять кадры по портам транка динамически, учитывая текущую загрузку каждого порта и направляя кадры в наименее загруженные (с меньшей длиной очереди) порты. Динамический способ распределения кадров, учитывающий текущую загрузку портов и обеспечивающий баланс нагрузки между всеми связями транка, должен приводить, казалось бы, к максимальной пропускной способности транка.
Однако такое утверждение справедливо не всегда, так как в нем не учитывается поведение протоколов верхнего уровня. Существует ряд таких протоколов, производительность которых может существенно снизиться, если пакеты сеанса связи между двумя конечными узлами будут приходить не в том порядке, в котором они отправлялись узлом-источником. А такая ситуация может возникнуть, если два или более последовательных кадра одного сеанса будут передаваться через разные порты транка — по причине того, что очереди в буферах этих портов имеют разную длину. Следовательно, и задержка передачи кадра может быть разной, так что более поздний кадр может обогнать более ранний.
Поэтому в большинстве реализаций механизмов агрегирования используются методы статического, а не динамического распределения кадров по портам. Статический способ распределения кадров подразумевает закрепление за определенным портом транка потока кадров определенного сеанса между двумя узлами, так что все кадры будут проходить через одну и ту же очередь и их упорядоченность не изменится.
Обычно при статическом распределении выбор порта для некоторого сеанса выполняется на основании определенных признаков, имеющихся в поступающих пакетах. Чаще всего такими признаками являются МАС-адреса источника или приемника или оба вместе.
В популярной реализации механизма Fast EtherChannel компании Cisco для коммутаторов семейства Catalyst при выборе номера порта транка используется операция исключающего ИЛИ (XOR) над двумя последними битами МАС-адресов источника и приемника. Результат этой операции имеет четыре значения: 00,01,10 и 11, которые и являются условными номерами портов транка.
Рис. 1 Пример сети с механизмом Fast EtherChannel.
На рис. 1 приведен пример сети, в которой работает механизм Fast EtherChannel. Распределение потоков для сеансов между конечными узлами получается при этом достаточно случайным. Так как в распределении не учитывается реальная нагрузка, которую создает каждый сеанс, общая пропускная способность транка может использоваться нерационально, особенно если интенсивности сеансов намного отличаются друг от друга. Кроме того, алгоритм распределения не гарантирует даже равномерного в количественном отношении распределения сеансов по портам. Случайный набор МАС-адресов в сети может привести к тому, что через один порт будут проходить несколько десятков сеансов, а через другой — только два-три. Выравнивания нагрузки портов в данном алгоритме можно достигнуть только при большом количестве компьютеров и сеансов связи между ними.
Можно предложить и другие способы распределения сеансов по портам. Например, в соответствии с IP-адресами пакетов, которые инкапсулированы в кадры канального уровня, типами прикладных протоколов (почта по одному порту, веб-трафик по другому и т. д.).
Полезным оказывается назначение порту сеансов с MAC-адресами, которые были изучены как идущие именно через этот порт — тогда трафик сеанса пойдет через один и тот же порт в обоих направлениях.
Стандартный способ создания агрегированных каналов, описанный в спецификации 802.3ad, предполагает возможность создания логического порта путем объединения нескольких физических портов, принадлежащих разным коммутаторам. Для того чтобы коммутаторы могли автоматически обеспечиваться информацией о принадлежности какого-либо физического порта определенному логическому порту, в спецификации предложен служебный протокол управления агрегированием линий связи (Link Control Aggregation Protocol, LCAP). Поэтому возможны такие конфигурации агрегированных каналов, которые увеличивают отказоустойчивость сети не только на участках между двумя коммутаторами, но и в более сложных топологиях (рис. 2).
Рис. 2. Распределенное агрегирование каналов
При отказе какого-либо канала транка все пакеты сеансов, назначенные для соответствующего порта, будут направляться на один из оставшихся портов. Обычно восстановление связности при таком отказе занимает от единиц до десятков миллисекунд. Это объясняется тем, что во многих реализациях транка после отказа физического канала все МАС-адреса, которые были с ним связаны, принудительно помечаются как неизученные. Затем коммутатор повторяет процедуру изучения этих адресов. После этого процедура назначения сеанса портам выполняется заново, естественно, учитываются только работающие порты. Так как тайм-ауты в сеансах протоколов локальных сетей обычно небольшие, коротким оказывается и время восстановления соединения.