Технологии коммутации (переключение) на уровне 2 реализованы аппаратно, т.е. для сетевой фильтрации используется МАС-адрес адаптера хоста. В коммутаторах установлены микросхемы ASIC (Application-Specific Integrated Circuits — специализированные интегральные микросхемы), которые формируют и обслуживают таблицы фильтрации. Допустимо считать коммутаторы уровня 2 многопортовыми мостами. Коммутаторы уровня 2 работают очень быстро, поскольку не пользуются информацией из заголовков сетевого уровня, а анализируют аппаратные адреса в кадре для решения о перенаправлении или об отбросе пакета.
Особенности коммутации на уровне 2:
- Аппаратная реализация мостов (MAC)
- Высокая скорость на линии
- Низкое запаздывание
- Низкая стоимость
Эффективность коммутации на уровне 2 связана с тем, что нет изменений в пакетах данных, а все модификации связаны только с инкапсулирующими пакеты кадрами, следовательно, процесс коммутации выполняется быстрее и менее подвержен ошибкам, чем маршрутизация. Коммутация на уровне 2 используется в связях между рабочими группами и в сегментации сети (деление на домены конфликтов). Этот процесс позволяет создавать понятные сетевые проекты с гораздо большим количеством сегментов, чем в традиционных сетях 10BaseT. Коммутация на уровне 2 увеличивает полосу пропускания для каждого пользователя, поскольку каждая связь (интерфейс) с коммутатором образует собственный домен конфликтов, поэтому расширяются возможности подключения устройств к такому интерфейсу.
Недостатки коммутации на уровне 2
Мы считаем коммутацию на уровне 2 аналогичной сети с мостами, поэтому должны столкнуться с теми же проблемами. Мосты эффективны только при правильном проектировании сети, т.е. при правильном делении на домены конфликтов. Правильным будет такой проект сети с мостами, где пользователи проводят не менее 80 % своего рабочего времени внутри собственных локальных сегментов. Мосты делят сеть на домены конфликтов, но вся сеть остается одним большим доменом широковещательных рассылок. Коммутаторы уровня 2 (мосты) не способны разделить домен широковещательных рассылок, поскольку возникнут проблемы с производительностью и проявятся ограничения на размер сети. Широковещательные и многоадресные рассылки совместно с низким временем конвергенции алгоритма покрывающего дерева могут привести к серьезным проблемам при расширении размера сети. Учитывая эти проблемы, нельзя считать, что коммутаторы уровня 2 способны заменить маршрутизаторы (устройства уровня 3) в объединенной сети.
Сравнение применения мостов с коммутацией в локальной сети
Коммутаторы уровня 2 реально являются мостами с большим числом портов. Однако между ними есть несколько важных отличий:
- Мосты реализованы программно, а коммутаторы — аппаратно, поскольку коммутаторы могут использовать микросхемы ASIC во время принятия решений о фильтрации данных.
- Мосты способны обслужить только один экземпляр покрывающего дерева на устройство, а коммутаторы — несколько покрывающих деревьев (см. ниже).
- Мосты содержат не более 16 портов, а коммутаторы могут иметь сотни портов.
Три функции коммутации уровня 2
Во время коммутации на уровне 2 выполняются три основные функции:
Изучение адресов Коммутаторы уровня 2 и мосты запоминают аппаратный адрес источника из каждого полученного интерфейсом кадра и хранят эту информацию в своей базе данных МАС-адресов.
Решение о пересылке или фильтрации Когда интерфейс получает кадр, коммутатор анализирует аппаратный адрес назначения и ищет в своей базе данных МАС-адресов нужный интерфейс.
Исключение зацикливания Если между коммутаторами для избыточности создано несколько путей, то могут появиться зацикленные пути передачи информации. Протокол STP (Spanning-Tree Protocol — протокол покрывающего дерева) позволяет исключить зацикливание пакетов в сети при сохранении избыточности.
Функции изучения адресов, решение о пересылке или фильтрации, а также исключение зацикливания подробно рассмотрены ниже.
Изучение адресов коммутации
После включения питания коммутатора его таблица фильтрации МАС-адресов пуста. Когда устройство передает, а интерфейс получает кадр, коммутатор помещает адрес источника в таблицу фильтрации МАС-адресов вместе с интерфейсом устройства. Коммутатор (переключатель) не делает самостоятельных решений о перенаправлении кадров, поскольку не знает о местонахождении устройства назначения. Если устройство отвечает и посылает кадр обратно, то коммутатор извлекает адрес источника из возвращенного кадра и помещает МАС-адрес в свою базу данных, причем связывает этот адрес с интерфейсом, получившим кадр. Теперь коммутатор имеет в таблице фильтрации два МАС-адреса и может установить соединение "точка-точка", а кадры будут перемещаться только между двумя известными коммутатору устройствами. Именно поэтому коммутаторы на уровне 2 работает эффективнее концентратора. В сетях с концентраторами кадры перенаправляются во все выходные порты устройства. Рис. 2.1 показывает процедуру построения базы данных МАС - адресов. На рисунке показаны четыре подключенные к коммутатору хоста. После включения питания корммутатора его таблица МАС-адресов пуста.
- Хост 1 посылает кадр хосту 3. МАС-адрес первого хоста равен 0000.8c01.llll, а МАС-адрес третьего хоста равен 0000.8c01.2222.
- Коммутатор принимает кадр в интерфейсе ЕО/1 и помещает в таблицу МАС-адресов адрес источника.
- В базе данных МАС-адресов еще нет адреса назначения, поэтому кадр передается во все интерфейсы.
- Хост 3 получает кадр и откликается на вызов хоста 1. Коммутатор принимает этот ответный кадр в интерфейсе Е2 и помещает аппаратный адрес источника второго кадра в базу данных МАС - адресов.
- Хосты 1 и 3 могут установить соединение "точка-точка", причем кадры будут пересылаться только между этими двумя устройствами. Хосты 2 и 4 не будут "видеть" подобные кадры. Если в течение определенного времени два устройства не будут откликаться во время передачи кадров через коммутатор, то он очистит соответствующие записи в своей базе данных, чтобы поддержать корректность таблицы адресов.
Решение о пересылке и фильтрации
Когда кадр попадает в интерфейс коммутатора, аппаратный адрес назначения сравнивается с базой данных перенаправления/фильтрации МАС-адресов. Если аппаратный адрес назначения известен и присутствует в базе данных, то кадр направляется только в один выходной интерфейс, предписанный в таблице базы данных. Коммутатор не транслирует кадр во все остальные интерфейсы, за исключением интерфейса, ведущего к точке назначения. Это сохраняет полосу пропускания в других сетевых сегментах, а сам процесс называется фильтрацией кадров (frame filtering).
Если же аппаратный адрес назначения не указан в базе данных МАС-адресов, то кадр отсылается в широковещательной рассылке по всем активным интерфейсам, за исключением интерфейса, в котором этот кадр был получен. Если одно из устройств откликается на широковещательную рассылку, происходит обновление базы данных МАС - адресов за счет добавления местоположения устройства (интерфейса).
Исключение зацикливания
Для связи между коммутаторами полезны избыточные соединения, которые помогают предотвратить отказ сети при выходе из строя отдельной связи. Несмотря на полезность избыточных соединений, они создают гораздо больше проблем, чем решают. Поскольку кадры одновременно передаются в широковещательных рассылках по всем дублирующим соединениям, могут возникать зацикливания, а также другие проблемы. Наиболее серьезные негативные последствия перечислены в списке:
1. Если не реализована схема исключения зацикливания, переключатель переполнит бесконечными широковещательными рассылками объединенную сеть. Это называется штормом широковещательных рассылок(broadcast storm). Рис. 2.2 показывает распространение в сети такого шторма. Заметим, что согласно рисунку кадры будут бесконечно пересылаться в широковещательных рассылках на физическом уровне объединенной сети.
2. Устройство может получить несколько копий одного кадра, поскольку кадры одновременно поступают из разных сегментов. Рис. 2.3 показывает одновременное поступление нескольких кадров из разных сегментов.
3. Таблица фильтрации МАС - адресов не может быть заполнена корректно, поскольку коммутатор получает ответы от одного устройства по нескольким связям. Вполне возможно, что коммутатор не сможет переслать кадр, поскольку будет постоянно обновлять таблицу фильтрации МАС - адресов на основе постоянно меняющихся сведений о местоположении аппаратного адреса источника. Этот процесс называется "хлопаньем" (thrashing) МАС - таблицы.
4. Наиболее опасной проблемой является генерация нескольких зацикленных путей в объединенной сети. Зацикливание одного пути порождает зацикливание в других путях по сети, а шторм широковещательных рассылок будет усиливаться до такой степени, что произойдет полная остановка в работе сети. Избежать проблем с зацикливанием помогает протокол (алгоритм) покрывающего дерева Spanning-Tree Protocol (см. ниже).
Протокол STP Spanning-Tree Protocol
Протокол покрывающего дерева Spanning-Tree Protocol (STP) был разработан компанией Digital Equipment Corporation (DEC), которая позже была приобретена и вошла в состав компании Compaq. Институт IEEE создал собственную версию протокола STP, названную 802.Id. Все коммутаторы Cisco работают по протоколу IEEE 802.Id алгоритма STP, который не совместим с исходной версией компании DEC. Основная задача протокола STP состоит в исключении зацикливания в сетях на уровне 2 (мосты и переключатели). Протокол STP предполагает постоянный мониторинг сети для нахождения всех связей и устранения зацикливания за счет отключения избыточных связей.
Действие алгоритма покрывающего дерева
Протокол STP позволяет найти все связи в сети и выделить среди них избыточные, чтобы отключить избыточные связи и тем самым устранить любые зацикливания в сети. Для этого производится выбор корневого моста (root bridge), который будет следить за сетевой топологией. В любой сети может быть только один корневой мост. Порты такого моста называются назначенными (designated port), поскольку работают в режиме состояния пересылки (forwarding-state). Порты пересылки состояния принимают и отправляют трафик.
Другие коммутаторы в сети называются некорневыми мостами (nonroot bridge) — см. рис. 2.4. Однако порты с небольшой стоимостью (которая определяется полосой пропускания связи) к корневому мосту называются корневыми портами (root port) и способны принимать и отправлять трафик.
Назначенными называются также порты, ведущие к корневому мосту и имеющие наименьшую стоимость. Другие порты моста являются неназначенными (nondesignated) и не способны принимать и отправлять трафик — этот режим называется блокировкой (blocking mode).
Выбор корневого моста
Исполняющие протокол STP коммутаторы и мосты обмениваются информацией о элементах данных протокола моста BPDU (Bridge Protocol Data Unit). Элементы BPDU передают сообщения о конфигурации в кадрах широковещательных рассылках. С помощью BPDU остальным устройствами пересылается идентификатор каждого моста. Идентификатор моста служит для выявления в сети корневого моста и назначенных корневых портов. Идентификатор имеет длину 8 байтов и содержит сведения о приоритете и МАС - адресе устройства. Приоритет всех устройств, исполняющих протокол STP по версии IEEE, равен 32 768. Чтобы определить корневой мост, анализируются идентификатор и МАС - адрес моста. Если два коммутатора или моста имеют одинаковое значение приоритета, то МАС - адрес служит для выявления устройства с наименьшим идентификатором. Например, если два коммутатора с именами А и В имеют приоритет по умолчанию 32 768, то используются МАС - адреса. Если МАС - адрес коммутатора А равен 0000.0с00.1111.1111, а МАС - адрес коммутатора В - 0000.0с00.2222.2222, то корневым мостом станет коммутатор А.
В показанном ниже листинге сетевого анализатора видна пересылка элементов BPDU от коммутатора серии 1900. По умолчанию элементы BPDU отсылаются каждые две секунды. Может показаться, что это сильно нагружает сеть, но мы имеем дело только с кадрами уровня 2, а не с пакетами на уровне 3. Можно заключить, что в листинге показаны кадры 802.2, поскольку только кадры формата 802.3 имеют поля DSAP и SSAP в заголовке LLC.
Flags: 0x80 802.3
Status: 0 x 00
Packet Length: 64
Timestamp: 19:33:18.726314 02/28/2000
802.3 Header
Destination: 01:80:c2:00:00:00
Source: 00:b0:64:75:6b:c3
LLC Length: 38
802.2 Logical Link Control (LLC) Header
Dest. SAP: 0x42 802.1 Bridge Spanning Tree
Source SAP: 0x42 802.1 Bridge Spanning Tree
Command: 0x03 Unnumbered Information
802.1 - Bridge Spanning Tree (покрывающее дерево моста по спецификации 802.1)
Protocol Identifier: 0
Protocol Version ID: 0
Message Type: 0 Configuration Message
Flags: 000000
Root Priority/ID: 0x8000 / 00:b0:64:75:6b:c0
Cost Of Path To Root: 0x00000000 (0)
Bridge Priority/ID: 0x8000 / 00:b0:64:75:6b:c0
Port Priority/ID: 0x80 / 0x03
Message Age: 0/256 seconds ( точно 0 с )
Maximum Age: 5120/256 seconds ( точно 20 с )
Hello Time: 512/256 seconds ( точно 2 с )
Forward Delay: 3840/256 seconds ( точно 15 с )
Extra bytes (Padding): ...... ... 0000000000000000
Frame Check Sequence : 0 x 2 e 006400
Получив реальные данные BPDU, можно узнать стоимость пути к корню. В листинге это значение равно нулю, поскольку коммутатор является корневым мостом. Стоимость пути мы рассмотрим ниже.
Выбор назначенных портов
Чтобы выявить порт или порты, используемые для коммуникаций с корневым мостом, нужно сначала определить стоимость пути (path cost). Стоимость в протоколе STP подсчитывается на основе суммы стоимостей участков, которые определяются полосой пропускания связи. В таблице 2.2 показаны типичные стоимости для разных сетей Ethernet.
Спецификация IEEE 802.Id была пересмотрена для согласования с появившимися высокоскоростными связями. Коммутаторы серии 1900 использует исходную спецификацию IEEE 802. Id.
Состояния портов в алгоритме покрывающего дерева
Порты моста или коммутатора, исполняющего протокол STP, могут находиться в одном из четырех состояний:
Blocking (блокировка) Кадры не передаются, но принимаются элементы BPDU. После подачи напряжения на коммутатор все его порты по умолчанию переходят в состояние блокировки.
Listening (слушание) Прием элементов BPDU для исключения появления в сети зацикливания, еще до начала передачи кадров данных.
Learning (изучение) Обнаружение МАС-адресов и построение таблицы фильтрации, но без пересылки кадров.
Forwarding (перенаправление) Прием и передача всех данных на порту, исполняющем функции моста.
Обычно порты коммутатора находятся в состоянии блокирования или перенаправления. Перенаправляющий порт выбран так, что имеет наименьшую стоимость пути к корневому мосту, однако если изменяется топология сети (например, вследствие отказа одной из связей или ввода администратором нового коммутатора), то порты коммутатора переходят в состояние слушания или изучения. Блокированные порты предотвращают зацикливание в сети. Когда коммутатор выбрал наилучший путь к корневому мосту, все остальные порты переводятся в блокированное состояние, в котором эти порты способны принимать элементы BPDU. Если коммутатор выявит, что блокированный порт должен стать назначенным, то этот порт переводится в состояние слушания. Порт будет прослушивать все элементы BPDU, чтобы не сформировать зацикленных путей после перехода в состояние перенаправления.
Конвергенция
Конвергенция (согласование) проявляется при переходе мостов и коммутаторов в состояние перенаправления или блокирования. Во время периода конвергенции не происходит перенаправление данных. Конвергенция необходима для согласования баз данных во всех устройствах. Перед началом перенаправления данных все устройства должны обновить свои базы данных. Проблема в том, что для конвергенции нужно некоторое время, в течение которого происходит обновление информации в устройствах. Обычно требуется 50 секунд для перехода из состояния блокирования в состояние перенаправления. Не рекомендуется изменять установленные по умолчанию значения таймеров STP, но при необходимости эти таймеры допускают настройку. Задержка перенаправления — это время перехода порта из состояния слушания или изучения в состояние перенаправления.
Пример использования алгоритма покрывающего дерева
Важно понять действие алгоритма покрывающего дерева в объединенной сети, чтобы предвидеть изменения в реальной сетевой среде. На рис. 2.5 показаны три коммутатора с одинаковым приоритетом 32 768. Однако каждый коммутатор имеет индивидуальный МАС - адрес, Анализируя приоритет и МАС - адрес каждого коммутатора, можно выявить корневой мост. Поскольку устройство 1900А имеет наименьший МАС - адрес и все три коммутатора сохраняют приоритет по умолчанию, устройство 1900А станет корневым мостом.
Для определения корневых портов в переключателях 1900В и 1900С нужно выяснить стоимость связей подключения к корневому коммутатору. Поскольку оба коммутатора подключены к корневому коммутатору из портов 0 по связи 100 Мбит/с (что является наилучшей стоимостью для данного случая), корневыми в обоих коммутаторах станут порты 0.
Для выявления назначенных портов коммутаторов используется идентификатор моста. Все порты корневого моста назначены. Однако оба устройства 1900В и 1900С имеют одинаковую стоимость пути к корневому мосту, поэтому назначенным станет порт коммутатора 1900В, поскольку это устройство имеет наименьший идентификатор моста. Учитывая, что назначенным выбран порт устройства 1900В, коммутатор 1900С переведет свой порт 1 в блокированное состояние и предохранит сеть от появления зацикливания.
Типы переключателей локальных сетей
Задержка коммутации пакетов в коммутаторе зависит от выбранного режима работы. Существуют три режима работы коммутаторов:
Store and forward (сохранить и передать) В буфер коммутатора записывается весь кадр данных, проверяется CRC, а затем в таблице фильтрации МАС - адресов выбирается адрес назначения для полученного кадра.
Cut-through (сквозной) Коммутатор только ожидает получения аппаратного адреса назначения, а затем производит по нему поиск в таблице фильтрации МАС - адресов.
FragmentFree (без фрагментации) Режим по умолчанию для коммутатора Catalyst 1900, который иногда называют модифицированным сквозным режимом ( modified cut - through ). Производится проверка первых 64 байтов кадра для фрагментации (из-за возможных конфликтов в сегменте) перед перенаправлением кадра.
Рис. 2.6 показывает различные части кадра, связанные с режимами коммутации. Все режимы коммутаторов подробно рассматриваются ниже.
Режим "сохранить и передать'
Коммутатор в режиме "сохранить и передать" является одним из трех основных типов коммутаторов локальных сетей. В таком режиме коммутатор локальной сети полностью копирует кадр в собственный встроенный буфер и проверяет контрольную сумму CRC. Поскольку копируется весь кадр, задержка коммутации зависит от длины кадра. При ошибке CRC кадр отбрасывается, а также отбрасываются слишком короткие (менее 64 байтов, включая CRC) или слишком длинные (более 1518 байтов, включая CRC) кадры. Если в кадре не обнаружено ошибок, коммутатор локальной сети выполняет поиск по аппаратному адресу назначения в своей таблице коммутации или перенаправления и выявляет выходной интерфейс для кадра. Затем кадр отправляется через выбранный интерфейс в точку назначения. Этот режим используется в коммутаторах серии Catalyst 5000 и не может быть изменен в устройстве.
Сквозной режим (реальное время)
Еще одним основным типом коммутаторов в локальных сетях являются устройства, работающие в сквозном режиме. В этом режиме коммутатор копирует в собственный встроенный буфер только адрес назначения (первые шесть байтов после преамбулы). Затем ищется аппаратный адрес назначения в МАС - таблице коммутатора, чтобы определить выходной интерфейс и направить в него кадр. Сквозные коммутаторы обеспечивают низкую задержку, поскольку начинают пересылку кадра сразу после чтения адреса назначения и выявления выходного интерфейса. Некоторые коммутаторы могут настраиваться на сквозной режим для каждого отдельного порта. Причем этот режим действует до превышения установленной пользователем границы ошибок. Затем устройство автоматически переходит в режим "сохранить и передать", чтобы предотвратить дальнейшее распространение ошибок. Если же уровень ошибок для порта возвращается в установленные пределы, коммутатор автоматически возвращается в сквозной режим.
Бесфрагментный режим
Режим FragmentFree является модифицированной версией сквозного режима, причем коммутатор ожидает заполнения окна конфликтов (64 байта) до выполнения перенаправления. Если обнаруживается ошибка в принятом пакете, то она всегда проявляется в первых 64 байтах. Бесфрагментный режим обеспечивает лучшую проверку на ошибки по сравнению со сквозным режимом (в частности, за счет того, что не происходит увеличения задержки на длинных кадрах). Этот режим установлен по умолчанию для коммутаторов серии 1900.
Источник: blogsvazista.ru/tehnologii-komutacii-cisco/
Комментариев нет:
Отправить комментарий