Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Intel FWIXP422BB

Сетевой процессор является интегральной схемой , которая имеет набор функций , в частности , нацелено на создание сетей домена приложения.

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

История развития [ править ]

В современных телекоммуникационных сетях информация (голос, видео, данные) передается в виде пакетных данных (так называемая коммутация пакетов ), в отличие от более старых телекоммуникационных сетей, которые передавали информацию в виде аналоговых сигналов, например, в коммутируемой телефонной сети общего пользования (PSTN) или аналоговой. Телевидение / Радиосети . Обработка этих пакетов привела к созданию интегральных схем (ИС), оптимизированных для работы с этой формой пакетных данных. Сетевые процессоры имеют определенные функции или архитектуры, которые предназначены для улучшения и оптимизации обработки пакетов в этих сетях.

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

Сетевые процессоры используются при производстве множества различных типов сетевого оборудования, таких как:

Общие функции [ править ]

В общей роли процессора пакетов в сетевом процессоре обычно присутствует ряд оптимизированных функций или функций, в том числе:

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

Архитектурные парадигмы [ править ]

Чтобы иметь дело с высокими скоростями передачи данных, обычно используются несколько архитектурных парадигм:

  • Конвейер процессоров - каждая стадия конвейера, состоящая из процессора, выполняющего одну из функций, перечисленных выше.
  • Параллельная обработка с использованием нескольких процессоров, часто включая многопоточность .
  • Специализированные движки с микрокодированием для более эффективного выполнения поставленных задач.
  • С появлением многоядерных архитектур сетевые процессоры могут использоваться для обработки более высокого уровня ( L4-L7 ).

Кроме того, управление трафиком, которое является критическим элементом сетевой обработки L2 - L3 и которое раньше выполнялось множеством сопроцессоров, стало неотъемлемой частью архитектуры сетевого процессора и существенной частью его области кремния (" недвижимость ») посвящена интегрированному диспетчеру трафика. [1] Современные сетевые процессоры также оснащены встроенными сетями взаимодействия с низкой задержкой и высокой пропускной способностью, оптимизированными для обмена небольшими сообщениями между ядрами (несколько слов данных). Такие сети могут использоваться как альтернативное средство для эффективного межъядерного взаимодействия помимо стандартного использования общей памяти. [2]

Приложения [ править ]

Используя общую функцию сетевого процессора, программа реализует приложение, которое выполняет сетевой процессор, в результате чего физическое оборудование выполняет задачу или предоставляет услугу. Вот некоторые из типов приложений, которые обычно реализуются как программное обеспечение, работающее на сетевых процессорах: [3]

  • Распознавание и пересылка пакетов или кадров , то есть основная операция маршрутизатора или коммутатора .
  • Обеспечение качества обслуживания (QoS) - идентификация различных типов или классов пакетов и обеспечение предпочтительной обработки для некоторых типов или классов пакетов за счет других типов или классов пакетов.
  • Функции контроля доступа - определение того, следует ли разрешить конкретному пакету или потоку пакетов проходить через часть сетевого оборудования.
  • Шифрование потоков данных - встроенные механизмы аппаратного шифрования позволяют процессору шифровать отдельные потоки данных.
  • Обработка разгрузки TCP

См. Также [ править ]

  • Обработчик контента
  • Многоядерный процессор
  • Процессор, основанный на знаниях
  • Активные сети
  • Компьютерная инженерия
  • Интернет
  • Список несуществующих компаний по производству сетевых процессоров
  • Форум сетевой обработки
  • Теория массового обслуживания
  • Сеть на микросхеме

Ссылки [ править ]

  1. Перейти ↑ Giladi, Ran (2008). Сетевые процессоры: архитектура, программирование и реализация . Системы на кремнии. Морган Кауфманн. ISBN 978-0-12-370891-5.
  2. ^ Буоно, Даниэле; Менкагли, Габриэле (21–25 июля 2014 г.). Механизмы времени выполнения для детального параллелизма на сетевых процессорах: опыт TILEPro64 (PDF) . 2014 Международная конференция по моделированию высокопроизводительных вычислений (HPCS 2014). Болонья, Италия. С. 55–64. DOI : 10.1109 / HPCSim.2014.6903669 . ISBN  978-1-4799-5313-4. Архивировано 27 марта 2019 года (PDF) из оригинала. Альтернативный URL
  3. ^ Комер, Дуглас Э. (2005). Проектирование сетевых систем с использованием сетевых процессоров: версия Intel 2XXX . Эддисон-Уэсли. ISBN 978-0-13-187286-8.