Коммутатор

Коммутатор — многопортовый мост. Коммутатор работает на втором канальном уровне OSI модели. Главное назначение коммутатора — обеспечение разгрузки сети посредством локализации трафика в пределах отдельных сегментов.

Ключевым звеном коммутатора является архитектура без блокирования (non-blocking), которая позволяет установить множественные связи Ethernet между разными парами портов одновременно, причем кадры не теряются в процессе коммутации. Сам трафик между взаимодействующими сетевыми устройствами остается локализованным. Локализация осуществляется с помощью адресных таблиц, устанавливающих связь каждого порта с адресами сетевых устройств, относящихся к сегменту этого порта, рис. 7.11.

Архитектура Ethernet коммутатора

Рис. 7.11. Архитектура Ethernet коммутатора

Таблица заполняется в процессе анализа коммутатором адресов станций-отправителей в передаваемых ими кадрах. Кадр передается через коммутатор локально в соответствующий порт только тогда, когда адрес станции назначения, указанный в поле кадра, уже содержится в адресной таблице этого порта. В случае отсутствия адреса станции назначения в таблице, кадр рассылается во все остальные сегменты. Если коммутатор обнаруживает, что МАС-адрес станции назначения у приходящего кадра находится в таблице МАС-адресов, припи­санной за портом, по которому пришел данный кадр, то этот кадр сбрасывается -его непосредственно получит станция назначения, находящаяся в том же сегменте. И наконец, если приходящий кадр является широковещательным (broadcast), т.е. если все биты поля МАС-адреса получателя в кадре задаются равными 1, то такой кадр будет размножаться коммутатором (подобно концентратору), т.е. направляться во все остальные порты.

Различают две альтернативные технологии коммутации:
1. без буферизации (cut-through, также используется термин on-the-fly — на лету);
2. с буферизацией SAF (store-and-forward, также используется термин buffered switching -буферная коммутация).

Коммутатор, работающий без буферизации (рис. 7.12 а), практически сразу же после чтения заголовка, а именно МАС-адреса станции получения и выполнения идентификации, перенаправляет получаемый кадр в нужный порт, не дожидаясь его полного поступления. Главное преимущество такой технологии -малая задержка пакета при переадресации, которая составляет у наиболее быстрых коммутаторов 140-150 ВТ (1,4-1,5 мкс). Главный недостаток — в том, что такой коммутатор будет пропускать из одной сети в другую дефектные кадры (укороченные — меньше 64 байт, или имеющие ошибки), так как выявление ошибок может происходить только после чтения всего кадра и сравнения рассчитанной контрольной суммы с той, которая занесена в поле контрольной последовательности кадра. Распространение ошибок в большей степени касается сетей Ethernet с более, чем одним подключенным пользователем на порт. В этом случае протокол Ethernet может генерировать как укороченные, так и поврежденные кадры, поскольку коммутатор не может предвидеть возникновение коллизий в сегменте, из которого поступает кадр.

Современные коммутаторы cut-through используют более продвинутый метод коммутации, который носит название ICS (interim cut-through switching -промежуточная коммутация на лету). Суть этого улучшения заключается в отфильтровывании укороченных кадров, т.е. кадров с длиной меньше 64 байт (512 бит). До тех пор, пока коммутатор не принял первые 512 бит кадра, он не начинает ретранслировать кадр в соответствующий порт. Если кадр заканчивается раньше, то содержимое буфера очищается, кадр отфильтровывается. Несмотря на увеличение задержки до 512 ВТ и более (> 5,12 мкс), метод ICS значительно лучше традиционного cat-through, поскольку не пропускает укороченные кадры. К главному недостатку ICS относится возможность пропускания дефектных пакетов длиной, больше 64 байт. Поэтому коммутаторы ICS не годятся на роль магистральных коммутаторов.

Напротив, коммутатор, работающий с буферизацией (рис. 7.12 б), прежде чем начать передачу кадра в порт назначения, полностью принимает его, буферизует. Кадр сохраняется в буфере до тех пор, пока анализируется адрес назначения (destination address, DA) и сравнивается контрольная последовательность кадра FCS, после чего коммутатором принимается решение о том, в какой порт перенаправить кадр или вообще его не передавать (отфильтро­вать). Главное преимущество коммутации с буферизацией в том, что в этом методе гарантируется передача только «хороших» кадров. Коммутаторы с портами, работающими на разных скоростях, например Ethernet и Fast Ethernet, равно как и коммутаторы-мосты Ethernet-FDDI могут работать только на основе технологии коммутации с буферизацией. Максимальную задержку имеет кадр наибольшей длины 1512 байт (1512х64= 96768 ВТ, =1 мс). Однако недостаток, связанный с задержкой кадра на время буферизации, не считается критичным, по­скольку идет непрерывный поток кадров. Более того, основная причина задержки связана с пакетными очередями при буферизации на входных и выходных портах коммутатора. Поэтому в настоящее время большее предпочтение со стороны фирм-производителей отдается этой технологии коммутации.

Обратное давление. Входные и выходные буферы требуются коммутатору, чтобы уменьшить количество теряемых кадров при перегруженности одного из выходных портов. Однако это не дает полного спасения при длительных передачах. Например допустим, в порт 1 постоянно передаются данные из портов 2, 3 и 5. Если скорости передачи по всем портам одинаковые и равны скорости канала, то после заполнения соответствующих буферов кадры начнут теряться -коммутатор будет просто сбрасывать вновь входящие кадры по портам 2, 3 и 5. Потери пакетов означают, что посредством протокола более высокого уровня (например, на уровне сессий для протокола TCP/IP), будет производиться повторная передача кадров. Но поскольку в протоколе задействованы конечные устройства, то времена между первоначальной и повторной передачами кадра могут быть большими. Для предотвращения этого современные коммутаторы обладают функциональной возможностью контроля и управления потоками (flow control) поступающих в порты кадров. Для коммутаторов Ethernet эта функция из­вестна как обратное давление (ВР, back pressure), рис. 7.13. Ограниченность выходного канала по порту 1 приводит к заполнению входных буферов на портах 2,3 и 5. Узел ВР коммутатора, обнаруживая это, начинает передачу пустых кадров в те каналы, от которых переполняются входные буферы портов. Так, если переполняется входной буфер по порту 2, то пустые кадры коммутатор шлет в сегмент В, умышленно создавая коллизии в этом сегменте, в результате которых уменьшается поток кадров от передающего устройства в этом сегменте. Вместо генерации холостых кадров при отработке механизма обратного давления в коммутаторах может использоваться генерация сигнала затянувшейся передачи, причем последний метод считается более эффективным средством от потери кадров. Отметим, что механизм обратного давления можно реализовать исключительно в коммутаторах Ethernet, поскольку этот механизм напрямую использует возможности протокола CSMA/CD.

Два метода коммутации кадров

Рис. 7.12. Два метода коммутации кадров

Проявление механизма обратного давления

Рис. 7.13. Проявление механизма обратного давления

Порты RJ-45 коммутаторов обычно делают типа MDI-X, Современные коммутаторы имеют множество дополнительных возможностей, среди которых: фильтрация по МАС-адресам, построение виртуальных сетей, функция контроля потока, автоконфигурирование порта 10Base-T/100Base-TX, поддержка дуплексного режима передачи.