值得推荐的基于DPDK的开源项目

说明

  • DPDK已经发展了快14年了,已经非常的成熟,很多项目都在用它来开发用户态的网络功能。
  • 但是DPDK的每个版本的API都存在者比较明显的差异,特别是API的名字。所以一些大型项目如果停止更新了,使用新版DPDK运行它们就会很麻烦。
  • 除此之外,一些智能网卡设备已经不能很好的支持老版本的DPDK(DPDK 20之前的版本),再想使用DPDK-ANS和mTCP这种用户态协议栈就很难操作了,特别对新手来说很不友好。
  • 本人从2022年开始进行的DPDK开发,用过很多基于它开发的程序和框架,因此在这里推荐一下我觉得还挺好用的并且勤加更新的相关项目吧。

用户态协议栈

名称链接使用感受
F-Stackhttp://f-stack.org/国内更新的最勤的栈了,腾讯写的,移植了FreeBSD协议栈,自带的nginx也很好用
Seastarhttps://seastar.io/有很多例子,使用C++写的,支持很多C++新特性(协程),对我这个菜鸡来说比较难学明白
lwiphttps://savannah.nongnu.org/projects/lwip/这个需要自己为lwip写一个驱动层,一两百行代码就可以搞定,在Arm设备上挺好用的
gazellehttps://gitee.com/openeuler/gazelleopeneuler旗下的开源产品,为数不多能在不怎么修改源代码情况下做好应用移植的协议栈,基于lwip关键还支持MySQL

软件交换机

名称链接使用感受
OvS-DPDKhttps://docs.openvswitch.org/en/latest/howto/dpdk/智能网卡厂商一定会支持的,生态挺好的
VPPhttps://wiki.fd.io/view/VPP向量包处理改善性能,和OvS一样集成了很多软件交换机的功能,貌似企业挺偏爱这个

测试仪

名称链接使用感受
DPDK-Pktgenhttps://git.dpdk.org/apps/pktgen-dpdk/配置简单且性能不错,做UDP测试很舒适,就是安装的时候找难找合适的DPDK版本来编译
TRexhttps://trex-tgn.cisco.com/思科出品,必属精品!功能很齐全,但是好复杂,学起来头晕
dperfhttps://github.com/baidu/dperf百度的测试仪,软件作者很友好,能测CPS、并发链接数和RTT,真滴令人感动!

四层负载均衡器

名称链接使用感受
DPVShttps://github.com/iqiyi/dpvs爱奇艺出品且勤加更新,用起来和LVS没啥区别,源码也很美丽,就是必须做full-nat有点难搞
HDSLBhttps://github.com/intel/high-density-scalable-load-balancerIntel新出的,据说性能很客观,基于VPP的版本貌似只能商用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值