BBC раскрыла способ обработки сетевых пакетов в обход ядра Linux

IP Studio BBC

BBC открыла код проекта IP Studio, созданного для повышения пропускной способности систем потокового вещания. В нем используются техники обхода kernel bypass, полностью исключающие сетевой стек Linux из процесса обработки пакетов. Они же обеспечивают прямое взаимодействие приложений в пользовательском пространстве с сетевым устройством.

Метод обхода

При обработке большого числа пакетов через стандартную систему сокетов операции их копирования в память проходят несколько раз. Разработчики BBC обнаружили, что фреймворк Netmap помогает передавать сразу несколько пакетов сетевой карте, сокращая число операций. В качестве сетевого адаптера в корпорации использовали Mellanox ConnectX-4 с открытым драйвером для ядра Linux, но без поддержки в Netmap.

Реализация

В BBC подготовили код для поддержки сетевых адапетров Mellanox в Netmap и добились производительности на уровне 80 Гб/с при однопоточном тестировании. Они также предложили новый драйвер mlx5 с поддержкой прямого взаимодействия c 10/25/40/50/100-гигабитными Mellanox ConnectX-4 и ConnectX-5 для включения в основной состав проекта Netmap.

Напомним, что в апреле 2018 года анонсирована стабильная версия Linux 4.16. Основные изменения коснулись драйверов, общего взаимодействия с аппаратной частью, файловой системы и работы с сетью.

Источник: OpenNET

Ещё интересное для вас:
Тест: что вы знаете о работе мозга?
Что посмотреть и куда сходить разработчку — ближайшие события