Лаборатория Intel

Второго октября 2002 года в Большом концертном зале «Академический» Российской Академии Наук в Москве состоялся Intel Developer Forum (IDF) — крупнейшее мероприятие для разработчиков аппаратных средств и программного обеспечения.

Во время московского IDF главный исполнительный директор корпорации Intel Крейг Барет объявил о планах создания до конца этого года трех коммуникационных лабораторий, одна из которых будет открыта при Санкт-Петербургском Университете Телекоммуникаций им проф. М.А. Бонч-Бруевича (кафедра СКиРИ). Создаваемые лаборатории должны стать образовательными центрами для обучения студентов и подготовки специалистов в области архитектуры Intel Internet Exchange Architecture (IXA).

IXA (Internet Exchange Architecture) — архитектура создания аппаратного и программного обеспечения для рынка телекоммуникаций. Процессоры серии IXP12хх являются представителями семейства сетевых процессоров, производимых компанией Intel в рамках IXA.

IXP могут применяться в широком диапазоне оборудования, непосредственно для решения задач коммутации/маршрутизации больших потоков трафика, конвертирования протоколов, реализации технологий обеспечения QoS, фильтрации трафика, реализации firewall и VPN, управления нагрузкой и некоторых других. Например, системы на базе процессоров IXP в состоянии решать в реальном масштабе времени такие задачи, как осуществлять конвертирование трафика ATM в Ethernet и обратно.

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

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

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

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

Кроме процессоров семейства IXP в рамках IXA разработаны и другие элементы, например, такие как:

  • IXC-процессоры уровня управления (могут применяться для управления сигнализацией и соединениями, таблицам маршрутизации, рис. 1);
  • IXS-процессоры обработки медиа-потоков (могут применяться, например, при осуществления переноса речевого трафика из коммутируемой сети в сеть с КП, рис. 2);
  • IXF-элементы для создания контроллеров доступа к канальному уровню, рис. 1.

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

Необходимо упомянуть о совместимости существующих и планируемых процессоров. Не смотря на то, что IXP12хх были разработаны одними из первых, компания-производитель обещает совместимость, с последующими версиями процессоров.

Рис. 1. Применение процессоров архитектуры IXA. Реализация мультисервисного коммутатора/маршрутизатора


Рис. 2. Применение процессоров IXP и IXS для реализации медиа-шлюза между коммутируемой сетью и сетью КП


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

Для ускорения процесса разработки оборудования на IXP12хх Intel предлагает аппаратно-программный комплекс IXDP1200 Advanced Development Platform. Аппаратная часть комплекса включает в себя плату сетевого процессора IXP1200 с портами Ethernet и последовательным портом, шасси со слотами CompactPCI, дополнительно могут быть установлены платы ввода/вывода с WAN или LAN интерфейсами.

Программное обеспечение может включать Intel IXA SDK, содержащий необходимые средства для создания программ под IXP, включая «Microengine C Compiler», средство, существенно облегчающее работы по программированию IXP. Microengine C Compiler появился сравнительно недавно. Также предлагаются необходимые библиотеки и примеры создания приложений под IXDP.

Средой выполнения программ для IXP1200 являются встраиваемые (embedded) операционные системы реального времени, такие как VxWorks или embedded Linux.

Операционная система реального времени VxWorks фирмы Wind River Systems предназначена для применения на встроенных компьютерах, работающих в системах "жесткого" реального времени. Операционная система VxWorks является системой с кросс-средствами разработки прикладного программного обеспечения, т.е. разработка ведется на инструментальном компьютере (host) для последующего исполнения на целевой машине (target).

Пакет для разработки ПО на инструментальном ПК называется Tornado и может работать под операционными системами MS Windows.

VxWorks компании Wind River «де-факто» стандарт встраиваемой ОС для оборудования сетевой инфраструктуры. Значительная часть используемого в Интернет сетевого оборудования коммутаторы, маршрутизаторы, серверы удаленного доступа и устройства широкополосного доступа работают под управлением VxWorks.

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

Разработчики встраиваемых систем могут бесплатно загрузить через Интернет комплект Tornado Prototyper, который включает в себя полную инструментальную среду Tornado и симулятор операционной системы VxWorks, работающие в среде Windows. Комплект может применяться на первоначальной стадии создания оборудования или для обучения.

В предполагаемый учебный курс кроме описания архитектуры IXA, построения процессоров IXP и других планируется включить рассмотрение ОСРВ VxWorks и среды разработки Tornado, в свою очередь, это потребует рассмотрения ОСРВ как таковых. На практических занятиях планируется ознакомление с соответствующим SDK, в частности с Microengine C Compiler и микрокодом процессора, естественно с демонстрацией некоторых приложений (конверторов, маршрутизаторов) с описанием их работы.