pdump允许你监听DPDK端口并查看正在通过的流量。要使用此工具,必须在系统上安装libpcap库。
此外,DPDK必须在编译时打开选项config-rte-librte-pdump=y
和CONFIG_RTE_LIBRTE_PMD_PCAP=y
。
警告:
使用如DPDK pdump的监控程序将导致性能的下降.
要使用pdump,只需像往常一样启动OVS,然后导航到DPDK目录app/pdump
中,make
编译应用程序,如下方式运行:
$ sudo ./build/app/dpdk-pdump -- \
--pdump port=0,queue=0,rx-dev=/tmp/pkts.pcap \
--server-socket-path=/usr/local/var/run/openvswitch
以上的命令在网口0的队列0上捕获流量,并存储到文件/tmp/pkts.pcap
中。端口号、队列号和PCAP文件位置的其它组合当然也可以使用。例如,捕获所有
经过网口0的数据包,保存在单一PCAP文件/tmp/pkts.pcap
中:
$ sudo ./build/app/dpdk-pdump -- \
--pdump 'port=0,queue=*,rx-dev=/tmp/pkts.pcap,tx-dev=/tmp/pkts.pcap' \
--server-socket-path=/usr/local/var/run/openvswitch
server-socket-path
参数必须设置为OVS目录ovs_rundir()
,此目录的典型值为/usr/local/var/run/openvswitch
.
可以使用许多工具查看PCAP文件的内容。一例如使用tcpdump工具。以下命令查看pkts.pcap
文件的内容:
$ tcpdump -r pkts.pcap
关于pdump应用的更多信息和用法参见文档DPDK documentation。