DPDK
文章平均质量分 82
hz5034
这个作者很懒,什么都没留下…
展开
-
DPDK总结(makefile)
dpdk版本17.11configconfig/defconfig_x86_64-native-linuxapp-gccconfig/common_linuxappconfig/common_base修改以上文件,make config T=$(RTE_TARGET) O=$(RTE_OUTPUT),生成新的$(RTE_OUTPUT)/.config注意$(RTE_TARGET)和$(RTE_OUTPUT)最好保持一致make configmake config,进入GNUmakefile:原创 2021-12-05 18:08:22 · 1590 阅读 · 0 评论 -
DPDK总结(mbuf)
mbuf图解mbuf分为4部分:mbuf + priv + headroom + data(1)mbuf长度为sizeof(struct rte_mbuf) = 128(2)priv长度在创建pool时指定(priv_size)(3)headroom长度为RTE_PKTMBUF_HEADROOM(CONFIG_RTE_PKTMBUF_HEADROOM)(4)data长度在创建pool时指定(data_room_size - RTE_PKTMBUF_HEADROOM)data根据实际情况又分为原创 2021-01-17 15:08:09 · 2604 阅读 · 0 评论 -
DPDK总结(网卡收发包)
ixgbe_rx/tx_queuestruct ixgbe_rx_queue { struct rte_mempool *mb_pool; /**< mbuf pool to populate RX ring. */ volatile union ixgbe_adv_rx_desc *rx_ring; /**< RX ring virtual address. */ uint...原创 2019-03-10 18:05:21 · 5977 阅读 · 3 评论 -
DPDK总结(网卡初始化)
网卡初始化过程图片来源于http://blog.chinaunix.net/uid-28541347-id-5785122.html函数功能rte_eth_dev_count()网卡数rte_eth_dev_configure()配置网卡rte_eth_rx_queue_setup()rte_eth_tx_queue_setup()为网卡分配接收/发送队...原创 2019-03-09 16:10:41 · 12525 阅读 · 0 评论 -
DPDK总结(基本转发)
将DPDK的helloworld和skeleton例子组合起来可以得到一个基本转发程序,整个程序只有100多行,包含了最基本的转发(从一个网卡收包,从另一个网卡发包)执行./basicfwd -c 3 -n 2启动程序,1个MASTER lcore和1个SLAVE lcore分别绑定到CPU0和CPU1,SLAVE lcore使用1个RX/TX队列收发包pktegn-dpdk得到的测试结果(单...原创 2019-03-02 19:56:59 · 3172 阅读 · 2 评论 -
DPDK总结(基础知识)
名词解释简称全称备注DPDKData Plane Development Kit数据平面开发套件RTERunTime Environment运行时环境EALEnvironment Abstraction Layer环境抽象层lcorelogical coreEAL pthreadTLSThread Local Storage线程本地存储lcore一个lcore就是一个基于pthread实现的线程,不同的lcore可以亲和到不同的lo原创 2017-12-15 12:00:11 · 7580 阅读 · 1 评论 -
DPDK总结(rte_eal_init)
DPDK学习(rte_eal_init)DPDK学习(eal_thread_loop)rte_bus_liststruct rte_bus { TAILQ_ENTRY(rte_bus) next; /**< Next bus object in linked list */ const char *name; /**< Name of the bus...原创 2017-12-14 13:33:05 · 11027 阅读 · 1 评论 -
DPDK总结(eal_thread_loop)
DPDK学习(rte_eal_init)DPDK学习(eal_thread_loop)rte_eal_remote_launch()MASTER lcore调用rte_eal_remote_launch()将回调函数和参数注册到lcore_config[].f和lcore_config[].arg中,并通知SLAVE lcore执行该回调函数/* * Send a message to ...原创 2017-12-15 11:42:09 · 2683 阅读 · 0 评论 -
DPDK总结(测试环境)
测试环境使用VMware Fusion虚拟机,虚拟机主要配置:一个双核CPU、两块网卡、操作系统为CentOS 7ifconfig可以看到两块网卡(ens33、ens37)编译DPDK执行/root/dpdk-17.08/usertools/dpdk-setup.sh后可以看到下图编译中可能遇到的问题及解决方法问题解决办法找不到cc命令yum -y instal...原创 2017-12-14 13:13:08 · 5773 阅读 · 3 评论