Слайд 1Лекция 1.4.6. Техническая реализация и дополнительные функции коммутаторов.
Астрахань, 2018
Александр Александрович
Олейников
Компьютерные и телекоммуникационные сети
Слайд 2Особенности реализации коммутаторов
Несмотря на то что в коммутаторах работают известные
и хорошо отработанные алгоритмы прозрачных мостов и мостов с маршрутизацией
от источника, существует большое разнообразие моделей коммутаторов. Они отличаются как внутренней организацией, так и набором выполняемых дополнительных функций, таких как трансляция протоколов, поддержка алгоритма покрывающего дерева, образование виртуальных логических сетей и ряда других.
Слайд 3После того как технология коммутации привлекла общее внимание и получила
высокие оценки специалистов, многие компании занялись реализацией этой технологии в
своих устройствах, применяя для этого различные технические решения. Многие коммутаторы первого поколения были похожи на маршрутизаторы, то есть основывались на центральном процессоре общего назначения, связанном с интерфейсными портами по внутренней скоростной шине (рис. 9.30). Однако это были скорее пробные устройства, предназначенные для освоения самой компанией технологии коммутации, а не для завоевания рынка.
Рис. 9.30. Коммутатор на процессоре общего назначения
Слайд 4Кроме процессорных микросхем для успешной неблокирующей работы коммутатору нужно также
иметь быстродействующий узел для передачи кадров между процессорными микросхемами портов.
В
настоящее время коммутаторы используют в качестве базовой одну из трех схем, на которой строится такой узел обмена:
коммутационная матрица;
разделяемая многовходовая память;
общая шина.
Часто эти три схемы взаимодействия комбинируются в одном коммутаторе.
Слайд 5Коммутаторы на основе коммутационной матрицы
Коммутационная матрица обеспечивает основной и самый
быстрый способ взаимодействия процессоров портов, именно он был реализован в
первом промышленном коммутаторе локальных сетей. Однако реализация матрицы возможна только для определенного числа портов, причем сложность схемы возрастает пропорционально квадрату количества портов коммутатора (рис. 9.31).
Рис. 9.31. Коммутационная матрица
Слайд 6Более детальное представление одного из возможных вариантов реализации коммутационной матрицы
для 8 портов дано на рис. 9.32. Входные блоки процессоров
портов на основании просмотра адресной таблицы коммутатора определяют по адресу назначения номер выходного порта. Эту информацию они добавляют к байтам исходного кадра в виде специального ярлыка — тега (tag). Для данного примера тег представляет собой просто 3-разрядное двоичное число, соответствующее номеру выходного порта.
Рис. 9.32. Реализация коммутационной матрицы 8x8 с помощью двоичных переключателей
Слайд 7Матрица состоит из трех уровней двоичных переключателей, которые соединяют свой
вход с одним из двух выходов в зависимости от значения
бита тега. Переключатели первого уровня управляются первым битом тега, второго — вторым, а третьего — третьим.
Матрица может быть реализована и иначе, на основании комбинационных схем другого типа, но ее особенностью все равно остается технология коммутации физических каналов. Известным недостатком этой технологии является отсутствие буферизации данных внутри коммутационной матрицы — если составной канал невозможно построить из-за занятости выходного порта или промежуточного коммутационного элемента, то данные должны накапливаться в их источнике, в данном случае — во входном блоке порта, принявшего кадр.
Основные достоинства таких матриц — высокая скорость коммутации и регулярная структура, которую удобно реализовывать в интегральных микросхемах. Зато после реализации матрицы NxN в составе БИС проявляется еще один ее недостаток — сложность наращивания числа коммутируемых портов.
Слайд 8Коммутаторы с общей шиной
В коммутаторах с общей шиной процессоры портов
связывают высокоскоростной шиной, используемой в режиме разделения времени.
Пример такой архитектуры
приведен на рис. 9.33. Чтобы шина не блокировала работу коммутатора, ее производительность должна равняться по крайней мере сумме производительности всех портов коммутатора. Для модульных коммутаторов некоторые сочетания модулей с низкоскоростными портами могут приводить к неблокирующей работе, а установка модулей с высокоскоростными портами может приводить к тому, что блокирующим элементом станет, например, общая шина.
Рис. 9.33. Архитектура коммутатора
с общей шиной
Слайд 9Кадр должен передаваться по шине небольшими частями, по несколько байтов,
чтобы передача кадров между портами происходила в псевдопараллельном режиме, не
внося задержек в передачу кадра в целом. Размер такой ячейки данных определяется производителем коммутатора. Некоторые производители, например LANNET или Centillion, выбрали в качестве порции данных, переносимых за одну операцию по шине, ячейку ATM с ее полем данных в 48 байт. Такой подход облегчает трансляцию протоколов локальных сетей в протокол ATM, если коммутатор поддерживает эти технологии.
Входной блок процессора помещает в ячейку, переносимую по шине, тег, в котором указывает номер порта назначения. Каждый выходной блок процессора порта содержит фильтр тегов, который выбирает теги, предназначенные данному порту.
Шина, так же как и коммутационная матрица, не может осуществлять промежуточную буферизацию, но так как данные кадра разбиваются на небольшие ячейки, то задержек с начальным ожиданием доступности выходного порта в такой схеме нет — здесь работает принцип коммутации пакетов, а не каналов.
Слайд 10Коммутаторы с разделяемой памятью
Третья базовая архитектура взаимодействия портов — двухвходовая
разделяемая память. Пример такой архитектуры приведен на рис. 9.34.
Рис. 9.34.
Архитектура разделяемой памяти
Слайд 11Входные блоки процессоров портов соединяются с переключаемым входом разделяемой памяти,
а выходные блоки этих же процессоров соединяются с переключаемым выходом
этой памяти. Переключением входа и выхода разделяемой памяти управляет менеджер очередей выходных портов. В разделяемой памяти менеджер организует несколько очередей данных, по одной для каждого выходного порта. Входные блоки процессоров передают менеджеру портов запросы на запись данных в очередь того порта, который соответствует адресу назначения пакета. Менеджер по очереди подключает вход памяти к одному из входных блоков процессоров и тот переписывает часть данных кадра в очередь определенного выходного порта.
Слайд 12По мере заполнения очередей менеджер производит также поочередное подключение выхода
разделяемой памяти к выходным блокам процессоров портов, и данные из
очереди переписываются в выходной буфер процессора.
Память должна быть достаточно быстродействующей для поддержания скорости переписи данных между N портами коммутатора. Применение общей буферной памяти, гибко распределяемой менеджером между отдельными портами, снижает требования к размеру буферной памяти процессора порта.
Слайд 13Комбинированные коммутаторы
У каждой из описанных архитектур есть свои преимущества и
недостатки, поэтому часто в сложных коммутаторах эти архитектуры применяются в
комбинации друг с другом. Пример такого комбинирования приведен на рис. 9.35.
Рис. 9.35. Комбинирование архитектур коммутационной матрицы и общей шины
Слайд 14Коммутатор состоит из модулей с фиксированным количеством портов (2-12), выполненных
на основе специализированной БИС, реализующей архитектуру коммутационной матрицы. Если порты,
между которыми нужно передать кадр данных, принадлежат одному модулю, то передача кадра осуществляется процессорами модуля на основе имеющейся в модуле коммутационной матрицы. Если же порты принадлежат разным модулям, то процессоры общаются по общей шине. При такой архитектуре передача кадров внутри модуля будет происходить быстрее, чем при межмодульной передаче, так как коммутационная матрица — наиболее быстрый, хотя и наименее масштабируемый способ взаимодействия портов. Скорость внутренней шины коммутаторов может достигать нескольких гигабит в секунду, а у наиболее мощных моделей — до 20-30 Гбит/с.
Можно представить и другие способы комбинирования архитектур, например использование разделяемой памяти для взаимодействия модулей.
Слайд 15Конструктивное исполнение коммутаторов
В конструктивном отношении коммутаторы, как и все коммуникационные
устройства, могут быть автономными, стековыми и выполненными на основе шасси.
Первый
тип коммутаторов обычно предназначен для организации небольших рабочих групп.
Модульные коммутаторы на основе шасси чаще всего предназначены для применения на магистрали сети. Поэтому они выполняются на основе какой-либо комбинированной схемы, в которой взаимодействие модулей организуется по быстродействующей шине или же на основе быстрой разделяемой памяти большого объема. Модули такого коммутатора выполняются на основе технологии «hot swap», то есть допускают замену на ходу, без выключения коммутатора, так как центральное коммуникационное устройство сети не должно иметь перерывов в работе. Шасси обычно снабжается резервированными источниками питания и резервированными вентиляторами в тех же целях.
Слайд 16С технической точки зрения определенный интерес представляют стековые коммутаторы. Эти
устройства могут работать автономно, так как выполнены в отдельном корпусе,
но имеют специальные интерфейсы, которые позволяют их объединять в общую систему, работающую как единый коммутатор. Говорят, что в этом случае отдельные коммутаторы образуют стек.
Обычно такой специальный интерфейс представляет собой высокоскоростную шину, которая позволяет объединить отдельные корпуса подобно модулям в коммутаторе на основе шасси. Так как расстояния между корпусами больше, чем между модулями на шасси, скорость обмена по шине обычно ниже, чем у модульных коммутаторов. Не очень высокие скорости обмена между коммутаторами стека обусловлены также тем, что стековые коммутаторы обычно занимают промежуточное положение между коммутаторами с фиксированным количеством портов и коммутаторами на основе шасси. Стековые коммутаторы применяются для создания сетей рабочих групп и отделов, поэтому сверхвысокие скорости шин обмена им не очень нужны и не соответствуют их ценовому диапазону.
Слайд 17Структура стека коммутаторов, соединяемых по скоростным специальным портам, показана на
рис. 9.36
Рис. 9.36. Стек коммутаторов, объединяемых по высокоскоростным каналам
Слайд 18Характеристики производительности коммутаторов
Производительность — это то, что сетевые интеграторы
и
администраторы ждут от коммутатора в первую очередь.
Основными показателями коммутатора, характеризующими
его производительность, являются:
скорость фильтрации кадров;
скорость продвижения кадров;
пропускная способность;
задержка передачи кадра.
Слайд 19Кроме того, существует несколько характеристик коммутатора, которые в наибольшей степени
влияют на указанные характеристики производительности. К ним относятся:
тип коммутации —
«на лету» или с полной буферизацией;
размер буфера (буферов) кадров;
производительность внутренней шины;
производительность процессора или процессоров;
размер внутренней адресной таблицы.
Слайд 20Скорость фильтрации и скорость продвижения
Скорость фильтрации и продвижения кадров —
две основные характеристики производительности коммутатора. Эти характеристики являются интегральными показателями,
они не зависят от того, каким образом технически реализован коммутатор.
Скорость фильтрации (filtering) определяет скорость, с которой коммутатор выполняет перечисленные ниже этапы обработки кадров.
Прием кадра в свой буфер.
Просмотр адресной таблицы с целью нахождения порта для адреса назначения кадра.
Уничтожение кадра, так как его порт назначения и порт источника принадлежат одному логическому сегменту.
Скорость фильтрации практически у всех коммутаторов является неблокирующей — коммутатор успевает отбрасывать кадры в темпе их поступления.
Слайд 21Скорость продвижения (forwarding) определяет скорость, с которой коммутатор выполняет следующие
этапы обработки кадров.
Прием кадра в свой буфер.
Просмотр адресной таблицы с
целью нахождения порта для адреса назначения кадра.
Передача кадра в сеть через найденный по адресной таблице порт назначения.
Как скорость фильтрации, так и скорость продвижения измеряются обычно в кадрах в секунду. Если в характеристиках коммутатора не уточняется, для какого протокола и для какого размера кадра приведены значения скоростей фильтрации и продвижения, то по умолчанию считается, что эти показатели даются для протокола Ethernet и кадров минимального размера, то есть кадров длиной 64 байт (без преамбулы) с полем данных в 46 байт.
Слайд 22Если скорости указаны для какого-либо определенного протокола, например Token Ring
или FDDI, то они также даны для кадров минимальной длины
этого протокола (например, кадров длины 29 байт для протокола FDDI). Применение в качестве основного показателя скорости работы коммутатора кадров минимальной длины объясняется тем, что такие кадры всегда создают для коммутатора наиболее тяжелый режим работы по сравнению с кадрами другого формата при равной пропускной способности переносимых пользовательских данных. Поэтому при проведении тестирования коммутатора режим передачи кадров минимальной длины используется как наиболее сложный тест, который должен проверить способность коммутатора работать при наихудшем сочетании параметров трафика. Кроме того, для пакетов минимальной длины скорость фильтрации и продвижения максимальна, что имеет немаловажное значение при рекламе коммутатора.
Слайд 23Пропускная способность коммутатора измеряется количеством пользовательских данных, переданных в единицу
времени через его порты (измеряется в мегабитах в секунду). Так
как коммутатор работает на канальном уровне, для него пользовательскими данными являются те данные, которые переносятся в поле данных кадров протоколов канального уровня — Ethernet, Token Ring, FDDI и т. п. Максимальное значение пропускной способности коммутатора всегда достигается на кадрах максимальной длины, так как при этом доля накладных расходов на служебную информацию кадра гораздо ниже, чем для кадров минимальной длины, а время выполнения коммутатором операций по обработке кадра, приходящееся на один байт пользовательской информации, существенно меньше. Поэтому коммутатор может быть блокирующим для кадров минимальной длины, но при этом иметь очень хорошие показатели пропускной способности.
Слайд 24Задержка передачи кадра измеряется как время, прошедшее с момента прихода
первого байта кадра на входной порт коммутатора до момента появления
этого байта на его выходном порту. Задержка складывается из времени, затрачиваемого на буферизацию байтов кадра, а также времени, затрачиваемого на обработку кадра коммутатором, — просмотр адресной таблицы, принятие решения о фильтрации или продвижении и получение доступа к среде выходного порта.
Величина вносимой коммутатором задержки зависит от режима его работы. Если коммутация осуществляется «на лету», то задержки обычно невелики и составляют от 5 до 40 мкс, а при полной буферизации кадров — от 50 до 200 мкс (для кадров минимальной длины).
Слайд 25Коммутатор — это многопортовое устройство, поэтому для него принято все
приведенные выше характеристики (кроме задержки передачи кадра) давать в двух
вариантах. Первый вариант — суммарная производительность коммутатора при одновременной передаче трафика по всем его портам, второй вариант — производительность в расчете на один порт. Обычно производители коммутаторов указывают общую максимальную пропускную способность устройства.
Слайд 26Коммутация «на лету» и коммутация с буферизацией
На производительности коммутатора сказывается
способ передачи пакетов — «на лету» или с буферизацией. Коммутаторы,
передающие пакеты «на лету», вносят меньшие задержки передачи кадров на каждом промежуточном коммутаторе, поэтому общее уменьшение задержки доставки данных может быть значительным, что важно для мультимедийного трафика. Кроме того, выбранный способ коммутации оказывает влияние на возможности реализации некоторых полезных дополнительных функций, например трансляцию протоколов канального уровня.
Слайд 27Таблица 9.2. Возможности коммутаторов при коммутации «на лету» и с
полной буферизацией
Средняя величина задержки коммутаторов, работающих «на лету», при высокой
нагрузке объясняется тем, что в этом случае выходной порт часто бывает занят приемом другого пакета, поэтому вновь поступивший пакет для данного порта все равно приходится буферизовать.
Слайд 28Коммутатор, работающий «на лету», может выполнять проверку некорректности передаваемых кадров,
но не может изъять плохой кадр из сети, так как
часть его байтов (и, как правило, большая часть) уже переданы в сеть.
Так как каждый способ имеет свои достоинства и недостатки, в тех моделях коммутаторов, которым не нужно транслировать протоколы, иногда применяется механизм адаптивной смены режима работы коммутатора. Основной режим такого коммутатора — коммутация «на лету», но коммутатор постоянно контролирует трафик и при превышении интенсивности появления плохих кадров некоторого порога переходит на режим полной буферизации. Затем коммутатор может вернуться к коммутации «на лету».
Слайд 29Размер адресной таблицы
Максимальная емкость адресной таблицы определяет предельное количество МАС-адресов,
с которыми может одновременно оперировать коммутатор. Так как коммутаторы чаще
всего используют для выполнения операций каждого порта выделенный процессорный блок со своей памятью для хранения экземпляра адресной таблицы, то размер адресной таблицы для коммутаторов обычно приводится в расчете на один порт. Экземпляры адресной таблицы разных процессорных модулей не обязательно содержат одну и ту же адресную информацию — скорее всего, повторяющихся адресов будет не так много, если только распределение трафика каждого порта между остальными портами не полностью равновероятно. Каждый порт хранит только те наборы адресов, с которыми он работал в последнее время.
Слайд 30Значение максимального числа МАС-адресов, которое может запомнить процессор порта, зависит
от области применения коммутатора. Коммутаторы рабочих групп обычно поддерживают всего
несколько адресов на порт, так как они предназначены для образования микросегментов. Коммутаторы отделов должны поддерживать несколько сотен адресов, а коммутаторы магистралей сетей — до нескольких тысяч, обычно 4000-8000 адресов.
Слайд 31Недостаточная емкость адресной таблицы может служить причиной замедления работы коммутатора
и засорения сети избыточным трафиком. Если адресная таблица процессора порта
полностью заполнена, а он встречает новый адрес источника в поступившем пакете, процессор должен вытеснить из таблицы какой-либо старый адрес и поместить на его место новый. Эта операция сама по себе отнимет у процессора часть времени, но главные потери производительности будут наблюдаться при поступлении кадра с адресом назначения, который пришлось удалить из адресной таблицы. Так как адрес назначения кадра неизвестен, то коммутатор должен передать этот кадр на все остальные порты. Эта операция создаст лишнюю работу для многих процессоров портов, кроме того, копии этого кадра попадут и на те сегменты сети, где они совсем не обязательны.
Слайд 32Некоторые производители коммутаторов решают эту проблему за счет изменения алгоритма
обработки кадров с неизвестным адресом назначения. Один из портов коммутатора
конфигурируется как магистральный порт, на который по умолчанию передаются все кадры с неизвестным адресом. В маршрутизаторах такой прием применяется давно, позволяя сократить размеры адресных таблиц в сетях, организованных по иерархическому принципу.
Передача кадра на магистральный порт производится в расчете на то, что этот порт подключен к вышестоящему коммутатору (при иерархическом соединении коммутаторов в крупной сети), который имеет достаточную емкость адресной таблицы и знает, куда нужно передать любой кадр.
Слайд 33Объем буфера кадров
Внутренняя буферная память коммутатора нужна для временного хранения
кадров данных в тех случаях, когда их невозможно немедленно передать
на выходной порт. Буфер предназначен для сглаживания кратковременных пульсаций трафика. Ведь даже если трафик хорошо сбалансирован и производительность процессоров портов, а также других обрабатывающих элементов коммутатора достаточна для передачи средних значений трафика, это не гарантирует, что их производительности хватит при пиковых значениях нагрузок. Например, трафик может в течение нескольких десятков миллисекунд поступать одновременно на все входы коммутатора, не давая ему возможности передавать принимаемые кадры на выходные порты.
Слайд 34Для предотвращения потерь кадров при кратковременном многократном превышении среднего значения
интенсивности трафика (а для локальных сетей часто встречаются значения коэффициента
пульсации трафика в диапазоне 50-100) единственным средством служит буфер большого объема. Как и в случае адресных таблиц, каждый процессорный модуль порта обычно имеет свою буферную память для хранения кадров. Чем больше объем этой памяти, тем менее вероятны потери кадров при перегрузках, хотя при несбалансированности средних значений трафика буфер все равно рано или поздно переполнится.
Обычно коммутаторы, предназначенные для работы в ответственных частях сети, имеют буферную память в несколько десятков или сотен килобайт на порт. Хорошо, когда эту буферную память можно перераспределять между несколькими портами, так как одновременные перегрузки по нескольким портам маловероятны. Дополнительным средством защиты может служить общий для всех портов буфер в модуле управления коммутатором. Такой буфер обычно имеет объем в несколько мегабайт.
Слайд 35Трансляция протоколов канального уровня
Коммутаторы могут выполнять трансляцию одного протокола канального
уровня в другой, например Ethernet в FDDI, Fast Ethernet в
Token Ring и т. п. При этом они работают по тем же алгоритмам, что и транслирующие мосты, то есть в соответствии со спецификациями IEEE 802.1H и RFC 1042, определяющими правила преобразования полей кадров разных протоколов.
Трансляцию протоколов локальных сетей облегчает тот факт, что наиболее сложную работу, которую при объединении гетерогенных сетей часто выполняют маршрутизаторы и шлюзы, а именно работу по трансляции адресной информации, в данном случае выполнять не нужно. Все конечные узлы локальных сетей имеют уникальные адреса одного и того же формата независимо от поддерживаемого протокола. Поэтому адрес сетевого адаптера Ethernet понятен сетевому адаптеру FDDI, и они оба могут использовать эти адреса в полях своих кадров, не задумываясь о том, что узел, с которым они взаимодействуют, принадлежит сети, работающей по другой технологии.
Слайд 36Поэтому при согласовании протоколов локальных сетей коммутаторы не строят таблиц
соответствия адресов узлов, а переносят адреса назначения и источника из
кадра одного протокола в кадр другого.
Кроме изменения порядка следования битов при передаче байтов адреса, трансляция протокола Ethernet (и Fast Ethernet, который использует формат кадров Ethernet) в протоколы FDDI и Token Ring включает выполнение перечисленных ниже (возможно, не всех) операций.
Вычисление длины поля данных кадра и помещение этого значения в поле Length при передаче кадра из сети FDDI или Token Ring в сеть Ethernet 802.3 (в кадрах FDDI и Token Ring поле длины отсутствует).
Слайд 37Заполнение полей статуса кадра при передаче кадров из сети FDDI
или Token Ring в сеть Ethernet. Кадры FDDI и Token
Ring имеют два бита, устанавливаемые станцией, которой предназначался кадр, — бит распознавания адреса А и бит копирования кадра С. При получении кадра станция должна установить эти два бита, чтобы кадр, вернувшийся по кольцу к сгенерировавшей его станции, принес данные обратной связи. При передаче коммутатором кадра в другую сеть нет стандартных правил для установки битов А и С в кадре, который возвращается по кольцу к станции-источнику. Поэтому производители коммутаторов решают эту проблему по своему усмотрению.
Слайд 38Отбрасывание кадров, передаваемых из сетей FDDI или Token Ring в
сеть Ethernet с размером поля данных большим, чем 1500 байт,
так как это максимально возможное значение поля данных для сетей Ethernet. В дальнейшем, не дождавшись ответа от станции назначения из сети Ethernet, протокол верхнего уровня станции из сети FDDI, возможно, уменьшит размер передаваемых в одном кадре данных, и тогда коммутатор сможет передавать кадры между этими станциями. Другим вариантом решения проблемы является поддержка коммутатором IP-фрагментации, но это требует, во-первых, реализации в коммутаторе протокола сетевого уровня, а во-вторых, поддержки протокола IP взаимодействующими узлами транслируемых сетей.
Слайд 39Заполнение поля Туре (тип протокола в поле данных) кадра Ethernet
II при приходе кадров из сетей, поддерживающих кадры FDDI или
Token Ring, в которых это поле отсутствует, зато имеются поля DSAP и SSAP, выполняющие то же назначение, но с другими кодами для обозначения протоколов. Для упрощения трансляции спецификация RFC 1042 предлагает всегда использовать в сетях FDDI и Token Ring кадры с заголовками LLC/SNAP, которые имеют то же поле Туре и с теми же значениями, что и кадры Ethernet II. При преобразовании кадров значение из поля Туре заголовка LLC/SNAP переносится в поле Туре кадра Ethernet II, и наоборот. Если в сети Ethernet имеются форматы кадров, отличные от Ethernet II, то они также должны иметь заголовок LLC/SNAP.
Пересчет контрольной суммы кадра в соответствии со сформированными значениями служебных полей кадра.
Слайд 40Возможности коммутаторов по фильтрации трафика
Многие коммутаторы позволяют администраторам задавать дополнительные
условия фильтрации кадров наряду со стандартными условиями их фильтрации в
соответствии с информацией адресной таблицы. Пользовательские фильтры предназначены для создания дополнительных барьеров на пути кадров, которые ограничивают доступ определенных групп пользователей к определенным службам сети.
Наиболее простыми являются пользовательские фильтры на основе МАС-адресов станций. Так как МАС-адреса — это та информация, с которой работает коммутатор, то он позволяет создавать такие фильтры в удобной для администратора форме, возможно, проставляя некоторые условия в дополнительном поле адресной таблицы, подобно тем, которые были указаны в адресной таблице моста System 3000 (например, отбрасывать кадры с определенным адресом). При этом пользователю, работающему на компьютере с данным МАС-ад-ресом, полностью запрещается доступ к ресурсам другого сегмента сети.
Слайд 41Часто администратору требуется задать более тонкие условия фильтрации, например запретить
некоторому пользователю печатать свои документы на определенном сервере печати NetWare
чужого сегмента, а остальные ресурсы этого сегмента сделать доступными. Для реализации подобного фильтра нужно запретить передачу кадров с определенным МАС-адресом, в которых вложены пакеты IPX, если в поле «номер сокета» этих кадров указано значение, соответствующее службе печати NetWare. Коммутаторы не анализируют протоколы верхних уровней, такие как IPX, поэтому администратору приходится для задания условий фильтрации вручную определять поле, по значению которого нужно осуществлять фильтрацию, в виде пары «смещение—размер» относительно начала поля данных кадра канального уровня, а затем еще указать в шестнадцатеричном формате значение этого поля для службы печати.
Слайд 42Обычно условия фильтрации записываются в виде булевых выражений, формируемых с
помощью логических операторов AND и OR.
Наложение дополнительных условий фильтрации может
снизить производительность коммутатора, так как вычисление булевых выражений требует проведения дополнительных вычислений процессорами портов.
Слайд 43Приоритетная обработка кадров
Построение сетей на основе коммутаторов позволяет задействовать приоритезацию
трафика для повышения качества обслуживания пользовательского трафика, причем независимо от
технологии сети. Эта новая возможность (по сравнению с сетями, построенными целиком на концентраторах) является следствием того, что коммутаторы буферизуют кадры перед их отправкой на другой порт. Коммутатор обычно ведет для каждого входного и выходного порта не одну, а несколько очередей, причем каждая очередь имеет собственный приоритет обработки. При этом коммутатор может быть сконфигурирован, например, так, чтобы передавать один низкоприоритетный пакет на каждые 10 высокоприоритетных пакетов.
Слайд 44Поддержка приоритетной обработки может особенно пригодиться для приложений, предъявляющих различные
требования к допустимым задержкам кадров и пропускной способности сети для
потока кадров.
Приоритезация трафика коммутаторами сегодня является одним из основных механизмов обеспечения качества транспортного обслуживания в локальных сетях. К каким уровням задержек приводит приписывание того или иного уровня приоритета кадру, какую пропускную способность обеспечивает приоритет потоку кадров — схема приоритезации не говорит. Выяснить последствия ее применения можно только путем проведения натурных экспериментов или имитационного моделирования.
Слайд 45Ясно только одно — более приоритетные кадры будут обрабатываться раньше
менее приоритетных, поэтому все показатели качества обслуживания у них будут
выше, чем у менее приоритетных. Остается вопрос — насколько? Гарантии качества обслуживания дают другие схемы, которые основаны на предварительном резервировании качества обслуживания. Например, такие схемы используются в технологиях глобальных сетей frame relay и ATM, а также в протоколе RSVP для сетей TCP/IP. Однако для коммутаторов такого рода протоколов нет, так что гарантий качества обслуживания они пока дать не могут.
Слайд 46Основным вопросом при приоритетной обработке кадров коммутаторами является вопрос назначения
кадру приоритета. Так как не все протоколы канального уровня поддерживают
поле приоритета кадра, например у кадров Ethernet оно отсутствует, то коммутатор должен использовать какой-либо дополнительный механизм для связывания кадра с его приоритетом. Наиболее распространенный способ — приписывание приоритета портам коммутатора. При этом способе коммутатор помещает кадр в очередь кадров соответствующего приоритета в зависимости от того, через какой порт поступил кадр в коммутатор. Способ несложный, но недостаточно гибкий — если к порту коммутатора подключен не отдельный узел, а сегмент, то все узлы сегмента получают одинаковый приоритет.
Многие компании, выпускающие коммутаторы, реализовали в них ту или иную схему приоритетной обработки кадров. Примером фирменного подхода к назначению приоритетов на основе портов является технология РАСЕ компании 3Com.
Слайд 47Более гибким является назначение приоритетов кадрам в соответствии с достаточно
новым стандартом IEEE 802.1р. Этот стандарт разрабатывался совместно со стандартом
802.1Q, который рассматривается в разделе «Виртуальные локальные сети» главы 10. В обоих стандартах предусмотрен общий дополнительный заголовок для кадров Ethernet, состоящий из двух байтов. В этом дополнительном заголовке, который вставляется перед полем данных кадра, три бита используются для указания приоритета кадра. Существует протокол, по которому конечный узел может запросить у коммутатора один из восьми уровней приоритета кадра. Если сетевой адаптер не поддерживает стандарт 802.1р, то коммутатор может назначать приоритеты кадрам на основе порта поступления кадра. Такие помеченные кадры будут обслуживаться в соответствии с их приоритетом всеми коммутаторами сети, а не только тем коммутатором, который непосредственно принял кадр от конечного узла. При передаче кадра сетевому адаптеру, не поддерживающему стандарт 802.1р, дополнительный заголовок должен быть удален.
Слайд 48Более подробно вопросы поддержки качества обслуживания, QoS, рассматриваются в части
V, посвященной глобальным сетям. Это связано с тем, что пропускная
способность глобальных сетей всегда ценилась дороже, так как территориальные каналы долгое время были более низкоскоростными, чем локальные, к тому же пользование ими чаще всего было построено на коммерческой основе, когда за каждый дополнительный килобит в секунду средней скорости приходилось платить. А раз платить, то нужно точно знать, за что именно, для чего и были разработаны достаточно эффективные процедуры обеспечения качества обслуживания. В локальных сетях с развитием приложений, чувствительных к задержкам, например приложений IP-телефонии, также повысились требования к качеству обслуживания. Методы обеспечения QoS одинаковы для глобальных и локальных сетей, тем не менее авторы посчитали, что более естественно отнести их к той части, в которой рассматриваются сети, «породившие» эти методы, а именно глобальные сети.
Слайд 49Коммутаторы связывают процессоры портов по трем основным схемам — коммутационной
матрицы, общей шины и разделяемой памяти. В коммутаторах с фиксированным
количеством портов обычно используется коммутационная матрица, а в модульных коммутаторах — сочетание коммутационной матрицы в отдельных модулях с общей шиной и разделяемой памятью для связи модулей.
Для поддержания неблокирующего режима работы коммутатора общая шина или разделяемая память должны обладать производительностью, превышающей сумму производительностей всех портов максимально высокоскоростного набора модулей, которые устанавливаются в шасси.
Основными характеристиками производительности коммутатора являются: скорость фильтрации кадров, скорость продвижения кадров, общая пропускная способность по всем портам в мегабитах в секунду, задержка передачи кадра.
Слайд 50На характеристики производительности коммутатора влияют: тип коммутации — «на лету»
или с полной буферизацией, размер адресной таблицы, размер буфера кадров.
Коммутаторы
умеют фильтровать передаваемый трафик по различным критериям, учитывающим адреса получателя и отправителя, а также значения произвольных полей. Однако способ задания фильтров на канальном уровне достаточно сложный, требующий от администратора хорошего знания протоколов и кропотливой работы по определению местоположения нужного признака внутри кадра.
Для приоритетной обработки трафика в коммутаторах организуется несколько очередей. Выбор очереди происходит, исходя из различных условий, в том числе и на основании значения трехбитного поля приоритета, добавляемого в соответствии со стандартом 802.1р.