 |
|
Главная
|
Оборудование
|
Статьи
|
Контакты
|
|
Сетевой коммутатор или свитч
(жарг. от англ. switch — переключатель) —
устройство, предназначенное для соединения
нескольких узлов компьютерной сети в пределах
одного сегмента. В отличие от концентратора,
который распространяет трафик от одного
подключенного устройства ко всем остальным,
коммутатор передает данные только
непосредственно получателю. Это повышает
производительность и безопасность сети, избавляя
остальные сегменты сети от необходимости (и
возможности) обрабатывать данные, которые им не
предназначались. Коммутатор работает на канальном уровне модели OSI, и потому в общем случае может только
объединять узлы одной сети по их MAC-адресам.
Для соединения нескольких сетей на основе
сетевого уровня служат маршрутизаторы. |
Принцип работы коммутатора
Коммутатор хранит в памяти, в которой
указывается соответствие MAC-адреса узла порту коммутатора. При
включении коммутатора эта таблица пуста, и он работает в режиме
обучения. В этом режиме поступающие на какой-либо порт данные
передаются на все остальные порты коммутатора. При этом
коммутатор анализирует кадры и, определив MAC-адреc
хоста-отправителя, заносит его в таблицу. Впоследствии, если на
один из портов коммутатора поступит кадр, предназначенный для
хоста, MAC-адрес которого уже есть в таблице, то этот кадр будет
передан только через порт, указанный в таблице. Если MAC-адрес
хоста-получателя еще не известен, то кадр будет продублирован на
все интерфейсы. Со временем коммутатор строит полную таблицу для
всех своих портов, и в результате трафик локализуется. |
|
Управляемые коммутаторы |
Неуправляемые коммутаторы
|
Asotel Vector 1908G2D |
Asotel Vector 1816
Lite |
|
8-портовый управляемый L2 коммутатор Fast Ethernet с
гигабитными портами 1TX+1TX/SFP
Подробнее... |
компактный Fast Ethernet коммутатор для широкого
круга
задач (Home/SOHO/SMB)
Подробнее... |
|
Режимы коммутации
Существует три способа коммутации. Каждый из них — это
комбинация таких параметров, как время ожидания и надежность
передачи. С промежуточным хранением (Store and Forward).
Коммутатор читает всю информацию во фрейме, проверяет его на
отсутствие ошибок, выбирает порт коммутации и после этого
посылает в него фрейм. Сквозной (cut-through). Коммутатор считывает во фрейме только
адрес назначения и после выполняет коммутацию. Этот режим
уменьшает задержки при передаче, но в нем нет метода обнаружения
ошибок. Бесфрагментный (fragment-free). Этот режим является модификацией
сквозного режима. Передача осуществляется после фильтрации
фрагментов коллизий.
Возможности и
разновидности коммутаторов
Asotel Vector 1908G2D — управляемый коммутатор второго
уровня c чипсетом Broadcom — является отличным решением для
сетей доступа Fast Ethernet. Кроме 8 портов 10/100 Мбит/с он
имеет два гигабитных порта для поддержки высокоскоростных
или магистральных соединений локальных сетей. Один из
гигабитных портов может использоваться выборочно для
подключения витой пары или оптоволокна (благодаря наличию
разъема для модулей SFP). В зависимости от гигабитного
модуля расстояние соединения по оптоволокну может достигать
40 км.
Возможно удаленное управление коммутатором через SNMP, HTTP
и Telnet, а также консольное управление. Реализована
поддержка таких функций управления уровня 2: VLAN
(port-based/802.1Q), контроль скорости, конфигурация портов,
зеркалирование портов, статистика по портам, безопасность
802.1x, QoS функции, IGMP snooping.
|
|
Популярность
Internet и корпоративных сетей intranets привела к
значительному росту уровня сетевого трафика. За счет доступа
пользователей к удаленным ресурсам и серверам потоки трафика
становятся все менее локальными. Увеличение потока данных и
делокализация трафика ведут к перегрузке маршрутизаторов.
Для решения возникших задач большинство производителей
сетевого оборудования пытаются решить задачу коммутации на
сетевом уровне (уровень 3). Коммутация на сетевом уровне
сможет обеспечить сочетание разумности маршрутизаторов и
скорости коммутаторов.
Уровнем 3 называют сетевой уровень (network layer) модели
OSI. На этом уровне маршрутизаторы выполняют свои функции на
основе информации об адресах, используемой сетевыми
протоколами типа IP и IPX. Традиционные коммутаторы работают
на уровне 2 (уровень канала данных - data-link layer),
рассылая пакеты на основе физических адресов сетевых
устройств (VFC-адресов). Добавляя в коммутаторы средства
работы с адресами сетевого уровня, производители сетевого
оборудования создают устройства, часто называемые
коммутаторами третьего уровня (layer-3 switch).
За время разработки таких устройств сложилось три основных
варианта коммутации на уровне 3, поддерживаемые разными
производителями и практически несовместимые между собой
маршрутизирующие коммутаторы (routing switches), коммутаторы
потоков (flow switching) и коммутирующие маршрутизаторы (switched
routing).
Традиционная маршрутизация
|
 |
Расчет
маршрута и обработка пакетов полностью осуществляется
программами уровня 3 (сетевой уровень модели OSI). После
принятия решения о маршрутизации пакеты передаются
аппаратным интерфейсам уровня 2. Для обмена информацией
о маршрутизации используются стандартные протоколы.
Маршрутизирующие коммутаторы
Маршрутизирующие коммутаторы похожи на традиционные
маршрутизаторы и определяют путь передачи на основе
информации, хранящейся в заголовке 3 уровня для каждого
пакета. Для маршрутизирующих коммутаторов характерны
высокая производительность при небольшой цене,
достигаемые за счет снижения числа функций и переноса
большинства операций на уровень специализированных
микросхем. В корректно разработанных маршрутизирующих
коммутаторах функции маршрутизации полностью
интегрированы в коммутатор и пакеты в процессе обработки
не покидают узел коммутации (switching fabric).
Маршрутизирующие коммутаторы хорошо принимают
администраторы сетей за их простоту (подобно
традиционным коммутаторам), сочетающуюся с функциями
традиционных маршрутизаторов. Маршрутизирующие
коммутаторы должны обеспечивать поддержку большинства
протоколов маршрутизации. Однако, прежде чем купить
такой коммутатор, нужно проверить соответствие его
возможностей вашим задачам. Обычно дополнительные
функции, такие как поддержка добавочных протоколов
(таких, как AppleTalk и IPX), сложных протоколов
маршрутизации (IP Multicast и OSPF) и средств
обеспечения безопасности (шифрование и брандмауеры),
достаточно сильно снижают производительность
маршрутизирующих коммутаторов.
|
 |
Алгоритм
работы маршрутизирующих коммутаторов можно понять из
приведенного рисунка. Выбор пути происходит на уровне 3
и выполняется программными (чаще) или аппаратными
средствами, а обработка пакетов осуществляется с помощью
коммутатора на уровне 2. Для обмена данными о
маршрутизации маршрутизирующие коммутаторы используют
стандартные протоколы маршрутизации.
Ascend, Bay Networks, Cisco, Extreme, Foundry, IBM,
Intel и Madge анонсировали свои маршрутизирующие
коммутаторы. Каждое из анонсированных устройств
обеспечивает снятие нагрузки с перегруженных
маршрутизаторов сегодняшних сетей. Во многих случаях
устройства могут сосуществовать с установленным
оборудованием. маршрутизирующие коммутаторы
предназначены в первую очередь для корпоративных
приложений, хотя GRF IP Switch компании Ascend
позиционируется как устройство для ISP и магистральных
сетей.
Производители часто предлагают дополнительные новшества,
обеспечивающие упрощение администрирования, связанного с
функциями маршрутизации в маршрутизирующем коммутаторе.
например, SwitchNode (Accellar 100) от Bay Networks
поддерживает режим IP Autolearn, позволяющий коммутатору
изучить топологию сети за счет мониторинга трафика ARP
(Address Resolution Protocol - протокол разрешения
адресов). ARP используется сетевыми устройствами для
отображения адресов сетевого уровня на уровень
аппаратных адресов. В сети с достаточно простой
топологией маршрутизирующий коммутатор Switch Node можно
установить без предварительной настройки и без изменения
настроек существующих маршрутизаторов.
Коммутаторы потоков
Базовой концепцией коммутации потоков является
обнаружение продолжительных потоков данных между двумя
IP-узлами. Когда поток определяется программами уровня
3, между конечными точками организуется коммутируемое
соединение и в дальнейшем поток управляется работающим
на уровне 2 оборудованием (традиционные коммутаторы).
Копирование файлов или Web-страницы с графикой являются
типичными случаями возникновения потоков. Трафик, не
удовлетворяющий требованиям потока, маршрутизируется
традиционными способами. Использование коммутации
потоков более эффективно в среде ATM или frame-relay,
где потоки отображаются на виртуальные устройства или
пути. Основной сферой применения коммутации потоков
являются магистрали ISP или корпоративных сетей.
|
 |
В сфере
коммутации потоков основными разработчиками являются ATM
Forum и компания Ipsilon. ATM Forum недавно предложил
стандарт для коммутации потоков в ATM - MPOA (Multiprotocol
Over ATM), но дальнейшая разработка этого стандарта была
задержана. Воспользовавшись этой задержкой, компания
Ipsilon предложила свой вариант коммутации потоков,
называемый IP switching (коммутация IP). Компания
Ipsilon разработала линейку коммутаторов IP,
использующих протокол IFMP (Ipsilon Flow Management
Protocol) для обмена информацией о потоках. Ipsilon
расширяет поддержку своей платформы и поощряет других
производителей, поддерживающих IFMP в своих
маршрутизаторах и коммутаторах.
Расчет маршрутов и обработка пакетов осуществляются на
уровне 3 (как в традиционных маршрутизаторах) до тех пор,
пока не будет идентифицирован поток. После обнаружения
потока обработка трафика переносится на уровень 2 (коммутатор).
Коммутаторы потоков используют протоколы управления
потоками для обмена информацией о потоках в сети.
Коммутирующие маршрутизаторы
Конечной целью и наиболее сложным этапом является
разработка схем, снижающих нагрузку на маршрутизаторы и
позволяющих коммутаторам выполнять операции по рассылке
пакетов без проведения сложных расчетов маршрута.
Архитектура коммутации тегов (Tag Switching) компании
Cisco является хорошим примером коммутирующих
маршрутизаторов. Для реализации коммутации тегов
маршрутизаторы Cisco сделаны программно-модернизируемыми,
чтобы можно было использовать режимы tag-edge router или
tag switch в зависимости от местоположения
маршрутизатора в сети. Tag-edge router представляет
собой маршрутизатор, расположенный на границе сети и
добавляющий адресную информацию в форме идентификаторов
фиксированной длины, называемых тегами, в пакеты,
передаваемые в сеть. Tag switch представляет собой
маршрутизатор или коммутатор, устанавливаемый внутри
сети и использующий теги для определения маршрута для
передачи каждого пакета через сеть. использование тегов
снижает сложность декодирования адресной информации и
просмотр таблиц при рассылке пакетов. Компания Cisco
разработала также протокол TDP (Tag Distribution
Protocol), позволяющий маршрутизаторам и коммутаторам
распространять информацию о тегах, и предложила его IETF
для стандартизации.
IBM MSS (Multiprotocol Switched Services) и 3Com FastIP
поддерживают схемы, основанные на маршрутизации с
использованием протокола NHRP (Next Hop Resolution
Protocol). Используя NHRP, сетевой клиент запрашивает
маршрут от назначенного сервера маршрутизации (route
server). Если сервер маршрутизации может определить
получателя, организуется коммутируемое соединение между
конечными точками, за счет чего маршрутизатор просто
устраняется из пути передачи пакетов. Для поддержки NHRP
в сетевых компьютерах (networked PC) MSS требует
дополнительных программ, а FastIP использования с
компьютерах сетевых адаптеров 3Com.
|
 |
Большинство
схем коммутируемой маршрутизации разработано для
устранения пробок в сложных IP-сетях (сети ISP и
магистральные сети). Пытаясь обеспечить использование
своих технологий в корпоративных сетях, компании Ascend,
IBM и 3Com согласились на совместное использование
технологий коммутации уровня 3.
Расчет маршрута и обработка пакетов осуществляется на
уровне 3 как в традиционных маршрутизаторах за
исключением тех случаев, когда теги содержат информацию
о рассылке пакетов.
Применение
Коммутируемые технологии сетевого уровня еще слишком
молоды для того, чтобы определить наиболее эффективные
сферы применения каждой из них. Маршрутизирующие
коммутаторы обеспечивают простоту установки и
использования наряду с высокой интероперабельностью.
Поскольку устройства этого класса не используют новых
протоколов или стандартов, их легко установить в
существующие сети. Коммутаторы потоков и коммутирующие
маршрутизаторы используют патентованные технологии и
протоколы, поэтому их разработка и использование могут
быть ограничены.
Разделяемая среда передачи данных Ethernet была и
остается причиной обвинений этой технологии в
недостаточной стабильности и надежности. Отчасти это
действительно так - алгоритм CSMA/CD не обманешь
никакими программными решениями. И для преодоления этих
недостатков фирма Kalpana (впоследствии купленная Cisco)
в 1990 предложила технологию коммутации сегментов
Ethernet. Таким образом, разделяемая среда (домен
коллизий) не ограничивалась (с помощью мостов или
маршрутизаторов), а полностью исчезала.
Сказать, что это было принципиальное логическое
изобретение, нельзя. Работа основывалось на простом, но
в то время труднодостижимом технологическом фундаменте -
параллельной обработке поступающих кадров на разных
портах (мосты обрабатывают кадры последовательно, кадр
за кадром). Это особенность позволила коммутаторам
Kalpana передавать кадры независимо между каждой парой
портов, и реализовать на практике привлекательную идею
отказа от разделяемой среды.
Технологии Ethernet очень повезло, что коммутаторы
появились раньше, чем начала применяться технология АТМ.
У пользователей вовремя оказалась в наличии достойная
альтернатива, позволяющая получить существенный рост
качества сети с небольшими затратами. Для этого
требовалось лишь заменить концентраторы на коммутаторы,
или просто добавить последние в растущую сеть для
разделения сегментов. Огромное количество уже
установленного оборудования конечных узлов, кабельных
систем, повторителей и концентраторов сохранялось, что
давало колоссальную экономию по сравнению с переходом на
какую-либо новую технологию (например, АТМ).
Коммутаторы (подобно мостам) прозрачны для протоколов
сетевого уровня, маршрутизаторы их "не видят". Это
позволило не менять основную схему работы сетей между
собой.
Более того, в стремительном распространении коммутаторов
не последнюю роль сыграла простота их настройки и
установки. По умолчанию (без использования
дополнительных возможностей) это самообучающееся
устройство, его не обязательно конфигурировать.
Достаточно правильно подключить кабельную систему к
свитчу, а дальше он сможет работать без вмешательства
администратора сети, и при этом сравнительно эффективно
выполнять поставленную задачу.
В общем, сегодня можно с полной уверенностью сказать,
что коммутаторы - это самый мощный, универсальный,
удобный для ЛВС класс оборудования. В простейшем случае
(как было показано выше) это многопортовый мост
Ethernet. Но развитие технологии внесло так много
изменений в их свойства, что подчас основной принцип
работы тяжело увидеть за нагромождением полезнейших
технических возможностей.
Техническая реализация коммутаторов.
Техническая основа работы коммутатора достаточно проста,
и может быть выражена одним длинным предложением. Кадр,
которые попадает на его вход (source port), направляется
не на все активные порты (как это делает концентратор),
а только на тот, к которому подключено устройство с
МАС-адресом, совпадающим с адресом назначения кадра
(destination port).
Соответственно, первый вопрос, который приходится решать
- соответствие портов коммутатора подключенным
устройствам (вернее, их MAC-адресам). Для работы
используется специальная таблица соответствия
(content-addressable memory, САМ), которую коммутатор
формирует в процессе "самообучения" по следующему
принципу: стоит порту получить ответ от устройства с
физическим адресом Х, как в CAM таблице появляется
соответствующая строчка соответствия.
Кадры с адресом назначения (source address, SA),
имеющимся в таблице, направляются на соответствующий
порт. При этом кадр, предназначенный всем узлам, или
имеющий неизвестный коммутатору адрес назначения
(destination address, DA), направляется на все активные
порты. В процессе работы физические адреса подключенного
оборудования могут меняться. При этом в таблице
появляется новая запись. Если в ней отсутствует
свободное место, стирается самая старая запись (принцип
вытеснения).
Так как скорость выборки нужного адреса напрямую зависит
от размера САМ таблицы, неиспользованные в течении
продолжительного промежутка времени записи автоматически
удаляются.
Однако такой упрощенный алгоритм жестко (без изменений)
действует только в неуправляемых коммутаторах (Dumb).
Это недорогие, простые устройства, которые успешно
вытесняют хабы из ниши простейших сетей. Как правило они
имеют небольшое количество портов, "офисное" исполнение,
и не высокие технические характеристики. Возможность
управления администратором отсутствует.
Следующей ступенью развития стали настраиваемые
коммутаторы (Smart). В них, используя порт RS-232,
обычный Ethernet, или даже простейшую микро-клавиатуру,
администратор может менять многие важные
конфигурационные параметры, которые считываются затем
только один раз (при загрузке). Например, таким образом
можно блокировать механизм "самообучения" (составлять
статическую таблицу соответствия портов МАС-адресам),
устанавливать фильтрацию, виртуальные сети, задавать
скорость и многое другое.
Но самые большие возможности имеют управляемые
коммутаторы (Intelligent). Они имеют интерфейс к
полноценному процессору (точнее, компьютеру, поскольку
он имеет и свою память), который позволяет
контролировать работу и изменять параметры устройства
без перезагрузки. Так же появляется возможность в
реальном времени наблюдать за проходящими пакетами,
считать проходящий трафик, и т.п.
Однако, несмотря на огромное различие в уровне
возможностей (и стоимости), общий принцип остается
неизменным. Все узлы оказываются соединенными "отдельными"
каналами с полной полосой пропускания (если нет
одновременного обращения нескольких устройств к одному),
и могут работать не подозревая о существовании друг
друга. Единственную опасность для коммутируемой сети
представляют "бродкастовые" штормы, т. е. случаи
лавинообразно нарастающей перегрузки сети
широковещательными (бродкастовыми) кадрами. Однако,
во-первых, это возможно только в большох сетях (несколько
сотен узлов), во-вторых, большинство управляемых
коммутаторов позволяет легко решать и эту проблему за
счет разделения одной большой сети на несколько
виртуальных.
Соответственно, базовые свойства (и ограничения)
Ethernet (как разделяемой среды передачи данных) не
применимы к сети, построенной с использованием
коммутаторов. Коллизии отсутствуют, нет физического
обоснования понятия максимальной длины линии, и
максимального количества подключенных устройств.
Например, реально могут использоваться оптоволоконные
линии, передающие кадры Ethernet на сотни километров, а
локальные сети могут объединять сотни рабочих станций
или серверов.
Классификация коммутаторов.
Для определения порта (или портов) назначения,
процессору коммутатора необходимо для анализа иметь
доступ к заголовку кадра Ethernet. Соответственно, эти
данные нужно принять в буфер. Отсюда вытекает различие
коммутаторов по способу продвижения кадра:
на лету (cut-through);
с буферизаций (Store-and-Forward).
При коммутации "на лету", коммутатор может не помещать
приходящие кадры в буфер целиком. Запись их целиком
происходит только в случае, когда нужно согласовать
скорости передачи, занята шина, или порт назначения.
Таким образом, при большом объеме трафика большая часть
данных будет все равно в той или иной степени
буферизироваться.
Иначе говоря, коммутатор лишь анализирует адрес
назначения в заголовке пакета, и в соответствии с
САМ-таблицей (время задержки от 10-40 мкс) направляет
кадр в соответствующий порт. Штатной является ситуация,
когда кадр еще целиком не поступил на входной порт, а
его заголовок уже передается через выходной.
При методе полной буферизации (Store-and-Forward) кадр
записывается целиком, а лишь затем процессор порта
принимает решение о передаче (или фильтрации). Такой
путь имеет некоторые недостатки (большое время задержки),
и существенные достоинства, например, уничтожение
испорченного кадра, поддержка разнородных сетей. Большая
часть современных коммутаторов поддерживает именно такой
режим работы.
Наиболее сложные и дорогие модели имеют возможность
автоматической смены механизма работы коммутатора (адаптацию).
В зависимости от объема трафика, количества испорченных
кадров, и некоторых других параметров может быть
использован один из описанных режимов.
Кроме способа продвижения кадров, коммутаторы можно
разделить на группы по внутренней логической архитектуре.
коммутационная матрица;
многовходвая разделяемая память;
общая шина.
Коммутационная матрица. Наиболее быстрый способ, который
был реализован в первом промышленном коммутаторе. После
анализа заголовка входящего кадра процессором порта, в
соответствии с таблицей коммутации, в начало кадра
добавляется номер порта назначения. Затем кадр (вернее
сказать, номер порта назначения) попадал в двухмерную
матрицу логических переключателей, каждый из которых
управлялся определенным битом номера порта назначения.
Коммутационная матрица пытается установить путь до порта
назначения. Если это возможно, последовательно проходя
через переключатели, кадр оказывается в нужном исходящем
порту.
Если нужный исходящий порт занят (например, соединен с
другим входящим портом), кадр остается в буфере входного
порта, а процессор ожидает возможности образования
коммутационной матрицей нужного пути.
Важной особенностью является то, что коммутируются
физические каналы. Таким образом, если несколько кадров
должны пройти на один и тот же порт, или через один "общий"
переключатель матрицы, сделать это они могут только
последовательно. Кроме этого, к недостаткам можно
отнести быстро нарастающую с увеличением числа портов
сложность. По сути, можно сказать, что решение плохо
масштабируемо, и сейчас применяется очень редко (хотя
еще есть варианты использования многоступенчатых
коммутаторов).
Многовходовая разделяемая память. В этом случае входные
и выходные блоки соединяются через общую память,
подключением которой к блокам которой управляет
специальный менеджер очередей выходных портов. Он же
организует в памяти несколько (обычно по числу портов)
очередей данных.
Входные блоки передают менеджеру запросы на запись
данных (части кадров) в очередь нужного исходящего порта.
Системы такого типа достаточно сложны, требуют дорогой
быстродействующей памяти, но не обладают при этом
серьезными преимуществами перед более простой шинной
архитектурой. Поэтому, широкого практического применения
системы с разделяемой памятью не нашли.
Архитектура с общей шиной. Название говорит само за себя
- для связи процессоров портов используется одна шина.
Для сохранения высокой производительности ее скорость
должна быть по крайней мере в C/2 (где C - сумма
скоростей всех портов) раз больше, чем скорость
поступления данных в порт коммутатора.
Рис. 10.5.
Коммутация с использованием общей шины
Кроме этого, много зависит от способа передачи данных по
шине. Понятно, что кадр целиком передавать нежелательно,
так как в это время остальные порты будут простаивать.
Что бы обойти это ограничение, обычно применяют метод,
сильно похожий на АТМ. Данные разбиваются на небольшие
блоки (по несколько десятков байт), и передаются "почти"
параллельно сразу между несколькими портами.
Таким образом, эта архитектура реализует метод временной
коммутации… частей кадров (можно назвать их по аналогии
с АТМ ячейками). Решение легко масштабируется,
достаточно просто, надежно, и в настоящий момент
безусловно доминирует на рынке.
Еще один признак, по которому можно классифицировать
коммутаторы - это область применения. С некоторой долей
условности, можно выделить:
настольные коммутаторы;
коммутаторы для рабочих групп.
магистральные коммутаторы;
Настольные коммутаторы. Предназначены для работы с
небольшим числом пользователей, и могут служить хорошей
заменой концентраторов 10/100Base-T. Обычно имеют 8-16
портов, небольшие габариты, настольное или "настенное"
исполнение. Такие коммутаторы, как правило, не имеют
возможности управления, поэтому просты в установке и
обслуживании (хотя ценой отказа он некоторых полезных
возможностей).
|
|
|
|