Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Сетевые технологии (часть 2).doc
Скачиваний:
50
Добавлен:
10.12.2018
Размер:
694.27 Кб
Скачать

6.6 Коммутаторы (переключатели)

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

Переключатели, как и мосты, относятся к устройствам канального уровня модели OSI и оперируют кадрами данных. Они принимают решение о ретрансляции или фильтрации на основании анализа МАС адреса кадра. При этом переклю­чатели предоставляют кадрам множество путей для передачи между портами. Для этого коммутатор поддерживает внутреннюю таблицу, связывающую порты с адресами подключенных к ним узлов. Эту таблицу администратор сети может создать самостоятельно или она создается автоматически. Используя таблицу адресов и адрес получателя, коммутатор организует «виртуальное соединение» порта отправителя с портом получателя и передает кадр через это соединение. Виртуальное соединение между портами коммутатора сохраняется в течение передачи кадра, а для нового кадра организуется заново на основе адреса получателя.

Характеристиками коммутатора являются:

  1. Скорость передачи между портами;

  2. Общая пропускная способность – так называемая, максимальная скорость, с которой кадры могут передаваться через коммутатор;

  3. Задержка времени между получением пакета от отправителя и передачей его получателю.

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

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

  1. Повышение производительности в каждой из виртуальных сетей;

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

Принципы образования и работы виртуальных сетей с помощью коммутаторов рассмотрены в стандарте IEEE 802.1Q.

Можно выделить три основных типа коммутаторов:

1. Настольные коммутаторы, которые служат для замены концентраторов.

2. Магистральные коммутаторы для соединения сетей или сегментов.

3. Коммутаторы рабочих групп для соединения настольных коммутаторов с остальными частями сети.

Также коммутаторы работают со следующими схемами:

  1. Схема с коммутационной матрицей;

  2. Схема с общей шиной

  3. Схема с разделяемой многовходовой памятью.

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

Рис. 6.2 Логическая схема матрицы

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

Каждый порт обслуживается процессором кадров (Ethernet Packet Processor - EPP). Системный модуль координирует работу всех процессоров EPP, ведет адресную таблицу коммутатора и обеспечивает управление им. При поступлении кадра в порт процессор EPP буферизует несколько первых байт кадра, чтобы прочитать адрес назначения. После получения адреса, процессор может принять решение о передаче пакета, не дожидаясь прихода всего кадра. Для этого он просматривает свой кэш адресной таблицы или обращается к системному модулю для получения адреса из общей адресной таблицы. Также процессор может отфильтровать кадр. Тогда он прекращает записывать в буфер остальные байты кадра и ждет поступления нового кадра. Если кадр нужно передать на другой порт, то процессор обращается к коммутационной матрице и пытается установить в ней путь, связывающий его порт с портом адреса назначения. Коммутационная матрица делает это в том случае, когда порт адреса назначения свободен, не соединен с другим портом. Если порт занят, то кадр буферизуется процессором входного порта, процессор ожидает освобождения выходного порта и образования коммутационной матрицей нужного пути. После установки пути, в него направляются байты кадра из буфера, которые принимаются процессором выходного порта, и после получения им доступа к среде передаются в сеть.

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

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

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

Все виды коммутаторов для ретрансляции кадров могут использовать три способа переключения:

  1. Сквозная ретрансляция;

  2. Сквозная ретрансляция кадров заданной длины;

  3. Ретрансляция кадров с предварительной буферизацией.

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

  1. Ретранслируются карликовые кадры;

  2. Ретранслируются ошибочные кадры;

  3. Возникает перегрузка сети.

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

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

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