DPDK相关开源代码汇总

news2024/7/2 3:57:43

上篇《DPDK相关学习资料汇总》中,我们讲了学习DPDK的相关资料,今天我们来讲一下DPDK相关的开源代码。

1、suricata

Suricata引擎能够进行实时入侵检测(IDS)、内联入侵预防(IPS)、网络安全监控(NSM)和离线pcap处理。是一款开源、快速、高度稳定的网络入侵检测系统,

Suricata引擎能够实时入侵检测,内联入侵防御和网络安全监控。Suricata由几个模块组成,如捕捉、采集、解码、检测和输出。

suricata支持多种收包方式,最新的7.0版本已支持DPDK收包。

https://github.com/OISF/suricata

2、dpvs

dpvs是爱奇艺公司基于DPDK开发的高性能第4层负载均衡器(Layer-4 load balancer),dpvs的名字来源于DPDK+LVS,这里的LVS是阿里巴巴改进版的lvs。

DPVS是基于DPDK的高性能第4层负载均衡器。它源自Linux虚拟服务器LVS及其修改版本alibaba/LVS。

https://github.com/iqiyi/dpvs

3、qnsm

QNSM(IQIYI Network Security Monitor) 是一个旁路部署的全流量,实时,高性能网络安全监控引擎,基于DPDK开发,集成了DDOS检测和IDPS模块。

https://github.com/iqiyi/qnsm/

4、f-stack

f-stack是基于DPDK(Data Plante Development Kit)实现的一个用户态的协议栈,从FressBsd协议栈移植而来的用户态协议栈。F-Stack是一个基于DPDK、FreeBSD TCP / IP栈和协程API的高性能用户空间网络开发工具包。

http://www.f-stack.org/

5、trex

Cisco开源的一个使用DPDK发包的高性能测试仪。

主要的工作原理概括如下:

  • 使用scapy来构建数据包模板;或者从pcap文件中读取数据包模板;

  • 利用dpdk发送数据包;(重写指定变化的部分)

兼具了python构建流的效率和dpdk发包的高性能。

https://trex-tgn.cisco.com/

6、vpp

VPP是一个快速的、可扩展的2-4层多平台网络协议栈。它运行在多个Linux用户空间中,主要架构包括x86、ARM和Power架构。

VPP的高性能网络栈正在迅速成为世界各地应用程序的首选网络栈。

VPP的一些用例包括交换机、路由器、网关、防火墙和负载平衡器等等。

https://s3-docs.fd.io/vpp/23.06/

https://github.com/FDio/vpp

7、dperf

dperf是一个基于DPDK的100Gbps网络性能和负载测试软件.

https://github.com/baidu/dperf

8、ovs

OpenvSwitch简称OVS,正如其官网(http://openvswitch.org/)所述,OVS是一个高质量、多层的虚拟交换软件。它的目的是通过编程扩展支持大规模网络自动化,同时还支持标准的管理接口和协议。

https://docs.openvswitch.org/en/latest/intro/install/dpdk/

想了解更多DPDK相关的网络开发技术,请关注我。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/599011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python wxPython】零基础也能轻松掌握的学习路线与参考资料

wxPython是一个基于wxWidgets C类库的Python GUI框架,使用它可以轻松创建跨平台的可视化应用程序。此外,wxPython与Python语言天然融合,让Python程序员可以轻松使用Python编写图形界面程序。因此,学习wxPython实际上就是学习如何用…

基本思维方式

经济学定义 人的欲望是无止境的,而资源有限,这是一个矛盾。 经济学是研究个人和社会如何最优利用由自然和前人提供的有限资源的学问。 经济学的范围 Microeconomics 微观经济学 研究各个行业的运作的以及企业和个人的决策行为的经济学分支。Macroeco…

BTC API:如何在比特币网络上创建应用程序?

比特币是一种去中心化的数字货币,可以通过比特币API与比特币网络进行交互。比特币API是一组允许开发人员与比特币网络进行交互的编程接口,可以帮助开发者构建各种比特币应用程序。 比特币API可以用于创建区块浏览器、钱包和比特币支付。其中利用比特币A…

机器视觉_HALCON_编程指南_多线程编程

文章目录 一、前言二、HALCON并行编程2.1 深入可重入性⭐2.2 多线程编程设计问题2.3 多线程算子2.4 示例 三、结语 一、前言 本文是HALCON的 programmers_guide(编程指南) 中的2.2章节,章节名直译是——用HALCON进行并行编程,实际…

C++入门:命名空间、函数重载、缺省参数

目录 一:命名空间 1.命名空间的意义 2.命名空间的定义 3.如何使用命名空间中成员? 小结 二:C的输入输出 三:函数重载 1.概念 2.实例 3.为什么C能支持函数重载而C不行? 【1】先看一段C语言代码 【2】我们把上…

基于单片机的七彩音乐喷泉设计

目录 一、方案流程及技术规格书设计 二、系统硬件电路设计 三、软件编写及调试 四、系统调试测试与分析 前言 随着时代的进步,人们对生活质量的要求也在不断提升,因此,51单片机七彩音乐喷泉系统应运而生,它不仅可以满足人们对…

I.MX RT1170加密启动详解(3):HAB加密启动原理

上一节使用对镜像进行签名认证,这可以防止镜像被篡改。但我们还是希望Flash中的程序不会被别人看到,所以这就需要加密启动了。 文章目录 1 HAB加密启动流程2 扩展知识: DCP和SNVS 1 HAB加密启动流程 如下图所示就是HAB加密启动的整个流程&a…

蓝桥杯国赛备赛(嵌入式组)

一、数码管(拓展板)(共阴接法) 引脚控制 PA3 :RCLK 串型存储时钟输入 (上升沿有效) PA2 :SCK 串行移位时钟输入(上升沿有效) PA1 :SER 串型数据输入 发送数据时先发高位&#xff1…

【UnityShader入门精要】【总结记录】【第二章-1】

☀️博客主页:CSDN博客主页 💨本文由 萌萌的小木屋 原创,首发于 CSDN💢 🔥学习专栏推荐:面试汇总 ❗️游戏框架专栏推荐:游戏实用框架专栏 ⛅️点赞 👍 收藏 ⭐留言 📝&a…

使用 Access SQL 插入、更新和删除表格记录

参考链接 使用 Access SQL 插入、更新和删除表格记录 | Microsoft Learnhttps://learn.microsoft.com/zh-cn/office/vba/access/concepts/structured-query-language/insert-update-and-delete-records-from-a-table-using-access-sql 将记录插入表格 基本上有两种方法可以向…

client-go架构与原理介绍

个人博客 一、架构展示 client-go 库中的各种组件架构如下图所示: 二、目录结构 client-go 是用 Golang 语言编写的官方编程式交互客户端库,提供对 Kubernetes API server 服务的交互访问。 其源码目录结构如下: . ├── discovery …

再识openmmlab,用mmDeploy实现部署的前期需要了解一些内容

OpenMMLab 是一个用于学术研究和工业应用的开源算法体系,于2018年年中开始,由 MMLab(香港中文大学多媒体实验室)和商汤科技联合启动。 如果第一接触的话,还是建议参考官方环境配置教程:Windows 环境配置 -…

Midjourney万能高清咒语,真正的近看也美

明明我都拿人家的图垫图了,为什么质量还是很差? 明明别人都把咒语分享出来了,为什么质量还是很差? 今天我们就来解决这两个问题,看到就是缘分,点点手指来个小心心不过分吧,哈哈 什么你在怀疑我的…

Spring Boot + ElasticSearch实战之CRUD及多数据源配置

概述 本文记录工作中使用Spring Boot ElasticSearch的实战&#xff0c;Spring Boot版本&#xff1a;2.1.6.RELEASE。 基础 Spring Boot已是Java开发标配&#xff0c;使用SB提供的starter&#xff0c;简单高效。 配置 引入依赖&#xff1a; <dependency><groupI…

Rocketmq如何保证消息不丢失

如果想要保证消息不丢失就要知道&#xff0c;消息可能出现丢失得地方。 1.producer发送消息 2.Broker存储消息 3.Consumer消费消息 4.Broker主从切换 下面一共有9个维度可以保证消息不丢失。 目录 维度一&#xff1a;同步发送 维度二.异步发送 维度三.刷盘策略 维度四…

数据库期末复习(2)

关系数据库 图1 上图为思考题1的答案 \d student #查看完整性约束 模式和实例 关系的模式:关系有哪些、关系又什么类型、关系的约束时什么&#xff0c;一般来说关系的模式一般比较稳定&#xff0c;不会随着动态的变化而变化。 关系的实例:关系的实例一般随着变化的次数比较…

体验 InsCode AI,原来 AI 也扛不住互联网黑话

CSDN AI写作助手上线了&#xff01;InsCode AI 创作助手不仅能够帮助用户高效创作文章&#xff0c;而且能够作为对话式AI回答你想知道的问题。成倍提高生产力&#xff01;以下是我的体验分享 一、你平时会使用这类AI工具吗&#xff1f;你对这类型的工具有什么看法&#xff1f;…

RPC(2):RPC简介

1 RFC RFC(Request For Comments) 是由互联网工程任务组(IETF)发布的文件集。文件集中每个文件都有自己唯一编号&#xff0c;例如&#xff1a;rfc1831。目前RFC文件由互联网协会(Internet Society&#xff0c;ISOC)赞助发行。 RPC就收集到了rfc 1831中。可以通过下面网址查看…

微信小程序websocket使用protobuf,发送arraybuffer

❤️砥砺前行&#xff0c;不负余光&#xff0c;永远在路上❤️ 目录 前言一、如何在小程序websocket中使用 Protobuf 发送buffer二、使用过程遇到的坑&#xff08;版本问题&#xff09;1、需要注意下Protobuf版本 使用 protobufjs6.8.6最好&#xff0c;我在使用的时候安装7.多 …

1_7后端优化

后端优化是指将一段时间内相机所有关键帧的位姿、内参、每个点3维坐标作为参数进行优化&#xff0c;得到最优的内、外参&#xff1b;利用的方法主要是Bundle Adjustment。 所谓Bundle Adjustment可以理解为从任意特征点发射出来的几束光线&#xff0c;它们会在几个相机的成像平…