美文网首页
动态DNS与DPDK高性能DNS -DPDK环境搭建

动态DNS与DPDK高性能DNS -DPDK环境搭建

作者: 探索Linux服务器架构师 | 来源:发表于2021-03-16 15:10 被阅读0次

    工具准备: vmware + Ubuntu 16.04 Server 版本

    1.vmware 添加两块网卡

    桥接网卡作为 DPDK 运行的网卡

    NAT 网卡作为 ssh 连接的网卡

    2.修改网卡配置信息

    将 ethernet0.virtualDev 由 e1000 修改 vmxnet3,因为 vmware 的 vmxnet3 支持多队

    列网卡

    3.修改 ubuntu 系统的启动参数

    物理机:default_hugepages=1G hugepagesz=1G hugepages=20 isolcpus=0-7

    虚拟机:default_hugepages=1G hugepagesz=2M hugepages=1024 isolcpus=0-2

    4.查看系统是否支持多队列网卡

    执行:cat /proc/interrupts

    5.编译 DPDK

    下载 dpdk : 

    https://core.dpdk.org/download/

    可以通过 usertools/dpdk-setup.sh

    64 位系统选择 39.

    编译完会多出 x86_64-native-linux-gcc 的文件夹

    6.设置 DPDK 的环境变量

    # export RTE_SDK=/home/dpdk

    # export RTE_TARGET=x86_64-native-linux-gcc

    7.执行 testpmd

    执行

    # /usertools/dpdk-setup.sh

    选择 43 插入 IGB_UIO 模块, 选择网卡为 vmxnet3 会加载此模块

    选择 44 插入 VFIO 模块,选择网卡为 e1000 会加载此模块

    选择 49 绑定 igb_uio 模块, 也可以退出,通过命令来执行。

    # ifconfig eth0 down

    # /usertools/dpdk-devbind.py --bind=igb_uio eth0

    选择 53 运行 testpmd

    > show port info 0

    8.编译 DPDK 程序

    进入 example/helloworld ,

    可以直接 make,

    也可以通过 gcc 命令编译

    # gcc -o helloword main.c -I /usr/local/include/dpdk/ -ldpdk -lpthread -

    lnuma -ldl

    附:dpdk学习体系,关注 私信回复:1,领取对应学习视频

    专注于C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等等多个知识点高级技术分享

    相关文章

      网友评论

          本文标题:动态DNS与DPDK高性能DNS -DPDK环境搭建

          本文链接:https://www.haomeiwen.com/subject/mzddcltx.html