Учебное пособие предназначено для студентов очной и заочной форм обучения специальности 351400 «Прикладная информатика ( в сфере сервиса )»

Вид материалаУчебное пособие

Содержание


9. Основные типы аппаратных сетевых устройств физического и канального уровней 9.1. Сетевые адаптеры
9.3. Мосты и коммутаторы
Широковещательный домен
Удаленный мост
Сквозной коммутатор
Коммутатор с промежуточной буферизацией
Скорость продвижения
Пропускная способность
Задержка передачи кадра
Тип коммутации
Максимальная емкость адресной таблицы
Внутренняя буферная память
Подобный материал:
1   ...   27   28   29   30   31   32   33   34   ...   45

9. Основные типы аппаратных сетевых устройств физического и канального уровней




9.1. Сетевые адаптеры



Адаптер (плата, карта) сетевого интерфейса (Net­work Interface Card, NIC) или сетевой адаптер устанавливается в слот расширения материнской платы компьютера, а в настоящее время обычно бывает встроенным в интегрированную микросхему материнской платы. Подключение адаптера к сети осуществляется через специальный разъем для кабеля или с помощью беспроводного соединителя. Сетевой адаптер и его драйвер ответственны за реализацию большинства функций протоколов канального и физического уровней, необходимых для связи между компьютером и сетью.

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

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

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

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

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

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

9.2. Концентраторы



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

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

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

9.3. Мосты и коммутаторы



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

В общем случае деление сети на логические сегменты повышает производительность сети (за счет разгрузки сегментов).

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

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

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

Устройствами логической структуризации сетей, работающих на канальном уровне стека сетевых протоколов, являются так называемые мосты (bridge) и коммутаторы (switch, switching hub).

Мост – это физическое двухпортовое устройство, применяемое для связи сегментов сети. С его помощью можно объединить две ЛВС или разделить одну ЛВС на два сегмента. Мосты работают в так называемом беспорядочном режиме, т. е. считывают и обрабатывают все пакеты, передаваемые по сегменту сети. Этим они отличаются от сетевых адаптеров, которые считывают в каждом пакете целевой адрес и обрабатывают только пакеты, адресованные данному компьютеру. Поскольку мост функционирует на канальном уровне, он способен интерпретировать информацию в заголовке протокола канального уровня. Пакеты данных попадают в мост через один из портов, затем мост считывает в заголовке каждого пакета адрес целевой системы и решает, как обрабатывать данный пакет. Этот процесс называется фильтрацией пакетов. Если адреса компьютера-отправителя и компьютера-получателя принадлежат разным сегментам, мост передает пакет через второй порт. Если же адреса отправителя и получателя принадлежат одному сегменту, пакет игнорируется.

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

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

Широковещательный домен (broadcast domain ) – другое важное понятие технологии сетевого соединения с помощью мостов. Широковещательное (broadcast) сообщение представляет собой пакет с особым адресом назначения, в соответствии с которым это сообщение читают и обрабатывают все получившие его компьютеры. Различают также узковещательные (unicast) сообщения, адресованные одному компьютеру сети, и многоадресные (multicast) сообщения, адресованные нескольким (но не всем) компьютерам. Область широковещания или широковещательный домен – это группа компьютеров, получающих широковещательные сообщения, отправленные любым компьютером из группы.

Широковещательная передача – важная часть функционирования сети. Например, компьютеры определяют положение в ЛВС конкретной системы, передавая широковещательное сообщение. По ответному сообщению система-отправитель устанавливает аппаратный адрес компьютера и далее отправляет ему нужные пакеты уже как узковещательные сообщения.

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

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

Обычный мост, связывающий однотипные сетевые сегменты в пределах одного помещения, называется локальным мостом (local bridge). Это простейший мост: он не модифицирует данные в пакетах, а про­сто считывает адреса в заголовках протоколов канального уровня и передает или не передает пакеты дальше. Для объединения разнородных и удаленных друг от друга сегментов используются мосты-трансляторы и удаленные мосты.

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

Удаленный мост (remote bridge) с помощью технологий глобальных сетевых связей соединяет два сетевых сегмента, которыерасположены на значительном расстоянии друг от друга. Связь может осуществляться с помощью модемов, выделенной телефонной линии или других средств.

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

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

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

Двумя основными типами коммутаторов являются коммутаторы сквозные (cut-througf) и с промежуточной буферизацией (store-and-forward).

Сквозной коммутатор (или коммутатор с так называемой коммутацией «на лету») передает пакеты через соответствующий порт без дополнительной обработки, то есть немедленно, как только они получены, считывая адрес целевой системы в заголовке протокола канального уровня. Коммутатор начинает передачу пакета, даже не дожидаясь завершения его приема. Как правило, в сквозных коммутаторах используется аппаратный компонент, состоящий из набора схем ввода-вывода, который позволяет данным поступать в коммутатор и покидать его через любой порт (подробнее о схемах построения коммутаторов см. в разделе 13). Такие коммутаторы сводят к минимуму так называемое время ожидания (latency), т. е. время, затрачиваемое коммутатором на обработку пакетов.

Коммутатор с промежуточной буферизацией дожидается завершения приема пакета и лишь потом отправляет его по назначению. Различают коммутаторы с общей памятью (shared-memory switch), то есть с общим буфером для хранения данных всех портов, и коммутаторы с шинной архитектурой (bus architecture switch) – с отдельными буферами для каждого порта, соединенными шиной. Пока пакет хранится в буферах, коммутатор пользуется этой возможностью, чтобы проверить данные. Кроме того, коммутатор отслеживает появление других проблем, присущих конкретному протоколу канального уровня, которые приводят к формированию дефектных кадров. Эта проверка увеличивает время ожидания, а дополнительные функции повышают стоимость коммутаторов с промежуточным хранением по сравнению с коммутаторами сквозного типа.


9.4. Характеристики производительности коммутаторов

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

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

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

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

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

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

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

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

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

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

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

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

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

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