Расчеты трафика. Технические параметры коммутаторов Пропускная способность коммутатора

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

Коммутаторы для рабочих групп

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

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

Физическое соединение "точка-точка" между коммутаторами рабочих групп и узлами 10Base-T обычно выполняется неэкранированным кабелем на основе скрученных пар, а в узлах сети устанавливается оборудование, соответствующее стандарту 10Base-T.

Коммутаторы рабочих групп могут работать со скоростью 10 или 100 Mbps для различных портов. Такая возможность снижает уровень блокировки при попытке организации нескольких соединений клиентов 10 Mbps с одним скоростным портом. В рабочих группах с архитектурой клиент-сервер несколько клиентов 10 Mbps могут обращаться к серверу, подключенному к порту 100 Mbps. В показанном на рисунке 8 примере три узла 10 Mbps одновременно обращаются к серверу через порт 100 Mbps. Из полосы 100 Mbps, доступной для доступа к серверу, используется 30 Mbps, а 70 Mbps доступно для одновременного подключения к серверу еще семи устройств 10 Mbps через виртуальные каналы.

Поддержка различных скоростей полезна также для объединения групповых коммутаторов Ethernet с использованием концентраторов 100 Mbps Fast Ethernet (100Base-T) в качестве локальных магистралей (local backbone). В показанной на рисунке 9 конфигурации коммутаторы, поддерживающие скорости 10 Mbps и 100 Mbps подключены к концентратору 100 Mbps. Локальный трафик остается в пределах рабочей группы, а остальной трафик передается в сеть через концентратор 100 Mbps Ethernet.

Для подключения к повторителю 10 или 100 Mbps коммутатор должен иметь порт, способный работать с большим числом адресов Ethernet.

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

Магистральные коммутаторы

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

На уровне рабочей группы каждый узел разделяет полосу 10 Mbps с другими узлами в том же сегменте. Пакет, адресованный за пределы данной группы, будет передан магистральным коммутатором как показано на рисунке 10. Магистральный коммутатор обеспечивает одновременную передачу пакетов со скоростью среды между любыми парами своих портов. Подобно коммутаторам для рабочих групп, магистральные коммутаторы могут поддерживать различную скорость для своих портов. Магистральные коммутаторы могут работать с сегментами 10Base-T и сегментами на основе коаксиального кабеля. В большинстве случаев использование магистральных коммутаторов обеспечивает более простой и эффективный способ повышения производительности сети по сравнению с маршрутизаторами и мостами.

Основным недостатком при работе с магистральными коммутаторами является то, что на уровне рабочих групп пользователи работают с разделяемой средой, если они подключены к сегментам, организованным на основе повторителей или коаксиального кабеля. Более того, время отклика на уровне рабочей группы может быть достаточно большим. В отличие от узлов, подключенных к портам коммутатора, для узлов, находящихся в сегментах 10Base-T или сегментах на основе коаксиального кабеля полоса 10 Mbps не гарантируется и они зачастую вынуждены ждать, пока другие узлы не закончат передачу своих пакетов. На уровне рабочей группы по прежнему сохраняются коллизии, а фрагменты пакетов с ошибками будут пересылаться во все сети, подключенные к магистрали. Перечисленных недостатков можно избежать, если на уровне рабочих групп использовать коммутаторы взамен хабов 10Base-T. В большинстве ресурсоемких приложений коммутатор 100 Mbps может выполнять роль скоростной магистрали для коммутаторов рабочих групп с портами 10 и 100 Mbps, концентраторами 100 Mbps и серверами, в которых установлены адаптеры Ethernet 100 Mbps.

Сравнение возможностей

Основные свойства коммутаторов Ethernet приведены в таблице:

Преимущества коммутаторов Ethernet

Ниже перечислены основные преимущества использования коммутаторов Ethernet:
Повышение производительности за счет высокоскоростных соединений между сегментами Ethernet (магистральные коммутаторы) или узлами сети (коммутаторы для рабочих групп). В отличие от разделяемой среды Ethernet коммутаторы позволяют обеспечить рост интегральной производительности при добавлении в сеть пользователей или сегментов.
Снижение числа коллизий, особенно в тех случаях, когда каждый пользователь подключен к отдельному порту коммутатора.
Незначительные расходы при переходе от разделяемой среды к коммутируемой за счет сохранения существующей инфраструктуры 10 Mbps Ethernet (кабели, адаптеры, программы).
Повышение безопасности за счет передачи пакетов только в тот порт, к которому подключен адресат.
Малое и предсказуемое время задержки за счет того, что полосу разделяет небольшое число пользователей (в идеале - один).

Сравнение сетевых устройств

Повторители

Повторители Ethernet, контексте сетей 10Base-T часто называемые концентраторами или хабами, работают в соответствии со стандартом IEEE 802.3. Повторитель просто передает полученные пакеты во все свои порты независимо от адресата.

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

С точки зрения производительности повторители просто передают пакеты с использованием всей полосы канала. Задержка, вносимая повторителем весьма мала (в соответствии с IEEE 802.3 - менее 3 микросекунд). Сети, содержащие повторители имеют полосу 10 Mbps подобно сегменту на основе коаксиального кабеля и прозрачны для большинства сетевых протоколов, таких как TCP/IP и IPX.

Мосты

Мосты функционируют в соответствии со стандартом IEEE 802.1d. Подобно коммутаторам Ethernet мосты не зависят от протокола и передают пакеты порту, к которому подключен адресат. Однако, в отличие от большинства коммутаторов Ethernet, мосты не передают фрагменты пакетов при возникновении коллизий и пакеты с ошибками, поскольку все пакеты буферизуются перед их пересылкой в порт адресата. Буферизация пакетов (store-and-forward) приводит к возникновению задержки по сравнению с коммутацией на лету. Мосты могут обеспечивать производительность, равную пропускной способности среды, однако внутренняя блокировка несколько снижает скорость их работы.

Маршрутизаторы

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

Резюме

Основные различия между сетевыми устройствами показаны в таблице 2.

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

Основными характеристиками коммутатора, измеряющими его производительность, являются:

  • - скорость фильтрации (filtering);
  • - скорость маршрутизации (forwarding);
  • - пропускная способность (throughput);
  • - задержка передачи кадра.

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

  • - размер буфера (буферов) кадров;
  • - производительность внутренней шины;
  • - производительность процессора или процессоров;
  • - размер внутренней адресной таблицы.

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

Скорость фильтрации определяет скорость, с которой коммутатор выполняет следующие этапы обработки кадров:

  • - прием кадра в свой буфер;
  • - уничтожение кадра, так как его порт назначения совпадает с портом-источником.

Скорость продвижения определяет скорость, с которой коммутатор выполняет следующие этапы обработки кадров:

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

Как скорость фильтрации, так и скорость продвижения измеряются обычно в кадрах в секунду. Если в характеристиках коммутатора не уточняется, для какого протокола и для какого размера кадра приведены значения скоростей фильтрации и продвижения, то по умолчанию считается, что эти показатели даются для протокола Ethernet и кадров минимального размера, то есть кадров длиной 64 байта (без преамбулы), с полем данных в 46 байт. Если скорости указаны для какого-либо определенного протокола, например, Token Ring или FDDI, то они также даны для кадров минимальной длины этого протокола (например, кадров длины 29 байт для протокола FDDI).

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

Пропускная способность коммутатора измеряется количеством переданных в единицу времени через его порты пользовательских данных. Так как коммутатор работает на канальном уровне, то для него пользовательскими данными являются те данные, которые переносятся в поле данных кадров протоколов канального уровня - Ethernet, Token Ring, FDDI и т.п. Максимальное значение пропускной способности коммутатора всегда достигается на кадрах максимальной длины, так как при этом и доля накладных расходов на служебную информацию кадра гораздо ниже, чем для кадров минимальной длины, и время выполнения коммутатором операций по обработке кадра, приходящееся на один байт пользовательской информации, существенно меньше.

Зависимость пропускной способности коммутатора от размера передаваемых кадров хорошо иллюстрирует пример протокола Ethernet, для которого при передаче кадров минимальной длины достигается скорость передачи в 14880 кадров в секунду и пропускная способность 5,48 Мбит/с, а при передаче кадров максимальной длины - скорость передачи в 812 кадров в секунду и пропускная способность 9,74 Мбит/c. Пропускная способность падает почти в два раза при переходе на кадры минимальной длины, и это еще без учета потерь времени на обработку кадров коммутатором.

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

Величина вносимой коммутатором задержки зависит от режима его работы. Если коммутация осуществляется "на лету", то задержки обычно невелики и составляют от 10 мкс до 40 мкс, а при полной буферизации кадров - от 50 мкс до 200 мкс (для кадров минимальной длины).

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

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

Оценка необходимой общей производительности коммутатора.

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

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

Размер адресной таблицы.

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

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

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

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

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

Рисунок 4.1 - Использование магистрального порта для доставки кадров с неизвестным адресом назначения

Хотя метод магистрального порта и будет работать эффективно во многих случаях, но можно представить такие ситуации, когда кадры будут просто теряться. Одна из таких ситуаций изображена на рисунке 4.2. Коммутатор нижнего уровня удалил из своей адресной таблицы адрес МАС8, который подключен к его порту 4, для того, чтобы освободить место для нового адреса МАС3. При поступлении кадра с адресом назначения МАС8, коммутатор передает его на магистральный порт 5, через который кадр попадает в коммутатор верхнего уровня. Этот коммутатор видит по своей адресной таблице, что адрес МАС8 принадлежит его порту 1, через который он и поступил в коммутатор. Поэтому кадр далее не обрабатывается и просто отфильтровывается, а, следовательно, не доходит до адресата. Поэтому более надежным является использование коммутаторов с достаточным количеством адресной таблицы для каждого порта, а также с поддержкой общей адресной таблицы модулем управления коммутатором.


Рисунок 4.2 - Потеря кадра при использовании магистрального порта

Объем буфера.

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

Для предотвращения потерь кадров при кратковременном многократном превышении среднего значения интенсивности трафика (а для локальных сетей часто встречаются значения коэффициента пульсации трафика в диапазоне 50 - 100) единственным средством служит буфер большого объема. Как и в случае адресных таблиц, каждый процессорный модуль порта обычно имеет свою буферную память для хранения кадров. Чем больше объем этой памяти, тем менее вероятны потери кадров при перегрузках, хотя при несбалансированности средних значений трафика буфер все равно рано или поздно переполниться.

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

Основными характеристиками коммутатора, измеряющими его производительность, являются:

Скорость фильтрации (filtering);

Скорость маршрутизации (forwarding);

Пропускная способность (throughput);

Задержка передачи кадра.

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

Размер буфера (буферов) кадров;

Производительность внутренней шины;

Производительность процессора или процессоров;

Размер внутренней адресной таблицы.

Скорость фильтрации и скорость продвижения

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

Скорость фильтрации определяет скорость, с которой коммутатор выполняет следующие этапы обработки кадров:

Прием кадра в свой буфер;

Уничтожение кадра, так как его порт назначения совпадает с портом-источником.

Скорость продвижения определяет скорость, с которой коммутатор выполняет следующие этапы обработки кадров:

Прием кадра в свой буфер;

Просмотр адресной таблицы с целью нахождения порта для адреса назначения кадра;

Передача кадра в сеть через найденный по адресной таблице порт назначения.

Как скорость фильтрации, так и скорость продвижения измеряются обычно в кадрах в секунду. Если в характеристиках коммутатора не уточняется, для какого протокола и для какого размера кадра приведены значения скоростей фильтрации и продвижения, то по умолчанию считается, что эти показатели даются для протокола Ethernet и кадров минимального размера, то есть кадров длиной 64 байта (без преамбулы), с полем данных в 46 байт. Если скорости указаны для какого-либо определенного протокола, например, Token Ring или FDDI, то они также даны для кадров минимальной длины этого протокола (например, кадров длины 29 байт для протокола FDDI). Применение в качестве основного показателя скорости работы коммутатора кадров минимальной длины объясняется тем, что такие кадры всегда создают для коммутатора наиболее тяжелый режим работы по сравнению с кадрами другого формата при равной пропускной способности переносимых пользовательских данных. Поэтому при проведении тестирования коммутатора режим передачи кадров минимальной длины используется как наиболее сложный тест, который должен проверить способность коммутатора работать при наихудшем сочетании для него параметров трафика. Кроме того, для пакетов минимальной длины скорость фильтрации и продвижения имеют максимальное значение, что имеет немаловажное значение при рекламе коммутатора.

Пропускная способность

Пропускная способность коммутатора измеряется количеством переданных в единицу времени через его порты пользовательских данных. Так как коммутатор работает на канальном уровне, то для него пользовательскими данными являются те данные, которые переносятся в поле данных кадров протоколов канального уровня - Ethernet, Token Ring, FDDI и т.п. Максимальное значение пропускной способности коммутатора всегда достигается на кадрах максимальной длины, так как при этом и доля накладных расходов на служебную информацию кадра гораздо ниже, чем для кадров минимальной длины, и время выполнения коммутатором операций по обработке кадра, приходящееся на один байт пользовательской информации, существенно меньше.

Зависимость пропускной способности коммутатора от размера передаваемых кадров хорошо иллюстрирует пример протокола Ethernet, для которого при передаче кадров минимальной длины достигается скорость передачи в 14880 кадров в секунду и пропускная способность 5,48 Мб/с, а при передаче кадров максимальной длины - скорость передачи в 812 кадров в секунду и пропускная способность 9,74 Мб/c. Пропускная способность падает почти в два раза при переходе на кадры минимальной длины, и это еще без учета потерь времени на обработку кадров коммутатором.

Задержка передачи

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

Величина вносимой коммутатором задержки зависит от режима его работы. Если коммутация осуществляется "на лету", то задержки обычно невелики и составляют от 10 мкс до 40 мкс, а при полной буферизации кадров - от 50 мкс до 200 мкс (для кадров минимальной длины).

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

Так как при одновременной передаче трафика несколькими портами существует огромное количество вариантов трафика, отличающегося размерами кадров в потоке, распределением средней интенсивности потоков кадров между портами назначения, коэффициентами вариации интенсивности потоков кадров и т.д. и т.п., то при сравнении коммутаторов по производительности необходимо принимать во внимание, для какого варианта трафика получены публикуемые данные производительности. К сожалению, для коммутаторов (как, впрочем, и для маршрутизаторов) не существует общепринятых тестовых образцов трафика, которые можно было бы применять для получения сравнимых характеристик производительности, как это делается для получения таких характеристик производительности вычислительных систем, как TPC-А или SPECint92. Некоторые лаборатории, постоянно проводящие тестирование коммуникационного оборудования, разработали детальные описания условий тестирования коммутаторов и используют их в своей практике, однако общепромышленными эти тесты пока не стали.

производительность , являются:
  • скорость фильтрации кадров;
  • скорость продвижения кадров;
  • пропускная способность;
  • задержка передачи кадра.

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

  • тип коммутации;
  • размер буфера (буферов) кадров;
  • производительность коммутирующей матрицы;
  • производительность процессора или процессоров;
  • размер таблицы коммутации .

Скорость фильтрации и скорость продвижения кадров

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

Скорость фильтрации (filtering)

  • прием кадра в свой буфер;
  • отбрасывание кадра, в случае обнаружения в нем ошибки (не совпадает контрольная сумма, или кадр меньше 64 байт или больше 1518 байт);
  • отбрасывание кадра для исключения петель в сети;
  • отбрасывание кадра в соответствии с настроенными на порте фильтрами;
  • просмотр таблицы коммутации с целью поиска порта назначения на основе МАС-адреса приемника кадра и отбрасывание кадра, если узел-отправитель и получатель кадра подключены к одному порту.

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

Скорость продвижения (forwarding) определяет скорость, с которой коммутатор выполняет следующие этапы обработки кадров:

  • прием кадра в свой буфер;
  • просмотр таблицы коммутации с целью нахождения порта назначения на основе МАС-адреса получателя кадра;
  • передача кадра в сеть через найденный по таблице коммутации порт назначения.

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

Пропускная способность коммутатора (throughput) измеряется количеством пользовательских данных (в мегабитах или гигабитах в секунду), переданных в единицу времени через его порты. Так как коммутатор работает на канальном уровне, для него пользовательскими данными являются те данные, которые переносятся в поле данных кадров протоколов канального уровня - Ethernet, Fast Ethernet и т. д. Максимальное значение пропускной способности коммутатора всегда достигается на кадрах максимальной длины, так как при этом доля накладных расходов на служебную информацию кадра гораздо ниже, чем для кадров минимальной длины, а время выполнения коммутатором операций по обработке кадра, приходящееся на один байт пользовательской информации, существенно меньше. Поэтому коммутатор может быть блокирующим для кадров минимальной длины, но при этом иметь очень хорошие показатели пропускной способности.

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

Величина вносимой коммутатором задержки зависит от используемого в нем метода коммутации. Если коммутация осуществляется без буферизации, то задержки обычно невелики и составляют от 5 до 40 мкс , а при полной буферизации кадров - от 50 до 200 мкс (для кадров минимальной длины).

Размер таблицы коммутации

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

Значение максимального числа МАС-адресов, которое может храниться в таблице коммутации , зависит от области применения коммутатора. Коммутаторы D-Link для рабочих групп и малых офисов обычно поддерживают таблицу МАС-адресов емкостью от 1К до 8К . Коммутаторы крупных рабочих групп поддерживают таблицу МАС-адресов емкостью от 8К до 16К , а коммутаторы магистралей сетей - как правило, от 16К до 64К адресов и более.

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

Объем буфера кадров

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

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

К основным техническим параметрам, которыми можно оценить коммутатор, построенный с использованием любой архитектуры, является скорость фильтрации (filtering) и скорость продвижения (forwarding).

Скорость фильтрации определяет количество кадров в секунду, с которыми коммутатор успевает проделать следующие операции:

  • прием кадра в свой буфер;
  • нахождения порта для адреса назначения кадра в адресной таблице;
  • уничтожение кадра (порт назначения совпадает с портом-источником).

Скорость продвижения, по аналогии с предыдущим пунктом, определяет количество кадров в секунду, которые могут быть обработаны по следующему алгоритму:

  • прием кадра в свой буфер,
  • нахождения порта для адреса назначения кадра;
  • передача кадра в сеть через найденный (по адресной таблице соответствия) порт назначения.

По умолчанию считается, что эти показатели измеряются на протоколе Ethernet для кадров минимального размера (длиной 64 байта). Так как основное время занимает анализ заголовка, то чем короче передаваемые кадры, тем более серьезную нагрузку они создают на процессор и шину коммутатора.

Следующими по значимости техническими параметрами коммутатора будут:

  • пропускная способность (throughput);
  • задержка передачи кадра.
  • размер внутренней адресной таблицы.
  • размер буфера (буферов) кадров;
  • производительность коммутатора;

Пропускная способность измеряется количеством данных, переданных через порты в единицу времени. Естественно, что чем больше длина кадра (больше данных прикреплено к одному заголовку), тем больше должна быть пропускная способность. Так, при типичной для таких устройств "паспортной" скорости продвижения в 14880 кадров в секунду, пропускная способность составит 5.48 Мб/с на пакетах по 64 байта, и ограничение скорости передачи данных будет наложено коммутатором.

В то же время, при передаче кадров максимальной длины (1500 байт), скорость продвижения составит 812 кадров в секунду, а пропускная способность - 9,74 Мб/c. Фактически, ограничение на передачу данных будет определяться скоростью протокола Ethernet.

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

Величина задержки очень сильно зависит от способа продвижения кадров. Если применяется метод коммутации "на лету", то задержки невелики и составляют от 10 мкс до 40 мкс, в то время как при полной буферизации - от 50 мкс до 200 мкс (в зависимости от длины кадров).

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

Размер адресной таблицы (САМ-таблицы). Определяет максимальное количество MAC-адресов, которые содержатся в таблице соответствия портов и МАС-адресов. В технической документации обычно приводится на один порт, как число адресов, но иногда бывает, что указывается размер памяти под таблицу в килобайтах (одна запись занимает не менее 8 кб, и "подменить" число весьма выгодно недобросовестному производителю).

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

Раньше встречались модели (например, 3com SuperStack II 1000 Desktop), в которых размер таблицы позволял хранить один или несколько адресов, из-за чего приходилось относиться очень внимательно к дизайну сети. Однако, сейчас даже самые дешевые настольные коммутаторы имеют таблицу из 2-3К адресов (а магистральные еще больше), и этот параметр перестал быть узким местом технологии.

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

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

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

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

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

На сегодня производители вполне освоили производство коммутаторов (10/100baseT), даже очень дешевые модели имеют достаточную пропускную способность, и достаточно быстрые процессоры. Проблемы начинаются, когда нужно применять более сложные методы ограничений скорости подключенных узлов (обратного давления), фильтрации, и других протоколов, рассмотренных ниже.

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

Дополнительные возможности коммутаторов.

Как уже говорилось выше, современные коммутаторы имеют настолько много возможностей, что обычная коммутация (казавшаяся технологическим чудом десять лет назад) уходит на второй план. Действительно, быстро, и относительно качественно, коммутировать кадры умеют модели стоимостью от $50 до $5000. Различие идет именно по дополнительным возможностям.

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

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

Надо заметить, что не все вендоры используют технологию соединения коммутаторов при помощи специальных портов (стекирование). В этой области все большее распространение получают линии Gigabit Ethernet, или при помощи группировки нескольких (до 8) портов в один канал связи.

Протокол покрывающего дерева (Spanning Tree Protocol, STP). Для простых ЛВС соблюдать в процессе эксплуатации правильную топологию Ethernet (иерархическая звезда) не сложно. Но при большой инфраструктуре это становится серьезной проблемой - неправильная кроссировка (замыкание сегмента в кольцо) может привести к остановке функционирования всей сети или ее части. Причем найти место аварии может быть совсем не просто.

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

Для решения этой задачи используется Spanning Tree Protocol (STP), при котором коммутаторы автоматически создают активную древовидную конфигурацию связей, находя ее с помощью обмена служебными пакетами (Bridge Protocol Data Unit, BPDU), которые помещаются в поле данных кадра Ethernet. В результате, порты, на которых замыкаются петли, блокируются, но могут быть автоматически включены в случае разрыва основного канала.

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

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

Возможно два способа - агрессивный захват среды передачи (например, коммутатор может не соблюдать стандартные временные интервалы). Но этот способ годится только для "общей" среды передачи, редко используемой в коммутируемом Ethernet. Этим же недостатком обладает метод обратного давления (backpressure), при котором узлу передаются фиктивные кадры.

Поэтому на практике востребована технология Advanced Flow Control (описанна в стандарте IEEE 802.3х), смысл которой в передаче коммутатором узлу специальных кадров "пауза".

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

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

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

Возможность фильтрации очень важна для сетей, в которых конечными пользователями выступают "коммерческие" абоненты, поведение которых невозможно регулировать административными мерами. Так как они могут предпринимать несанкционированные деструктивные действия (например, подделывать IP или MAC адрес своего компютера), желательно предоставить для этого минимум возможностей.

Коммутация третьего уровня (Layer 3). Из-за быстрого роста скоростей, и широкого применения коммутаторов, на сегодня образовался видимый разрыв между возможностями коммутации и классической маршрутизацией при помощи универсальных компьютеров. Наиболее логично в этой ситуации дать управляемому коммутатору возможность анализировать кадры на третьем уровне (по 7-ми уровневой модели OSI). Такая упрощенная маршрутизация дает возможность значительно поднять скорость, более гибко управлять трафиком большой ЛВС.

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

Управление и возможности мониторинга. Обширные дополнительные возможности подразумевают развитые и удобные средства управления. Ранее простые устройства могли управляться несколькими кнопками через небольшой цифровой индикатор, или через консольный порт. Но это уже в прошлом - последнее время выпускаются коммутаторы с управлением через обычный порт 10/100baseT при помощи Telnet"а, Веб-браузера, или по протоколу SNMP. Если первые два способа по большому счету являются лишь удобным продолжением обычных стартовых настроек, то SNMP позволяет использовать коммутатор как поистине универсальный инструмент.

Для Etherenet интересны только его расширения - RMON и SMON. Ниже описан RMON-I, кроме него существует RMON-II (затрагивающий более высокие уровни OSI). Более того, в свитчах "среднего уровня" как правило, реализованы только группы RMON 1-4 и 9.

Принцип работы следующий: RMON-агенты на свитчах шлют информацию на центральный сервер, где специальное программное обеспечение (например, HP OpenView) обрабатывает информацию, представляя ее в удобном для администрирования виде.

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

Стандарт RMON-I MIB описывает 9 групп объектов:

  1. Statistics - текущие накопленные статистические данные о характеристиках кадров, количестве коллизий, ошибочных кадров (с детализацией по типам ошибок) и т.п.
  2. History - статистические данные, сохраненные через определенные промежутки времени для последующего анализа тенденций их изменений.
  3. Alarms - пороговые значения статистических показателей, при превышении которых агент RMON генерирует определенное событие. Реализация этой группы требует реализации группы Events - события.
  4. Host - данные о хостах сети, обнаруженных в результате анализа MAC-адресов кадров, циркулирующих в сети.
  5. Host TopN - таблица N хостов сети, имеющих наивысшие значения заданных статистических параметров.
  6. Traffic Matrix - статистика о интенсивности трафика между каждой парой хостов сети, упорядоченная в виде матрицы.
  7. Filter - условия фильтрации пакетов; пакеты, удовлетворяющие заданному условию, могут быть либо захвачены, либо могут генерировать события.
  8. Packet Capture - группа пакетов, захваченных по заданным условиям фильтрации.
  9. Event - условия регистрации событий и оповещения о событиях.

Более подробное рассмотрение возможностей SNMP потребует не меньшего объема, чем данная книга, поэтому будет целесообразно остановиться на этом, весьма общем описании этого сложного, но мощного инструмента.

Виртуальные сети (Virtual Local-Area Network, VLAN). Пожалуй, это наиболее важная (особенно для домашних сетей), и широко используемая возможность современных коммутаторов. Надо отметить, что существует несколько принципиально отличных способов построения виртуальных сетей с помощью коммутаторов. В связи с большим значением для Ethernet-провайдинга, ее развернутое описание технологии будет сделано в одной из следующих глав.

Краткий же смысл - средствами коммутаторов (2 уровня модели OSI) сделать несколько виртуальных (независимых друг от друга сетей) на одной физической ЛВС Ethernet, предоставив возможность центральному маршрутизатору управлять портами (или группами портов) на отдаленных коммутаторах. Что собственно и делает VLAN очень удобным средством для оказания услуг передачи данных (провайдинга).