78Научно-технические разработки

предыдущая статья | оглавление | в архив | следующая статья



Сети Ethernet. 2-я часть. Технология Ethernet


Анна Бителева Теле-Спутник - 7(153) Июль 2008 г.


Это вторая часть серии, посвященной принципам построения сетей Ethernet. Напомним, что серия адресована кабельным операторам,интересующимся смежной областью передачи данных, но не знающих как начать её освоение. В этой части будут рассмотрены основы самой технологии Ethernet, а также даны представления о некоторых механизмах, которые используются совместно с Ethernet в сетях операторского типа.

В своем начальном виде Ethernet появился в середине 1970-х годов, а в 1980-е получил уже довольно широко распространение.
Этот стандарт описывает одну из технологий формирования локальной вычислительной сети (ЛВС) с пакетной коммутацией. Понятие ЛВС жестко не формализовано, а просто обозначает вычислительную сеть, покрывающую небольшую территорию и объединяющую небольшое количество устройств.
Как и прочие ЛВС-технологии, Ethernet работает на физическом и канальном уровнях модели OSI , то есть определяет:
1. Среду передачи и физические параметры передаваемых сигналов.
2. Принципы доступа к каналу.
Стандарты, описывающие оба уровня Ethernet, объединены в группу стандартов IEEE 802.3, которая, в свою очередь, относится к группе IEEE 802.х, включающей спецификации с области различных локальных технологий. Некоторые из них используются совместно с Ethernet, например технология VLAN, описываемая спецификацией IEEE 802.1Q.
Хотя сегодня на основе Ethernet строятся сложные интеллектуальные сети, сама базовая концепция Ethernet достаточно проста. Устройства, подключенные к сети Ethernet, обмениваются пакетами данных, называемых кадрами. Каждое из устройств имеет 48-битный MAC-адрес (физический адрес устройства), который используется для их адресации при отправке или получения ими кадров. Возможные варианты форматов кадра будут рассмотрены в конце статьи, за время эволюции Ethernet они изменились мало. Ранние сети Ethernet представляли собой полностью разделяемую среду. То есть они работали по вещательному принципу — любое сообщение, отправленное одним из устройств сети, доставлялось всем остальным устройствам. Вернее, всем, включая само устройство, что существенно для правильной работы МАС-уровня. И сама сеть, вне зависимости от ее физической топологии, представляла собой общую шину. Координация работы Ethernet-устройств, подключенных к общей шине, выглядит следующим образом. Устройство, подготовившее пакет, прослушивает шину, и если не обнаруживает там никаких сигналов, то, выдержав установленную паузу1, начинает передачу. Но так как передача сигнала по проводам занимает определенное время, то до момента его получения другое устройство может начать передачу своего пакета, что приведет к так называемой коллизии и потере обоих пакетов. Коллизия выявляется самими передающими устройствами путем сравнения передаваемого и принимаемого сигналов. Обнаруживая коллизию, они останавливают передачу и отправляют в линию 32-битную jam-последовательность, подтверждающую факт коллизии. Через небольшой промежуток времени, высчитанный случайным образом, попытка отправить кадр повторяется. Этот механизм получил название Ethernet CSMA /CD (Carrier Sense Multiple Access with Collision Detection).
Необходимость распознания коллизий накладывает ограничение на максимальную длину кабельной линии, соединяющей самые удаленные устройства сети и, одновременно, на минимальную длину Ethernet-кадра. Принятая в качестве минимума величина кадра Ethernet составляет 72 байта (из которых 46 байт — полезная информация, а остальные — служебная). Исходя из этого рассчитывается и максимально допустимая длина кабельной линии. Она должна быть такой, чтобы за время передачи кадра минимальной длины jam-последовательность успела бы дойти до самого дальнего устройства.
Очевидно, что допустимая длина линии зависит от скорости передачи. Так, при скорости передачи 10 Мбит/с максимальное расстояние между узлами не должно превышать 2500 м, а при гигабитном Ethernet длина кабеля была бы ограничена 25 м.
Реально к моменту появления гигабитных сетей уже совершился переход к коммутируемому Ethernet’у, в котором вещательный принцип передачи уступил место индивидуальному направлению кадров адресатам, реализуемому коммутаторами c помощью других механизмов. Поэтому данное ограничение для них неактуально.
Помимо временных параметров, связанных с выявлением коллизий, ограничение на длину одного кабельного отрезка обусловлено также и физической деградацией сигнала, которая зависит от типа кабеля. В частности, витая пара 5 категория позволяет передавать сигнал без деградации на расстояние 100 м.
Для борьбы с деградацией сигнала использовались повторители, которые восстанавливали электрические параметры сигнала, то есть позволяли обойти эту проблему. С распространением физической топологии «звезда» начали использоваться многопортовые повторители, называемые концентраторами (hubs), которые до сих пор широко используются в мелких сетях. Таким образом, концентраторы решают проблему деградации сигнала в кабеле и позволяют формировать физические разветвления типа «звезда». Они также могут выявлять обрывы кабеля или электрически не согласованные линии (они создают постоянные коллизии) и блокировать соответствующие порты. Но на логическом уровне сеть, построенная с применением концентраторов, представляет собой ту же общую шину с полудуплексной2 системой передачи. Все принимаемые сигналы повторяются концентратором на всех портах. Его вклад в работу сети на логическом уровне минимален и заключается лишь в автоматическом отключении неисправной/ неактивной ветки и формировании jam-последовательности при обнаружении коллизии. Но концентраторы не позволяют ни уменьшить число коллизий, ни сократить загрузку линий, ни предоставить какой-либо защиты информации от перехвата.
Проблема использования общего канала усугубилась в тот момент, когда в сетях Ethernet одновременно начали применяться устрой-ства с разной скоростью передачи, а именно 10-мбитные (10 Base-T) и 100-мбитные (100 Base-T). В таких смешанных сетях скорость работы всех устройств была ограничена 10 Мбит/с. Для того чтобы обойти это ограничение, начали выпускаться двухскоростные концентраторы, порты которых оборудовались внутренним коммутатором между 10-мбитной и 100-мбитной шинами. Их применение позволяло поддерживать в сегменте обе скорости. Но широкого развития они не получили, так как их скоро сменили коммутаторы, позволившие полностью или частично решить основные проблемы разделяемой Ethernet-среды.
Коммутаторы (свитчи) — это устройства, которые направляют принимаемые кадры не на все порты, а только на тот, к которому подключено устройство с адресом назначения кадра. Простейший вариант коммутатора — мост. Это двухпортовое устройство, устанавливаемое на границе сегмента сети и разделяющее внутренний и внешний трафик этого сегмента. Мост сохраняет таблицу MAC-адресов своего сегмента и сверяет с ней адрес устройства назначения каждого кадра. Если пакет адресован устройству внутри сегмента, он его не повторяет, а если адрес наружный (отсутствующий в таблице) или широковещательный, то он передает его на внешний порт. Аналогично мост может использоваться и для соединения двух сегментов, в этом случае каждый порт хранит свою таблицу соответствия. На следующем этапе развития появились многопортовые мосты, соединяющие несколько сегментов. Именно они называются коммутаторами. Коммутатор, получая Ethernet-кадр на один из своих портов, ретранслирует его только на тот порт, к которому подключено устройство с адресом назначения. Таблица МАС-адресов устройств, «приписанных» к определенному порту, составляется самим коммутатором, который вносит в нее MAC-адреса отправителей, отсылающих свои сообщения через данный порт. Трансформация мостов в коммутаторы была вполне логичной, но ее реализация оказалась нетривиальной задачей. В мостах анализ входящих кадров производился последовательно с помощью встроенного процессора. В результате передача кадров с порта на порт в мостах происходила медленнее, чем в концентраторах.
Для многовыходовых коммутаторов такая программная последовательная обработка пакетов непригодна. Необходимая в этом случае аппаратная обработка кадров, выполняемая параллельно на всех портах, был впервые реализована в 1989 году фирмой Kalpana, которая потом была куплена Cisco. На сегодняшний день мостами в основном называют интерфейсные устройства, устанавливаемые на границах ЛВС, построенных с применением разных локальных технологий. Например, в ранних системах DOCSIS так называли CMTS, которые по существу являются интелектуальными коммутаторами, устанавливаемыми на границе двух сред — Ethernet и DOCSIS.
Появление коммутаторов постепенно, но радикально меняло характеристики Ethernet-сетей. Вначале они использовались только на среднем уровне иерархии сетевых устройств. Транспортные магистрали обслуживались исключительно маршрутизаторами, а сегменты доступа по-прежнему строились на концентраторах, где сохранялась разделяемая среда и царил принцип доступа CSMA /CD. Сегодня коммутаторы частично потеснили маршрутизаторы в магистральных сетях и уверено заняли место в секторе доступа. Во всех современных сетях Ethernet, кроме самых мелких, каждый узел подключается к сети через индивидуальный порт.
Ввиду столь широкой сферы применения выпускаемые коммутаторы серьезно различаются и по функциям, и по пропускной способности, и по принципам обработки кадров. Несмотря на то, что базовая функция коммутаторов (направление пакетов по МАС-адресу узла назначения) реализуется на канальном уровне, они могут выполнять много других функций, обеспечивающих качество обслуживания, безопасность, мониторинг и т.д, которые требуют от них использования информации, переносимой протоколами более высоких уровней вплоть до 7-го, прикладного. Это отдельная большая тема, на которой мы пока не будем останавливаться.
Желающих ознакомиться с коммутаторами подробнее можно адресовать к http://wiki.nag.ru/wiki/index.php/Коммутаторы_(Свитчи)
Переход от концентраторов к коммутаторам, адресно направляющим кадры на нужные порты, помог решить проблему быстрой перегрузки сети трафиком и усложнил несанкционированный прием данных. Кроме того, с переходом к коммутируемому Ethernet’у ликвидировалось ограничение на длину линии, связанное с необходимостью выявления коллизий. Еще одним важным преимуществом коммутируемого Ethernet’а стала возможность перехода от полудуплексной передачи к дуплексной3, при условии что ни одно из устройств сегмента не подключено к концентратору. Разделяемая среда, в силу принципа доступа CSMA /CD, не допускает присутствия двух сигналов в одном сегменте. Переход к дуплексной передаче также увеличивает общую пропускную способность сети.
Но несмотря на значительные улучшения, полученные в результате ухода от разделяемой среды, простейшие коммутируемые сети характеризуются рядом проблем, которые не позволяют строить на их базе системы операторского класса.

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

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

• В-третьих, остается угроза переполнения сети интенсивным вещательным трафиком. Этот трафик может быть разного происхождения:

• Он может появиться при передаче по сети многоадресных кадров. То есть кадров с групповыми IP-адресами. Речь идет именно не о МАС-адресе, который индивидуален для каждого устройства, а о логическом, IP-адресе. Такие адреса бывают трех типов — индивидуальные, с помощью которых адресуется одной устройство, групповые — для адресации группы устройств (один IP-адрес поставлен в соответствие группе МАС-адресов), и широковещательные — назначаемые сообщениям, адресованным всем устройствам сети. Если коммутаторы не умеют распознавать и обрабатывать групповые IP-адреса, то они будут восприниматься как неассоциированные ни с одним из портов, и соответствующие кадры будут передаваться на все порты, как если бы они имели широковещательные адреса.
• Он также может быть сгенерирован с пиратской целью. Таблицы МАС-адресов, приписанных к каждому порту, имеют ограниченный объем и ограниченную скорость обработки новых адресов. И пираты могут генерировать пакеты с постоянно меняющимися ложными МАС-адресами с целью перегрузить коммутатор адресной информацией. В результате он переходит в экстренный режим, в котором все пакеты трактуются им как вещательные. То есть коммутатор начинает работать как концентратор, повторяя все пакеты на всех портах, в том числе и на том, с которого их могут получить пираты. Этот один из распространенных видов атаки, называемый MAC flooding.
• И, наконец, этот трафик может появиться просто в результате ошибки или сбоя.
• В-четвертых, кроме того, при плохом планировании сети вполне реальна угроза временной перегрузки канала, в который одновременно будут направлены потоки от разных источников.
Для борьбы с означенными явлениями в коммутаторы внедряется ряд дополнительных механизмов. В частности:

Поддержка протокола STP (Spanning Tree Protocol).
Это протокол канального уровня, который позволять формировать в сети резервные звенья, автоматически активизирующиеся при отказе основных. Проблема резервирования заключается в том, что резервный канал, проложенный между двумя узлами, для широковещательных и иногда многоадресных пакетов создает петлю, по которой они будут передаваться до тех пор, пока этот процесс не будет остановлен каким-нибудь механизмом, выявляющим петлевую передачу. В то же время, без наличия физических резервных линий резервирование осуществить невозможно. STP как раз и помогает разрешить это противоречие.
Spanning Tree — математический протокол из области построения графов, в задачи которого входит построение связей между всеми вершинами множества (в данном случае вершинами являются сетевые узлы) так, чтобы каждая вершина была связана с другой по единственному пути. Лишние ребра графа при этом дезактивируются. В случае сбоя фрагмента налаженного пути формируется другой, но тоже единственный, что исключает формирование петель.
STP хорошо работает при ячеистой (mesh) топологии сети.


Рис. 1. Сеть ячеистой топологии.

Различные механизмы защиты портов. Так, в частности, для борьбы с атакой MAC flooding может быть предусмотрена возможность аппаратной приписки к порту MAC-адресов, ограничение спектра вносимых в таблицы МАС-адресов или блокировка таблицы при попытке ее слишком интенсивного обновления.

Использование VLAN, то есть виртуальных сетей. Виртуальная сеть объединяет группу узлов физической сети, вернее часть портов этой группы. В рамках этой сети весь трафик, в том числе и широковещательный, изолирован от узлов/ портов, не входящих в состав VLAN. Две VLAN, организованные на базе одной физической сети, могут обмениваться кадрами только с помощью протоколов более высокого уровня, а на канальном уровне они абсолютно изолированы. Разные VLAN’ы, созданные на базе одной физической сети, конфигурируются индивидуальными процедурами протокола STP.
Часто говорят, что виртуальная сеть образует домен широковещательного трафика. Но это лишь означает, что вещательный трафик не выходит за пределы VLAN. Внутри каждой виртуальной сети действуют обычные правила коммутации, при которых одноадресные кадры передаются по одному каналу, групповые — выбранной группе адресатов, а широковещательные — всем, подключенным к данной VLAN. Для маркировки кадров, относящихся к определенной виртуальной сети, используются тэги (дополнительные секции кадра), формируемые в соответствии с протоколом IEEE 802.1Q. С помощью VLAN эффективно решаются задачи сегментирования, масштабирования, безопасности и сетевого администрирования (обеспечения заданного качества канала). Методы их формирования и работы будут рассмотрены позже.

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

Физический уровень
На сегодняшний день в Ethernetе используется целый ряд физических форматов, различающихся по скорости передачи, по параметрам физической среды и по методам модуляции. Это отдельная большая тема, и по ней есть много материала в Интернете.
Начать знакомство со всеми разновидностями физических форматов можно, например, отсюда: http://ru.wikipedia.org/wiki/Ethernet или отсюда: http://en.wikipedia.org/wiki/Ethernet_physical_layer.Отметим, что коаксиальный кабель, широко использовавшийся в ранних некоммутируемых Ethernet-сетях, в сильной мере уступил место витым медным парам и оптике. Витые пары дешевле и удобнее в прокладке, чем коаксиал, а оптика имеет значительно большую пропускную способность.
Наиболее распространенные физические форматы, использующие витые пары, — 10 Base-T, 100 Base-TX и 100 Base-T. Число в начале названия указывает на максимальное количество Мбит, которые могут быть переданы по данному каналу за 1 секунду. Base — это сокращение термина Baseband, указывающего на то, что в данных форматах используется НЧ-модуляция. А буква Т (Twisted) указывает на использование витой пары кабелей, перевиваемых для уменьшения перекрестных наводок. Буква Х во втором названии указывает на одну из модификаций стандарта.
Все три варианта физического канала поддерживают дуплексный и полудуплексный режимы передачи и обычно реализуются на четырех парах медных проводов 5-й категории; в соответствии со стандартом они допускают передачу на расстояние до 100 метров. Разные максимальные скорости в основном достигаются за счет разной скорости символьной передачи и применения разных вариантов НЧ-кодирования (с разным количеством бит, передаваемых одним символом).
Повторим, что тема физической реализации Ethernet’а, с одной стороны, очень обширная, а с другой — неплохо освещенная, поэтому пока ограничимся этими краткими примерами, а потом будем возвращаться к ней по мере необходимости.

Структура Ethernet-кадра
Исторически сложись четыре разные модификации Ethernet-кадров, отличающиеся форматом заголовка.
• Кадр 802.3/LLC (или кадр Novell 802.2).
• Кадр Raw 802.3 (или кадр Novell 802.3).
• Кадр Ethernet DIX (или кадр Ethernet II).
• Кадр Ethernet SNAP.
Наиболее распространенным является третий вариант, который мы здесь и рассмотрим. Кадр Ethernet DIX назван так в честь основных компаний, участвовавших в отработке структуры Ethernet-кадров, — Digital Equipment Corporation, Intel и Xerox.
Кадр начинается с преамбулы, представляющей собой 7-байтную синхронизирующую последовательность. Все 7 байтов имеют одинаковое значение: 10101010. Что же касается реальных физических сигналов, передаваемых в линию, то они зависят от типа модуляции. Но при любой варианте кодирования за время приема преамбулы приемопередатчики имеют возможность устойчиво засинхронизироваться. За преамбулой следует начальный ограничитель кадра (Start-of-Frame-Delimiter) — однобайтная последовательность 10101011, указывающая на начало пакета.
Далее передается сам пакет Ethernet, изображенный на рис. 2. А по его окончании выдерживается межкадровая пауза, продолжительность которой эквивалентна передаче 12 байт информации. Для 10-мбитных сетей она составляет 9600 нс, для 100-мбитных — 960 нс и т.д.


Рис. 2.

Как показано на рисунке, этот вариант кадра состоит из трех частей — заголовка, собственно полезных данных и контрольной суммы, вычисляемой для проверки целостности кадра на приемной стороне. Заголовок включает два 6-байтных MAC-адреса — отправителя и получателя, а также поле типа протокола (Ether Type).
В этом поле указывается протокол верхнего уровня, пакет которого вложен в поле данных (Payload). Так, например, если Ether Type имеет значение 0х0800, то в поле данных находится дейтаграмма с адресом IPv4 , а значение 0х8100 указывает на передачу кадра VLAN, сформированного по протоколу IEEE 802.1Q.При принятии стандарта IEEE 802.3 поле Ether Type было заменено полем с указанием длины кадра. А в поле данных в этой модификации передается вложенный кадр подуровня LLC, в заголовке которого, в частности, присутствует информация о протоколе верхнего уровня, пакет которого в этом случае вложен в кадр LLC.
Позже в стандарт IEEE 802.3 были включены обе версии, и обе используются и распознаются основной массой Ethernet-оборудования.
Для возможности отличить одну модификацию от другой коды протоколов верхнего уровня начинаются со значения 0х0600, что эквивалентно 1536 в десятичном измерении. Так как длина поля данных не превышает 1500 байтов, то по величине, указанной в последнем поле MAC-заголовка, можно определить модификацию кадра. Если в кадре присутствует тэг VLAN (спецификация IEEE 802.1Q), то он вставлен между адресом узла назначения и полем типа протокола/длины кадра, его наличие распознается по фиксированному значению первых двух байт 0х8100. Далее следуют информация о классе обслуживания данного VLAN (классификация специфицирована стандартом IEEE 802.1p) и идентификатор VLAN.
В следующей статье мы изложим принципы построения сетей операторского класса на базе Ethernetа, рассмотрим варианты применения надстроечных механизмов и некоторые требования к сетевым устройствам.

1 В Ethernet предусмотрена пауза между пересылаемыми фреймами длительностью 9,6 мкс, во время которой устройства готовятся к получению следующего фрейма.
2 Полудуплексный канал, в отличие от дуплексного, не позволяет одновременно вести передачу по каналу в обоих направлениях.
3 Для витых пар дуплексная передпча обеспечивается приминением разных проводов, а для оптики — разных волокон (или передача в разных окнах прозрачности).


 
Теле-Спутник Июль 2008
наверх
 



Уважаемые посетители!
В связи с полной реконструкцией Архива, возможны ситуации, когда текст будет выводиться не полностью или неправильно (отсутсвие статей в некоторых номерах это не ошибка). Если заметите какие-то ошибки, то, пожалуйста, сообщите нам о них. Для связи можете воспользоваться специальной формой:

Номер журнала: *
Страница: *
Дополнительные сведения: *
Желательно четко опишите замеченную проблему - это поможет быстрее ее решить.
Мы не отвечаем на вопросы! Их следует задавать на нашем форуме!
Антиспам: * Нажмите мышкой на синий квадрат:


Поля, помеченные звездочкой (*)
обязательны для заполнения





Новый сайт