我对DPDK非常陌生,这是我刚刚分配给的一个新项目。
有一个硬件流量生成器设备,通过以太网连接到PC。当前情况如下:
目标是:
我们遇到的问题是找到一种关于如何从DPDK获取输出的想法,因为它想将流量直接发送到流量生成器的端口。
提前感谢您的回答和建议!
答案 0 :(得分:0)
可以使用多种选项将DPDK与其他应用程序集成,例如:
调整/点击轮询模式驱动程序:https://doc.dpdk.org/guides/nics/tap.html
DPDK应用程序可以将流量转发到一个分接头vdev并从另一个分接头进行轮询。而python或其他应用程序可以从一个内核接口读取数据包并发送到另一个内核接口。
KNI轮询模式驱动程序:https://doc.dpdk.org/guides/nics/kni.html
与上述相同,但使用专有的(更快的)驱动程序。
Libpcap轮询模式驱动程序:https://doc.dpdk.org/guides/nics/pcap_ring.html
DPDK应用程序可以将pcap格式的数据包发送到UNIX套接字,而python应用程序可以从套接字读取数据。
请注意,上面列出的所有选项每秒最多不能处理超过1M个数据包,更不用说Python的性能了。处理一个1M数据包将是一个挑战...
如果您需要处理超过1M的PPS,您可能应该将目光投向其他地方,没有什么选择...
虽然问题有点太广泛了,但我希望现在您能找到一些提示;)