В эпоху развития IT индустрии мы наблюдаем значительный рост трафика, из-за этого растут требования к сетям как в промышленном, так и офисном сегменте. Технология 10 Гбит/сек становится всё более популярной при работе с IIoT сетями. Эта необходимость обусловлена стремительным развитием индустриального оборудования, которое внедряется на всех фронтах технологических линий современных производств. Ведь от того, как быстро и эффективно работает оборудование, зависит качество выпускаемой продукции.
Для того, чтобы обеспечить бесперебойную работу на высоких скоростях, как правило, в классическом варианте мы привыкли видеть громоздкие дорогостоящие серверы на базе топовых процессоров Intel Xeon. Времена меняются, сейчас доступны современные технологии и энергоэффективные платформы, которые могут выполнять работу на высоких скоростях не хуже классических сточных серверов. Кроме того, они будут гораздо компактнее, чем классические сервера при намного более низкой стоимости. Самым ярким представителем является сетевая платформа cерии Puzzle-IN003B торговой марки IEI, которая доступна в 4-х вариантах с 10 Гбит Ethernet:
- PUZZLE-IN003B-C1 (базе 4-ядерного Intel ATOM C3558, Barebone версия, без памяти и логотипа);
- PUZZLE-IN003B-C1/8G (на базе 4-ядерного Intel ATOM C3558);
- PUZZLE-IN003B-C0 (на базе 8-ядерного Intel ATOM C3758, Barebone версия, без памяти и логотипа);
- PUZZLE-IN003B-C0/8G (на базе 8-ядерного Intel ATOM C3758).
Что такое PUZZLE-IN003B?
PUZZLE-IN003B – это компактная и универсальная сетевая платформа, которая может заменить коммутатор, NAS и модем в одном устройстве, что крайне удобно с точки зрения администрирования. Одним из самых востребованных и удачных примеров использования этой платформы – это применение её в качестве основы UTM (универсальный шлюз безопасности).
Рис.1 Типовая схема применения PUZZLE-IN003B
PUZZLE-IN003B имеет штатные 6 x GbE и 2 x 10 GbE. Стоит отметить, что эта сетевая платформа оснащена всеми необходимыми интерфейсами для работы с высокоскоростными сетями.
2 x M.2 M-key для подключения современных твердотельных накопителей с поддержкой nVMe.
1 x Mini PCIe для обеспечения резервируемой сети или вывода дополнительной периферии.
4 x DIMM объёмом памяти до 128 Гб, что крайне важно при работе с большим кэшем.
Пожалуй, самое главное преимущество Puzzle-IN003B – это его исполнение.
Сетевая платформа имеет пассивную систему охлаждения. В системе отсутствуют кулеры и другие подвижные части, это позволяет снизить уровень шума и увеличить срок службы.
Универсальный способ монтажа: сетевая платформа PUZZLE-IN003B является компактным настольным решением, но также она может быть установлена и в 19” cтойку, занимая при этом всего 1U (крепление идёт в комплекте).
Рис.2 PUZZLE-IN003B в стоечном варианте
Рис.3 PUZZLE-IN003B в настольном варианте
Блок-схема чипсета материнской платы
Рис.4 Блок-схема чипсета материнской платы
Datasheet: смотреть
PUZZLE-IN003 + DPDK = 10 Гбит/с
Главная особенность сетевых платформ PUZZLE-IN003B – это работа под управлением ОС Linux. Поскольку ОС Linux, как известно, является универсальной операционной системой, то отсюда появляются нюансы при работе на высоких скоростях, например, при 10 Гбит/с. В классическом исполнении Linux реальную работу с 10 Гбит/с мы обычно видим только на топовых процессорах, например, из семейства Xeon. Это подразумевает тот факт, что система выходит нам «в копеечку», и отсюда возникает логичный вопрос: «Как решать проблему оптимизации на недорогих платформах?». Первым об этом задумался Intel, придумав технологию DPDK (Data Plane Development Kit).
Что такое DPDK (Data Plane Development Kit)?
DPDK – это программный ускоритель, который включает в себя специализированный набор библиотек и драйверов для быстрой обработки пакетов. Использование DPDK позволяет оптимизировать работу на высоких скоростях путём перекладывания функций из ядра в приложение, выделяя при этом ресурсы в виде ядер процессора и большого количество памяти. Кроме того, сетевые контроллеры общаются напрямую с процессором, минуя ядро системы.
Эта оптимизация позволяет использовать маломощные процессоры, меняя в корне логику работы сети.
Преимущества использования DPDK
- Статическая и постоянная память (буферы) для приёма и передачи пакетов. Нет динамического выделения и освобождения памяти;
- Ручная настройка ресурсов (память, ядра, процессоры);
- Реализация виртуального свитча OpenSwitch;
- Реализация пакетного процессора 3-его уровня VPP (Vector Packet Processor).
Специалисты компании «Ниеншанц-Автоматика» в собственной лаборатории провели тест с применением технологии DPDK. Главной задачей была проверка корректности работы каналов при работе с 10 Гбит/с. Описание стенда и полученные результаты приведём ниже.
Тестирование
С целью проверки корректности работы каналов на высоких скоростях был собран стенд измерения скоростей на базе Linux, в состав которого вошли:
- 1 x PUZZLE-IN003B-C0/8G;
- 2 x PUZZLE-IN002;
Рис.5 Стенд измерения скоростей
На одном PUZZLE-IN002 генерировался беспрерывный трафик, на другом PUZZLE-IN002 происходило его зеркалирование и возвращение обратно. Главная задача сетевой платформы PUZZLE-IN003B-C0/8G – это маршрутизировать и считать пакеты с обеих сторон, задействовав при этом свои штатные 10-гигабитные интерфейсы. Технологию DPDK использовали на всех платформах на стенде. Важно отметить, что для достижения лучшего результата необходимо использовать большие страницы в памяти, а также вручную привязывать ядра.
Стенд даёт возможность управлять шириной всех пакетов, как маленьких, так и больших, что позволяет эффективнее оценивать полученные результаты.
Результаты
Чтобы добиться работы на ожидаемом уровне производительности при скорости канала 10 Гбит/с и размере пакета в 84 байта, процессор должен обрабатывать 14,8 млн пакетов в секунду. На рисунке №6 показано, что нам удалось достигнуть желаемого результата, мы видим, что забитый канал - 14,8 млн пакетов в секунду прошёл в обе стороны при полной загруженности системы:
Рис.6 Полученные результаты с DPDK
Ради интереса мы протестировали стенд без применения технологии DPDK и получили отрицательные результаты. Без нагрузки скорость достигала 9,4 Гб в секунду, но как только появлялась нагрузка, скорость стремительно падала (см. рис №7).
Рис.7 Полученные результаты без DPDK
Вывод
10 Гбит/с в компактном форм-факторе – реальность. Реальность = PUZZLE-IN003B + DPDK.
В следующем обзоре мы протестируем ультракомпактный IoT-шлюз с поддержкой 10 Гбит/сек на АРМ архитектуре - DRPC-330.
Попробуем сломать стереотипы, связанные с высокими скоростями.
Почему стоит выбрать «Ниеншанц-Автоматику» и IEI?
Компания «Ниеншанц-Автоматика» имеет самые большие склады оборудования для автоматизации и промышленных компьютеров в России и Европе, включая оборудование IEI и других партнеров. В наличии на складе в России имеются сетевые платформы серии PUZZLE, что позволяет минимизировать сроки ожидания и ускорить процесс интеграции на объект.
IEI - надежный производитель промышленных компьютеров и комплектующих, клиенты которого доверяют ему стратегические важные задачи на протяжении ни одного десятка лет.
«Ниеншанц-Автоматика» является авторизированным дистрибьютором и сервисным центром IEI в России и странах СНГ и представляет весь спектр промышленных решений этого производителя, а также оказывает информационную, сервисную и техническую поддержку.