Повторители, мосты, мультиплексоры, переключатели и маршрутизаторы
Семёнов Ю.А. (ГНЦ ИТЭФ), book.itep.ru
На физическом уровне пакет представляет собой цуг импульсов, распространяющихся по коаксиальному кабелю, скрученной паре или оптическому волокну. За счет дисперсии, частичным отражениям от точек подключения и поглощению в среде импульсы в пакете "расплываются" и искажаются (ухудшается отношение сигнал/шум), это является одной из причин ограничения длин кабельных сегментов. Для преодоления этих ограничений вводятся сетевые повторители (repeater). Повторитель воспринимает входные импульсы, удаляет шумовые сигналы и передает вновь сформированные пакеты в следующий кабельный сегмент или сегменты. Никакого редактирования или анализа поступающих данных не производится. Задержка сигнала повторителем не должна превышать 7,5 тактов (750нсек для обычного Ethernet). Повторители могут иметь коаксиальные входы/выходы, AUI-разъемы для подключения трансиверов или других аналогичных устройств, или каналы для работы со скрученными парами.
Рис. 4.1.1.4.1 Схема сетевого повторителя
Все входы/выходы повторителя с точки зрения пакетов эквивалентны. Если повторитель многовходовый, то пакет пришедший по любому из входов будет ретранслирован на все остальные входы/выходы повторителя. Чем больше кабельных сегментов объединено повторителями, тем больше загрузка всех сегментов. При объединении нескольких сегментов с помощью повторителя загрузка каждого из них становится равной сумме всех загрузок до объединения. Это справедливо как для коаксиальных кабельных сегментов, так и для повторителей, работающих со скрученными парами (хабы - концентраторы). Некоторые повторители контролируют наличие связи между портом и узлом (link status), регистрируют коллизии и затянувшиеся передачи (jabber - узел осуществляет передачу дольше, чем это предусмотрено протоколом), выполняют согласование типа соединения (autonegotiation). В этом случае они обычно снабжены SNMP-поддержкой.
Для блокировки размножения пакетов и нежелательных транзитов преодоления сетевые мосты или переключатели.
Мост соединяет два сегмента сети, при инициализации он изучает списки адресов устройств, подсоединенных к каждому из сегментов. В дальнейшем мост записывает в свою память эти списки и пропускает из сегмента в сегмент лишь транзитные пакеты. Существуют мосты, которые оперируют с физическими и с IP-адресами (cм. стандарт IEEE 802.1d).
Рис. 4.1.1.4.2. Схема сетевого моста
Мост является активным устройством, которое способно адаптироваться к изменениям в окружающей сетевой среде. При этом пакеты, отправленные из сегмента А и адресованные устройству, которое подключено к этому же сегменту, никогда не попадут в сегмент Б и наоборот. Через мост проходят лишь пакета, отправленные из сети А в Б или из Б в А.
Функцию моста с определенными скоростными ограничениями может выполнять и обычная ЭВМ, имеющая два сетевых интерфейса и соответствующее программное обеспечение. Мосты при разумном перераспределении серверов и рабочих станций по сетевым сегментам позволяют выровнять и даже эффективно снизить среднюю сетевую загрузку. Когда на один из входов моста приходит пакет, производится сравнение адреса получателя с содержимым внутренней базы данных. Если адрес в базе данных отсутствует, мост посылает широковещательный запрос в порт, противоположный тому, откуда получен данный пакет с целью выяснения местоположения адресата. Понятно, что появление в субсетях a и Б двух объектов с идентичными адресами ни к чему хорошему не приведет. При поступлении отклика вносится соответствующая запись в базу данных. Параллельно анализируется и адрес отправителя и, если этот адрес в базе данных отсутствует, производится его запись в банк адресов соответствующего порта. В базу данных записывается также время записи адреса в базу данных. Содержимое базы данных периодически обновляется. К любой подсети может вести несколько путей, но для нормальной работы мостов и переключателей все пути кроме одного должны быть заблокированы. Функциональная схема работы моста показана на рис. 4.1.1.4.3. Сети, между которыми включается мост, не обязательно должны работать согласно идентичным протоколам.
Возможны мосты между Ethernet и Token Ring или между Ethernet и ATM.
Рис. 4.1.1.4.3 Блок-схема работы сетевого моста
Мост, имеющий более двух портов, называется переключателем. Первый переключатель был разработан фирмой Калпане в 1991 году. Иногда переключатели называются маршрутизаторами, тем более что некоторые из них поддерживают внутренние протоколы маршрутизации (например, RIP). Переключатели имеют внутреннюю параллельную магистраль очень высокого быстродействия (от десятков мегабайт до гигабайт в сек.). Эта магистраль позволяет переключателю совместить преимущества повторителя (быстродействие) и моста (разделение информационных потоков) в одном устройстве. Схемы реализации переключателей варьируются значительно, каких-либо единых стандартов не существует. Алгоритм работы с адресами здесь тот же, что и в случае мостов. На рис. 4.1.1.4.4 приведена схема 8-входового переключателя. В переключателе все входы идентичны, но внешняя информация, записанная в их память, делает входы неэквивалентными. Определенные проблемы возникают, когда к одному из входов переключателя подключен сервер, с которым работают пользователи подключенные к остальным входам. Если все ЭВМ, подключенные к переключателю, одновременно попытаются обратиться к серверу, переключатель перегрузится и все каналы будут на некоторое время блокированы (будет послан сигнал перегрузки - jam). При данной схеме вероятность таких событий значительна, так как несколько каналов с пропускной способностью 10 Мбит/с работают на один общий канал с той же полосой пропускания. Для преодоления проблем этого рода следует распределять нагрузки между портами переключателя равномерно, а также подключать серверы через полнодуплексные каналы. Полнодуплексные каналы полезны и для соединения переключателей между собой. Современные переключатели имеют много различных возможностей - SNMP поддержка, автоматическая настройка быстродействия и определения типа соединения (дуплексная/полудуплексная). Имеется возможность внешней загрузки программы работа переключателя.
Способы проверки производительности переключателей описаны в документах RFC-1242 и RFC-1944 (тесты Бреднера, см. и www.tolly.com).
Рис. 4.1.1.4.4. Схема 8-входового сетевого переключателя
Существуют переключатели, работающие в режиме “на пролет” (cut through). Здесь первые биты пакета поступают на выход переключателя, когда последующие еще только приходят на вход. Задержка в этом случае минимальна, но переключатель пропускает через себя пакеты, поврежденные в результате столкновений. Альтернативой такому режиму является передача через буферную память (схема передачи SAF - Store And Forward). Поврежденные пакеты в этом режиме отбрасываются, но задержка заметно возрастает. Кроме того, буферная память должна иметься на всех входах (или общая многопортовая). При проектировании сетей следует иметь в виду, что переключатели превосходят маршрутизаторы по соотношению производительность/цена.
При проектировании локальной сети следует учитывать то обстоятельство, что узлы с самым напряженным трафиком должны располагаться как можно ближе к повторителю. В этом случае среднее число коллизий в единицу времени будет ниже. По этой причине сервер должен располагаться как можно ближе к повторителю или другому сетевому устройству (см. рис. 4.1.1.4.6).
Схема внутренних связей переключателя может отличаться от приведенной на рис. 4.1.1.4.4 и иметь конфигурацию, показанную на рис. 4.1.1.4.5. Привлекательность такой схемы заключается в возможности реализации обмена по двум непересекающимся направлениям одновременно (См. LAN. Журнал сетевых решений, май 1998, том 4, N5, стр 21. Дмитрий Ганжа). От разделяемых к коммутируемым сетям). При этом эффективная пропускная способность многопортового переключателя может в несколько раз превосходить полосу пропускания сети, например, 10 Мбит/с.
Рис. 4.1.1.4.5. Вариант схемы внутренних связей переключателя.
Рис. 4.1.1.4.6 Схема подключения сервера к переключателю
При использовании в сети большого числа мостов и/или переключателей может сформироваться топология связей, когда от одного сегмента к другому пакет может попасть более чем одним путем (см.
рис. 4.1.1.4.7). Приведенная на рисунке схема неработоспособна и некоторые связи должны быть ликвидированы. В данном примере проблема может быть решена удалением мостов BR-2 и BR-3 или разрывом связей, помеченных символом “X”.
Проблему ликвидации связей, способных привести к зацикливанию, решает протокол
STP (Spanning Tree Protocol; алгоритм предложен Пёлманом в 1992 году), который автоматически блокирует некоторые соединения, а в случае недоступности основного пути открывает эти заблокированные соединения, обеспечивая высокую надежность сети. STP является частью протокола мостов IEEE 802.1d (1990г).
При использовании протокола STP каждой связи присваивается при конфигурации определенный вес (чем меньше, тем выше приоритет). Мосты периодически рассылают специальные сообщения (BPDU - Bridge Protocol Data Unit), которые содержат коды их уникальных идентификаторов, присвоенные им при изготовлении. Мост или переключатель с наименьшим значением такого кода становится корневым ("корень дерева"). Затем выявляется наикратчайшее расстояние от корневого моста/переключателя до любого другого моста в сети. Граф, описывающий дерево наикратчайших связей, и является "расширяющимся деревом". Такое дерево включает все узлы сети, но необязательно все мосты/переключатели. Этот алгоритм функционирует постоянно, отслеживая все топологические изменения.
Современные мосты позволяют создавать виртуальные субсети (VLAN), увеличивающие сетевую безопасность.
VLAN позволяет ограничить зону распространения широковещательных пакетов, улучшая эксплуатационные характеристики сети в целом, смотри стандарт IEEE 802.1q. Здесь предусмотрены уровни конфигурации, распространения/разрешения и отображения. На уровне конфигурации используется протокол регистрации атрибутов GARP и основной протокол регистрации GVRP (служит для уведомления других переключателей о членстве в VLAN. Уровень распространения/разрешения задает правила присвоения идентификаторов входным пакетам (VID входного порта), и определяет выходные порты, куда пакет может быть доставлен.
Значение VID для VLAN должно быть уникальным. VLAN на уровне L2 может включать в себя несколько переключателей, при этом транспортировка пакета по VLAN будет определяться значением VID. Принадлежность VLAN определяется с помощью сообщений GVRP, или конфигурируется вручную. При добавлении к пакету метки VID контрольная сумма CRC должна быть пересчитана. Самые продвинутые VLAN могут разделять трафик по классам обслуживания
CoS (Class of Service). В этом случае в каждом выходном порту переключателя формируется несколько очередей, по одной для каждого значения CoS (смотри ).
Рис. 4.1.1.4.7. Пример реализации алгоритма "расширяющееся дерево"
В стандарте IEEE 802.1p предусмотрено разделение трафика по приоритетам (CoS). В IEEE 802.1q предусмотрено 8 уровней приоритета трафика. Данная технология была реализована в сети 100VG-AnyLan (IEEE 802.12), где были предусмотрены очереди с высоким приоритетом (HPQ). 3-битовые коды CoS присваиваются пользователем. Поле CoS является частью 32-битовой метки пакета в стандарте 802.1q. Значения кодов CoS перечислены в таблице ниже.
Таблица классов трафика
CoS (IEEE 802.1q)
Код приоритета пользователя |
Класс приоритета трафика |
111 | Критически важный для сети <7> |
110 | Голосовой интерактивный <6> |
101 | Мультимедийный интерактивный <5> |
100 | Мультимедийный потоковый <4> |
011 | Важный для дела <3> |
010 | Стандартный <2> |
001 | Фоновый <1> |
000 | Наинизший <0> |
VLAN могут строиться согласно протоколу IEEE 802.3ac (если имеющееся оборудование его поддерживает). Формат кадра этого протокола показан на рис. 4.1.1.4.8. Кадр при попадание во входной интерфейс VLAN снабжается 4-октетной меткой, которая анализируется коммутаторами 802.1q. Эта метка размещается в заголовке кадра между полями адреса отправителя и длины кадра (см. рис.). Когда кадр покидает VLAN, метка из кадра удаляется. В остальных отношениях форматы кадров 802.3 и 802.3ас совпадают.
Рис. 4.1.1.4.8. Формат кадра уровня L2 в случае использования протокола 802.3ас
Некоторые современные мосты используют так называемую маршрутизацию отправителя (source routing). Такая маршрутизация предполагает, что отправитель знает, находится ли адресат в пределах локальной сети и может оптимально определить путь доставки. При посылке кадра другой сети отправитель устанавливает старший бит своего адреса равным единице. Одновременно в заголовке кадра прописывается весь маршрут. Каждой сети присваивается 12-битовый идентификатор, а каждому мосту ставится в соответствие 4-битовый код, уникальный в контексте данной сети. Это означает, что мосты в пределах одной сети должны иметь разные идентификаторы, но их коды могут совпадать, если они находятся в разных сетях. Мост рассматривает только кадры с единицей в старшем бите адреса места назначения. Для этих кадров просматриваются коды сети в списке, записанном в заголовке. Если в списке содержится код, совпадающий с тем, который характеризует сеть, где находится мост, кадр переадресуется в эту сеть. Реализация алгоритма может осуществляться программно или аппаратно. Если путь до места назначения неизвестен, отправитель генерирует специальный пакет, посылаемый широковещательно (discovery frame) и достигающий всех мостов и всех субсетей. Когда приходит отклик от адресата, мосты записывают его идентификатор, а первичный отправитель фиксируют маршрут до адресата. Данный алгоритм достаточно прост, но сопряжен с лавинным размножением исследовательских" пакетов особенно в случае, когда смежные сети соединяются через несколько мостов/переключателей.
Следующим шагом в направлении развития технологии виртуальных локальных сетей является протокол
IEEE 802.1Q (1998 год). Так как здесь приходится иметь дело с Ethernet, где нет возможностей ввести дополнительные поля, например, поле идентификатора VLAN, задача достаточно деликатна. Нельзя забывать о сотнях миллионах владельцах сетевых карт... Одним из возможных решений является подход, реализованный в протоколе коммутации кадров по меткам (см. статью ). К счастью поле идентификатора VLAN должно использоваться переключателями и маршрутизаторами, а не ЭВМ пользователей.
Если сетевая карта не формирует идентификатор VLAN, он должен быть сформирован первым встретившимся переключателем или маршрутизатором. Выходной переключатье или маршрутизатор VLAN должны удалять эти идентификаторы. Эффективность технологии виртуальных локальных сетей будет много выше, когда стандарт 802.1Q будет поддерживаться сетевыми картами ЭВМ. Маршрутные таблицы в переключателях формируются автоматически с привлечением алгоритма Перлмана (описан в стандарте 802.1D).
Рис. 4.1.1.4.9. Формат кадра протокола 802.1q
Поле идентификатор протокола VLAN (IDP VLAN) имеет длину два байта и содержит код 0х8100. Поскольку это число больше 1500, сетевые карты Ethernet будут интерпретировать его как тип, а не как длину. Как будет реагировать карта, неподдерживающая 802.1Q, получив такой кадр, сказать трудно. По этой причине это следует по возможности исключить. Структура полей флаг и длина представлена в нижней части рисунка. Поле идентификатор VLAN имеет длину 12 бит определяет, какой виртуальной сети принадлежит кадр. Поле приоритет (три бита) позволяет выделять трафик реального времени, трафик со средними требованиями и трафик, для которого время доставки не критично. Это открывает возможность использования Ethernet для задач управления и обеспечения качества обслуживания при транспортировке мультимедийных данных. Однобитовое поле CFI (Canonical Format Indicator) первоначально определял, прямой или обратный порядок байт используется. В настоящее время его функцией (=1) является указание того, что в поле данных содержится кадр 802.5.
Маршрутизатор отличается от переключателя тем, что поддерживает хотя бы один протокол маршрутизации. Существуют внутренние и внешние протоколы маршрутизации. Если маршрутизатор осуществляет связь данной автономной системы с другими автономными системами, его называют пограничным (border). Маршрутизатор же, который имеет только один внешний канал связи, в литературе часто называют gateway (входной порт или шлюз сети). Любой маршрутизатор может поддерживать в любой момент только один внутренний и один внешний протокол маршрутизации, выбор этих протоколов осуществляет администратор сети из имеющегося списка.
Маршрутизаторы представляют собой наиболее сложные сетевые устройства.
Главным достоинством маршрутизаторов в локальной сети является ограничение влияния потоков широковещательных сообщений. Обязательным компонентом маршрутизатора является таблица маршрутизации, которая формируется протоколом маршрутизации или сетевым администратором. По мере роста скорости каналов связи возростали требования к быстродействию внутренней шины этих аппаратов. На рис. 4.1.1.4.10. показана крайне упрощенная схема такого устройства.
Рис. 4.1.1.4.10. Схема обработки пакетов в маршрутизаторе
Минимальное расстояние между последовательными IP-адресами места назначения, которые маршрутизатор должен обработать, определяется IPG=96 бит-тактам (бт), МАС-заголовком (176 бт), и IP-заголовком (128 бт). При поле данных нулевой длины период следования IP-адресов может достигать 432 бит-тактов. Для гигабитного Ethernet это составляет 432 нсек. За это время маршрутизатор должен просмотреть 100Мбайтную маршрутную таблицу и принять решение, через какой из выходных портов рередать данный пакет.Необходимость гарантирования определенного качества обслуживания (QoS) ужесточают требования к системе буферизации (увеличивается число очередей). Таким образом, одной из самых сложных субсистем маршрутизатора является устройство буферизации пакетов.
В последнее время заметное распространение получил гибрид маршрутизатора и моста - brouter. Некоторые протоколы (например, NetBIOS) не допускают маршрутизации. Когда необходимо использовать такие протоколы совместно с TCP/IP, необходим brouter. Широко используются такие приборы в сетях Token Ring.
Особый класс образуют мультиплексоры/демультиплексоры, которые используют собственные протоколы и служат для предоставления общего канала большему числу потребителей. Эти устройства широко используются при построении сетей типа Интранет (корпоративные сети, где субсети разных филиалов разнесены на большие расстояния). Такие сети строятся на базе специальных выделенных каналов, а мультиплексоры позволяют использовать эти каналы для предоставления комплексных услуг: телефонной связи, передачи факсов и цифровой информации, экономя значительные средства.
Если перед вами стоит задача создания локальной сети с выходом в Интернет, вам нужно последовательно решить ряд проблем помимо финансовых. Должны быть сформулированы задачи, ради которых эта сеть создается, определена топология сети, число сегментов и характер их связей, число ЭВМ-участников, определен сервис-провайдер, или провайдеры, если вам нужно обеспечить более высокую надежность и живучесть сети. Вам надо оценить требуемую загрузку сегментов сети и внешних каналов связи, выбрать программную среду. После этого вы можете приступить к составлению списка необходимого оборудования и программного обеспечения. Если ваша сеть является оконечной и она имеет только один внешний канал связи, вам не нужен маршрутизатор и вы можете ограничиться ЭВМ-портом (gateway), которая должна иметь необходимый интерфейс. Внешним каналом может стать коммутируемая телефонная сеть, выделенная телефонная линия, оптоволоконный кабель или радиорелейный канал. Во всех перечисленных случаях вам будет необходим соответствующий модем.
Содержание раздела