Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LEC_NET_rus.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
5.3 Mб
Скачать
      1. Борьба с «размножением»

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

Рисунок 3. Распределение потоков по каналам транков.

В примере, изображенном на Рисунке 3, в таблице продвижения вместо портов P17, P18, P19 и P10 фигурирует логический порт AL11. С ним связаны адреса всех узлов, путь к которым лежит через коммутатор 2. Выявление неизвестного адреса на любом из физических портов, входящих в транк, приводит к появлению в таблице продвижения коммутатора новой записи с идентификатором логического порта. Поступающий в коммутатор кадр, адрес назначения которого изучен и связан с идентификатором логического порта, передается на один (и только один!) выходной физический порт, входящий в состав транка. Точно так же коммутатор поступает с неизученными, широковещательными и групповыми адресами — для передачи кадра используется только одна из связей. На порты коммутатора, не входящие в транк, это изменение в логике обработки кадров не распространяется: так, коммутатор 1 всегда передает кадр с неизученным или широковещательным адресом на порты P11-P16.

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

      1. Выбор порта

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

Динамический способ распределения кадров, учитывающий текущую загрузку портов и обеспечивающий баланс нагрузки между всеми каналами транка, должен приводить, казалось бы, к максимальной пропускной способности транка. Однако данное утверждение справедливо не всегда, так как в нем учитывается не поведение протоколов верхнего уровня, а только интенсивность общего потока кадров канального уровня

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

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

Статическое распределение подразумевает закрепление за определенным портом транка потока кадров определенного сеанса между двумя узлами, в этом случае все кадры будут проходить через одну и ту же очередь и последовательность их не изменится. Обычно при статическом распределении выбор порта для конкретного сеанса выполняется на основании некоторых признаков поступающих пакетов. Как правило, это МАС-адреса источника или назначения, либо оба вместе.

В популярной реализации Fast EtherChannel компании Cisco для коммутаторов семейства Catalyst 5000/6000 выбор номера порта транка осуществляется с помощью операции исключающего ИЛИ (XOR) над двумя последними битами МАС-адресов источника и приемника. Результат этой операции имеет четыре значения: 00, 01, 10 и 11, которые и являются условными номерами портов транка. На Рисунке 3 приведен пример сети, в которой работает механизм Fast EtherChannel (аналогично работает и Gigabit EtherChannel) для коммутаторов Catalyst 5000/6000. При этом распределение потоков сеанса между конечными узлами достаточно случайно. Так как оно не учитывает реальной нагрузки, которую создает каждый сеанс, то общая пропускная способность транка может использоваться нерационально, особенно если по интенсивности сеансы намного отличаются друг от друга. Кроме того, алгоритм распределения не гарантирует даже равномерного в количественном отношении распределения сеансов по портам.

Случайный набор МАС-адресов в сети может привести к тому, что через один порт будут проходить несколько десятков сеансов, а через другой — два-три. При данном алгоритме только большое количество компьютеров и сеансов между ними способно обеспечить равномерную нагрузку на порты. Это характерно для таких магистральных коммутаторов, как Catalyst 5000/6000.

Сеансы можно распределить между портами и другими способами: например, в соответствии с IP-адресами пакетов внутри кадров канального уровня, номерами виртуальных локальных сетей (VLAN), типами прикладных протоколов (почта по одному порту, трафик Web по другому и т. д.). Полезным оказывается назначение порту сеансов с МАС-адресами, изученными именно через этот порт, чтобы трафик сеансов проходил через один и тот же порт в обоих направлениях.

Чем больше признаков учитывает механизм распределения, тем более равномерно нагружаются порты транка и, следовательно, эффективнее функционирует транк. Некоторые реализации могут выполнять распределение с учетом текущей загрузки портов, но не для каждого отдельного пакета, а для всех пакетов сеансов. Такой способ, наряду с учетом номера порта, по которому изучен МАС-адрес назначения, применяется в механизмах Fast EtherChannel в коммутаторах Catalyst 2900X.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]