外网,下载文件
先在外网机器, 把源码下载下来:
1 | |
接着把 项目的 git 依赖子模块 libmoon 下载下来
1 | |
libmoon 模块下载好后, 此模块会有新的依赖模块.
把新的依赖模块 一一下载下来
1 | |
看下版本分支
1 | |
看下日期
1 | |
压缩打包
1 | |
得到: MoonGen_submodule_update.tar.gz
把: MoonGen_submodule_update.tar.gz 发到内网 CentOS 7.4机器上.
二, 内网编译
环境说明:
MoonGen 对 编译器, 汇编器, 链接器 要求较高,
CentOS 7.4 默认 gcc 4.8.5 版本太低
我的环境 X722 网卡
1 | |
环境参考:
分别升级GCC 与 ld
GCC 升级方法1
GCC 版本 我编译升级的是 7.5, 可参考以下链接
binutils 我编译升级的是 2.36
GCC 升级方法2
同时升级 GCC 与 ld
yum install devtoolset-9
scl enable devtoolset-9 bash
解压:
1 | |
关闭C++11 编译特性
1 | |
修改 驱动代码(可选操作)
1 | |
使用 手动编译
1 | |
验证编译结果
1 | |
修改MoonGen编译脚本对DPDK的控制
1 | |
修改区域, 删除dpdk编译的相关代码
1 | |
编译MoonGen
1 | |
编译结束后, 会提示绑定网卡的提示.
1 | |
运行
绑定网卡
1 | |
查看CPU 分布
1 | |
安装 dpdk 网卡内核模块
1 | |
绑定网卡
1 | |
查看绑定状态
1 | |
测试启动
1 | |