在进行网络开发中,我们经常会通过抓包来定位分析问题,在不使用DPDK的情况下,Linux系统通常用tcpdump,windows用wireshark,但是如果我们使用了DPDK来收包,就无法用这两个工具来抓包了。
这个时候我们需要用DPDK对应的抓包工具,DPDK自带有两个抓包工具,分别是dpdk-pdump和dpdk-dumpcap,dpdk-pdump功能太简单,不支持按条件过滤报文,所以这里我们重点讲一下dpdk-dumpcap的用法。
前面的文章DPDK的源码编译安装已经讲过DPDK的源码安装方法,DPDK安装好后,dpdk-dumpcap也在系统上安装好了。
需要说明的是,DPDK有primary和second进程的说法,dpdk-dumpcap属于second进程,在抓包之前,必须先启动一个primary进程进行收包才行,primary进程可以使用前面提到过的dpdk-testpmd。
可以先使用dpdk-dumpcap -h查看帮助信息: