Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
49
Добавлен:
25.03.2016
Размер:
482.3 Кб
Скачать

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

Выбор порта

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

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

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

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

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

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

Рис. 16.5. Пример сети с механизмом Fast EtherChannel

Можно предложить и другие способы распределения сеансов по портам. Например, в соответствии с IP-адресами пакетов, которые инкапсулированы в кадры

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

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

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

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

Виртуальные локальные сети

Список ключевых слов: виртуальная локальная сеть, коммутатор 3-го уровня, стандарт IEEE 802.1Q тег виртуальной сети.

Важным свойством коммутатора локальной сети является способность контролировать передачу кадров между сегментами сети. По различным причинам (соблюдение прав доступа, политика безопасности и т. д.) некоторые кадры не следует передавать по адресу назначения.

Как мы видели в главе 15, такого типа ограничения можно реализовать с помощью пользовательских фильтров. Однако пользовательский фильтр может запретить коммутатору передачу кадров только по конкретным адресам, а широковещательный трафик он обязан передать всем сегментам сети. Так требует алгоритм его работы. Поэтому сети, созданные на основе коммутаторов, иногда называют плоскими — из-за отсутствия барьеров на пути широковещательного трафика. Технология виртуальных локальных сетей позволяет преодолеть указанное ограничение.

Виртуальной локальной сетью (Virtual LAN, VLAN) называется группа узлов сети, трафик которой, в том числе широковещательный, на канальном уровне полностью изолирован от трафика других узлов сети.

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

Рис. 16.7. Виртуальные локальные сети

Виртуальные локальные сети могут перекрываться, если один или несколько компьютеров входят в состав более чем одной виртуальной сети. На рис. 16.7 сервер электронной почты входит в состав виртуальных сетей 3 и 4. Это означает, что его кадры передаются коммутаторами всем компьютерам, входящим в эти сети. Если же какой-то компьютер входит в состав только виртуальной сети 3, то его кадры до сети 4 доходить не будут, но он может взаимодействовать с компьютерами сети 4 через общий почтовый сервер. Такая схема не полностью защищает виртуальные сети друг от друга — так, широковещательный шторм, возникший на сервере электронной почты, затопит и сеть 3, и сеть 4.

Говорят, что виртуальная сеть образует домен широковещательного трафика, по аналогии с доменом коллизий, который образуется повторителями сетей Ethernet.

Назначение виртуальных сетей

Основное назначение технологии VLAN состоит в облегчении процесса создания изолированных сетей, которые затем обычно связываются между собой с помощью маршрутизаторов. Такое построение сети создает мощные барьеры на пути нежелательного трафика из одной сети в другую. Сегодня считается очевидным, что любая крупная сеть должна включать маршрутизаторы, иначе потоки ошибочных кадров, например широковещательных, будут периодически «затапливать» всю сеть через прозрачные для них коммутаторы, приводя ее в неработоспособное состояние.

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

До появления технологии VLAN для создания отдельной сети использовались либо физически изолированные сегменты коаксиального кабеля, либо несвязанные между собой сегменты, построенные на повторителях и мостах. Затем эти сети связывались маршрутизаторами в единую составную сеть (рис. 16.8).

Рис. 16.8. Составная сеть, состоящая из сетей,

построенных на основе повторителей

Изменение состава сегментов (переход пользователя в другую сеть, дробление крупных сегментов) при таком подходе подразумевает физическую перекоммутацию разъемов на передних панелях повторителей или в кроссовых панелях, что не очень удобно в больших сетях — много физической работы, к тому же высока вероятность ошибки.

Частично эта проблема была решена с помощью многосегментных концентраторов, которые дали возможность программировать состав разделяемого сегмента без физической перекоммутации (см. главу 14). Однако решение действительно является только «частичным», так как накладывает большие ограничения на структуру сети. Во-первых, количество сегментов такого концентратора обычно невелико, поэтому выделить каждому узлу свой сегмент, как это можно сделать с помощью коммутатора, нереально. Во-вторых, при таком подходе вся работа по передаче данных между сегментами ложится на маршрутизаторы, а коммутаторы со своей высокой производительностью остаются «не у дел». Поэтому сети, построенные на основе концентраторов с конфигурационной коммутацией, по-прежнему основаны на разделении среды передачи данных между большим количеством узлов и, следовательно, обладают гораздо меньшей производительностью по сравнению с сетями, построенными на основе коммутаторов.

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

Технология виртуальных сетей долгое время не стандартизировалась, хотя и была реализована в очень широком спектре моделей коммутаторов разных производителей. Положение изменилось после принятия в 1998 году стандарта IEEE 802.1Q, который определяет базовые правила построения виртуальных локальных сетей, не зависящие от протокола канального уровня, поддерживаемого коммутатором.

Создание виртуальных сетей на базе одного коммутатора

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

Примечание. Если к порту коммутатора подключен сегмент, построенный на основе повторителя, то узлы такого сегмента не имеет смысла включать в разные виртуальные сети — все равно трафик этих узлов будет общим.

Рис. 16.9. Виртуальные сети, построенные на одном коммутаторе

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

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

Создание виртуальных сетей на базе нескольких коммутаторов

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

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

Рис. 16.10. Построение виртуальных сетей на нескольких коммутаторах

с группированием портов

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

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

Дополнительное поле с пометкой о номере виртуальной сети используется только тогда, когда кадр передается от коммутатора к коммутатору, а при передаче кадра конечному узлу оно обычно удаляется. При этом модифицируется протокол взаимодействия «коммутатор-коммутатор», а программное и аппаратное обеспечение конечных узлов остается неизменным. До принятия стандарта IEEE 802.1Q существовало много фирменных протоколов этого типа, но все они имели один недостаток — оборудование различных производителей оказывалось несовместимым при образовании VLAN.

В стандарте IEEE 802.1Q для хранения номера виртуальной сети предусмотрен дополнительный заголовок в 2 байта, который этот протокол делит с протоколом 802.1р (он рассматривается в следующем разделе этой главы). Помимо 3 бит для хранения приоритета кадра, описанных стандартом 802.1р, в этом заголовке 12 бит используются для хранения номера виртуальной сети, к которой принадлежит кадр. Эта дополнительная информация, которая называется тегом виртуальной сети, позволяет коммутаторам разных производителей создавать до 4096 общих виртуальных сетей. Кадр с такой информацией называют «помеченным». Длина помеченного кадра Ethernet увеличивается на 4 байта, так как помимо 2 байт собственно тега добавляются еще 2 байта. Структура помеченного кадра Ethernet показана на рис. 16.11. При добавлении заголовка 802.1p/Q поле данных уменьшается на 2 байта.

Рис. 16.11. Структура помеченного кадра Ethernet

Введение стандарта 802.1Q позволило производителям оборудования преодолеть различия в фирменных реализациях VLAN и добиться совместимости при построении виртуальных локальных сетей. Поддерживают технику VLAN как производители коммутаторов, так и сетевых адаптеров. В последнем случае сетевой адаптер может генерировать и принимать помеченные кадры Ethernet, содержащие поле тега виртуальной сети. Если сетевой адаптер генерирует помеченные кадры, то тем самым он определяет их принадлежность к той или иной виртуальной локальной сети, поэтому коммутатор должен обрабатывать их соответствующим образом, то есть передавать или не передавать на выходной порт в зависимости от принадлежности порта. Драйвер сетевого адаптера может получить номер своей (или своих) виртуальной локальной сети путем ручного конфигурирования либо от некоторого приложения, работающего на данном узле или на одном из серверов сети.

Существование виртуальных локальных сетей в сети влияет на выбор активной топологии покрывающего дерева. Рассмотрим пример на рис. 16.12.

Рис. 16.12. Сети с VLAN и избыточные связи

В этой сети образовано две виртуальные локальные сети: VLAN 1 и VLAN 2. Эти виртуальные сети построены на основе техники группирования портов. На рисунке связи между портами, принадлежащими VLAN 1, показаны тонкими сплошными линиями, а связи между портами VLAN 2 — пунктирными.

Если при построении активной топологии STA мы не будем принимать во внимание наличие в сети виртуальных сетей, то получим покрывающее дерево, показанное на рис. 16.13 (в качестве корневого коммутатора выбран коммутатор Sw1). Очевидно, что эта топология не эффективна для VLAN 2, так как, например, путь от компьютера W1 до сервера S3 проходит через четыре коммутатора. Для сравнения, путь от компьютеров сети VLAN 1 до сервера S1 проходит через два коммутатора. Если бы в качестве корневого коммутатора был выбран коммутатор Sw2, то такая топология оказалась бы не эффективной для сети VLAN 1.

Другое решение состоит в том, чтобы активная топология строилась для каждой виртуальной сети отдельно. В рассматриваемом примере такой подход приводит к двум деревьям с корневым коммутатором Sw1 для VLAN 1 и корневым коммутатором Sw2 для VLAN 2 (рис. 16.14).

Рис. 16.13. Покрывающее дерево,

построенное без учета существования виртуальных локальных сетей

Рис. 16.14. Покрывающие деревья,

построенные с учетом существования локальных сетей

Качество обслуживания в виртуальных сетях

Коммутаторы локальных сетей поддерживают практически все механизмы QoS,

которые мы обсуждали в главе 7. Это утверждение относится к коммутаторам локальных сетей как к классу коммуникационных устройств, каждая же конкретная модель коммутатора может быть наделена только определенным набором механизмов поддержания параметров QoS или же не иметь их вовсе. Как правило, коммутаторы рабочих групп средств QoS не поддерживают, в то время как для магистральных коммутаторов эта поддержка является обязательной.

Классификация трафика. Коммутаторы локальных сетей являются устройствами второго уровня, которые анализируют заголовки только протоколов канального уровня. Поэтому коммутаторы обычно используют для классификации трафика только МАС-адреса источника и приемника, а также номер порта, через который поступил кадр. Возможно также использование для классификации значения произвольного подполя внутри поля данных, заданного путем указания смещения в байтах. Эти способы не очень удобны для администратора, которому необходимо, например, отделить голосовой трафик от трафика передачи файлов. Поэтому некоторые коммутаторы, не поддерживая протоколы верхних уровней в полном объеме (например, не применяя протокол IP для продвижения пакетов), выполняют классификацию на основе признаков, содержащихся в заголовках пакетов этих протоколов — IP-адресах и портах TCP/UDP.

Маркирование трафика обычно выполняется на границе сети, а затем его результаты используются во всех промежуточных устройствах сети. В кадре Ethernet 802.3 отсутствует поле, в которое можно было бы поместить результат маркировки трафика. Однако этот недостаток исправляет спецификация 802.1р, в которой имеются три бита дополнительного заголовка 802.1Q/p для хранения приоритета кадра.

Фактически эти три бита используются для хранения признака одного из восьми классов трафика. Именно так трактует это поле стандарт 802.1D-1998, куда вошла спецификация 802.1р. В приложении Н стандарта 802.1D-1998 даются рекомендации по разделению всего трафика локальных сетей на семь классов, которые представлены в табл. 16.1.

Таблица 16.1. Типы трафика в локальной сети

Фоновый трафик — это наименее чувствительный к задержкам трафик, например трафик резервного копирования, источник которого может передавать большие объемы данных, поэтому его целесообразно выделить в особый класс, чтобы он не замедлял обработку других типов трафика.

Классы трафика BE (Best Effort), ЕЕ (Excellent Effort) и СЕ (Controlled Effort) не являются классами реального времени, то есть не предъявляют жестких требований к предельным уровням задержек. Однако для этих классов желательно обеспечение некоторого минимального уровня пропускной способности. Обслуживание этих классов целесообразно проводить с помощью механизма взвешенных очередей.

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

Управление очередями. Коммутатор, поддерживающий параметры QoS, позволяет использовать несколько очередей для дифференцированной обработки классов трафика. Очереди могут обслуживаться в соответствии с алгоритмом приоритетной обработки, взвешенного обслуживания или на основе комбинации этих алгоритмов.

Коммутатор обычно поддерживает некоторое максимальное количество очередей, которое может оказаться меньше, чем требуемое число классов трафика. В этой ситуации несколько классов будут обслуживаться одной очередью, то есть фактически сольются в один класс. Стандарт 802.1D-1998 дает рекомендации в отношении того, какие классы трафика нужно реализовывать в сети в условиях ограниченного количества очередей в коммутаторах (табл. 16.2).

Таблица 16.2. Классы трафика и количество очередей

При существовании только одной очереди в сети существует только один класс трафика — BE (Best Effort). Качество его обслуживания невозможно улучшить за счет управления очередями, хотя остаются такие возможности, как обратная связь и резервирование полосы пропускания.

Две очереди дают возможность разделить трафик на два класса — BE и VO (Voice). При таком делении к классу VO следует относить любой чувствительный к задержкам трафик, то есть не только голос, но и видео, а также трафик управления сетью.

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

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

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

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

Для коммутаторов локальных сетей не существует стандартного протокола резервирования ресурсов. Поэтому для выполнения резервирования администратор сети должен сконфигурировать каждый коммутатор сети отдельно.

Ограничения мостов и коммутаторов

Список ключевых слов: отсутствие петель, широковещательный шторм, фильтрация трафика, МАС-адрес, трансляция протоколов, коммутируемая сеть, виртуальные локальные сети, транки.

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

Соседние файлы в папке olifer_v_g_olifer_n_a_kompyuternye_seti_principy_tehnologii