Архитектура сетевых процессоров
Source: https://asvk.cs.msu.ru/laboratorii-i-nauchnaya-deyatelnost/napravleniya-issledovanij/arhitektura-setevyh-processorov/ Parent: https://asvk.cs.msu.ru/laboratorii-i-nauchnaya-deyatelnost/napravleniya-issledovanij/
Архитектура сетевых процессоров
Коммутатором в компьютерной сети является устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного или нескольких сегментов сети. Коммутатор обычно работает на канальном уровне сетевой модели ISO OSI. Коммутатор, поддерживающий технологию ПКС, является ПКС-коммутатором. Основным блоком коммутатора является сетевой процессор, реализующее функцию обработки сетевого трафика.\ Сетевой процессор реализует следующие основные функции:
- получение пакета с физического уровня;
- выделение заголовка из пакета для дальнейшей классификации;
- классификация пакета – идентификация пакета по заголовку;
- модификация заголовка пакета и принятие решения о пути следования пакета (отправка на порт, сброс, дальнейшая обработка);
- управление трафиком;
- передача пакета на физический уровень.
В рамках исследования архитектуры сетевых процессоров ведутся следующие работы:
- Оптимизация архитектуры программы сетевого процессора\ Для того, чтобы обрабатывать пакеты на высокой скорости и поддерживать богатый набор протоколов необходимо принимать ряд нетривиальных решений по оптимизации используемых модулей ПО и связей между ними.
- Исследование методов обработки заголовка пакета в ячейках конвейера сетевого процессорного устройства\ В рамках данного направления проводится исследование устройства анализатора заголовков пакетов в сетевых процессорных устройствах с целью нахождения способов ускорения его работы.
- Исследование методов представления таблиц потоков коммутатора программно-конфигурируемой сети\ Одной из задач, возникающей в сетевых процессорах является задача трансляции представления протокола управления коммутатором (Openflow в данной работе) в язык ассемблера сетевого процессора. В рамках данного направления необходимо рассмотреть варианты представления.
- Исследование подходов к организации поиска в архитектуре сетевого процессора без выделенного ассоциативного устройства\ Одним из способов повысить производительность программируемого сетевого процессора является отказ от выделенного ассоциативного устройства. В рамках данной работы рассматривается архитектура сетевого процессора, где в памяти стадий конвейера обработки пакетов размещаются не только программы обработки пакетов, но и таблиц классификации. При этом существует множество подходов к реализации LPM поиска в плоской памяти. В рамках данного направления работ требуется сравнить различные алгоритмы в рамках архитектуры отечественного сетевого процессора.
- Исследование алгоритмов обработки пакетов с сохранением состояния (stateful)\ Несмотря на вынесение управления плоскостью передачи данных вне сетевых устройств в ПКС, требования к высокой производительности этих устройств могут в некоторых приложениях (связанных с мониторингом сети, управлением очередей и балансировкой нагрузки) требовать реализации некоторой ограниченной управляющей функциональности в них. В настоящее время среди лидирующих производителей сетевых процессоров прослеживается тенденция к реализации возможностей обработки пакетов с сохранением состояния (stateful) на уровне архитектуры. При обработке пакетов без сохранения состояния (stateless) хранится лишь информация, связанная с одним пакетом, и существует лишь в процессе обработки этого пакета, состояние сетевого устройства при этом не меняется. При обработке с сохранением состояния (stateful) после обработки пакета может сохраняться некоторая информация (меняется состояние сетевого устройства), то есть этот пакет будет влиять на особенности обработки следующего пакета. В рамках данного направления работ предполагается исследовать применимость отечественного сетевого процессора для реализации данных возможностей.
Публикации:
Об одном подходе к построению сетевого процессорного устройства
Исследование ячейки конвейера сетевого процессорного устройства на модели уровня регистровых передач
Оценка применимости процессорных ядер КМX32 и RISC-V в сетевом процессорном устройстве