OpenDataPlane - OpenDataPlane
Оригинальный автор (ы) | Начальная загрузка проекта с открытым исходным кодом в рамках сетевой группы Linaro |
---|---|
Репозиторий | github |
Написано в | C |
Лицензия | BSD-3 |
Интернет сайт | опендатаплан |
В OpenDataPlane (ODP) является Открытый исходный код проект, который определяет интерфейсы прикладного программирования (API) для портативных высокопроизводительных сетей плоскость данных Приложения.[1] Дизайн ODP API позволяет использовать различные стратегии реализации, не подвергая приложение подробностям реализации. Это позволяет одному и тому же приложению (исходному или двоичному) эффективно работать на различных аппаратных платформах с разными уровнями аппаратного ускорения. Например, один и тот же исходный код приложения может быть перекомпилирован для работы в стандартной серверной системе или специализированной сети. Система на чипе (SoC) устройство.
Плоскость сетевых данных относится к программному и аппаратному обеспечению, которое пересылает пакеты / кадры с одного интерфейса на другой и обычно выполняет различные операции (проверка ошибок, добавление / удаление / изменение заголовков протокола и т. Д.) С пакетными данными. Обычно программное обеспечение плоскости данных использует аппаратное ускорение (например, вычисление контрольной суммы протокола) для достижения высоких скоростей передачи пакетов и битрейта. Сети плоскость управления и плоскость управления относятся к программному обеспечению, которое контролирует и контролирует работу программного и аппаратного обеспечения плоскости данных.
История
29 октября 2013 года Linaro объявила, что сотрудничает с членами группы интересов Linaro Networking в разработке и размещении открытого стандартного интерфейса программирования приложений для приложений плоскости данных.[2] Первоначально разработанный членами Linaro Networking Group, этот проект открыт для участия всех людей и компаний, которые разделяют интерес в продвижении стандартного набора API-интерфейсов для использования во всем диапазоне доступных архитектур сетевых процессоров.
Обзор технологии
ODP состоит из спецификации API и набора эталонных реализаций, реализующих эти API на разных платформах.[3] Реализации варьируются от чистого программного обеспечения до тех, которые глубоко используют различные функции аппаратного ускорения и разгрузки, имеющиеся в современных сетях. Система на кристалле (SoC) процессоры.
Цель ODP - предоставить разработчикам API большую гибкость для использования и оптимизации реализации. Это предназначено для обеспечения легкой переносимости платформы, чтобы приложение, написанное для API, могло повысить производительность без необходимости значительных знаний платформы при переносе.
ODP в настоящее время используется для разработки реализаций эталонной платформы Открытая платформа для NFV (OPNFV) [4] и продвигается [5][6] компаниями в рамках своих инициатив по поддержке плоскости данных.
Продукты были анонсированы такими компаниями, как Kalray, с множеством аббревиатур.[7] Модели исполнения OpenDataPlane до завершения и инфраструктура также используются приложениями FastPath для использования функциональности OpenFastPath. DPDK поддерживается в версии OpenFastPath через уровень ODP-DPDK. Цель OpenFastPath - обеспечить ускоренную маршрутизацию / переадресацию для IPv4 и IPv6, туннелирование и завершение для различных протоколов.[8]
Реализации
Существует Linux основанная на эталонной программной реализации ODP API, предназначенная как функциональная модель для определения поведения API. В сочетании с пакетом проверки это дает основу для расширения ускоренных реализаций. Текущие реализации ODP существуют для нескольких процессоров с разной степенью аппаратной разгрузки:
Текущие реализации ODP
Имя | Владелец / Сопровождающий | Целевая платформа | Архитектура |
---|---|---|---|
odp-linux | Открытый вклад | Чистая программная реализация, работает в любой системе Linux. Не является целью производительности, но может использовать DPDK и Netmap. | Любой |
odp-dpdk | Открытый вклад | Серверы Intel x86 и ARMv8, использующие DPDK в качестве уровня программного ускорения | Intel x86, ARMv8 |
odp-keystone2 | Инструменты Техаса | SoC TI Keystone II | ARM Cortex-A-15 |
linux-qoriq | NXP | SoC NXP QorIQ[9] | Питание и ARMv8 |
OCTEON | Cavium Networks | SoC Cavium Octeon ™ | MIPS64 |
ГРОМ[10] | Cavium Networks | Cavium ThunderX ™ SoC | ARMv8 |
Kalray[11] | Kalray | Платформа MPPA | MPPA |
odp-hisilicon[12] | Hisilicon | Платформа Hisilicon | ARMv8 |
Релизы
Ниже перечислены различные выпуски OpenDatePlane:
Название выпуска | Дата выхода |
---|---|
OpenDataPlane v1.0.0 | 27 февраля 2015 г. |
OpenDataPlane v1.0.1 | 17 марта 2015 г. |
OpenDataPlane v1.0.2 | 27 марта 2015 г. |
OpenDataPlane v1.0.3 | 17 апреля 2015 г. |
OpenDataPlane v1.0.4 | 30 апреля 2015 г. |
OpenDataPlane v1.1 | 13 мая 2015 года |
OpenDataPlane v1.2 | 22 июля 2015 г. |
OpenDataPlane v1.3 | 31 августа 2015 г. |
OpenDataPlane v1.4 | 30 сентября 2015 г. |
OpenDataPlane v1.4.1 | 13 ноября 2015 г. |
OpenDataPlane v1.5 | 1 декабря 2015 г. |
OpenDataPlane v1.6 | 31 декабря 2015 г. |
OpenDataPlane v1.7 | 8 февраля 2016 г. |
OpenDataPlane v1.8 | 4 марта 2016 г. |
OpenDataPlane v1.9 | 15 апреля 2016 г. |
OpenDataPlane v1.10 | 29 апреля 2016 г. |
OpenDataPlane v1.10.1 | 14 июня 2016 г. |
OpenDataPlane v1.11 | 18 августа 2016 г. |
OpenDataPlane v1.12 | 2 декабря 2016 г. |
OpenDataPlane v1.13 | 18 января 2017 г. |
OpenDataPlane v1.14 | 1 марта 2017 г. |
OpenDataPlane v1.15 | 19 июня 2017 г. |
OpenDataPlane v1.16 | 10 ноября 2017 г. |
OpenDataPlane v1.17 | 30 декабря 2017 г. |
OpenDataPlane v1.18 | 5 марта 2018 г. |
OpenDataPlane v1.18.0.1 | 16 марта 2018 г. |
OpenDataPlane v1.19 | 19 апреля 2018 г. |
OpenDataPlane v1.19.0.1 | 10 мая 2018 |
OpenDataPlane v1.19.0.2 | 4 июля 2018 г. |
OpenDataPlane v1.20.0.0 | 3 декабря 2018 г. |
OpenDataPlane v1.21.0.0 | 28 января 2019 г., |
OpenDataPlane v1.22.0.0 | 22 августа 2019 г., |
OpenDataPlane v1.23.0.0 | 21 ноября 2019 г., |
Экосистема
Следующие организации в настоящее время спонсируют разработку ODP.
- РУКА
- Broadcom[13]
- Cavium[14]
- Cisco
- ENEA AB [15]
- Ericsson
- HiSilicon
- Линаро
- MontaVista
- Nokia
- NXP
- Инструменты Техаса
- Ветер - ранее Системы Wind River
- ZTE
Проекты
Следующие проекты с открытым исходным кодом используют ODP API в качестве уровня абстракции для оборудования плоскости данных.
- OpenEventMachine каркас приложения плоскости данных
- OpenFastPath Стек TCP / IP
Рекомендации
- ^ Сообщество ARM Connected (2013-10-29). «Linaro Networking Group запускает новую инициативу с открытым исходным кодом для API программирования плоскости данных». ARM.com. Получено 2013-10-29.
- ^ Linaro Limited (29 октября 2013 г.). «Linaro запускает проект OpenDataPlane ™ (ODP) для обеспечения межплатформенной совместимости с открытым исходным кодом для сетевых платформ». Linaro.org. Получено 2013-10-29.
- ^ https://www.ietf.org/proceedings/90/slides/slides-90-forces-6.pdf
- ^ Энеа (05.05.2015). «Enea AB: ARM и Enea демонстрируют эталонную платформу открытой платформы для виртуализации сетевых функций». Businesswire.com. Получено 2015-05-05.
- ^ Сообщество ARM Connected (18 мая 2015 г.). «Появление стандарта OpenDataPlane». ARM.com. Получено 2015-05-18.
- ^ Марвелл (23 февраля 2016 г.). «Marvell расширяет свое семейство 32- и 64-разрядных встроенных процессоров ARMADA SoC с помощью надежной экосистемы программных решений и партнеров для множества приложений». Marvell.com. Получено 2016-02-23.
- ^ Kalrayinc (09.02.2016). "Kalray запускает высокоскоростные процессоры ввода-вывода". kalrayinc.com. Получено 2016-02-09.
- ^ OpenFastPath (15 марта 2016 г.). «OpenFastPath - быстрый путь IP с открытым исходным кодом». openfastpath.org. Получено 2016-03-15.
- ^ Freescale (в настоящее время NXP) (03.03.2015). «Freescale поддерживает OpenDataPlane для программно-определяемых сетей на основе платформ обработки QorIQ». NXP.com. Получено 2015-08-12.
- ^ Cavium (02.03.2015). «Cavium преодолевает барьер пропускной способности IPsec 100 Гбит / с с помощью OpenDataPlane ™ на Mobile World Congress 2015». Cavium.com. Получено 2015-03-02.
- ^ Калрай (2017-10-11). «Порт OpenDataPlane для платформы MPPA».
- ^ HiSilicon (25 марта 2017 г.). «Порт OpenDataPlane для платформы Hisilicon».
- ^ Broadcom (20 февраля 2014 г.). «Broadcom анонсирует платформу виртуализации открытых сетевых функций». broadcom.com. Получено 2014-02-20.
- ^ Cavium (19.08.2016). «Linaro объявляет о первом выпуске OpenDataPlane для LTS Monarch». cavium.com. Получено 2016-08-19.
- ^ Энеа (13 февраля 2015 г.). «Enea демонстрирует реализацию Open Event Machine на архитектуре Broadcom XLP на MWC». enea.com. Получено 2015-02-13.