Национальный исследовательский ядерный университет «МИФИ»
Факультет: «Автоматики и электроники»
Реферат по дисциплине: «Локальные сети ПК»
На тему:
«Элементная база СО для Ethernet»
Группа: А9-09
Подготовил: Бродяженко А.В.
Преподаватель: доц. Лапшинский В.А.
Москва 2015
Оглавление
Глоссарий............................................................................... 3
Введение................................................................................ 4
Интерфейс Ethernet..................................................................5
Технология Ethernet.................................................................6
Витая пара...............................................................................7
10G Ethernet.............................................................................7
MAC-адреса.............................................................................9
Микросхемы трансиверов.......................................................11
Микросхемы контроллеров.....................................................12
Микросхемы коммутаторов....................................................14
IEEE 802.3.............................................................................14
PMD......................................................................................14
XFI/SFI .................................................................................14
XGMII....................................................................................14
Заключение...........................................................................16
Литература............................................................................17
Глоссарий
Локальная вычислительная сеть (ЛВС; англ. Local Area Network, LAN) — компьютерная сеть, покрывающая обычно относительно небольшую территорию или небольшую группу зданий (дом, офис, фирму, институт). Отдельная локальная вычислительная сеть может иметь связь с другими локальными сетями через шлюзы, а также быть частью глобальной вычислительной сети (например, Интернет) или иметь подключение к ней[1].
IEEE — Institute of Electrical and Electronics Engineers («Институт инженеров по электротехнике и электронике»)
Сетевой коммутатор (жарг. свич от англ. switch — переключатель) — устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного или нескольких сегментов сети.
Шина, компьютерная ши́на в архитектуре компьютера — подсистема, служащая для передачи данных между функциональными блоками компьютера.
MAC-адрес — уникальный идентификатор, присваиваемый каждой единице активного оборудования, или некоторым их интерфейсам в компьютерных сетях Ethernet.
Стек — абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»).
Сетевой коммутатор — устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного или нескольких сегментов сети[1].
FPGA — полупроводниковое устройство, которое может быть сконфигурировано производителем или разработчиком после изготовления; отсюда название: «программируемая пользователем»[3].
Интерфейс Ethernet
Интерфейс Ethernet (от англ. ether – эфир, net – сеть) представляет собой проводной интерфейс (технологию) передачи данных. Данный проводной интерфейс преимущественно используется для построения локальных сетей (LAN). Передающей средой, как правило, является витая пара либо оптический кабель. Посредством интерфейса Ethernet с помощью одного из указанных кабелей возможно объединение нескольких устройств в единое информационное пространство. Возможно объединение в локальную сеть от двух до тысяч объектов. Для большей части локальных сетей характерен охват небольшой территории (дом, офис), но в то же время существуют такие сети, узлы которых находятся на расстоянии тысяч километров. Интерфейс Ethernet с целью передачи данных на значительные расстояния можно использовать посредством волоконно-оптических кабелей. ОБЩИЕ СВЕДЕНИЯ О ПЕРЕДАЧЕ ДАННЫХ Необходимость организации передачи данных возникает, когда в рабочем процессе принимают участие несколько устройств (более одного). Это могут быть компьютер и принтер, мобильные телефоны, телевизор и пульт управления и др. Технология является набором правил, стандартов, а также технических средств с целью организации взаимного действия нескольких устройств.
Для передачи данных часто используемым является термин «интерфейс передачи». Интерфейс (от англ. interface – поверхность раздела, перегородка) представляет собой совокупность средств, правил и методов взаимодействия между системными элементами. Используется данный термин в различных областях, по значению его можно отнести к любому взаимодействию элементов одной системы. Например, находящиеся на экране компьютера кнопки, по сути, тоже интерфейс: интерфейс взаимодействия человека и компьютера.
Интерфейс относительно передачи данных между техническими устройствами является объектом стандартизации. Благодаря наличию стандартизованных интерфейсов различные производители могут создавать устройства, которые способны взаимодействовать между собой. Интерфейс подразумевает непосредственное взаимодействие устройств. Технология же является более широким понятием, так как в рамках одной технологии возможно использование набора различных устройств с разными интерфейсами. ИНТЕРФЕЙСЫ (ТЕХНОЛОГИИ) ПЕРЕДАЧИ ДАННЫХ Интерфейсы (технологии) передачи данных делятся на: проводные; беспроводные. Проводные. В случае применения таких интерфейсов передача данных от одного устройства к другому происходит по интерфейсному кабелю. Беспроводные. Для передачи данных используются радиоволны различной частоты, в разных диапазонах либо инфракрасное излучение[2]. Дополнительно возможно выделение такого обмена данными, как обмен посредством использования третьего устройства: карта памяти, флешка и др.
Технология Ethernet
Технология Ethernet — часть богатого наследия исследовательского центра Xerox PARC. Ранние версии Ethernet использовали в качестве среды передачи коаксиальный кабель, но со временем он был полностью вытеснен оптоволокном и витой парой. Однако важно понимать, что применение коаксиального кабеля во многом определило принципы работы Ethernet. Дело в том, что коаксиальный кабель — разделяемая среда передачи. Важная особенность разделяемой среды: ее могут использовать одновременно несколько интерфейсов, но передавать в каждый момент времени должен только один. С помощью коаксиального кабеля можно соединит не только 2 компьютера между собой, но и более двух, без применения активного оборудования[3]. Такая топология называется шина. Однако если хотя бы два узла на одной шине начнут одновременно передавать информацию, то их сигналы накладываются друг на друга, и приемники других узлов ничего не разберут. Такая ситуация называется коллизией, а часть сети, узлы в которой конкурируют за общую среду передачи — доменом коллизий. Для того чтоб распознать коллизию, передающий узел постоянно наблюдает за сигналов в среде и если собственный передаваемый сигнал отличается от наблюдаемого — фиксируется коллизия. В этом случае все узлы перестают передавать и возобновляют передачу через случайный промежуток времени.
10G Ethernet
Новый стандарт 10-гигабитного Ethernet включает в себя семь стандартов физической среды для LAN, MAN и WAN. В настоящее время он описывается поправкой IEEE 802.3ae и должен войти в следующую ревизию стандарта IEEE 802.3.
10GBASE-CX4 — технология 10-гигабитного Ethernet для коротких расстояний (до 15 метров), используется медный кабель CX4 и коннекторы InfiniBand.
10GBASE-SR — технология 10-гигабитного Ethernet для коротких расстояний (до 26 или 82 метров, в зависимости от типа кабеля), используется многомодовое волокно. Он также поддерживает расстояния до 300 метров с использованием нового многомодового волокна (2000 МГц/км).
10GBASE-LX4 — использует уплотнение по длине волны для поддержки расстояний от 240 до 300 метров по многомодовому волокну. Также поддерживает расстояния до 10 километров при использовании одномодового волокна.
10GBASE-LR и 10GBASE-ER — эти стандарты поддерживают расстояния до 10 и 40 километров соответственно[1].
10GBASE-SW, 10GBASE-LW и 10GBASE-EW — эти стандарты используют физический интерфейс, совместимый по скорости и формату данных с интерфейсом OC-192 / STM-64 SONET/SDH. Они подобны стандартам 10GBASE-SR, 10GBASE-LR и 10GBASE-ER соответственно, так как используют те же самые типы кабелей и расстояния передачи[1].
10GBASE-T, IEEE 802.3an-2006 — принят в июне 2006 года после 4 лет разработки. Использует витую пару категории 6 (максимальное расстояние 55 метров) и 6а (максимальное расстояние 100 метров).
10GBASE-KR — технология 10-гигабитного Ethernet для кросс-плат (backplane/midplane) модульных коммутаторов/маршрутизаторов.
Преимущества 10-гигабитного Ethernet на серверах
10-гигабитный Ethernet представляет собой отличную технологию, лежащую в основе гетерогенных и конвергентных сетей в дата-центре. Как и предшественница, она отлично подходит для протокола IP, и самых привычных приложений – передачи веб-данных, организации электронной почты, управления устройствами, IP-телефонии и видео по запросу. Немаловажна и полноценная поддержка серверного протокола iSCSI для организации взаимодействия между серверами, системами хранения данных и клиентами. Теперь на более высокой скорости.
Ключевые характеристики любой современной сети – скорость передачи данных и низкий уровень задержек. Это то, чего хотят клиенты, операторы, администраторы и вообще все те, кто работает с сетями. 10-гигабитный Ethernet обладает обеими характеристиками, одновременно предоставляя широкие возможности для резервирования и конвергенции трафика.
Дело в том, что в большинстве уже существующих сетевых архитектур используются различные типы сетевых протоколов для передачи различных видов трафика. Различные типы сетевых протоколов и межуровневых соединений усложняют процесс эксплуатации сетей и многократно увеличивают вероятность возникновения ошибок, особенно если пытаться увязать их воедино. Именно поэтому Ассоциацией стандартов международного института инженеров электротехники и радиоэлектроники (IEEE-SA) при разработке 10-гигабитного Ethernet заранее учитывался тот факт, что технология будет использоваться для объединения локальных (LAN), городских (MAN), распределенных (WAN) и региональных (RAN) сетей. Важным компонентом здесь является возможность использовать уже существующую инфраструктуру Ethernet в процессе плавного перехода на более новую технологию[4].
Прежде всего это потребность в агрегации межуровневых соединений с целью снижения затрат, требования к пропускной способности, растущие вместе с производительностью многоядерных процессоров, чувствительные к скорости передачи данных приложения, такие как видео по запросу, резервное и сетевое хранение данных. Кроме того, к списку добавляются кластерные вычисления, идущие рука об руку с финансовым сектором и быстрый рост консолидации вычислительных ресурсов, подстегиваемый совершенствованием софта для виртуализации и необходимостью в большем количестве сетевых портов. Все это, по большому счету, и есть причины для перехода на 10-гигабитный Ethernet, потому что технология создавалась и работает с прямым ориентиром на удовлетворение именно таких запросов. О надежности работы тоже не забыли – 10-гигабитный Ethernet работает только в полнодуплексном режиме, поддерживая функциональность качества обслуживания трафика (QoS) и соответствующие механизмы выделения необходимой полосы пропускания[4].
Микросхемы трансиверов
Фирма Micrel, занимающая лидирующее положение в промышленности по производству микросхем для Ethernet, объявила о начале поставок микросхем KSZ8041TL, KSZ8041NL и KSZ8041FTL, которые являются новейшими Ethernet 10/100 PHY-трансиверами и полностью соответствуют спецификации IEEE 802.3u. Они имеют такие дополнительные функции, как автопереключение MDI/MDI-X по Hewlett-Packard, могут быть подключены напрямую одна к другой, чтобы работать в режиме ретранслятора или преобразователя с медного кабеля на оптоволоконный. Кроме того, как и все новые микросхемы, выпускаемые этой компанией, они имеют режим для кабельной диагностики LinkMD, что позволяет выявить не только обрывы в кабеле, но даже изменения его импеданса. Микросхемы изготавливаются в компактном корпусе TQFP с 48 входами, размеры корпуса- 9×9 мм. Микросхемы KSZ8041TL/FTL имеют самую низкую потребляемую мощность - всего 180 мВт. Они выпускаются в коммерческом и индустриальном исполнении. Трансивер KSZ8041TL поддерживает режим 10Base-T и 100Base-TX при работе на медный провод[3]. Микросхема KSZ8041FTL поддерживает еще и 100-Base-FX и может быть объединена с KSZ8041NL или с KSZ8041TL так, что эти микросхемы будут подключены напрямую одна к другой по интерфейсу MII, что позволяет сформировать очень дешевое решение конвертера медь-оптика. Микросхемы KSZ8041TL/FTL предлагают различные варианты для подключений интерфейса к узлу МАС процессора - MII, RMII или SMII. Кроме двух перечисленных трансиверов, есть еще один - KSZ8041NL. Он имеет все характеристики, идентичные KSZ8041TL, кроме одной. Микросхема выпускается в ультра компактном 32-выводном корпусе QFN (5×5 мм).
Рис. 1. Стартовый набор на трансивер KSZ8001. При помощи программного обеспечения, работающего на хосте, пользователь имеет возможность передавать данные между USB- и Ethernet-портами компьютера
Микросхемы контроллеров
Микросхемы контроллеров KSZ8851 представляют собой новейшую разработку фирмы Micrel. Кратко рассмотрим их основные преимущества. Что же касается того, «почему и зачем я выбираю контроллер», то здесь можно обратиться к материалам, находящимся на сайте (2), где в разделе, посвященном предыдущим изделиям фирмы Micrel - контроллерам KSZ8841/2, подробно рассмотрены достоинства и недостатки схемного решения с контроллерами Ethernet.
Рис. 2. Блок-схема контроллеров KSZ8851MQL и KSZ8851MLL
Характеристики новых контроллеров KSZ8851MQL и KSZ8851MLL в основном близки к характеристикам микросхем KSZ8841/2, конечно, за исключением добавленных новых функций (рис. 4), а характеристики контроллера KSZ8851SNL несколько отличаются от предыдущих микросхем, так как эта микросхема имеет последовательный интерфейс по шине обмена данными с хостом (рис. 5, 6). Поэтому дальнейшее рассмотрение характеристик контроллеров KSZ8851 проводится на примере микросхемы KSZ8851SNL.
Рис. 3. Блок-схема контроллера KSZ8851-SNL
Рис. 4. Схема подключения микросхемы KSZ8851SNL к хосту по последовательному интерфейсу SPI: CSN, SCLK, SI, SO - сигналы интерфейса SPI микросхемы KSZ8851; SCLK, SS, MOSI, MISO - сигналы интерфейса SPI хост-процессора; INTRN - выход сигнала прерывания микросхемы KSZ8851; IRQ - вход запроса прерывания хост-процессора
Микросхемы коммутаторов
Фирма Micrel производит коммутаторы для Ethernet 10/100 со встроенными PHY - KSZ8695, KS8993, KS8995, KS8997, KS8999. Выпускаются управляемые и неуправляемые коммутаторы на различное число портов: 3-, 5-, 8- и 9-портовые. В том числе и на индустриальный диапазон температур. Коммутаторы имеют несколько вариантов интерфейса для связи с контроллером (MII/PCI/SPI). Отдельно необходимо отметить микросхему KSZ8695, представляющую собой систему на кристалле. В данной микросхеме к 5-портовому коммутатору со встроенными PHY добавлен микроконтроллер с ядром ARM922.
Как работает коммутатор? Неуправляемый коммутатор сам производит свое обучение и запоминает, на каком его порте какой из абонентов находится. Процесс проходит следующим образом. Сервер, управляющий сетью, передает в сеть широковещательный пакет. Все абоненты сети обязаны ответить на этот запрос. Когда абонент отвечает серверу, то он в своем пакете данных, в поле «от кого», подставляет свой МАС-адрес. Вот этот-то адрес и заносится в таблицу поиска адресов для того порта, к которому подключен абонент. Далее, если в коммутатор на любой его порт поступит пакет с уникальным адресом, то в поле «кому» будет стоять МАС-адрес того абонента, которому адресован данный пакет, и все поисковые таблицы в портах коммутатора начнут искать запись о том, что к этому порту подключен абонент с таким адресом. В том случае, если такой записи нет, то в данный порт этот пакет данных не передается. Если же запись с таким адресом есть, то этот пакет передается в данный порт[2].
Таким образом, неуправляемый коммутатор работает автономно. Режимы работы коммутатора могут быть «зашиты» аппаратно или загружаться самой микросхемой коммутатора из внешнего ПЗУ с последовательным доступом.
IEEE 802.3
Ethernet — это стандарт, принятый ассоциацией IEEE. Стандарты 802.3 охватывают все возможные разновидности Ethernet (от 10M до 100G). Сконцентрируемся на конкретной реализации физического уровня: 10GBASE-R («обычный» 10G, без излишеств).
Рис. 5. Уровни модели OSI и то, как они отображаются на подуровни протокола Ethernet
Подуровни:
PHY — физический подуровень.
MAC — подуровень управления доступом к среде.
PHY разделяется на следующие части:
PMD обеспечивает передачи и приема отдельных бит на физическом интерфейсе.
PMA обеспечивает сериализацию/десериализацию данных, а так же выделение клока из последовательных данных (на приеме).
XGXS — XGMII расширитель: используется если PHY и MAC находится на расстоянии друг от друга (опционален).
RECONCILIATION — подуровень, транслирующий XGMII в сигналы MAC.
PCS обеспечивает скремблирование/дескремблирование, а так же кодирование/декодирование (64b/66b) блоков данных.
Термины:
Medium — среда передачи.
MDI — интерфейс, зависимый от среды передачи данных.
XGMII — 10G интерфейс, независимый от среды передачи данных. Задача XGMII — обеспечить простое и дешевое соединение между PHY и MAC.
XAUI — 10G интерфейс подключения к трансиверу[3].
Для каждого типа физического уровня может быть своя реализация отдельных PHY-подуровней: применяется различное кодирование, различные частоты передачи (длины волн), но четкое разделение на уровни везде прослеживается. Наличие независимого от среды интерфейса (XGMII) упрощает разработку прикладной логики чипов, т.к. при любом подключении разработчик где-то получит XGMII. О том, что собой представляет XGMII мы поговорим позже.
PMD
Самым близким к среде расположен подуровень PMD: его задачи решают специальные модули:
Таблица 1. Модули подуровня PMD
Тип модуля | Интерфейс | XENPAK | XAUI | X2 | XAUI | XFP | XFI | SFP+ | SFI |
XFI/SFI
XFI и SFI фактически представляют собой один и тот же интерфейс: дифпара, работающая на скоростях от 9.95 до 11.10 гигабод. Набор скоростей обуславливается тем, что несколько стандартов могут использовать этот интерфейс: от 10GBASE-W WAN до 10GBASE-R over G.709. Нас интересует 10GBASE-R LAN с скоростью в 10.3125 гигабод. Одна дифпара используется для приема, другая — для передачи[3].
Рис. 6. XFI/SFI подключается напрямую к ASIC/FPGA
Задачи подуровней PMA и PCS можно решить на чипе, где мы будем выполнять дальнейшую обработку Ethernet пакетов (после того, как выделим их из XGMII). Напомню, что в подуровне PMA необходимо на приеме выделить тактовую частоту и десериализовать входной сигнал. Такую работу могут выполнить специальные аппаратные блоки, которые для других задач нельзя использовать. Эти блоки называются трансиверами. На их подробное описание может уйти целая статья: кому интересно, могут посмотреть посмотреть блок-схему трансиверов в FPGA компании Altera.
После десериализации, данные попадают в подуровень PCS, где производится дескремблирование и декодирование (64b/66b) и отдаются данные в виде XGMII в сторону MAC'a. На передаче выполняются обратные действия[3].
PCS может быть реализован как с использованием специальных аппаратных блоков (Hard PCS), так и с помощью логики, доступной пользователю (Soft PCS). Разумеется, это утверждение справедливо только для FPGA: в ASIC'ах всё сделанно аппаратно. Производители FPGA закладывают аппаратные PCS блоки для стандартных протоколов, экономя разработчику время и ресурсы FPGA. Наличие таких блоков очень подкупает, т.к. многие стандартные протоколы по опыту работают из коробки, и для большинства из них код предоставляется бесплатно производителем FPGA.
Рис.7. Подключение через внешний чип-трансивер
Трансиверы в FPGA — вещь дорогая, дополнительный десяток трансиверов может значительно поднять цену на чип. Есть более дешевые чипы, с трансиверами, работающими на меньших скоростях (могут сериализовать/десериализовать данные на меньших частотах). Другим высокочастотным интерфейсом, который определен в секции 4 стандарта 802.3, является XAUI: 4 дифференциальные пары с скоростью передачи в 3.125 гигабод (для одной линии передачи).
При использовании XAUI возникает опциональный уровень XGXS, который позволяет отдалить PHY и MAC друг от друга на расстояние. Например, выполнять в разных чипах[3].
Задачу PMA и PCS в таком подключении могут выполнить специальные 10G трансиверы (Допускаю, что может возникнуть путаница, т.к. чуть ранее «трансиверы» вспыли в FPGA, и теперь тут возникает этот термин. Модули XFP/SFP+ тоже называются трансиверами.)
Рис. 8. Пример 10G трансивера
Подобный трансивер ставится между XFP/SFP+ модулем и «нашим» чипом, который будет обрабатывать Ethernet пакеты. По факту, такой трансивер используя блоки PMA и PCS производит преобразование XFI/SFI в XGMI, а затем XGMII преобразуется в XAUI[3].
XAUI подается на ASIC/FPGA, где используются трансиверы, аналогичные тем, что были рассмотрены ранее, но на скорости 3.125G. Работа трансивера отличается от того варианта, как это происходит в режиме 10G:
1. Необходимо четыре трансивера (четыре аппаратных блока), т.к. используется 4 дифпары для этого интерфейса.
2. XAUI PCS использует кодирование 8b/10b. В 10G PCS применяется 64b/66b.
XAUI PCS на выходе выдает интерфейс XGMII
Рис. 9. Подключение XENPAK/X2
XGMII
XGMII определяется в clause 46 стандарта 802.3. Этот интерфейс состоит из независимого приема и передачи. Каждое из направлений имеет 32-битную шину данных (RXD/TXD [31:0]), четыре контрольных сигнала (RXC/TXC [3:0]) и клок, по которому работает направление (RX_CLK/TX_CLK). В стандарте определено, что шины данных и контрольных сигналов анализируются на каждый фронт клока (DDR). По шине данных идёт сам пакет, контрольные сигналы определяют начало помогают «выделять» начало и конец пакета, а так же сообщают об авариях.
Значение RX_CLK/TX_CLK равно 156.25 МГц. Перемножение 156.25 * 10^6 * 32 * 2 дает ровно 10 Gbit/s. Чаще всего от защелкивания по обоим фронтам клока уходят, повышая частоту или ширину данных:
Шина 36 бит (32 + 4) на частоте 312.5 МГц
Шина 72 бит (32 * 2 + 4 * 2) на частоте 156.25 МГц
Чем меньше частота, тем проще обработать эти данные и тем более бюджетные чипы можно использовать. Работу на частотах в ~300 МГц могут себе позволить только дорогие FPGA.
Для того, что бы получить из XGMII пакет применяется специальное MAC-ядро:
Пропреитарное - после покупки лицензии на такое IP-ядро, покупатель (чаще всего) получает зашифрованные исходники (без возможности модификации) и нет особого ограничения на количество чипов, в которых можно использовать это ядро[3].
С открытым кодом - ядра очень полезны для новичков, т.к. код открыт, и можно разобраться как оно работает. Лицензия на использование определяется отдельно. Также применяются самописные ядра.
MAC-ядро, выделив пакет из XGMII и разместив пакет во внутренней памяти чипа, «передает» контроль над пакетом прикладной логике чипа: парсерам, фильтрам, системам коммутации и пр. К примеру, если чип стоит на сетевой карте и будет принято решение о том, что надо пакет переслать на хост, то он может быть отправлен с помощью PCIe в оперативную память, подключенную к CPU[3].
Заключение
На фоне бурного развития интернет-технологий, быстрой смены поколений сотовой связи и всестороннего прогресса в разных областях, технологии высокоскоростной передачи данных по медным проводам в последние годы демонстрировали удручающий консерватизм. Пропускная полоса в 10 и более гигабит в секунду достигнута технологически уже давно, однако 10-гигабитный Ethernet, как логическое развитие наиболее массовой сегодня технологии, до сих пор во многом остается экзотикой, недоступной массовому пользователю. Но, вполне вероятно, что ситуация серьезно изменится уже в ближайшем будущем.
Литература
- Свободная энциклопедия Википедия: [Электронный ресурс]. М., 2001-2015. URL: https://ru.wikipedia.org/
- Свободная энциклопедия Википедия [Электронный ресурс]. М., 2001-2015. URL: https://ru.wikipedia.org/ wiki/Сетевой коммутатор
- Хабрахабр: [Электронный ресурс]. М., 2015. URL: http://habrahabr.ru/company/metrotek/blog/234369/
- Хабрахабр: [Электронный ресурс]. М., 2015. URL:
|