MoonGen - 灵活又高性能的收发包工具

MoonGen是一个高性能的基于CPU的收发包工具DPDK保证其性能强大,用单核x86 CPU可以收发64B 10GLua是比较流行的小巧灵活的脚本语言,收发包逻辑修改后不用编译,直接运行,因为是脚本。LuaJit是Lua的x86即时编译工具。这三兄弟组合就是灵活的MoonGen引擎,运行Lua脚本用来执行收发包逻辑,很容易写出比专业测试仪还复杂的逻辑。编译步骤:[li...
摘要由CSDN通过智能技术生成
MoonGen是一个高性能的基于CPU的收发包工具
DPDK保证其性能强大,用单核x86 CPU可以收发64B 10G
Lua是比较流行的小巧灵活的脚本语言,收发包逻辑修改后不用编译,直接运行,因为是脚本。
LuaJit是Lua的x86即时编译工具。
这三兄弟组合就是灵活的MoonGen引擎,运行Lua脚本用来执行收发包逻辑,很容易写出比专业测试仪还复杂的逻辑。

编译步骤:
[list]
[*]安装cmake
[*]git clone https://github.com/emmericp/MoonGen.git
[*]./build.sh
[*]如果DPDK KNI模块编译出错, 打开libmoon/deps/dpdk/x86_64-native-linuxapp-gcc/.config文件,修改:CONFIG_RTE_KNI_KMOD=n
[/list]

运行基本上就是DPDK常规启动步骤:
[list]
[*]sudo modprobe uio;
[*]sudo insmod libmoon/deps/dpdk/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko
[*]sudo ./bind-interfaces.sh
[*]sudo ./setup-hugetlbfs.sh
[*]sudo ./build/MoonGen libmoon/examples/pktgen.lua 0
[/list]

examples目录下有更多demo脚本, 不同协议包的操作api参见:[url]https://github.com/libmoon/libmoon/tree/master/lua/proto[/url]


一个最简单的
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值