l3fwd中的数据包捕获

时间:2020-03-23 14:46:57

标签: linux tcpdump

我正在执行dpdk实验。在我的设置中,我有两个物理计算机,Host1和Host2,每个物理计算机上有2个10Gbps NIC。 Host1的一个接口受dpdk限制,并使用pktgen生成流量。 Host2的两个接口都以dpdk为界,而l3fwd作为数据包转发应用程序运行。 Host2的第二个NIC用于捕获数据包。我想通过查看在Host2的每个接口上花费的时间来分解数据包所经历的延迟。

是否可以使用l3fwd作为数据包转发应用程序来捕获dpdk接口的数据包?

2 个答案:

答案 0 :(得分:0)

对于DPDK接口,可以使用DPDK-PDUMP捕获从DPDK绑定的NIC获取数据包。请参阅https://doc.dpdk.org/guides-16.07/sample_app_ug/pdump.html

应用程序l3fwd将在rte_pdump_init之后立即通过rte_eal_init API调用进行修改。

答案 1 :(得分:0)

pdump是捕获绑定到dpdk的任何端口上的数据包的好工具。启动pdump工具,如下所示:

sudo ./build/app/dpdk-pdump -- --pdump 'port=0,queue=*,rx-dev=/tmp/capture.pcap'

并在收到数据包后,在home / temp目录中运行以下命令以查看它们

tcpdump -nr ./capture.pcap