DPDK - Misc

本文探讨了AF_PACKET和KNI两种DPDK网络接口模式。AF_PACKET允许在不完全绕过Kernel的情况下,从Linux af_packet socket读写packet,适合开发阶段使用。KNI则使DPDK app能通过Kernel nic interface向Kernel stack发送和接收packet,实现物理网卡由DPDK控制的同时,可通过虚拟设备让传统工具如ifconfig和tcpdump工作。

AF_PACKET Poll Mode Driver

https://doc.dpdk.org/guides/nics/af_packet.html

使用这个PMD可以从Linux af_packet socket读写packets。网卡还是由Kernel控制,但是基于DPDK的app,可以用这种方式work。由于网卡由Kernel控制,app的性能不是最好的。

感觉这个可以在DPDK app的开发阶段使用,在不支持DPDK的NIC上进行开发。

 

KNI

https://doc.dpdk.org/guides/prog_guide/kernel_nic_interface.html
https://doc.dpdk.org/guides/sample_app_ug/kernel_nic_interface.html

使用KNI可以从DPDK app向kernel stack收发包。物理网卡由DPDK控制,通过KNI在Kernel里创建虚拟net device。传统的工具可以运行在虚拟网卡上,例如ifconfig, tcpdump等。

所以可以给每一个以太网口都配置一个KNI虚拟口,然后DPDK的app可以决定哪些traffic自己处理,哪些traffic送到KNI上给kernel处理。
例如dhcp包,这样已有的dhcpd就可以work了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值