Выбор порта

Остается открытым вопрос — какой из портов коммутатора нужно использовать для продвижения кадра через транк?

Можно предложить несколько вариантов ответов. Учитывая, что одной из целей агрегирования линий связи является повышение суммарной производительно­сти участка сети между двумя коммутаторами (или коммутатором и сервером), следует распределять кадры по портам транка динамически, учитывая текущую загрузку каждого порта и направляя кадры в наименее загруженные (с меньшей длиной очереди) порты. Динамический способ распределения кадров, учиты­вающий текущую загрузку портов и обеспечивающий баланс нагрузки между всеми связями транка, должен приводить, казалось бы, к максимальной пропуск­ной способности транка.

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

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


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

На рис. 16.5 приведен пример сети, в которой работает механизм Fast Ether- Channel. Распределение потоков для сеансов между конечными узлами получа­ется при этом достаточно случайным. Так как распределение не учитывает ре­альной нагрузки, которую создает каждый сеанс, общая пропускная способность транка может использоваться нерационально, особенно если интенсивности се­ансов намного отличаются друг от друга. Кроме того, алгоритм распределения не гарантирует даже равномерного в количественном отношении распределения се­ансов по портам. Случайный набор МАС-адресов в сети может привести к тому, что через один порт будут проходить несколько десятков сеансов, а через дру­гой — только два-три. Выравнивание нагрузки портов можно при данном алго­ритме достигнуть только при большом количестве компьютеров и сеансов связи между ними.

МАС1 МАС7 Рис. 16.5. Пример сети с механизмом Fast EtherChannel

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

Стандартный способ создания агрегированных каналов, описанный в специ­фикации 802.3ad, предполагает возможность создания логического порта путем объединения нескольких физических портов, принадлежащих разным комму­таторам. Для того чтобы коммутаторы могли автоматически обеспечиваться информацией о принадлежности какого-либо физического порта определенному логическому порту, в спецификации предложен служебный протокол управ­ления агрегированием линий связи (Link Control Aggregation Protocol, LCAP). Поэтому возможны такие конфигурации агрегированных каналов, которые уве­личивают отказоустойчивость сети не только на участках между двумя коммута­торами, но и в более сложных топологиях (рис. 16.6).

Агрегированный канал Рис. 16.6. Распределенное агрегирование каналов

При отказе какого-либо канала транка все пакеты сеансов, назначенные для со­ответствующего порта, будут направляться на один из оставшихся портов. Обычно восстановление связности при таком отказе занимает от единиц до де­сятков миллисекунд. Это объясняется тем, что во многих реализациях транка после отказа физического канала все МАС-адреса, которые были с ним связаны, принудительно помечаются как неизученные. Затем коммутатор повторяет про­цедуру изучения этих адресов. После этого процедура назначения сеанса портам выполняется заново, естественно, учитываются только работающие порты. Так как тайм-ауты в сеансах протоколов локальных сетей обычно небольшие, корот­ким оказывается и время восстановления соединения.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: