В последнее время во многих маршрутизаторах наряду с RISC-процессорами или даже вместо них используются специализированные интегральные схемы (Application Specific Integrated Circuit, ASIC).
ASIC - это микросхема, созданная для выполнения вполне определенного приложения. Она способна объединить в себе функции, обычно реализуемые целым набором микросхем, но при этом оказывается существенно быстрее, компактнее и дешевле. Благодаря использованию специализированных интегральных схем в разного рода устройствах повышается производительность последних, снижаются расходы на их выпуск и техобслуживание. Технология ASIC достаточно проработанна, чтобы многие функции, традиционно реализуемые программным способом, можно было перенести в кремний. Иными словами, концепция ASIC предоставляет разработчикам полную свободу в использовании всей мощи постоянно совершенствующихся кремниевых технологий при создании электронных устройств, отвечающих за выполнение специализированных функций.
За прошедшее десятилетие производительность и плотность кремниевых кристаллов заметно возросли, а толщина слоя - уменьшилась. Самая современная, 0,25-микронная технология, обеспечивает возможность размещения в одном кристалле более 5 млн. логических элементов. При этом максимальная тактовая частота микросхемы составляет 150 МГц. Десять лет назад ASIC, изготовлявшиеся по 1,5-микронной технологии, могли работать лишь на частоте 25 МГц. На кристалле умещалось от 10 до 20 тыс. логических элементов. Спустя пять лет 0,6-микронная технология позволила увеличить частоту до 66 МГц, а плотность размещения логических элементов - до 75-100 тыс.
Массив логических элементов и их количество на кристалле определяют общую функциональность ASIC. По прогнозам экспертов, к 2005 году на одном кристалле можно будет разместить до 10 млн. логических элементов, а общий объем рынка ASIC достигнет 8 млрд. долл.
Производители имеют возможность полностью или частично изменить по требованию заказчика конфигурацию логических элементов на микросхеме.
Крупные производители ASIC, подобные IBM, предоставляют заказчикам возможность выбора из базовых библиотек микросхем. В прошлом стандартными "библиотечными" компонентами были лишь базовые элементы, например память, однако сейчас специализированные интегральные схемы, предлагаемые многими производителями, могут содержать так называемые "ядра", способные реализовать весьма сложную функциональность, например поддержку Gigabit Ethernet или контроллера PCI.
Благодаря этим достижениям появилась возможность переноса множества функций из программной в аппаратную часть устройств, а следовательно, существенного сокращения нагрузки на центральный процессор, повышения скорости обработки и увеличения числа поддерживаемых устройствами функций.
Использование ASIC взамен традиционных технологий может привести к многократному увеличению производительности.
Однако при переносе функций в кремний есть риск утраты гибкости, обеспечиваемой программной реализацией. Между тем подобная гибкость является весьма существенной. Дело в том, что в области глобальных сетей, например, многие основополагающие стандарты пока еще только развиваются и согласовываются.
В частности, механизмы обеспечения требуемого качества обслуживания (например, Differentiated Services, предложенные IETF) находятся в стадии разработки. На начальном этапе формирования находятся протоколы Multiprotocol Label Switching и Layer 2 Tunnel Protocol. Идут дискуссии по новым схемам инкапсуляции IP-пакетов.
Поэтому немедленно переносить в ASIC все мыслимые функции обработки пакетов было бы неразумно.
Более взвешенный подход - рациональное объединение сильных сторон технологий RISC и ASIC. При этом обеспечиваемая RISC-процессором гибкость сочетается с высокой производительностью и низкой стоимостью, свойственными чисто аппаратному решению на базе ASIC.
На наш взгляд, в ASIC можно было бы без опасений перенести функции общего назначения, такие как управление буфером и очередью, планирование качества обслуживания (QoS, Quality of Service), выбор адреса и классификация трафика.
На "долю" же RISC-процессоров следует оставить интерпретацию и модификацию заголовков пакетов уровня 2 и 3, управление качеством обслуживания, сбор статистики и другие функции, в которые вероятнее всего еще потребуется вносить изменения.
Чтобы решить, сколько функций обработки заголовков пакетов следует реализовать аппаратно, а сколько переложить на встроенное ПО для RISC-процессора, придется учесть ряд условий.
В конечном счете это соотношение зависит от того, на какой сегмент рынка ориентируются создатели того или иного коммутатора или маршрутизатора.
Программно реализованные коммутаторы и маршрутизаторы обладают гибкостью, но не обеспечивают достаточную производительность, особенно при выполнении функций, отвечающих за обеспечение гарантированного качества обслуживания. Аппаратные реализации на базе ASIC отличаются очень высокой производительностью, но не обеспечивают гибкость, столь необходимую для устройств, используемых в глобальных сетях.
Крис Лоулер и Курт Мелден - учредители недавно созданной фирмы Redstone Communications, которая специализируется на сетевом оборудовании коммутации пакетов. С авторами можно связаться по электронной почте: clawler@redstone.com и kmelden@redstone.com.