无法使用rte_eth_rx_burst

时间:2019-09-01 11:29:19

标签: dpdk

我正在尝试接收另一个DPDK应用程序在不同系统上传输的数据包。我能够使用rte_eth_tx_burst Api发送1个数据包的突发值,但无法在rte_eth_rx_burst Api中接收1突发值的数据包。仅当rx_burst值为4或更高时,我才能接收数据包。是因为任何ethdev配置吗?

2 个答案:

答案 0 :(得分:0)

您能更详细地说明您的问题吗?传递给rte_eth_rx_brust()的参数是什么。在我的应用程序中,我只能接收和发送一个1 pkt。

您可以尝试为rx_burst数据包定义一个数组大小为1的方法吗?

struct rte_mbuf * pkts_burst [1];

rte_eth_rx_burst(port_id,local_targetid,pkts_burst,1);

答案 1 :(得分:0)

ixgbe i40e 设备有问题,virtio-net 没有问题。修改文件 *_rxtx.h 中的 RTE_*_DESCS_PER_LOOP。