Состоялся (https://dpdk.org/ml/archives/announce/2018-February/000172.h... релиз фреймворка DPDK (http://dpdk.org/) (Data Plane Development Kit), предоставляющего средства для создания высокопроизводительных сетевых приложений, напрямую работающих с сетевым оборудованием и обрабатывающих пакеты минуя сетевой стек ядра. В качестве первичной платформы заявлен Linux, но имеется ограниченный по своим возможностям вариант для FreeBSD. Исходные тексты библиотек и драйверов поставляются (https://github.com/DPDK/dpdk) под лицензией BSD, а компоненты для ядра Linux доступны под GPLv2.Разработчикам предлагается набор библиотек для низкоуровневой работы с сетевыми адаптерами, взаимодействия в многоядерных системах, задействования кольцевых буферов и больших страниц памяти ("huge page"). При помощи данных библиотек можно принимать и отправлять сетевые пакеты с выполнением минимального числа циклов CPU (около 80 циклов на пакет), создавать быстрые системы захвата трафика (аналоги tcpdump) и создавать высокопроизводительные компоненты сетевого стека. При этом DPDK сам по себе не является сетевым стеком, а лишь предоставляет низкоуровневую функциональность на безе которой можно создавать реализации виртуализированных компонентов сетей (NFV, Network Functions Virtualization (http://en.wikipedia.org/wiki/Network_Functions_Virtualizatio... например, можно применять для создания виртуальных реализаций пограничных контроллеров сессий (SBC), коммутаторов, балансировщиков нагрузки, межсетевых экранов, систем обнаружения атак и WAN-ускорителей.
В новом выпуске сохранена полная совместимость с версией 17.11 на уровне ABI (можно обновить библиотеки без пересборки приложений).
Добавлена (http://dpdk.org/doc/guides/rel_notes/release_18_02.html) поддержка новых классов устройств rawdev и bbdev (Wireless Base Band для ускорения обработки 3gpp Layer 1), представлен ethernet-драйвер AVF (Adaptive Virtual Function) и драйвер для поддержки платформы Hyper-V, расширены возможности драйверов igb, mlx5, mlx4, ixgbe и i40e, добавлены новые eventdev-драйверы DPAA (Data Path Acceleration Architecture) и OPDL (Ordered Packet Distribution Library), а такде поддержка ускорения вычислений IPsec при помощи DPAA. Реализована экспериментальная поддержка системы сборки meson и возможность привязки и проверки тегов.
URL: https://dpdk.org/ml/archives/announce/2018-February/000172.html
Новость: http://www.opennet.me/opennews/art.shtml?num=48099
Альтернатива ZeroMQ?
Ну, что вы!ZeroMQ - реализует функционал приблизительно на прикладном уровне, тогда как здесь заявлена, как я понял, поддержка физического уровня и, возможно, канального с сетевым.
Тут я думаю речь идет о поддержке высоко-нагруженных пограничных коммутаторов, возможно о каком-то магистральном оборудовании, но никак не о софтине типа ZeroMQ.
наборчик "мечта спецслужб"
этот набор человеческих слов в тексте новости, сложенный в неразгребаемую кучу, описывает нам фреймворк для создания sdn?
да, но на оч низком уровне
> да, но на оч низком уровнеесть вагон "прикладух" которые сделают то что вам нужно. даже в архиве с исходниками.
фреймворк который отодвигает сетевой стек в сторону и переносит обработку на user land, где специализированный код справляется с этим значительно быстрее чем универсальный в ядре.
хороший вброс.
не пытался почитать документацию? вот хотя бы присланный ниже линк.
> этот набор человеческих слов в тексте новости, сложенный в неразгребаемую кучу,...бывает так что технология - за пределами понимания простого смертного. Увы.
> описывает нам фреймворк для создания sdn?
Не совсем. Но до кучи и его.
> ...бывает так что технология - за пределами понимания простого смертного. Увы.Третий закон Кларка.
> этот набор человеческих слов в тексте новости, сложенный в неразгребаемую кучу, описывает
> нам фреймворк для создания sdn?Это все равно, что сказать, что драйвер сетевой карты описывает фреймворк для SDN.
Вообще-то, SDN - это концепция, подход. Реализовано это может быть по-разному. Да, в любой реализации будет работа с сетью. DPDK лишь помогает увеличить bps/pps конкретного сетевого элемента.
Но, поскольку в общем случае отход от специализированных девайсов не требуется в рамках SDN, я бы говорил, что DPDK скорее для NFV. Потому, что на виртуалке сетевой стек легко может стать узким местом.
если SRIOV включен, то эту граблю с узким местом можно неплохо побороть
SRIOV это (как правило) не более 16 виртуальных функций - то есть для 40 виртуалок уже так не сделаешь.
Еще есть F-Stack, если я не ошибаюсь.
https://github.com/F-Stack/f-stack#introduction
https://dpdksummit.com/Archive/pdf/2017Asia/DPDK-China2017-W...
F-Stack is an user space network development kit with high performance based on DPDK, FreeBSD TCP/IP stack and coroutine API. http://www.f-stack.orgДогадайтесь, почему я вам это процитировал. А так-то есть, да.
Если это будут цеплять к серверным приложениям, то трояны и черви на серверах будут процветать. Потому, что писатели прикладного софта менее компетентны в вопросах безопасности и вопросах низкоуровневой работы с оборудованием, чем кернелдевелоперы.
Голословно. Менее опытным эта софтина не нужна, а кривыми руками можно и без неё накосячить
>Голословноесли где-то может поселиться жуткий баг, то он там обязательно поселится
Бедность поддерживаемых сетевых карт огорчает: http://dpdk.org/doc/nics
http://dpdk.org/doc/guides/nics/overview.html#id1
И что это собственно значит? Я могу как-то завести DPDK на Realtek или D-Link карточках через некую виртуализацию?
А в чем смысл брат ?
Там весь упор на железо по сути и делается, те на тесную работу, а ты шиш с маслом хочешь воткнуть и чтоб быстро и кошерно было ?
> И что это собственно значит? Я могу как-то завести DPDK на Realtek
> или D-Link карточках через некую виртуализацию?Если ты это виртуализируешь то не получишь офигенной скорости работы. А раз так то зачем вообще эта возня была?
вас не огорчает что 100-200Gbit/s сетевые делает 1-2 фирмы в принципе.
Большинство слилось на 56Gbit/s.
> Бедность поддерживаемых сетевых карт огорчает: http://dpdk.org/doc/nicsQLogic, Mellanox, Intel, Chelsio - всё есть. С остальными нет смысла заморачиваться.
>> Бедность поддерживаемых сетевых карт огорчает: http://dpdk.org/doc/nics
> QLogic, Mellanox, Intel, Chelsio - всё есть. С остальными нет смысла заморачиваться.QLogic сдох, читаем Intel вместо этого,
Chelsio - слился на 56Gbit/s, не вытянул выше.
Intel с подпиткой от QLogic, смог сделать только Soft network card - называемые по недоразумению TrueScale (OPA), но где вся обработка ложится на плечи CPU. 200Gbit/s так и не смог осилить, не смотря на заявления о интеграции в мост.
вывод ?:)
Mellanox всех уделал
да как бы у них OPA2 на подходе, где нормальный offload реализован...
> да как бы у них OPA2 на подходе, где нормальный offload реализован...вот как выпустят - так увидим. Пока что в случае CPU становится узким горлышком для серверов где Mellanox дает спокойно отдыхать, процессору. А PPS мочит карту и процессор еще быстрее.
> да как бы у них OPA2 на подходе, где нормальный offload реализован...во. Свежак - при streamming имеем 21Gb/s через 2 интерфейса, только поверх этого запускаем MPI с кучей мелочевки,
как скорость streamming падает в 2 раза :)
Soft IB, он такой Soft IB.
Что-то мне кажется, что те, кому нужна высокая производительность, юзают fpga и асики
> Что-то мне кажется, что те, кому нужна высокая производительность, юзают fpga и асикиОдно другому не мешает.
> Что-то мне кажется, что те, кому нужна высокая производительность, юзают fpga и асики... и высокая производительность была доступна только таким девайсам. А здесь цель, чтобы обычная VNF'ка (читай - виртуальная машина) приблизилась к такому. Конечно, такой производительности как в asic не достичь, но приблизиться можно значительно.
брат, сетевухи и есть ASIC (заказные микросхемы с фиксированной логикой) нонче. а FPGA это тип корпуса микросхемы - к чему ты это припер ?
Не постесняйтесь, проверьте себя.
Для кластеров, что ли? Низкой задержки в фичах нет.
80 тактов на пакет.. это типа много ?:)